9,292 reputation
73987
bio website
location
age
visits member for 3 years, 9 months
seen 10 hours ago

0x2B | ~0x2B


23h
reviewed Leave Open The Three Laws of TDD and private methods
2d
comment When Agile goes wrong
"... the project lead (scrum master)...": I recently listened to a talk by Bob Martin maintaining that the scrum master was not meant to be a project lead in the beginning: it was a role to be rotated among the team members (developers involved in the project, not managers) and was only supposed to check that certain agile principles were enforced throughout the sprint.
2d
comment When Agile goes wrong
One risk of agile is that since it tends to favour short-term planning the team keeps implementing "low hanging fruits" and keeps postponing problems that have been known from the beginning of the project but that are more complex and cannot be solved within one sprint or two. I saw this happening a few times: the team kept implementing small stories and postponing bigger ones because "they're too complex and YAGNI" until shortly before release it became apparent that certain functionalities were not working and we had to fix them in a hurry.
2d
comment When Agile goes wrong
"poor lines of communication": As far as I know, good communication has not been discovered by agile, and agile methodologies can do very little with dysfunctional teams that are not able to communicate.
Apr
14
comment Mutable with logic inside or immutable with logic outside?
@rwong: Good points. In a GUI the mutable parts can be confined to a small portion of the code.
Apr
14
comment Mutable with logic inside or immutable with logic outside?
@Ahmad: In a desktop application a GUI normally holds the current state to be displayed and therefore it is mutable. In a web application you can render the whole page at each request so, unless you use JavaScript to modify the current page, a web application can be seen as an immutable GUI: immutable snapshots are produced on the server and sent to the client.
Apr
13
comment “One of some”-type
@Snowman: Maybe AppleCarBook is not an appropriate name / example, but building the disjoint union of existing types is quite common. I find the empty interface solution OK.
Apr
13
reviewed Leave Open Does anyone else feel Scrum isn't agile?
Apr
13
reviewed Leave Open Is Agile the new micromanagement?
Apr
13
comment Coding and testing in the same sprint
@Sklivvz: You are confusing being able to play together with being able to play different instruments. Sure, each musician adds value to the performance independently, but each musician is specialized on a particular instrument. Different players do not only play different notes, but also different instruments, i.e. each has trained different skills. Why don't violinists also play the trumpet? Why don't orchestra members rotate through all instruments all the time?
Apr
11
comment Coding and testing in the same sprint
@Sklivvz: Can you explain why this does not work in an orchestra? Why isn't the violin supposed to play the trumpet as well? Orchestras cannot be agile?
Apr
11
comment Coding and testing in the same sprint
@Sklivvz: Of course you can have someone who is a average developer and an average tester, or you can have two persons, one of which is an excellent developer and the other an excellent tester. For certain jobs (but not for all), an average developer and an average tester are enough. This still does not solve the problem that if the output of activity A is the input of activity B, then A and B cannot be run in parallel.
Apr
11
comment Coding and testing in the same sprint
"The essential problem is that you have programmers who code but don't test and testers who test but not code.": Huh? Why is this a problem? A programmer should, well, program and a tester should test. Furthermore, you need some minimal feature that is implemented before you can test it: you cannot parallelize two tasks if the output of one task is the input of the other task.
Apr
9
awarded  Steward
Apr
9
reviewed Leave Open Overcoming slow problem solving due to increased knowledge of what might go wrong
Apr
9
reviewed Leave Open Is it conventional to name final/constant local variables in UPPER_SNAKE_CASE?
Apr
8
comment Handling the end of sprint cycle between testers and developers
"If the devs are finished coding and there are still tests to write or perform, they should pitch in and help the testers.": Yep, like in an orchestra: if the violins have nothing to do they should take over some of the trumpets part.
Apr
8
comment Client wants source code, but it contains a lot of shared code I reuse with other projects
@Guntram Blohm: You really cannot know in advance. AFAIK rails was developed as the framework for a specific project and, after it was made public, it was widely adopted.
Apr
8
comment Handling the end of sprint cycle between testers and developers
"Is this an OK practice?": What are the alternatives? Since something must be implemented before it is tested, it is obvious that features whose implementation is finished on the last day might not get tested or, if all features are implemented early enough to be tested by the end of the sprint, that some developers might sit idle for some time at the end of the sprint, unless they are allowed to do some preparation work for the next sprint.
Apr
7
awarded  Popular Question