A lesson for Microsoft ( and other tech developers )

I’m one of the generation who grew up with the first home computers; some of my friends at school had things like the Atari, Commodore64, ZX81, Apple III, and Amiga ( amongst others ), while our family had an Apple IIe, one of the schools I attended had some Amstrads, and the local TAFE ( aka Australian technical colleges – actually called a CAE ( “college of advanced education” ) back in those days, long before it became a fully fledged university ) had a punch-card & tape-drive mainframe system ( probably IBM, but I’m not sure ).

We learned to enter data on punch cards, but by the early 80s this was already becoming obsolete, so we didn’t do much of that, and instead ended up on computers that largely acted as a thin client with a sever processing the code we would write. The manuals for things were written far better in those days, although arguably the task of writing them was also simpler ( given the lesser complexity and evolution of available options ). The biggest challenge to learning at home though was due to the fact that it was hard to find source information as a teenager in Western Victoria, so we had to snail-mail off a subscription to a magazine written in the USA, wait weeks or months for it to arrive, and in which we’d find short programs to enter into the system, at which point you’d run into the problem that the computer had no hard drive, it’s RAM was extremely limited ( 64kB which we later upgraded to 128kB – again I think by getting parts shipped from the USA via a friend of the family, whom also modified an old TV set to act as a monitor, because it was cheaper that purchasing a dedicated TV, and I’m not sure if anyone was really manufacturing dedicated monitors at that stage which were any good ).

So we learned BASIC spaghetti code on DOS, which could achieve really limited things, we’d swap games with one another ( if the other person had a similar system ), and we’d get early cracking/hacking hacking software to copy a protected game from one floppy to another, which ran the risk sometimes of ruining the original ( which I was guilty of in one particular case of a copy of – I think – a game called “Wizardry III” for the Apple ). The big challenge back then was actually figuring out how to play pirated games without the instruction books ( which was sometimes quite hard ), figuring out 2-word instructions for the first simple text-only adventure games, “clocking” a game’s scoreboard multiple times ( getting a score so high it went back to zero and started counting again ), and figuring out the loopholes in games so that you could get it to do something the coders hadn’t anticipated.

The earliest pocket calculators with advanced engineering functions were readily available in my high school days, and until recently I still had the calculator from back then which I think was purchased in 1984 (?) – a Casio ( the original battery was still going after more than 2 decades ) – which I preferred for many tasks over the Texas Instruments programmable calculator I got for later university study ).

My father’s dad had run ( at some stage ) a hardware and electronics (?) store in Heidelberg ( northern suburbs of Melbourne ), and dad had various valve based radios, sound systems, and introduced me to electronics and mechanics fairly early on in life ( many years before high school ), in fact at one stage – when I was around 5 or 6 years old perhaps – he presented me with an engine block from a car, bus or truck under the car-port at our family’s first home in Dimboola ( western Victoria ), and gave me a bunch of tools with the words “if you’re going to keep pulling things apart, take that apart”, which I then proceeded to do ( with great interest ).

I always loved exploring, learning, experimenting, adventuring, and I caused more trouble than any set of parents should have to deal with from one child in the process:

  • Destroying some software ( as previously mentioned );
  • Breaking an original aboriginal hunting bow ( big enough to bring down a roo );
  • Pulling apart my hand-me-down push-bike ( again around age 5 or 6, which is likely what prompted the engine block );
  • Pulling apart old electronics equipment ( including radios );
  • Setting fire to a pile of garden clippings when there wasn’t enough water in the tank to put it out;
  • Destroying a friend of the family’s backyard semi-above ground swimming pool;
  • … and the list goes on, most of it long before I waseven in my teens …

… but this is how we learn is it not (?), and a big part of the lesson is learning about consequences, plus learning to prioritise based on the quantifiable difference in scale and scope of those consequences.

So what has any of this got to do with Microsoft? Ok, I’m getting to that, but just to drive home the point, a bit more background first before I get onto the punch-paragraphs ( ie – a lot more than a punch-line ).

So after high school, while I was first trying ( and failing – Ballarat had a 17% unemployment rate at that time ) to understand how to get into the events and entertainment industry – as I’d long since decided I wanted to write and direct my own films, and to develop games as well – I then moved to Melbourne and took up a course in commercial computer programming on IBM MVS mainframe systems using C, PL1, BASIC, COBOL, RPG III, and Assembler 370 … but there weren’t a lot of jobs going back then, and as a naive young adult ( not knowing the difference ) I followed a lot of very bad career advice.

So I ended up doing nothing with all that knowledge, and instead ended up in sales, depressed because I couldn’t figure out how to get where I wanted to go, unable to find anyone whom could and would help in any way greater than writing a recommendation for me ( which didn’t help, despite their glowing words ), and consequently spent 6 years drinking, smoking, taking psychotropics, and partying … but I never stopped thinking.

