Archive for the ‘tech’ Category

microsoft curveballs

First SQL Server for Linux from a few weeks ago, now Bash for Windows 10 from Microsft Build this morning. Really unexpected!

I’m not a developer by any stretch of the imagination, but with the little I do, I think Bash would be useful. Even though Cygwin is good, something baked into the OS just feels right. (And it befuddles me why certain really basic packages are not installed by default in Cygwin; I guess I’m not power user enough to appreciate the customisability).

To be honest, I like developing in Windows. I feel its more manageable than Linux and less restrictive than OS X for development.

aeneas vagrant

Trying to get aeneas-vagrant in VirtualBox on Windows 7 to run has been a bit of a trial-and-error nightmare. Even though many tools in this toolchain are open source and cross platform (supposedly), Window’s idiosyncrasies and strange incompatibilities occurred at multiple points.

Below are the instructions of how I got this to work on an AMD processor (certain issues encountered along the way may be due to an AMD bug!) running Windows 7 Enterprise 64 bit (yes, lets just be super explicit, because 32bit and 64bit mattered in the case of getting Cygwin to work with everything else!)

  1. Install Vagrant (legacy build 1.5.4)
  2. Replace curl.exe in c:\HashiCorp\Vagrant\embedded\bin with this version of curl
  3. Install Cygwin (latest 32bit build), make sure to install ssh and rsync packages.
  4. Git download aeneas-vagrant as per the project readme
  5. (edit Vagrantfile included with aeneas-vagrant directory and add ‘config.vm.boot_timeout = 3000’. This was necessary for my aging AMD processor to not timeout).
  6. Open Cygwin, navigate to aeneas-vagrant directory, input ‘vagrant up’.

Vagrant will do a whole host of things, including downloading a distro debian/jessie64, setup logins and ssh private keys, rsync some folders, bring up the virtual machine with debian/jessie64 into, and then do a whole heap of downloads and setup within debian (colour should be green by this stage). But this will end in an error in debian: something about lxml failing because gcc can’t find a library -lz

  1. Input ‘vagrant ssh’ to log into debian.
  2. Once in debian, input ‘sudo apt-get update’ (this’ll take a while)
  3. Input ‘sudo apt-cache search zlib’ (this’ll bring up a whole heap of results)
  4. Input ‘sudo apt-get install <results-that-looks-the-best>’ (I picked ‘lib32z1’ & ‘lib32z1-dev’ for the <results>)
  5. Input ‘sudo pip install aeneas –upgrade’

Voila! aseneas-vagrant should be now setup and working. Try the instruction of running aeneas as per the project readme, it should finish executing.

However, the shared drive between VirtualBox and your Windows PC will not work just yet. This means you can’t access the output of the aeneas process (which is in VirtualBox) from your PC. And unfortunately debian can’t mount VirtualBox drives (type vboxsf) without some more configuration.

  1. Insert ‘config.vm.synced_folder “./data”, “/vagrant_data”‘ into the Vagrantfile included with aeneas-vagrant directory. This links ‘data’ directory on your Windows PC to /vagrant_data in debian.
  2. Create ‘data’ folder in the aeneas-vagrant directory
  3. At aeneas-vagrant directory in Cygwin, input ‘cygdrive/c/HashiCorp/bin/vagrant.exe plugin install vagrant-vbguest’ (using ‘vagrant plugin install vagrant-vbguest’ generates a SSL error; something to do with the vagrant shellscript not using the right executable; so we specify directly the right vagrant.exe).
  4. Input ‘vagrant up’
  5. Input ‘vagrant ssh’ (now in debian)
  6. Input ‘sudo ln -s /opt/VBoxGuestAdditions-4.3.10/lib/VBoxGuestAdditions usr/lib/VBoxGuestAdditions’
  7. Input ‘exit’ (back in Cygwin)
  8. Input ‘vagrant reload’

Now everything should work. ‘vagrant ssh’ into debian again and input the command ‘python -m aeneas.tools.execute_job ../../usr/local/lib/python2.7/dist-packages/aeneas/tools/res/job.zip /vagrant_data/’ – this should generate a zip file in /vagrant_data/ and therefore in aeneas-vagrant/data on your Windows PC.

Acknowledgement: couldn’t have troubleshoot this without the contributors in the following forums:

  • https://github.com/mitchellh/vagrant/issues/5016
  • https://github.com/mitchellh/vagrant/issues/4073
  • https://github.com/mitchellh/vagrant/issues/4073
  • https://github.com/mitchellh/vagrant/issues/3341#8
  • https://github.com/mitchellh/vagrant/issues/5091
  • http://stackoverflow.com/questions/9979870/installing-zlib-in-linux-server

windows 10 tablet mode annoyance

Having tried a Surface Pro 3 for both work and leisure, I’ve come to the conclusion that Windows 10 is more schizophrenic than being 2 great superheroes in 1.

For work: I couldn’t work out how to access the desktop in Tablet Mode. And that is significant because the desktop is a shortcut space for me to access folders and short-term files (e.g. PPT to show at the work conference).

And for the love of everything sacred you cannot find anything online because ‘desktop’ happens to be the name of other Mode in Windows 10 – so any search just returns oodles of results about the ‘great’ feature of being able switch between Tablet and Desktop Mode.

For leisure: as previously mentioned, Windows 10 doesn’t pop-up the onscreen keyboard for Firefox (yet) automatically; sure, not entirely the fault of Microsoft, as Mozilla probably hasn’t updated Firefox to be fully conformant to Windows 10 – but still, its annoying.

cold storage

Yes please! Hopefully some retailer like Officeworks will have pay-per-disk backup stations with these burners for people to archive their photos and videos.

good NAS proposition for home

With constant-sync freely available for the really important files on the cloud (e.g. work docs), the question of how to store the occasional-access important files (e.g. archives of old photos) remain.

Storing these in the constant-sync cloud is too expensive, yet glacial services offered by Amazon is not user/consumer friendly enough. Backup-all-services like Backblaze is great for that anomalous disaster but doesn’t facilitate occasional-access.

I think a dual local medium strategy is sufficient. One copy on your primary computing device, and another copy on an external harddisk. The primary computing device is important enough – and an external harddisk is cheap enough – for the inertia to replace to be very low. Hence it is fair to assume that there will for most-of-the-time be two copies of the data.

The Synology RT1900ac is good value proposition for consumers to further make this external harddisk accessible – for both backing up and occasional-access of the files. A home can have a low-powered NAS for not much more money than what one would spend on a router already.

One of the issues with this strategy is storage on the primary computing device as we take more videos, especially when SSD that are becoming more popular in laptops still lags mechanical drives in capacity-to-price ratio. Perhaps another external harddisk instead of relying on the primary computing device is the solution, but I also think backing up on two harddisks has much higher inertia.

el capitan

Took the plunge with El Capitan on a late-2011 MacBook Pro 13″ (4GB RAM and original HDD). Had concerns that the upgrade might need a SSD. But apart from some sporadic microscopic delays, all seems well. Yeehaa!

windows 10

Not sure why, but I don’t like Windows 10. But its hard to explain why, and it might not be even Windows 10’s fault.

  1. On-screen keyboard doesn’t pop up automatically for Firefox, but does for Edge (Surface Pro 3 in tablet mode). One assumes because Edge is an Universal App?
  2. Traditional Chinese keyboard doesn’t display candidate list automatically; you have to press down-arrow every time to see the complete list. That is 1/4 to 1/3 more keystrokes per Chinese character!
  3. Pressing the touchscreen for any action (e.g. close windows, ‘Ok’ button etc) has a minute but discernible lag, especially if you are used to an iPad. Two finger touchscreen scrolling is great though. Does this lie with Win10 or Surface Pro 3?

Or maybe I’m just a grumpy old man set in my ways. I will seriously mourn the day Microsoft stops supporting Windows 7.

windows update as metric

Its finally finished. Windows Update has been calculating which updates to apply since 9am. So that’s more than 6 hours to calculate – now comes the actual update part.

Fair enough, this is a fresh reinstall of Windows 7 on a relic of a CPU: AMD Athlon x2. But its desktop class and not RAM constrained.

I reckon Windows Update should be the real-world metric to assess how fast a system is. Sure, this way of measuring has a big flaw, since new updates are constantly available so updating at different times will produce different results. Regardless, it’ll still be a good-enough rough measure of how a system would perform for the average person using the PC in real life.

using a surface pro 3

I’m typing this using a Surface Pro 3 with Type Cover – on loan from work. Initially I had doubts about its ‘lapability’, but after using it tonight on the couch whilst watching TV, I’m convinced that it can work as well as a traditional laptop.

Coincidentally I spent about a half hour in the Microsoft Store frantically typing on one laptop after the other. None of them had a good enough keyboard in my opinion. The Type Cover I’m using at the moment is heaps better in terms of travel and key size.

However, the track pad on the Type Cover is quite small, and still not as responsive as MacBook’s implementation; using it to scroll puts my wrist at a weird angle that will no doubt cause problems in the future. But that’s when the Surface’s actual screen comes in handy – once I remember that it is indeed touch enabled.

All this prompted me to fill out the ThinkPad Retro surveys. Having used all these keyboards (MacBook included), I’m really hoping for an ultrabook ThinkPad that has the Trackpoint and the classic keyboard.