To what level of math should I learn to be a good programmer?
Name:
Anonymous2012-01-05 19:04
There are three tiers of programmers:
3. Non-logical programmers: They know a bit of syntax and just enough about Javascript and PHP to dump other people's code into WordPress themes and sell them on Theme Forrest. They count ``HTML5/CSS3'' among their ``skill set''. Some of them develop iPhone apps. They all use Macs, Twitter, Githib and lurk Hacker News. The truly 1337 among them fire up the terminal and eventually graduate from TextMate to vim where they spend most of their time copypasting snippets into their .vimrc to configure it ``the way Steve Jobs would have intended'', then they push it to Github at /[user]/dotfiles/.
2. Non-mathematical programmers: Programming to them means knowing the syntax and how to shit it out to do mundane tasks in the least efficient way possible. They could never program anything themselves that anybody would ever want to use, but they get hired in droves to churn out code for large scale application. If you ever wonder why most desktop software is shit, it's because of these guys. They're a dime a dozen, especially here on /prog/.
1. Mathematical programmers: Programming to them is just a small part of the big picture that is computer science. They're algorithm designers who program as a form of expression. They understand abstraction and complexity. They think of lists and arrays as vectors, and of nested loops as matrix operations, and use that knowledge to implement techniques that result in simple, clean, and fast code. They use Big-O and cost function analysis. They work on artificial intelligence, graphics, game physics, and machine learning. They go to top schools and have top companies popping champagne bottles for them when they graduate. Once hired, the have other top companies trying to poach them constantly. They're indispensable and the future needs more of them.
So yeah, learn some fucking math and stop being a codemonkey.