290 reputation
111
bio website blog.belfryimages.com.au
location Australia
age 34
visits member for 4 years
seen Oct 16 at 3:38

IT Manager for Capricorn Investment Partners, plus some consulting, blogging and messing around as Belfry Images. Mad skilz:

  • C# is somewhat strong
  • HTML/CSS/Javascript is good (programming, not design)
  • Ruby is weak but improving
  • Guitar is average but declining
  • Parenting is awesome but tiring

Tweets @belfryimages


Oct
14
awarded  Popular Question
Sep
2
awarded  Popular Question
Feb
14
asked Style for creating IEnumerable unions
Dec
14
awarded  Yearling
Sep
12
answered Is it okay to fake part of the class under test?
Jul
21
awarded  Citizen Patrol
May
26
awarded  Nice Question
May
25
accepted Should technical debt be scheduled as a feature or a chore (or a bug)?
May
25
comment Should technical debt be scheduled as a feature or a chore (or a bug)?
Aha. Fantastic answer. I hadn't thought of stories written from my perspective, but it makes sense to me especially being an in-house developer, since I have to act as the client as well. Thanks!
May
25
asked Should technical debt be scheduled as a feature or a chore (or a bug)?
Mar
10
revised What do you wish you had been taught in uni before moving to industry?
corrected spelling
Mar
10
answered What do you wish you had been taught in uni before moving to industry?
Mar
10
comment Removing hard-coded values and defensive design vs YAGNI
Thanks @Dave, that's helpful. I am the only maintainer, from inception, but it is a large, relatively stable code base (thousands of files, over 100 tables, etc) and I am still constantly surprised (and dismayed). Consistency is definitely one of my goals going forward.
Mar
9
awarded  Scholar
Mar
9
accepted Removing hard-coded values and defensive design vs YAGNI
Mar
9
revised Removing hard-coded values and defensive design vs YAGNI
Added a summary of some answers
Mar
9
comment Removing hard-coded values and defensive design vs YAGNI
This interests me, I hadn't considered automating parts of the initial effort to that level. And having that automation would mean I could set up a full table rather using the CSV to save time. What I'm concerned about is the long-term maintenance of the generated code. By generating it upfront I've made an early assumption that the method of doing the lookup will never change. I guess if that's a possibility I should just take that into consideration as part of cost/benefit, giving the reduced cost of the boilerplate. +1
Mar
9
comment Removing hard-coded values and defensive design vs YAGNI
@Morons NP. It was a good typo. I think using a CSV is better than setting up a dedicated table for such a limited use. There would be added overhead to write integration tests, database migrations, etc, whereas I can split a CSV in memory and do the lookup in code within a couple of lines, which is then fairly easy to unit test. I accept that it's a tradeoff, but an easy one compared to the larger question.
Mar
9
comment Removing hard-coded values and defensive design vs YAGNI
I did consider having it in a configuration setting but put it aside because the users aren't very technical as far as editing a CSV string, so I would be the one updating the config for N users (as I do all the IT support in the org as well), in terms of effort it would be easier to do the upfront work to get it into the database which I can administer from one place. I suppose if that wasn't a consideration (if the users were capable of managing their individual configuration) I wouldn't have this problem. So a very good point, thank you.
Mar
9
comment Removing hard-coded values and defensive design vs YAGNI
@e.z hart LOL true.