"If it's not broken, don't fix it"

Follow that and you will be blessed with lots of ugly, duct-taped, hacky and unoptimized code -_-

  • 7
    If it's not broken, it does not have enough features yet
  • 9
    Thats why Boyscout rule is the best "Always leave the code a little better than you found it". Even minimal refactors will impove code over time :)
  • 0
    Sometimes it is pointless to even try. Because some off shore contractor will inevitably come fuck it up.
  • 0
    Id say that advice goes well for systems you are unfamiliar with... because a slight "fix" could start a cascade event of failures
  • 0
    That's exactly how my current employer thinks...
  • 2
    it it's not broken, try to add a new feature.

    now it's broken.
    so now you can fix it.
  • 1
    @deusprogrammer, I'm an offshore contractor. I fixed several "working" code made by "the local guys" on my time. (Generalization like this is not a good idea when you are on an international app.)
  • 1
    @Eariel my main issues with offshore is the following.

    1) Because of the time difference it often makes collaboration or meetings impossible.
    2) There is often a huge language barrier that makes communicating my needs and you communicating yours difficult.
    3) I don't like that companies hire offshore workers when native citizens need jobs...just to save a lousy dollar.
    4) Because they pay less for the developers you often get what you pay for or the employees are overworked and/or have low morale...and thus produce shitty code.

    It's great that your team produces quality. I wish that was more often the case. To be fair though, there are plenty of people here locally who write garbage too, but I can just pop over to their desk or call them to get them to fix it. I don't have to wait until 2am when it's daytime in India.
  • 1
    @deusprogrammer, I'm in Argentina, right now it's only one hour difference to the East Coast; so we're not that far away to the West Coast either. You could scream at us online without having to wait for midnight 😃
    About your other points, I see what you mean about some local worker not getting the job.
    We're not as "cheap" as some other places because we have a very taxing (pun intended) tax, retirement and health system. So we get some of our jobs outsourced "offshore" too, mostly QA/QC but some development too...
    Also, our local job market is big enough that companies can't keep their employees if they don't pay properly or give interesting perks. And they can't keep a good customer if they change the team too much. So the local companies that have international customers try to keep you happy.
    Of course, multinational companies based on US with a local branch here are just another kind of beast. I try to keep clear of them now.
    "Global market" is such a perplexing thing.
  • 2
    @deusprogrammer I can give you context why some offshore workers are what they are (I was one myself years ago)

    Especially in India, it has become a kind of slavery in the way that kids grow up believing there are only a few "successful" careers, software engineering being one of them because of the high demand from multi-national corporations. This results in a saturation of engineers.

    I have known people who learnt to code by rote rather than by reason, and got a job to serve the needs of on-site companies. I doubt if a majority of them even enjoys programming, which is very sad.

    Don't get me wrong, there ARE good ones but we are talking needles in haystacks when you look at the number of people who have a "software engineer" degree out there.

    A solution would be to reduce the demand for cheaper labor but that easier said than done, for sure -_-
  • 0
    I thoughts are: if you touch it, fix it good or don't touch it.
Add Comment