John Smith's Blog

Ramblings (mostly) about technical stuff

Thoughts on Windows 8 Consumer Preview

Posted by John Smith on

Microsoft released a "Consumer Preview" of Windows 8 last week, and I thought I'd download it and take a look, as it's the first version of Windows that I've ever had any curiosity about, mainly due to the new Metro UI.

I've only spent a few hours playing around in a fairly aimless manner, so this is by no means a thorough review. In general, I agree with most of the points made in this Orlowski piece at The Register, but this post will cover a few things I found of note.

(Just for background, I'm far from being a Windows aficionado or regular user - whilst I have a desktop, laptop and netbook with Windows 7, those machines spend most of their lives running some form of Linux, whether natively via dual-boot, or in a virtual machine. With regard to the Metro UI, I've never used Windows Phone 7 - in fact, I've only ever seen it being used once in the wild - and I really don't like how it it has been implemented in the latest Xbox 360 dashboard update. In fairness, most of the problems I have with the Xbox 360 implementation are far more to do with how MS have prioritized ads and general media over games, which doesn't have anything do with Metro per se, and would easily be resolved if the dashboard was configurable.)

  • I've only tried Win8 in a VirtualBox VM running atop Windows 7. For some reason I'm only able to run it in a limited number of resolutions, none of which are the native resolution of my monitor. Not quite sure whether this is the fault of Win8 or VirtualBox - it's the first time I've used the latter, normally I use VMWare for all my virtualized environments. (In a similar vein, I was unable to get USB memory sticks or external hard drives to be recognized, and I don't know where the fault lies.)
  • The login page confuses the hell out of me. It's super-minimal, which isn't a problem, but most of the time when I click the mouse on the login screen, all that happens is that the screen scrolls up and then back down by about half-an-inch. The same happens if I double-click, long-click, middle-click or right-click. Nothing happens if I hit the Windows key (which is used heavily in Win8, see later point). I've just discovered that pressing the Ctrl key, or rotating the mouse wheel, brings up the password prompt - prior to that point I'd just been randomly moving the mouse around and clicking until I triggered some magical gesture. Screengrab of the Windows 8 login screen
  • MS seem to push you towards using authentication based on Windows Live/Hotmail/Microsoft Live/whatever-they-brand-it-this-week accounts. This isn't necessarily a bad idea, but one thing that I'm not a big fan of is that they suggest that people might want to create a Windows account with the same name as their regular email account. From my experience on a project using Google accounts, where we suggested people might want to create a Google account named "joebloggs@hotmail.com" or "fred@myisp.com", this just leads to user confusion, as people mentally associate a particular account with a particular service. (Theoretically the same should apply to stuff like Amazon accounts, but the same issue doesn't really apply for various reasons. Probably something for a different post...)
  • MS seem to be really pushing Metro over the "traditional" Windows UI, but I'm really not sure how it's going to scale. I did a completely clean install, and just added Firefox, Opera, Safari+QuickTime and TortoiseSVN, and already the Start screen is full of crap and has more items than will fit on screen at once: Screengrab of Windows 8 start screen Note that in the above shot, I'd already reduced some of the boxes that default to double width (such as Weather and Calendar) down to single width. I'm not sure why the "packer" automatically moved some items into the space that was freed when I did that, but hasn't moved Music - the items can be manually dragged, but it seems odd that it sometimes works automatically and sometimes not.
  • That "submenu" items such as those for TortoiseSVN or Apple Software Update have appeared in the top menu seems incredibly lame. Again, they can be manually removed from the Start screen, but (a) I don't know why users should have to manually get rid of all the crap that a newly installed application might have added without asking, and (b) I'm not sure how easy it would be to find/restore such deleted items. (There doesn't seem to be any sort of application specific context menu associated with each box.
  • Metro applications launch full screen, and have no window controls. This meant that I was scratching my head trying to work out how to escape from an application. In the end I had to resort to a Google search, and found that (a) I wasn't alone in being confused, and that (b) the answer is to press the Windows key. I imagine the proper version of Windows 8 will have some sort of introductory tutorial that explains this to new users, but I foresee a lot of confused people stood at demo units in PC World wondering what the hell they're supposed to do next...
  • By comparison, losing the "start" button in the regular UI is actually less painful than I was expecting - with one caveat. I'm sure that it'll probably be fine on a regular desktop, but as I've had to run Win8 in a VM in a window much smaller than my overall screen, the experience was a tad fiddly.
  • One other minor point about Metro pushing the Windows key - MS seem to be very pleased with the new Windows logo they've come up with, and compared to some of the gouge-your-eyes-out rebranding monstrosities that come out, I'd consider it perfectly OK. However, they're up against millions (billions?) of existing keyboards that are sending a very different message about what the Windows logo is. If I had to tech support over the phone to non-technical people such as my parents, I'd expect to have to describe to them what "the Windows key" is, and the first description is "it looks like a flag", which the new logo doesn't.
  • Probably the most useful thing for me in Win8 is having IE10 to test. As yet, I haven't actually used it very much, so I don't know how comparable it is to the rest of the browser market. (Personally I consider IE9 a very weak release, far behind the rest of the pack - probably closer to Firefox 2 than 3. The summary page at caniuse.com agrees with me.) What is a bit odd though, is that in many ways there are two IE8 browsers: the one for the "traditional" Windows UI, and the one for Metro. Screen grab of IE10 browser running in the 'regular' Windows UI on Windows 8 Moving the browser chrome down to the bottom in Metro is a non-issue. Moving the "forward" button to the far right, rather than being adjacent to the "back" button, and losing the "home" & "bookmarks" buttons, are very questionable. But refusing to play Flash content on a machine that has Flash installed and working is absolutely batshit insane. Screen grab of IE10 browser running in the Metro UI on Windows 8 As an avowed Flash-hater, on one level I do want to welcome yet another nail in its coffin. However, this puritanical refusal to do something that the machine/OS/browser is clearly capable of, seems very user-hostile. I was aware that Flash and other plug-ins were not going to be available in some versions of Windows 8, but I'd assumed it was just going to be the ARM/mobile versions, which makes perfect sense. I guess that MS have decided though that they want to try to have a consistent experience across all Metro platforms, which is admirable in some respects. But given the failure though of non-iPad tablets, I would expect the ARM/mobile part of the overall Win8 user base to be a drop in the ocean for the foreseeable future, so making the experience worse for the 9x% of people on desktop/laptop machines just so the tiny fraction of people on ARM/mobile don't feel left out, strikes me as misguided.
  • There are also a few other "WTF?" things with IE10, that I've not personally experienced, but which are documented here. I do find it telling that that piece is (at best) neutral in tone, whereas Thurrott is normally "rah rah, isn't this great" about the vast majority of stuff that MS do...
  • Not that I was expecting anything, but the continued absence of any bread-and-butter tools like ssh or even telnet is very lame. I suppose that they are too Unixy for MS, and they'd rather not let on that there's an alternative to the world of Windows out there ;-)

Obviously, this is just a preview release, and it makes sense for MS to try out new ideas that might not work out, and which they can easily pull in the official release. Certainly Metro looks nice, and feels less cliched than OS X's brushed steel. (Although given that I mostly use Linux and Xfce, and turn off desktop wallpapers, fancy transitions (e.g. compiz) etc, my opinions on aesthetics probably shouldn't be paid too much heed ;-) Personally, it offends me far less than GNOME 3, the 2011 Google redesign, or OS X Lion - but that's probably because I don't have any great investment in the world of Windows. I do think that such radical changes for a product such as Windows are very "brave", but that's a subject I might elaborate on in another post, as this one is already more than long enough.

The saga of getting Fedora 14 running on a Dell Mini 10 netbook - part 3 of several

Posted by John Smith on

I pretty much stick to Fedora/Red Hat/CentOS for my primary Linux machines, and just use VMs when experimenting with other distros. This isn't due to any intrinsic brilliance in the Red Hat way of doing things; it's more a case that I'm familiar with how those distros are organized, and can quickly get them configured in a way that I want.

However, whilst the puritanical approach of not including binary/non-free drivers is to be admired, it's not necessarily ideal when it comes to getting a working OS on a machine which might have some 'unusual' chipsets, and many laptops and netbooks fall into this category. As such, I thought it worth installing Ubuntu, due to its more 'pragmatic' approach - I'd previously installed Ubuntu on an Asus EeePC and had encountered no problems.

Trial-running with Ubuntu running from the USB drive was basically fine, so I took the plunge and installed it on the netbook's hard drive, repartitioning the existing Windows XP installation. N.B. at this point in time, I didn't realize that Dell had things up with separate boot and backup partitions, as documented in the previous post.

The hard drive install was fine, other than the expected caveats of not running in the native resolution, and not having fully functional networking - if memory serves, wired Ethernet worked, but not wifi. However Ubuntu popped up an alert asking if I wanted to download the binary drivers for these, and soon all was running happily.

That release of Ubuntu though was around 5 months old, and so it seemed prudent to upgrade the installed packages to their latest versions - big mistake. On reboot, the login prompt (gdm I guess) wouldn't respond to keyboard or mouse. Attaching an external USB keyboard did get it to respond a bit more, but I was unable to get it allow me to enter a username or password. Trying the Ctrl-Alt-function keys to get a non-X11 prompt wasn't any use either.

Ubuntu had created some 'safe-mode' style booting options in the GRUB menu, but these were no good either - booting would halt with some error message I've forgotten, long before getting anywhere near a loging prompt. After faffing around for a while, and failing to find anything useful on Google, I decided to reinstall. However, the Ubuntu installer seemed to be a bit confused, and only offered me the choice of repartitioning the already-repartitioned WinXP disc, not to overwrite the borked Ubuntu install.

At this point I decided to give up on Ubuntu, and try Fedora instead. Before doing this though, I had the forethought to check beforehand how exactly the disk was partitioned. (If I'd done this before starting on this whole process, it would have probably saved a lot of time and stress...)

The hard drive was split up as follows (this was the first time I'd realized there had been more than just a single Windows filesystem originally):

  1. The tiny Dell boot partition
  2. The main Windows XP partition
  3. The Ubuntu partition I wanted to get rid of
  4. The Dell restore partition
What I'd like to have done prior to attempting to install Fedora, was to restore the machine back to its factory state, but this wasn't possible - the Ubuntu installer had rewritten the MBR, circumventing the Dell boot partition that would have given me this option. In retrospect, I should have backed up the MBR with dd before installing Ubuntu, which would have now allowed me to restore it via a live distro running from a USB drive.

Worse, Ubuntu's installer not creating a separate /boot filesystem meant that the whole boot process - even for Windows XP - was dependent on this Ubuntu filesystem I wanted to get rid of. (Fedora does create a separate /boot by default, so it's easy to get rid of the main Fedora installation with no impact on the prior OSes.) Possibly I could have restored an MBR from a different machine, but given the non-vanilla Dell configuration, I had doubts that this would be problem-free.

In the end, I decided that the only real option was to go ahead with installing Fedora, and hope that it wouldn't make any more of a mess than was there already...

The saga of getting Fedora 14 running on a Dell Mini 10 netbook - part 2 of several

Posted by John Smith on

Continuing on from the introductory post in this series...

This post is really only of relevance if you intend to retain the original OS and dual-boot - if you're happy to obliterate all traces of Windows, then you can happily skip this one.

I'm not really up on current best-practice for PC vendors, but traditionally I'd expect a new machine to ship with the hard drive fully formatted with a C: drive, whether FAT32 or NTFS. However, this Dell netbook appears to have the disk split into three partitions, as follows:

  1. A pretty tiny 'Dell Utility' filesystem
  2. The actual Windows NTFS, taking up the bulk of the disk
  3. what purports to be a CP/M (!) filesystem, containing (presumably) an image of Windows XP that can be reinstalled. As I haven't used it, I've no idea if this is a vanilla install, or if it has the specific drivers for this machine pre-baked in
Here's how fdisk -l reports these filesystems; note that this was run after I'd created a Linux partition, hence the end of the NTFS filesystem not matching the start of the CP/M one. /dev/sda1 1 5 40131 de Dell Utility /dev/sda2 * 6 11643 93478796+ 7 HPFS/NTFS /dev/sda3 18184 19457 10233405 db CP/M / CTOS / ...

The machine isn't currently powered up, so I can't check the exact figures, but I'd made a backup of these files, and the first partition has just 9.7MB of files, the backup partition has 4.1GB - I'd assume the partitions are only slightly bigger. (By the way, both Ubuntu 10 and Fedora 14 seemed quite happy to mount these filesystems, despite their slightly obscure formatting.)

What I'm guessing is the 'Dell Utility' filesystem is like a /boot Linux filesystem with grub or lilo on. It would seem to look for some key being pressed at boot time - F8 judging by various pages on the net - and if so, runs some restore process using the images on the CP/M filesystem. (Note that F8 itself doesn't seem to be picked up by the BIOS, which only mentions and responds to F2 and F12.) Unfortunately, all this is a guess, because neither the Ubuntu 10 nor Fedora 14 installers seem to recognize the true nature of these filesystems! :-(

What happens is that the installers detect the existing XP install, and when they configure the bootloader, give the choice between booting Linux or Windows - and by Windows, I mean the OS on the NTFS filesystem, not the Dell Utility stub. As such, while XP boots up happily, it seems that I've now lost the ability to restore the system to the factory default using the Dell tools. Whilst I don't have any plans to do this, it would be nice to have the option.

In retrospect, what I should have done was to first back up the MBR using a live distro, which in theory would allow me to undo any "damage" inflicted by a Linux installer - or a regular reinstallation of Windows for that matter. As I've never actually restored an MBR, I don't know if various pages on the net are accurate, but the commands seem to be: # create a backup file called sda-mbr.bin in /tmp dd if=/dev/sdX of=/tmp/sda-mbr.bin bs=512 count=1 and # restore the backup file dd if=sda-mbr.bin of=/dev/sdX bs=1 count=64 skip=446 seek=446

At some point I'll do some experiments with the grub configuration to see if it can be coerced into booting either of these extra filesystems - but for the most part, I've given up on any expectation that they ever be usable again.

As a postscript, this information may not be applicable to newer Dell netbooks. Some page I read - this one perhaps? - mentioned that when the restore stuff is running during the boot process, it briefly flashes up some white text on a blue background. I do recall seeing something like this on this netbook, but it doesn't do it now, which makes sense given the mangling of the original boot sequence. However, my 11" Celeron/Win7 Dell doesn't flash this up at all, so whether they're doing something different now, I don't know. I'll probably do some digging with the aid of a live distro on it, but right now I'm still more interested in getting this 10" machine fully up to speed.

In the next exciting installment, I'll bitch about Ubuntu...

The saga of getting Fedora 14 running on a Dell Mini 10 netbook - part 1 of several

Posted by John Smith on

Amongst my ever growing, never diminishing, pile of hardware are a couple of 1-2 year old Dell netbooks - an Atom based 10" with Win XP Home, and a Celeron 11" with Windows 7. I never had any special plans for either of these machines, they were mainly bought because they were amazingly cheap - the 10" was £209 in Autumn 2009, the 11" £229 in Summer 2010, both of which were around £50-100 less than the going rate for comparable hardware at the time.

Since getting the 11" machine, the 10" has had pretty minimal use. Even with a supposedly "low-end" OS like XP Home, the crummy CPU coupled with 1GB of RAM means it's a pretty chuggy experience - probably not helped by the mountains of pre-installed crap that Dell shoved on it. (The Win 7 machine was much, much cleaner in this regard.)

Now, I do have an Atom based desktop machine running Fedora 11, and that's perfectly usable for the most part - albeit with a slightly better spec Atom processor, but with the same 1GB of RAM. As such, it seemed to make sense to look at getting Linux on the unused netbook, which might give it a bit more regular workout. Both of the netbooks have had a few distros installed within VMWare, but unsurprisingly they don't run that great, performance-wise, but I'm hopeful that Linux running natively should be a decent experience.

The last time I installed Linux natively on a laptop was around 2004/5, and whilst I was happy with how it run, I never got the wifi working. In all honesty, I don't think I actually spent much - if any - effort trying to fix it; I was quite content to use a wired connection. However, the experience made me wary of expecting too much by way of Linux compatibility on laptop hardware; hence why I've generally stuck to running distros within VMs, and letting the underlying pre-installed OS worry about the hardware.

Also, I'm loathe to ever get rid of the originally installed OS on any machines I buy, so I run them as dual-boot. I don't think I'd ever had much of an issue on this before now, but that was before I encountered the mysterious of Dell's restore functionality...

All this blather is leading up to a series of posts I'm planning, that document the trials and tribulations of doing what in theory should be a fairly straightforward task - getting a modern, well-establish and widely used Linux distro (Fedora 14) running on what would seem to be fairly mundane, well understood and supported mass-market hardware (Dell netbook). Unfortunately, this isn't the case :-( Most or all of the areas I'll cover in this series is documented on the net, but it's all rather disjointed, so hopefully I can collate it all here for any other lost souls who set on this path.

To be continued...

Paste and don't go

Posted by John Smith on

One of the nicest minor tweaks in the latest versions of Chrome, Opera and Firefox is the "paste and go" option in the right-click context menu when you copy a URL into the address bar. Safari is on a much slower upgrade cycle though, so you would have to follow pasting the URL by hitting enter to actually load it.

This wouldn't be too bad, except that the Windows version of Safari has a bug. Try the following:

  1. Load some arbitrary page
  2. Copy and paste a different URL into the address field using the r-click menu (not Ctrl-V!)
  3. Hit enter
Rather than load the new URL, Windows Safari goes back to the original URL - unlike its OS X version and every other Windows browser. (It does do the right thing if you paste via Ctrl-V though.)

Now, I guess the usage figures for Safari on Windows are pretty pathetic in the overall scheme of things, so not many people will care. I personally don't use it that much either, but the main use-case I have is when testing pages in multiple browsers (or if I want a "clean" environment without cookies from prior testing) - and C&Ping; URLs into the address field is the main way of doing this...

I've submitted this as a bug via the Safari option, but as Apple don't seem to have a public issue tracker - unless this is part of the WebKit tracking? I haven't checked - I'm just blogging this now to have a record of the issue for posterity. Hopefully they'll follow the pack and add a "paste-and-go" option, making this bug moot.

Windows ClearType makes Droid Sans look worse

Posted by John Smith on
Zoomed examples of rendering of Droid Sans upper-case C in various browsers/operating systems, using the default type rendering

TypeKit have recently posted a piece about font rendering in various browsers/operating systems that has inspired me to investigate something I'd noticed recently.

This blog uses Droid Sans for the headings. On Linux and OS X, this looks fine, as does Windows XP. On my Windows 7 machine however, it looks pretty horrible - the tops and bottoms of Cs are particularly bad, really jagged.

To work out why, I did rendered some test HTML using a couple of different fonts on several browsers. Here's an example, showing (from left to right)

  1. Firefox 4 beta on Linux (Fedora 11)
  2. Safari on OSX
  3. IE9 on Windows 7
  4. Firefox 3.6.11 on Windows 7
  5. Firefox 3.6.11 on a MacBook running Windows XP via Boot Camp

Examples of Helvetica/Arial/sans-serif and Droid Sans in various browsers

The four lines of text are. in turn:

  1. Helvetica/Arial/sans-serif lower case
  2. Helvetica/Arial/sans-serif upper case
  3. Droid Sans lower case
  4. Droid Sans upper case

(There's no difference between IE9 beta and Firefox 3.6.11 on Windows 7 in the image above, that I can see, but apparently they should be using different rendering technologies.)

The root cause turns out to be the different font rendering technologies used in various versions of Windows:

  • XP defaults to "Standard", which is regular anti-aliasing, with options for ClearType (sub-pixel rendering) or no aliasing at all (the latter being really horrible to look at.)
  • Win7 gives a choice of ClearType being on or off. Turning it off seems to be the same as "Standard" in XP, although I'm not 100% certain on that
It's not an issue with sub-pixel rendering per se, as Mac OSX uses it - but it looks like OSX is much more subtle about how it does it.

Arial looks better in Win7 with ClearType on, as does the Windows "system" font, so I wonder whether there's an issue with hinting, and/or font designers tweaking fonts to best cater for the underlying font technology?

On other thing that might be worth mentioning, if you're playing with the font rendering in Windows, various browsers react differently when you change the settings:

Firefox, OperaChange takes effect instantly
Chrome/IronChange takes effect when page is refreshed
SafariChange takes effect when browser is restarted
IE9No change - you are stuck with ClearType/DirectWrite, whether you like it or not

About this blog

This blog (mostly) covers technology and software development.

Note: I've recently ported the content from my old blog hosted on Google App Engine using some custom code I wrote, to a static site built using Pelican. I've put in place various URL manipulation rules in the webserver config to try to support the old URLs, but it's likely that I've missed some (probably meta ones related to pagination or tagging), so apologies for any 404 errors that you get served.

RSS icon, courtesy of www.feedicons.com RSS feed for this blog

About the author

I'm a software developer who's worked with a variety of platforms and technologies over the past couple of decades, but for the past 7 or so years I've focussed on web development. Whilst I've always nominally been a "full-stack" developer, I feel more attachment to the back-end side of things.

I'm a web developer for a London-based equities exchange. I've worked at organizations such as News Corporation and Google and BATS Global Markets. Projects I've been involved in have been covered in outlets such as The Guardian, The Telegraph, the Financial Times, The Register and TechCrunch.

Twitter | LinkedIn | GitHub | My CV | Mail

Popular tags

Other sites I've built or been involved with

Work

Most of these have changed quite a bit since my involvement in them...

Personal/fun/experimentation