Reputation
35,513
Next tag badge:
96/100 score
28/20 answers
Badges
5 72 130
Newest
 Nice Answer
Impact
~1.4m people reached

Jan
14
answered Tracking progress via a burndown chart when sprints overlap
Jan
14
comment Where is a good place I can discuss the details about web development?
You could always read existing questions for the answers to make your own mind up. Also see the StackOverflow link at the bottom. However, this is not a programming chat site. Ask a focussed question for things you need, someone will answer. Vague or general questions will end up closed.
Jan
13
comment Creating an ASP.Net MVC web application that can work on different operating systems
I think you're going to have to do some research on cross platform web sites, people tend to write for a single OS, or they use a cross-platform language such as PHP.
Jan
13
answered Creating an ASP.Net MVC web application that can work on different operating systems
Jan
12
comment Given a herd of horses, how do I find the average horn length of all unicorns?
@moarboilerplate you say it yourself, go with the cheap and easy solution and it will turn into a mess. That's why OO languages were invented, as a solution to this kind of problem. subclassing horse might seem expensive at first, but soon pays for itself. Continuing with the simple, but muddy, solution costs more and more over time.
Jan
12
comment Why does git pull perform a merge instead of a rebase by default?
@jpmc26 SCMs are there first and foremost to record your commits. If someone cannot read all the commits and work out what happened and needs them squashed into one, then you have problems that no amount of rebasing is going to solve.
Jan
12
awarded  Nice Answer
Jan
12
awarded  git
Jan
12
awarded  testing
Jan
11
comment Why does git pull perform a merge instead of a rebase by default?
@Ewan IMHO "doesn't work but looks pretty" is something that should be solely reserved for the fashion industry not IT. IMHO git should remove it as it obviously encourages too many people to think style is more important than substance.
Jan
11
answered Why does git pull perform a merge instead of a rebase by default?
Jan
11
answered How do you scale your integration testing?
Jan
11
comment Given a herd of horses, how do I find the average horn length of all unicorns?
compromise if you encapsulate the unicorn traits in a standalone property and are extremely vigilant - why make life hard for yourself. Use typeof directly and save a ton of future issues.
Jan
11
answered Given a herd of horses, how do I find the average horn length of all unicorns?
Jan
11
comment Given a herd of horses, how do I find the average horn length of all unicorns?
@moarboilerplate the point is that a unicorn is not a horse, so trying to model it as a horse is wrong. This is why we have inheritance, so you can extend the basic horse functionality to include horns (and poop glitter, etc). Otherwise, you have a herd of unicorns, some of which are not unicorns. Which can work in limited cases but generally does not scale at all (eg consider sub-window classes that might be buttons or listboxes). Once you've got this inheritance structure, using RTTI (eg typeof) is the obvious and clear way to go.
Jan
11
comment Why does git pull perform a merge instead of a rebase by default?
Possible duplicate of Why do so many websites prefer "git rebase" over "git merge"?
Jan
7
comment Is there a simpler way to help testers push code to a testing branch?
yes, script is always a good solution.
Jan
7
comment Which specific practices could be called “software craftsmanship” rather than “software engineering”?
The space shuttle has redeployable boosters, at least, and no doubt reused bits (or at least knowledge) from previous rockets. And spacecraft have lots of software in them. I don't think they start from scratch with every new satellite or probe, and hardly ever apply updates once deployed. Software engineering can and obviously does work - but only if you approach it with an engineer's mindset, not a craftsmans.
Jan
7
comment Which design pattern is it if any for providing a general logger interface?
Ah (a thankless task). You're effectively not wrapping the underlying logger then, but the underlying system. A Facade or Adapter seems the most obvious as you're not just passing your log calls to another logger that uses the same data. You're wrapping them up in your logger to provide a higher-level 'view' of the logging subsystems. Many design patterns provide the same functionality with only minor differences, so don't think of one of them as "the" sole solution and the others are unsuitable. Many of them will be good for what you want. Just pick one and use it.
Jan
7
comment Which design pattern is it if any for providing a general logger interface?
I don't know... log4net uses the interface mechanism and works for many different logging targets. Log4Net is very good, no need to reinvent the wheel.