Confessions of a Procrastinator

Got the Boost, but not the Bottle

Many years ago, someone relayed a story to me of a friend of theirs who had fitted their Vauxhall Nova with an Nitro boost – this was back in the 80’s when Vauxhall Nova’s were the car of choice for boy racers and modders before the Corsa. He explained to me that the boost worked through plugging in a nitrous bottle, and that once you pressed the button you could get maybe 10-12 seconds before the boost ran out (or so that is what I recall). Either way, it was very easy to use up a full bottle very quickly and apparently the bottles were prohibitively expensive, therefore this friend hardly ever used the boost. Instead he got a sticker made for his car – “Got the boost, but not the bottle”.

Perhaps I’m not unique in this, but I feel like I squandered my 20’s on self-indulgence and FOMO.

I’m probably at the most productive time in my life right now, I’m doing a lot of self-study and implementation too. In the last 10 years a massive amount of opportunities through technology have opened up that never existed before. Many jobs of the past have been lost to automation, yes, and there’s no such thing as a job for life anymore, but the jobs of the future haven’t even been invented yet. The work I do now barely existed at the time I started university almost 20 years ago.

That said, I still look back on the last 20 years with a taste of bitter-sweet. Perhaps I’m not unique in this, but I feel like I squandered my 20’s on self-indulgence and FOMO. I had some of the best events of my life – I travelled, got married, started as a consultant – but at the same time many of the ideas I had in my head, and the opportunities to make money, passed me by. I had ‘the boost but not the bottle’ as it were.

Achieving Nirvana

Part of me blames my upbringing, I was given too much freedom growing up – not enough discipline or structure… I wasn’t made to do household chores and I outside a being sent to bed early on occasion, I was never grounded. These things I was proud of as a punk teenager… now all I see it tragedy and missed opportunity. However, I also firmly believe in revelation and mind-renewal, or brain rewiring. You can’t be blamed for where you’ve come from, and you can’t change that fact, but you can change your future. Once you have a realisation and reach the point of understanding, you realise it’s your responsibility from there, you can no longer lump it on your family, your friends, your school, your work. For me, it’s just that the realisations came long before the call to action.

One of the things I’ve come to understand about myself is that I’m a bit of a ‘big-picture’ thinker – I have many ideas – books, applications, occupations, games, political actions – but don’t necessarily like to bog myself down in the details. Consequently lot’s of ideas, for projects, for starting businesses, for investments, but the moment I sat down to plan on starting just one of those things, and doing some research into what it would take – I lost interest. Towards my late 20’s I started to force myself to focus on an idea and actually begin to work on it, but this developed into another problem. Once I got over the initial research and planning, I found I could focus intensely on a project for a great period of time, continuously working on it in all my spare hours… and then what would happen is I would become slowly seduced by other new interesting ideas, and it would only take one missed evening of productivity and bang, production would stop.

So I had put a major amount of effort into something, I had gotten to about 25% or 50% of the way through and then completely lost interest – it was back to the doldrums and lack of motivation. Too many ideas in my head, not knowing where to start, and not wanting to go back to this other thing I’d started. It’s thoroughly demotivating – if you’re a perfectionist, like my wife, you may understand the feeling of not wanting to start something because of your fear of not being able to complete it. But I did find a way out.

Working with Seasons

You’re probably familiar with the term ‘creature of habit’ – humans are creatures of habit. I notice that most people like to have routines, they form habits around things without even realising it – the way they eat, drive a car, what they do on their weekends. I think I may be broken in some way (being raised by a diagnosed bipolar schizophrenic can do that) and I can’t stand routines or habits. Once I start feeling comfortable in something, it kind of makes me uncomfortable – like when you’ve been sitting in one position for too long. I constantly seek new things.

Then another amazing thing happened, I realised that my mind is like a seasonal worker.

Part of my problem was that I recognised this as unconventional, I hated that I couldn’t focus on just one thing to completion. I thought for the a long that it was a problem that needed fixing (I just didn’t have a clue how), but instead I started to come to another realisation about myself -and it started with acceptance of how my mind works.

Once I had accepted that this massive burst of focus was a thing, and that the next project I start I was going to work as much as I could, but accept the fact that I will eventually lose interest – I could in a way plan for it. I could ensure that whatever I’m working on, I build in plenty of notes and break points so that if I decide to come back again and pick it up – it would be easier to do as I had prepared myself.

