Archive for September, 2007

Technology & Accessibility

I hold what might be construed to be a biased opinion about the potential of technology contribution to accessibility in general. Yes, at this point in time there is not much that technology can do to help physically and mentally challenged persons to live a much better life that both respect their independence as well as enable them to realize their full potential as individuals. However, this should not mean that the current technology we have should not be used to enable the “disabled” to enjoy the modern life that the rest of society enjoys. I was reading an article at PC world about accessibility of the iPhone; from all the reviews I have read about the iPhone is a marvelous piece of technology but with all the advances it represents, without accessibility capabilities it remains an exclusionary device to the physically challenged.

The multi-touch UI makes it significantly hard for a blind person to use unless screen reading capabilities are included to provide feedback about which buttons are about to be pressed. I don’t think this is completely out of Apple’s engineering prowess; besides, lets think of this from a broader perspective: the lack of physical keys in the phone (and perhaps the recently released iPod Touch) makes it hard to operate without looking at the keypad but with accessibility features it becomes a win for those who rely on the technology exclusively as well as a boon to those who would like to fiddle with their phone without looking at the blessed virtual keypad.

Accessibility is increasingly an important topic that has featured prominently in the ratification of the ODF (Open Document Format) as a standard. Initially accessibility was not properly accounted for in the standard but there are efforts to incorporate accessibility which makes sense since it is an international standard with support from large corporations and governments alike. While corporations are ultimately interested in creating a market for their products which include governments around the world, then it is upon government to ensure that their procurement policies foster the inclusion of accessible features. Additional information about ODF accessibility efforts can be found here.


Leave a comment

The value of the Windows API in a Mashup World

This week I added a new RSS feed to my continuously growing list of feeds but this latest addition feels weird – at least from the sound of it. The feed is called Open Source at Microsoft … I look at this feed with some amount of disbelief. The launch of CodePlex was a big enough signal that Microsoft has finally realized that it can’t fight the open source movement but even more importantly is the fact that it can and should participate in the movement. Look at the situation logically: Microsoft, hate it or love it, is THE dominant platform player on the desktop and office suite space on the user side and on the server she is quite visible as well. As such you can’t seriously expect to dismiss the meaning and impact of Microsoft in any application development/deployment decision that you make as a business person. Most of the open source applications do run on Windows except those that occupy the same space as Windows such as Linux but then again with the increasingly mainstream nature of virtualization, running Linux on Windows may not be that impossible at all. It puzzles me how comes it took Microsoft this long to realize that they have a responsibility towards open source as a whole; previous reaction of Microsoft to open source was one of disdain which inevitably spawned FUD of various kinds.

The dominance of Microsoft on the desktop was not an accident and perhaps their most coveted advantage is the Windows API and all the accompanying development tools that leverage it. Anything that threatens to shift the focus from the API to something else that is not Microsoft is a threat but we are at a time when applications are increasingly web-based which does not mean that the Windows API is irrelevant but it means that its significance in terms of application development is less pronounced. A web application developer, for example, wouldn’t be bothered much about the various API calls that he/she can make to take better advantage of Windows. So, a strategic dependence on the continued value of the Windows API from a Microsoft perspective would be a blunder of a highest order. Please note that this does mean that Microsoft should abandon the Windows API, instead they should invest in it as they have done and look at it as the base from which to move the emphasis away from the OS API. Your web application must run on an OS on the server and the browser is still a desktop application which means that some kind of a desktop OS is needed and will be needed barring a few bright ideas entering the market.

Aside from Windows API Microsoft recognized the value of collaboration earlier on and as such has a great ecosystem around its technologies through various programs for developers as well as partnering with companies that would collaborate with it. Depending on how much liking you have for the Redmondians, as they are called, you might see this as allowing partners to fill in gaps in Microsoft’s platforms and extending this view further, there are certain gaps that should have never existed or perhaps not as wide as they have existed. Just imagine how the anti-virus industry would have been like had Microsoft setout to build security into the core of the Windows OS in some way or manner right from the get go?

