Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I worked on an incredible C++ codebase back in the dot.com. We built a mobile SVG renderer and packed into 128kb on a Palm 3 and similar code sizes on Blackberries, Symbian (the worst OS ever), Fujitsu phones, and whatever you threw at us.

I built a few systems. The DOM, a build system that could cross compile to a completely new target phone while the phone executives were at lunch with our sales team (that’s great demo!), and an optimizing build step in Perl that rewrote the C++ to minimize bytes, cycles and joules of energy.

The rendering engine was built by a genius. It was the most efficient and accurate vector graphics renderer I have ever seen.

But of course no one could understand how this system worked.

I mean, Perl that transpiles C++ into more optimized C++ just is abusive. I was not popular with the senior devs.

The main coders including me were coop students who worked furiously at all hours for the fun of it.

But of course the product had no revenue. The wiser devs probably knew this and didn’t care.

Nevertheless, we eventually were let go during the dot.com bust and the remaining main engineers had to throw the code out and try to rewrite it in Java. That didn’t work because in that era Java was too slow to fit on a phone. Or maybe the market was dead.

I learnt a solid lesson.

What’s amazing technically is not an amazing code base.

What is an amazing code base isn’t an amazing product.

What is an amazing product isn’t an amazing business.

Literally every product I have ever seen that is profitable is not a good code base. But if it pays me to code, I love it.



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: