I always preferred VirtualBox’s simplicity over the Enterprise class complexity of Windows 8 Hyper-V.
However, in order to get a working Windows Phone 8 Emulator working, you need to use Hyper-V.
Unfortunately when trying to do this, I got an error saying that the virtual switch could not be created. I tried some fixes from StackOverflow and ServerFault, but they didn’t work. I couldn’t create nay kind of virtual switch in Hyper-V. A common theme from my searching was that VirtualBox was involved.

Uninstalling VirtualBox manually didn’t help.
Looking in the registry, I noticed hundreds of network adapters with a VirtualBox driver (just search the registry for ‘vbox’)
I couldn’t delete these keys even with Admin privileges
Apparently I needed to run Regedit as ‘System’
THe easiest way to do this was using SysInternals Psexec

C:\Windows\System32\> psexec /i /s regedit

/i means ‘interactive’, or allow the program to display a UI
/s means run the program as the ‘system’ user

Because there were so many to delete, it was easier to export the parent key, edit in Notepad, then save as a .reg file and re-import.

After doing this, removing all references to ‘vbox’ and ‘virtualbox’ from the registry, deleting other invisible network adapters from the registry, running cccleaner, rebooting, removing Hyper-V from Windows, rebooting again, Adding Hyper-V to windows… I finally got my emulator to work.

Lesson: Don’t ever install VirtualBox, stick to Hyper-V (as long as you meet Microsoft’s bizarrely restrictive processor requirements of course)

 

Using my VIM config in Windows (gVim)

On 2014/02/03, in Programming, SysAdmin, by Greg Woods

This continues from my last post, and is mostly a reminder to myself!

My .vimrc file, created for VIM on the RaspberryPi, is also usable on gVim in Windows. It’s the same 2 steps, fetch using Git, and make a symlink (yes you can do that on Windows too)

Open an elevated command prompt (run as administrator)

cd \users\greg
git clone https://github.com/GregWoods/.vim.git vimfiles
mklink _vimrc vimfiles\.vimrc

Job done!

Update:

Older versions of Windows (such as Windows Server 2003) so not have the mklink command.
Also needed to add an environment variable $HOME

In the case of Windows Server 2003, I set up a user environment variable in System Properties -> Advanced -> Environment Variables -> User Variables
Variable: $HOME Value: %USERPROFILE%
Requires log off / login
Then create the link (it’s a hardlink rather than the softlink which mklink creates. For explanation, see overview-to-understanding-hard-links-junction-points-and-symbolic-links-in-windows )

fsutil hardlinks create _vimrc vimfiles\.vimrc
 

To VIM or not to VIM. The decades old text editor inspires avid devotion or utter hatred. I fell into the latter camp.

However, now that I’m experimenting with the Raspberry Pi for some hardware projects, it’s obvious I need something with more features than the nano editor. VIM pretty universal, will run in a terminal, or a non-GUI linux, and is undeniably fast editing once the steep learning curve is overcome.

So here are some of notes on VIM – particularly,setting up syntax highlighting with a nice colour scheme – a first step in making VIM palatable to my GUI insticts.

Colour Schemes

If I’d spent half the time learning VIM as I’d spent trying to customise the colours, I’d be a VIM Jedi already.

Good Schemes

http://www.vimninjas.com/2012/08/26/10-vim-color-schemes-you-need-to-own/

I particularly like solarized

On Windows (Putty)

If you want any chance of getting the genuine Solarized colors working in VIM through Putty, the colours in Putty must be changed.

The easiest way to do this is with this reg file which sets up some sensible defaults for Putty, including the solarized dark colours

You will need to recreate any existing sessions to get the new defaults

On The Raspberry Pi

Connect and login using Putty. Your shell session will already have the new colour scheme

sudo apt-get install vim
cd ~
mkdir .vim
cd .vim
mkdir colors
wget https://raw.github.com/altercation/vim-colors-solarized/master/colors/solarized.vim
vim
:e $HOME/.vimrc
i     (insert mode)
syntax enable
set background=dark
colorscheme solarized
:wq!      (save and close)

Now to add my VIM config to source control, we copy it to the .vim folder and symlink it first

cd ~
mv .vimrc .vim/.vimrc
ln -s .vim/.vimrc .vimrc
cd .vim
git init
ls -la         (shows hidden files)

Configure GIT
git config --global user.name "your full name"
git config --local user.name "your full name"
git config --global user.email "your email id"
git config --local user.email "your email id"
git config -l

still in the ~/.vim folder…

git add .
git commit -m "Initial commit of my vim configuration"
git remote add origin https://github.com/GregWoods/.vim

//had to do a git pull first
git pull https://github.com/GregWoods/.vim
git push origin master

 

