I Really Can't Think Of A Title

2    25 May 2016 03:16 by u/DAbell

Okay, I'm new to Voat, I used Reddit for a while, but it felt way too oppressive with Reddiqutte and stuff like that. Did I spell that right? Who cares. So, I hope, I'm posting in the right place. I would like to ask seasoned programmers. When you first came into the field, what were things you overcame and how did you overcome them? Secondly, when retrospecting your years as a programmer, with what you know now; how would you apply them in your past. (i.e. your work ethics, attitude, how you dress, etc.)

2 comments

1

Oooh, some content that isn't a link to some spam blog.

As a non-seasoned programmer: get a degree, not necessarily in computer science though.

1
  • Everything is politics, it does not matter if you are a good developer or not, if you have to work with a boss that is less smarter than you or colleagues that are convinced that design patterns are the next coolest things, then you have to be very careful in what you say or do.

  • Managers don't like smart too developers. They are burden because these expose the lack of knowledge of the manager. If you are a developer you must dumb yourself down. Once in a while let the manager find the bug.

  • Race, if you get a new project race to create as much as code ass possible. It is the only way how a project will have a chance to become successful. The biggest reasons why projects fail is when the managers look a your code, don't understand what you are doing and freak out. When they freak out, then they will force you to follow the rules of some design pattern book they have read and sabotage their project.

  • Failure makes to a better developer. Good developers learn from mistakes and improve their skills. The more mistakes you make the more you learn how your code can fail. In the end you will create a workflow that prevents you from making big mistakes.

  • When you design code you must know what is the primary focus and a secondary focus. Your code is designed around these focus. The focus is always the end user in mind, never the design pattern or the syntax.

  • You will never have the feeling that you have accomplished something. One of the crazy things in developing is that a well designed program is deceivingly simple and elegant in design. No one understands that this elegant design is very hard to cerate.

  • Human resources. the art of bypassing Human Resources is basically trying to learn a list of hype words and bingo words. These people have absolutely no idea what they need and how they will find a good developer. For 2 years I failed every single job interview when I initially started until someone told me that I was never hired because I did not fit into their Excel spread sheet.

  • Don't find excuses to explain why your code fails. Bad developers will blame anyone except themselves. And for some dark reason bad developers are favored in by Enterprise managers.

  • Testers are your friends. If they report a bug then there is a bug that you need to fix. If it is something that cannot be reproduced, then realize that there is something there and you must find it. In a lot of cases it exposes a new series of bugs that you did not realize that it existed before. If for some reason testers incorrectly think that it was a bug then it indicates that you developed code that confuses the tester. The tester is not at fault , you as a developer are.

  • Develop your code with testing in mind. Your code might become more complex, if it simplifies testing then in a lot of cases your code is elegant in design and probably will last for ages.

  • Only release code when you feel that it is up to professional quality? It might not be perfect but you know that it won't blow up when a user looks at it. The mosts stressful periods are bugs that cripple the software and makes users call phone support. You will get burned out and never get a chance to develop anything for months.

  • Expect quality from the testers. If you see them testing something badly then force them to have a higher standard. Force them to abuse your stuff, and even learn them how to abuse your stuff. One time I had a tester rename a .exe file to .txt and fed it to the input. It is hard abuse but it should not bring down a database or do other evil stuff.