Whispers & Screams
And Other Things
Vastly experienced, versatile senior technical asset with a broad range of highly evolved skills from team building to high-level technology solution implementations. A courageous and tenacious leader with proven experience in business development, organisational visioning, cutting edge information technology deployments, and as a senior management liaison. Experienced at working at all levels from Start-up to Corporate, I thrive on change and take the lead to engage and drive the engineering landscape in any business An outgoing personality, with high energy levels who is customer focused but understands the need for a structured approach to business. A mature and collaborative style provides excellent communication and presentation skills and, drawing on past experience, gives the credibility to build trust. A strategic thinker, who is innovative and creative and makes technically 'savvy' decisions and encourages others to do so, whilst totally focused on success and how this drives results.

If You Can't Beat Em Join Em

Yesterday evening (Pacific Time), while we in Europe were tucked up in our dreams, Elon Musk hosted a press conference for one of his most exciting ventures yet. The organisation is called Neuralink and its stated aim is to develop implantable brain-machine interfaces.

Those who are aware of Mr Musks previous statements in this field will know that he has been a vocal Cassandra when it comes to the fate of mankind against the rise of the machines. Indeed for the imaginative among us it doesn't take too much of a leap to envisage a future where hyper capable and mechanised super intelligences are able to see our flesh and blood existence as nothing more than a primitive curiosity to be regarded perhaps at the level of a pet.

So when I heard about the press conference and the hubbub that its announcement had aroused in the cognoscenti press my own curiosity was thoroughly piqued. You see, since I myself began to muse about this potentially existential threat to mankind I have always seen it as a distraction as I have felt that the process of human augmentation, who's origins can be traced as far back as Long John Silver, would be the future where any 'rise of the machines' would carry us with them. Indeed it is more likely that, if we are to seek out a dystopian slant on this discussion, the horror future would be one where augmented humanity (wealth) and vanilla humanity (poverty) were at odds with each other.

Notwithstanding the philosophical discussions however, the announcement last night, as is so often the case, has proven to be a lot less than the aficionados predicted and a lot more than the sceptics expected. The company (Neuralink) appears to be making solid progress albeit not in human bodies. Indeed Mr Musk himself appeared to blurt out to the chagrin of the scientists around him that they had successfully tested their tech in a monkey. Putting aside my own personal misgivings about trialling these things on unsuspecting lab rats or monkeys, this would appear to be pretty significant news. If we are to take the claims at face value, the technology has now been proven in principle and we should not underplay the significance of this revelation.

Science has been integrating tech with flesh and bone for decades but it is the incursion into the last bastion of the unexplored, the human brain that makes this so important. We need only look at the global attention that has been given to The Human Brain Project to understand the way this captures our attention. Neuroscientists have been studying for years to understand the workings of the supercomputers we all carry around with us and in connecting machines to our brains we would seem to be a whole lot closer to that day. Questions of the nature of consciousness and the existential nature of what we may call our identity or soul fly around the perimeters of this discussion but at its heart lies the notion that our bodies and indeed our brains are chemical machines and when we can understand the systems in action we can begin to harness them and make them work to our greater good (and bad).

Mr Musk has announced that he and his company of pioneering scientists intend to place their systems into a human in 2020 and this if accomplished will indeed be a day that will go down in history for the long term. So we wait and we watch. A world now used to the headlong nature of progress will perhaps be wowed once again as science takes us to new heights. The future is ours to shape and as with any new technology in the hands of us human apes it will not be a question of what the technology CAN do that will be the measure of the science but rather what we as a species CHOOSE to do with it. Lets hope we're up to the challenge.

Neuralink website here

Livestream of event here

Much more here

 

Continue reading
33 Hits
0 Comments

The Joy Of Driving

As anyone who has driven on the UK's congested motorways will attest to, when the roads get beyond a critical threshold of overload, the sheer unpredictability of the drivers around you becomes the most important factor in your cognition. All it takes is for one driver to touch the brake pedal, lighting up the brake lights and a chain reaction of terror ensues in their wake. If an accident is luckily avoided then its almost a certainty that one of those frustratingly inexplicable causeless traffic jams will ensue. 

I have always believed in the power of computer network traffic engineering techniques to come to our aid in situations like this. Just like on a crowded pavement, the unpredictability of the individual has made such a solution frustratingly out of reach.

But it seems that automation and machine learning have brought this notion a step closer. By abdicating control to our machines, network traffic theory can be put into practice ensuring that optimal flow continues.

We have always lacked a way for vehicles to work together until recently and it is this collaborative effort overseen and perhaps controlled by a meta intelligence that can bring about the seismic change that has eluded us.

For my own part I detest most driving. Its basically dead time where my brain has to be used for this one mind numbing task despite the fact that I'd much rather be reading a book, getting some work done or even just sleeping. The day when I can tell my car where I want it to go and then switch off until Im there will be a red letter day for me. I was therefore recently pleased to hear the results of some recent research confirming that in tests, a fleet of driverless cars collaborating with each other can improve overall traffic flow by at least 35%.

