Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I'm kinda hitting a wall, and I hope that some of you can help. Hope it fits the SE theme.

A bit of a background first : I'm one of those young developers. I started kinda early, at middle school, and pretty much felt instantly in love with programming. There's something that really thrills me when working on new systems. I never lost this passion, and spent the last past years doing side projects about anything. Compilers, games, abstractions, web frameworks, you name it, I've tried many things. Most of them have died to leave place to the other ones, but the thrill is still there. I love to learn, I love to build.

Now, during these years, I also started to experiment something new. As the projects passed by, I started gaining a bit of experience. Every single one was adding its one piece to the cake, and it felt awesome (none of them ever came in the light, but that didn't matter - the next one would shine!). I stopped doing 'simple' programming and learned about conception, systems, and the way to architecture them to make them generic. And as always, I built new projects to learn more.

Fast forward, I'm now employed since a few months. Everything is great, really. I got great co-workers, great bosses, and a great big project to work on. But I've recently started to feel something that doesn't please me at all - and I don't know how to manage it.

My boss is a very nice and competent person, but has a tendency to ignore coding style. Unlike me, which is very, very careful about how I write my programs. During my projects, I acquired a very strong sense of "every part of a code should feel the same", and it almost hurts physically when I see something which "is not right" (functions at the wrong place, surplus spaces, newlines ...). Now, it feels ridiculous. We're a startup. It probably does not matter. But it really hurts my concentration, because I can't abstract the fact that it's here. Somewhere there lurks some tabulation devil, some ugly newline demon, some wandering function.

I can't impose the coding style (first it's not my prerogative, and I know that some things which may seem ugly to me are not to others), and being realistic I will probably have to deal with this kind of thing during a good part of my career, so I'm not sure about what to do. I fear that it may end up affecting my professional relations.

Have you had this kind of issue during your first jobs? How did you fix it?

share|improve this question

closed as primarily opinion-based by gnat, Konrad Morawski, MichaelT, World Engineer Mar 26 at 3:14

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

add comment

3 Answers 3

up vote 5 down vote accepted

I fixed it by realizing that I provided more value to the company writing new code and fixing genuine problems than I did constantly fixing style problems in other people's code.

If the company you work for has coding style guidelines, and you are in there anyway doing some refactoring, take a few moments (if you can) to fix the style problems, but only in that part of the code you are refactoring.

There are also linters that you can apply to code that will fix style problems without affecting code logic.

share|improve this answer
2  
+1, I even find that stressing about about fairly trivial or mechanical matters is a form of procrastination: it's easy to gripe about bad whitespace, it's more difficult to gripe about the hard stuff that matters. –  whatsisname Mar 24 at 23:09
    
@whatsisname You are right on the money noting that its often a form of procrastination. –  GrandmasterB Mar 25 at 6:20
add comment

Le mieux est l'ennemi du bien

The perfect is the enemy of the good.

I will drop that Voltaire quote at every opportunity because I've seen the persuit of perfection cause many promising projects to stall and fail.

What you've presented above described almost every job I've been at. And my own businesses, for that matter. The truth is that shipping functional code has much more value than pretty code. You just have to learn to accept that. The other thing is that every line of code you write now can be fiddled with and formatted and refactored until you get gray in the head. At some point you have to learn to stop at 'good enough' and move on.

I am not excusing bad or error prone code. But rather code that is functional, reliable, but perhaps not the most aesthetic.

How you can personally address that - thats really for another site. Personally, I've always been fairly practical in this regard. While I can admire elegant code, I guess having my own business from a relatively early age taught me the above lessons. Everyone is going to have a different tolerence for what they consider 'good enough', so that will be a constant friction in this profession.

By the way, we aren't the only profession that faces this. Aspiring authors will often fail to finish books because they try too hard to make their book 'perfect', editing and tweaking it over and over. But a book that no one can read because its not finished doesn't offer much.

share|improve this answer
    
"Perfection spells p-a-r-a-l-y-s-i-s" (attributed to Winston Churchill) –  Konrad Morawski Mar 25 at 9:28
    
+1 for the powerful quote - redefining "perfect" as "good" is a trick I've used in the past as well. Embracing the concept allows you to keep your perfectionism (in a way), but redirect it towards actual productivity. –  Daniel B Mar 25 at 11:39
add comment

Honestly? I worked at one job that forced me to use a different coding style.

It didn't shake the (good) desire to make code consistent, but it did force me to care less what that consistency was.

It also didn't hurt that I've worked at a few jobs with major coding problems. When people are doing string concatenization for queries or copy/pasting code a dozen times... Let's just say that whitespace becomes the least of your concerns.

share|improve this answer
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.