6,336 reputation
31929
bio website marjanvenema.com
location Netherlands
age 52
visits member for 3 years, 7 months
seen 6 hours ago

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


12h
comment MVC: “User” model gets big and crowded. Should methods that do CRUD operations on one-to-many relationship data be in different models?
Related: programmers.stackexchange.com/questions/218467/…
13h
comment Strategy for generating unique and secure identifiers for use in a “sometimes offline” web app
Wow, what a well written question.
Mar
17
comment Why do most sites require email activation
Indeed, just don't count on the one using the e-mail address actually being the owner of that address. People share way too many things with their friends and families. When things go sour bogus accounts are created using former friends'/partner's "credentials".
Mar
17
comment Why do most sites require email activation
+1 but "the email is yours" is not quite true. It only ensures that the one signing up has access to the e-mail account. Nothing more.
Mar
17
comment Why do most sites require email activation
"Making sure the user owns the email address." It only ensures that the one signing up has access to the e-mail account. Nothing more.
Mar
17
comment Why do most sites require email activation
"owns that address" It only ensures that the one signing up has access to the e-mail account. Nothing more.
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