Tuesday, 24 February 2015

Node School–Bristol

Last Saturday I got to attend the first NodeSchool to be held in Bristol.

The event was held at the MixRadio offices in the heart of Bristol who were sponsoring the day by hosting the event, the room was at the top of their building looking out over Bristol which was brilliant.

The Day

I, like most attendees, started arriving about 9:15 finding somewhere to sit and getting their laptop ready.

Just after 10 the event began with an introduction telling us all about the day, what we could expect, how to get help and thanks to the sponsors that had made the day possible.

The format for the day was to follow the tutorials in the learnyounode workshop from NodeSchool (which you can install using npm install –g learnyounode) the difference being that instead of having to do it on your own, and try and complete the exercises simply by Googling for solutions, there were “mentors” on hand to help if you got stuck.  The mentors were volunteers who had experience with node and could help solve the exercises in the workshop.

The original timetable for the day had attendees having a break at 11 but most people were heads down working on the exercises with mentors helping out as required.

Lunch was supplied by JustEat, who were also sponsoring the event, who provided some awesome pizza for everyone to eat.

After lunch there was a short update on what the plan was for the afternoon and other tutorials that you could look at before we carried on with the exercises.

At 4:30 we stopped for a talk from Adam Butler on “5 Things to build with NodeJS” the highlight of which was Adam flying a couple of different drones using node.

After the event there people went for drinks at Big Chill which unfortunately I wasn’t able to attend.

The workshop/exercises

The learnyounode workshop code is structured into a series of exercises that take you from “Hello World!” through multiple async http calls to creating your own http server.

Everything is done at the command line with learnyounode providing a list of all the exercises and marking each as completed when you successfully complete an exercise.

When you start an exercise you get told what it is you need to do and then get a “Hint” giving you more information about how to accomplish what it is you need to do, once you’ve written your solution you verify its correct using the learnyounode inbuilt test harness. 

If your code doesn’t pass the test you get test failure output showing what was expected and if you pass you get shown the “official” solution to the problem.

My Day

During the day I managed to complete the entire workshop, which was the intention for everybody.

I also managed to complete the Express workshop, ExpressWorks, and what was interesting (to me at least) was how noticeably easier it was to use node with a framework like express after having had to code at the lower level for most of the day. 

Summary

It was a really good day in a fantastic venue, we were fed watered and looked after really well throughout the day, I must give a big thanks to Katja ,Tristan, Tom & Adam for organising the day.

Although I wouldn’t say I’m now a proficient node developer I feel I have a much better idea of how node works and also through doing the Express workshop can see how easy it would be to put  together an application on node.

I know that they are planning future events and I would recommend attending one if you want to explore the world of node but were unsure where to start.

Friday, 9 January 2015

2014 in review

Just like previous years I’m blogging a little review/retrospective on what I got up to last year, what goals (if any) I managed to achieve and what plans I have for the year ahead.

2014 Goals

As I did so badly in 2013 with my goals I changed tack for 2014 with only 3 main goals:

  • JavaScript/SPA
  • Code
  • Blog

Friday, 31 October 2014

Log Parser Lizard creating custom regex format

I first heard about Log Parser Lizard (LPL) when Scot Hanselman blogged about it back in 2011 and since then its been part of my tool belt.

LPL makes analysing logs easy enabling you to point it at single log file, or even a directory of files, it will parse them and then allow you to query the data using SQL syntax.

LPL comes with a lot of predefined searches from Active Directory, IIS, event logs, etc and has the ability to allow you to define your own custom RegEx format for parsing text files.

Recently I needed to use the custom RegEx format, its not the easiest thing to do and as I couldn’t find any examples I thought I’d write up what I did to help me, and possibly anybody else that needs to do it, in the future.

Log Parser Lizard creating custom regex format

I first heard about Log Parser Lizard (LPL) when Scot Hanselman blogged about it back in 2011 and since then its been part of my tool belt.

LPL makes analysing logs easy enabling you to point it at single log file, or even a directory of files, it will parse them and then allow you to query the data using SQL syntax.

LPL comes with a lot of predefined searches from Active Directory, IIS, event logs, etc and has the ability to allow you to define your own custom RegEx format for parsing text files.

Recently I needed to use the custom RegEx format, its not the easiest thing to do and as I couldn’t find any examples I thought I’d write up what I did to help me, and possibly anybody else that needs to do it, in the future.

Wednesday, 23 July 2014

The Full Stack Developer

Back in 2010 Carlos Bueno wrote a blog post on The Full Stack Developer and since then there have been various posts that comment on it such as this post and this post which made the full stack developer seem an impossibility.

I’m not sure I buy into this idea of a Full Stack Developer as somebody who can for example throw together a web site using the latest framework/library, work at the TCP protocol level and understand i/o bottlenecks in a database system with any degree of mastery.

Whilst there are some extraordinary individuals out there that can manage this I doubt the majority of developers today can do so.

We as developers have, out of necessity, become specialists in specific areas of computing.