The current focus of Ray Ozzie, as the man who takes over Bill Gates’ CSA responsibilities, is on the web and making it work for Microsoft. I have read interesting blog entries about the strategic moves that Microsoft is making and analyzing the current state of Microsoft’s platform they are in a strong position but at the same time the challenges they face are quite diverse. It has been noted that Microsoft is a sleeping giant which seem to have awoken to the realities of ad support business model that is the bread and butter of web darlings like Google and the rest of the lot. This sleeping giant has a number of market dominance in the client OS and office productivity suit sections of the market with additional influence that comes from overseeing such a strong position. Given the aforementioned factors, what is the likely chance that Microsoft could become a dominant player in the web platform APIs game? In the recent past, I have been looking at a number of Web 2.0 APIs on the internet and so far Google APIs seems a lot more mature than the rest of the players who offer APIs. Mashups are increasing becoming popular and these APIs are the core components that bring Mashups to life.

1 Comment

Ubuntu: Development & Technology exploration box

A while back I made the decision to run Ubuntu Linux as a primary OS, after a long period of dual-booting (originally with Windows XP). I strive to made a certain level of portability between the OSes that I use which means that anything I can do in Windows should be doable in Ubuntu. My entire PHP & Java development environment has been replicated on Linux though any Microsoft.NET related development activity remain a Windows only affair (let’s face it Windows is the best environment for .NET development at the moment and should continue to be so for the foreseeable future). I have the entire LAMP stack running on Ubuntu Feisty Fawn, with additions such as phpMyAdmin for database administration.

In order to get a much better understanding of the development platforms I use, I normally make an effort to understand their setup and configuration requirements; in a situation where I run Windows I end up having multiple servers running on the same machine for my experimentation purposes as well as real development effort. For example: I have both MySQL and Microsoft SQL Server installed though it has been my experience that an instance of a Microsoft SQL Server tends to degrade the performance of the machine. In previous times, I have had multiple instances of MySQL Server running as well as separate instances of Microsoft SQL Server 2000 and instance of Microsoft SQL Server 2005 installed and running at the same time. The multiple instances for MySQL came about because of the release of MySQL Server 5.0 at the time; I need to keep my own MySQL Server 4.0 installations while trying out the new features that the 5.0 release offered.

The Linux box has become the focus of my technology exploration and it is holding up quite well. So far, it has the LAMP stack but most of my efforts are currently focused on Java. I am running the latest milestone build from Netbeans and I must say it is coming together quite well. Today, I went back to an earlier project I was working on so that I can get it to run on Linux. The project was conceived and developed, to a large extend, on Windows and thus it has some dependencies on Windows configuration e.g. file paths mostly. It is a Java project that used Netbeans as its primary IDE. The project uses the following technologies for its implementation: JSF (MyFaces implementation), Hibernate, Acegi Security, Spring framework and JasperReports. Note this: the project is not entirely depended on Netbeans since it is just a normal Apache Ant managed project. So, what I had to do was to fix any references to Windows specific paths and this was a good thing because I had to also learn how to setup environment variables for Ubuntu and hence gather a wealth of knowledge on what is done and what is not done.

I recently upgraded to M10 of Netbeans 6.0 release. I have additional plugins for JavaFX installed in addition to all the base components required. Well, the performance of Netbeans 6.0 still needs some work but that is to be expected of pre-beta software. Curiously enough, my Ubuntu installation has a total of Three (3) Java Application Servers or perhaps more specifically two application servers and one JSP/Server container. The two application servers are JBoss AS and GlassFish; I downloaded JBoss AS because of my interest in JBoss Seam and well GlassFish was part of the NB 6.0 release and it comes integrated. It would of course be more interesting to figure out how to get JBoss Seam running on an AS like GlassFish but at this point in my interest in JBoss Seam, I would much rather have something that works out of the box. So far my Java development efforts on Ubuntu have been largely centered on Netbeans though I have Eclipse installed. Eclipse is much slower though the last time I was using Eclipse was when I was writing C++ code and code completion feature kept taking its sweet time completing code.

Leave a comment

Standardizing in defense of Windows

