May 25

Despite being an open-source stalwart, I’m ashamed to admit that I’ve always had something of a love-hate relationship with Apple. In the ’80s, I owned – and still do own – an original Apple IIe along with a real hard drive and two 5.25in floppy drives. It was inherited from the video shop that I worked in, and I put it and its immense customer database to all kinds of nefarious uses. But eventually I moved on to the upland pastures of colour displays, 880kB of storage on a 3.5in disk and four-channel sound. All thanks to Commodore.

In the ’90s, Apple’s expensive and closed hardware meant that an upgrade was never on the cards. This was now the world of Windows, of cheap hardware and modular upgrades. It was the time when Microsoft solidified its dominance, and the time that many of us were looking for a more open alternative. Developing applications on Windows was expensive, especially if you wanted to share the source code. That left us with only one option: Linux. And I’ve never looked back.

But I’ve continued to follow, and occasionally invest in, the progress of Apple, especially in recent years. The move to Intel and a BSD-based operating system has made OS X eminently more hackable, and Linux-
based open-source applications are far easier to build and port to OS X than they are to Windows. This has helped make the venerable MacBook Pro one of the most common laptops in use at open-source and Linux conventions, despite Apple’s obsessive control of the hardware. Apple, for many, has become an acceptable compromise for those who believe in free software but still want a machine that can resume from hibernation without the need to build a custom kernel.

But it’s the iPhone, and now the iPad, that has built a brick wall of division between what most of us are willing to ignore, and what Apple hopes will become their ultimate cash cow. Both are the result of a singular, draconian vision, the antithesis of what the open-source community represents. This isn’t a bad thing in itself, especially when the results leave a lot of free software products wanting. The interfaces of iPhone apps tend to be refined, simple and intuitive. The apps are consistent, responsive and cheap. Our parents could use an iPad without fear of viruses, malware and updates. For almost all the same reasons I’ve been telling them to switch to Linux, they can now switch to Apple for about the same cost.

But doing so is a pact with the devil, because you’re forgoing technical complexity in exchange for loss of freedom. This is the reason for Richard Stallman’s GNU manifesto. And while there’s little doubt that Apple’s enforced gateway to new applications has helped to make it a success, it’s this subtle trade of simplicity for complicity that is perhaps the biggest threat to free software in 10 years.

My fears were proven when Apple recently changed clauses 3.3.1 and 3.3.2 in its developer’s agreement, stopping programmers linking to third-party APIs. Its motivation may have been to halt apps using Adobe’s new Flash-based building tools, but it could also stop applications using open source-based frameworks such as MonoTouch and SDL. Apple refuses to clarify what will and will not be allowed through its vetting procedure. Presumably Electronic Arts games will still be allowed to use the LUA scripting engine, for example, while many independent developers aren’t going to know whether their approach is acceptable until they submit their app for review.

This type of business plan shows the very worst of what closed-source development has to offer, and exactly what open-source software blossomed to combat. But we can’t fight it with rhetoric and positive spin while our hardware and applications aren’t as good as those from closed systems. Public development and public scrutiny should lead to a better, more usable and more stable product. It worked for Linux servers and desktops, but it hasn’t worked for mobile devices yet. This is the challenge for free software developers.

It’s going to be tough, but this point in time probably marks the biggest opportunity for free software to prove its worth. It’s going to be a simple battle between closed, proprietary development on a single platform, and open innovation on open hardware. Open-source developers need to rise to the challenge or face a future that will be closed to collaboration, community and conscience.

May 25

The ThinkPad X100e is Lenovo’s first professional-grade ultra-portable laptop starting below £400. It’s one of a new category of PCs for today’s business users that blends professional performance, usability and design with new colour options at an extremely affordable price.

The X100e also represents the first time Lenovo has offered AMD processors on ThinkPad laptops. Equipped with your choice of an Athlon Neo single or dual-core processor or a Turion dual-core processor, the X100e provides the performance needed for multitasking and running demanding office apps. It also has the power necessary to support corporate-level OSes like Windows 7 Professional.

