Monthly Archive:: May 2014

How to continue getting free security updates for Windows XP

Microsoft has stopped providing XP users with security updates, forcing them to either upgrade to another, newer operating system, or gamble with their safety. While the latest usage figures show that a large portion of users are moving away from XP, there's still a sizable number of users who aren't - or can't.

If you're an XP user, or know some XP users, there's a trick which makes it possible to receive security updates for the aging OS for another five years - right up until April 2019.

I have a better solution. No registry hacks required!

Original Galaxy Gear now being updated to Tizen

Samsung has begun rolling out an update to the Galaxy Gear that will bring over Tizen, the company's in-house OS, to the smartwatch. The update carries software version 2.2.0, and while the entire OS will be replaced, most users won't notice any visual differences. However, quite a few improvements and new features are to be had - improved performance and battery life, features such as an standalone music player (you can store music on the watch itself), customizable shortcuts for tap input, voice commands in the camera, among others.

I'm still waiting on the Tizen phones Samsung has been promising for years. Even though it's essentially 'TouchWiz OS' (in other words, cringe-worthy), it's still an alternative operating system I would love to play with.

Genode 14.05 with new ports management, block-level encryption

The just released Genode version 14.05 comes with new tools that greatly improve the interoperability of the framework with existing software. Together with a new process-local virtual file system embedded in the C runtime, this change should clear the way to scale Genode well beyond the current state. Besides these infrastructural changes, the release comes with a new block-level encryption facility, enables USB 3.0 on x86, introduces SMP support to the base-hw kernel, enables real-time scheduling on the NOVA hypervisor, and adds guest-addition support for VirtualBox on NOVA.

After the feature-rich release 14.02, the Genode developers took the chance to thoroughly revisit the tooling and overall structure of the framework. The goal was to improve its scalability with steadily growing amount of third-party software combined with the framework. Genode-based system scenarios combine the work of up to 70 open-source projects. However, until now, the framework lacked proper tools to manage such third-party code in a uniform way. In particular, upgrades of third-party software were poorly supported. To overcome those problems, the project took the wonderful Nix package manager as inspiration, created a set of new tools, and reworked the build system to make the porting and use of third-party software much more enjoyable and robust.

Most ported 3rd-party software relies on a C runtime. Genode offers a fairly complete libc based on FreeBSD's libc. However, translating the POSIX API to the Genode API is not straight forward. For example, Genode does not even have a central virtual file system service. Hence, different applications call for different ways of how POSIX calls are translated to the Genode world. Until now, the different use cases were accommodated by specially crafted libc plugins that tailored the behavior of the C runtime per application. However, as the number of applications grew, the number of libc plugins has grown too. In the new version, the framework consolidates the existing libc plugins to a generic virtual file system (VFS) implementation. In contrast to a traditional VFS that resides in the OS kernel, Genode's VFS is a plain library embedded in the C runtime. To the C program, it offers the view on a regular file system. But under the hood, it assembles the virtual file system out of Genode resources such as file-system sessions, terminal sessions, or block sessions. Since each process has its own VFS configured by its parent process, the access to resources can be tailored individually per process.

In addition to the infrastructural changes, the new version comes with plenty of platform-related improvements. Genode's custom kernel platform for ARM devices named base-hw has received multi-processor support and a new memory management that alleviates the need to maintain identity mappings in the kernel. The NOVA microhypervisor has been adapted to make static priority scheduling usable for Genode. Thereby the kernel becomes more attractive for general-purpose OS workloads on the x86 architecture. Also related to NOVA, the project has continued its line of work to run VirtualBox on this kernel by enabling support for guest-additions, namely shared folders, mouse-pointer synchronization, and real-time clock synchronization.

In line with the project's road map, the new version features a first solution for using encrypted block devices. The developers decided to use NetBSD's cryptographic device driver (CDG) as a Genode component. One motivation behind the use of CDG was to intensify the work with the rump kernel project, which allows the execution of NetBSD kernel subsystems at user level. After the project successfully used rump kernels as file-system providers with the previous release, extending the use of rump kernels for other purposes was simply intriguing.

These and more topics are covered in the comprehensive release documentation for Genode 14.05.

Typography in 8 bits: system fonts

My love of typography originated in the 80's with the golden years of 8-bit home computing and their 8x8 pixel monospaced fonts on low-resolution displays.

It's quite easy to find bitmap copies of these fonts and also scalable traced TTF versions but there's very little discussion about the fonts themselves. Let's remedy that by firing up some emulators and investigating the glyphs.

I've been looking at a lot of these 8bit fonts because of recent emulation efforts. I'd like to throw Visi On's fonts into the fray, too.

