đź‘‘ Hacking - The Art of Exploitation
Left: A Software Bug being, evil and annoying. Right: A Hacker, shiny and majestic
The inconvenient Truth
Let me guess: You’ve finished three hundred coding tutorials and still feel like you haven’t really learned anything. The inconvenient truth is that you’ll never become a real programmer if you just follow instructions. You have to be able to crash the system. You have to develop your own code-fu. You have to read the fine manual.
Most computer science professors out there want to recommend you to D.R.Y. DRY stands for Don’t Repeat Yourself and means the practice of never writing program code a second time. All well and good, but that’s not at all the live-action method of high-flyers like John Carmack, Linus Torwalds or Pavel Durov who live dangerously. The real P R O G R A M M E R S out there write endless variations of the same algorithm to really master the problem they’re working on. They always repeat themselves.
Quake was not developed once, but two times, three times, four times, and the mastermindes behind this insanity started from scratch with each iteration. The losers from university are lazy. They take the easy way out and invest as little brainpower as possible in implementing their projects. But these are not programmers. They are end users of software developed by real P R O G R A M M E R S.
Coding is hard. And it has to be hard, otherwise it’s not rewarding. It is no coincidence that real P R O G R A M M E R S show a certain sympathy for kung fu films. The mindset of perfection, routine practice and expanding one’s skills is true Shaolin, and only candidates who take the hard way will be able to take our society’s technology to the next level.
There are different terms for what I mean, but among web devs and programmers in general it is called the Hacker Mindset.
If you’re wondering why I wrote about programmers in the previous paragraph and not about real P R O G R A M M E R S: Typing P R O G R A M M E R S o the keyboard is more time-consuming than typing Programmers, and I only do the effort to those who deserve it. The run-of-the-mill programmers who develop useless WordPress plugins for lame medium-sized companies don’t deserve the effort. The inventors of jQuery, on the other hand, have done a great job; these are real P R O G R A M M E R S
The Hacker Mindset
The Hacker Mindset is characterized by an offensive curiosity, a dangerous approach to code that bypasses norms and puts the goal first. I don’t mean hacking credit cards or password-protected directories, but curiosity about technology, coupled with the intellectual excellence to come up with something really cool. It may be that a Hacker Mindset comes into conflict with the law in practice, but if the law gets in the way, the law itself is to blame.
The Hacker Mindset doesn’t think about consequences. It operates in the here and now, and concentrates on the adjustments of a technology, regardless of what technology it is, without any purpose. And if the computer gets yelled at? Whatever, that’s how it has to be, you filthy machine, do what I say now!
The losers from university don’t want to know anything about it. They want exactly what you wanted up until just now: follow instructions, click through tutorials, and end up doing a boring job in a cubicle (congratulations Neo). Did you never realize that developing Pirate Bay, Elastic Search or WebGL requires more?
The Hacker Mindset is driven by idealism. The goal is to write the ultimate code. In order to experience the augmentation of society and yourself. The Hacker Mindset finds out something new. The Hacker Mindset digs deeper into the obscure areas that no one has dared to go into before, working close to the ones and zeros, the HTML headers and the lowest layers of the OSI model.
Need an Example?
Square is a great example of this. Jack Dorsey and Jim McKelvey developed a payment processing service that gets processed via the headphone cable. They called it Square, and they saw that it was good. The idea of ​​processing payments via audio signals is exactly what the Hacker Mindset is all about. You don’t come up with ideas like this by simply following tutorials. You have to look deeper to find the heart of programming: electrical signals, encoded in various formats. If you understand the encoding, you understand the possibilities of transporting any form of traffic over any form of infrastructure. Understanding this is a tedious path, but it’s worth it: Jack Dorsey’s fortune is estimated at around 18 billion dollars, and his payment service Square takes up a large part of that. Who knows, maybe you’ll develop the next Square?
The Path of Truth
I would like to recommend you the Book that is widely considered among programmers to be the Black Bible of Hacking. The book was authored by Jon Erickson, a real hacker. One of those hackers who know how to manipulate the ARP cache of an end device to execute a man-in-the-middle. You don’t have to read the whole book. To get into the hacker mindset, it is enough to read individual chapters and watch Mr. Erickson tear apart operating systems (it’s beautiful)
No programming knowledge required (although I want you to learn programming as quickly as possible, for example with my Super-Duper Javascript tutorials). Erickson uses C as his primary programming language. C may seem outdated in the community, where Rust is all the rage today. But the problem with Rust is that Rust is secure, and a hacker is not interested in secure technologies. C has always been the only REAL programming language for real P R O G R A M M E R S, and it will stay that way.
Give it a try, here’s the Amazon link. Or do you want to go back to the boring tutorials?