Then another amazing thing happened, I realised that my mind is like a seasonal worker. I haven’t quite figured out the logistics yet – but like a farm, or tourist destination – I started to refer to see projects as seasonal of intense bursts of activity. Not only did that free me from the guilt of abandoning a project (instead it’s just the end of the season) it gave me the motivation I needed to pick up a new project and continue to do something. It also meant that I found myself returning to older projects that were once abandoned, because I’d given myself permission to return to that project from ‘last season’.

Teaching myself Discipline

If we were to view the journey of my own self improvement as kind of a project in itself – this last section would be the bit that I haven’t quite finished. I did intend to write one post which would go into some of the methods and tools I use to avoid procrastination and inject some discipline, but I guess the writing took a different direction and I’ll have to do a follow up.

It is of course no good simply just to give oneself permission to engage all kind of projects and abandon them willy-nilly – all that will produce is clutter in your life and in your thoughts. So along with the freedom of treating my mind like a seasonal worker, it also means understanding seasons are cyclical. I give myself a break to leave a project for a season – but that means that I will come back to it. I haven’t got this perfected yet, but in the case of writing books for example (I have written a whole library of 1st chapters), the season is ‘writing’ and therefore rather than start a new book, a new story – I must return to the old one. By forcing myself into this seasonal mindset – I did manage to publish one book, I managed to self study and certify in ITIL Foundation, and I managed to start a company. I am currently the closest to finishing a new fictional novel than I have ever been and the company will be bringing out an online text editing platform soon.

So it’s like a bargain I’ve made with my grey matter – it gets to be a seasonal worker –  I get to determine the seasons in a way. In the next post I’ll follow up with some of the methods and tools that I use to keep myself on track.

New Startup – Traversys

I once asked a friend who had ran a few businesses in his spare time how easy it was to start up a company. He told me it was very easy, cost as little as £10. I was a bit taken aback. I’d always wanted to start a business, and had a few ideas here and there, but I was held back by my thoughts and fears about all the costs, the legal mumbo jumbo and how to market.

For many years I’ve had ideas for solutions, integrations that I’ve developed for my employers (sometimes in my own time) in order to solve a specific problem I was having. I wasn’t asked to do it, I wasn’t sponsored to do it – I did it because I needed something. The problem is that once you build something for your employer – the intellectual property becomes theirs – despite the fact they never commissioned it (and in some cases they don’t even care).

The best I got for my contributions was sometimes a pat on the head, the worst, would be that it was completely ignored or not understood. I can’t say what’s more frustrating but what I can say is that I’m ready to end those frustrations.

Fast forward a few years, and I’ve decided to partner with a long-time friend and start Traversys.

From now on, the tools that I need are going to be built on our own time, with our own hardware, and with free license for us to use them in our employment. Crucially, the IP will be owned by Traversys – and in many cases will be Open Sourced.

My friend was right. Starting your company is actually very easy, but starting a company when your business partner lives overseas, and you intend to keep working the day job (which influences and funds your ideas) is not.

The chance of success is there, but more importantly this is about finding a place for our ideas to become tangible products, that others may find useful, and be prepared to pay for.

Mixing history, food and drink in London

If you enjoy discoverying little known historic locations and also places to eat and drink, Etain attempts to combine the two by creating a directory of London bars and restaurants where historic events took place.

I recently did some work for the owner of Etain using data taken from English Heritage and cross referencing it with Foursquares venue data.

Shall definitely be using this site next time I have to entertain friends in London!

Copy Files to Pogoplug Without The Pogo Software (using scp)

I recently picked up a Pogoplug on sale from John Lewis and thought I’d give it a whirl with my media.

Although it is a neat little device, one of it’s biggest benefits is also it’s biggest flaw in terms of design – and that is how it requires you to sign into pogoplug.com and maintain an account there. It also requires you to mount the pogoplug with their software for transferring and viewing files, rather than acting as a NAS.

Whilst it’s nice to have easy access to media outside of home (without having to fiddle with setting up port forwarding on your firewall and whatnot) it’s a bit of a drag when you’re on your own network. I noticed a severe performance degradation copying media to my pogoplug device using pogoplugfs rather than through a standard means. So I learned that Pogoplug does appear to have a Busybox install and along with that SSH access. In order to enable SSH access, Cloud Engines have been gracious enough to allow this through your my.pogoplug.com portal. You simply go to Security options and enable SSH, and change the password. From there it’s just a simple,

