It's almost time for the Wheel Reinvention Jam! It's starting on the 27th, which is this coming Monday. Be sure to explore or post project ideas, register for the jam, and get all of your coffee ready. I'm so excited to see what you all cook up!
During the jam, we encourage sharing progress (and result) either on the Discord (we'll have a special channel set up for jam showcase content) or on the forums. If you end up participating on Discord, be sure to connect your Handmade Network account to your Discord account!
To get things kicked off before the jam, the Handmade Network staff (myself, Ben, and Asaf) will be joining the Zig Showtime show tomorrow. We'll be chatting with Loris Cro, who runs the show, about reinventing wheels, the jam, and all things Handmade. Be sure to tune in.
Shortly after, we'll be having a coffee chat in the Handmade Network Discord, as usual for Saturdays.
That's all for now. Looking forward to seeing you all during the jam!
This post is also on my blog.
I have been working hard on a file organization application written in Cakelisp. This is part of my career goal to sell my software. The project's name is File Helper (I haven't spent any time trying to come up with a better name yet).
I believe I have a good approach to thinking about my projects. It is sometimes hard to define project success in terms other than "other people think it's really cool". There are a large number of reasons why a project is still a success, even if it ends up not being popular.
I have been continuously improving Cakelisp and GameLib and intend to continue using these tools on future projects. This means all the bugs I find and fix, the features I add, and the body of references I accumulate all contribute to my potential for future success.
The more I can leverage and improve my existing tools, the easier it will be to create better applications. I started Cakelisp because I believed it would help me make better software faster, and I would be happier working with it. I still believe I have achieved these results.
Before File Helper, I hadn't had much experience writing shaders for 3D graphics. My career has always been focused on gameplay software engineering. File Helper's Tree Map gave me an opportunity to write some simple shaders and get my feet wet with OpenGL. I am already excited to use this knowledge on my next project, which will definitely need some shaders, because it also requires some custom graphical widgets.
Additionally, the more projects I get to version 1, the better I get at planning and executing my plans. I feel I have gotten better at knowing when to set artificial deadlines for myself, and how to more effectively filter the features which waste time vs. the ones that really matter.
It is very difficult to know whether something is worthwhile until you have something to put in front of people. This is partly the idea behind the Lean startup. I knew the reasons I wanted File Helper, but I do not know how many other people would want it. Do others encounter similar problems to what made me want the tool?
I needed to create something in order to answer this question. I plan on having an MVP for File Helper online and available to download in October. This project was started around 5 months ago, and developed in earnest (nearly every day) for around 2 months. I would like to shorten this time for the next project, especially by gathering input from potential users much earlier, which is something I didn't do with File Helper.
If File Helper doesn't find an audience, I gained an extremely valuable data point. I'd know I am making the wrong thing[^1], and I would hopefully also receive user feedback to hint me in a better direction. I think spending a couple months to learn this lesson isn't entirely unreasonable, especially because I still gain a tool which is valuable to me at the end of it.
I'm very proud of the projects I have finished. It feels good to create things, and even if those things "fail", the journey of putting them together, the "Aha!" moments, and tinkering with the whirring machine you built is still worth a ton.
[^1]: In the context where my end goal is to make enough money on my projects to sustain myself, which is my career goal.