The X100e weighs in at under three pounds, and is incredibly comfortable to use. An 11.6in highdefinition display provides ample screen real estate, and an ISO full-size keyboard with a multitouch touchpad and Trackpoint make navigation easy.For wireless connectivity on the go, the laptop comes with 802.11n Wi-Fi and optional Bluetooth and 3G.

After-purchase care comes in the form of ThinkPad Protection, which covers repairs resulting from accidental drops and spills. ThinkPlus Priority Support provides 24/7 business-class technical support for IT professionals. Lenovo Hard Disk Drive Retention lets customers keep their hard drive in case of damage or failure, ensuring that their data remains safely in their hands.

The ThinkPad X100e is available now through Lenovo Business Partners and www.lenovo.com, with models starting at £380 plus VAT. Alternatively, you can enter this competition for a chance of winning one. Good luck!

Click here for your chance to win a Lenovo ThinkPad X100e

May 18

Seize the moment! There’s no time like the present when it comes to harnessing every ounce of performance from your labouring computer.

Here’s the shocking truth: dubious default settings, wrong configurations and wasteful processes are sapping many of your PC’s valuable resources. And what’s to blame? Windows. Windows is deceptive. After you’ve installed it, the OS happily connects to the internet, downloads all the necessary drivers, configures itself and there you go – one stable PC all ready to roll. It couldn’t be easier or more convenient. But the problem is, Windows doesn’t come optimised for performance. And it’s much the same story for most of your applications: they’re all set up to work, not roar along.

So what’s the answer? We say take control and don’t trust Windows’ default settings. Sure, they’ll yield a machine that is stable and dependable, and to a degree that’s the point. That’s what the average user wants, and it’s what Microsoft and PC makers need. By keeping configurations nicely conservative they’ll keep PCs the world over ticking along happily and calls to their technical support divisions low.

But we PC Plus types aren’t average users. We’re demanding users who want to squeeze every drop of performance out of our computers. So, join us as we declare war on default settings and automatic configurations. Take control of your PC and release its full potential!

Remove processes

A good first step when speeding up your system is to identify and remove the processes that are currently wasting its resources. Windows runs a slew of processes by default. Some are essential to the functioning of your machine, but many others are unnecessary resource hogs. Process Hacker (a Task Manager-type utility with many more features) is perfect for sorting the wheat from the chaff.

Launch the program and right-
click the Name column header to define what information it should display. Ensure that ‘Name’, ‘PID’, ‘Pvt Memory’, ‘CPU’, ‘I/O Total’, ‘Username’, ‘Description’, ‘CPU History’, ‘Handles’ and ‘I/O History’ are all checked. Now click ‘OK’ and you’ll see two small graphs – CPU History and I/O History – that give a visual pointer as to how each running process has been behaving in the past few seconds. This is helpful information: if your hard drive has been thrashing for some unknown reason, for example, scan the I/O History column. Anything showing spikes of activity is a suspect.

Process Hacker is great for identifying resource hogs – use the graphs to see how much each process uses the hard disk.

Exactly what Process Hacker uncovers will vary depending on your system, but on our test PC we noticed that ‘IBurn.exe’ (a packet-writing program provided with Cyberlink Media Suite) had regular I/O read spikes and that a process associated with VMware Workstation, ‘vmware-tray.exe’, was tying up CPU and I/O time.

It’s important not to overreact and start shutting down resource-hungry processes, because if you pick something important, your PC will crash. Instead, try to identify the process, and if it proves to be unnecessary, make sure it doesn’t reload next time.

To do this for IBurn.exe, we loaded the InstantBurn System Configuration Tool and clicked ‘Disable InstantBurn’ to stop it launching when Windows next started. The vmware-tray.exe process was just as easy to turn off: we launched VMware Workstation, clicked ‘Edit | Preferences | Workspace’ and cleared the ‘Show Tray Icon’ box to ensure it wouldn’t start again. The next thing to do is click the Pvt Memory column header to sort your processes by the amount of RAM they’re using – a handy way to see the real resource hogs.

