Saturday, 9 March 2013

My Dad learning how to BCC

We all have parents and the older we are, the older our parents are most likely to be. Take me, for example. I was in second year university when Google first launched. Whilst this makes me a dinosaur in comparison to my two year old daughter who wields the iPad like a second limb, it does mean that my parents grew up in an age where things weren't really connected and user interfaces had actual levers and big, shiny buttons.

I say all this as a justification for the following post. Throughout my childhood I've watched my father struggle with technology much like a mountain gorilla would struggle trying to work out how to change  from the Central Line to the Northern Line at the Bank underground station. I don't blame him for this but it does provide amusing whimsy when he grapples with the next evolution in technology.

Below are a series of emails he sent to me and my sister, trying to work out how to send an email using the BCC field. His intention is to send funny emails - or 'funnies' - to a select group of recipients, but not have any members of the group know who they are - hence the need to add them in the BCC field. I'm not quite sure why, perhaps there are members who hate each other and if they discovered they were both receiving the same spam from the same person, it would be the last straw and they would have a duel to the death.

I think it demonstrates great perseverance in the face of stuff which just doesn't and will never make much sense.


Sunday, 3 February 2013

Angry Customer Twitter Campaign #Fail

Have you seen @lostbag
There comes a time in every customer's life when they are served injustice. This dish comes from all industries and in all forms and leaves its victims with raised blood pressure and the acidic burn of righteous indignation.  I recently was a victim and the perpetrator was Lufthansa Airlines WHO LOST MY BAG AND STILL HAVEN'T GIVEN ME MONEY BACK FOR IT!!!!!

(Breathe)

So, I went on a business trip and Lufthansa lost my bag on the return leg. After a painful journey back home and trying to get into my house (my bag had my keys and my wife was away) I began the process of trying to get my bag back. After a few weeks of unsuccessful bag finding I realised that I was in a Kafka'esque world of bizarre bureaucracy where no one knew anything and nothing made sense.

Living in the 21st Century with social networking and Apps, I realised I could challenge the status quo. I was an empowered consumer! Their inefficient call centres and surly staff could do nothing to stop what was to become the greatest social media campaign the airline industry had witnessed since that guy made a song about an airline which broke his guitar and went, like, totally viral on YouTube.


119 tweets and about two months later I had 10 followers. Sadly, my @LufthansaBad campaign never went viral and MY BAG IS STILL LOST AND THEY STILL HAVEN'T GIVEN ME MONEY BACK FOR IT!!!!!


Thursday, 31 January 2013

What is Dev Ops and why is it important?

We have recently been recruiting for a new role in our company: that of a Developer Operations role, or Dev Ops. This initiative has mainly been inspired by other companies who have identified the need for a separation between Development and Operations, and the need for development skills in the operations sphere.

An example of an Application Life-cycle Process without development operations would look something like this.


The work flow would go as follows:


Tuesday, 15 January 2013

Application Hosting Types Demystified

As a technology consultant, there are certain conversations which seem to always get confused. One of these conversations is around hosting. There is a lot of variation in understanding and agreement of what types of hosting there are and what they are called. I've become quite confused by this myself.

This post is my attempt at providing a crystal clear definition of the types of hosting and what they mean to you (a user of hosting services) and the hosting provider.

I've broken down hosting into these the following categories: Onsite Servers, Offsite Servers, Offsite Virtualised Servers and Cloud Services.

Below is a matrix which lists these types of hosting and what aspects you have to look after (marked with ‘C’) and what parts the hosting provider looks after (marked with ‘H’).


Friday, 11 January 2013

Cloud recipe: Standing up an Enterprise, Solr Search Server on Azure in fifteen minutes

I recently saw some Twitter activity around a new on-line Community called VM Depot. From the website: "VM Depot is a community-driven catalogue of preconfigured operating systems, applications, and development stacks that can easily be deployed on Windows Azure."

One of the VMs which caught my eye was an Linux VM with a fully configured instance of Apache Solr 4: a lightening fast, enterprise Lucene search engine built by the Apache community.

