Let's pretend for a second that you're a rogue statistician with nothing to lose. Maybe you were a vinyl record company's top stats guys until one day your devil-may-care graphing methods got someone hurt, and they let you go. Maybe you wanted to get back at them for that. Putting aside your once-valued code of ethics (because what good has ethics ever done?), you spend a few minutes gathering some data and begin.


Source: Vinyl - IFPI yearbook, Temperature - NOAA data center.

And there you have it, a statistical correlation based on real data suggesting vinyl sales are causing global warming. A correlation like this is completely meaningless, but it'll get the newspapers going. And you're not done. It's not enough that vinyl must fail, its competitors must succeed. Vinyl competes with digital music. You decide to combine that with the irrefutable knowledge that everyone likes kittens.


Source: Digital Music - ARIA figures, Kittens - Google Trends.

You decide that you're having so much fun with this that you branch out a bit. You've always liked that chap in the whitehouse, so you want to help him out a bit. Maybe if more people looked up to him as a hero. As they would a Man of Steel, perhaps?


Source: Obama - UCSB, Superman - Google Trends.

Feeling satisfied with your work, you decide to get a victory coffee in celebration. You go down to your local cafe but Bentley, the owner, tells you that they've increased their prices by five cents. You should have known not to trust anyone named Bentley. In fact...


Source: Bentley - Name Trends, Coffee Prices - Gilkatho.

You knew it!

Correlated Lies
My point is, of course, to treat correlations with a grain of salt. In light of the media's coverage of recent tragedies it's good to remind ourselves that even if there's an apparent link between the incident rates of two events, its nothing more than coincidence without a causal link to go with it. Any statistician can manipulate data to tell the story that they want to tell. None of the data used here has been altered, just framed in a way to 'prove' a certain hypothesis. Numbers may not lie, but people do.

Posted by | Comments: None

Categories:

Microsoft's marketing team have been working very hard lately to convince the tech world that it's wrong to dislike Internet Explorer. According to them we're just trolls, mindlessly repeating vitriol from the past. Apparently IE is good now, and we'd agree if we just gave it a chance. If only we weren't so closed minded!

Wow, it's like they really know me!

And by most measures it seems to be working. IE's market share has seen a steady increase over the last few months, up 0.37% in the last month alone. Many tech sites have admitted surprise at the improvement that IE has seen in its latest versions. So is Microsoft's PR right? Is it finally time to forgive and forget?

Humble Beginnings
For a bit of context, let's take a look back to where things started going wrong. It's often forgotten that for a long time IE was considered the best browser you could use, and Microsoft were real innovators in the web space. Netscape was the market leader so Microsoft needed to innovate to compete, which they did. IE3 was the first browser to give us support for CSS, and IE4 was the first with DOM access, for example. The competition meant that web technology was progressing quickly, and at that point things seemed promising.

Of course, we all know what happened next. In a move that would later result in that antitrust case, Microsoft leveraged the dominance of their Windows platform to effectively win the browser wars for them. They did this by bundling IE with windows, which history has shown gave IE a major edge in the market. They integrated it into the kernel, which gave it access to undocumented APIs that gave it an inherent advantage over any third-party competition. Further, restrictive licenses with OEMs meant that attempts to alter IE's prime position in the OS were met with threats of license termination. Competing with this proved too difficult for Netscape and by 2002 IE's market share had increased to 96%.


A Monopoly Can Be A Dangerous Thing
With no threat of competition, innovation was no longer a priority. IE6 was far from perfect at release, and fixes that should have come quickly and continuously never did. The years that followed are known amongst developers as a kind of Dark Age for the web because of how web and browser development essentially came to a stop. When given control of the market, they showed that their business interests took priority over the continuing evolution of the web. The win for Microsoft had meant a loss for the user.

The biggest problem with IE was that it compromised security in ways that shouldn't have been possible. The kernel integration they added meant IE had an advantage with response times and system resources, but it also meant that it could be used as an attack vector to get to the kernel. And worse, when those security problems were discovered they went unfixed for years, and Microsoft sued websites that listed them.

