Skip to main content

Posts

Showing posts from 2014

The story of the "My Big Bro" experiment

What is MyBigBro?MyBigBro is a system I have built that tracks a user on their journey through a city and captures and stores imagery of them that has been made available on the city’s CCTV traffic camera network, as they move through the field of vision of each subsequent CCTV traffic camera. Why'd you do that? There is a growing trend among Governments globally to make the data that they collect on their citizens as open and available as possible. The MyBigBro 'experiment' (I'll explain why I call it that later) explores this trend and leverages some of the data that is becoming accessible.
Some examples of open dataset repositories provided by Government are as follows: New Zealand: https://data.govt.nz/United Kingdom: https://data.gov.uk/Australia: https://data.gov.au/USA: http://www.data.gov/ One of the datasets that I find particularly interesting is CCTV traffic camera imagery. MyBigBro leverages that specifically. How does the MyBigBro experiment work? At the t…

"We Haven’t Got Time to Think about This Job, Only to Do It"

Thoughts on team dynamics... This blog post is a loose assembly of some of my thoughts on communication, thought and culture - and the importance of making room for these processes/phenomena to develop when we are working to solve complex problems in teams.
Two important references Perhaps you have heard the following commonly repeated quote of Abraham Lincoln: "Give me six hours to chop down a tree and I will spend the first four sharpening the axe." - essentially, before diving in and starting a job, it pays to think about how to approach it and prepare.

The following link will take you to a more detailed version of the same thinking with specific reference to software development - "We Haven’t Got Time to Think about This Job, Only to Do It" (Peopleware - Timothy Lister and Tom DeMarco, 1987) - if you're lucky, Google will let you read to the end of chapter 2, which is where this section is.

http://books.google.com/books?isbn=0133440737

I actually highly rec…

Three famous female computer programmers

Grace HopperThis lady coined the word "debugging", when she found a moth in a piece of computer hardware that she was writing code against:

http://en.wikipedia.org/wiki/Grace_Hopper#Anecdotes
[debugging 4 realz - source, Wikipedia] Julie Ann HorvathIs probably the most recent famous female computer programmer, after she left GitHub in a major huff:

http://techcrunch.com/2014/03/16/github-julie-ann-horvath-response/

This is a bit of a sad story and it is a shame that it was allowed to happen. Up until just recently, GitHub lauded the fact that it didn't need managers:

http://www.wired.com/wiredenterprise/2014/01/github-ceo/

So really this story reminds us why/how managers are important - good management would most likely have prevented this situation from going so badly wrong.
Women's work...?Interesting to note that programming in-fact used to be considered "womens work" - but now most professional programmers and computer science/engineering students are mal…

How we think about software and the process of it's creation -

Writing code and developing software is a creative act. A programmer who finds herself in her work wields her tools and applies and refines her craft with as much care and discipline as any other type of artist. Anyone who has ever written software and/or developed an artwork in anger will be familiar with the dual processes of working toward a clear goal or idea, and coaxing an expression into existence through incremental experimentation and failure. 
To illustrate this notion I invite you to take a look at Picasso’s artistic process, dear reader:

["Why You Need to Fail", by Derek Sivers - Picasso is between approximately 9:09 and 10:40]

Perhaps you are not comfortable with an analogy of art/painting for programming? Then the following analogy for programming as gardening may be easier:
["Rather than construction, programming is more like gardening" - source: http://www.artima.com/intv/garden.html]
In any case, the idea that I want to express is that – although it…

A lap around the "single page web app"...

What's this about then?2014 will perhaps be the year of the "internet of things" - and the WWW will surely play a big part in that. http://www.forbes.com/sites/sarahcohen/2014/01/14/year-of-the-internet-of-things/ Front-end in WWW (HTML5 in particular) is rapidly becoming the vast majority for UI development - consider the fact that even many (most?) successful smartphone apps are running in HTML5 containers like phonegap:http://phonegap.com/ Having an understanding of the way the web works and what the state of the art is on the web today could save us (as in - software developers working with the WWW and their customers) a lot of time and money. So I have written this post to help myself better understand. Perhaps you may also find it useful, dear reader! Please just note that this post (or more accurately, links listed within) occasionally swings wildly from relatively simple to deeply technical... The single page web appAccording to @peterwayner, the JavaScript MV* framewo…

Software architecture; the lay of the land -

Purpose Given the plethora of genres of architect that are sought on [insert your favourite job search tool].com, I thought it would be worth writing a post on this subject, to help myself and anyone else who may be inclined to ponder software architecture, better understand the lay-of-the-land within and outside of their own organisation. This post is actually a loose assembly of my own thoughts and previous posts that I have made on the matter of programming and architecture; I have copied/pasted, and stitched together to form a somewhat coherent document.

Definition From Wikipedia (http://en.wikipedia.org/wiki/Architect): "An architect is a person trained and licensed to plan, design, and oversee the construction of buildings. [...]" Here's a picture of a Saab – according to Top Gear, all construction type architects own one of these:

[A Saab]
But this post is about software architecture...

So how does architecture relate to programming? To be clear, architecture is by…