The Vagaries of Tech Elephants
It’s true little companies can disappear or change their plans rapidly, although I think the biggest changes normally come when a little company is acquired by a big company.Â We often think bigÂ companies are like large, lumbering elephants, but big tech companies will often change where they’re going very quickly.Â I think the problem is worst in the huge consumer/mainstream markets.
Microsoft is an easy source of examples.Â Microsoft was actively developing IronPython and IronRuby in 2007, but by 2011 they decided to change directions, and stopped; maybe the grass wasn’t so green in the dynamic languages pasture.Â I guess F# is the “new” hot MSÂ language, and it does look groovy, but I wonder if they’ll still be supporting it in 5 or 10 years.
Microsoft has also recently de-emphasized .NET with the arrival of Windows 8, and many other hyped-up Microsoft technologies seem to get pushed away rapidly, such as LINQ to SQL (the Entity Framework is now the cool dude) and Silverlight.Â Then there’s the matter of the preferred GUI toolkit: from MFC (ugh!) to WinForms to WPF to WPF/A to Silverlight (sort of) to Win8RT/Metro or whatever it’s being called.
Intel is another example, going all the way back to DRAM (invented by Intel), embedded processors (8051, various embedded x86 CPUs that were dropped), and of course the XScale ARM CPU (sold to Marvell).
Embedded chip companies tend tend to better; for example, we’re using the TI 320C6201 in a custom board; it was introduced in 1997 or so and is still easy to get.Â But TI has promised but never delivered chips such as the C6A8168 ARM + DSP CPU.
If you’re choosing products for a long life product, these considerations matter.Â You can try to leverage the cheapest consumer technologies (such as consumer PCs and tablets) and have to deal with products that out of production in less than a year.Â Â You can select industrial grade products that have been around forever, and will be around for a long time, but you’ll be paying a lot more and dealing with outdated product.Â As usual, the right mix will vary for each product; for example, I like the old, boring D-Sub connectors, but also use some newer connectors (such as the 3M Mini-Clamp).
Microsoft motivated me to write this post.Â I love using interactive interpreters.Â The options for .NET have traditionally included Boo (sometimes supported in SharpDevelop, but not VS), IronPython (supported in VS2010), and F# (supported in VS2012).Â I like the Python, but IronPython isn’t fully integrated with .NET.Â Boo has better integration (e.g. support for enumerations), but its development is very slow.Â F# looks interesting, but it’ll take me a while to learn it.
Since I recently installed Visual Studio 2012, I checked up on the options, and found the Microsoft had dropped official IronPython and IronRuby support.Â Boo!Â However, since IronPython is open source, development has continued, although at a slower pace, and the Python Tools for Visual Studio project has kept up, and it does have an interactive window.
I still haven’t decided what I will use as my primary interactive console (IronPython/Boo/F#), but I’m definitely going to try out the Python Tools.