Standards also fell victim during that time. Every web developer alive has felt the pain of spending hours getting a page to look good, only to check it in IE to find an unrecognisable mess. IE's rendering differed from the W3C standard, meaning developers had to choose between designing for IE or designing correctly. Their javascript implementation was incompatible with W3C standards, as was their java implementation. For a long time it felt as though Microsoft wanted to march exclusively to its own beat. This is probably the main reason for the lingering dislike of IE amongst techies; its inconsistencies meant huge increases to project development time. You would write some code, then have to rewrite it with fixes for IE.

The same page rendered in Opera 8 (2005), IE6 (2001) and IE7 (2006).

That stagnation continued for years. It wasn't until Mozilla began to eat away at IE's lead that they decided to try to make things right, but even then their effort seemed half-hearted. Their next version, IE7, proved only a slight improvement, despite coming 5 years later. IE8 wasn't much better. If at that point Microsoft had begun leading the charge when it came to emerging web technologies then they most likely would have held onto their majority market share. Unfortunately that just didn't happen, and steady competition from Firefox (and later Chrome) resulted in them falling below 50% in 2009-10.

IE was in trouble, and IE9 was their response. It was the first version not to be tied to the release of a new version of Windows, and to developers it was also the first version that showed promise. It offered real, tangible improvements over previous versions, like hardware-accelerated rendering, stronger malware protection and a new, much faster javascript engine. With IE9 Microsoft showed that when given the proper motivation they could innovate like they did when Netscape was around. IE9 was proof that it wasn't a lack of talent or resources that had been the problem, it was a lack of legitimate competition.

All In The Past?
None of this answers the initial question, though. If all we're concerned about is using the best browser available, shouldn't we be evaluating IE as a standalone product without considering its history?

Well, yes and no. There's a bigger picture here, and it would be irresponsible not to consider it. When Microsoft had the majority market share the evolution of the web went on hold in favour of their bottom line. While that's less likely to happen today it's still a very real threat. Windows certainly won't be going anywhere soon, and as long as that's the case IE's huge userbase won't be either.

On the other hand, Microsoft now seem to have a genuine desire to make IE the best browser available again. While it's no secret that's ultimately motivated by money, we can't ignore the benefit that a motivated and enterprising Microsoft brings. As a developer, the improvement that IE10 has delivered over previous versions is just plain inspiring. If that can continue, we may yet see a day in which web developers are no longer haunted by IE in their sleep.

Benchmarking from Lucidchart in November showed IE10 almost as fast as Chrome.

It seems that all we can do is wait and see how the next few years play out for Microsoft. If IE were to become good enough that techies no longer felt obligated to switch browsers, I feel we'd be in serious trouble. It's happened before, like when Microsoft entered the antivirus market a few years ago. Amongst tech communities they quickly became the standard recommendation for antivirus software, but not because they were noticeably better than their competitors. They became the standard because their product was good enough to do the job and was available for free for all Windows users. What if IE were to become good enough?

Ultimately, determining whether or not it's worth the risk seems to be a personal choice. It's becoming obvious that IE is becoming a competitive browser that will only get better as time goes on. That's a good thing for the user, but only if we have enough external competition to keep Microsoft in check. Let's hope that's always the case.

Posted by | Comments: None

Categories:

I'm going to start this post with something you probably don't want to hear: if you've googled this article then there's a good chance your drive is already a lost cause. It's unfortunate that SSD's don't yet come standard in every new computer, because the only thing reliable about today's drives is that they will reliably fail. Of course, there are a couple of things we can try before we give up. All may not be lost.

The Problem
Let's start from the beginning. Apple use a file system called HFS+ in OS X. HFS+ uses a catalog system to keep track of files and directories. That catalog is stored using a B-tree. An Invalid Node Structure indicates damage to this data structure. Damage likely caused by a failing hard drive.