Review: DuckDuckGo compared to Google, Bing, Yandex

The competition between Google and DuckDuckGo proved to be surprisingly fierce. In many respects the tiny DuckDuckGo holds its own against the giant that is Google, and even more so if the user is willing to slightly manipulate the search query to work around DuckDuckGo's temperamental intelligence layer. So it is heartening to see that DuckDuckGo is a viable alternative to Google by its own merits. But the elephant in the room here is Google's extensive tracking of user data. For that reason many users will staunchly avoid it on moral grounds, and for them the natural recourse is DuckDuckGo. Fortunately for them, it's a really great choice. In my case, privacy is not a primary concern. But having a top-notch search engine is. That's why I set DuckDuckGo as my browser's default search engine, and here's hoping it stays there for a long time.

I tried the 'new' DDG as well since it came out, setting it as my default search engine. Sadly, my experience wasn't as positive - it simply didn't find the things I was looking for about 80% of the time. Within a few days, I got into the habit of simply adding !g to every search query to go straight to Google anyway since that gave me the results I was looking for.

DDG's interface and presentation are far superior to Google's, but in the end, it's the results that matter, and not the coat of paint they're covered in. I do agree with the author's note about Google always - infuriatingly always - leading with YouTube video results on every damn query. So annoying.

Apple confirms its $3 billion deal for Beats Electronics

Apple, the company that turned digital music into a mainstream phenomenon, said on Wednesday that it was buying Beats Electronics, the rising music brand, for $3 billion, in a move that will help it play catch-up with rivals that offer subscription-based music services.

I still have no idea why Apple is buying these guys. Then again, that's probably why I'm not a billionaire.

Coincidentally, I find it highly entertaining that technically, this is now an Apple product.

Lisa Pascal development in Lisa Workshop

As a follow up to this and this story - Steven Troughton-Smith goes a step further.

Tonight's project: learn how to write code that runs on Apple's LisaOS. In this piece, I am using Lisa Office System 3.1, with Workshop 3.0.

As you can imagine, there hasn't been any kind of documentation on this in decades, so it was all learned through painful trial and error, and scouring old manuals for information. Fun!

The Apple Lisa emulator

I'm more or less assuming all of us are familiar with the Apple Lisa, Apple's and Steve Jobs' first attempt at turning Xerox PARC's work into a marketable product. It was a flop, but many of its ideas carried over onto the Macintosh, and in fact, Macintosh development took place on the Lisa.

Due to the fact few Lisas were sold, it's hard to get your hands on a working model, meaning most of us will never get the opportunity to actually use one. Luckily, there's a very advanced Lisa emulator available, written by Ray Arachelian. It's open source (GPL) and available for Windows, Linux, and Mac OS X. Setting it up is remarkably easy (there are non-hqx Lisa operating system files too), but do note that technically, you need to own a Lisa yourself in order to use the ROMs. But, of course you do.

The Lisa user interface takes a bit of time to get used to, as its terminology is a bit alien, and some things feel quite a bit arbitrary from our modern, harmonised perspective. For instance, it took me a while to figure out how to open a new file in the Lisa office applications; it turns out that you need to double-click a special kind of icon ('stationary'), which the Lisa calls 'tear off stationary', which creates what to me looks like a copy of said stationary icon. This icon is the actual new file; double-click it to open it.

I'm having quite some fun poking around the Lisa, and the emulator has been holding up perfectly - no crashes, and it's remarkably easy to use. I would definitely advise giving this a go if you have some spare time.

Compile 68k Mac applications for System 1.1 in OS X 10.9

Like most of you, I've always wanted want to code and compile 68k Mac OS applications in OS X that work on System 1.1. This question kept me up night after night, but thanks to Steven Troughton-Smith, we now know that it is, indeed, possible. It started with a 68k application on System 6. Not long after, he managed to compile a simple application that worked on System 1.1. This test application's code is available on github.

This is possible using ksherlock's MPW Emulator, which, as the name implies, is an emulator that allows you to run the Macintosh Programmer's Workshop on any OS X 10.9 system (a case-insensitive HFS+ volume is required).

I'm glad this matter has been settled. In all seriousness, while the number of useful applications for this is probably limited, it's still very cool.

Clive: new operating system based on Plan 9 design

On May 23 Francisco J. Ballesteros announced a new operating system on the 9fans mailing list. Clive is influenced by the Nix (not to be confused with NixOS) and Plan 9 operating systems, featuring "zx" - a universal resource access protocol conceptually similar to Plan 9. The system is written in a modified version of the Go language.

More details are available in the design paper and in the manual.

The state of the Apple developer ecosystem

