Saturday, October 12 2013 22:08 EDT
Being terrible at mathematics is rarely a problem for software developers these days; algorithms for most problems are widely available and software libraries implementing those algorithms are equally accessible now that people understand the joy of free software.
A-level Mathematics was extraordinarily difficult for me and even though many of the concepts were beautifully simple to grasp, the nuts and bolts of making them work eluded me. Seeing any formula involving 'e', 'i', an integral, or a capital Sigma would send my brain into meltdown and force me to look away.
Thankfully we don't need to understand this stuff in "the real world", I comforted myself by saying twenty years ago. Twenty years later I was dealing with complex numbers in my day job and regretted not learning about them properly when I was younger; when my brain was less fried. Obviously I understood the basics: 'i' is the square-root of -1 and a complex number is simply a combination of i with a real number e.g. "3i+4". I also understood how to do the operations on them so that performing something like an FFT
was pretty straightforward. But why it worked, and what it was all about had eluded me completely. Most people don't care about that - as long as they can perform the necessary operations they're happy, and rightfully so. But I'm stubborn and not very good at this stuff so it has always concerned me that I don't understand why
it works, and consequently I never understood why the complex-plane was ever relevant to real-life.
Very recently I stumbled upon this amazing website:
This guy is brilliant! It was as if he understood my mental block and picked it apart leaving me with the glorious feeling of actually understanding complex numbers and how they relate to real-life. Quite a wonderful experience to have on the bus home from work.
Sunday, October 06 2013 22:52 EDT
Today, being a Sunday, my family and I managed to set up a video chat (using Facetime, although Skype used to work before that). My sister's family were also in attendance and so it was a lovely opportunity to catch up with everyone, especially my nieces.
When I got a chance to speak to my parents my dad told me about a problem he'd experienced making CD's from MP3's he'd downloaded: the CD only played on certain CD players but not all of them. In particular it didn't play on the CD player of the man for whom my dad bought the album. He bought and transferred the MP3's to a CD for his friend who only had a CD player.
Now, to me this sounds like "par for the course" because CD-R's are, and always have been, a shit technology. That's just what happens. But my dad was concerned that he'd done something wrong.
What follows is another way to interpret my dad's experience. He and my mum read this and so they may wish to correct me on any of the details.
My father is 82. As a result of my arrogant nature and desire to be able to maintain his computer from 3000 miles away I've forced him to use Ubuntu. It's a massively underpowered machine for 2013 but he maintains it well. Using Ubuntu my dad managed to purchase a gift for his friend - a bunch of MP3s from amazon.com. He also managed to transcode them to WAV files and then burn them to CD. The fact that they didn't work on a bunch of CD players made him feel that he'd done something wrong. This is an example of how broken the world is.
CD-RW's, CD-R's and all of the various family members are examples of crap technology. They are at best an anachronism. But when you have to deal with non-geeks, they still have their place.
I suppose the point I'm trying to make here is purely that I'm massively proud of my parents. My dad is transcoding MP3's for his friends after buying them on Amazon while my mum is happily using the iPad to explore the world.
Sunday, September 29 2013 10:36 EDT
There are a number of alternative search engines out there and some, such as Duck Duck Go, are completely independent and actively work to protect your privacy. Then there's Gibiru. They make a lot of grand sounding claims, and their "about" page should really be written in green ink
, but I liked the idea and started using it.
The first thing that concerned me is that they seem to be using Google's API - so you're actually querying Google. So how is that uncensored exactly? Surely Google are quite capable of censoring their API as well as the front end the users see. I wonder how well Gibiru works in China?
What Gibiru does is to proxy your search request and zap all of the potentially identifying data so that Google doesn't get your IP address etc. So far so useful.
But there is a major problem: the links they return are actually links to Google; every result in a Google search contains a link that looks like a link to the target site, but is actually a redirect via Google itself so that they can pick up information on where you went after searching.
Try it: go to giburu.com; search for something; right-click any of the result links; copy the link address and paste it somewhere you can look at it. It's the same link you would get if you searched on Google, and it is also a link *to* Google; If you click the link, Google will have all the info it needs to entirely reconstruct your search - including your IP address.
Am I missing something here, or is Giburu really this flawed?
Tuesday, August 27 2013 19:07 EDT
Recent events and revelations have encouraged more people to start thinking about privacy, security and liberty in the digital realm. About bloody time! The armies of young geeks who have been empowered by the Internet, some for the majority of their lives, have started seriously considering the unthinkable: the Internet being beaten into a unusable, restrictive, corporate mess - like television.
So now even the mainstream media has started to talk about Darknets: areas of the Internet inaccessible and invisible to ordinary users. Tor
is perhaps the best known and certainly the most widely adopted, but there are countless others, some of which have been around for a surprisingly long time, and others that are still experimental.
The Holy Grail of free (as in "speech") networking is decentralization - no central infrastructure that can be knocked out.
"Mesh Networking" is such a notion: a network of equal nodes that can sort out an efficient way to send data from one node to any another without needing a central authority to manage the network. There have been many attempts to implement this kind of unbreakable network, some of which fared better than others.
is a mesh network that started out a couple of years ago, based around some experimental software called cjdns
. What interested me most about the project was its grand-sounding aim of "replacing" the Internet rather than simply augmenting it, so I decided to give it a go.
Getting it up and running is a matter of downloading and building cjdns, then asking someone already on the network to let you in. By "asking" I'm not referring to some nice quick, automated, simple protocol, I mean you actually have to find a human being that is already on the network and ask if you can "peer" with them (ooh, err etc). The guidelines say you should do this using IRC - which was almost enough to put me off. Fortunately the people there seem to be unusually friendly and helpful - it's early days after all. In fairness there's now also a convenient map of nodes
that permits avoiding IRC altogether; you find a node near you and send an email (hopefully encrypted).
Once you have been granted access to a peer, you fire up cjdns and magical things happen.
Without any other messing about you are granted access to Hyperboria; suddenly the darknet links
The pioneers have done a good job of providing a set of genuinely useful services exclusive to Hyperboria including a microblogging service, several network analysis tools, chat (IRC/Jabber) servers and a variety of websites. All the time you're browsing Hyperboria your traffic is encrypted: a core requirement of the networking protocol.
Behind the scenes every node allocates themselves an IPv6 address in the block fc00::/8 - unorthodox as far as I can tell, but who cares at this stage. Somehow the address is used as an encryption key for securing traffic to other IPv6 nodes on the network. I've not looked into this at all at this point so have no way to know how cryptographically secure it actually is. Unlike normal IP routing, each node has to build up a picture of the network dynamically based on addresses it has seen and knows about and passes IP packets on to other nodes as best as it can.
This is the first time I've properly played around with mesh networking and I have to say it's pretty nifty. As previously mentioned I've yet to dig into the code to see how any of the magic works and therefore can't predict anything about its future. Also it's clearly not ready for use by mainstream users at this point - maybe that's why I'm enjoying being part of it so much - but they have grand plans
to make it more accessible in the future.
Thursday, July 25 2013 22:24 EDT
British kids growing up in the 1970's had a pitiful choice from three TV channels, only one of which showed commercials. As one of those kids, who watched a lot of TV, I could never understand why my dad would get so angry with the commercials - some of them were quite good! He used to say they were an invasion, or an intrusion. But surely it provides a convenient break to go for a pee or relax your brain? I thought.
As weird as it may sound, I was a lot older before realising that the BBC didn't air commercials. Commercials were normal, but if they weren't there I didn't notice.
Things changed over the next 30 years.
Those of us that don't watch broadcast TV and use Ad-block Plus on our browsers have been de-programmed from accepting commercials as part of our normal life experience.
Now for us, sitting in front of a TV relaying normal programming, is extremely hard to take. In fact it seems so weird that it's difficult to comprehend how viewers can deal with it. Why would someone voluntarily opt to be subjected to a bunch of lies intended to sell you something you probably don't need? You know you can turn that off now?
The people that do
know how, turn it off. Other people do not. They're not necessarily stupid people, they're just used to it as a part of every-day life.
There is a big problem with this: what if everyone opts out of viewing advertisements? The entire web economy relies on advertisements - those of us that block them are actually damaging this economy! If everyone did it, the majority of commercial websites would die.
Fortunately most people don't care - that will keep it ticking over for a while. But what of the future? What if everyone does opt-out? Well, they've thought of that!
If you end up in A&E (ER) your time will not be wasted because you can now sit and absorb hours of TV adverts while you wait for several hours. Buying petrol (gas) at the local station is no longer the hugely boring experience it once was because now you are forcefully subjected to commercial pressure by a TV screen at every pump while you wait to fill your tank! A boring old cab ride home now earns more money from you than the fare because every Philly Cab is equipped with a screen in the back that bombards you with commercials...fortunately the customer is allowed to turn off this particular telescreen.
These are all examples of invasive advertising - but there is a new form of advertising slowly making headway which makes the former seem quite enjoyable and cute: mandatory advertising.
Last year I flew to San Francisco with Virgin America. As is now traditional for airlines, the telescreens directly in front of us were hijacked to show a mandatory video about safety - you know, the thing that tells you how to put your seat-belt on, how to evacuate if the plane "lands on water" etc etc. The videos are important, and that's why you can't turn them off. They are played after the plane has started to taxi and so you must have your seatbelt on while you watch. It's a pain in the arse for frequent travelers but we all understand why it's necessary.
But this journey had a new twist: after the mandatory video were a couple of commercials - one of which was for a well known brand of Cola. We were still strapped in
, and the commercial was still unstoppable.
To clarify, hundreds of people on a plane were forced
to watch shitty commercials while they were strapped in. You can turn those telescreens off during the flight, but NOT
while they're showing you how to enjoy The Real Thing.
I was pretty shocked about this experience and it brought to mind the scene in A Clockwork Orange where Alex has his eyes pegged open...
Back to the now; every working morning I have to get into a lift (elevator). This lift not only delivers passengers to their desired floor, it also contains a small screen for us all to watch as we travel. The telescreen shows us snippets of news, sport, and a bunch of trite crap that no normal person could benefit from. Obviously they also contain on-screen commercials that help us decide what to buy. Nice. The screens proudly display their sponsor: "Captivate Network".
The name "Captivate" is really rather sinister. Rather that invoking the notion of "captivating" an audience, what they are talking about is a "captive audience". They're gonna be in this lift for a minute or two - and there's nothing they can do about it. So sell them shit! In the wonky world of marketing it doesn't matter that no-one will ever actually fork-out for something that's being advertised. We now have a situation where advertising "real-estate" (they do actually call it that) is worth money on its own. If you can push an ad to a place where people will see it, you get money!
Even if no-one ever actually puts their hand in their pocket, the marketing people cash out. It's just another form of currency now.
Monday, July 15 2013 22:26 EDT
We've had "excessive heat warnings" here for a week or two, but the temperature just keeps creeping up. Today it went over 100F and so I made sure I never left the air-conditioned world without just cause. "Just cause" in this case involves the journey from my house to the bus stop (4 minutes); the walk from the bus stop in center city to my office building (45 seconds); the walk from my office to the home-time bus stop (4 minutes); the walk from the final bus stop to my house (12 minutes). All of these times are tiny and therefore completely dealablewith. But today the bus journey home wasn't the simple quotidian air-conditioned ride home, oh no. Today something was wrong. The bus was packed to capacity, and that includes around 30 people standing, packed together, including me. I was carrying a shoulderbag, a 5L wine-box, and enough sweat to drown several children. The people around me on the bus weren't happy about me holding my arms up to grasp the parallel bars on either side of the bus but they were sitting down, the lucky bastards, so I was unconcerned about the gallons of sweat which were pouring off me. They wanted their seats more than they were disgusted about drops of sweat from a stranger.
The A/C on Septa buses is pretty awesome (in the literal use of that word) but on a day like today, with a lawbreaking number of passengers stuffed into the ridiculously small vehicle, it couldn't keep up. After a a few miles it became apparent that even the youngest, fittest, healthiest passengers were suffering with sweat rivers. It was, without doubt, the hottest and most humid place I've ever been, and that includes the London Underground during a heat wave.
We got as far as Roxborough and finally the crowd had started to dissipate. A young lady, formally from the sweatbox at the front of the bus, decided to occupy a recently vacated seat at the back of the bus where we were all concentrating on not passing out. "Oh it's even hotter here isn't it" she observed. "Can we open that air vent thing?".
A young boy opposite me (he was probably in his late 20's but that's my judgement these days) forced it open and in an instant the back of the bus was bathed in beautiful, sweat-evaporating cool air from the outside world. There was a mutual sigh of pleasure from all passengers at the back of the bus and for the first time in half an hour I stopped worrying about collapsing. A minute or two later and I was feeling human again. "I think, we're going to make it!" I said after a minute of wallowing in the cool fresh air.
After alighting the bus into the cool fresh air, I felt free again; the outside temperature was around 95F - so whatever was going on inside the bus was clearly the work of something astonishingly evil.