ssh root@<pogoplugIpAddress>

The problem is that there doesn’t seem to be any support for sftp and therefore I couldn’t use ssh in a file manager. Thankfully however ssh provides scp protocol and from there it was just as short script in order to zap files across over local lan without worrying about signing in.

When you attach an external harddrive to the Pogoplug, your files will be installed in a directory similar to ‘/tmp/.cemnt/mnt_sda2/’ where ‘mnt_sda2’ will be the mount point of your media device.

Be aware this script utilises “expect”, but you could use private keys instead.

ppsend.sh:
#!/bin/bash
#set -x
# Provide a list of media extensions to send to pogoplug
extensions=("mp4" "avi" "mkv" "jpg");
ppip="192.168.1.10" # The local ip address of your pogoplug
echo ""
echo "Sending video files to PogoPlug ($ppip) for the following extensions..."
for ext in "${extensions[@]}"; do
echo ${ext}
done
echo ""
for ext in "${extensions[@]}"; do
 expect -c "spawn bash -c \"scp -p *.$ext root@$ppip:/tmp/.cemnt/mnt_sda2/\"
 expect assword ; send \"mysshpassword\r\"; interact"
done

I think the next step for this is to translate it to another language and wrap it up in a GUI for easy access. So watch this space perhaps.

Live Backup of Minecraft

I use Minecraft on Linux, occasionally I find java crashes whilst I’m playing and I lose my world save. I think it has more to do with some buggy hardware currently than the OS after a discussion I had with someone in meatspace.

Anyway, yeah, no matter what’s at fault, losing a Minecraft world is no pleasant thing, so I created the following script to incrementally backup whilst I’m playing. I run it from my home directory:

#!/bin/bash

# Live backup of the game for java crashes
# Author: Wes Fitzpatrick

if ! [ -d .minecraft_live_backup ]; then
 cp -pr .minecraft .minecraft_live_backup
fi
if ! [ -d .minecraft_current_session ]; then
 cp -pr .minecraft .minecraft_current_session
fi
mv .minecraft_live_backup .mc_last_session`date | awk '{ print $1 $2 $3 $4 }'`
while true; do
 rm -fr .minecraft_current_session && cp -pr .minecraft .minecraft_current_session
 sleep 120
 rm -fr .minecraft_live_backup && mv .minecraft_current_session .minecraft_live_backup
done

What this does is first backups up your current .minecraft folder, so your last game is preserved, then creates two alternate backups. One is your current (minecraft_current_session) up to the last 2 minutes of play, the second is the previous current (minecraft_live_backup) in case the failure occurs during backup.

I’ve tested the backup copies and both work in event of a crash. This means rather than losing the entire castle, I’ve only lost the last few block placed.

Using PrivatVPN on Ubuntu Linux

After the Hide My Ass fallout and niggling doubts about AceVPNs logging policies, I’m trying out some recommended VPN services I found via TorrentFreak. The great thing about VPN providers is most of them allow you to purchase a limited time from 1-12 months, I decided to try out PrivatVPN who state apart from username and password, they don’t log anything.

PrivatVPN appears to be a small outfit operating out of Sweden offering servers in Sweden, US, UK, Switzerland and the Netherlands. I can’t tell if they are owned by anyone or just hosted by iLandsgruppen however their service is very barebones, with a small control panel, software download and instructions. The service is relatively cheap to – about £4 for 30 days.

They technically don’t have a Linux client, only configuration files to download, which seem to be outdated. Unlike that ‘other’ OS – where they offer a full client and countries to connect to, Linux only contains the address of their Swedish server and the wrong port number (21003). I found this out after the OpenVPN connection not working on Ubuntu so instead fired up my Windows VM just to see if it worked and it did. A quick gander at connection logs showed me the different port.

I notified their tech support, but for anyone who had problems like me with the following error,

read UDPv4 [ECONNREFUSED]: Connection refused (code=111)

Here are the correct IP address and Port numbers to connect to PrivatVPN servers. Let’s hope they update their documentation and config files:

Sweden: 80.67.10.138:21001
US: 108.59.1.216:21000
UK: 83.170.109.247:21000
Switzerland: 31.7.62.130:21000
Netherlands: 85.17.122.222:21000