In this Cloud Recipe we will deploy a fully configured Linux VM running Apache Solr and write some C# code to talk to it.

To complete this recipe, you need the following:
  • A Windows Azure Subscription. 
  • Node.JS and node package manager (NPM). This can be downloaded and installed here.
You should be able to complete this recipe in under 30 minutes.

Tuesday, 8 January 2013

The most important part of Agile is education. Ongoing education.


Agile is a widely adopted methodology across the software devevlopment industry. The two main frameworks of Agile are Scrum and Kanban, both similar variants to each other but which both address the same set of problems with software traditional waterfall development, such as slower and more problematic delivery.

They address these problems through more collaboration across disciplines to ensure decisions are made with all relevant viewpoints taken into account, more frequent release cycles to ensure early exposure of the product to the client and the ability to adapt and change course where necessary, and a commercial structure that understands the reality of complex, software development with many integration points by agreeing to either fixed price or fixed scope, but not both.

Monday, 24 December 2012

Buzzword Bazinga: What is Big Data? featuring MapReduce and NoSQL


The term 'Big Data' describes a vast amount of data, or chat, generated from two main sources: people and computers. People spend a lot of time talking on social networks like Twitter and Facebook and producing on-line content about their companies, affiliated organisations and themselves. Computers and devices, now IP enabled and connected to the internet, now have the ability to send their instrumentation information into internet. The latter phenomenon is known as 'the internet of things': a description of how connected devices and sensors, from shoes to thermostats to cloud server farms, now have a voice and can make information about how they are used and what they experience accessible to data crunching algorithms. These algorithms would then produce insights that can be feed back into the real world and affect everything ranging from peoples behaviour to how corporations are run.

Handling all this data is a massive computational challenge. Compounding the challenge is that data is  growing exponentially, may be stored over the place and even kept in different formats. To address these challenges two key technologies have evolved to help us along: MapReduce and NoSQL.

But before we delve into these let's break down the attributes of Big Data into a bit more detail.


Friday, 21 December 2012

Cloud Recipes: Build and Deploy an Azure Web Role with CC.net and GitHub

In this recipe we will create an Azure Web Role (Cloud Service Project), add the solution to a Git Repository, Download CruiseControl.Net server and set-up a build and deployment script to build from the Git Repository and deploy to the Azure Web Role.

To complete this recipe you need the following:
  • The latest release of Cruise Control.NET (1.8.2.0) - Download and install here 
  • A Microsoft Azure Subscription - sign up for a three month free trial here.
  • A Git Account - sign up for a free account here.
  • Putty Gen and Putty Agent can be downloaded here.
  • Git  
  • The .Net framework 4 or above
  • The Azure SDK 1.8 and all the goodies
  • Windows Azure Authoring Tools  
  • Windows Azure Tools for Visual Studio 
  • Visual Studio IDE 2012
I created this recipe on one machine with everything installed in one place. In the real world you would have a dedicated build server.


Wednesday, 19 December 2012

Digital Trends in 2013

Every year, around this time, there are a lot predictions on what the digital trends for the next year will be. They are often produced by Marketeers and therefore have pithy names which are a clever amalgamation of two words which never before have co-existed. In a lot of cases, that is for a very good reason. Some examples from 2012 include: "Idlesourcing", "Eco-cycology", "Flawsome", "Recommerce", "More-ism" sourced from here. ...

This year I decided Tech-Rash needed its own list so I tried to come up with my own trends backed by catchy names. I attacked the problem by coming up with a catchy name first and then thinking how/if it could become a trend. I came up a few but then decided to cast the net out and 'crowd-source' the rest of the content for this post. I got back a range of responses ranging from silly (like mine) to silly, but could catch on, to serious. Thanks to @davidknipeTA, @michael_hook, @jgbibby, @cs_andrews and @ev2000  for their contributions.

As an aside, the idea of silly things turning into something serious and useful has already been coined by Seth Godin (Marketeer Extraordinaire) in his article Ridiculous is the new Remarkable.


Friday, 14 December 2012

Cloud Recipes: Building a Facebook Canvas App using Azure and BitBucket

