2011-12-19 – Today’s Links

Some interesting links I came across over the weekend:

2011-11-04 – Today’s Links

less - The dynamic stylesheet language.

LESS extends CSS with dynamic behavior such as variables, mixins, operations and functions. LESS runs on both the client-side (IE 6+, Webkit, Firefox) and server-side, with Node.js.

Ender – a full featured package manager for your browser.

It allows you to search, install, manage, and compile front-end javascript packages and their dependencies for the web. We like to think of it as NPM‘s little sister.

TWITTER BOOTSTRAP

Bootstrap is Twitter’s toolkit for kickstarting CSS for websites, apps, and more. It includes base CSS styles for typography, forms, buttons, tables, grids, navigation, alerts, and more.

We’ve Released Some of our Nagios Plugins

We create a lot of Nagios installations for our own systems over, for customer systems which we manage and as a service over at Open Solutions. We’ve written a lot of custom Nagios plugins over the years as part of this process.

We are now making a concerted effort to find them, clean them, maintain them centrally and release them for the good of others.

To that end, we have created a repository on GitHub for the task with a detailed readme file:

They main goal of Nagios plugins that we write and release are:

  • BSD (or BSD like) license so you can hack away to wield into something that may be more suitable for your own environment;
  • scalable in that if we are polling power supply units (PSUs) in a Cisco switch then it should not matter if there is one or a hundred – the script should handle them all;
  • WARNINGs are designed for email notifications during working hours; CRITICAL means an out of hours text / SMS message;
  • each script should be an independant unit with no dependancies on each other or unusual Perl module requirements;
  • the scripts should all be run with the --verbose on new kit. This will provide an inventory of what it finds as well as show anything that is being skipped. OIDs searched for by the script but reported as not supported on the target device should really be skipped via various --skip-xxx options.
  • useful help available via --help or -?

Some New Nagios Plugins

Over the past ten years I have left many many new and hacked Nagios plugins on many servers around the globe. I’m now making a concerted effort to find them, clean them, maintain them centrally and release them.

To that end, I have created a repository on GitHub for the task with a detailed readme file:

As a starting point, there are four plugins available now:

  • check_chassis_cisco.pl – a script to poll a Cisco switch or router and check if the device was recently rebooted; its temperature sensors; its fans; its PSU; its CPU utilisation; and its memory usage.

 

  • check_chassis_server.pl – a script to poll a Linux / BSD server and check its load average; memory and swap usage; and if it has been recently rebooted.

 

  • check_portsecurity.pl – a script to check all ports on a Cisco switch and issues a critical alert if port security has been triggered resulting in a shutdown port on the device.

 

  • check_portstatus.pl – a script which will issue warnings if the port status on any Ethernet (by default) port on a Cisco switch has changed within the last hour (by default). I.e. a port up or a port down event.

ViMbAdmin – Migrating to github

I have recently been converted from and SVN user to a Git user. You can read about my road to Damascus moment over in my personal blog.

As such I have converted my co-workers and we have migrated ViMbAdmin to GitHub. We feel that the project is in an early enough stage to not cause too much annoyance with the current user base. We do sincerely apologise for all and any inconvenience caused.

Do you want to continue with your SVN installation?

Feel free to svn switch your base from Google Code to the following which tracks our master (i.e. stable / production / release) branch:

http://svn.github.com/opensolutions/ViMbAdmin.git

Migrating to Git

Just follow the instructions at:

https://github.com/opensolutions/ViMbAdmin/wiki/Install-using-git

and skip the database setup. Just copy over your application/configs/application.ini file to the new Git clone.

Using Official Packaged Releases?

No problem – you’ll now find new versions at:

https://github.com/opensolutions/ViMbAdmin/archives/master

 

So I’ve Made the Switch from SVN to Git…

…and I’m bloody delighted. 

The straw finally came when Nick forced my hand for a project we wanted to release through our work in INEX. I was pushing for Google Code but he had his heart set on GitHub. Now, in fairness, GitHub has some SVN bindings but after some research, I decided to dive right in.

Now, there’s both a steep learning curve but also a complete change of mindset required from centralised source code management (SCM) with SVN to the distributed model of Git. In the end, most projects will decide on a canonical Git repository anyway which pushes you slightly back towards centralised but there’s still a world of a difference.

So, what’s so good about Git? Well, lots. But first and foremost is it’s exceptionally powerful yet simple branching and merging that just works. And works fast – remember, with Git everything is local.

One work flow that used to kill me in SVN was that you’d be implementing feature X but someone needed bug Y fixed immediately involving some of the same code. Getting just the fix for Y in was tough and complicated. And branching in SVN isn’t quick or simple. In Git, I branch from the main development branch for every new feature, bug fix, etc and then merge what I need between them and back into develop when they’re ready to be pushed back to the agreed canonical repository.

I’ve been so impressed with Git that I’ve moved an open source project we created in Open Solutions over to Github: ViMbAdmin. I’ve also forced the rest of my team in Open Solutions over to Git and migrated a number of customer projects already. And we’re reaping productivity rewards!

How we work Git for projects was taken from this excellent post which I would fully recommend: A successful Git branching model.

Useful Git Links:

Three Rock Masts

Living below Three Rock mountain in Stepaside, I often look up the many communication masts. Today I trekked up on the bike and took a few (dark and bad) photos.

Duke Nukem Never Comes Early

I’m not a gamer and I never played Duke Nukem. But I was always taken by this article: “Learn to Let Go: How Success Killed Duke Nukem” which is required reading for anyone developing software products.

On May 6, 2009, everything ended. Drained of funds after so many years of work, the game’s developer,3D Realms, told its employees to collect their stuff and put it in boxes. The next week, the company was sued for millions by its publisher for failing to finish the sequel.

It looks like someone else is going to release Duke Nukem now but they’ve delayed the release date in hilarious fashion (hilarious assuming you’ve read the above article):

Data Centre Technical Services

We’ve added a new service to our website: Data Centre Services. In reality, this is a service we have been providing since our inception in 2007 and our employees have been doing for other companies long before that.

We’ve added a new service to our website: Data Centre Services. In reality, this is a service we have been providing since our inception in 2007 and our employees have been doing for other companies long before that.

By data centre technical services we mean that Open Solutions provides a full data centre service portfolio including:

  • data centre selection, negotiation and management;
  • supply and installation of all necessary data centre equipment including racks, patch panels, cable guides, optical distribution frames, managed and unmanaged PDUs (power distribution units);
  • IP transit provider selection, negotiation, set-up and management;
  • installation of a resilient fault tolerant network edge (see case study);
  • installation of management and out of band access;
  • remote hands for installation and configuration of customer kit;
  • consultancy and advice;

And, of course, intelligent engineers with problem solving ability!

We’re very familiar with all the carrier neutral data centres around Dublin as well as most of the carrier owned data centres. We also have good relationships and contacts with data centres in Cork and Galway.