PrivatVPN provide instructions for starting from the CLI, however if you prefer the GUI (I do purely for the networking icon to remind me I’m connected with a tiny lock) simply follow these steps:

  • Go to Network Manager, VPN Connections, Configure VPN…
  • Click on Import
  • Navigate to “/etc/openvpn” and select “privatevpn.conf”.
  • Then add your username and password
  • Check the IP address is the same as the one above and the port no. (under “Advanced” option)
  • You may want to configure multiple vpns so change the name too, to something like “PrivatVPN Sweden/US/UK…”
That’s it, you’re done. Enjoy your anonymity and freedom!

First Minecraft Skins – Superman Mother Box and Doomsday

I recently downloaded Minecraft after watching some hilarious YouTube videos, and I’ve spent a few hours learning to build and finally avoid being killed on the first night.

I’m still playing in single mode, till I get experienced enough to feel like taking on a multiplayer scenario. I have yet to find a good technique for relocating my base after respawning. Everyone says build a compass but I haven’t managed to craft that far yet.

Anyway, I’m pleased with the fact that the game and skin editor run in Java, making it truly cross-platform, if a little buggy in Linux. I’ve also been reading Superman: Doomsday The Aftermath and have been influenced by the costumes for my first 2 skins:

Superman with Mother Box Armor

Doomsday Minecraft Skin

Not bad for a first attempt? I’ve uploaded them to Skindex, so just search for wafitz.net to find them.

I kind of enjoyed creating the skins more than playing the game… maybe I’ll do some more.

Converting Duel Boot Windows 7 Partition to a VM

I recently got a new replacement work laptop with Windows 7 installed. Despite the great desire to shrink it and put a more mature and stable OS on to use, I decided to give Win 7 a shot – that and I needed to use the laptop right away so I didn’t have an immediate choice.

Well after a month of use, Windows 7 was already showing the signs that it was going the way of its predecessors in growing exponentially, slow boots and sloooow shutdowns… I heard Ubuntu calling.

You see, Linux takes a while to get used to when you come from a Windows background, things aren’t done the same way, but after time you realise this new way of doing things makes much more sense and takes much less time. So when you go back to Windows after a few years in Linux, you feel like you’re taking a step back in time – to slower, less advanced OS, where a problem can’t be fixed unless you are prepared to fork out a lot of money for a proprietary app that you’re only ever going to need to use to solve that one problem.

It was time to stop the rot and cage Windows 7, I still needed it for Outlook and Exchange (well until Crossover can support 2010) but I don’t need 90% of that operating system. I had done plenty of duel boots before but I wanted to try my hand at turning my Win 7 partition into a VM, and despite the ubiquity of home-brew tutorials out there on the web, I had to turn to several for different problems I experienced along the way. I’m documenting the steps here completely, and will provide attribute the relevant tutorials that helped.

Step 0: Backup

It needs to be said, it needs to be done. I always hate using Windows Backup and sometimes opt to use a Linux live CD to do the backup instead, guaranteeing I can view the process. I usually just make sure that documents are saved, I’m not worried about settings as these can be reset. This time I used Windows backup to an external HDD which seemed to work adequately enough.

Step 1: Shrink Windows 7 Partition

Although it’s not recommended, I always found GParted to be a trouble-free tool and never had a problem with it, so I booted into an Ubuntu Live CD and fired it up. I was then presented with a disk that had no less than 4 partitions. One was a boot partition, one was recovery, the other I couldn’t tell, and the final one was Windows 7. Here is where I made my first mistake, I got cocky and deleted the Windows boot partition thinking I could restore the boot record later with a recovery disk – it seems Microsoft have made that process much less efficient along with making partitions a lot more complicated than necessary.

Anyway, don’t delete the boot partition, but if you do, then here’s what to do:

The first problem I had was that Windows 7 wouldn’t boot I had the following error:

“autochk program not found, skipping autocheck”

Some Googling brought me to a Microsoft Answers post.

  • Use your recovery CD or download one if you got a crappy OEM pre-installed system – Neosmart have some links and instructions for torrent files.
  • Boot into recovery and then when you get to the System Recovery Options screen, you can choose the automatic System Repair option but I’ve never found it any use so go straight to Command Prompt.
  • Run the following command to check your disk for errors and fix them (where x: is the drive containing your Win 7 install):

CHKDSK x: /F /R

  • Once that runs restart the computer.

