Project Discovery – Inception Plans

I have started planning my next computer build – codenamed Discovery – to replace my current Galileo rig. The plans are at the inception stages at the moment but I’m hoping to have some more concrete plans in the next few weeks.

I aim to build Discovery more as a customisation and modification project as well as a new computer build, and as such hardware choices have yet to be made. However, Discovery will be subtly themed along the lines of NASA’s own Space Shuttle Discovery.

Colours and general design will be kept as clean as possible, with a white/silver pearl outer colour and black/white internals. The case in question will be the Coolermaster ATCS 840, with a custom side-panel window and an LCD display housed within the panel. Below is a very rough mock-up of what I hope the finished project will look like:

Project Discovery Side PanelHopefully I’ll have some progress in the next few weeks!

WordPress NextGEN Gallery – SEO Permalink Patch

WordPress LogoAfter converting my gallery from Coppermine to NextGEN, one of the only downsides was the non-SEO friendly nature of NextGEN’s default permalink structure.

After searching through Google, its seemed others had also raised the issue, but the feature was as-yet unimplemented by Alex Rabe, NextGEN’s developer. Undaunted by this, I set about dismantling NextGEN’s code to implement it myself.

So, after several hours of coding, hacking and bug-fixing, I have released the changed files for anyone who wants to implement the feature in the future. Just download the patched version of NextGEN (tar.gz | zip | changed files only) and replace your current NextGEN plugin files. You will need to update your permalink structure once after activating the SEO settings in the NextGEN Options page.

Disclaimer

Obviously there is a risk in using this as it I haven’t tested on anything other than my own website. Remember to backup your current nextgen-gallery plugin folder, as well as any customised CSS files you have.

I have submitted the changes to Alex, so hopefully they should be integrated into the next release of NextGEN.

If you have any questions/comments, please by all means ask :)

Update 21:00 BST, 8th July 2010

I have been testing the changes and have found a couple of minor bugs, mainly relating to the use of European characters and quotes in gallery/album names. These bugs have now been fixed, and a proof-of-concept for European characters is here.

The archives above have been updated to include these changes. If anyone can provide feedback (even a “it works!”) it would be much appreciated – I’m trying to save Alex as much testing as possible :)

iPhone 4 – Full Review

As discussed in my earlier post, I have been playing with Apple’s newest toy today – the iPhone 4. After playing with the device for the best part of the day.

I won’t be doing a step-by-step teardown, because if you’re reading this, you’ll already have a good idea of the capabilities of the device, but I’ll pick out my favourite features and give an overall idea of how it fares.

Design

The iPhone 4

The iPhone 4

As has been widely publicised, the design of the iPhone 4 is the biggest overhaul since the original was released back in 2007.

It takes many hints from the latest lines released by Apple, including the all-aluminium MacBooks, iMacs and the iPad.

In terms of feel, this makes the iPhone feel a touch hefty but this translates into “quality” rather than “heavy” – you actually feel like you’re holding £450 of handset, which you should, because you are!

The lines are clean, minimal and uncluttered, and it really does bring the iPhone into line with Apple’s current trend, while also being a statement itself. It doesn’t matter whether you are a massive Apple fan or a style-concious newbie, the phone will fit.

Retina Display

The other much-discussed feature of the iPhone 4 is it’s Retina Display – so-called because Apple claim that the human eye cannot distinguish between individual pixels on its screen.

I have to say that the display is one of the device’s finest points. It’s sharp, bright and vivid, and definitely something that should be admired.

Software and Apps

Apple LogoOne of the drawbacks that has stopped me short of having an iPhone before now was the dependence on iTunes to sync with the device. This limitation still stands, however my own stance towards iTunes has softened slightly since buying a MacBook in October 2008, so it isn’t much of a drawback for me personally.

As you would expect from Apple, the software does work seamlessly, and there’s no negatives that really stand out – as yet anyway.

Overall

The Apple iPhone 4

Overall, I really have to say that the iPhone 4 is in a class of it’s own. Apple’s many detractors can point to any number of handsets that claim to rival it – the HTC Desire and BlackBerry are two – but for me, it really is an achievement of engineering and design – disciplines that Apple excel in, even though as a Free Software advocate I would like to see a bit more software and development openness.

Of course it remains to be seen how it will fare in the long term, there have already been reports of yellowing/discoloured screens and loss of signal, however I have (thankfully, touch wood) not run into these problems so far.

