About me

Hi, my name is Joost van Ham, full stack software engineer with over 15 years of professional experience. I'm located at Breda, the Netherlands, working often remotely. Also known as Xoppa, which is the name of the company that I founded in 2001.

I've been working professionally in software development in server, desktop, web and mobile spaces with experience across the trading, accounting, e-commerce, security, health and media domains. Since 2012 I am core developer of libGDX, a widely used cross platform gaming library, where I'm focussing on linear algebra, 3D physics and 3D graphics. I have a strong background in C-family languages, like C++, C# and Java. In my FAFF time I like to play with artificial intelligence using ANN in parallel programming with for example OpenCL, CUDA and SIMD.

  Winner of the Duke's Choice Award 2014 Joost has been a corner stone in the development of libGDX for the past few years. Apart from being highly diligent in maintaining the existing code base and being one of the go-to guys for any community inquiries, he's spear headed many of the new developments within the framework. His most notable work has been on all 3D functionality, from a highly intuitive and flexible API and format for 3D graphics programming to seamlessly integrating 3rd party physics support.

I'm proud we could win Joost to be part of our team, we would not be where we are without him.
Mario Zechner, founder of libGDX  

Some of my work

Practically everything I do for my work is covered by a NDA. This is a very incomplete listing. Please feel free to contact me if you like to see more references.

Color Cube

Made in 1999, my first experience with OpenGL, created in Borland C++ Builder (my favorite IDE/language at that time). I would include my first DirectX game (which was a tetris like game) or even QBasic game (a gorilla.bas mod I made in 1993), but unfortunately most of my earlier work is long lost. So I'll just leave this here for my nostalgia.

Technical analysis and trading

Over the years I've made several custom trading and analysis applications. Obtaining real-time data using DDE, API (e.g. TWS) or other sources as well as using historical data for back-testing. Both the graphical respresentation of the data (not only candle sticks, but also market depth and spread), as well as the indicator algorithms, all the way up to automated or simulated trading algorithms.

Shoot!

Made early 2012, my first Android game, created using AndEngine. I created this game in my spare time in around two months to familiarize myself with mobile game development. It got over 50.000 downloads which encouraged me to further look into mobile games.
Download on Google Play.

Learn English with Amy

Made in 2015/2016, freelance project in a team with handful members. A cross-platform (iOS and Android) game to help children teach another language. The game itself is written in Java managed using Gradle, uses Dagger 2 for dependency injection and fastlane for publication.
Download from App Store. or Google Play

3D Graphics API

First released mid 2013, 3D graphics API, created in Java and C++. A complete cross platform 3D Java API. It's part of the libGDX open source project. Ranges from assets and models, including animation and skinning, sorting and optimising draw calls, multiple render passes, dynamic shadows and particles all the way up to the shaders, including multiple uber-shaders with dynamic lighting, normal mapping, reflections, etc. I wrote the majority of the API (open source), the tests/examples, the documentation and quite a few tutorials.

Race game

A demo mobile race game I made for testing the 3D physics and graphics API I created. The models are quickly made in Blender and Maya or free online available resources. Since I finalized the API's not long after that, most of the code of the game became obsolete. Yet I still get quite some positive comments referring specifically for this game.

libGDX

Since late 2012, I am core developer of libGDX. One of the most used libraries for mobile game development. According to AppBrain, an average of around 2% of all Android applications, ranging up to almost 10% of all Arcade games, uses libGDX. Fun fact: someone calculated that I come next to the founder of libGDX when it comes to the Truck Factor.

Technical reviewer

In 2014 I was asked by David Saltares to be a technical reviewer for the book: "Libgdx Cross-platform Game Development Cookbook". It was a very enlightening and learning experience to see how a book comes together. Get it on Amazon or Packt.

Why freelance?

Originally, Xoppa is a company that provides business automation services for small and medium local companies. The customers of Xoppa are not specifically technical of nature, but instead hire Xoppa to provide a technical solution for their business needs. For example, they hire Xoppa to create a mobile application, a customer webportal, custom business software, automate repetitive tasks, etc. It's a very wide range, not necesarily solely writing new software, but often also incorporating existing software. Overall it are mostly many relatively short, delimited and small projects.

My tasks, as only employee of Xoppa, is to make each project a success, from beginning to end. This includes fully understanding the problem, investigating the possibilities and existing solutions, finding the right tools, hiring a designer, setting up the server(s), creating custom software, etc. all the way up to actually implementing it and tutoring end-users.

From time to time I get hired for a bigger project where I can be part of a development team, which I've always found very energizing and comfortable. Therefor I've decided to move the focus towards freelancing me as a person. Freelance is the most natural choice in my situation, but I'm not retained to it. I am open for a freelance job to grow into a permanent position.

Get In Touch

You can contact me directly by sending an e-mail to joost at xoppa dot com, or click on one of the following links to learn more about me: