[Please note this is a rant. I do not write many solutions in this post, just a lot of ranting]
Students often take dual majors in Computer Science and Mathematics because the majors compliment each other. Math and programming allow you to create algorithms that can help Netflix create the best collaborative filter algorithm That’s sexy right?
The newest phase of programmers are not doing it to create new algorithms. They’re doing it to create their new web business which stemmed from an idea that they’ve had. Although I have been programming on and off for the past 8 years I generally use it for the latter as well.
Here’s the problem. Programming is frustrating because the tools, documentation & processes that we use every day are so bad. It’s not because programmers don’t understand logic or how to make algorithms, it’s because they’re still working on getting “hello world” to compile without errors. Or get a simple Facebook function to work for PHP CodeIgniter when you realize that the PHP CodeIgniter Github project has 2 lines of documentation. The project assumes you know the documentation is minimal and you can get figure out the rest. And oh yeah, one of the two lines of documentation is incorrect.
On github project (The entire documentation):
The one thing that it doesn’t mention is the second line is wrong.
The right syntax is:
I’m glad I know what I’m doing because otherwise, I would have quit. I looked in the real SDK for the function and found out it was using a wrong getUser() function. This is where many other people would have quit. It’s not hard, it’s just frustrating! You follow every direction you can, and that direction is wrong.
I know what you’re going to say. The proper response is update the project with that info. I will do that, but 99% of the people won’t. They will just get frustrated and quit.
It’s not just Github projects, it’s also iOS projects. The mission to get a project to compile on your phone using xCode because the key / value pair isn’t working even though you followed every direction in the book on Apple’s Member Development center.
Don’t even get me started on inheriting other people’s code.. A simple “this is what I think this function does” would suffice or a “I did it this way because” statement would save someone 8 hours. Maybe there should be a process in which code shouldn’t compile unless the proper documentation is in place.
StackOverflow is my lifesaver. I would not be able to create anything without StackOverflow. Seriously. StackOverflow IS my documentation for 90% of the errors that I have.
Well, Google is really my first lifesaver since it brings me to StackOverflow almost every single time.
If the problems programmers had were logical issues, then I think it’s more intriguing for them. Those are real challenges. Figuring out why get_user doesn’t work the first time is frustrating.
This is why people don’t want to code.