My VIMconfiguration is now on github.

To install my Vim Config onto a new server…

cd ~
git clone https://github.com/GregWoods/.vim.git .vim
ln -s .vim/.vimrc .vimrc
 

 

 

When Free Goes Bad

On 2013/08/31, in Customer Service, by Greg Woods

We all love free stuff. Google mail, calendar, contacts, docs(drive), music. All superb free services. Dropbox, SkyDrive, UbuntuOne all add options for free cloud storage. Various other startups offer free services such as notes and picture storage. Free is appealing. But it’s risky, and as our dependency on these services grows, and the costs associated with running them goes up, we’ll see more and more either go to the wall, or start charging.

This week I got stung rather badly by the news that Catch.com – the ultra simple online note taking app, decided to “move in another direction”, and discontinue the service with only one month’s notice. Thankfully I can get my notes out, and import into another service. My problem is that I had spent a year learning, and developing a Windows Phone app that was 100% dependent on their API. Oh dear! That is a lot of wasted man-hours of work.

This is the second time I’ve been caught out by a free online service disappearing. I was an avid user of Google Reader before the plug was pulled. For those companies who keep their products, we are seeing a shift towards a pay model.

Now, I don’t mind paying for stuff to have a degree of certainty that the product will still be around in a years time. My big problem is the cost some of these companies charge. Apple may have introduced the idea of selling apps in bulk for peanuts, but the idea doesn’t seem to have caught on with most companies who are either too greedy, or too busy subsidising the free users, to charge a sensible fee. Dropbox are a prime example. Great product, but at $100/year for 100Gb, it is undeniably expensive. Yet I am more than happy paying Microsoft £32 ($48)/year for the same 100Gb. If I paid for the Premium versions of all the online services which I occasionally use, it adds up to a reasonable sum. Endomondo, Evernote, Dropbox, Google Apps. Most of these services are worth paying something for, but the pricing models are based on users who are using their product as a core part of their life. I don’t, so I won’t pay.

I can’t help thinking all these services would be cheaper if they weren’t giving so much away for free. To attract the customers, a more sustainable model may be to offer the full premium service for free for a long trial period. No more ridiculous 14 or 30 trials which are no use to anyone. No trial should be shorter than 120 days, and for something long term like online storage, make it a year – then make it cheap to sign up a t the end.

 

Living with the Nook HD+

On 2013/01/27, in Review, by Greg Woods

So, I got rid of my Kindle DX, which I decided was unsuitable for technical manuals. And due to Amazon’s culling of the product I made a nice profit on it on ebay, and snagged myself a 9″ Nook HD+ (used) for £135. How have I found using it for the last few weeks?

My Use Case

Although I did once find myself jealous of iPad-wielding friends with their fancy games and apps, this soon passed. I wanted a device for reading programming books. One that could handle PDFs as well as ePubs, and one I could look up additional info on the web before returning to the book. In summary, the Nook HD+ is a superb device for this. In some ways, not having access to the Apple or Android app stores is a good thing. There are less distractions. As to value for money, even at it’s full price of £239, it is great value. A little used one on ebay is unbeatable.

Strengths

  • The ‘retina’ class screen resolution
  • The large 9″ screen
  • Magazine-page-ratio is pretty good for books
  • Excellent PDF support, including table of contents
  • Good web browser
  • Locked down, so little temptation to tinker with it
  • ‘Resume reading’ icon always available
  • ArticleView on web pages is a nice touch

Weaknesses

  • Occasional browser bugs. Google Reader doesn’t always render well
  • Locked down, so tinkering with it is just more of a challenge (must resist temptation to root it)!
  • Most books show with black bars at the top and bottom of the screen. Usable screen is actually 8.2″ for many books
  • (The best aspect ratio for programming books is probably 4:3 – an iPad)
  • Pinch-zooming-in on a PDF doesn’t shrink those black bars. You instead immediately get a vertical scroll bar. A poor implementation of zoom
  • The only icons I use on the home screens are ‘Library’ and ‘Web’. It would be nice to be able to show entire folder contents on a home screen to cut down on navigation taps

Overall

It’s a great experience. I’m reading more, which is the real benchmark of success. Being able to quickly flit back and forth between different book pages, and the web is making the learning stick. An e-ink reader is totally unsuited to this form of reading.

How long will I keep it? Unknown. The more suitable aspect ratio of the iPad is tempting, but I will never shell out £399 for a reader. A iPad mini could win me over, if the screen resolution were  better. When the iPad mini with retina display comes out – as I’m sure it will –  it could sway me to the dark side.  The only problem then will be the temptation to use it for 1001 other things rather than catching up on all my nerdy reading.