Reading List

The Selfish Gene
The Psychopath Test: A Journey Through the Madness Industry
Bad Science
The Feynman Lectures on Physics
The Theory of Everything: The Origin and Fate of the Universe


ifknot's favorite books »

Saturday, 22 February 2014

Building Blocks: C++11 Smart Pointers for the Logger Services and C++11 alias idioms

You can tell the logging services software was knocked up quickly... I completely forgot to use C++11 smart pointers[1] as part of the expressed RAII design pattern. Consequently the destructor was busy doing the pointer deleting idioms so familiar of C++03 (even if it did use the C++11 range based for loop to do it!). The changes also utilise the C++11 approach alias creation as replacement for typedef[2].

TL;DR The logging services code uses smart pointers now, but where it makes sense and not where it would make usage verbose and obfuscated.


Back From 2 weeks Snowboarding in BC


Went to Candada with snowboarding buddies this is me (centre) about to drop some fresh lines from the top of Granite Mountain BC.

Saturday, 18 January 2014

Shooting from the hip... (1)

Worried about your C++ programming style and contemporary idioms? Not sure which patterns are in and which are on their way out? Concerned about software craftsmanship? Thinking of attending a coding dojo? Dithering about being an incrementalist or a completionist?

TL;DR Herb Sutter(2011) Elements of Modern C++ Style

I am, at best, an average programmer - I know this because I have been exposed to great programmers and do you know what? They're always humble and they're always learning.

However, that doesn't stop me from being mouthy and opinionated.

So, in my mind there are 2 kinds of C++ programmers:

Thursday, 16 January 2014

Part (3/3): I'm a Lumberjack and I'm ok.

The Lumber has arrived!

Freshly hewn but unfinished pile of Code Lumber is below, ideal for building your debuggin' & audtin' & tree-house solutions.

The latest versions of the code and doxygen docs are all over at the libfbp git repository github.com/ifknot/libfbp


Tuesday, 14 January 2014

Part (2/3): I'm a Lumberjack and I'm okay.


With the software design description (SDD) contexts in hand from the previous post here and using a deconstruction of the excellent Dr. Dobbs article "A Lightweight Logger for C++" by Janiszewski (January 31, 2013)[1] as a basis for implementation then given the following observations about that article:


Monday, 13 January 2014

Pretty pictures

There are lots off online tools for drawing pretty pictures diagrams[1]

Lucidchart is free (for cut down but adequate version) and works with Google Drive I think I'll give it a whirl.








References:
[1] http://stackoverflow.com/questions/6877121/is-there-a-free-browser-based-uml-modelling-tool

Part (1/3): I'm a Lumberjack and I'm okay.


"Logging is a critical technique for troubleshooting and maintaining software systems."[1]

I would also add that logging is a critical technique for recording a variety of metrics when conducting software analysis and experimentation.

Therefore, I need a thread-safe, asynchronous and fast data serializing framework-not only in order to develop libfbp but also to experiment with it.

There are some great libraries out there already[2] but where's the fun and learning in that?