[ Full Flickr Photostream ]

iPhone4 – First Impressions

My iPhone 4

My iPhone 4

So, I am the proud owner of a shiny new iPhone 4! I’ll give my first impressions here.

First off, the device feels very hefty and very solid in-hand, and it’s got a nice feeling of quality about it.

Not having used an iPhone properly before, the iOS4 software feels responsive, and the much-discussed Retina display looks amazing, it re-defines what a mobile device should be capable of.

I will be writing an in-depth review later, once I’ve had a chance to play with the iPhone properly, but it’s looking like a very promising purchase!

Photos are on my Flickr photostream.

How To: Backup with SSH and Rsync

PuTTY logoMy websites (hosted with EvoHosting) are incrementally backed up to a server running on Atlantis – my VMware ESXi host – for the dual purposes of offline development and data resilience. I’m fairly sure that there are numerous guides out there already to accomplish this, but hopefully this will be useful for some.

For ease of explanation, I will skip any network configuration, though if anyone would like detailed configuration on NAT, port forwarding and dynamic DNS, please by all means leave a comment or email me.

SSH Key Configuration

The first thing to do is to configure SSH key authentication, so that your source server can login to your backup server without being prompted for a password. Run the following command on your source server:

ssh-keygen -t rsa

Copy this key into your authorized_keys file (usually in /home/$USER/.ssh) on your backup server and set permissions to 700 so that nobody else can read or edit the file – these permissions are explicitly required for most SSH installations, so double-check that they are correct.

Rsync Configuration

After looking around for help on rsync for a while, this is the rsync command I have come up with:

rsync --delete  -ae 'ssh -p999' /home/craig/public_html/ backup.network.local:/home/craig/public_html/

The “delete” option tells rsync to delete files on the backup that aren’t in the source, and the -p999 option tells SSH to use port 999 for the transfer – I used this as I use a non-standard port for SSH for security, however if you run SSH on its standard port (22), you can remove the -p option.

MySQL Backups

Although Rsync will copy my public_html directory, it won’t backup my MySQL databases. To do this, I used the mysqldump utility. Unfortunately my file permissions wouldn’t allow me to use the more efficient mysqlhotcopy utility, so I have had to make do with a slightly crude full backup, which is gzipped to keep the file size minimal:

mysqldump --all-databases | gzip > ~/databases.sql.gz

This full backup is then imported back into the backup server’s MySQL databases.

Automation via Cron

All that was left to do after this was to schedule the backups automatically via each server’s cron scheduler. The MySQL database imports take place 45 minutes after the Rsync copy to give the backup time to complete.

Where needed, I have written simple Bash scripts to simplify the process and to remove the backup SQL scripts after transfers and imports.

~~

Hopefully that has been educational, please feel free to comment if you have questions/suggestions :)

OpenBooking – Testing Needed!

openBooking Logo

Although not in the relaxed way I’d have wanted, but my dissertation project has now been handed in! After a week of frantic, Red Bull and Relentless -induced coding and writing, 9,500 words of write-up and 14,500 (ish) lines of PHP, SQL, XHTML and CSS are complete

The overall system is a distributable web-based resource booking system, mainly aimed at schools/colleges/universities, but it’s customisable enough to be used in pretty much any environment. Admin users can create slots, locations, categories and resources and then users can create bookings.

As it’s a distributable project (released under the Mozilla Public License – Wikipedialegal text), if anyone can actually use the project, let me know and I’ll get a copy to you. Only requirements are a database server and an LDAP (or Microsoft Active Directory) server, but most networks should have these. I’ve only tested the app with OpenLDAP and MySQL/PostgreSQL, but in theory it should work on other platforms.

Even if you’re not able to test the system personally, but feel free to suggest it to bosses, managers etc. The existing public code trunk has been updated and distributable archives have been uploaded to the OpenBooking Google Code account. I’ll be getting a full-featured homepage with forum and wiki running in the next week or so :)

Windows Users: Switch to Firefox Today!

Apart from sounding like a 1960′s advertising slogan, the title of this blog actually does have some relevance.

Today, Microsoft Windows users in Europe are being given the choice of eleven alternatives to its Internet Explorer web browser.

I haven’t researched this, but I would guess that about 75% of the time you spend at a computer terminal is looking at a web browser, so the browser is a core application for today’s computer users, and one that can have a profound effect on your computer usage.

