But at least I know I’m biased. My bias is not unconscious, I’ve known about it since the early 1980s. I have a dislike of Microsoft development tools, in particular VB, C# and .Net (OK, even I have to concede that Visual Studio is a decent enough IDE).
And I’m not alone. Lots of software developers avoid Microsoft development tools for their own reasons, and this is a problem for the Isle of Man.
Anyway, a little history, about my particular bias.
Back in the early 1980s those of us working in the emerging technology of microprocessor-based computing worked with 8-bit processor architectures – because that’s what there was. The 6502, 6809, Intel 8085 and Zilog Z80, the most popular CPUs of the day, were all 8-bit chips and consequently could only directly address a memory space of 64 kilobytes. Yep, 64KB – not a lot.
I used to develop software for the Intel 8085 / Zilog Z80 architectures, running on an operating system called CP/M. A modern edition of Windows will usually consume a minimum of 1GB of RAM – and takes up to 3.5GB if your PC has lots of memory, whereas CP/M needed 7KB – so even if you only had a little computer with 32KB you would still have over three-quarters of your memory available for your program and data, and potentially 85% if you had a top-spec micro with the full 64KB of RAM. CP/M was much more economical than Windows.
But, and here’s the catch, if you used a Microsoft compiler (MS Fortran, MS BASIC et. al.) to compile your program you were shafted. The Microsoft language compilers required a 28KB runtime module, plus the space taken by your code, so if your code was 5KB the total memory consumed before handling any data was 7KB + 28KB + 5KB =40KB. Even with a large 64KB microcomputer that didn’t leave a lot of space for processing complex data. Alternatively, the compilers from another software tools company, Prospero, used to crunch code down to a minimum executable size of 2.5KB. Needless to say, I used to use Prospero compilers because the Microsoft software development tools were just too greedy in their use of memory for my work. And therein lies the ancient root of my bias.
Skip forward 15 years into the mid-1990s and 16-bit and 32-bit microprocessors allowed us to have much more memory. CP/M has been displaced by MS-Dos and Windows, but Microsoft’s development tools were still extravagant. I and many, many other programmers instead used Borland Delphi for the development of Windows software. Delphi was more efficient, compiled faster, produced smaller executable software which ran faster, and was cracking at interfacing with databases. Many of the non-Microsoft software packages available for Windows were (and are) developed using Delphi, which is still regarded as being a more productive development environment for programmers. Simply, Delphi generally allows programmers to produce better and faster software more cheaply than the equivalent Microsoft tools. These days it also enables programmers to write once and deploy the same software to Windows, macOS, Linux, Android and iOS platforms – what’s not to like?
Delphi is not the only non-Microsoft toolkit popular with serious software developers around the world, there are several excellent non-MS toolkits for producing Windows software, and then of course there are many programmers focused on other platforms such as macOS and Linux, meaning that the vast majority of software developers do not use Microsoft tools and do not develop using .Net.
Therein lies our problem. As observed by several bemused come-over techies, the Isle of Man financial services and e-gaming sectors seem to major on .Net. Most of our local business IT teams want programmers with .Net. The Isle of Man is a .Net haven, but unfortunately the rest of the world is not. Maybe one in ten of the CVs I see from top-notch off-island developers who would like to relocate to the Isle of Man major on .Net, the rest (whilst being good software developers) have invested their time and professional development in other software technologies – and our lack of technological diversity means that many Isle of Man employers don’t want them. Our national shortage of software development skills is in part caused by our national bias towards .Net.