Over mij...

Foto van Joris Raymaekers

Joris Raymaekers  (1983, Herk-de-Stad)

Mijn eerste ervaring met computers en computer code kwam er door het fixen van nukkige video-spelletjes in de MS-DOS command line. MS-DOS? Dat ging toen zo...externe link icoonWat ooit begon als hobby met het configureren van spelletjes en het repareren van pc's en telefoons, is nu geëvolueerd tot het bouwen van complete web applicaties.

Maar met computers werken doe ik niet voor mezelf. De meeste voldoening en het grootste plezier haal ik uit het kunnen helpen van anderen met het verlichten van hun IT bekommernissen.

Technologie ontwikkelen en inzetten als hefboom om je persoonlijke of zakelijke impact te vergroten, daar help ik graag aan mee.

Naast mijn werk op het web ben ik ook gefascineerd door cryptografie en de mogelijke toepassingen met digitale sleutels voor beveiliging of nieuwe vormen van geld en betalingen zoals bitcoinexterne link icoon. Vandaar ook de verwijzingen naar zaken zoals Pretty Good Privacy of TOR die je vindt helemaal onderaan op deze pagina.

Maar de digitale wereld is niet alles en lang geleden zei men al: mens sana in corpore sano. Dus in mijn vrije tijd vind je mij regelmatig wandelend in de natuur met de hond en krachttraining houdt me fit en sterk. Ik trap ook nog wel eens graag tegen een bal.

In een vorig hoofdstuk was ik actief als logistiek medewerker; de liefde bracht me vervolgens naar Catalonië; en een Master in de Vergelijkende Politiek leidde tot een episode in de journalistiek. Voor zij die graag lezen en net als ik Catalonië een warm hart toedragen, vind je hieronder nog een selectie van eigen publicaties uit de oude doos:

Tech skills

JavaScript logo ReactJs logo TypeScript logo NodeJs logo

Wat ik kan doen voor jou.

Hieronder vind je een overzicht van mijn technische competenties (in mensentaal) en de diensten waar je een beroep op kan doen. In het kort:

  • advies op maat voor uw aanwezigheid op het web

  • website ontwikkeling met HTML5/CSS3/JavaScript

  • crossplatform web apps met ReactJs en React Native

  • JavaScript server app ontwikkeling met NodeJs

  • bouwen en beheren van Wordpress websites (met DIVI of WP-Bakery)

afbeelding van digitale diensten

Ben je technisch aangelegd? Scroll dan zeker verder, bekijk enkele voorbeelden en volg de Github-links naar de broncode. Grasduin zeker ook eens door de uitgelichte creaties op Codepen...

Van ontwerp naar code

front-end ontwikkeling

Vele websites, zoals deze eigenste site, worden ontworpen met een ontwerpprogramma zoals AdobeXd of Figma en vervolgens omgezet naar HTML5, (S)CSS en JavaScript code. Daarbij wordt bijzondere aandacht geschonken aan een mobile-first benadering en een logische opdeling van de code in secties en componenten. Een voorbeeld van hoe dit er in de praktijk precies uitziet vind je in de broncode voor deze website op deze Github-paginaexterne link icoon.

Het ontwikkelen gaat (soms) sneller als je kan verder bouwen op het werk van anderen. Bibliotheken waar ik mee vertrouwd ben:

Al die code beheren en optimaliseren gebeurt meestal met één van de volgende tools:

Layouts en visuele animaties kunnen in alle mogelijke kleuren en configuraties. Een selectie voorbeelden en experimenten vind je op mijn Codepen:

Codepen front-end mini-projects

Collecties omvatten onder meer: formulieren met validatie aan de client-zijde, afbeeldingsgalerijen met DOM-elementfiltering, modals en css-animaties

Codepen profiel snapshot Codepen ProfielCodepen logo

Webservers and API's

ontwikkeling met NodeJs

NodeJs een solide open-bron runtime-omgeving voor JavaScript. Het is een heel erg veelzijdige omgeving om applicaties in te bouwen die vervolgens op zowat elk platform kunnen worden uitgevoerd. JavaScript is dé taal van het web en via NodeJs kan je dezelfde programmeertaal hanteren voor zowel de gebruikersinterface (UI) als de logica voor de server of backend taken. In combinatie met TypeScript, een superset van JavaScript, kan je met NodeJs heel solide en performante programma's bouwen: van webservers en REST API's tot Command Line applicaties en test oplossingen.