My personal browser of choice is Mozilla Firefox. Details about why I use Firefox are on my previous blog about great open source apps. I highly recommend that you use this opportunity to install it and give it a go – with the addition of a few extensions (or add-ons), Firefox really does have the ability to transform your web experience. Here are some of my extensions of choice that really do add value to any browsing:

  • AdBlock Plus: Absolutely indispensable – this little add-on instantly removes most of the annoying advertisements you encounter while browsing. Just install the extension, sign up to an ad filter (I personally use the “EasyList (USA)” filter) and say goodbye to online ads!
  • Xmarks (formerly Foxmarks): Another indispensable add-on if you are often moving from computer to computer, it allows you to keep all of your bookmarks synchronised .
  • DownThemAll: Not strictly “necessary” but definitely in the “useful” category. If you download large files over the web often, then DownThemAll offers lots of features like resumable downloads, automatic checksum comparison and multiple link downloads.

Of course there are thousands of other add-ons that can make your browsing a breeze. So, go ahead and download Firefox today!

3 Great Open Source Apps

In a (somewhat vain) attempt to keep this blog a bit more up-to-date (I’ve set myself a target of one entry a week!), I hope to start writing some shorter blog entries in the future. In the first of these shorter excerpts, I’ll be looking at a few great free, open source applications that anyone can start using right now, for free.

Firefox – Web Browser

Mozilla’s Firefox web browser is quite possible one of the biggest names in open source software, and a product almost everyone is familiar with; at least in name.

For me, the benefits of using Firefox include what can only be described as an arsenal of add-ons and extensions that make Firefox far more than just a web browser. Among the extensions that I use are Adblock Plus (the web has never been the same again), the venerable Web Developer Toolbar and HTML Validator combination (in my opinion, the staple toolbox for any web developer) and DownThemAll (a great resumable download manager, complete with checksum support).

Also present is the benefit shared by most open source applications: cross-compatibility for almost any platform and architecture.

Songbird – Media Player

From the same stable as Firefox, but very often overlooked, is Songbird. I have only started using Songbird as my media manager of choice within the last three months, however it is incredibly versatile, discrete, and shares the cross-compatibility benefit, so I can use the same player on my MacBook and my Windows and Linux environments on my desktop PC.

Like Firefox, it benefits from extensions, although the extension support isn’t at the level of Firefox’s. A feature I do really like though is the unobtrusive mini-player – it makes quickly flicking through tracks a breeze – especially after Microsoft abolished the Media Player toolbar feature in Windows 7 and Media Player 12!

Pidgin – Instant Messaging (Windows Live Messenger – MSN)

After growing frustrated with the bloat of Windows Live Messenger, I turned to Pidgin – another open source alternative that is already shipped with many Linux distributions as the Instant Messenger (IM) client of choice.

An advantage of Pidgin (albeit one that I don’t use) is the ability to handle multiple IM protocols: geek-speak for being able manage your MSN, AIM, Yahoo!, Google Talk, ICQ and a whole host of other IM accounts in one place, and as with Firefox and Songbird, the great number of plug-ins available really do extend the functionality. For those music-fans that like people to know what they’re listening to, there’s Music Tracker, and the host of other plug-ins included as standard.

A Very Belated Update

So where has the last six months gone??

It seems like only yesterday I was packing my gear in Aberystwyth. Since then, I’ve moved back to Essex, packed in a fair few We Will Rock You shows, redesigned this website, played bass in a variety show concert started a new job and and built a brand new desktop PC – so it’s been “all go”!

The new desktop PC has been about a month in progress but it’s finally completed and I couldn’t be more pleased with how it’s turned out. More details are on the Computers section of this site, so I won’t bore people with techncial specifications here, but it’s safe to say that it was definitely worth the effort!

September 20th saw a parial change of cast for We Will Rock You at the Dominion. Among those to leave were Julian Littman, Lain Gray and Lucy Sinclar who play Pop, Vic and Meat respectively. I have yet to see the new cast, but I’m sure they will be brilliant.

I’m now working at Colchester Sixth Form College as an IT Technician as part of my degree course’s Year in Industry. It started pretty slowly, then sped up quite a bit as staff and students were off for the summer, freeing up the servers and network for maintenance. Hopefully it’s calming down slightly now!

The aforementioned variety show was the brainchild of Hans Montanana, the former head of music at Rickstones School who I’ve kept in contact with over the years. I actually came out of semi-retirement as a bassist to play the concert, not having played seriously for over three or four years! It was definitely a challenge going back to basics and reading from chord charts again but hopefully I’m now back into the swing of it and the next one (if there actually is a “next” one) will be a bit easier!

