Scope statement 4 – Networks and mobility

On these days, general-purpose computers not connected to some kind of network (either a local-area network or the Internet) has become rather the exception than the rule. Only video game consoles do not all endure intense network usage at the moment, and they are all technically capable of it. High network connectivity led also to increasingly high sales of laptops and mobile internet device. How can one follow this evolution ?

An extreme approach to networked and mobile computing that grown quite popular lately has been the idea of going into some “cloud computing” madness and try to put every computer task on the Internet, making people lose property on their data and their applications and become unreasonably dependent from their Internet connection and from the servers who provide them real computing power and own their data. This also implies totally trusting the companies owning these servers, including if you’re a competitor or considered as a terrorist by your government like a lot of people in China…

This does not sound like a good idea to me. If one day the cloud idea definitely wins (i.e. using cloud becomes mandatory to get a job as an example), I’ll be forced, in order to keep some customers, to provide support for that huge mistake. But this day is not today, and as long as I can, I’ll do my best to favor smart computer users who prefer to stay away from cloud computing by providing an excellent local, network-independent computing experience. Nevertheless, that does not mean that networking will be bad on my system. For network and mobile computers users, I’ll provide :

  • Trivial network configuration : For connecting to common networks of today (LAN through Ethernet and WiFi with and without proxys, Internet through dial-up, PPPoE/PPPoA, and mobile networks like HSDPA/CDMA), the user will only have to know absolutely required information (generally login information or IP adresses). Everything that can be managed by the operating system will be, with as usual an option for the power user to check and tweak those automatically-generated settings.
  • Good roaming : Laptop owners generally connect to several networks depending on where they are. An example could be one WiFi at home, one WiFi at work, and CDMA connection in-between. Transition between different connexions should be smooth : the computer should be able to connect to whichever known connection is available automatically. Situations where signal power is low would also be managed carefully : the computer should detect a substantial decrease in signal power (meaning that the computer is moving out of range), check if there’s a more powerful known network available, maybe ask the user’s permission to switch to another network (especially if it means switching to a pay-per-use mobile network), and if nothing is available announcing that signal power is low while still proposing unknown networks to connect to. This would be much better than simply whining “network signal power is low” or “network has been disconnected” without proposing a single constructive option to the user, which often proves to be frustrating.
  • Power management : Laptop and mobile computers have a hardware constraint that desktop computer don’t have : they have to cope with a battery that can only store a limited amount of energy. Electrical power hence has to be managed more wisely than on their desktop cousins. Three kinds of optimizations are possible in this area : manual optimizations where programs are aware that they are running on a laptop and take specific measures in order to reduce their power consumption, automatic shutdown or activity reduction of hardware that has not been in heavy use for a long time, and predictions (for example, if a program has always be doing things that last a fraction of second, the OS may suppose that it won’t take much processing power in the future and hence reduce processor speed when only this program is running). There clearly is a compromise here : if hardware power is too much reduced, unsatisfactory performance will occur, and the user won’t be pleased. Moreover, the latter techniques are more “dangerous” than the former, as they higher the risk of doing unwanted things. How that compromise is managed is user-dependent, and should be asked to him at first boot (as an example).
Networks and mobile computers are a wealthy part of the computer industry, and the big demand from users has the consequence of having quickly-evolving hardware and software : a few years ago, no one would have thought of using an underpowered laptop for internet browsing and office tasks, which has become fairly common today with the appearance of netbooks. Supporting quickly-evolving hardware and software is an interesting issue, and will be the subject of the next and last part of our scope statement analysis. Thank you for reading !

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s