25,698 reputation
25193
bio website thehungersite.com
location United Kingdom
age 46
visits member for 4 years
seen 4 hours ago
experienced software engineer with many years in the industry, mostly c++ for large-scale, high-reliability systems.

Apr
9
comment DDD using an ORM and a Active Directory Server for Persistence
are you using Active Directory or Novell LDAP? Either way - if you just store the user's AccountID, you can look up all the rest of the user details via a call to the DS.
Apr
8
comment Should one use Dependency Injection even if the class is used only once?
@BenAaronson true, but then its easy to apply everything over-hastily. In this case, DI in an instance where he's never going to need it, he;s already outlined why he thinks this is the case, and I'd argue to agree that simplicity is more important. Less code means less bugs, more dev productivity and more time to spend down the pub!
Apr
8
answered Should one use Dependency Injection even if the class is used only once?
Apr
8
comment Incrementing version - During development? or after release?
and many releases just tell you the first 2 numbers anyway, this is "product release 3.2" whereas the actual version is 3.2.4.1234 - marketing and development are very different things.
Apr
8
comment Does Microsoft still have C++ container limitations when passing to DLLs?
@jww it is partly an ABI, though there are issues in things like template instantiation in the DLL but not in the calling code - so the code doesn't know what that template type actually is. Then there's implementation issues like a Release build exe calling into a Debug dll where the two have different memory models (eg guard pages etc). But .. an ABI would mean code binaries could be consumed by a different compiler and not always rebuilt. Just like C dlls work.
Apr
8
comment Does Microsoft still have C++ container limitations when passing to DLLs?
@rwong true, if only Stroustrup would consider a C++ ABI to be a useful thing, this problem would go away and we could stop using C interfaces to shared libs!
Apr
7
comment How can C++ make it possible to use dynamic container classes even in embedded systems?
There isn't much overhead in C++, sometimes it can be much reduced compared to C - eg my string class, trades a little memory for a massive perf game with tiny strings. In addition there are classes such as rope that are for very long strings, where pieces are allocated in chains which can improve performance again if not every piece needs realloc. Pretty much everything you can do in C++ you can do in C, it just takes you a lot longer and wouldn't be very maintainable.
Apr
7
answered How can C++ make it possible to use dynamic container classes even in embedded systems?
Apr
7
comment Modular Web App Network Architecture
@RobertHarvey oh yes - it appeared in the front page of questions, so I popped on an answer while I was waiting for my test to run. Didn't spot the date - why does it do that?! I'm really not in the habit of finding old questions to answer.
Apr
7
answered Modular Web App Network Architecture
Apr
1
answered Second Mainline Branch to Abandon Source Control Misuse?
Apr
1
comment Why do we keep using CSV?
@Slomojo but the OP is about CSV data, not nested data in CSV format. Nested data needs XML or similar, flat data is handled nicely in CSV. Anyway, I just thought your opening sentence needed the update.
Apr
1
comment Why do we keep using CSV?
But CSV does have a hard specfication. Our problem now is the usual one - Excel doesn't conform to it 100%.
Apr
1
answered Why does CI stipulate that we should be able to rollback to any version of a software?
Apr
1
comment Small engineering firm in need of document and file organization - best approach?
An open source document management system such as Owl, Nuxeo or similar may help. You'll still have to sort out what metadata to apply to the assets however and no tool is going to help you manage the initial data entry.
Mar
31
comment How to evaluate the performance of a Data Access Layer b/w two ORM's?
I'm sure Apple focussed entirely on developer productivity to make the iPhone ... unless it spent extra time making sure it was right before shipping it, and took over the world. How many software packages that get shipped with known bugs and missing features are as popular with users? Here, Dan is saying that a nice, easy to use ORM that has runtime performance problems is better than one that is fast but less easy on the devs. The runtime benefit is the primary decision in choosing which to use, not the benefit to the devs.
Mar
31
answered How to make sure clean code well implemented?
Mar
31
comment How to evaluate the performance of a Data Access Layer b/w two ORM's?
@DanPichelman not as far as the users are concerned. Dev productivity is a one-off cost, user productivity is a cost that keeps on being invoiced. Are you writing a product for the devs benefit, or for the users?
Mar
30
answered What practical steps do you take to ensure you are thorough?
Mar
30
comment Source file shouldn't be more than 100 SLOC
Quite often the problem is that a single function of 10,000 lines gets turned into 100 functions of 100 lines each making the "turn a page" problem into a "turn to chapter 10, section 5, subsection 3a" - infinitely worse IMHO :)