Once again, we found programs that could be removed. ‘SkypePM.exe’ was the Skype Extras Manager, but we didn’t use them: clicking ‘Tools | Options | Advanced Settings’ and clearing ‘Automatically start extras’ meant that the process wouldn’t load next time.

If you’re looking for more savings, target ‘iTunesHelper.exe’. It launches iTunes when it detects an iPod or iPhone being plugged into the PC. If you don’t have one, run Regedit, head to ‘HKEY_LOCAL_MACHINE\SOFTWARE
\Microsoft\WindowsCurrentVersion
\Run’, right-click the iTunesHelper key and click ‘Delete’.

Bloated apps like iTunes come with lots of unnecessary services and processes that drag down your system.

We’ve only carried out four tweaks so far, then, but we’ve freed up at least 47MB of RAM, as well as reducing background I/O and CPU activity. That’s not bad, but some judicious tweaking of Windows services may be able to deliver even more.

Stop services running

Windows services are small programs that run in the background, providing things to the OS and your applications. Click Start, type Services.msc and click the ‘Services’ applet link to see the services installed on your PC, which is almost guaranteed to include some that you don’t need.

Here are some examples. If you don’t use Media Center then the Windows Media Center Extender, Receiver and Scheduler services are all surplus to requirements. The Distributed Link Tracking Client maintains links between NTFS files over a network. If you don’t use that feature then it’s unnecessary. Similarly, IP Helper is useless for those without an IPv6 network; Offline Files has no purpose if you don’t use its sync features; the Tablet PC Input Service is only for tablet PCs; and the Secure Socket Tunnelling Protocol Service is generally only useful if you’re connecting to a virtual private network (VPN).

Potentially redundant third-party services include Apple Mobile Device and iPod Service, which come with iTunes and can be safely turned off if you don’t have an iPod or iPhone. Bonjour Service is only required if you need iTunes or Safari to discover network services; Nero BackItUp Scheduler belongs to Nero Burning ROM, and can be turned off if you’re not using the back-up tool; and Nvidia Stereoscopic 3D Driver Service is useless unless you have the 3D glasses needed to use Nvidia’s 3D Vision technology.

Think carefully about the services that can be safely disabled on your PC. (And we do mean carefully: get this at all wrong and you could prevent Windows from loading, even in Safe Mode, so if in doubt about something, leave it alone). Then go to work turning off the unnecessary components.

In some cases you may be able to do this by uninstalling a program from Control Panel. That’s where you’ll find the Nvidia Stereoscopic 3D driver, for instance. But with most options you’ll have to launch the Services applet (‘services.msc’) and tweak the settings yourself. The safest approach is to double-click the redundant service and set its Startup Type to ‘Manual’; it won’t be launched automatically, but will still be available if another service requests it. The problem is that this can leave some services running unexpectedly, so if you’re 110 per cent sure that something isn’t in any way system critical – Apple Mobile Device, say – then set its Startup Type to ‘Disabled’, and you can be sure that it won’t be launched again.

Create a Turbo mode

Some of the most resource-hungry Windows services shouldn’t be turned off permanently. We found that Windows Search consumed more than 250MB of RAM on our test system, for instance. That’s annoying, but we’d miss the service if it weren’t there. The SuperFetch caching service can grab plenty of RAM, too, and it isn’t always effective, but on balance it’s still worth keeping it running.

Shutting down Windows Search recovered more than 250MB of RAM.

You wouldn’t want these services to disappear forever, then, but what about if you created a batch file to turn them off just temporarily? This could free up a considerable amount of RAM. You may then get better performance out of a game or some other heavy-duty application that you’re trying to run, and you could use another batch file to restore the services when you’re done.

