|This document is available in: English Castellano ChineseGB Deutsch Francais Italiano Nederlands Portugues Russian Turkce Arabic|
by Georges Tarbouriech
About the author:
Georges is a long time Unix user. He likes those really innovative products that are able to change our present way of working.
IOS stands for Internet Operating System. It is a commercial product intended to facilitate collaborative work. Rebol is the conceptor of this incredible piece of software. LinuxFocus has had the opportunity to test an evualation version for a 30 days period. This article tries to present this REBOLution.
Among other things, REBOL has an unique property: the extremely
small size of the applications that you can develop with the language. You can
have a look at this "old" article to discover how
powerful it can be and how easily you can develop working applications for
about 40 different platforms. Rebol/View, for instance, is 587 KB and allows
you to develop almost everything you need. You can download it for free from
the Rebol website. You can also download more than
300 example scripts that will teach you everything.
You'll never find another way to create applications so small in size with any other programming language. IOS was born from the same philosophy. That is, a dedicated server provides you with everything you need, and, as a client, you get many distributed applications on a very light desktop, running under about 25 different OSes. Of course, you can develop your own applications according to your needs. However, this is a very short summary, since IOS is much more than that.
Many young (and older) people may wonder : what is this guy talking about ? What do we
care about size ? Today we have 20 or 40 GB hard disks, lot of RAM, "racing"
CPUs, why should we keep things small ? They feel like telling me : come on,
old man, things have changed ! Absolutely right... BUT, what about the
You probably noticed that more and more people use the Internet. Many of them use modems to connect to websites, to send and receive their mail, etc. And, obviously, this consumes a lot of bandwith. That means, even with a cable or a DSL link, connections are getting slower and slower.
I know, nobody cares ! Who makes the "effort" to send text or HTML instead of those @#%*$ Word or Excel documents, or who cares sending JPEG pictures instead of BMP ones ? Very few ones !!! Don't we talk about websites "offering" sound, video, enormous pictures, etc. Accordingly, working remotely, becomes everyday worse.
Nevertheless, more and more people work remotely. Big worldwide commercial firms, world organizations, etc, and don't we forget the free software community (for software development, documentation, and so on). I mean, they have people working all around the world who need to communicate, preferably in real time. This is already true... without Rebol. So what ?
Today, to work remotely, everyone uses well known tools : 50 MB browsers, 20
MB mailers, 10 MB conferencing software, 10 MB messenger software, 1 GB database software... to
exchange any type of data. Preferably, very big data (see above !). What's
new in Rebol's offer ? Nothing ! My fellows told me : the messenger allows
messenging, the mailer sends mail, the taskmanager manages tasks...
Again, it's true ! Except that the mailer is 2915 Bytes (no typing mistake !), the messenger is 14.5 KB, the who is 7372 Bytes, the conferencing software is 14.41 KB, and so on ! All these tools are available on your desktop with a 610 KB executable to connect to the server. This is the size for the Linux client; it's almost the same one for every available platform : 25 at the time of this writing.
Here is what it looks like :
We asked Rebol for an evaluation IOS version and they have been so kind to
accept. We then have been able to get 3 clients accounts hosted on
Rebol's server. Obviously, we were unable to test the server side : more on
this later. Since it is a LinuxFocus test, we used... the Linux client.
All we had to do was to download a small executable and run it (Yes, I hate executables, but in this case, let's say I trust Rebol). This installs the client on your machine : it takes less than 1 minute !
If Rebol/View, for instance, is installed on your machine, you don't even have to configure the client since the information it needs already exists. That is the email address, the pop and smtp servers addresses... However, you must provide username and password Rebol gave you. That's it : you are ready !
You can use every tool present on the desktop : the messenger, the email, the conferencing software, etc. By the way, new reblets are frequently added. Utilities are also provided, such as a calculator, a clipboard, an info panel, etc. Here it is :
As soon as Internet communication is concerned, the security risk is very
high. How did Rebol manage this big "affair" ?
As usual, they kept things simple, easy and trustworthy.
As already mentioned, we have not been able to test the IOS server. But an
admin guide is available from the IOS desktop documentation. Furthermore,
people at Rebol are so nice to answer your questions : this is not that
frequent and has to be said. Even more interesting, they answer your
question in real time using the IOS messenger application. Not bad, is it ?
(By the way, when do they sleep, since the jet lag between them and me is
about 9 hours ?)
First of all, the server can run many different OSes. Most Unix or Windos servers can do the job. IOS security is managed from inside and integrates into your existing network without changes to your infrastructure. Let's hope your network is already protected with firewall, proxy, NIDS (Network Intrusion Detection System), tunnelling, etc.
IOS operates on top of the web server, using the HTTP protocol with a tunnelling technique. This web server is used as a gateway to connect to the IOS server. A cgi program acts as a proxy to redirect data from the web server to the IOS server. Every communication is encrypted. The IOS server stores the data. Another process synchronizes the data between the server and the client. That is, the new data is automatically downloaded to your hard disk.
Last but not least, it takes about 5 minutes to install the server if you already have a running web server.
Of course, this is a very short explanation, but it shows that the Rebol philosophy has been applied there too. Let's add Rebol provides you with Reblets making administration even easier.
We already described the ease of the client installation. Nothing much to
add, since it takes less than 1 minute.
As a client, you connect to the server with unique session keys, thus authentication is guaranteed. Everything circulating through the network is encrypted. Connections can be restricted to specific IP addresses, to specific ports (incoming, outgoing). It then becomes like a peer-to-peer connection.
Concerning files and directories, the permissions can be managed in a very easy way. The accesses are limited to a local specific area. That is, an user can only access its own area. And so on.
There is much more to say about IOS security scheme, but we would need various articles to cover everything.
To make it short, IOS security is very well thought. I tested the data circulation with tcpdump and saw nothing but the connection itself. I scanned the server with nmap and got no answer at all. Of course, this doesn't mean there are no vulnerabilities : we all know security never reaches 100%, however Rebol did another great job.
All right, Rebol is providing proprietary software. Of course, it has to
sell it for a living, even if you can get many products for free. However,
IOS for instance is sold in different ways : here is the range of IOS
IOS Express is for large/midsize business.
IOS Lite is for small business.
IOS Host is for hosted business : Rebol hosts on its servers.
IOS Alliance is a support program for commercial developers.
Obviously, according to the choice, the price to pay will be different. The introductory retail pricing is set at $2000 for the server and 10 clients. Additional clients are $100 each. For large amount of clients, a discount can be negociated.
This is for information and could change in a near future, according to the number of applications provided with IOS.
IOS is so ahead, while keeping things simple, that it becomes difficult to
explain all its advantages. As far as people use different products in
everyday's work they can't even notice those products are not the most adapted ones.
Either they are stuck to them or they are not curious enough to try
something else. Sometimes, they don't even have the choice. Nevertheless,
products such as IOS are a true revolution when compared to what we use
today. For this great piece of software, Rebol has no competitors. The
problem is that being too ahead means that too early other competitors can benefit. The
computer world is full of sad examples.
Let's come to the usual off-topic "area".
Rebol's founder, Carl Sassenrath, used to work for Commodore, a very big maker, for those who haven't known. The Amiga computer was one of their product. The Amiga OS was one of the most advanced system at that time : first multitasking personal computer, first true multimedia computer, first using multiple chips, etc. Commodore has been unable to sell it like it deserved. It took years for other makers or editors to reach the same technical level... but these "others" succeeded in selling their products, sometimes "forcing" people to buy them.
Carl was involved in this great work on Amiga OS.
Later on, still for Commodore, Carl worked on the CDTV, let's say the father of the set-top boxes. Again, Commodore has been unable to sell it. However, a few months after the release of the CDTV, another big maker released an equivalent... and succeeded in selling it. All this to say that Carl has always been ahead, but may be too ahead. What should have been an advantage became a drawback (sort of). His work was of benefit to others later on.
Another example could be NeXT and its OS, NeXTSTEP. More than ten years after, people discover MacOS X, often without knowing it is a very old system... called NeXTSTEP. This is a bit different, since the same man is behind both systems.
But again, it seems that being too ahead can produce a negative result. A sentence summarizes the "right" way of working : "we don't copy (plagiarize), we only try not to make the same mistakes than the ones who opened the way" (the true sentence may be a bit different). Guess who said so ! Any idea ?
This digression leads us to a question : will again Carl and friends work benefits to others ? Well, many people don't realize how advanced are IOS and the Rebol range of products. However this could "give" ideas to some editors. But, there is one thing they won't be able to "copy" : the size of the applications and the language to create them. Since I don't really believe that communication speed through the Internet is going to improve tomorrow, I keep thinking Rebol is the only one to understand the problem. I am aware of the very high speed already reached on Internet, but when do you think this will be available for everyone ? Don't we talk about the cost.
Sure, cable and DSL links improve things a bit when compared to modem or ISDN links (at least, sometimes, especially with cable connection). Anyway, even with high speed, small size applications will always be faster than the bigger ones. For a company it is something quite important : it means less cost (communications are shorter), more efficiency (people can work disconnected and without needing to download MBs of data), more security (since many servers all around the world are like sieves), and so on.
Last but not least, most of the security part is managed from IOS server and doesn't require the knowledge needed to secure a network. That is, if your network is like the above mentioned sieves, you will have an acceptable security just properly installing the IOS server... even if I don't recommend this !
Collaborative remote work is spreading everyday more. Many well known
solutions exist but they often are quite expensive and heavy to implement.
Rebol provides us with a new way to work, to think : lightweight distributed
applications. The approach concerning distributed applications is not quite
new, but when you add "lighweight", it is.
Products such as IOS and friends represent a really new approach. As usual, "there is more than one way to do it", but the Rebol's one is just incredible. I'm not saying that you must get rid of other languages or software. For instance I keep "loving" Perl or MySQL. But IOS is something else : used in conjunction with Rebol/Core, Rebol/View, Rebol/Command, it becomes the ultimate tool for remote collaborative work.
Of course, you are reading LinuxFocus and we usually talk about free software. However, proprietary software, when really innovative, cannot be left apart, especially when it can run under most of the available OSes.
To reject this obvious fact would look like integrism.
Furthermore, people at Rebol, are not only nice and helpful but also very open minded, what is not always true for others, including some people in the today free software community. Sorry, but it's another fact !
Suggestion : try Rebol products and like Apple says "think different". Forget what you are used to and do some testing with different Rebol software. I'm sure you won't regret the time spent. For a good start, go and visit Rebol website. Download Rebol/View and the example scripts : you will understand everything about the REBOLution.
You can also read the book "Rebol" from my fellow Olivier Auverlot from the French magazine "Login". This book was written in French, but an English translation is on its way and should be released very soon (if not already published at the time of this writing).
If you want to know more about IOS, you will find a lot of information at Rebol's website. The scenario is recommended reading since it provides an example of what a medium company can do with IOS.
Aren't we really living in a great time ?
Webpages maintained by the LinuxFocus Editor team
© Georges Tarbouriech, FDL
Click here to report a fault or send a comment to LinuxFocus
2002-02-14, generated by lfparser version 2.25