Welcome to the first official entry into Tech-Rash's Cloud Recipes. Cloud Recipes, I hope, will became a useful reference for cool things you can do on the Cloud in thirty minutes our under.

This Cloud Recipe has been shamelessly ripped off a talk given by Richard Conway from ElastaCloud who runs the UK Windows Azure User Group. In the talk he demonstrated setting up a Facebook application in 15 minutes based on a new .Net 4 MVC Facebook Template provided in the ASP.Net Fall 2012 Update. He used BitBucket as a Source Repository and rigged up an Azure Website to Auto-publish from the BitBucket Repo. I gave it a go and to see if I could achieve in 15 minutes and I failed but did learn a valuable lesson that churning out Facebook Apps can be a very quick process.

Monday, 10 December 2012

UKWAUG Talk: RavenDb on Azure in 15 minutes

On Friday 30th of December I attended the UK Windows Azure User Group and spoke about about running RavenDB - a great NoSQL technology - on an Azure VM. Thanks to the UKWAUG for hosting the event and the other speakers for some really interesting and inspiring content. The pizza and beer went down very well too.

The other talks included:

  • Cost saving Azure Solution Architecture
  • Creating a Facebook Application in 15 Minutes on an Azure Web Site with BitBucket as source control
  • Robot Ball Wars - A tech showdown using Sphero controlled from Smart Devices and a NetDuino with various inputs such as a Wii Remote. The showdown culminated in two Sphero balls dancing in tandem to Gangnam style which was bizzare but lots of fun.

Useful Links:


Wednesday, 28 November 2012

A pragmatist’s view: What is Technical Architecture and how do you do it?

As a Technical Architect in a digital agency I am often am asked what the role actually means or does. This question comes from everyone including Technical Architects (TAs) and one that is actually quite difficult to answer. The reason for this is that the definition of Technical Architecture in the real world has a very broad scope and is different in different companies, projects and from person to person. It is often becomes a religious argument what being a TA means or what the best way of doing it is. Forgetting best practices, patterns, methodologies, techniques and opinions just for a minute, here a broad view ‘what’ a Technical Architect does and ‘how’ they do it. I'll even look at why in some cases. I'll leave where and who up to you.

Thursday, 15 November 2012

Dealing with a Vampire Launch: What to do when your site bursts into flames

We're gonna need a montage.
I've written about Vampire Launches in the past. For new comers, a 'Vampire Launch' is when a site or application is launched and has a brief and glorious moment in the sun but then suddenly and horrifically erupts into flames. Vampire launches do happen and when they do, an expert firefighting team needs to be deployed to deal with technically complex and mysterious issues in a pressured and emotional environment. Having been involved in a few crises in my time and watching and participating in their resolution, these are some things I've learnt along the way.

Tuesday, 13 November 2012

Effective Resource Management in Web Application Development

Mmmm. Chocolate.
My wife and I recently found ourselves in a frustrating predicament. Over a year ago we made a decision that we needed to move house and therefore needed to save money so we could afford a deposit. We started our saving initiative my way. I created an elaborate spreadsheet which listed our outgoings in meticulous detail. Well, the outgoings that I knew about like bills and mortgage payments. I then added in lines on our living expenses and luxuries. I was very generous about how much we needed to live and how much we could splash out on for fun. I crunched some numbers and the end result looked pretty good. We could save a tidy sum every month and be living in a new house before you could say ‘white picket fence’.

Thursday, 1 November 2012

Social networks: If you build it, will they come?

Don't do what Costner did or you will fail.
Social is pretty big now, right? If you ask me what main things the next generation have which I didn't have growing up, I'd say Facebook, Twitter and Apps. It's no surprise then that businesses are desperate to get involved and use social networking to boost their profile and their profits. And while they're at it they will create a couple of apps too.

There are many different strategies to leverage social media. Some companies try to use what's already there. They will litter their web site with Social calls to action. Do you 'Like' this page about the latest innovation in washing powder? Of course I do! Which person of sound mind wouldn’t? Would you like to tweet and then re-tweet this great deal on life insurance? Did you have to ask? #Death is trending right now.