It has been a while since my last entry on this blog … a lot has been going on that I have not been able to give this blog the attention that it deserves. Right now, the upheavals of a new semester are happily running amok all over. Other than that, the Pulse of the web seems to revolve around Microsoft mostly though Apple is getting a fair share of the attention as they announce the next generation of the venerable iPod.

So on to the fellows in Redmond: OOXML does not get fast-tracked to a standard but this is most definitely not the end of the story around OOXML. The questionable tactics that went on in Sweden with regard to Microsoft’s effort to ensure a “yes” vote both revealed the colors of what Microsoft is and even perhaps its intentions for the future. Yes, it is currently being painted as an action of an over zealous employee but then again of greater interest is how many Microsoft employees are willing and can go down the same path.

The now familiar adage of teaching an old dog new tricks seems apt in the context but at the same time the voting surrounding OOXML at this stage also does not discount the fact that the old dog does not necessarily need to forget the old tricks. I am more interested in the details of the manner in which Microsoft can leverage a standard that it proposed and basically muscled through the standardization process. Sure, a standard will benefit all in one way or the other and I am not going to overlook the fact that Microsoft has an overwhelming dominance in the productivity software space which means that the standards they proposal can and should be comprehensive enough to handle current office needs. However, Microsoft standardization can also be leverage by ensuring that you get the best performance from a Microsoft’s implementation (or perhaps even Microsoft sanctioned implementation – the Novells and the rest of them) of the standard. This essentially means that the majority of users will still remain with Microsoft though they are safe in the apparent knowledge that they are using a standard. OOXML vote fiasco at the SIS was perhaps the only incident that came to light which means that similar efforts must have gone into convincing other national standards bodies.

Microsoft’s standardization efforts are not only limited to productivity software and perhaps the seemingly sudden interest in OOXML standardization was prompted by ODF and its standardization but it looks like Microsoft’s standardization strategy stretches way back to the standardization of the blue prints of the .NET framework. Microsoft is centrally involved in various web services standardization efforts since web services is a concept that is baked into Microsoft’s implementation of the CLI. Mono is an open source implementation of the CLI but it seems to be lagging behind Microsoft.NET framework which means the best CLI development experience and user experience are still on the Windows platform. Silverlight seems to be an interesting case of Microsoft embracing the idea of standards and their implementation of standards on various platforms. This announcement of the release of Silverlight 1.0 includes news about support for Silverlight on the Linux platform (all versions) and for the Linux support Microsoft partners with Novell; in this case the target is obviously flash but the manner in which it is happening (the additional platform support beyond Microsoft’s own Windows) is interesting and perhaps points in the central strategy of defending the Windows dominance.

Channel 9 RSS Feed:

Silverlight 1.0 has left the building! For a lightweight (1MB) release, Silverlight delivers a lot: HD video, vector graphics and animation, running on browsers from Firefox to Safari and operating systems from Windows to Linux and its myriad of distros.
In this hot-off-the-presses interview, Scott Guthrie (General Manager of the team behind Silverlight and a host of other .NET technologies) gives Dr. Sneath the inside scoop on how he thinks about Silverlight and where it’s heading in the next release.
Check out Scott’s blog post for more information.
Tune in!
Listen to the podcast(MP3)
Listen to the podcast(WMA)
Download the Video
Watch the Video

The Netscape threat to Windows was summarily handled and countless threats have been dealt with in similar manner but at this point I think the whole idea is to keep everything revolving around Windows because the significance of increasingly capable mobile devices may shift the center of attention to something else that is not already controlled by Microsoft. Granted, they play in the Mobile devices space through their Windows Mobile OS but their approach to mobile devices is seemingly a transplant of the rules they have perfected on the desktop to the mobile devices industry. A computer company that seems to be winning the effort to bridge computing and mobile worlds is Apple as shown by the success of their iPod and the attention they commanded with the iPhone. The iPhone is an evolution of the iPod concept but the focus for Apple with this efforts is on the hardware and the service surrounding the hardware. It may be too soon to judge the success of the iPhone but Apple seems to be doing a number of things right in this space.

Leave a comment