Last of all, I’ve given this website a bit of a revamp and redesign, and added a new section dedicated to the building of my new desktop PC. The theme of the redesign was partially inspired by the recent events at CERN and the Large Hadron Collider, I’m still not 100% happy with the design so there may be a few further tweaks in the next few weeks!

Anyway, that’s your lot, apologies for not updating over the last 5 months but it has been pretty action-packed!

Up the ‘kin Irons!
Craig

Switching to Linux from Windows – Tips from experience

In the last few months, I have made the pretty massive jump from being completely Windows-based to being heavily reliant on Linux – the free, open-source alternative operating system. A vast amount of the help and tips I found while in the transition period were found on message forums and blogs, so maybe this will help prospective Linux users decide to switch.

If it ain’t broke, don’t fix it
Don’t switch to Linux “just because”. I had a pretty solid reason to start exploring, but if Windows works for you, then don’t feel pressurised to try Linux. It won’t change your world. It may make your computing experience slightly less stressful, but like 99% of software systems, Linux has bugs – and many of them.

If you’re curious and would like to try it out, get your hands on a LiveCD – there are various Linux distros that can be run from a CD so you can try them before you install, the most popular of which is Ubuntu.

Get used to the command line
Linux has indeed moved on dramatically in recent years to make itself presentable to the (I hate to use the word) “average” user – the person who just wants to surf the web and write letters. That said, while Windows users can often sit in the blissful ignorance that there is such a thing as a command line environment, it’s still very much present in most Linux installations.

Over the six months or so I’ve been running Linux on my laptop, I could not have lived without the command line. Those who have little or no experience with it will either learn or sink. The flip-side of this is that once you have learned a couple of commands, you’ll feel a lot more confident and eventually you will build up experience.

Google is your friend
I also can’t count the number of times I’ve turned to Google with a specific problem and it’s been solved in a matter of seconds with a simple config file edit or command-line instruction. Especially with well-known distros like Ubuntu, support is very easy to find.

Ubuntu is not the only distro out there
Many users refer to Ubuntu in the same was as they refer to Windows – as a complete system. This is completely untrue. Ubuntu is a fairly new entry into the Linux arena and, some say, has only made it to the big-time because of some serious financial clout from a very generous multi-millionaire.

The key to finding a good distro is to research and experiment. You wouldn’t buy a brand new car on just taking a look through a marque list, so why do the same with a computer OS? Ubuntu, for example, didn’t like my laptop’s Intel GMA950 display card, refusing to give me the native 1280×800 resolution, although it detected my Intel 3945ABG wireless card perfectly. Fedora was the exact opposite, but I decided I could work with no wireless for the time being until I found a solution. If in doubt, check the distro’s Hardware Compatibility Lists.

Don’t expect it to work 100% out-of-the-box…
As with the hardware example above, Linux isn’t a “one-size-fits-all” magic system that many Linux fans make out. Personally, my Fedora installation has taken many hours of tweaking and playing with to get it the way I want it – installing media codecs, finding Linux-equivalent software for various tasks, configuring the OS to run the way I want it to.

…But don’t be afraid to play
I haven’t worked with any other distro, but don’t be afraid to get your hands dirty and mess around. If something isn’t how you like it, there’s more than likely a way to alter it. For example, my desktop (screenshot below) has been heavily modified from the standard GNOME desktop layout – the default desktop environment for Fedora and Ubuntu. I’ve made it look the way I want it to look – like Windows – because that’s what I’m used to and I want to use the software because of the functionality, not the look.

Hopefully I’ve given some useful info that’s helped people to decide if they want to switch. I’m quite happily using both Linux and Windows.

My Software
Linux Distro – Fedora 8
Visual Effects Engine – Compiz-Fusion (used to be Beryl on Fedora Core 7)
Window Decorator – Emerald with Crystal-ICE theme

Music – Amarok
Video – VLC & mPlayer
DVDs – Xine
MSN – aMSN (Alvaro’s Messenger)
Email – Mozilla Thunderbird
Web – Mozilla Firefox
FTP – gFTP (standalone) & FireFTP (Firefox extension)
Office suite – OpenOffice
BitTorrent – Azureus
Graphics – Adobe Fireworks CS3 (running under Wine)
Text Editor – Gedit