I’ve been putting some more time into side projects like this blog and Three.js. The thing is that my dev-freezer is full with failed projects that got started enthusiastically but almost always snagged. This time I decided to approach it a bit differently.

Instead of committing to a grand plan, I’d just get started and do a small part each day. Even if it’s just for a couple of minutes, the important thing is to get started. In time, I’d notice that these small moments would naturally go on for longer to just finish a task. All in all, doing the small improvements and starting with the intent on what small thing I would attempt makes it so staying motivated is easier.

This is different from splitting up a task in smaller tasks. Most of the time I don’t know what small task I want to do, and this has had the effect that I go off the ‘planned’ path more. Where I used to look to these things as distractions though, I now feel like these now these feel more like complementary skills that get picked up.

For example: the road traveled until now for three.js is as follows:

  • Learn javascript by doing some ‘advent of code’ exercises.
  • Learn the basics of three.js
  • No, first learn webpack so you can actually easily run a test server
  • Alright, back to three.js. Basic car-examples and stuff work, even when mucking with lights
  • Realize that to navigate a floor plan, you need a model..

inhales

  • Install fusion360, whip up a quick building
  • Learn about importing literally all different kinds of filetypes. Settle on .obj
  • It works! Most models look like shit though, the materials are pretty rudimentary.

inhales again

  • Install ‘Blender’ to ‘quickly’ add some materials and some lights in blender
  • Discover Blender requires arcane magic, so you start with the excellent ‘donut’ tutorial
  • Improve the home model with some extra lights
  • Import as a .gltf model, learn about these standards.
  • And presto, we’re back on 3js.

If this reads like a lot of work, it is. The important part is that it didn’t feel like work though. Nearly all steps are bite-sized and I learned new things throughout them all. And in the end, it made it so that I can more quickly add new things in my 3d world, when I first attempted to just work with vertices. All these detours gave me a broader view on the subject, so I feel like I can now narrow it bck down until I notice another hurdle. Who knows where I’ll end up then.