Live data from Hacker News

Dev Diary: John Carmack on RAGE for iOS

bethblog.com

1–10 of 39 posts

Re: Dev Diary: John Carmack on RAGE for iOS

#3
I had been harboring some suspicions that our big codebases might benefit from the application of some more of the various “modern” C++ design patterns, despite seeing other large game codebases suffer under them. I have since recanted that suspicion.

Quoted for truth.

I learned C++ during the Meyers/Sutter era. Then Andrei Alexandrescu came along and I had Boost libraries sprinkled all over my code. My beard is growing grey and these days my C++ looks more and more like straight up C.

Re: Dev Diary: John Carmack on RAGE for iOS

#5
post #3

I had been harboring some suspicions that our big codebases might benefit from the application of some more of the various “modern” C++ design patterns, despite seeing other large game codebases suffer under them. I have since recanted that suspicion. Quoted for truth. I learned C++ during the Meyers/Sutter era. Then Andrei Alexandrescu came along and I had Boost libraries sprinkled all over my code. My beard is grow…

I found this part of his article to be interesting. I'm working through a CS degree and learning C++ for the first time after cutting my teeth on Python and C#. What exactly does he mean by "(restrained) C++"? He mentions a contract studio using the STL and boost. We are using the STL in our data structures class...does John Carmack eschew the STL and roll his own data structures?

Re: Dev Diary: John Carmack on RAGE for iOS

#6
post #3

I had been harboring some suspicions that our big codebases might benefit from the application of some more of the various “modern” C++ design patterns, despite seeing other large game codebases suffer under them. I have since recanted that suspicion. Quoted for truth. I learned C++ during the Meyers/Sutter era. Then Andrei Alexandrescu came along and I had Boost libraries sprinkled all over my code. My beard is grow…

I found this part of his article to be interesting. I'm working through a CS degree and learning C++ for the first time after cutting my teeth on Python and C#. What exactly does he mean by "(restrained) C++"? He mentions a contract studio using the STL and boost. We are using the STL in our data structures class...does John Carmack eschew the STL and roll his own data structures?

In his own words: http://twitter.com/#!/ID_AA_Carmack/status/21119808432

I consider myself a decent programmer but I have more trouble reading template heavy C++ than I do haskell code. To me, restrained C++ means keeping the unreadable bits outside the code base and isolated in their own library, like Boost :)

Re: Dev Diary: John Carmack on RAGE for iOS

#7
post #3

I had been harboring some suspicions that our big codebases might benefit from the application of some more of the various “modern” C++ design patterns, despite seeing other large game codebases suffer under them. I have since recanted that suspicion. Quoted for truth. I learned C++ during the Meyers/Sutter era. Then Andrei Alexandrescu came along and I had Boost libraries sprinkled all over my code. My beard is grow…

I found this part of his article to be interesting. I'm working through a CS degree and learning C++ for the first time after cutting my teeth on Python and C#. What exactly does he mean by "(restrained) C++"? He mentions a contract studio using the STL and boost. We are using the STL in our data structures class...does John Carmack eschew the STL and roll his own data structures?

C++ lends itself to a large variety of different programming styles and paradigms. C++ also lends itself to premature baldness, by developers ripping their hair out trying to make systems developed in different styles interact with each other.

A popular thought is that any given team or company should pick a particular subset of those styles -- and perhaps a subset of C++'s features -- and use them to the exclusion of others.

Re: Dev Diary: John Carmack on RAGE for iOS

#9
post #3

I had been harboring some suspicions that our big codebases might benefit from the application of some more of the various “modern” C++ design patterns, despite seeing other large game codebases suffer under them. I have since recanted that suspicion. Quoted for truth. I learned C++ during the Meyers/Sutter era. Then Andrei Alexandrescu came along and I had Boost libraries sprinkled all over my code. My beard is grow…

My C++ also tends to be simple.

I also have never had a need for any formal "design patterns", as every time I've encountered a problem for which it turns out there is named pattern in the books, a few moments thought about the problem has always led me to discover the solution myself.

Now, it could be that this means I'm some kind of programming genius. I wish that were true, but alas I think it is not so much a reflection of how good I am, but rather how mediocre many programmers are today.

Post reply on HN