When I was doing my undergrad in Edinburgh, in around my second year, I was at a ceilidh, and a guy asked me out on a date. And I said, “sure”. Then, he asked my roommate if I was single, which was a little bizarre. And finally, he tried to “get to know me”. We were walking down the Royal Mile and he asked me, as everyone does when you’re a student, what program I was in. And I said, “Computer Science”.
And he said, “I don’t believe you, you’re too normal”.
And we then proceeded to have a disagreement about this, with me saying, “no, I am”, and him continuing to find this incomprehensible. Of course, this is Scotland and we were students, so he was drunk, but still.
Perhaps the most bizarre aspect of this, was that I found this almost flattering. I mean, I had recently been dating another compsci who, when trying to pick women up, would tell them he was in “Social Anthropology”.
The stereotypical image of a programmer, is a skinny guy who doesn’t wash or go outside enough. And don’t get me wrong, I’ve met a few of those. But how did we get here?
The first programmer was Ada Lovelace – she wrote code for a computer which did not even exist yet.
During the second world war, the US invented the ENIAC to calculate missile trajectories. It had 6 programmers, all women, who worked out how to use it without a manual – and their contribution has been historically under recognized (ENIAC Programmers Project).
And yet here we are today, I’m reading a book called “Coders at Work” – profiles of 15 programmers. There’s one women. She’s an IBMer.
So computer science has a terrible image problem, and that’s probably why we have to lie to get dates. But even more than that, we have a communications problem. We don’t communicate the value we bring well, which is why admitting to a degree in compsci will end a conversation. We also have not done a great job of speaking human. And that’s why, I think, we have software like Windows Vista and ridiculous tangles of privacy settings like those for Facebook.
You know that expression, “be the change you want to see in the world“? I try to live by that. And I would like all programmers to speak human, fluently. And so I’m trying to be that change through talks like this, and programming workshops, and blogging. I want to make a dent in this communications problem, it’s a passion.
Second passion – users. I think your computer should make your life easier, not harder. As an industry, we can do better at this.
Third and final passion – information management. We live in the age of information overload, there’s so much great stuff out there that it seems like if you don’t have information overload, you’re doing it wrong! I think that we should be able to help people better manage the information they have, and to condense it so that meaning can be extracted from it. This is something I’m currently working on in my project at IBM.
So, why is this talk called “Art, Life and Programming”? I think it could also be called “Programmers Create Change”. Art is great example that illustrates this because technology gives us new ways to create and distribute, to the point where we need to reconsider what Art actually is. Programmers can be artists, and artists can be programmers.
Yes, sculpture is art, as are paintings, and photographs. Art is a product of human creativity, and there are various medium we can use for it, so let’s talk about some new things, as well.
A popular (but unreliable) web service can make an image iconic.
We Tell Stories is a project that uses the web rather than the traditional medium of a book. This enables another dimension to the story, one of the stories is interactive (your choices change the story), whereas another is recounted through Google Maps.
Cover of the New Yorker, May 2009. By Jorge Columbo
This image is created using the Brushes application for the iPhone. Isn’t it incredible?
PostSecret is a community art project, where people write secrets on postcards, and send them in. They’re collated by a man, Frank Warren, who collates them into a series of books and speaks at universities all over the US. Every Sunday, he publishes a blogpost called “Sunday Secrets”. This combines the traditional medium (post and books), and a new medium (blogs).
Created by Shamus Young
Best explained in the video, below.
Isn’t it awesome?
I Want You To Want me visualizes data from dating sites, it, “explores the search for love but also the search for self in the world of online dating”.
See the video below.
I really love this project, it’s a great source of inspiration to me in my work and I think illustrates beautifully the intersection of programming and art.
Is this art, or math? Or both?
This video shows the evolution of special effects in cinematography. Because the movie studios are often at the edge of computer graphics work, it illustrates the evolution of 100 years of technology.
Through human history, there have been various inventions and discoveries that have fundamentally changed things.
The first was probably fire – it’s suggested that the reason for the sudden growth in the size of the human brain was a result of early humans cooking meat.
The combustion engine brought about great changes in production and human mobility. It’s made it possible to flit between continents, the way we take for granted today.
Another was the printing press, which allowed for the easier sharing and distribution of information. Before the printing press, everything was hand-written – very time consuming. The church got very angry about this development, and tried to fight against it saying that people would use it for pornography. However, ultimately they couldn’t stop the advance of technology. To show how utterly futile this attempt was, consider that in order to get enough copies of their reasons why the printing press was such a terrible thing, they had to use the printing press – because scribes couldn’t copy fast enough. I think what they were really afraid of – and with good reason, as it turns out – was information. We see similar reactions today from some industries and some religious organizations when it comes to the internet. In general, when someone in a position of power says that they’re trying to save people from porn, I distrust it – like the catholic church they’re afraid of information. Hopefully their efforts will just just as futile.
Taken by me at the Museum of Science and Technology, Tokyo, Japan
The internet is another such invention, and we’re just at the beginning of the changes that will ensue.
I wrote this talk for kids, to inspire them, but you guys all know exactly what changes I’m talking about – because you’ve lived through them too. And I think if we can just take a moment here to reflect on that, we’ll be amazed.
I had a really important day at work a few weeks ago, and so I went in early – before 8 am – to get a jump on the day. And my computer had turned into a brick overnight. It would not turn on. IBM has amazing tech support, so after lunch I had a brand new machine but for that morning, I was completely useless. Without a computer, I am completely redundant. That was a strange feeling, but one that I think is increasingly the case for many of us. We’ve all heard those quote about there only being a market for 5 computers (disputed) and how much RAM we might need. Wow were they wrong! We’re more and more dependant on our computers, and an internet connection that it’s hard to cope without them.
We can see here that the internet was created about 40 years ago, and email shortly after. The internet as we know it really starts with the invention of the “World Wide Web” over 20 years later, though. The internet is the infrastructure, and the web is the software that runs on top of it. Many people don’t understand the difference, but without the web the services like YouTube, Wikipedia, Facebook, and Twitter would not be possible. Now, we’re at the start of the mobile web – by 2020 it’s predicted that more mobile devices will be accessing the internet than computers.
I think we’re just at the beginning of this change, and there are a number of reasons for that. The first is – innovation. Programmers are not done inventing the web, and other leaps innovations, such as good machine translation will give people in developing countries amazing resources to improve their education and quality of life. The second is access, because only around a quarter of the world’s population has access to the internet. The third is demographic – in western countries, we’ve just about reached the point where everyone who wants to be online is – the people who hold out are mostly older. So when services, particularly government services can be only offered online, things will change. Finally, I think censorship will ultimately fail. This will be a big change in and of itself, but I was in China last summer as the government shut down Facebook, Twitter, the news… When people there and in Iran have free access to everything that is going on, the world will be different as a result.
Old style blog design from http://www.shirky.com/
One of the huge changes that programmers have brought about, through the creation of software, is the possibility for everyone to create content. This is so new, because if you think about it – before we used to distribute everything in books and newspapers etc, which have much higher costs of distribution. This development is something that impacts many people every single day.
The content users could create used to look a little… plain and dull and required some know-how.
Now, very little knowledge (if any) is required and designers can create beautiful looking web pages, that showcase their artistic sensibilities as well as their content.
In fact, the creators of I Want You To Want me used blog content to make another installation – this one online – called “We Feel Fine”.
Credit: flickr / Steven2005
So there’s a lot of stuff that’s going to change, and one of those things we can say with a good degree of certainty, is that newspapers are going to die out. Some of the brands will remain, but we’ll access them in a different way than on giant pieces of paper.
Some people are getting very angry about this, but it’s pointless to cling onto a dying business model. Innovative companies will survive. Those who waste time complaining probably won’t.
But innovation doesn’t just mean the destruction of old things, there will also be new things that are created. Tactile computing, like tablets and tables will become mainstream. Communications will evolve through services like Google Wave. And eventually we’ll have house cleaning robots! (Sooner the better!)
Earlier, we talked about how programmers weren’t perhaps what you expect. Code isn’t either. Programmers used to program using series of 1’s and 0’s punched into cards (crikey!) but that’s not the case any more.
Program code has got more and more high level, and some languages are actually quite readable by humans! Some programming can even be done using drag and drop.
Programming is really just a way of thinking. More and more people are becoming programmers, some of them without realizing that’s what they’re doing.
Images from www.alice.org
You can learn to program using The Sims – isn’t that awesome? It’s a great initiative called Alice.
Image used with permission of Kelvin Schutz
More and more video games come with programming capabilities, Warcraft is another example.
There are also programs such as Game Maker or Fusion that allow you to create video games without writing any code – you just have to learn to think logically! If you want to do something useful instead, Automator for mac is essentially drag and drop programming.
This is relatively simple to create, and doesn’t require much code. It’s recursive, which means we split it into the same problem again and again and again – until we reach something really small and easily solved.
That’s pretty short, hey?
Click on the images to enlarge.
This is something I’m working on currently, what I try to do is take some of the huge volume of information we’re presented with every day and make it into something that’s both pretty and useful. For instance, this shows the size and interactions in my Twitter network.
We can also write programs to extract important information from the noise. Here, this graph picks out my core, central network.
The “hard” part of the code is just 6 lines!
Imagine how difficult it would be to create these things by hand!
Credit: flickr / Vermin Inc
Technology has changed our lives considerably relatively recently – we have new and impressive “hardware” and creative and innovating programming. This is just the begining – there’s much more to come.
Technologists – hardware designers, programmers – are at the center of what we will achieve next. However, whilst computers and technology are a part of everything I’ve talked about, what’s perhaps most inspiring is the human capacity for innovation and our reaction to change.