Cool tech vs. boring details
Some of the stuff I’ve been working on last week:
- Fixed import progress bar for movies with no audio
- Fixed first context menu click not working on Windows
- Eye dropper backend on Windows
- Export Package actually works on Windows
- Compare Binary works on Windows
- Add checkbox to project wizard to always open it on startup
- F1 in bundled text editor goes to scripting docs for current word
- Fixed q/w/e/r keys in password fields and text areas toggling active Tool on Windows
- Fixed panes not repainting on Windows after some change is done via context menu on them
- …and so on.
Boring tiny little details.
This probably best summarizes where lion’s share of time goes when developing anything. I’m not working on some cool spherical harmonics lightmap compression. Or on cunning ways to encode shadow map information for better filtering. Or on using CUDA to compute something interesting.
In other words, I’m not working on cool technology. Instead I’m adding missing menu items. Fixing obscure corner cases. Fighting inconsistencies in operating system APIs. Spotting misplaced pixels. Adding missing keyboard shortcuts.
Nothing interesting to blog about!
But still, methinks the difference between software that is merely “good” and software that is “great” is in the details. And only in the details.
I’ll just take care of tons of more details. Maybe it will result in something good.

OK, maybe you don’t love it that much…
I agree with you that those details do make a difference. It might be an additional button in some place that makes a whole difference in the workflow or handling. We know this very well from DCC tools like 3ds max or authoring system like Virtools.
Something you may want to consider is, that if you work on some ‘big’ feature, there might be a lot of time spend until you actually have something to ’see’. I personally like to built upon things or expand as it goes quicker and you feel the progress and it feels more ‘completed’. Not?
@Shawn: :) To clarify, I love the result. Just the gruntwork that goes into making the result happen is often not that exciting. But I think it pays off in the end.
@Dom: in my experience, getting something up and running is very very fast. So when I’m working on some cool new feature, it usually takes one or two days to see the results. And that is very satisfying. But then, I spend weeks on getting said feature to actually work, and that is usually just getting all the little details right. Which is not that exciting anymore.
Case in point: when we started working on Windows version of Unity editor, I think it took a few weeks to have “something that runs on Windows and does something”. Ok, maybe a month or so. And after that it’s 6+ months to get it to actually work :)
Those little details bring program to perfection, so I wouldnt say its that boring.
I admire your persistance. Getting something up and running for a month must be hell.
I understand :) Just making some fun…
I can’t wait until you’re back to implementing graphics features rather than working on Windows (I’ve been craving proper MRT support lately) ;)