by Paul Graham
Being smart in a typical American secondary school makes life difficult as teenagers would rather focus on being popular.
Nerds are smart but not socially adept. They avoid social interaction and instead focus their energy on becoming smarter, not adopting fashionable norms. This causes nerds not to be very popular at school. Yet, nerds seem to do just fine after high school and in the real world, as being trendy doesn’t matter so much.
Hackers are makers, like painters or writers. Hackers need to understand the theory of computation, similar to painters who need to understand paint chemistry. Hacking and Sketching are similar: good software is put out there and gradually searched, refined, and sometimes beaten into shape over continuous iterations.
You learn to hack by hacking. You also learn from examples. Great software requires devotion to beauty, even the parts you don’t expect anyone ever to see. Software should be well-written, readable, and well documented.
Successful computer programming does not require rigid adherence to rules and conventions.
More often, becoming a hacker involves breaking some rules. To learn how to hack, you must look at others’ work, even if the work is protected by intellectual property rights. The only way to become innovative is to question the established ideas and seek ways to improve them.
Regardless of how hard you work in a large corporation, your wages won’t increase substantially. Instead, start a company as it is the fastest way to make money.
The rich aren’t hoarding wealth because wealth isn’t limited. Chances are that the richest individuals have worked harder and more productively than most people.
If you want to make a million dollars, you must endure a million dollars worth of pain.
As painters must please an audience, hackers must please their users. Keep the end user in mind when you start designing your product.
To collect feedback from real users, first, create and launch a prototype. Even a very stripped-down prototype early on gets you valuable feedback so you can correct mistakes and improve the product. The more users you have, the more successful your company will be. When someone considers buying your company, the value will be based on the number of users you have.
There are many languages programmers can code in, like C++, Python, and Java, as certain things are more easily expressed in one language than another.
For example, the language List allows you to tell the computer to add variables Y and X with only two lines of code. Python does not recognise variables, so you will have problems if you try to add Y to X. A workaround could be six lines of code.
New languages are still developed, and existing ones are constantly evolving. These days, any developer can adapt and develop current programming languages or even create their own.
As hackers develop as programmers, they will recognise the value of good taste in the programming languages they use.
A language that is too complex or limiting will simply be avoided by hackers. A language that meets hackers' needs will become popular, which means hackers will develop it further to improve it. For example, open-source languages such as Perl and Python.
Companies find it easier to hire programmers who code in popular languages. It means there will always be more hackers using popular languages than obscure ones.
But if programmers as forced to use one language for everything, you won’t get the best performance out of your product.
You are most likely facing the same issue as your competitors and could gain a significant advantage by switching to a more optimized language.
Timeless essays from Paul Graham on the internet, building wealth, startups, and more.
MORE LIKE THIS
Legendary Technologist And Essayist Paul Graham On Walking Into Ideas, The Test Of Good Writing, And Becoming A Connoisseur Of Bad Writing - Writing Routines