The 10 hours in a metal tube between London and San Francisco provide for some great thinking space. The flights to and from WWDC last year as every year offered plenty of time to take stock of where things are, what could be, and on the way back what it all means. With all the focus on iOS 7's new aesthetic, understandably the "iOS 7-only" mantra was top of everyone s minds. But as I sat in sessions eagerly watching talks about all the new technologies on iOS, something bigger struck me. Something that's taken almost an entire year to fully analyse.

An incredibly detailed look at the state of iOS and OS X development. Grab a drink.

My Trip to GNOME: a 3.10 Review

Remember back when GNOME and KDE dominated Linux desktops? Seems like a long time ago, doesn't it? Yet it was only three years ago, in April 2011, that GNOME 3 was released. Its radically redesigned interface shook up everyone. Some eagerly adopted it. Others left GNOME.

In this brief review I take a fresh look at GNOME today, as it's currently distributed in several popular Linux distributions.

New Windows 8.1 SKU: Windows 8.1 with Bing

As we move forward, many of these lower cost devices will come with a new edition of Windows called Windows 8.1 with Bing. Windows 8.1 with Bing provides all the same great experiences that Windows 8.1 offers with the Windows 8.1 Update, and comes with Bing as the default search engine within Internet Explorer. And of course customers will be able to change that setting through the Internet Explorer menu, providing them with control over search engine settings. This new edition will be only be available preloaded on devices from our hardware partners. Some of these devices, in particular tablets, will also come with Office or a one-year subscription to Office 365.

Windows 8.1 with Bing is exactly the same as every other Windows 8.1 SKU - except for the fact that OEMs cannot change the default search engine - users still can, though. The price for OEMs will be lower, which makes me wonder why on earth OEMs would go for the other SKUs.

The secret history of hypertext

Historians of technology often cite Bush's essay as the conceptual forerunner of the Web. And hypertext pioneers like Douglas Engelbart, Ted Nelson, and Tim Berners-Lee have all acknowledged their debt to Bush’s vision. But for all his lasting influence, Bush was not the first person to imagine something like the Web.

This actually reminds me a lot of how contemporary technology media look at smartphones and such. They often have little to no experience with the breadth of mobile technology that came before the iPhone and Android, and as a consequence, they treat everything as new, revolutionary, and 'owned' - even though virtually everything has been taken from somewhere else.

Neo900 progress update

As Friedrich Nietzsche famously said, "what doesn't kill you makes you stronger". We feel that the Neo900 project is gathering strength after all the twists and turns it experienced. We're looking forward for the future with more optimism than ever, taking lessons from our past mistakes.

The Neo900 project is seeing some major organisational difficulties, which takes resources away from the actual technical stuff. Progress on that front is still being made, though, and this update details some of it.

The desktop and the developer

I was at the OpenStack Summit this week. The overwhelming majority of OpenStack deployments are Linux-based, yet the most popular laptop vendor (by a long way) at the conference was Apple. People are writing code with the intention of deploying it on Linux, but they're doing so under an entirely different OS.

But what's really interesting is the tools they're using to do so. When I looked over people's shoulders, I saw terminals and a web browser. They're not using Macs because their development tools require them, they're using Macs because of what else they get - an aesthetically pleasing OS, iTunes and what's easily the best trackpad hardware/driver combination on the market. These are people who work on the same laptop that they use at home. They'll use it when they're commuting, either for playing videos or for getting a head start so they can leave early. They use an Apple because they don't want to use different hardware for work and pleasure.

Apple's laptops are still the best PCs money can buy at the moment (despite their horribly outdated displays). It's no wonder Linux developers, too, favour them.

DuckDuckGo gets complete redesign, new features

Everybody's favourite not-Google search engine - DuckDuckGo - has received a complete redesign and a whole slew of new features.

Today DuckDuckGo is launching a reimagined and redesigned version that focuses on smarter answers and a more refined look. This new version adds often requested features like images, local search, auto-suggest and much more.

Compared to today's Google, it looks incredibly clean, and the new features - for once - do not get in the way of the stuff that was already there. It must be hard to redesign and add new features to a search engine that is more or less known for being the opposite of Google, but I think they have managed to pull it off.

The Arrakis research operating system

Arrakis is a research operating system from University of Washinton, built as a fork of Barrelfish.

In Arrakis, we ask the question whether we can remove the OS entirely from normal application execution. The OS only sets up the execution environment and interacts with an application in rare cases where resources need to be reallocated or name conflicts need to be resolved. The application gets the full power of the unmediated hardware, through an application-specific library linked into the application address space. This allows for unprecedented OS customizability, reliability and performance.

The first public version of Arrakis has been released recently, and the code is hosted on GitHub.