Symptoms of this problem include an abnormally long boot time with frequent kernel panics, and then when OS X does manage to load it will be too slow to use. Eventually it'll refuse to boot at all.

Look familiar?

Step 1: Disk Utility
- Insert the OS X installation disk that came with your computer.
- Restart your computer, holding the C key as it turns on to tell it to boot from the installation disk. When the spinning disk appears you can let go. I've occasionally experienced problems with this process, so if this doesn't work hold the Option key and you'll get a menu to choose which disk to boot from.
- Select a language. When the welcome screen appears, go to the utilities menu and choose Disk Utility.
- Select the partition that OS X is on and click Repair Disk.

At this point it'll either fix the problem and you can go on as normal, or it'll throw an error and you should move on to step 2.

Step 2: File system check (fsck)
- Close Disk Utility
- Go to the utilities menu and choose Terminal.
- Enter 'diskutil list' to get a list of all the drives on your machine. You need to identify OS X and take note of its name (in the format 'diskNsN').
- Enter 'fsck_hfs -frpy /dev/diskNsN', replacing in the correct numbers.

If it tells you that the system cannot be repaired, go on to the next step. Otherwise, it will have fixed the problem with your file system's catalog, and you can go back into Disk Utility and click repair, and it will work.

Hope for a screen like this.


Optional: DiskWarrior
DiskWarrior is a commercial program that repairs problems with Mac hard drives. It's pricey but there are lots of reports of it solving this particular error. Thing is, the problem is almost certainly caused by a hardware fault, so it's likely that the best DiskWarrior can do is treat the symptoms of the problem but not the cause. In other words, you'll soon need to go through this process again, and again, and so on. If you're confident that your problem is not with your hardware, however, this would probably be a good course of action.

For detailed instructions, check Diskwarrior's documentation.

Step 3a: Data recovery
If fsck_hfs failed to repair your disk then we can safely assume it's beyond repair. The best we can do now is salvage your data, replace the broken drive and restore the data. The easiest way of doing this is with Apple's firewire target mode. If you don't have access to another mac or your computer doesn't have a firewire port, skip to step 3b.

- You'll need another mac with a firewire port (the host machine). Connect it to your broken mac (the target machine), which should be powered off.
- Turn on the target machine, holding down the T key as it boots up. This will start it in target mode.
- From the host machine, you should now have access to the target machine's hard drive. Save whatever data you need.
- When done, eject the target machine's drive and restart it. Go to step 4.

Step 3b: Data recovery without target mode
We can also recover the data on the disk using a Linux liveCD. We'll use Mint for this, because it's the most likely to have the relevant proprietary graphics card and wireless drivers for your mac.

- Burn the Live CD. Note: Make sure you're burning a bootable ISO and not just the data. In OS X this is done by opening Disk Utility, dragging the .iso file into the list on the left and clicking burn in the top menu.
- Boot from that disk by inserting it and holding C as the computer turns on.
- Once you're on the linux desktop, mount the OS X drive by opening the file browser and clicking it. Once mounted you should see it appear on your desktop.
- Next, open a terminal window. Type 'sudo nemo' to open a file browser with elevated privileges. From here, you can browse the mac disk and copy files from it. Alternatively, use 'sudo su' to get root access and go from there if you prefer the command line (note: you won't be able to access OS X's files without root).
- When done, restart your computer and the disk should eject automatically.

Thousands of photos and nothing but lolcats. Luckily they'll live to see another day.


Step 4: Replace the drive
Now that your data is safe, you need to look up the model of your mac to see how to replace its internal hard drive. That's well outside the scope of this article, but just know that it's not as scary as it seems. Try to make sure that the replacement is an SSD. If you're anything like me, this is not an experience you'll want to repeat.

Once you've replaced the drive, install OS X and migrate the data back. Once you've done that you'll be ready to go. Good luck.

Posted by | Comments: None

Categories:

« Older