Is computing sustainable anymore?

Computing is hardly a sustainable field, with the IT “ecosystem ” representing approximately 10 per cent of the world’s electricity generation. That’s 10%. We are at the point now where out foray into the future is helping the climate to change, and as this recent article in The Guardian suggests, endangering the planet. Apparently data centres are soon to have a larger carbon footprint than the entire aviation industry. We have become too addicted to technology, and it seems to be getting worse all the time, not better. Gains made by low-wattage LED lightbulbs in our houses, are wiped out by devices that need feeding everyday. This is largely a factor of replacing mechanical things with things that use energy. Cars are a good example – they are filled with differing forms of technology, some good, but some quiet mediocre. We have to ask ourselves “do we need all this technology”?

A recent study predicted that the global footprint of information and computer technologies (ICT), would reach 14% by 2040, which will be more than half the relative contribution of the entire worldwide transportation sector.  How “green” autonomous vehicles will be is yet to be seen… they are loaded with sensors and computers which all use power, and all have to be manufactured. We won’t even talk about the lifecycle costs of the car batteries. Never mind that electric cars are all good and well, but the electricity has to come from somewhere right?  Some of this could be offset by requiring greater use of renewable energy, but it’s not only the energy used by ICT, it’s also the environmental cost of their lifecycles – how they are manufactured, and ultimately how they are recycled. The carbon footprint of the iPhone X is 79kg over the course of its life (better than the iPhone 6+ at 110kg, but not as good as the 45kg of the iPhone SE).

Partially it’s our own fault because we don’t really teach anyone about sustainable computing. But maybe we should also spend less of our lives focused on the screen. The world might be a better place if we were actually doing non-technology related things as well. Do we need AI to make our lives easier? No, what we need to make our lives easier is *less* technology, and maybe taking the time to do some forest bathing. Plant more trees – that will ultimately help curb climate change, not AI, unless someone is planning to develop some form of autonomous tree planting robot, or maybe something to clean the oceans of all that stupid plastic.

Is the world too complex?

Thor Heyerdahl, the Norwegian adventurer behind the  Kon-Tiki expedition in 1947 once said that “Progress is man’s ability to complicate simplicity.”. We have spent the past hundred and fifty years complicating the world, to the extent that we likely already broken the planet we call home. Not that climate change will in any way impact the existence of the world because it has progressed through these cycles before. Plant and animal life will adapt to the newly morphed world, and life will go on – we hope. It might just be a bit of a jolt for humans because we believe we live in some sort of stable world where nothing should go wrong. But volcanoes still exist, as do earthquakes and forest fires. We have tried to control our world so much that we find it anomalous when “disasters” happen. But they happened before, and they will happen again. Maybe in some respects we should be thankful for volcanoes and the like because it reminds us that we are not omnipotent, that we do not control all – and that we likely should not build things so close to volcanoes. Just like we shouldn’t built towns in flood plains.

We have added complexity to every aspect of our lives, usually in an attempt to make our lives easier. it hasn’t really worked. Computers are somewhat to blame. Each new device we add is suppose to something miraculous – few do. Sure i love the ability to watch NETFLIX, and record shows on my PVR so I don’t have to watch commercials. I don’t like LED light bulbs because they don’t last as long as they should, they contain too much technology, and it takes too much effort to find the right light bulb for the right application. Yes, incandescent light bulbs sucked energy – but they were simple. Programming languages were once simple – now most created are overly complex, and little has been done to make learning them any easier. Look many of the things we do now we justify with the mantra that it “will make our lives easier”… things like AI. Now we have fridges with screens so we can see what’s in them without opening them. Really? We can’t just open them to see?

And maybe as the world gets more complex under the guise of simplicity, some of us just want more simplicity in our lives. That’s it, I want Nordic type programming language that exudes simplicity (while I still care about coding). I want a minimalistic house, with  a view, that contains minimalistic things, like an old-style oven, and heated using highly efficient Swedish stoves. Off the grid – why not? If everyone attempted to make their lives simpler, and to make their homes more efficient (and by this I do not mean adding technology), maybe we would all be better off, and our footprint on the planet would be reduced.


