Tech Nottingham

Tech Nottingham springs forward

There’s lots of exciting things going on in Nottingham at the moment. In fact as a city there’s always been a buzz around the place; an ‘anything is possible’ feeling all the way from the City Council down to those who live and work in it. We are also lucky to have a strong technology sector based in the city in a wide range of sectors.

The buzz is not limited to energy applied within companies as we’re lucky to have a community of like-minded individuals willing and keen to share ideas, passions and best practices in community events out of business hours.

Tech Nottingham is a monthly event that is launching from May 2014 and will be based out of Antenna which is already the focus for a lot of great events like Nott Tuesday and Second Wednesday.

It’s based on the great foundation of GeekUp Nottingham which Gemma Cameron setup in 2010. I’ve been an attendee and a speaker on a small handful of occasions and thoroughly enjoy the chance to meet up and share ideas with people I don’t get the chance to chat to in my day to day job at Esendex.

I’m pleased and supportive of the rebranding to Tech Nottingham for two main reasons.

First is that I personally don’t feel the event to date has gained much from the association with the GeekUp brand. It’s a good ‘ice breaker’ to give people a clue to what it might be about. However it also has the potential with the word ‘Geek’ to maybe turn some folk away.

I’m sure each GeekUp in the land is different and there is no right or wrong way to run one. I’ve just not witnessed any central ‘force’ pushing the success of GeekUps; no cross-retweeting, no central campaigning, no push to local media etc.
The success of GeekUp in Nottingham has been very much down to Gemma, Andrew Seward (its current Captain) and its members. So I don’t think breaking association harms the event at all.

Secondly, Tech Nottingham is aiming to continue to differentiate from other tech social events in the area by throwing its net even wider. The successful format already sees talks by experts intersperced with katas, dojos and retrospectives to name but a few of the different session types tried over the years.

In Andrew’s latest post on the new Tech Nottingham website he paints the picture of the future involving

hack events, campaigns, spin-off meetups on specialist subjects, workshops, training, help for startups, charities and community groups”. 

This exciting mission statement is the perfect time for a rebrand to something that can reflect all that it is hoped this community can become. It’s also clear that Andrew is looking to the members themselves to help him deliver this which I look forward to seeing how I can assist.

Personally being involved with GeekUp and other community projects like Code Club is that it’s not just personal development that can come out of voluntarily meeting up with other folk. There’s a chance to continue to share the knowledge to a wider, even non technical, audience through activities that can benefit others than the participants. The simplest goal of making others know that there’s meet ups like this

The first meeting (if you will) of Tech Nottingham will be at Antenna on Monday, 12th May at 6.30pm. Hope to see you there!

N.B. I’m pleased that we didn’t end up with ‘Tech Monday’ :)

Butler

6 steps to update Jenkins Slave Agents on Windows

After having updated Jenkins to the latest Long Term Service release (1.509.4) I wanted to ensure the Windows Slave Agents that we’ve got running were up to date. The Windows Slave agents had previously been installed using the Java Web Start process and then turned into Windows Service slave agents.

To reinstall the Slave Agents we had to do the following:

  1. Stop the ‘Jenkins Slave’ Windows service
  2. Launch a Command Prompt (ensuring its run as an Administrator)
  3. type the following (assuming your Slave Agent was installed at c:\jenkins)
    • sc delete jenkinsslave-c__jenkins
  4. Browse to your Node definition on your Master Jenkins instance in a web browser (Jenkins -> Manage Jenkins -> Manage Nodes -> Node)
  5. Click the Java Web Start process & run it on your Slave machine
  6. Select the option to install as a Windows Service from the File menu.

The ‘magic sauce’ was finding the ‘sc delete’ command which allowed us to quickly upgrade all of our Windows Slaves.

Hope it helps you maintain your Jenkins instances.

http://www.flickr.com/photos/mplemmon/231740358/

Getting Windows Git Bash to Hitch

On a Windows 7 machine that already had Windows Git bash version 1.7.9-preview20120201 on it, I wanted to add ‘hitch’. Hitch is a great little Ruby program that manipulates the Git author settings to properly attribute pair programming work. Rather than a commit having a single author, Hitch creates a unique email address from a known base email address and adding the pair names after a + symbol.

This is useful as when we push code up to GitHub it becomes clear which pair have been working on a task. You can also create a Gravatar for the unique concatenated email address so the pair combination can have their own logo too.

The installation is simple: gem install ruby. The Windows machine didn’t have Ruby on it so I went to Ruby Installers for Windows and downloaded v1.9.3-p125. make sure you tick the box in the install wizard to add the Ruby executables to your PATH. When Git Bash starts it’s loaded with the Windows PATH settings anyway so it should be able to find Ruby to install hitch.

Hitch itself is a breeze to setup using your GitHub usernames.
hitch username1 username2

Hitch will ask if you want to add the usernames to its local hitch_pairs files to save you entering their full name again. Enter their full name and you’re good to go. Now each subsequent git commit will have the correct author information. Pair programming is great and Hitch allows both members of the pair to have their work attributed.