To give this a try, launch ‘Services.msc’, double-click each service you’d like to disable and make a note of its short name. This is labelled as ‘Service name’ on the dialog. Now create a file called Turbo-On.bat that uses the net stop command (as shown below) to close each service. Feel free to leave SuperFetch enabled if it helps the particular app that you’re trying to prioritise, and of course you can add as many other services or programs as you like, just as long as they’re not system-critical. Here we’ve included a sample line that would shut down Skype’s services:

net stop wsearch
net stop sysmain
‘\program files\skype\phone\skype.exe’ /shutdown

Then create a second file called Turbo-Off.bat that uses the net start command to relaunch everything, as here:

net start wsearch
net start sysmain
‘\program files\skype\phone\skype.exe’

Store these files somewhere safe, and create shortcuts to each. Next, right-click the shortcut, click ‘Properties | Shortcut | Advanced’ and check ‘Run as administrator’.

Now, whenever you need the maximum possible performance, launch the ‘Turbo-On.bat’ shortcut to free up some RAM and system resources. Then fire up ‘Turbo-Off.bat’ when you’re done to restore normal operations.

Prioritise programs

So far we’ve concentrated on absolute ways to divert your PC’s resources. But what about those programs that you must leave running, but aren’t system-critical – such as mail apps? It’s possible to recover resources from these applications, too, although it may take a little extra work to do so.

Let’s assume that you always need to have Outlook running in the background. By default this may grab processor time on any of your CPU cores (assuming you’ve got a multicore CPU). You can restrict the app to just one, freeing up the others for different programs. In Process Hacker, right-click the ‘Outlook.exe’ process, click ‘Affinity’ and ensure that only ‘CPU 0’ is checked. Repeat the process with other non-essential programs that you have launched (nothing security-related though, and no Windows components). Their performance will fall a little because they’re restricted to one CPU, but the rest of your apps should now benefit, as they get improved access to the rest of your system’s cores.

Another way to make other apps run quicker is to reduce the CPU and I/O priority of a background process. Windows does this itself with the Windows Search indexer and other components so that they don’t interfere too much with foreground apps, and you can apply the same trick yourself to limit a program’s impact on your system.

In Process Hacker, right-click the process you’d like to change (avoiding security tools, Windows components and anything system-
critical) and select ‘Priority | Idle’. Then right-click the process again and select ‘Miscellaneous | I/O Priority | 0’ to make sure that it gets the least possible share of your system’s attention.

You could also increase the priority of more important processes to High, which may mean that they get more CPU time, but be careful – doing so is risky. It’s more likely that your programs will block Windows’ own processes from running, and that could result in your PC crashing or locking up.

Don’t expect too much from these techniques, though, especially if you don’t have many background processes. With just Outlook and a browser running in the background on our machine, our tests showed that priority and affinity tweaking delivered only a two to five per cent improvement in foreground application performance. However, if your PC is packed with busy background processes, this can be a very useful way to manage them. If you see good results then you can change your program shortcuts so that you’re able to launch them using the command-line ‘start.exe’ tool, which can set their priority and affinity without Process Hacker’s help.

Process Lasso can optimise all your process priorities to help deliver improved system speeds.

It may also be worth trying Process Lasso, which assigns and manages process priorities automatically. It’s a commercial product, but it’s reasonably priced (from $20), and there’s a free trial available so you can see if it works.

Further basic rules

If you’ve followed our advice so far, you’ll have discovered and tamed resource-hungry processes, turned off unwanted Windows services and taken steps to reduce the impact of many other programs on your PC’s performance. That’s great, but to get the most from your PC you’ll still need to follow two simple rules while you’re working.

If you have a bulky application open but you won’t be using it for a while, don’t leave the window open on your desktop – minimise it. Windows will often free up some of the RAM it’s using immediately.

If you’re walking away from your PC and leaving an app running some lengthy task – rendering video, say – then make sure that the program is running in the foreground (just click its title bar). Windows gives more CPU time to the foreground app and you should find it completes more quickly.