When algorithms may not be optimal

Last month whilst in Scotland I read an article in The Guardian Weekend,  titled “The algorithm method” by Olivia Sudjic, which dealt with using a digital contraceptive app in place of more conventional means of contraception. It is an interesting read because of the idea of using an algorithm to determine a woman’s fertility on a daily basis using daily body temperature, and statistical methods. Known as Natural Cycles, the software was developed by two (Swedish) former Cern scientists. The software is effectively designed to map menstrual cycles – which it seems to do effectively 93% with regular use. The problem with developing algorithms of this nature is of course that their scope can sometimes be somewhat narrow because the information base itself is narrow. Humans can not always be statistically buttonholed, into categories and there is a danger in creating apps which may not be as inclusive as they seem. An interesting read.

Syntactic sugar and C : A report

C is an inherently complex language, not from the perspective of the language, because it is a small language in comparison to the likes of Ada or C++. However there is an inherent complexity to learning the language because of its assembly-like heritage. This report overviews some of the more challenging aspects of C from the perspective of the novice programmer, and offers alternatives from other languages, where the usability may be improved.

Syntactic sugar and obfuscated code: Why learning C is challenging for novice programmers

Presto cards, and dodgy TTC software

The news of late has talked about how faulty Presto devices have led to 1.4 million free rides over the past two years. But we know the figure is likely higher, because it’s not just faulty card readers that are to blame, it’s faulty software – as I mentioned in my previous post “TTC digital transfers – Is there something wrong with their Presto algorithm?”. It all seems very strange, partially because I ride both GO Transit and MiWay, and they both seem to work fine – it is rare card readers (or algorithms) don’t work. Maybe it’s because they are simpler systems. The tap-on/tap-off of GO means that the system can accurately calculate the trip total. MiWay is just tap-on, but as a bus system maybe it is easier?

As I have mentioned before, if you get on a TTC bus which then drives into a station, where you then board the subway, you could go from point A (which is known) to point B, which is completely unknown, because you don’t need to tap off. If at the subway station you get off, you then get into a streetcar (within the station), you will go even further afield, without the system having any clue where you are. In an ideal world you would tap onto the streetcar within the station, but it’s often not convenient to do that, nor do many people think they have to do it. That’s largely because of inconsistency. While it is possible to tap-on in a streetcar, transferring from a bus (in station) to the subway – there is no means of tapping-on. I get it, there are a lot os combinations, but it is likely possible that the software just wasn’t that well designed.

The solution is of course much simpler – 2 hour timed transfers. While it seems like these transfers will benefits travellers (which they will), they will also solve some of the algorithmic problems. The first time you tap-on, it will log your card into the system, every subsequent tap-on (be it bus, subway or streetcar) within a 120 minute period will be free. It’s almost like the first tap on will add your Presto-ID to a timed-queue, and after two hours it is removed from the queue. A tap-on within the 120 minutes will just instigate a search of the queue. Less problematic, because it does not really have to trace your journey to make sure you travel in a linear sequence viable with a one-way fare (i.e. no backtracking).

Maybe next we could ditch the stupid day-pass (which at $12.50 is far too expensive for the individual) and have a three-day pass similar to that found on the Montreal Metro ($19) – what a bonus that would be for tourism in TO.

So I got 150Mbps fibre optic – what does that mean?

I’m amazed at how they can now install fibre optic directly to a house. It always seemed such a fragile technology, but the other day I bit the bullet and had 150 Mbps bell Fibe feed put in. (Well, let’s face it,  the cable itself will happily carry whatever theoretical limit it can, but I’m only willing to pay for 150Mbps). Before I had 15 Mbps, and things worked okay. I haven’t really seen the benefit of the speed increase, although I’m sure my 16 year old daughter (who seems to consume 75% of internet activity) will get a faster YouTube feed.

But what does 150 Mbps, i.e. Megabits per second,  really mean? Some Rogers guy was at my door a last week trying to sell me on 1 Gbps – like *who* needs that much bandwidth? So Mbps is I think a fancy way of making bandwidth sound better than it is. There are 8 bits in a byte, so 150 Mbps equates to 18.75 Megabytes per second, or 0.01875 Gigabytes per second. Not really that impressive. Netflix recommends 5 Mbps for HD quality movies, so 150 Mbps is more than optimal. To be completely honest, I haven’t noticed that much of a difference in speed. Maybe once we start watching 4K shows? But honestly unless you are running some sort of business where you are required to do huge uploads (or downloads) on a daily basis, or like to simultaneously watch 20-30 media feeds at the same time, you will likely not need 1 Gbps, or even 500 Mbps anytime soon.


Why Apple is king of the tech companies

I have used Apple technology since the mid 1980s. I started out with an Apple IIe we had at home, long before I was doing any programming… but I was serendipitously using Apple BASIC to write up my high school essays – hey, I didn’t have a word processor, and it was easier than using a manual typewriter. In those days programming on a Mac was less than auspicious – in fact it was a real chore, early versions of Mac OS made sure of that. But then Apple changed its OS to Unix, and the world became a happier place. Coding on a Mac these days is super easy. So I think I have been using Macs exclusively for 12 years now… so much so that I don’t really even know what Windows looks like these days. Now I’m not one of those crazy mac addicts – I don’t rush out to get the latest iPhone or anything like that… but of the tech in my home most of it is Apple, and I’ll tell you why.

Yes, Apple technology is more expensive than its competitors, but this is a small price to pay for buying from a company, which, on the whole produces good technology. If something is wrong you can walk into an Apple store and deal with it – what other tech company offers that (and those Microsoft stores pale in comparison). I generally get three years out of a laptop, and that’s pretty good considering it gets a beating every day. I’m lucky if I reboot every 10 days. Yes, there are quirks, but no software is perfect (aerospace software is as close to perfect as it gets). I don’t like all their decisions, like removing the headphone jack from phones, and removing most of the ports from their MacBook Pros (and forcing one to buy an adapter). Some of their software isn’t perfect either, but at least they try.

Old setup (red) vs. new setup (blue)

Yesterday I bought an AppleTV, one of the new 4K units, to replace the second Bell receiver I have for the TV in the basement. I upgraded to fibre-optic direct to the house this week, so now that I have an unlimited, 150 Mbps feed, I thought I would upgrade to an Apple TV. Now this allows me to access both Netflix, and Bell Fibe TV, and of course Apple TV. I didn’t realize how easy the install would be. I plugged in the AppleTV, plugged in the HDMI cable to the TV, and then waited. The install may have been the easiest I have ever had. It actually asked if I wanted to use the network info on my  cell to set-up the device. I clicked yes, and after a couple of minutes it was all set up, and wirelessly connected to the Bell 3000 hub…. and it worked. Then I just downloaded the apps for Netflix and Bell FibeTV, and set them up. The FibeTV works great, and the ability to use Siri, rather than a keyword is awesome. Actually I kind-of wish some of the other companies would license Apple’s tech for their smart TVs (most of that software really bites from a usability perspective). The time to install? 10 minutes.

*This* is good technology, easy to install, easy to use, transparent.

Quirky software in cars

On our recent car trip around Scotland we drove in a Ford S-Max, an interesting car with a myriad of electronic features. AGPS navigation system that thinks any turn short of an exact 90° is a “slight right/left turn”. This makes it extremely difficult to drive, especially in places like Scotland where roads are narrow and winding. The other interesting feature is the software which automatically reads road speed signs and displays the speed on the dash – basically updating it when the car drives by a speed sign. The problem is that other signs also have similar symbols on them which can lead to mis-interpretation. The best example is the signs we saw along the roadway which indicate that trucks should drive at 50mph (max). The car interpreted these correctly, indicating 50 on the dash, when the car could still travel at 70 mph. It doesn’t affect the speed of the car, but does provide mis-information to the driver. If however it were coupled with some form of auto-adjustment feature, the car would then slow, putting it out of sync with other car traffic.

The more features that get added to cars, the more likely something may not function as it should.