Hacker Newsnew | past | comments | ask | show | jobs | submit | shittycoder's commentslogin

I am not comfortable writing bad code, as it is detrimental to my professional development. I am unable to improve my technical skills in this environment. The issue stems from a lack of qualified or senior developers on the team, which makes it easy to write poor-quality code and pass code review. The developers who were on the team before me wrote subpar code, and nobody questioned it. Now, we have items to deliver in sprints, and it's challenging to deliver quality software within the given timeframe. When I try to write good quality code or try to write, I often can't finish my items on time. Unfortunately, nobody blames the existing codebase; instead the blame falls solely on the developer.


What if you do not have enough time to do you best work... Problem isn't about caring, problem is when you care it takes time and when it takes time nobody gives a shit, because they do not care good software but just ship and get results. Also when you have a codebase full of fixmes or bad code it is not easy to adding a single line sometimes because 'technical depth'.


> What if you do not have enough time to do you best work

Early in my career, I'd just do the best work I could given whatever the constraints were.

Later in my career, once I grew a bit of weight to throw around, I'd push back and say that the deadline doesn't allow for quality production, given the scope of the task. Then I'd offer various options to narrow the scope such that good work becomes possible.

Even then, sometimes reality is not what we would prefer and I end up falling back onto "the best I can do given the constraints". Good engineering isn't developing some platonic ideal of excellent code, because there are always constraints. If not time, then something else. Good engineering is developing the best possible solution given the constraints that have to be worked with.


Thanks for the comments.


I really like to code, as well as being reviewed or doing code reviews. However, when I try to do code reviews, most of the time I receive comments like 'We do not have time' or 'We can fix it later' or 'This task is just a bug fix'. The problems isn't about caring; I care about the code I write, but when you care, it takes time. When you need time to do things right, this isn't reflected in your performance. I experimented with being like others who don't care much and just do the task as needed, no more. Then I realized improvements in my performance :D.


When you see many of functions with 500 - 1000 lines or most of functions with 10-15 if else statements, I am not joking... There lots of and lots of FIXME: bla bla. If you see this what would you think ?


Point taken.

Do tools such as Crap4j exist for other platforms? It measures the amount of CRAP (Change Risk Analysis and Predictions) in your code. Cyclomatic complexity is one of its big measures for determining CRAP. What's nice about having a tool is there are no arguments. The first step on a pull request is determining whether the code is CRAP!

Most organizations quickly outgrow the need for such a tool, but yours might be one that would benefit. You'd be amazed at how objective social pressure works on a dev team, though beware, you may have problems if your team's Primadona consistently produces CRAP code!

Edit: Link to Crap4j - http://www.crap4j.org/


We just heard about it, thanks for the comments.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: