A ubiquitous software company

written by Ashley on at
topic relations:  technology

Microsoft Windows and Microsoft Office. These are probably two of the most iconic products for the average computer user. And somehow Microsoft has taken a very bad rap for their Windows and Office products. I too went through a large phase of rejecting Windows for the much more flexible GNU/Linux flavour of operating system. But in recent times, I've come to appreciate some things about Microsoft that aren't so obvious when you are just a Word, Internet Explorer and Solitaire user.

I know that I may not have a lot of authority on this subject, since I yet to be a full-time .NET developer. But in recent times I have been exposed to some of their newer .NET technologies, and have even found some older Microsoft technologies and concepts in areas where I never thought existed.

For starters, the new .NET frameworks are amazingly easy to get started programming for. At least on the user interface level, these frameworks expose so much useful capability that you can really only spend an hour or two and hammer out an extremely polished application (provided it's a small application).

The two parts of the .NET framework that I have been exposed to are the Ink frameworks (from the older XP days), and now the newer Windows Presentation Framework (WPF) found in Windows 7. Can I tell you that these frameworks give you upfront access to some very useful capabilities upfront.

For the Ink framework, it literally only takes a few minutes to rig up a full-blown Tablet PC application that will give you fully indexed and searchable handwritten text - no need to convert the handwriting to text - just leave it as text and you can interact with it as if it were typed text on the programming side of things. All this without needing to know anything about the theories and algorithms behind modern handwriting recognition (which by the way, if you have never experienced on a Windows 7 Tablet PC, you have no idea just how amazingly accurate it is).

For the WPF, I've discovered just how amazingly easy it is to setup all your fancy multi-touch pinch-zoom gestures that Apple popularized. It's literally only a few lines of code.

And I'm sure the list goes on. More recently, I've discovered just how easy .NET makes interacting with external databases. Everything feels so seamless to me at a first glance.

And even reading articles about some of the concepts behind traditional C++ and the newer .NET managed C++ and how you can combine them in the same application makes me just realize how powerful it truly is.

It's been a long time since I've done any high-level programming. And suffice to say, so far, my experiences with the latest iterations of .NET have been quite pleasing.

I had a stint of Apple Cocoa and Objective-C, and I was not too fond of that. Somehow C# just seems like a much more familiar language - even though I've probably only programmed in it maybe 2 or 3 times, and never for a major project. Objective-C was for a term project, and I still couldn't wrap my mind around it by the end.

And then there is something odd that I discovered the other day while reading up on industrial automation technologies at work. OPC, or OLE for Process Control is a set of industry accepted specifications to facilitate the communication of real-time data from Programmable Logic Controllers (PLC) to user interfaces and other monitoring systems in an industrial process control scenario. This is based on technologies developed by Microsoft for the Windows operating systems.

This, I thought, was quite interesting. That means that Microsoft's influence extends to things even as far removed from personal computers such as the jam in your peanut butter and jelly sandwich. Or even the ice cream in your freezer. These things were manufactured by processes controlled by PLCs, which likely use OPC as a communications technology somewhere along the line.

No feedback yet

Leave a comment


Your email address will not be revealed on this site.

Your URL will be displayed.
(Line breaks become <br />)
(Name, email & website)
(Allow users to contact you through a message form (your email will not be revealed.)