http://www.flickr.com/photos/epsos/6038421627

Foreign Raspberries

The exciting Raspberry Pi project is nearing fruition but it seems their attempts to boost the UK economy by getting the boards made over here has been thwarted by lead times and an insane tax law.

It seems UK manufacturers end up paying tax on components, but if they get the boards made overseas and then shipped over then that’s ok because they’re completed products rather than raw materials. Bottom line is that this insanity means that foreign outsourcing of manufacturing gets even more attractive.

So in these times of austerity it would seem the sensible thing to do to support UK manufacturing by lobbying for a change in those tax laws. We have a lot of manufacturing talent in the UK and we should be supporting it.

If you want to support a lobby on this issue there’s an e-Petition been set up to register your support at http://submissions.epetitions.direct.gov.uk/petitions/27158

Are your contacts portable?

Spare Office by sidewalk_flying (Flickr)

With an increasing amount of technology to help you communicate, the job of keeping your multiple contact lists up-to-date across these devices and services has mainly fallen to you.

Contact information lurks in many places and is often locked to serve one purpose. Whether it’s contact details in your mobile phone; on the address book in your email client at work or the list of friends you’ve built up on social media.

This post introduces Portable Contacts as a solution to getting access to these distinct collections of your contacts to avoid needing to duplicate them.

Continue reading

1&1 domain transfer status: ‘Domain Update Done’

In the process of moving a .co.uk domain over to 1&1 for someone this week, I encountered the undocumented status code of ‘Domain Update Done’.

The domain had previously shown as ‘Ready’ in the control panel and I was able to set the server and mailserver for them using 1&1′s nameserver.

The gotcha is that during the ‘Domain Update Done’ status you can’t swap the nameserver settings. You can still get to change the A and MX records with 1&1′s Nameserver but if you wanted to point it to an external nameserver you’ll have to wait until this status clears.

The official word I got from 1&1 support says : “Domain Update Done status means that a domain is already on its last phase of propagation and normally, this will take 24-48 hours.”

So just be warned that if you want to change your initial settings when transferring a domain, you might get locked out while the domain is being finalised on your account.

Fixing MSDTC between two machines on different domains

I’ve been chasing problems with MSDTC today. We were trying to get one machines on a different domain to use MSDTC through COM+ to talk to a remote SQL Server on a different domain.

Select / Read operations seemed to work fine but when it attempted to use an UPDATE method in a transaction, it failed with an exception saying

COM+ was unable to talk to the Microsoft Distributed
Transaction Coordinator (Exception from HRESULT: 0x8004E00F)

The following information describes my eventual journey to success.

Continue reading

Google Contacts throws a gauntlet at Facebook?

Given the size Facebook has grown to, it has an obvious ‘elephant in the corner’ for those willing to step back from their time-line for a minute.  Those users who are only interested in friends, photos and now location-based checkins too might miss the fact that Facebook is data-mining on a grand scale.

The debate about the public visibility of your data has grabbed the media’s attention. What’s given less coverage is the missing ability for you to easily use and share the data you’ve chosen to store with Facebook elsewhere on the internet.

Google have recently changed their terms of service on their Contacts API in a seemingly simple way, but with hopefully bigger consequences. GigaOm summised in their article about this by saying “Third-party apps and services can’t pull data from Google without allowing Google to do the same with their data”.

We shall have to see whether linking with Google Contacts in Gmail etc. to find new friends to connect to on Facebook is enough to force Facebook to apply a can-opener to their own APIs.

Thanks to Adam Bird for sending me a link to the GigaOm story.

Shutting down log4net repositories

I’ve been learning and evaluating the Gibraltar ‘Runtime intelligence’ & logging application recently. If you’re already using log4net, there’s a very low impact route to adopting its many benefits by using their simple Gibraltar Appender.

In knocking up a quick sample application to test, I had setup and configured my Log4Net logger:

public class Program
{
  private static readonly ILog Log = 
    LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
  static int Main(string[] args)
  {
    if (!LogManager.GetRepository().Configured)
    {
      XmlConfigurator.Configure();
    }

The simple application went on to output some simple log lines to test using the Gibraltar appender. All was fine, except this simple console application appeared to hang on exit. I quit the running application and Gibraltar dutifully announced that my session had Crashed.

A bit of headscratching later made me realise that I needed to be a better Log4Net citizen in my sample application. I had omitted the line:

Log.Logger.Repository.Shutdown();

Now my code properly stopped its logging activities before the program exited and Gibraltar was able to report successfully. The Log4Net RollingFileAppender or ConsoleAppenders don’t complain like this on program exit if the repository isn’t shutdown first but it does makes sense to tidy up after yourself rather than relying on the garbage collector.

I’ll write more about my positive experiences of Gibraltar in another post, but just wanted to share this in case any early adopters faced the same ‘facepalm’.