Evolving Code
I have just read an excellent post Agile Process Reality Check by @ralfwen. Many things he wrote there strike me as very insightful and I twitted some of them. But where he really “got” me was here: We need a development process, which addresses today’s major challenge evolvability head on by putting much more pressure on a code base through shortened evolution cycles. I have spent most of the last 10 years developing and maintaining a single code base and it fundamentally changed my approach to development.
2013-05-25    
Product Development as a Sandwich
I’m unsure exactly why but recently I started thinking about “my” product development process as a sandwich. The way I’m thinking about it, at the bottom of this sandwich is quality of software craftsmanship, at the top are customer needs and in the middle is what makes the sandwich: the actual product. In my experience the best indicator of the quality of software craftsmanship is its most immediate product: code itself.
2013-04-16    
One Service to Rule Them All
I signed up for dotdotdot last week. The people behind the service want to tackle the long reading form by allowing importation of eBooks, storage of comments and so on (a bunch of social networking aspects for which I care little). Then a couple of days ago I got a personal email from one of their co-founders asking for feedback. I replied with what I think of their current level of service and what I want to see from such a service.
2013-03-23    
Publicly Wrong
Several years ago I came up with the concept of prefering to be publicly wrong than privately right. I registered the domain publiclywrong.com (which I still own) and I used it for a couple of weeks as my personal blog. I loved the idea and still do but I haven’t lived up to it. I wasn’t ready to be publicly wrong on a practical and not only theoretical level. The same thing has been going on with my desire to put my code into open source - at the end I want it to be perfect before I publish it, and it’s never perfect.
2013-03-23    
Commenting Code Is Teaching
You have named your classes, functions and variables in most expressive and descriptive way possible. All your classes are single responsibility, functions are short as to fit onto a single screen (relative as that is) and variables are never reused. The code is formatted according to the standard and it’s aesthetically impeccable (at least according to you). When all this is done why would you put any real effort into writing comments?
2012-12-19    
Gloating just a little bit: new meaning of `auto` keyword in C++0x
Since it’s been such a long time, I thought that I should blog about something that I have been waiting for… at least since 2002 when I first publicly suggested it in now-defunct C/C++ User’s Journal (a.k.a. CUJ.) I wrote in 2002 September issue of CUJ in We Have Mail section… well, it’s too long to write it here but this is the meat of it: …my favorite pet idea for a core language extension: a keyword for an unknown type.
2009-05-27    
Expressiveness of Languages
Jeff Atwood over at Coding Horror asks in his new post What Can You Build in 600 Lines of Code?. It reminded me of Babel-17, a novel by Samuel R. Delany. I must have read that novel 10 to 15 years ago and by now I have forgotten most of the details in it (and I’m now again grateful to Wikipedia for having reminded me of some the details.) However, among several things that I do remember (some strong images, transformation of one of the characters) there is one particular passage that stuck with me even now after all these years and readily sprang to my mind when I read Jeff’s post.
2008-01-25    
CAM World *intersecting* SQL Server World
I never thought that my current area of work (in general auditing and recovery of SQL Server databases) would somehow intersect (pun intended - see below) with my previous efforts in 2D CAM (Computer Aided Manufacturing.) But SQL Server 2008: Spatial indexes article by Paul Randal proved me wrong. In the article Paul explains how SQL Server 2008 spatial indexes work but what was most interesting to me was that the solution he described matches a solution I applied in a 2.
2008-01-23    
Phishing Is Not an Externality
I’m no security expert, not even close (I just read about it), while Bruce Schneier is really world renowned security expert. I’m an avid reader of his monthly newsletter and, far more importantly, Neil Stephenson thanked him in Cryptonomicon which is ummmm… words fail me but let’s say awesome. However there is one particular hypothesis of Bruce Schneier that I never bought into, not even a little bit; the “our customers are victims of phishing but it isn’t affecting us” hypothesis of phishing as externality.
2007-11-26    
Building Boost 1_34
The new version of Boost library has been released recently. Since we have released ApexSQL Log 2005.04 just the other day, we can now migrate our source base to Boost 1.34. This post will deal with building of Boost static libraries for side-by-side compilation and linking of x86, x64 and IA64 libraries. This is now much easier than it was in Boost 1.33 but there is still some work to be done.
2007-05-17