Live data from Hacker News

First programming job – a 4 month reflection

pastebin.com

21–30 of 70 posts

Re: First programming job – a 4 month reflection

#21
I've been there years ago where OP is now. I can tell him this: you've only scratched the surface. Just as there are very good programmers there are also very bad ones. Trying to make a bad programmer into a good one often ends up in a catch 22 - he would already be a good one if not for all the constants in equation that makes him a bad one. My advice number 1 is this: move on, find a team of solid professionals. Advice number 2: dump PHP, learn a more serious language like Java, Scala, Clojure or C/C++ if a lower level is in your interest. It just so happens that often guys who work with those languages tend to be better than guys who work with PHP.

Re: First programming job – a 4 month reflection

#23
post #4

I've worked at a total of 3 companies over the course of 5 years. 2 of those 3 companies I've worked for have no coding standards at all, which is surprising because the company is able to make money despite the quality of code.

Why does that come as a surprise to most people? Businesses don't care how their code looks - if it works, it's good enough. Which is also why changes are discouraged - no need to mess with something that works unless absolutely necessary. Not the best policy, but if it works - it works :-).

It definitely depends on a lot of factors.

Even if they don't have any formal coding standards, a company can ship good products as long as they have at least a few decent programmers.

Ad hoc / beta testing can fill in for unit testing. Bad coding style and low modularity won't necessarily make a project slower or worse, just harder to maintain. Lack of version control isn't necessarily a major problem if there are daily backups of source code, and if each part of the system is being developed by only one person.

No tech company or startup would ever consider things like that sane practices, but many companies do get away with it. Especially if what they're programming isn't the company's primary product or service, like in the case of a university.

Re: First programming job – a 4 month reflection

#25
All work environments are absolutely not like that. I've worked in places exactly like that and places nothing like that.

I'm pretty sure it depends largely on the type of business. Businesses where software makes them money tend to have high code quality and developers that care about that sort of thing. Businesses where software (or IT as they'll call it) is a cost center tend to be like you described.

I'm also pretty sure there is a strong correlation between PHP and that type of environment. It's much less common with places that use Ruby/Python/etc. Probably for the reasons Paul Graham wrote about with Python vs Java: http://www.paulgraham.com/pypar.html

Re: First programming job – a 4 month reflection

#26
I've seen a lot of this in small organisations. Typically they are isolated from the rest of the developer community.

Your challenge, if you choose to accept it, is to hack the social environment: get them all slowly to come to meetups and hackdays and stuff and engage with the rest of the industry. They'll hear the buzzwords and learn, and change will happen. It will take a while...

Re: First programming job – a 4 month reflection

#27

I've been there years ago where OP is now. I can tell him this: you've only scratched the surface. Just as there are very good programmers there are also very bad ones. Trying to make a bad programmer into a good one often ends up in a catch 22 - he would already be a good one if not for all the constants in equation that makes him a bad one. My advice number 1 is this: move on, find a team of solid professionals. Ad…

Correct me if I'm wrong but neither Java, Scala, Clojure, nor C/C++ tend to be used for web development, right? So OP wouldn't be doing web development if he picked those up? From what it sounds like, OP is doing web development, so maybe some other suggestions such as RoR, Node, or .NET etc would be more applicable?

Re: First programming job – a 4 month reflection

#28

I've been there years ago where OP is now. I can tell him this: you've only scratched the surface. Just as there are very good programmers there are also very bad ones. Trying to make a bad programmer into a good one often ends up in a catch 22 - he would already be a good one if not for all the constants in equation that makes him a bad one. My advice number 1 is this: move on, find a team of solid professionals. Ad…

It feels so bad to rag on PHP. I mean, it has myriad sins against man and nature, but so do most languages. But its central ethos of "make programming democratic" has managed to create a community of mediocrity. Obviously there's always the valid rejoinder "every language have good and bad programmers," but the tolerance and even the generation of the bad is so much higher in PHP.

To the author of the article: move higher. Whenever you feel like you're in the top third of programmers at the place you work, it's time to move on.

Re: First programming job – a 4 month reflection

#29
post #24

Yep, lots of workplaces are like this. As you do care, get away from PHP ASAP. Beware of structuring and refactoring too much, or writing low-ROI tests. You must find balance.

This is what a lot of it is about, balance. When we write open source software, we don't usually have costs, time isn't a factor, we aren't being rushed by a long todo list, so we can invest in the code. In business, we don't always have this luxury.

Re: First programming job – a 4 month reflection

#30
post #24

Yep, lots of workplaces are like this. As you do care, get away from PHP ASAP. Beware of structuring and refactoring too much, or writing low-ROI tests. You must find balance.

While I dislike programming in PHP (the syntax is ugly mostly), and I like Python and JS, I don't think getting away from PHP is a solution and the solution. PHP is not the problem in this situation. It's the people who is working there with OP.
Post reply on HN