paul bennett

Archive for the ‘(x)HTML’ Category

I ran across some odd Subversion / Samba errors lately. It seemed whenever we added an image or non-text file to the repository, we were getting the error:

Commit succeeded, but other errors follow:
Error bumping revisions post-commit (details follow):
In directory '[dir name]'
Error processing command 'committed' in '[dir name]'
Can't move
'[dir name]\.svn\props\[image name].gif.svn-work' to
[dir name]\.svn\prop-base\[image name].gif.svn-b...\
Access is denied.

It looked like a subversion issue at first – but actually it’s not, it’s a Samba permissions issue. I share this to possibly spare someone else the pain of chasing this down.

Short answer – make some small edits to smb.conf, restart samba and the problem goes away.
The full solution is here.



The Present

Netbooks have been a game changer in the connected world. The arrival and staggering popularity of Netbooks has turned the PC manufacturing world on it’s collective head.

This is not an article about Netbooks – this is an article about the age that they herald – the age of cloud computing.

Netbooks have filled a latent demand – the demand for practical, truly portable computing. They offer ‘enough’ processing power mixed with a small form factor, light weight and long battery life for maximum portability – but that’s not all. Netbooks have been the market force which has seen the adoption of cloud computing as the clear contender for the future of computing worldwide.

The Netbook revolution has highlighted one thing very clearly:

the majority of our time and activities while on a computer are spent online.

Email, socialising, image manipulation, video, image sharing and even software development are all examples of activities once tied to the desktop which are now easily and freely available via online websites and applications.

Netbook popularity centres around one key thing – the near ubiquitous avaiability of internet connectivity. Internet connectivity shifts the processing and storage burden away from the client machine and into the cloud, hence the machine can cut weight and costs and increase battery life by running cheaper, slower and more efficient hardware.

The Near Future

The pent-up demand for a decent, truly mobile internet experience (phone, pda, laptop / desktop) has been unleashed with the growth of devices such as the iPhone and other 3G devices. Netbooks have filled the void between tiny phone screen and large home / work machine by providing a comfortable in-between.
Companies such as Adobe and Amazon are banking on the demand for services in the cloud by building infrastructure and applications native to cloud computing. Microsoft even has a development cloud-OS in the works. As online activity increases and lower powered computing becomes the new norm, demand for software will decrease and demand for online services and application will increase proportionately.

A recent Wired article hinted at the next stage of this (r)evolution by stating that a gaming company is building hardware and software to run MMPORG games on their servers and streaming only the needed vectors to the client machine.

The ultimate thin-client world approaches.

The Not-So-Distant future

Let me paint a picture of where I think this is all heading.

In the cloud-future, hardware specs will become largely irrelevant for anything other than servers, as all client machines (phones, PDA’s, tablets, laptops, desktops (if they still exist)) are based around four things:

  • a screen
  • a basic processor
  • ubiquitous internet connectivity (wireless, 3G)
  • an RDP client (or similar)

I didn’t include an operating system – one will still be required, but it’s function will be just to switch on and run the RDP client – your data, your apps and even your OS will live in the cloud. Your cloud space will adjust visually according to the device your using to access it.

Your ‘machine’ will be an allocated chunk of secure, virtualised server space running whatever OS you like (or more than one if you like). You run your machine/s the same way a network admin does who needs to connect to remote servers. Connectivity is everywhere and speeds are high, so lag is mostly a non-issue.

Due to its simplicity, your client hardware becomes easily replacable – and everywhere. People own multiple variants of devices which can access your cloud computing ‘home’ and use whatever is most convenient at the time.

Client power consumption plummets as devices are far less power hungry. Server farms increase exponentially to meet the huge demand for cloud storage.

Privacy issues are potentailly huge as ‘offline’ no longer really exists and cloud-hosted personal spaces are far easier for hackers and government to browse. Forget ISP’s relaesing your browsing data to the authorities, server based spaces may offer Big Brother the ability to take a long gaze at not only your documents, files and past activity, but whatever you’re doing right now.

Encryption will become a bigger issue (an issue that’s largely been forgotten in the web 2.0  world outside of the banking sector) as people move to the ubiquity and convenience of the cloud but still want the perception of security that haviong all their data at home gives them. Most apps (even those in eternal beta) will move to https or relevant encryption. Transparent storage-based encryption and private keys will become commonplace.

Hardware is commoditised – the data plan will be the real money spinner. This is already happening now, with some countries offering a free Netbook with a fixed data plan.

Online archiving ‘warehouses’ will spring up – offering ongoing archiving and storage of your old data to free up your working space.

You live in the cloud.


There’s a great run-down on on how to troubleshoot the dreaded Drupal ‘White Screen of Death’ (WSOD).

This seems to happen every time I add a site to our test server – I find increasing the PHP memory limit to be the fastest way to solve it.

To increase the memory limit assigned to your Drupla install, add this to your /sites/default/settings.php file:

ini_set('memory_limit', '32M');

Tags: , , ,

Internet Explorer will show nothing.

Fair enough really, but don’t be caught doing this or your images, image links or image submit buttons (own up, I know you’re using them) will be rendered ‘magically invisible’ in the output.

One rule I’ve learnt and relearnt over the last 5 years is the need to develop xhtml and css code in more then one browser from the very beginning of a project.

Often the temptation for me has been to stick with my development browser (Firefox with the ‘Web Developer Toolbar’ and ‘Firebug’ extensions) and worry about other browsers ‘later’.

These days I develop in Firefox, Internet Explorer 6 and Internet Explorer 7 as a minimum, with secondary checks in Opera 9 and Opera 8 and basic functionality checks in Internet Explorer 5.5 and 5, Opera 6 and Netscape 6. I know, I know, Mac testing is on the way too and Safari will be one of the primary browsers to test in.

Starting with the ‘big 3’ from the get go has led me to develop leaner, more cross browser CSS with far fewer hacks and kludges then in the past.