Software is eating the world like…

A river cuts through sand

This adage is well-know. Based on a Google search, it would appear that Marc Andreessen has made several comments on this topic since 2011, and is has become defacto accepted as truth. And, of course, bastardized to suit (eg. Mobile is eating the world, IoT is eating the world, etc)

I’ve been thinking a fair bit about how “regular” companies interact with software. Over the past 20 years, I’ve worked with lots of companies as they slowly embraced to-them new technologies several years after, as someone in the field, I would have thought it was a necessity – so there’s a disconnect. And, to my horror, the way in which these accounting firms, lawyers, retail shops, etc, embrace the tech now available to them is really hodge-podge and often to their initial detriment. Quite consistently, it takes an initial failed dive to get the next version “right” – which isn’t necessarily bad. But maybe there’s other ways.

That thought lead me down the path that maybe earlier recognition of technology trends for the non-technical would be useful, if possible. And then I started to think about how that might surface. Which brought me full-circle to this adage, about Software eating the world, which has an interesting corollary in “the future is already here, it’s just not evenly distributed”. So, yeah. Software is eating the world – just not evenly.

… And this is where this serious train of thought goes a little off the rails: If software is eating the world, but unevenly, what’s the best simile here, and why? And could that exercise actually be useful?

Software is eating the world like the Sarlaac:
Software is more of a trap that unsuspecting industries fall into, without realizing they’re about to. They’re then digested slowly, painfully over a long period of time. This feels like an apt metaphor for the transportation industry, who were rolling along and were suddenly confronted by Uber, Lyft, etc – and are now in the midst of slow, painful contraction and likely death.

Software is eating the world like a river:
This is another “slow” simile, but has an inevitability factor about, as well as a randomness: Software, like water, eats the easiest path through, and it meanders, is uneven, and, importantly, is constantly digging deeper in paths where it has already been. Think about communications software, and this feels true to me: it wasn’t everywhere, it was channels, and it entrenched (literally?) quickly, and kept re-doubling the victories in those spaces as it moved and opened new channels.

Software is eating the world like Galactus:
Galactus is the “world devourer”, a giant space entity and roams the universe, and when hungry, eats entire planets, destroying everything that was there, leaving nothing as it moves on. Apart from the immense disruption that occurs when Software arrives at a new industry, I’m not sure how apt this is: Software is mostly transformational, rather than destructive (although, maybe Telephone Operators and Transcription artists would beg to differ). But I like how strongly this simile enforces how radical the arrival of new software in an industry can be.

Software is eating the world like a vulture:
With this similar, the idea is that when software enters a new industry, that industry is actually already dead – it just doesn’t know it (maybe?). When design software started replacing letter-setting and manual type-setting industries – were they already on the decline? A lost art? This doesn’t feel like an appropriate simile in most cases to me.

Software is eating the world like like a cheetah:
(Or any big hunting cat). I quite like this simile, because it correlates intent, as well as the thrill of the hunt. When software enters an area, is it because there was an intent to disrupt/enter that space and remove it? The old “find a Linux command and build a web-service around it” adage of Web 2.0? Although, the chase of a big cat and it’s prey implies an element of chance that doesn’t really seem to exist. Has software ever failed to eat an industry once it has started down the path?

Software is eating the world like Prometheus’ Eagle:
I feel like this is an apt simile for software’s relationship to the media industry. Media, like Prometheus, has done so much, but is now left out, chained to a rock, while software slowly pecks away at it every night, only for it to regenerate every morning to continue on its way. It implies an immortality to the media industry, which I feel is true, but it denies the transformational nature of software: the media is not regenerated, unchanged, each morning. It is rather transformed. But this constant pecking, picking at an industry that is suffering, left exposed rings somewhat true.

Software is eating the world like…:
Like what? Probably in different ways, in different industry. Software is a many-headed hydra with innumerable ways of attacking a new enemy. But understanding both that software is inevitable (to pervert an idiom: The only things certain in life are taxes, death & software is going to eat you) in whatever your industry is, and also, that, in each of the above original stories there are survivors, heroes, escapees and even beauty is important. Most Yoga professionals I’ve met hate all work that takes them away from their passion – and resent technology for it. But I’ve also learned that I can write software that lessens their time away from their passion, that reduces resentment, because it can still bring joy and delight. Software that reduces grunt-work, without eliminating the whole job is often appreciated. Bringing software into an industry, into an office, into a single person’s life in a way that yes, perhaps does make what they used to do redundant, but also yes, provides them new tools to either do more, or do different in a newly rewarding way is a good thing, not something to fear.

File structure

Sign on an RE office
Old-Fashioned Service, New-fangled Tech

I have always been super-anal about file-structure & organization. I loathed big-bucket directories. I would carefully arrange applications into categorical subfolders, my documents were all organized by project in subfolders. My music has always been organized by letter->artist->album, with the large folders of letters being further sub organized. The idea was that I would never be looking at any folder list with more than around 30-40 items. Not sure how or why this happened. Likely years and years of working in DOS with tiny monitors and hating having to paginate listings.

But I realized lately that I essentially *never* browse my filesystems anymore. If I’m looking for something, I search. And I don’t care where it, because the spotlight search is so fast & efficient. We have historically had a pretty strict file-structure for web files too – for software packages, this is still useful. But we used to do it for assets as well – but now more and more we’re rsyncing uploaded files to big-bucket CDN/cloud servers anyway, so our precious file-system organization is not useful. And because there’s often a software layer between where files are stored and browsing them, we can use software to categorize the display in a vastly more useful manner than folders  – this is the glory of tagging & meta-data.

And so, after my external HDD died at home, along with it my home music library, when I started to rebuild my iTunes library, I did something that would be anathema to me just years ago – I’ve let iTunes organize the files internally, however you like. & have set up watch folders for it to auto-import as I download from eMusic and whatnot. And it is very liberating. I haven’t pulled the trigger on it yet, but I might just do that for photos too, getting away from the year/month/day/file structure I’ve been keeping since 1996.

The future is scary and cool.

 

Vancouver Civic Election Polling Station Lookup

I don’t know if you’ve seen the City of Vancouver’s Polling Station Lookup Tool. It’s really, really terrible. And I figured that I could do something better. So I tooled around with the Google Maps API, drew up the regions, entered the polling stations into a DB, spent a couple hours coding and hey presto! I present to you: My Maps-based Polling station lookup tool!

Because I drew the voting division boundaries myself in Google maps, there’s a peculiar bug (It stems from the algorithm I use to determine whether a co-ordinate is within a particular polygon), which is if your address is right on the boundary line between two divisions, it is possible that the tool will push you into the wrong division. I suspect most of this stems from the lack of precision in the geocoding of the address lookup vs the precision of the boundaries – the divisions have a couple extra decimal points of precision, so the “dot” that is your address is pretty big on the map.

So, for 98% or so of all users, this will be accurate, but I do warn you – there’s the odd chance that this will return you the wrong polling station. If you think you might be on a boundary, I did include the map of the voting divisions, where you can view the divisions as I drew them on the map – and you can see that it’s not perfect….
I’d been wanting to do something with the Google Maps API for a while – this was a good project to wet my feet with, as I’ve got some upcoming work that will use this sort of stuff more more extensively. As a side note, while I prefer the Yahoo maps API (I tried out both), the actual maps in Google Maps are so much more pleasant that I ended up using Google Maps.

so again, here’s the link to my Polling Station Lookup Tool