Michael He, one of the researchers was quoted thus, "Autonomous cars could fix a lot of different problems associated with driving into, within and between cities but there has to be a way for them to work together."

The key will lie in the adoption of standards and, just like during the development of the standards which now dominate the internet, we are in a period of competition where the standard which wins out may not be the best. (Think ATM vs Ethernet for transporting video and VHS vs Betamax for watching it.)

Much of the current testing and development is done using scale models and SBC such as Raspberry Pi or Orange Pi. This enables researchers to avoid the prohibitive costs associated with developing full scale test environments. Using such swarm systems where the component nodes within the network are each able to communicate at least with their neighbours, it became possible for the overarching 'intelligence' to manage the meta priority for optimal traffic flow in such a way as to achieve something approaching harmony in a ballet of competing priorities and near misses that would send most human drivers to the hard shoulder. Cars can now be packed more closely and yet continue to enjoy progress towards the destination in environments which were previously untenable if populated by unpredictable humans.

Interestingly these tests involved simulating a mix of human and automata with the overall network collaboration level set to either egocentric or cooperative. Improvements of 35% were observed during cooperative traffic but during egocentric driving the improvement was as much as 45%.

Machine learning and swarm software modelling is bringing this field of imagined utopia into reality with staggering speed and for this driver, the day when I can tell my car where I'm going and then put my feet up can't come a moment too soon.

 
Continue reading
47 Hits
0 Comments

Duplicate element ID's in the DOM

Short post today folks since its Friday :)

I've been developing quite a lot lately using Angular JS and React JS as I'm currently heavily involved with a startup preparing to release a new IoT product. The app is pretty complex with heavy calls to the server side database but that's not what we're going to talk about today. 

One of the things that seem very straightforward when you're building small UX is ensuring you have a unique array of element ID's in your DOM at any given time but, as the complexity increases, then so does the difficulty in maintaining a mental map of the DOM you have at any given time, especially if elements of your viewport are loading dynamically via ajax calls or whatever. 

The downside to having a duplicate element ID may not always be immediately apparent as it is not something that will always push an error to the console. This can result in confusing erratic behaviour from your application and often hours can be lost trying to work out what on earth is going on. 

By the time you eventually get to the bottom of the problem you realise that you've wasted hours searching for something that was ultimately such a basic error. 

So anyway, this happened to me once or twice over recent weeks. Our application loads dynamic data via ajax quite frequently and the issue I faced could sometimes be intermittent. The worst-case scenario.

After the dust had settled, I decided to create a tool for myself that I could use to quickly establish the presence or otherwise of duplicate ID's. This is what I came up with. Simply punch this code into the command line on your browser inspector console and hey presto!

var DOMElements = document.getElementsByTagName("*"), DOMIds = {}, duplicateIDs = [];

for (var x = 0, len = DOMElements.length; x < len; ++x) {

  var element = DOMElements[x];

  if (element.id) {

  if (DOMIds[element.id] !== undefined) duplicateIDs.push(element.id);

  DOMIds[element.id] = element.name || element.id;

    }

  }

if (duplicateIDs.length) { console.error("Duplicate ID's:", duplicateIDs);} else { console.log("No Duplicates Detected"); }

Feel free to use and abuse as you see fit. I hope this helps somebody out there save some hair :). Have a fab weekend.

Continue reading
445 Hits
0 Comments

The Web By Proxy

I've been working on networks for decades and for as long as I can remember, network proxies have existed. I first came across the idea when I worked for IBM as an SNA programmer back in the late 90s but it's in more recent years that network proxies have taken on more importance. 

Continue reading
551 Hits
0 Comments

Curved Text In Gimp

Photoshop is a pretty well-known piece of software. Indeed its become so well known in the field of manipulating images its transitioned into the catch-all verb to describe the act of artificially changing a photograph. Not so well known, but to all intents and purposes just as powerful as Photoshop is GIMP. GIMP stands for (The) Gnu Image Manipulation Program and one of the best features that place it streaks ahead of Photoshop is the price. It's free.

The power packed into this freely downloadable piece of software is phenomenal. You name it, GIMP can do it. Ok so introductions over, one of the things I get asked about regularly is whether GIMP can create curved text. The answer, you've guessed it is of course yes. Let's take a look at how it's achieved.

 Let's say you have a logo which looks something like this image here on the left. Your friend, who happens to be a Dentist is looking for some help with his website branding and, let's face it, toothy the tooth does look a little isolated over there. So your friend asks if you could help him place some text around the logo to give it some punch. 

The brief is that the words "Toothsome Teeth" need to curve around the top with "Dental Services" on the bottom.

So where do you even begin? Ill explain in the rest of the post.

Continue reading
514 Hits
0 Comments