#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jun 2011
    Posts
    1
    Rep Power
    0

    Angry Working for a programmer. Is my boss out of line?


    I'm currently working for a boss that is a programmer himself. He started this company, programmed everything, and then hired me to takeover his programming duties so he could focus on the business.

    I'm continually running into issues with his controlling tendencies however, that make me wonder if working for a programmer is really such a good idea.

    -- He deletes my comments constantly, they made sense to me, because while he always stresses simplicity- his coding style is over-complicated.

    -- He has naming conventions that I hate.. and forces me to change my function names to absurdly long names that don't make a lot of sense to me ie- I make OffsetMonth which takes the month and an offset number(add or subtract from), and he makes me change it to AcctOffsetOnePeriod. WTF? They get even worse, sometimes 40-50 chars.

    -- He's so picky that when I made a program and put some variables on one line so I could see the entire function, he makes me put them all on their own line. I have to use 2 spaces for indenting, not 4, or anything else. I can't even format things the way I want.

    -- And by far the worst thing: I program things with the future in mind, usually to make something useful in a future scenario- and he sometimes tell me to just hardcode things in when I have done all this work to make it dynamic. For example I made a balance sheet program that changes indenting based on how many subcategories there are on the sheet, he deletes everything and puts in a static indent number of max 4 indents. WTF again? -- Yet today, when I was creating a function to get the next/previous month on a program that'll only use the next/previous month-- he tells me to make it so that it can work if the user wants to add 6 months. I asked why, and he said he doesn't really know.

    Is this over the line? It is my understanding that I'm the programmer and he needs to let me do my own programming. I constantly struggle with petty things that he points out, it's frustrating. I needed to vent, I appreciate any advice
  2. #2
  3. Code Monkey V. 0.9
    Devshed Regular (2000 - 2499 posts)

    Join Date
    Mar 2005
    Location
    A Land Down Under
    Posts
    2,472
    Rep Power
    2106
    Advice... Follow his instructions, or get a new job.

    I do understand where you're coming from though. The issues that he seems to have with the work that you do is micro-managing things.

    The things like formatting code using two instead of four spaces, and function naming conventions, are really small things, so let things like them go. Everyone formats things differently, so you just need to do it to the company specifications. A lot of companies require that, and will reject anything you do that actually works just because the formatting is not 100% correct.

    With things like him changing things to hard code values in after you've done the work, that's harsh. I'd wonder why he wants you to to it all when he spends that much time going back over everything like that.

    The problem seems like he just hasn't let go of his hold on the projects. After all, they are his "babies" and most of us do get a bit sentimental over things that we've produced that go to other people, so there's also a bit of an emotional side as well.

    So, grin and bare it... Move on to somewhere else that has less restrictions, or do what he wants, but push your points on what can be done to improve things. With the last one, remember that you need to have a reason for it that is not only valid to you, but is also valid to HIM and that's the hard part. Work things into discussions in a way that makes him think that it's his decision to do it that way, not yours. There's a lot more chances of getting things changed that way.
  4. #3
  5. Automagically Delicious
    Devshed Regular (2000 - 2499 posts)

    Join Date
    May 2004
    Location
    127.0.0.2 - I live next door.
    Posts
    2,203
    Rep Power
    2741
    As to the question of "Is he out of line?" well, not exactly; but he is micro-managing things it seems. I agree with Catacaustic that there's only so much you can do about it. I'd say that there's a certain amount of pain to be had with anyone who's "caring for his babies." I don't know how long you've been working for him, but I suspect it hasn't been for very long. I would think that if you approach him in a private, professional manner and talk to him about a couple things it might help.

    I think Catacaustic is right, a company/boss will want you to follow certain formats and such for naming and stuff, but I think you can make a valid point about future-proofing as a better alternative. If you do decide to talk to him, pick only 2 or 3 of the most strongest points and make it as a suggestion. Believe me, if you can make it so he thinks it will make him look better he'll be much more accepting of it.
    Adam TT
  6. #4
  7. Sarcky
    Devshed Supreme Being (6500+ posts)

    Join Date
    Oct 2006
    Location
    Pennsylvania, USA
    Posts
    10,884
    Rep Power
    6356
    Many of your complaints are regarding coding standards. Any organization with more than one person touching the code base should have coding standards. If 2 spaces per tab bothers you that much, quit. My last company wouldn't approve code for production until it conformed 100% to coding standards, including spaces after parens, 2 spaces for tabs, brackets on their own line, string continuation indented to the beginning of the string on the previous line, etc. While it seemed ridiculous at the time, it made the code look PERFECT, and anyone could dive right into any section because it was all so clean.

    Comments, function names, variable names, all of that is a part of coding style. If he hires 6 more devs, they're going to hate you if they realize you're the reason why AcctOffsetOnePeriod exists but AcctOffsetNegativePeriod is called OffsetSub.

    There's a small amount of micro-management in these complaints. If he's changing things because he "feels like it" (like your last points) then there's an argument to be made that he's making changes specifically to make changes, not to improve the software. Ask him to draw up coding standards documents so you can avoid all the nitpicking stuff, and for everything else have a formal code review where he has to say "change <this> to <that> because <reason>." Tell him you want the code base to be correct and you want to have a reason for everything in the comments because a great business like his is likely to grow to include more programmers and you want it to be an easy transition. That will stroke his ego enough to get him to agree with it.

    -Dan
    HEY! YOU! Read the New User Guide and Forum Rules

    "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin

    "The greatest tragedy of this changing society is that people who never knew what it was like before will simply assume that this is the way things are supposed to be." -2600 Magazine, Fall 2002

    Think we're being rude? Maybe you asked a bad question or you're a Help Vampire. Trying to argue intelligently? Please read this.
  8. #5
  9. Headless Moderator
    Devshed Supreme Being (6500+ posts)

    Join Date
    Mar 2007
    Location
    Washington, USA
    Posts
    16,966
    Rep Power
    9647

    venting is good


    Originally Posted by vNext
    He deletes my comments constantly, they made sense to me, because while he always stresses simplicity- his coding style is over-complicated.
    Comments only need to clarify something difficult to understand (you don't need to comment stuff like "get all information about this user from the database" - the code itself says that already). Are those the kinds of comments you're talking about? Any examples of this simple/complex dichotomy of his?

    Originally Posted by vNext
    He has naming conventions that I hate.. and forces me to change my function names to absurdly long names that don't make a lot of sense to me ie- I make OffsetMonth which takes the month and an offset number(add or subtract from), and he makes me change it to AcctOffsetOnePeriod. WTF? They get even worse, sometimes 40-50 chars.
    Absurdly long names are, by definition, absurd. But "AcctOffsetOnePeriod" is not long. It means more to me than "OffsetMonth" (and in the "month" vs. "period" sense, may be more accurate).
    40-50 characters is a bit much though. If he needs that many letters to convey a meaning then some of that meaning should probably be offset someplace else - like moving "utility" functions into the classes they actually work with.
    Examples would be nice.

    Originally Posted by vNext
    He's so picky that when I made a program and put some variables on one line so I could see the entire function, he makes me put them all on their own line. I have to use 2 spaces for indenting, not 4, or anything else. I can't even format things the way I want.
    Coding standards. If you don't agree with them, try to work out a deal; offer one requirement you like in exchange for one you don't like.

    Originally Posted by vNext
    And by far the worst thing...
    Hardcoding has its place: to get things done quickly when the real work doesn't matter yet.
    Currently I'm working on a large project that will involve users and permissions. It will be complicated: people will be able to/not able to view things, edit things, and do things, and that's all customizable by other users. I will need to develop a framework to allow "normal" devs to tap into that permissions system. I am doing so. But right now I have the UserCanEdit and UserCanView variables hardcoded to yes because that functionality isn't necessary yet. It is not worth spending the time right now to make that work because there are other things I have to do first. Instead, I wrote the public interface (which won't change (hopefully)) so that can be used now while the supporting code will be done later.
    Back to yours. Are you saying that he is throwing away stuff that you've done that (a) works, and (b) allows the system the work in the way the boss wants it to work? I suspect there's a discrepancy somewhere, and he would rather substitute your code with something he knows will work than try to wrestle it (or have you spend more time on it) to get it to do what it is currently scoped to do. Or it could be that he simply hasn't told you all the information he has, probably because you don't need to know it right then.


    Dealing with bosses is one thing that you'll learn about in the workplace. Ultimately it always comes down to a choice: would you rather deal with it or quit? Personally, I'd rather use two spaces for indentation than roll the dice on another job.

    Comments on this post

    • ManiacDan agrees
    Last edited by requinix; June 14th, 2011 at 01:53 PM.
  10. #6
  11. um, Hello?
    Devshed Novice (500 - 999 posts)

    Join Date
    Nov 2004
    Location
    FN23fc
    Posts
    719
    Rep Power
    165
    I'm the programmer and he needs to let me do my own programming
    In some cases he is letting you "program", he's just not letting you design.

    I think you both need some experience with working with another person (you with having a boss, him with having a subordinate)

    Comments on this post

    • medialint agrees
  12. #7
  13. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2011
    Posts
    28
    Rep Power
    0
    I went to work for a company that started in a garage about 11 years ago, the current CEO was the one who started it and wrote all the code in the beginning. He did most of the code for the first 2 or 3 years. A good friend of mine went to work for them and he was the 3rd developer hired.

    The boss made him crazy, always over his shoulder, total micro managing. Now my friend is director of site operations, the company was bought for hundreds of millions of dollars a couple of years ago and now have around 40 to 50 developers and nearly 400 employees in total.

    One of the jobs that I had to do was a job that had been avoided by every developer on the team. There was one program that needed to be analyzed so we could duplicate what it was doing in a new system, it was one of the last pieces of original code that the CEO had written himself. Nasty x10, but it worked and had kept working for 10 years.

    My point, try to see it from his point of view, it's his baby and he's got a plan, or maybe he hasn't worked on his managing skills enough? Either way he's making enough money to pay you. Nothing so bad about verbose naming, makes things nice and clear! ;-)

    If you've got something better to bring to the table then sell him on it.

    - Anon
  14. #8
  15. Code Monkey V. 0.9
    Devshed Regular (2000 - 2499 posts)

    Join Date
    Mar 2005
    Location
    A Land Down Under
    Posts
    2,472
    Rep Power
    2106
    Originally Posted by anonvisitore
    I went to work for a company that started in a garage about 11 years ago, the current CEO was the one who started it and wrote all the code in the beginning. He did most of the code for the first 2 or 3 years. A good friend of mine went to work for them and he was the 3rd developer hired.

    The boss made him crazy, always over his shoulder, total micro managing. Now my friend is director of site operations, the company was bought for hundreds of millions of dollars a couple of years ago and now have around 40 to 50 developers and nearly 400 employees in total.

    One of the jobs that I had to do was a job that had been avoided by every developer on the team. There was one program that needed to be analyzed so we could duplicate what it was doing in a new system, it was one of the last pieces of original code that the CEO had written himself. Nasty x10, but it worked and had kept working for 10 years.

    My point, try to see it from his point of view, it's his baby and he's got a plan, or maybe he hasn't worked on his managing skills enough? Either way he's making enough money to pay you. Nothing so bad about verbose naming, makes things nice and clear! ;-)

    If you've got something better to bring to the table then sell him on it.

    - Anon
    Which company was this? As you can understnad, there's a lot of us that are pretty skeptical about these sort of claims these days. Sure, 10 years ago it was possible and happened a lot, but in the last couple of years, no a lot of places are like this. You are most likely to be offered half a standard wage and expected to do 400 hours a week to get anything like that.
  16. #9
  17. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2011
    Posts
    28
    Rep Power
    0
    Originally Posted by Catacaustic
    Which company was this? As you can understnad, there's a lot of us that are pretty skeptical about these sort of claims these days. Sure, 10 years ago it was possible and happened a lot, but in the last couple of years, no a lot of places are like this. You are most likely to be offered half a standard wage and expected to do 400 hours a week to get anything like that.
    Bodybuilding.com - Boise Idaho
    Nothing like you describe - completely the opposite.

    - Anon
  18. #10
  19. Sarcky
    Devshed Supreme Being (6500+ posts)

    Join Date
    Oct 2006
    Location
    Pennsylvania, USA
    Posts
    10,884
    Rep Power
    6356
    Originally Posted by wikipedia
    Bodybuilding.com is an American online retailer/manufacturer of sports supplements and nutritional products. Bodybuilding.com was founded in 1999 in Boise, Idaho by then 21-year old CEO Ryan R. DeLuca [1] In July 2006, Milestone Partners acquired a majority interest in Bodybuilding.com for an undisclosed amount. In January 2008, Liberty Media Corporation acquired a controlling stake in Bodybuilding.com. The Wall Street Journal reported the sale was for more than $100 million. [2] Bodybuilding.com is part of the Liberty Interactive unit.
    My last company went through a similar cycle. Started roughly 7 years ago by two highschool-aged siblings, it was recently bought out for $100,000,000. Some small number of the original dev staff got seriously wealthy off that deal, the rest got...nothing. Some of them even got screwed, to my knowledge (they fired me 3 weeks before my stock options would have vested and 6 weeks before they got bought out).
    HEY! YOU! Read the New User Guide and Forum Rules

    "They that can give up essential liberty to obtain a little temporary safety deserve neither liberty nor safety." -Benjamin Franklin

    "The greatest tragedy of this changing society is that people who never knew what it was like before will simply assume that this is the way things are supposed to be." -2600 Magazine, Fall 2002

    Think we're being rude? Maybe you asked a bad question or you're a Help Vampire. Trying to argue intelligently? Please read this.
  20. #11
  21. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2011
    Posts
    28
    Rep Power
    0
    Originally Posted by ManiacDan
    My last company went through a similar cycle. Started roughly 7 years ago by two highschool-aged siblings, it was recently bought out for $100,000,000. Some small number of the original dev staff got seriously wealthy off that deal, the rest got...nothing. Some of them even got screwed, to my knowledge (they fired me 3 weeks before my stock options would have vested and 6 weeks before they got bought out).
    I got sick of Java and ATG and went back to freelancing.

    Much happier now.

    - Anon

IMN logo majestic logo threadwatch logo seochat tools logo