The End Is The Beginning Is The End
Ten years ago I started writing blog posts right here at The Developer’s Cry. I had a PC running Linux and Windows, and back then I loved programming in C (not C++). The very first post at devcry already mentions OpenGL. I had a white plastic MacBook and I remember that my ported SDL codes were running slowly, but they were working. I cared for portability of code across different platforms. That feeling never went away, not even when I had fully converted to Mac.
I wrote some posts on pthreads. For the longest time, I have stuck with
pthreads as basis for parallel programming. When Go (golang) came to
the scene, that was really something; it made parallel programming easy
with goroutines and channels. But even then I used pthreads to mimic
Go’s behavior in C++. Nowadays, use
std::thread which is nearly the same
thing, but portable across platforms.
Last year was full of OpenGL (shaders, yay!) but even before then I had developed a fair number of fairly simple games. Simple but playable and definitely a lot of fun. The insides not quite as simple … C++ and OpenGL are absolutely awesome when it comes to performance, but difficult to wield nonetheless—even for experienced programmers. Doing games from scratch take up a lot of time and effort.
I spent all my time on Macs. The late 2009 iMac is probably the best computer I ever owned. Looking back, the system seemed to come from the future. Frankly, it was so good that I’m still waiting for Apple to make something truly better, a system that stands out in the same way as the late 2009 iMac did back then.
“But something happened then the Ring did not intend.” First my MacBook Air broke down, and shortly thereafter my beautiful iMac gave up on me. Heartbroken. Disbelief. A stroke of bad luck. I managed to resurrect the iMac. I am now an expert in recovering failed Apple computers. Unfortunately it didn’t last long.
I could have ordered a new iMac and have it delivered the next day.
But I simply didn’t.