6,439 reputation
32029
bio website marjanvenema.com
location Netherlands
age 52
visits member for 3 years, 10 months
seen Jul 27 at 18:04

Software developer since 1985. Started in Cobol, moved via Clipper/VB to Delphi. Delphi developer since 1998. Sniffing at C# and playing around with javascript and some php for websites. Coaching new employees and less experienced developers. Focused on software architecture and SOLID design. Keenly interested in user experience and usability.

Questions

When you ask a question, show your effort, provide all the details that will help someone to help you and be precise.

Answers

When you answer a question, don't just paste your code. Your answers will be much better when you explain why your code is doing what it does and how it achieves the asker's goal. It makes it a whole lot easier to follow along. As it is I am much more inclined to up-vote answers that have explanatory text about what the code is doing and why it is written as it is.

Answers that just contain links aren't likely to get an up-vote from me either

Other

Obligatory link whenever someone thinks they are improving security by imposing all sorts of rules on password composition: Password strength


Mar
13
comment Can the author of code licensed under CC-NC-ND use it in commercial closed-source software?
Why are you using CopyLeft instead of CopyRight? CopyLeft is usually used for the "viral" copyright licenses: gnu.org/gwm/libredocxml/x53.html
Mar
12
comment What is the best pattern for adding an existing item to a collection in REST API?
Your first option is fine though I would use PUT instead of POST as the client is in control of the identity being added to the collection. Your first concern with option 2 is entirely up to you, if you don't want new sites, don't throw an exception but return one of the 4xx codes. Your second concern is neither here nor there. You shouldn't be posting an entire Site anyway unless you allow additions. Adding an existing site should have the id only as you are modifying the site but only the "ProjectSite" collection (even if you don't create a separate resource for it).
Mar
12
comment Why do we use hungarian notations on local variable but not on function or global variable?
Related: programmers.stackexchange.com/questions/102689/…
Mar
12
comment Why do we use hungarian notations on local variable but not on function or global variable?
Not quite true. People do still use Hungarian notation. Systems Hungarian has problems. Functional Hungarian has valid uses.
Mar
6
comment How to measure the success of a small software project?
+1 "How much time is the project saving its user in the performance of their tasks?" would be a nice question for understanding the business value of the project. Might require some up front measurements. Preferably quantitave, but guestimates could be useful just as well.
Feb
25
awarded  Good Answer
Feb
15
comment Need help modelling a User/Project/Task relationship
Sorry, not familiar with Laravel. As to tying the three together in a pivot table, I would wait with that until you are further along and the need for it really becomes apparent. I have not yet come across situations where an owner field didn't suffice. Or, in other words, where the need for the owner to be a member needed to be enforced by the database. These things are often better left to "organisational enforcement" and not putting the constraints in the database also ensures that your software then doesn't have to deal with other, often complex, organisational issues.
Feb
15
comment Code ownership with multiple Scrum teams
Instead of bolding and italicizing that block of text to signal that it is a quote, the editor provides a "quoted text" feature / style. You simply select a block of text and use the double quotes icon at the top of the editor. Using that helps keep quoted text have a consistent recognizable style across the site.
Feb
15
revised Code ownership with multiple Scrum teams
Changed the bold/italic text that was a quote to the "quoted text" style using the double quotes icon of the editor
Feb
15
answered Need help modelling a User/Project/Task relationship
Feb
14
comment What is the benefit of having the assignment operator return a value?
@MasonWheeler: yeah, that thought hit me later. (I'm still a bit in shock after a highway accident). @ Delnan: my point was that C# also uses different operators for assignment and comparison, just like Delphi, but as Mason points out, the difference isn't big enough to avoid frequent confusion.
Feb
13
comment What is the benefit of having the assignment operator return a value?
@Brian: Indeed, as does C#. = is assignment, == is comparison.
Feb
8
comment What to do when the marketing department attempts to drive the development process?
Yep, show what doing what they ask means for other stuff they might also want.
Feb
5
comment How to measure that a team is doing Test Driven Development
Doesn't measure whether you are "doing TDD", but a good articles on test metrics nonetheless: Selecting Developer Testing Metrics
Feb
5
comment Is Pre-Order traversal same as Depth First Search?
What happens when "6" has sub nodes?
Feb
4
comment What is expected from a programmer as an intern?
I'm with @Doug on this. This is no way to work with an intern. I'd say you have been hired as cheap labor because they couldn't get someone with the experience they need or were not prepared to pay what an experienced enough developer costs.
Feb
3
comment Scrum: Writing the time it took to complete a task
If they feel stressed about it, perhaps the retro is more about assigning blame then about learning. Looking at spent time versus planned time is a good way to get better at planning. That said, it should never be on a per story basis as that will quickly get in too much details or blaming. Where I work, we do keep track of spent hours, but never look at it during the retro. Product Owner and Scrum Master analyse the figures to spot patterns: stories with characteristics A and B or estimated at XXX vary widely in implementation time. It is good input for the grooming and planning sessions.
Feb
2
revised How can I convince my client that the task was complex and the time I took is fair?
deleted 12 characters in body; edited title
Feb
2
comment Decouple GUI & Program logic
Does it matter at this point? The most important thing would be to get the decoupling done in any way shape or form. As you go you will find advantages and drawbacks to the way you have chosen to go and can adjust. Yes you may have to rework what you have already done, but that shouldn't be too hard or too much work as the code is already decoupled...
Feb
2
comment In Scrum, who verifies “Done”?
+1 though the product owner is normally not considered part of the team - (s)he is usually drawn outside of the team's circle - yet does have (or should have) a say in the definition of done. It is the only way the product owner can (is allowed to) influence the way the team works.