learning golang

I started learning Go Lang recently, the hot new language from Google. Apart from reading through the documentation found on http://golang.org/ I also stumbled onto a screencast by Russ Cox which serves as an excellent introduction to the core concepts. I have watched it 5 times so far and each time come away with some new tidbit.

This video walks you through : “Three things that make Go fast, fun, and productive: interfaces, reflection, and concurrency. Builds a toy web crawler to demonstrate these.”

Sequence Diagrams

I often end up drawing diagrams with any tool I find when I am working fixing a bug, mapping out existing architecture or workflows, designing new components. I use tools like pen and paper (yes old fashioned, I know), whiteboard, OmniGraffle etc. This is great but I am not a very artistic person so my diagrams aren’t always very pretty. Also, despite thinking in pictures and finding a need to draw diagrams I find them a chore to do. I guess I am a little lazy. :)

The one tool that I find easiest to use (and hence use as often as appropriate) is Web Sequence Diagrams. They have developed this syntax for describe sequences or workflows between different entities in a system and built software to translate that description into a sequence diagram.

Check it out, let me know what you think or if you use something else send me a link.

php-resque

Resque (pronounced like “rescue”) is a Redis-backed ruby library for creating background jobs, placing those jobs on multiple queues, and processing them later. This was ported to php by Chris Boulton and is available on github.

We @ Big Commerce have started a meetup called Sydney Web Apps and today we had our second meetup. I gave a presentation today @ this meetup talking about php-resque and how we use it at Big Commerce. The slide deck is available on slideshare.

[Edit]: We have processed, in a little over 2 weeks, in excess of 6 Million jobs without a single failure or load issue. #win :)

It would be remiss of me if I did not mention we are hiring.

linkedin stats

I have posted about this in the past, but over the last few months I have noticed a huge change in the “how many times your profile appeared in search results” stat (see image below) for my profile. If you have noticed a similar change I would love to hear your thoughts.

Appearances in Search

There are likely to be a combination of factors at play here. The first is that there are more people searching for people with my skill set. Second could be that LinkedIn has changed their ranking algorithm’s and is providing better matches for people’s queries. Although, this seems very unlikely based on job recommendation emails I get from LinkedIn as about 1 in every jobs they email are actually relevant.

The third, and most likely scenario, is that my position title changed to Senior Software Engineer in early August (2011). Now I know what the word Senior actually means in terms of my day to day work and what it does not, however I get the feeling that people searching on LinkedIn are doing so based on position titles and not skill sets. In the software engineering world this does not seem to be a good strategy because an engineer (no matter how senior) with Java or PHP background is not likely one who has a finance background or wants to work with .net and vice-versa is probably also true.

Have you tried searching for people to recruit on LinkedIn? What search queries/strategies did you use?

from search to ecommerce

In 2010 we decided to move back from London to Sydney and to aide that move I took a position of leading the vertical search development work at Yahoo!7. Vertical Search is web search but restricted to a specific data set, i.e.: data that a property/website is presenting to it’s users. The main aim is to provide another content access tool to the users to find content and of-course to monetise the process. The process of implementing this for a given data set is rather interesting as it involves understand the data set, what metadata is captured for each item, how the website itself is structured, creating indexes, creating appropriate ranking profiles and building the search user interface.

Over a short period of time (not to blow my own trumpet here) I was able to understand the inner workings Y!7 and make a dent in their search roadmap. I lead the implementation for Yahoo!7 Sports, Yahoo!7 Lifestyle and Yahoo!7 TV.

A few month’s back I had heard rumblings about a startup (of sorts) in Sydney which was going gang busters within the e-commerce space called BigCommerce. BigCommerce is a e-commerce SAAS platform which enables a Joe Blog to create a e-commerce presence for their business. The setup is a short process and importantly without the need to invest technical resources.

To cut a long story short, after 3 gruelling interview rounds I accepted their offer. The main attraction for me is to be in an environment where everyone is working on the same product and pulling in the same direction. This, based on my experience, is generally possible with small/startup companies and I am really looking forward to starting and getting my hands dirty again. The other attraction was working in the SAAS space, it’s not something I have done in this shape before and I am really excited by the challenge.

This news, given that I took the plunge, is very heartening indeed! If you are interested or know anyone who is then look here for open positions. :)

Onwards forwards!