Reputation
2,176
Top tag
Next privilege 2,500 Rep.
Create tag synonyms
Badges
6 12
Newest
 Nice Answer
Impact
~41k people reached

  • 0 posts edited
  • 0 helpful flags
  • 169 votes cast
Feb
9
comment How to refactor while keeping accuracy and redundancy?
@Andrew S. Arnold - my comment is maybe a bit pedantic, but that is not the whole point. Refactoring is also used to make code, and the design of the code, clearer and easier to understand. Removing old code and duplicate code is just part of it.
Jan
10
comment Skeptic in a Scrum Team
I am pretty sceptical of the value of the SCRUM process. I don't think it is very agile for a start. I do turn up to the meetings. But I don't think anyone is going to fire me, as it was partially my fault we implemented SCRUM in the first place (if anything I think they should fire me for that! They do not agree). If your company is going to fire workers for trying to do there job the best they can. The you will probably just end up with workers that blindly follow orders, and I can't see that producing much decent code.
Dec
30
answered Would you see any use of a Trilean (True, False, ??)
Dec
30
revised How do you explain Separation of Concerns to others?
fixed grammar
Dec
30
answered How do you explain Separation of Concerns to others?
Dec
30
awarded  Critic
Dec
24
comment What's the most absurd myth about programming issues?
@MAK - check out en.wikipedia.org/wiki/Handel-C
Dec
24
comment What's the most absurd myth about programming issues?
@orokuskai: good code is simple. The things it is doing may be complex but the simplicity (elegance) of the code is what makes it good in my opinion! Of course, code does lots of other things, and rubbish code can make you lots of money. But my goal is to write simple code even in complex situations.
Dec
24
comment What's the most absurd myth about programming issues?
@Jouke van der Mass: of course. But it does not matter how complex the algorithm, the goal is to express the algorithm simply. i.e. good code expresses complex algorithms, rules, optimisations, in a simple and unambigiously understandable way. Expressing simple things simply is comparatively easy. Expressing complex things simply is where the skill lies.
Dec
24
comment What's the most absurd myth about programming issues?
@Kyralessa - I think that I now know enough about the underlying theory of computing and functions of computers to not make basic errors in any programming language. I can read the documentation. However, something that a language specific hire with limited engineering skills /will/ do is make basic errors in the structure, design, correctness, scalability, reliability and maintainability of the program that will potentially cost large amounts to fix. If you don't lose all your customers due to the low quality of the software in the meantime (assuming your project actually gets anywhere).
Dec
22
comment Is anything in programming truly evil?
I am your father
Dec
20
awarded  Nice Answer
Dec
20
comment What is abstraction?
I do not care how many photons have hit my customers today.
Dec
20
comment I believe my solution is better than my boss's, so should I ignore him?
"When the final word has been said, after all of the back-and-forth discussing of a problem, you're not the boss." - what this means is, that when it comes to explaining to whoever is paying you and your boss why it didn't work, you will be glad your boss has to do the explaining and not you.
Dec
20
revised How do I determine if customers have already received a newsletter?
added 4 characters in body
Dec
20
comment What's the most important feature of quality software?
Sometimes the most beautiful thing a piece of software can do is leave the user completely unaware than any software, or anything much else, was involved in what happened at all.
Dec
20
answered How do I determine if customers have already received a newsletter?
Dec
17
answered Writing Unit Tests in the Middle
Dec
16
comment “Comments are a code smell”
@Rob Z - For "Don't truncate the fractional cents until after trade has cleared" I would create a type to enforces this rule. It could have a method truncatedValueForAfterTheTradeHasCleared() and it could encapsulate the operations to prevent the values from being truncated. I would also write tests to assert this. This way I could know without having to read all the code whether or not the rule "Don't truncate the fractional cents until after trade has cleared" was actually being followed, or if someone had made a mistake. I could reuse this rule as much as I like, without duplicate comments.
Dec
16
comment “Comments are a code smell”
@Rob Z - I am not sure we should be looking for the fastest way to do something. I agree that comments are fast. But I also think they are inherently unsafe. For example, they easily get detached from the related code during refactoring (e.g. extract method) with no automated way of detecting that human error. Even if the next developer reads the comment, they will not definitely understand it. Even if they do and try not to break it, they still accidentally might. A good test, although not as fast to write, does not have these flaws. It might not always be possible, but it almost always is.