#begin

Happy new year and best wishes for 2024! It has been an awesome and interesting year for me and there’s probably a lot more awesome stuff to come. Things started a bit weird but in the end everything fell into place. Let’s reflect a bit on the events last year.

 

2023

The bankruptcy

So 2023 started in a high note. We were building some awesome tech at Dephion at the time. I was responsible for building the next flag ship product. Laying the foundation of the software architecture. The app called Yallsz was very similar to Habtic on a feature level, but architecturally we wanted to take things in a very different direction. Building everything from scratch buy reusing the data models to be backwards compatible.

We had some high abitions for this project and build it with a micro kernal, or plug-in architecture in mind. The idea was to have a small core app that could pull in content from different internal API’s and run it. In the previous product the content was structured in such a way that it would run like a program. Imagine the Scratch programming language encoded in JSON which would be send over the wire.

The new product however would support full phledged dynamic code execution using the LUA language as extension platform. The core app would host a scoped environment for such LUA scipts to execute and the content would be fully driven by the external sources. So the core app was merely an engine to download and display the desired content. Pretty cool stuff!

But that came to an abrupt stop when the company filed for bankrupcy. I’ve written about this process before so I wont repeat myself. Let’s just say all of us were thrown in uncertainty, we all had to go job hunting, and I learned a lot from that time :P.

 

Being “unemployed”

So from April till June I was sort of unemployed. Which was pretty weird since I never had been before. Of course it wasn’t a normal unemployment. The company was bankrupt and we were expected to be on site and ready to go if we were needed. But in reality, most of us, weren’t really needed to wind down the company. Our IT Support team however was very busy pretty much all of the time. I feel a bit sorry for them :p They had to deal with adults with the technical skills of toddlers. haha

During this time I mainly helped the intern I was helping and writing an open source version of the LUA framework I descibed above. We didn’t want the curator who was now or boss telling us we couldn’t use company technology for a school assignment. IΒ  asked my real boss if it was OK for us to develop a spin off project as an open source library and he approved so we could rely on that going forward.

Additionally, I spend a lot of time on c++, HLSL and LLSL to refresh my knowledge on these languages. As I mentioned in a previous blog, I embared on these tutorials with a ‘beginner’s mind’. In the end I learned a lot of cool stuff. Mostly because c++ has been evolving really quickly since I last touched it. There’s now smart pointers, lambda’s and much more awesome stuff.

The shader programming courses were interesting as well although I haven’t finished them yet, and if you have been reading this blog for a while (the 1 reader I have, including myself :D) you know I don’t like to leave things unfinished haha. So I really have to get back to these shader tuts this year and finish what I started. Oh, I also spend a lot of time BBQ and drinking the finest german and belgian beers. :beers:

 

Navigating to TomTom.

On June first I started my new awesome job at TomTom. And this has veen a really great experience so far. I really enjoy it and we are working on some really cool tech. Althought the company is far larger than any of the sart-ups I worked before TomTom has this really nice start-up’ish environment. Its a great place to work and the team is awesome. I’m really happy here πŸ™‚ I’ll try and write up some of the things I’ve learned while working there over the past 6 months. I promise, it’s quite a lot πŸ˜€

The job has also been very, very busy. We’ve been working really hard on our product and I’ve personally been involved building demo’s for CES Las Vegas from 9 to 12 Januari 2024. Since it’s public domain now, you can check them out here. If you are going to CES, be sure to go check out our booth. It’s huge, you cannot miss it!

 

Projects

Over the past year I only wrote two little personal projects. Howl and BetterResources. I’ve had a lot of fun writing them and learned quite a bit from it. Especially howl was an inetersting thing to work on. Better resources was a project born out of frustration with the Unity3D API.

Howl is this wrapper around MoonSharp, which is a LUA environment specifically made for Unity3D. I build a wrapper around it for some nices interopability. It was the basis for my intern to work from. It really helped me understand the LUA language. I previously used to think LUA was LAME. But when you dive into some of the design choices made in the language it’s actually pretty cool. I only wish the performance could be a bit better. However, for the things we were using it for, it was pretty much OK.

BetterResources is merely a simple QueryBuilder that is able to search for resources in your Unity project. It was quite a stretch to write thing thing since I only have about 45 mins each day of the week to work on it. Writing the actual code wasn’t even the majority of the time. I also spend some time swapping from GitLab to GitHub and setting up CI etc. I had used GH actions before of course, but this time I really wanted to understand it on a deeper level. So it setup the GH actions for the project to make releases and deploy the documentation to GH pages etc. It’s quite nice once everything is setup and running. I will use this as a template for future projects going forward.

I’m also trying to get this thing in the Unity3D asset store, which is a first for me. This process takes such a long time. The review process is about 30 days!!! I’m still waiting for this to be approved or to get any form of feedback. I’ll update the project page with details about the process once I get everything setup.

 

Learnings

So in 2023 I learned many new things but I’ll focus on the technology side for this blog. I learned LUA which was in the end a very nice addition to my languages toolset πŸ™‚ It has some interesting capabilities and its design choices towards ‘Tables’ and prototyping make it into relatively easy language to understand.

I also refreshed my knowledge of c++. This really made me change my mind about the language. Previously I would say that I wouldn’t want to program with c++ because I don’t want to be bothered with memory and pointer management. But once I saw the power these features bring, it made change my point of view. It really reignited my interest in this low level kind of programming. I also bought some books about c, c++ and Rust to read for 2024 and I have a personal project I’m currently working on that will probably end up to be a lot c++ as well. I’m not sure yet because there are managed API’s as well. But I’ll talk about this project in just a sec.

Shader programming is also being refreshed since my time at TomTom. I haven’t really spend much time on it yet, since we have some awesome graphics programmers and tech artists on the team. But I will probaby get a lot more exposure to it this year. I’m looking forward to learning more about this and gain shader programming as a nice new skill :).

 

Blogs

I also wrote a lot of blogs. Most of them were oriented around The Pragmatic Programmer. I think I only need to cover 2 more chapters and it should be done. I wrote a couple of blogs that were not related to the book but there weren’t many. And, just like last year, I feel like I should write more blogs, that aren’t reviews πŸ˜› Writing just ‘normal’ blogs is more fun. Yet I still have a huge backlog of books I need to write reviews about. Maybe I should not do it as extensively as I did for Clean Code, A Philosophy of Software Design and the pragmatic programmer but keep it wrapped in a single blog post. We’ll see…

I almost forget to mention that I revamped this entire website. Previously this just was a stream of blog posts but now it contains much more. It’s become more of a personal branding website that lists my blogs, projects, podcast and overall personal information. I think it’s pretty good but far from done. I’ll see how I can evovle this in the next year.

Speaking about next year…

 

2024

For 2024 I do have some things on the list:

 

Project(s)

I have a personal project I’m currently investigating its feasibility. It involves writing my very own Pseudoterminal. A pseudoterminal is basically a virtual terminal that exchanges I/O with an underlying terminal. Such pseudoterminals can then be implemented in other software. Some great examples of psudeoterminals are Putty and of course the integrated terminals in your IDE like the one in JetBrains Products and VSCode. I’m still researching how this would work exactly in the context of Unity3D since the managed pseudoterminals run on .Net, and not on Mono and the unmanaged ones are still an option too. I’m just trying to see what would be the best choice πŸ™‚ But I’ll keep some devlog about this.

 

Work

I’m also looking forward to my day job for the next year. As I said before, we are working on cool technology and 2024 is going to be a great year for us I think. There’s many cool things on the roadmap which I cannot talk about :). But this will be public domain knowledge in due time.

 

Off-Topic

So one off-topic thing that is going to require a lot of time from my end is the fact that I’ll be starting some major renovations of my house somewhere in June of 2024. This will probably impact this blog and my personal projects. How much exactly? I’m not sure, but it probably will. I’ll have a lot of planning to do and of course the hard work itself. But that might be a topic for a future blog; maybe at the end of 2024 or start of 2025 when everything is done haha.

 

For now; I wish everyone a great 2024, lot’s of success and amazing programming adventures. But sure to learn some new awesome stuff this year! Both in hard, and softskills πŸ˜‰

#end

01010010 01110101 01100010 01100101 01101110

Hey, sorry to bother you but you can subscribe to my blog here.

Never miss a blog post!

You have Successfully Subscribed!