Også tilgjengelig på norsk: Ekte Programmering
Order the book here: Lulu, Amazon, Barnes & Noble
The Norwegian version is available from The National Library of Norway.
Based on the wildly popular Norwegian version, this is a book
about real programming for real programmers. Or for those who have an interest in programming but
have grown tired of the available selection in bookstores. Yes, they still exist. Bookstores, I
mean. And books.
Real programming has existed since the dawn of time, a.k.a. the mid 70s with the launch of the 6502 and Z80 CPUs. Back then, code was written by hackers in real languages like assembler and C. With the launch of the 68000 based Commodore Amiga in the 80s, another hacker revolution was born. Unfortunately, in the middle of the 90s the internet grew popular and ruined it. And then the smartphones ruined it all again in 2007. Someone had the dubious idea that programming should be easy and for everybody, and new programming languages and methods were developed with that in mind.
Corneliusen and Julin claim the result was a disaster, since everything, at best, turned average: The code, the speed, the programmers, the managers, and the salary. And people still wonder why their smartphone batteries drain so quickly. Or why companies flush money down the toilet by writing software in programming languages similar to Duplo, and then run them in the cloud where they pay per CPU second used.
Programming is like playing a guitar: It's possible to do it for years without becoming better than well below average. To be really good, everything has to be questioned. And that's what this book is about: Instead of forcing the reader to memorize complex methods and formulas, assorted problems are broken down to their essence and reassembled in new ways. Not because it's necessary, but because it's important to figure out how things work. The authors claim that by doing this, even the hardest problems become simple. Sometimes the presented solutions are improvements, and sometimes they're just entertaining.
It should be noted that the book contains a lot of real code in C, Assembler, and GLSL for the architectures ARM and Neon, Intel SSE2 and AVX2, and the slightly obscure mega-multicore CPU formerly known as the Tilera TILE-Gx.
Corneliusen has been programming since he got his first computer, a Sinclair ZX81, in 1982. He studied and got a degree at the University of Oslo in the 90s, but quickly discovered that abstract code was the path to the dark side. He's written high performance code for numerous architectures, and also written several articles about how complex problems can be solved in new ways.
Julin pulled the short straw when trying to find someone to break Corneliusen's endless rants into publishable form, and he has tested and verified that all the code in the book actually does something useful. He has been programming for many years as an Amiga hacker and professionally. He also has extensive experience in 3D graphics and animation and has made some of the illustrations in the book.
Chapter 2: A Rant About CPUs, Languages, and Development Methods
Chapter 7: Research is Hard
Chapter 15: The GPU Raytracer
Chapter 17: The Rip-Off Artist
Chapter 21: A Jilted Generation
Chapter 23: Appendix
Chapter 24: Licensing Information
Real Programming Condensed: A 10-page summary of the book. Published 9 February 2023.
Source code, images, and videos used in the book. Also contains updates and corrections since publication.
The Norwegian version of the book received mildly entertaining (digital) press coverage in March 2023. Kode24.no, which we would refer to as a lowbrow Norwegian programming website, published several articles about the subject. Like all things that are different from the status quo, the opinions were very vocal [abstrusegoose.com]. We summarize the debate by citing Torstein Bae: "You have to be tolerant and accept that others are wrong."
In connection with the 3-year anniversary, we handed out virtual awards to two of the articles. They are presented here, along with translations: 9 February 2024: Real Programming Anniversary Awards
Later we discovered that both kode24.no and digi.no waste gigantic amounts of energy. Who could have guessed that? Read about it here: 4 March 2024: Warriors of the Wasteland
Pages: 197
Format: Paperback
Type: Color
Size: A4 (210x297 mm)
ISBN: 9781678050443
Weight: 649 grams
Publication date: 5 April 2021