Some of the areas that need more work on the technology side are:
Optimising Memory Management, so that when the apps like OpenOffice and Evolution run on different Thin Clients, how can we ensure that there is only one instance on the Thick Server. Currently, each apps is loaded into memory every time it is executed on the TC.
Reducing LAN Bandwidth needed from 100 Mbps first to 10 Mbps (so it can run on WiFi) and then to 1 Mbps (for cable modems). There is a lot of data transfer happening between TCs and the TS. In a corporate on a 100 Mbps LAN, it doesn’t matter. But in the other situations where we want to target homes or look at a wireless LAN, the bandwidth used is going to make a difference.
A closer look at VNC (virtual network computer) software and seeing how we can use it better. Today, we use it to get a Windows desktop on the TC.
Architecture and Server Sizing, to support 100+ users. Today, we assume there is a single TS which can support 35-40 users. What if there were more users? How can multiple TSs work together? How do we create a scalable architecture on the server side? We may need to use some Linux clustering ideas.
Windows applications support on Linux, either through open source solutions like Wine or commercial solutions like CrossoverOffice, Win4Lin, and others. We need to take common applications like Foxpro, Visual Basic, Oracle, MS-Office and Tally (in India), and make sure we get them running on Linux. We cannot go into enterprises without support for Windows applications.
WiFi and Power-line modems testing, to meet the challenge of cabling. It may not always be possible to lay out new Ethernet cables for the TCs. In this situation, we should see (assuming cost were not a constraint) how we can use some of the newer technology to connect the TCs with the TS.
Using Mozilla as a platform to build applications, with one idea being to integrate a micro web server into the browser to provide real-time two-way updates. Much of this would be useful as we build out our digital dashboard.
Support for other languages, so we can take it internationally. Here, we need to especially see how to support Unicode / double-byte.