May 15, 2008 Comments Off
[dbo].[Fruit Salad]
Every now and then we have a Hack Day at Madgex. We’ve just had our third one (the second one during my Madgex tenure), appropriately named Madgex Hack Day III (photos, tweets) and accompanied by some brilliant t-shirts. While Andrew, Graham, Nick and I spent the day dicking around with a table football table, an Arduino board, LINQ, ASP.NET and WinForms, Jane and Chris worked on a keyword search engine built in T-SQL called Banana which uses configurable field weightings.
You see, at Madgex, we’re a bit fond of tropical fruit. Last hack day, a group of us worked on Mango, a .NET implementation of the Django templating language, which we’ll soon be using in our production websites.
Perhaps it’s a subconscious effort to offset all the cake we eat, or perhaps we’ve just taken the five-a-day campaign to heart, but now Jane and I are working on Papaya.
Another perk of working at Madgex is that we are allowed to spend up to 15% of our time working on our own projects and learning, and this is in addition to any training required for our jobs. This scheme is called Ideas and Learnings Projects (ILP) (photos, tweets).
On the learnings side, fellow Madgexians have been running sessions on areas they are knowledgeable about (ranging from unit testing to time management to neuro-linguistic programming). We’ve also had external speakers. Dan Webb spoke about Metaprogramming JavaScript and Simon Willison introduced us to Comet (and he’s coming back soon to talk about OpenID). Equally, people can spend time on traditional learning courses such as professional accreditation.
There are a plethora of projects being worked on too. Some people are assessing new technologies (for example, Adobe AIR). Others are working on internal tools. Still others are working on projects which may see the light of day in our Job Boards. The projects are the part of ILP that excite me the most. I’ve got several on the go at the moment, which I will be blogging about, and one coming up that I’m especially excited about.
So, what’s all this Papaya business?
Papaya will be a tool which allows us to version our databases and to ensure that they remain in a consistent state across schema and procedure changes. This comes out of the investigation Jane and I did into DBVerse. When writing change scripts, you will add information about the changes to a XML file. This file will group sets of changes into releases with version identifiers and single change scripts with version identifiers. Each change or release will state the previous versions it depends on so that the tool can ensure change scripts are only applied to the database when it is safe to do so.
While the premise of Papaya doesn’t sound that exciting, it will hopefully be a really useful tool and it’s a great opportunity to polish my SQL skills.