After several years ( mostly ) away from computers and electronics, I came briefly back into contact with them around the time of Windows 3.1, then a bit more around the time of Windows 95, I became a computer technician, data-cabler ( including PayTV & telephony ), network installer/admin, computer builder/techie/trouble-shooter, video-wall technician, audio engineer/mixer, and learned a lot about desktop publishing & graphic arts software via an ex-girlfriend who mainly used an earlier version of Corel Draw ( on Win 95 or 98 from memory ).

When a new edition of Corel Draw was released, it had a bug in the colour calibration wizard – the software component used to attempt to get a good onscreen representation of the colour that would actually come out of the print process – which even the software developers at Corel HQ in Canada hadn’t been able to solve yet … so after failing to find any help from their International help desk ( which I’m failure sure might have been a phone call to Canada in the middle of the night ), I sat down with it for an hour or so, figured out a work-around, then called them back to tell them how to do it ( this was before the days of easy to use – and commonly used – online forums, they may have had a text newsfeed, I’m not sure, but we required a faster solution anyway ), and they thanked me because apparently the development team had been unable to solve it or even figure out a work-around as yet.

When my father’s surgery had issues with their medical history and prescription writing software, I had a long history of working with both it and the Windows 98 OS it was designed for, so when a bug was found in that and KPMG ( whom had purchased it from the original developer ) couldn’t solve the problem, I ended up travelling to their offices in Melbourne to tell their developers what I knew of the history of idiosyncrasies in the software and its interactions with the Windows environment. The specific bug in this case was largely Microsoft’s fault, which related to how windows itself and its client/guest applications talk to the peripheral device drives with respect to their settings ( ie – a conflict was occurring ); so I showed the developers a work-around which in turn helped them help their clients, and helped them resolve the bug.

During all this I learned about all sorts of things in the crossover between component level electronics, programming, and software/systems installation, configuration, maintenance, troubleshooting, and operation; I also ( in the late 90s ) took up another course in computers and electronics, which being a TAFE course focused on installation, maintenance, electronic circuit board design and construction ( including acid bathing the circuit board and soldering components ).

In the later years when I was working on & off in entertainment and events, I did a bunch of soldering work for a Melbourne based specialist lighting hire and services company, and though it was actually my first time doing that specific job, the guy I was working with ( whom had been in the game a very long time ), commented that my technique was pretty much perfect and he honestly couldn’t teach me much if that was the quality I was already able to produce.

During my time as a video-wall technician, I was unfortunately rarely able to get the simultaneous availability of both the Pioneer video-wall cubes, digitiser and processed rack, control computer, software, cables, AND someone to teach me where the hell to start learning how to use it all. The company ran on a really tight schedule trying to bring the money in, and unfortunately ( with all due respect ) the main sales guy at the time was absolutely brilliant with the events and entertainment industry “schmoozing” required to get gigs, but he was relatively crap at the negotiation side of things, giving away way too much for free instead of creatively negotiating other arrangements which at the very least covered costs, and the owner had hired ( and vastly over paid ) a brilliant marketing woman ( whom apparently he was fucking ), and whom believed it was more productive to be grumpy, aloof, and to explain what she wanted really poorly, while expecting way too much, while assuming you had knowledge that you clearly didn’t ( then making you feel too uncomfortable to ask any questions ).

This company had a brilliant ( also grumpy, but fair ) technical manager, so eventually I got the grip of things, and was able ( with the help of a staging labour team ) to get a 6×6 wall erected and cabled, then I’d spend the next several hours ( solo ) aligning and colour balancing the RGB CRT guns ( Red Green Blue, Cathode Ray Tube, electron guns – ie: what all those old bulky computer/TV monitors and oscilloscopes are made from ), such that at the end of the day ( prior to the event they were hired for ), I’d leave the venue with my eyes so finely attuned to minute differences between various colour hues, plus shades of black, white, and grey, that the sunset would seem to explode in my brain as if I was stoned ( while I was stone cold sober ).

Ok … I could go on, but I’ll finalise the background context/points I’m making like this:

  1. I’ve lived in about 80 solo or share accommodation locations and situations;
  2. I’ve done more than 100 jobs in my 46 years;
  3. I’ve done more than 20 years combined formal & informal tertiary level study & research …

… so there’s not much I haven’t done, done something similar, seen up close ( and investigated ), or can’t just figure out from first principles ( based on logic, maths, science, some well thought-out questions, and extrapolation from all such past experience & knowledge gained ).