The rate of change, number of languages/tools/frameworks/libraries and depth of understanding required means that in general people simply don’t have the time to be able to keep up with all the changes to all the various areas of computing.

Monday, 21 July 2014

Grunt & Gulp – an overview

Furthering my journey into JavaScript up to now I have not had much interaction with JS task/build systems so to remedy that I recently attended a DoLess workshop on Grunt & Gulp to discover what they were all about.

Most often people associate both Grunt & Gulp with building systems but they are not restrict to that and both can form part of the of a front end dev’s day to day development process being able to run tests & reload html when altered, etc

Wednesday, 21 May 2014

Fashion

fashionFashions come into style and go out of style and when they’ve gone you often look at pictures of yourself and think “why on earth did I wear that”.
Its no different in software development, with various tech gaining favour and becoming “fashionable” with everybody wanting to be using that tech only to find that it drops out of fashion later.  It used to take years for things to become unfashionable but with the rate of change increasing this may drop to a few months or even weeks.

Monday, 19 May 2014

DDD South West 5

This weekend saw the return of DDD to Bristol after a break of a year, with a new location and changed team behind the organisation.

As per previous years the weather on the day was absolutely fantastic with blue skies and sunshine as far as the eye could see.

The venue

This year instead of being held at UWE the Redcliffe Sixth Form Centre which is closer to the centre of Bristol making it easier to access via Train but a little more difficult by car, but with plenty of car parks nearby I don’t think it was a big problem.

On entering the venue you proceeded upstairs into a large “common room” area which is where the attendees would be between sessions. One advantage this had over the previous venue was that the area was large enough for the sponsors to be in as well as attendees being able to get coffee/food and socialising.

My Day

On arriving at the conference I found coffee & Danishes  waiting for attendees, which was much appreciated, and whilst waiting for the welcome I took the opportunity to catch up with people I knew some of which I hadn’t see since the last DDD I attended.

Welcome session

Ross Scott gave the welcome telling everyone about the day, house keeping information, etc. One change for this year was that there would be no evaluation forms instead all feedback would be recorded by Pocket DDD and each session you entered feedback for would count as a single entry into the prize draw at the end of the day.

Session 1

I didn’t actually attend any of these sessions, none of them had piqued my interest (although having listened to people who did attend I think I may have missed an opportunity to see Steve Sandersons talk) instead taking this time to catch up with some people I specifically wanted to talk to.

Session 2 – Redis Cluster

Marc Gravell started off by explaining what Redis is, how you can install it, basics of Redis, etc.

He then showed us how simple it was to use Redis using the Stack Exchange Redis client and also touched on how to monitor Redis using the Stack Exchange OpServer which he uses daily - both of which are available for free.

Marc then covered various replication configurations for Redis with master-slave relationships before moving onto Redis Cluster.

Redis cluster is currently unavailable on windows (MS Open Tech that are porting Redis are slightly behind) Marc then explained why you’d want a cluster rather than using a master-slave configuration with a demo of how to set up a cluster which currently needs Ruby to achieve.

Session 3 – Supercharge you JavaScript Development

Chris Canal’s session was packed, people were obviously interested in the subject.

Chris had chosen to video all of the “live coding” to ensure no issues with the internet and for the most part it worked really well with Chris being able to add additional commentary on what was happening whilst the video was running.

Chris covered using npm, grunt, bower and yeomon to get a project started quickly and then covered using the lodash library in your code.

Lunch

Lunch was held in the common room area and the team had laid on pasties for the attendees which were very nice.

There were a few groks and a 20-20 presentation by Phil Winstanley, although with the common room although more people could watch it the noise from people talking and not watching did make it more difficult to hear the speaker.

By this time the heat in the presentation rooms had increased and a lot of attendees were commenting on it.

Session 4 – Hadoop and Big Data

Gary Shorts’ session was packed, again a good indicator that people wanted to know more about this subject.

Gary took us through how hadoop works and then showed us how we could use .Net to work with it using the obligatory word count demos.

Once he had explained how we could use it he managed to squeeze in a real world example, including some visualization, around trying to predict the results of horse races.

Session 5 – 10 things I learnt about web application security

James Crowley started his talk explaining he wasn’t a security expert but was passing on his experience from working on a product that had had professional penetration testers trying to break into it.

He went on to show us just how easy it was to break into a site using fiddler before moving on to more sophisticated tools such as BeEF.

James showed just how easily your site could be compromised and more than one person I talked to said they were more than a little concerned about their sites after seeing this session.

Closing Session

Ross Scott presided over the closing session, thanking the speakers and everybody for coming, and then handling the swag giveaway.

And with that it was over.

Summary

The new team put on a really good day, pasties and cream teas adding to the west country flavour of the day. I thought the new venue worked out well, especially the common room area, the only downside seemed to be the session rooms were so hot by the end of the day but it does seems this happens at every DDD SW.

I think the team can be rightly proud of what they achieved and I look forward to seeing what happens next year.