Dit wil ik leren in 2021

Misschien ben ik er een beetje laat mee omdat we al een maand in het nieuwe jaar zitten, maar dit zijn mijn doelen voor 2021. Dit zijn nieuwe dingen die ik graag wil leren of dingen waar ik me nog verder in wil verdiepen.

  • React & React native. Ik wil leren hoe je met Javascript UIs (user interfaces) maakt. Misschien wil ik zelfs proberen een kleine app te maken
  • Socket.io en websockets. Ik wil me verdiepen in multiplayer games en chatapps in Javascript en Node.js met websockets.
  • Linux, Python en Bash. Ik wil leren hoe je commandline apps maakt voor Linux. Ik ben al bezig met een settingsmanager voor de commandline genaamd TermiTools, maar ik heb het nooit afgemaakt.
  • Electron. Ik wil me verder verdiepen in het maken van goede apps met Node.js en ik wil me verdiepen in het gebruik van Electron.
  • Express. Ik wil leren hoe je webapps met een Node.js backend maakt met Express. 
  • LocalStorage. Ik wil me verdiepen in het maken van apps met de LocalStorage API voor het opslaan van gegevens zoals highscores, instellingen en meer.

Dit zijn een paar projecten die ik plan te maken:

  • Een commandline settingsmanager voor Linux (zoals ik hierboven al zei)
  • Een Javascript terminal clone met LocalStorage. (ik wil mijn huidige CMD2 project herschrijven in Javascript)
  • Een multiplayer game in Javascript gebaseerd op mijn huidige project NinjaDO.
  • Een password manager met MySQL database en een Python interface.
  • Ik wil een simpele chatapp voor op mijn website maken als vervanger van Nindo. De bedoeling is dat het gebruikt maakt van een React interface, een Node.js backend en websockets.

Dus ja, dit is wat ik dit jaar op het gebied van programmeren en webdevelopment ga doen.

- Robin


js0.23-improved: Een verbeterde versie van classic.minecraft.net

Ik ben de afgelopen 2 weken aan een verbeterde versie van classic.minecraft.net gewerkt. Minecraft Classic is de 2e grote versie van Minecraft en de eerste versie die het publiek kon spelen. Minecraft Classic is ook het moment dat multiplayer en survivalmode werden geïntroduceerd. 

Toen Minecraft in 2019 tien jaar oud werd heeft Mojang (het bedrijf achter Minecraft) een remake van Minecraft Classic versie 0.023a_01 geschreven in Javascript online gezet op classic.minecraft.net

Omdat ik onder een steen leef kwam ik daar pas in 2021 achter. Maar toen ik er achter kwam ben ik meteen begonnen met het modden van de game (die ook wel js0.23 wordt genoemd). Ik heb onder andere een menuscherm, verbeterde muiscontrols, veborgen credits scherm, seeds, custom commands, vliegmodus en wat andere dingen toegevoegd. Ook heb ik er een Electron app van gemaakt, en kan je het dus direct op je computer (ook offline) spelen.

Als je het ook eens wil proberen kan je hier een testversie downloaden: 

- Robin


Ik wil zelf een telefoon maken

Misschien een beetje raar, maar ik heb besloten dat ik zelf een telefoon wil maken. Ik wil een telefoon waar ik alles mee kan doen, en die ik daar niet voor hoef te rooten of jailbreaken. Ik wil een telefoon die makkelijk uit te breiden is. Ik wil een telefoon die makkelijk te upgraden is. En dus ga ik zelf een smartphone maken.

 Ik heb de volgende voorwaarden voor de telefoon:

  • Hardware
    • Off the Shelf parts: Ik wil onderdelen gebruiken die gewoon zo in de winkel te verkrijgen zijn. Geen solderen en custom PCB's
    • Moet verschillende SBC's (single board computers) ondersteunen.  
    • Moet een goed touchscreen of andere makkelijke manier van input hebben
    • Moet een goed systeem voor opladen hebben (zoals piSupply piJuice)
    • Moet in mijn zak passen: maximale dikte is 4 iPhones op elkaar
  • Software
    • Open Source besturingssysteem: draait geen Android of een fork daarvan. Draait een linux distro zoals Ubuntu Touch, Sailfish OS of KDE Plasma mobile. Misschien maak ik wel mijn eigen linux distro voor dit project.
    •  Er moeten apps zoals Spotify, Firefox en Signal beschikbaar zijn.
  • Connectiviteit
    • Moet kunnen verbinden met Bluethoot speakers, toetsenborden en andere accessoires
    • Moet kunnen verbinden met 5Ghz Wifi netwerken
    • Moet kunnen verbinden met het internet via 4G
    • Moet kunnen bellen en SMSen met een SIM-card

Stappen om dit project realiteit te maken:

  • Maak een simpele telefoon met batterij, scherm en wifi
  • Voeg de GSM module toe
  • Maak een behuizing

Verder hoop ik de totaalprijs onder de €200 te houden. Hij wordt waarschijnlijk niet sneller dan een iPhone 6s, dus hij moet ook niet duurder zijn.

Dus, ik hoop dat ik zoiets voor elkaar kan krijgen. Nu nog sparen :) 

 -Robin


PowerToys: FancyZones


PowerToys is een open-source set programma's gemaakt door Microsoft om de ervaring in Windows 10 te verbeteren. Je hebt er dingen als een nieuwe searchbar (Genaamd Run), Resize en Rename tools, een colorpicker, een tool om toetsen op je toetsenbord mee te remappen, en nog wat handige dingetjes.


Ik wilde het vandaag hebben over FancyZones. Dat is een van de tools in PowerToys. Met FancyZones kan je je vensters (verschillende apps) makkelijk ordenen. Je weet waarschijnlijk wel dat je als je een venster tegen de zijkant of bovenkant van je scherm sleept, hij een bepaalde vorm krijgt. Zoiets is het.

Het handige van FancyZones is dat je zelf kan bepalen waar die vensters heen gaan. Je kan zelf layouts maken, of een standaard  layout kiezen, en instellen voor hoeveel vensters je hem wil gebruiken. Als je bijvoorbeeld de layout "Grid" op 2 instelt, krijg je wat je normaal zou krijgen als je een venster tegen de zijkant van je scherm sleept. Maar je kan dus zelf kiezen voor hoeveel vensters je de layout wil gebruiken.

 

Je activeert FancyZones door tijdens het slepen van een venster Shift in te drukken. Dan zie je een doorzichtige versie van de layout, en kan je een venster naar een "Zone" slepen, en dan neemt ie automatisch de juiste vorm aan.

 

Ik vind het een erg handige tool, en ik gebruik het dagelijks. Het is erg handig als je 20 vensters tegelijk open hebt staan, en ze netjes wil ordenen.

Je kan PowerToys hier vinden: 

- Robin