--- title: Projects aliases: - /research - /teaching icontag: bulb disableList: true accent: "#008eb3" --- > I cannot teach anybody anything, I can only make them think. Socrates This page shows a curated and chronologically sorted list of various projects I found myself working on. Looking for my CV? This is probably your best bet. It is categorized as follows: - [Open Source Projects](#projects) - [Teaching activities](#courses) - [Academic research](#research) Want to find out more about me? [Read the about page](/about). --- ## Open Source Projects I like applying Jason Fried's _"Scratch Your Own Itch"_ principle from [ReWork](https://www.goodreads.com/book/show/6732019). Below is a selection of open source projects I've created or contributed to, that were made possible thanks to a lot of scratching. ### Gaming - [gba-sprite-engine](https://github.com/wgroeneveld/gba-sprite-engine); a 2D C++ sprite engine for building games on the GBA. - [gba-bitmap-engine](https://github.com/wgroeneveld/gba-bitmap-engine); a 3D C++ rendering concept on the GBA. - [gba-tileeditor](https://github.com/IanFinlayson/gba-tileeditor); a simple tile editor for the GBA. ### Unit Test Tools - [opbtest](https://github.com/wgroeneveld/opbtest); the Open PicoBlaze Assembler Unit Test package. - [opbasm](https://github.com/kevinpt/opbasm); the Open PicoBlaze assembler. - [extjswebdriver](https://github.com/pratoservices/extjswebdriver); an ExtJS & Selenium Webdriver C# framework. - [jasmine-junit-runner](https://github.com/wgroeneveld/jasmine-junit-runner); a JUnit Runner that runs headless JS tests in Eclipse - [sausage](https://github.com/jlipps/sausage); a PHP framework for the Selenium/Sauce Labs REST API. - [jasmin-sync-flow](https://github.com/wgroeneveld/jasmine-sync-flow); easy setup test data with asynchronous code using flow.js. - [tfsbuildradiator](https://github.com/wgroeneveld/tfsbuildradiator); a simple Team Foundation Server Build radiator. - [ghostdriver](https://github.com/detro/ghostdriver); an implementation of the WebDriver protocol, using PhantomJS. ### Front-end Libraries - [FieldsLinker](https://github.com/PhilippeMarcMeyer/FieldsLinker); draws links between elements of 2 lists. - [websocket-webcam](https://github.com/wgroeneveld/websocket-webcam); a pure JS HTML5 webcam client using WebSockets. - [bootstrap-wysihtml5](https://github.com/jhollingworth/bootstrap-wysihtml5); a simple, beautiful HTML5 wysiwyg editor. ### Publishing Tools - [dokuwiki-to-hugo](https://github.com/wgroeneveld/dokuwiki-to-hugo); converts your DokuWiki content to Hugo Markdown. - [gulp-svn](https://github.com/yasinkocak/gulp-svn); an SVN plugin for Gulp. - [commento](https://gitlab.com/commento/commento); a privacy-aware platform that can embed comments into websites. - [jam-my-stack](https://github.com/wgroeneveld/jam-my-stack); A set of simple IndieWeb Jamstack publishing syndication tools. Looking for more? [Browse my GitHub profile](https://github.com/wgroeneveld). --- ## Teaching activities ### Academic Courses Various courses I teach as part of my affiliation with the Faculty of [Engineering Technology](https://iiw.kuleuven.be/english) at KU Leuven since 2018. - [Principles of Database Management](https://kuleuven-diepenbeek.github.io/db-course/)(2021) - [Operating Systems and C](https://kuleuven-diepenbeek.github.io/osc-course/)(2021) - [Software Engineering Skills](https://kuleuven-diepenbeek.github.io/ses-course/)(2021) - [Software Design in Java](https://uhintra03.uhasselt.be/studiegidswww/opleidingsonderdeel.aspx?a=2018&i=2833&n=4&t=01)(2021) - [Software Design in C/C++](https://kuleuven-diepenbeek.github.io/cpp-course/)(2021) - [Basic Engineering Skills in Python](https://uhintra03.uhasselt.be/studiegidswww/opleidingsonderdeel.aspx?a=2018&i=3825&n=4&t=01)(2020) - [Capita Selecta Data Storage](https://uhintra03.uhasselt.be/studiegidswww/opleidingsonderdeel.aspx?a=2018&i=3825&n=4&t=01)(2019) ### Professional Courses Varous courses I taught as a senior software engineer to help spread good code practices. - [Test Driven Design for Teachers](https://github.com/wgroeneveld/tdd-course) (2018) - [Cultivating the right problem solving skills](https://github.com/wgroeneveld/problemsolving-course) (2017) - [Increase your productivity with Power Tools](https://github.com/wgroeneveld/productivity-course) (2017) - [Clean Code](https://github.com/wgroeneveld/cleancode-course) (2017) - The Creative Polyglot (2015) - [Javascript: the Good Parts](https://github.com/wgroeneveld/js-course) (2014) - Agile Software Engineering (2012) - [Javascript Unit testing & build integration](https://github.com/wgroeneveld/jstesting-integration) (2012) --- ## Academic Research My academic research focuses on identifying and amplifying non-technical skills in software engineering education, primarily focusing on _creative problem solving_ skills. I also [blog about the subject](/categories/education/). A selection of recently published work: - [Exploring the Role of Creativity in Software Engineering](https://arxiv.org/pdf/2101.00837). In Proceedings of the 43nd International Conference on Software Engineering: Software Engineering in Society (ICSE-SEIS), 2021. - [Non-cognitive abilities of exceptional software engineers: a Delphi study](https://dl.acm.org/doi/abs/10.1145/3328778.3366811). In Proceedings of the 51st ACM Technical Symposium on Computer Science Education, 2020. - [Software Engineering Education Beyond the Technical: A Systematic Literature Review](https://arxiv.org/abs/1910.09865). In Proceedings of the 47th SEFI Conference, 2019. Looking for more? [Browse my Google Scholar profile](https://scholar.google.com/citations?user=bvEeAtoAAAAJ&hl=en). ---