So no matter what I’m doing, I’m always analysing, critiquing, experimenting/exploring/extrapolating … and it is with great confidence that I lay the following charges at Microsoft ( and a bunch of other companies who seem to have the exact same approach and therefore the same problems):

  1. You keep letting the wrong people and information make your decisions ( this is obvious from the outcomes ) – and the rule you should be following I will lend from Star Trek ( which probably comes from military / mariners law or code ) … the ship’s doctor gets to over-rule the captain on medical matters … and in technical terms this translates to: your business managers, accountants, economists, HR, marketing/PR, and everyone else NEVER get to veto or over-rule a technical decision, and to the contrary ( on technical matters ), the technical team absolutely get to veto them;
  2. For Microsoft specifically, the Apple iOS market IS NOT your prime market, and you should not ever think of making the windows desktop environment like the Mac iOS desktop or mobile environment … you’re in the process with Windows 10 of abandoning / betraying your core market and everything it is, because idiots who see dollar signs don’t understand it, and have given the command. If you seriously want to pursue this market, and if you want a desktop similar to such a mobile environment for the largely non-technical user … here’s my rule for you: no one should have to pay a single cent more – nor undergo any other fuss – to switch off every single aspect of the things in Windows 10 that make it a shittier operating system than Windows 7 … because let’s face it, Windows 10 is ridiculously unstable and unreliable for a system of is current maturity and from a corporation with your resources, in fact I’m stunned it’s not still openly being referred to as a beta release, because it is absolute utter rubbish, and anyone impressed with it clearly either doesn’t know what they’re talking about, or is disingenuously biased. I have found ( without even intending to look ) dozens of areas of extremely poor design, flaws, other unnecessary & deleterious redundancies, and things that will make its ( supposedly reasonable “core” ) elements crash, fail, or enter extremely difficult to resolve infinite loops … which is the kind of thing I wouldn’t even accept from a reasonable beta release of far more complex software from a company with a fraction of your resources;
  3. There are other vastly more important tasks you should have been doing ( and yet still haven’t done anything about ), many of which are outstanding issues of more than a decade – and if you’d just give some focus to these things, with a serious commitment to perfecting them, you’d learn the lessons required ( in that development process ) which would simultaneously help you realise the far greater potential in the future of your existing market, instead of wasting effort, resources and time trying ( and failing ) to capture a market with monumental competition that is dominated by other players … when the only way you’re arguably ever going to get a decent slice of it, is by the alternate strategy of developing your existing business in the ways you continually fail to do, because your thinking is so consistently strategically narcissistic in certain areas, that you repeatedly shoot yourself in both feet jus when they were finally starting to heal from the last monumental blunder …

… Now, I don’t doubt you’ve got all the business statistics you need to “justify” your approach, but I put that word in quotes to indicate that in this case the meaning is synonymous with “rationalise” – ie: you haven’t actually justified anything, you just think you have, because you’re using faulty business logic ( NOTE: almost all capitalist based business logic is faulty/flawed in some regard, and only the vast minions of idiots on this planet can’t see it ).

There’s a great saying ( amongst many great sayings ):

You can use statistics to prove anything.

This is a saying the business and economics world needs to spend a hell of a lot more time thinking about, because from where I stand, I can’t tell if many ( if any ) of you have ever given it any thought at all ( yes it really appears that bad to me – and that’s with me holding you to a lesser standard per unit of resource access, than that to which I hold myself ). You can say I have unrealistic expectations, you can call me delusional, you can say anything the fuck you want, and I’ll still be right – your perspective sucks sweaty donkey’s balls, you should be embarrassed by the short-sightedness of it, and you really ( desperately ) need to change it.

Too many times I see tech companies making moves which work against their own users, which are clearly done for purely short term commercial reasons, and which arguably make their own job harder in the long run – UNLESS – they have a captive and passive audience which expects nothing else, and is easily manipulated by marketing. But Microsoft, this is actually NOT your user base, and you shouldn’t want it to be, because your real user base is quite diverse, it is supposed to be that way, and it actually depends entirely on that diversity.

Now you’ve made some seriously shit decisions in Windows 10 from a technical perspective, in fact you’ve been broken ( utterly trashed ) a bunch of things I would call fundamental and irrevocable RULES of good software design and implementation … ok, there’s a few nice aesthetic concepts versus Windows 7, but they’re extremely poorly implemented, and even had you done them well, they should NEVER have taken precedence over certain things you haven’t touched at all, they shouldn’t be an excuse to break those good design principles I mentioned, and they’re utterly undermined by the associated problems they are accompanied by ( which are quite clearly technically related issues, and which I can tell without needing to see a single line of your code ).

Honestly Microsoft, think of this as an intervention … Windows 10 in its present form is such a load of absolute rubbish, that I do not trust it one bit in terms of stability, and as far as I’m concerned it places my physical hardware at risk of early failure … it is an astounding testament to the incompetence and insanity of business thinking, that anyone capable of making these kinds of mistakes could end up leading one of the biggest ( the biggest ? ) tech companies in the world … that boggles my mind.

My intention is to make a barebones Linux system, only run Win7 and Win10 as VMs with GPU passthrough, and to eventually get myself entirely off your software, because if you need me to tell you things like this, at this stage in your own and the world’s technical evolution, then I’ve had enough because I can’t afford to risk my hardware on a company this delusional, incompetent, and selfish … without massive and fast changes, you’ve lost me, and I’d highly recommend others consider saving their dollars and moving to one source platforms and applications.

Leave a Reply