Adulthood.
It’s time to join the ranks of the adult population, finally, 37 years on from the womb. I’m going to be a dad next year.
All that real-world stuff about being settled, security, finances, responsibility and stuff is staring me in the face like it never has before. Some people believe this to mean you have to change everything about your life - but I think you can work around it. No way am I giving up on the things I enjoy. I’ll still play music, I’ll still enjoy a drink or ten, I’ll still go to gigs… there’s time and energy enough for everything. No way am I going to be a boring dad.
Like someone much wiser than me once said, you always grow out of childhood, but you need never grow out of immaturity.
EDIT: Fatherhood is no longer impending. I’d got rather used to the idea too.
Accumulation.
It’s amazing the amount of assorted detritus you accumulate over the years. When I first moved out to the US in 2005, I pretty much threw almost everything I owned into a bunch of cardboard boxes, shipped them over here, then promptly forgot all about most of it.
So, today I decided to break open some of those boxes and sort through some of the stuff I’d gathered over the years. Wow. Just, wow. I found my 18th birthday card from my mother, as well as almost every birthday card from her since. I found two old filofaxes, one of which chronicles my old demoscene days, complete with a long list of “contacts”, and the other documents much of my college days, complete with London travelcards circa 1991. There was loads more too - a huge stack of old photos, various old cassettes (including a much-liked mix tape someone made for me quite a few years back), a heap of stuff relating to my old bands (including a one-off 10” single we did), hundreds of old gig tickets, and loads more.
It’s hard not to take a saunter down memory lane when you unearth this sort of stuff. So I did. And what I came up with was quite surprising.
The amount of people who have come and gone through my life is quite staggering. People who you were once inseparable friends with, and now you can’t even remember their surnames. People you have annoyed and alienated without really knowing why or how. The things you have done that, although fairly significant at the time, have faded into irrelevance.
I miss my old bands. I miss some of my old friends and some of the old places that I used to go to. But things move on for a reason, and, despite some good memories, there are things I have no interest in revisiting, other than keeping the occasional keepsake.
My “old” life was good. But so’s my new one. And I intend to make it keep getting better.
Demonstration.
Back in the dim and distant past (well, 1987 to be exact), I was a spotty, chubby, geeky teenager, and I got into something somewhat different to most other spotty, geeky teenagers of the time.
While they were all off getting drunk for the first time, desperately trying to lose their virginity and generally being all teenage and obnoxious, I was part of the Amiga demoscene.
This scene contained some of the strangest, yet most intelligent people you could have ever met. It was a world of computer hardware manuals, bad fashion sense, worse haircuts, social awkwardness, and probably the only place where someone’s two favourite bands could be Iron Maiden and Erasure. We were all misfits, but brilliant misfits.
The demoscene was born of the software piracy scene - basically, lots of guys in Germany and Scandinavia acquiring games and other software before its release in the shops (by somewhat shady means) and distributing it via the post and old-school BBSs (and the blazing speed of the 14.4kbaud modem) to the world. “Zero-day warez” was their battle cry. Demos were a statement of intent by these groups - showing everyone else in that scene how good they all were at programming, graphics and music, and at pushing the hardware of the computers of the time to their limits. These groups inadvertently destroyed the market for Amiga software, but also later gave the interactive entertainment industry some of their most gifted people.
Many of these programmers, artists and musicians later found employment within the video games industry - the very industry they were subverting by pirating games. Oh, the irony. But these people had honed their skills in a competitive environment, trying to outdo every other upstart demo group with ever-more-impressive displays of programming acumen. This gave them the edge over the more pedestrian, school-educated programmers and some of them went on to great things. For instance, several of my former group-mates had huge successes in the games business - one of them runs the company that makes all the Lego games, others programmed Micro Machines for Codemasters and worked on Tomb Raider for Eidos. Hardly small-time stuff.
Sure, we could have been out there sniffing glue, but the kids who did this wouldn’t have wanted anything to do with us - we were far too nerdy. So we gave ourselves pseudonyms, and carved out our own brand of coolness. We were nobodies to the so-called “cool” kids out there, but we were heroes to some. “Legends in our own raster-time”, we used to say. We made ourselves into characters in a digital soap opera - complete with the requisite dysfunction and feuding, all played out through the medium of the “scrolltext”. A ubiquitous and essential component of any demo, the scrolltext conveyed the personalities of those involved, provided “greets” to their friends (one of the earliest forms of digital kudos) and “fuckings” to their enemies, all in brightly-coloured, sine-scrolling characters.
I know I wouldn’t have the career I have today if it hadn’t been for my time in the Amiga demoscene. Through knowing some of these special people and being a part of many of these demoscene productions, my enthusiasm for computing (and an early example of interest-related social networking) was piqued and I’ve never looked back. Many of my former groupmates look back on this time with similarly fond memories, and as a wonderful thing that we all helped mould. Though the Amiga has long since vanished into obsolescence, its spirit lives on in those of us who used its unique abilities to shape our own fantasies.
Future.
Back when I was a kid, I used to read a magazine called Insight - it was basically a guide to everything futuristic, all the latest developments, and with an optimistic eye towards what was to come. Basically, everything pointed towards an atomic-powered utopia, cities with gleaming spires where there was no crime, no poverty, a benevolent world government, everyone travelled using jetpacks or in rocket-powered trains that ran inside vacuum tubes, where spaceflight was as common as getting on a bus, where science was the new God, where people ate pills instead of meals, wore form-fitting jumpsuits (or, if you were a girl, a miniskirt with a huge oval silver belt buckle), had anthropomorphic domestic robots to do the chores, relaxed on plastic sofas and spent their free time exercising and watching their wall-sized televisions. This was the 1970s vision of the 21st century.
Boy, how wrong they were.
Sure, they got some of it right. They predicted the mobile phone and the internet, some medical advances and the wall-sized tellys. Oh, and the domestic robots, although the Roomba is hardly anthropomorphic. But now, nearly ten years into the 21st century, and we’re not really any closer to most of what was predicted. In some ways, we’re closer to some of the dystopian futures predicted by doom-mongering sci-fi authors. Orwell’s 1984 and Huxley’s Brave New World have never seemed so real and so pertinent.
I can live without the jumpsuits and pills, but where’s this bright new atomic age? Where’s the jetpacks? Where’s the lack of crime? Where did we lose our way?
Nobody’s saying that the 1970s vision of a 21st-century utopia should have been correct, but it was envsioned with a sense of hope and progress on a huge scale, with technological revolution instead of evolution. It was exciting - I couldn’t wait to live in that world. We seem to have lost that vision, that sense of embracing the bigger picture. The quest for endless, clean nuclear energy has stalled, the drive to conquer space seems to have hit a wall, and, most fundamentally, it seems the drive for people to better themselves has diminished.
Maybe it could have happened. Maybe not. But it’s something to strive for, and it seems less and less people are doing the striving these days. We’ve all lost that hope.
Realism.
In the eternal (and occasionally futile) quest to reinvigorate my interest in video games, I do regularly keep my ear to the ground regarding new developments. And, as I read the press releases for the next big new game, they always boast about “ultra-realistic graphics”. That’s all well and good - watching someone play FIFA these days, you could easily think that you were watching a real football game - but there’s a part of me that thinks that games companies are rather missing the point.
It seems that the quest to improve the graphics processing capabilities of computers and consoles seems to be driven by this drive for greater realism. That’s all well and good, and it has resulted in some amazing hardware and some incredibly realistic games. But there’s so much more you can do with a tool as versatile as a computer. For instance, FIFA looks amazing, but you can still quite easily go and watch a real football match, or (deity forbid) go out, buy a football, and play the game yourself. Sure, I would love to drive around the Top Gear test track in a Nissan GT-R, and the forthcoming Gran Turismo 4 will offer me a virtually photo-realistic chance to try that, but it’s still rooted in real life.
A computer is capable of creating environments and experiences that are simply impossible in the real world, without the constraints of physics, and only limited by the imaginations of those who create them. These are experiences that cannot be had by any other means, which are unique to the medium. Worlds where causality doesn’t apply, where even time can be meaningless. A totally new paradigm. These are the types of experiences that would draw me back to gaming. And I don’t mean games with fantasy or futurist elements - the bulk of these experiences are available in real life, with a little imagination and capacity for make-believe. The experiences of which I speak can’t.
This used to be a much more common thing, back when computers were utterly incapable of creating realistic graphics. The programmers and designers of the time had to work with what they had, and, in the absence of realism, imagination took over. A game that stands out in my mind that was very much of this ilk was Iridis Alpha for the C64, created by one of the few games programmers who can actually see past the whole quest for realism - Jeff Minter. The game was essentially a side-scrolling shooter, but that incorporated various “invented” laws of physics as essential components in the gameplay. Your ship was capable of shifting between two dimensions (each shown as a separate horizontally scrolling slice onscreen), and part of the gameplay was that you had to shift dimensions regularly, as you were incapable of existing in one for very long (a mutated law of “entropy”). Also, the visuals were in no way even attempting to be realistic (although that’s not to be expected, given the capabilities of the C64) and the whole experience was somewhat on the “trippy” side and required some tangental thought to play. Happily, Jeff is still busy creating his own psychedelic takes on classic genres, and the industry needs (and has always needed) more people like him.
But no. People want to play virtual football, cast spells on virtual trolls and shoot virtual aliens, so games with this degree of vision probably wouldn’t sell.
Doesn’t stop me wanting to see more of it though. Maybe, coming back to my previous post about the revelation that is small-team development on the iPhone, we might be able to see more of this sort of thing in the future.
Games as art? Perhaps. That’s when you know that a craft has outgrown its medium and can stand on its own.
Toilet.
I’ve just had a moment of clarity about the UK.
Much as I miss it there, the lifestyle I had, the musical opportunities, the friends… I have come to the realisation that almost everywhere I lived over there since I moved out of my mum’s house was a toilet. I may moan about the US (and, believe me, I restrain myself when I’m online) but the places I’ve lived over here have been far nicer, cleaner and safer.
I mean, flats with mould growing under the sink, with junkies’ needles in the back garden, with paint coming off the ceilings, with chav arseholes living upstairs, with burglars around every corner… it was not good. In fact, sometimes, it was downright scary.
I shall retain my rose-tinted spectacles regarding friends, music and lifestyle, but not regarding the place itself.
In other news, diet starts today. I’m going low-GI - want to lose 3 stone by the end of the year. Also, IUI is happening tomorrow, so daddy-hood may be impending. If we’re successful, that will open up a whole new set of decisions and questions…
Control.
I actually sat down and used my Xbox 360 for its intended purpose the other night - playing games. Most of the time it sits there relaying videos from my computer to the big TV in the living room and streaming movies from Netflix, and nothing else.
Now, I do enjoy video games. When I was younger, I was a bona fide addict. It took 3 years working at a games company to break this addiction, and it’s remained broken ever since. This stint at a games company also coincided with the demise of the home computer games market, and the rise of consoles, which, in turn, coincided with the rise of the control pad, replacing the good ol’ trusty joystick. And not the type of yoke-style joystick that flight sim afficionados think of - I’m thinking of the classic, arcade-style stick that I grew up with. Specifically, the likes of the classic Competition Pro joystick.
And it’s the death of the joystick as a mainstream game control device that I must blame as one of my reasons for losing much of my interest in gaming. The little D-pads and analogue sticks on game control pads are imprecise, fiddly and utterly unsuitable for many types of games (in my experience). You just can’t play Street Fighter or Gradius with a control pad. They weren’t made for it. Granted, it’d be hard to pay Halo 3 with a proper joystick, but I’d love to try it. There’s something about having something to grab old of (oo-er), with clicky microswitches and positive feedback that makes the gaming experience better, for me.
I’m ordering one of those USB CompPros - it’ll make MAME and other emulator-based gaming so much better and more authentic. In the meantime, I guess I’ll muddle through Halo and Bioshock with the dull old control pad.
United.
The Holy Grail of web development is a language and development environment that unites client-side and server-side programming into one. There has been progress on this front - ASP.NET (using Visual Studio) is probably the best-known, allowing HTML page elements to be directly accessed from the server-side as server controls. It’s a shame the language has so many development overheads, and is, to be blunt, rather bloated, and, of course, being a Microsoft product, requires proprietary server technology. And we like open-source solutions here at Ego Id (as well as solutions that run on a Mac).
So, what do us open-source and Mac advocates have to play with? Well, there’s the new kid on the block, Ruby On Rails. It’s an impressive framework that makes prototyping website features incredibly quick, but, again, we run into that lack of support on the server side. There aren’t many hosts that support RoR yet (our own hosting certainly doesn’t), and there’s still a question of scalability. That leaves us with some of the new PHP-based frameworks, such as CakePHP, Symfony and so on. In some ways, they’re great, combining client-side AJAX functionality and server-side code nicely. But the code you need is still quite messy, non-intuitive and smacks of trying to squeeze extra functionality into something that wasn’t designed for it. Not to mention, if you try to use features from more than one framework, you run into compatability issues. It’s almost easier to hand-code everything.
The truth is, right now, there is no single solution that takes care of both the client and server sides. So we have to settle for a system that simplifies the interface between the two as much as possible. So, I’m forced to conclude that the Holy Grail for this sort of thing is staring us in the face, and, apparently, all us so-called “proper” web designers and developers are supposed to hate it.
It’s Flash.
Flash, on its own, offers the web developer pretty much the ultimate in customisation straight off the bat in terms of user interface design, and AJAX-style out-of-band functionality has been available since Actionscript first reared its head, and you were able to do a “tellTarget” to any Flash element. And, of course, provided you’ve got the Flash player installed, there’s no issues with browser compatability. With the introduction of Flex, Adobe have a full user interface development environment that ensures you can make the most of this customisability. What’s more, all the SEO arguments against Flash have now been silenced, since Google can now index SWF files, and server-size integration is easily achieved, since only the data layer really needs to be on the server-side. Flash sends a variable to a PHP page, the PHP page returns XML, which Flash interprets natively. That’s it.
Sure, Flash is closed-source, but the player is now so ubiquitous that it’s almost irrelevant. All we need now is for Apple to allow Adobe to release the Flash player for the iPhone. Oh, and while they’re at it, a version of AIR would go down well too - imagine how easy iPhone apps would be to develop if the iPhone supported AIR!
Colour.
Over the years, I’ve had to deal with cultural differences in many ways. Firstly, and most obviously, as a British citizen in the US, there are plenty of cultureshocks to be had - on the surface, there’s a lot of similarity between our two countries and cultures, but there are also many, many differences that I have to navigate on a daily basis (note my spelling of “colour” in the title there, for instance!).
In terms of work, I’ve also had to deal with different cultures - I worked for a company a few years back who specialised in developing sites for the Chinese market. Now, what we accept as good design sense here in the West isn’t necessarily the case if you go east - colours have different meanings, people expect different things in terms of layout, and so on. For example, the use of the colour red in Western design usually denotes assertiveness or possibly even aggressiveness. In Chinese culture, red is a very friendly colour, much as we would interpret pink, although less gender-specific. Also, in terms of design, the trend here in the West is towards the minimal - conveying only essential information. Over there, they like it when every inch of the screen is full of content - something that might be considered far too busy for our tastes, but the connotations are different there - it shows you have a lot to offer. Go to an international news stand and pick up any Chinese-language paper - you’ll see every inch of every page is packed with information, and the same is true of their website preferences.
There is also definitely a culture surrounding programming. In many ways, it’s like a microcosm of “real life” culture, but with some significant differences, differing depending on where you go and what you do. The boundaries aren’t necessarily national either, they’re more based on the type of work environment you have, and the technologies you work with.
On one side you have the archetypal “geek” culture, usually espoused by individual programmers and small companies, and, on the other end of things, you have the “corporate IT” culture, usually found in large organisations. The innovations usually happen at the “geek” level and filter up to the “corporate” level, where they’re expanded and adjusted for purpose. For instance, the notion of “agile” development was an innovation from the small compay side of things, primarily those working on iterations of open-source software projects in order to streamline the development process. This approach was sequestered by the corporations, and now many large companies use agile development practices. In my experience, it rarely works the other way around - there’s not many corporate concepts that have filtered back down to the “geek” level. Other differences I have noticed is that smaller companies are more innovation-driven, while larger companies are more market-driven. You only have to look at Twitter to see the impact an innovation-driven team can have, and MySpace to see what a burgeoning corporate culture has done to a formerly innovative company.
As with “meatspace” cultures, some people in one culture often look down on people in another, there’s many differences in philosophy and application, and so on. This aspect sometimes makes it difficult for programmers of different cultures to work together - in many ways, it’s like two different worlds. I’ve personally worked in both environments, and they are like chalk and cheese.
But, also like many aspects of “real-life” culture, there are many similarities, things that unite us instead of dividing us. As programmers, we all speak the same language - the language of code. Programming and mathematics are probably the only two universal languages - you’ll find people in Calcutta, Beijing, Sydney, New York, Paris, Cape Town, Lima, Barcelona, London and Dar Es Salaam all communicating in the same terms, understanding, creating and implementing the same concepts and sharing something beyond their cultures. This degree of transcendence is a great thing that, in my opinion, can help us all to transcend our real-life cultural differences as well. And, as a microcosm of real-world cultures, it also gives us a reference point for understanding them better.
Better living through programming? Maybe not (well, not yet), but it’s a start.