In my case chkdsk didn’t work and I still got the error, so the next thing I attempted was to attempt to use bootrec to fix the mbr.

  • Boot back into System Restore, go to the command prompt and run:

bootrec /fixmbr

then
bootrec /fixboot

then
bootrec /rebuildbcd

In my case after the last command I got the following error:

“total identified windows installations 0”

Exporting the bcd didn’t work either:

bcdedit /export C:\BCD_Backup
c:
cd boot
attrib bcd -s -h -r
ren c:\boot\bcd bcd.old
bootrec /RebuildBcd

So I attempted the following fix to this following the instructions from Neosmart again, Recovering the Bootloader:

x:\boot\bootsect.exe /nt60 all /force
del C:\boot\bcd
bcdedit /createstore c:\boot\bcd.temp
bcdedit.exe /store c:\boot\bcd.temp /create {bootmgr} /d "Windows Boot Manager"
bcdedit.exe /import c:\boot\bcd.temp
bcdedit.exe /set {bootmgr} device partition=C:
bcdedit.exe /timeout 10
del c:\boot\bcd.temp

But I didn’t get that far because I didn’t have a bootsect file, so I had to do a bit more digging and found a better solution halfway down this thread. These are just the steps, but more detail about why we do this is in the original post.

First of all I seemed to have some kind of corruption in my filesystem telling me that the c:\boot\bcd file didn’t exist, except it was there, when I attempted to copy memtest.ext to BCD it said that a file already existed. This is where the Live CD came to the rescue:

  • Boot into Linux live cd.
  • Mount your Windows 7 partition.
  • Navigate to /Boot
  • Delete the ‘BCD’ file.
  • After a startup repair your original BCD file is renamed to BCD.Backup.0001.
  • Copy memtest.exe memtest.exe.org.
  • Copy BCD.Backup.0001 memtest.exe.
  • Rename memtest.exe to BCD.
  • Rename memtest.exe.org memtest.exe.
  • Now reboot Windows.

In my case, this solution finally worked and I got Windows working again. Now for virtualisation…

Step 2: Virtualising Windows 7 Partition as a VM

I followed instructions given by Rajat Arya on his blog, apart from the 5th step which didn’t work without some slight modification as I had installed VirtualBox v4.0.4 from http://www.virtualbox.org/, not the Open Source Edition.

These are just the steps, Rajat goes into more detail in the post which is worth reading:

You need to take ownership of the disk first under your username. The original way stated is to chmod the /dev/sda file but this is less secure.
sudo usermod -a -G disk wafitz
Then log out and back in to make the changes take effect. Next install the mbr package:
sudo apt-get install mbr
The -e flag below is to set the partitions you wish to make available to Windows boot, so in this case I set 1 (Windows partition) and 2 (recovery).
install-mbr -e12 --force ~/vm.mbr
Then create the vmdk file. I found that the -relative flag didn’t work, neither did the -mbr flag, but it was fine with these left out:
VBoxManage internalcommands createrawvmdk -filename /home/wafitz/wind7part.vmdk -rawdisk /dev/sda -partitions 1,2 -relative
Now create your VM in VirtualBox and boot into Windows 7. If you get a boot error, you’ll need to do Windows recovery again. Set the VM to mount your CD drive then press F12 at startup and boot into recovery… and follow through on Step 1 of this post again.

Now I installed VirtualBox tools and with Seamless mode, I’m able to Outlook as a full-on desktop app within Ubuntu.

Netbabble Podcast Episode #6: The Digital Economy Bill #debill (12/04/10)

Our latest Netbabble podcast is available over at netbabble.com. In this one we discuss the controversial Digital Economy Bill recently passed into UK law.

There’s a lot I didn’t get to say about this one, but I hope I made my feelings clear. It’s a bad law, and it’s already ineffective since not only is it possible to cover your tracks almost completely whilst file-sharing, pirates are already working on new technology – just as BitTorrent rose out of the ashes of Napster.

The sooner big media dies or gets a new business model the better. I look forward to the future where non-commercial sharing is legal and treated the same as the sneakernet.

Netbabble Podcast Episode #5: Geosnatching (05/04/10)

Mike and WesOur latest Netbabble podcast is available over at netbabble.com. This one is titled Geosnatching.

I discuss a concept for a new game with Mike, and why it’s a bad idea to integrate it with geocaching! I use lot’s of umm‘s and y’know‘s.