Recente voorbeelden van NodeJs projecten
  • Website Text Translator is een NodeJs NPM module met een Command Line Interface die je helpt om de tekst van bestaande HTML bestanden te vertalen via de Google Translate API en vervolgens te integreren en beheren in je website met behulp van JSON bestanden. De CLI interface is gebouwd met Commander en het ontleden van HTML elementen gebeurt met Node-HTML-Parser. Dit programma, met bijhorende documentatie, is beschikbaar als open-bron software in het NPM register: WTTexterne link icoon.

  • CataCamp is een project gebouwd in NodeJs met een ExpressJS server, een REST API, authenticatie met PassportJS en Redis voor sessie-opslag. Data wordt opgeslagen in een MongoDB database met Mongoose voor objectmodellering (ODM). Bekijk op Githubexterne link icoon of een werkende demo-versie via: via deze linkexterne link icoon

Serverbeheer en clouddiensten

magie achter de schermen

Je web app moet bereikbaar zijn via een server en een domeinnaam. Het configureren van domeinnamen en DNS (Domain Name Servers) met subdomeinen, email, SSL certificaten en eventueel een CDN (Content Delivery Network) is een taak die hoort bij elke website.

Serverbeheer is niet mijn hoofdactiviteit maar ik ben wel voldoende vertrouwd met het opzetten en onderhouden van virtuele servers (VPS) voor zowel voor NodeJs apps als Wordpress websites. Werken met tools zoals Nginx (reverse proxy), PM2, SSH of Docker containers, is mij niet vreemd:

  • Nginx configuratie: voorbeeldexterne link icoon
  • Docker Compose configuratie: voorbeeldexterne link icoon
  • Bash script voor automatische code updates naar VPS server: voorbeeldexterne link icoon
  • Geautomatiseerde builds en cloud functies via Netlify/AWS: voorbeeldexterne link icoon

Programmeertalen en IDE's

ontwikkelingsomgeving

Voor het ontwikkelen van applicaties wordt een beroep gedaan op een ontwikkelingsomgeving of IDE, Integrated Development Environment. Een collectie programma's en instrumenten om je code te schrijven en te testen.

Mijn basisconfiguratie bestaat uit Windows Subsystem for Linux (WSL2) en Visual Studio Code, aangevuld met verschillende extensies en plugins voor bijvoorbeeld Docker, het formatteren van code (Prettier) of het automatisch genereren van suggesties (Tabnine AI).

Broncode beheer: Git (Git Flow), Github en Gitea (zelf gehost op eigen server).

Projectbeheer: Ik ben vertrouwd met Enterprise oplossingen zoals Jira maar voor persoonlijke projecten verkies ik een Kanban workflow via Taigaexterne link icoon —  tot ook dat weer verandert.

Andere programmeertalen?

Mijn focus ligt op JavaScript en bij uitbreiding TypeScript. Als webontwikkelaar en Wordpress-bouwer kom je natuurlijk ook af en toe in contact met PHP.

Python wordt terecht geroemd voor z'n elegantie en eenvoud en het is een programmeertaal waar ik steeds vaker en heel graag mee experimenteer: voorbeelden op Githubexterne link icoon.

Fun Zone

Ok, genoeg gelezen. Hieronder vind je een aantal mini-projectjes en spelletjes waar je een tijdje zoet mee bent. Veel plezier!

×

De speler krijgt een willekeurige landvlag voorgeschoteld en vier mogelijke antwoorden. Probeer de juiste te kiezen. Game statusbeheer gebouwd met ReactJs en gegevens opgehaald uit de REST-Countries-API.

×

Single page app voor taakbeheer met aangepaste JSON API. Voornaamste UI-functie: selecteer meerdere items (shift-toets), verwijder en update een aangepaste selectie van taken. Applicatie gebouwd met NodeJs, Express & MongoDb. API-eindpunten voor GET / POST / PUT / DELETE-verzoeken. AJAX-verzoeken met jQuery.

×

"Verberg een tekstbericht in een afbeelding. Codeer en decodeer een afbeelding naar keuze. Gebouwd met Python en ReactJs.

×

Tap, klik of typ willekeurig op je toetsenbord. Elke toetsaanslag produceert een vuurwerk van willekeurig gegenereerde geluiden en kleuren. Applicatie gebouwd met de bibliotheken PaperJs en HowlerJs.

Interesse? Gesprekje starten!

Laat ons vrijblijvend eens babbelen om te verkennen hoe we het beste kunnen samenwerken. Plan hier online meteen een afspraak in.