No, BeOS is not dead as many will speed to the forums and proclaim. YellowTAB‘s Zeta is the true inheritor of BeOS 5’s fortune, as it is based directly on Dano/EXP’s codeline (which was supposed to be BeOS 6 but was never finished as Be sold its IP to Palm). At last, I got my hands on Zeta Beta-5a, and here is what I found and think of it so far. You might need to have some experience with BeOS in order to follow this article, but screenshots are included to make it easier for everyone.
YellowTAB rewrote BeOS’ installation procedure and the result is called the “ZetaInstaller”. It is similar to the BeOS installation application except for the fact that you have a few more options to take care of and manually tick, for example, selecting which kinds of applications you want installed (emulators, office, development, games etc.). There is also a new button named “language,” which loads a window with rather weird options for an installation procedure (I still don’t understand what this “Strings” tab does). Check the first screenshot regarding this new window. (Update: I got word that this will be replaced by a simple drop-down menu for language selection – better that way).
It takes about 15 minutes to install Zeta and it is not difficult at all. However, it is more involved than Be’s original Installer and in my opinion, it shouldn’t have been. The fact that the user has the ability to select applications one by one to be installed might seem as “power to the user” to some, but for me it is completely unnecessary and it brings a dreadful Linux-like feeling to the installation (the whole OS is less than a gig when installed anyway, so I see no reason for such selections).
With this new installation, YellowTAB fixed something that didn’t need fixing and left the real install limitation of BeOS still unfixed: during installation, the user can only “initialize” partitions as BFS in order to install BeOS, but can’t create, edit/resize partitions. This is a huge limitation for most new users and plagued BeOS back in the day, and it will continue to do so, unless the user already has a free partition waiting for Zeta. YellowTAB should have concentrated on fixing this limitation of BeOS’ Drive Setup instead of adding useless features like “Stings”, application selection and “GCC version choice” that only bloat the installation and do not follow the paradigm that Be had and everyone loved: “keep it simple”.
Another thing with the new installer is that it doesn’t (yet) support point to point installation as the older installer supported. This feature allows a user, while booted into an already installed BeOS, to set as “Source” the CD or any BeOS hdd partition and as “Destination” any partition and BeOS would automatically get installed to the new partition without needing to boot from the CD. This feature was as life/time saver for most users!
Overall, the installation IS good and simple, simpler than most Linuxes and Windows that is. But not better than the original (except the language setting which is indeed useful).
The Zeta boot screen is a bit different than BeOS’; the same really, but with Zeta’s logo. However, what is immediately disappointing is that Zeta takes 23 whole seconds to load on this machine (a machine which has had BeOS 5 on it forever and loads it between 9 and 10 seconds). I did a little research and found a few of the reasons for this slowdown. First and foremost, Zeta comes with some 400 fonts. Personally, I find this ridiculous. BeOS/Zeta never even had a DTP application written for, let alone a pro graphics package that would justify the decision to come with so many fonts. I see no reason to bloat the default installation with 400 fonts when they won’t be used by most users, and especially the kind of users that will buy this product, who want BeOS for speed-speed-speed. The other reason is the startup sound, which is 1.3 MB (original Be startup sound is about 140 KB). I am sure there are other reasons for the slowdown but these were the only two that I was able to isolate (Update: YellowTAB is looking into the problem, might be Tracker’s new SVG capabilities that create the problem). Other than that, the first boot in this beta version of Zeta greets you with two dead replicants, but that’s easily fixable (as long you understand what a replicant is, which is a concept that new users have trouble with).
From startup on, the OS feels a lot like the legendary leaked version of Dano/EXP with most of the BeOS 5 apps able to work (about 8% of the BeBits‘ ~2900 BeOS apps won’t run on Dano/Zeta because they are too old and the API has changed a bit). YellowTAB has changed the Deskbar folders from ‘Applications’ and ‘Preferences’ to Demo, Bookmarks, Software and Preferences. Software now has a number of submenus with application launchers, like games, office etc. I like the order found on Software’s hierarchy, but now that YTAB decided to put subfolders there, maybe the “Demo” folder should go under Software too, in order to avoid clutter in the root window. As for the “Bookmarks” submenu, it would only have been useful if these were the same bookmark-set as the ones NetPositive (BeOS’ browser) creates instead of a completely different set of bookmarks files. I see no point having these 5-6 bookmarks there linking to YTAB’s sites and friends, while it doesn’t use your own Net+ bookmarks at all. It defeats the purpose of having a bookmarks menu, at least in the way KDE and Windows use this feature.
On the good side of things, you will find that YTAB has worked on their themes and they got it… more right than in their past attempts. They include a number of window manager themes, but most are just variations of the same theme, so overall there are about 8-9 different window manager themes to choose from. I got fond of the “Smoke Decor” to be honest. It has its problems but it seems to be the most carefully designed of all.
Another great thing that I love about the Dano/EXP codebase — now found at Zeta — is the “smooth window dragging”, which is explained here better (only visible on CRT monitors, LCDs won’t feel the difference). MacOSX is the only other OS that has this feature (and in fact it does it better than the BeOS, as the BeOS’ way is a bit of a hack since the Be engineers didn’t have the full specs of the graphics cards they were supporting in 2D mode back when they were implementing this feature. Under BeOS there is some tearing when moving windows, on OSX it is “clean”). Other new features include flicker-free updates of windows, more color sensitive UI, non-rectangular window support and more.
YellowTAB includes a number of applications with the OS. This version I tried, beta 5a, featured CD tools (e.g. Helios), a few demos, development applications (e.g. CodeLiege IDE), the Bochs emulator, three games, some internet applications (BeAIM, BeShare, Mozilla, NetPenguin, Beam, Phoenix), some third party multimedia apps in addition to the BeOS ones (e.g. SoundPlay, SampleStudio, DVDRip, VideoLAN), BePDF and more. There is still space on the CD to be filled up with apps, as the ISO was only ~500 MBs.
YellowTAB has developed a few applications from scratch, like the FFMpeg front-end which allows you to encode videos, the Fax-It application which allows you to send faxes and another one called BeEAR, which I have no idea what it does as the app would only load itself in German language, even though my localization was set to English (my guess is that it is an address book though). There is also a To-Do application, called ToDoIt, also coded by YellowTAB and, as the other YellowTAB applications, will only be available for Zeta.
Zeta uses a modified OpenTracker and Deskbar version which supports Internationalization and a few other goodies like cut/copy/paste directly when selecting some files/folders (a feature missing from the original Tracker). This Tracker also supports SVG, but I found no way to enable its settings globally (you can only control it on per-window basis, as far as I know, I could not for example set all windows to 128×128 or 16×16). Deskbar now supports “Team Expander” which will expand the running applications’ windows to be able to select them directly instead of having to navigate on a submenu to reach them. Nice add-on, I really like it, but there are bugs still. The “Move To”, “Copy To” and “Create Link To” context menus have been enriched with more options. So far, I had many instances where NetPositive and other apps won’t respond to my mouse’s double click to minimize, while the minimize button (found only on some themes) does work.
YellowTAB comes by default with a number of useful Tracker add-ons, including a brand new one named “Fax these files”, which loads a new FAX-It application created by YTAB+friends especially for Zeta. Overall, some good new additions and options and some bloatware/duplication ones, like the addition of DockBert, a MacOSX-like Dock application which, when it comes down to it, it does exactly what Deskbar does. It serves no purpose having two different taskbars on the same OS, and BeOS was never the OS of many choices (like OSX and Windows too), it was the OS with the best defaults. Zeta seems to fail in this regard, adding a lot of new but similar things instead of perfecting the solution at hand that is proven to work.
YellowTAB comes with… three GCC compilers. GCC 2.94, 2.95 and 3.2. YellowTAB claims that including the old BeOS compiler is necessary for easier adoption of the platform by the existing BeOS developers (applications compiled with GCC 3.2 won’t run on anything but Zeta you see, so the older compilers are needed). In my opinion, this is a bad situation. YellowTAB should bring the OS forward. When Be moved to R5, their forward compatibility issues wouldn’t allow creation of executables that could run on R4.5 either, but all older applications would run on R5. They made a choice to not allow legacy into the OS and without having an impact to the users, as all older binaries were still working. In my opinion, YellowTAB should take the same course and move the OS to GCC 3.3 and optimize it for all sorts of new cool stuff and forget the past. Allowing binary compatibility with R5 binaries is enough, developers will migrate with time.
Zeta comes with BONE, which was the new networking stack for Dano. It was modeled after BSD’s networking stack (it is not a port though, it is brand new code), and it offers much-superior performance to the old user-space based net_server which used to crash very often. Be left the BONE development in pretty much 90% of its completion and debugging but I don’t have any information about whether YellowTAB has completed the job or left it as-is.
Dano/EXP was also coming with some 3D support (Voodoo 3/4/5, ATi Radeon up to Radeon 8500, some Matrox G400/G450 3D support, Intel i810/i815/i820 and an SiS model I can’t remember now). Jason Sams, one of the brightest Be engineers that ever joined the Be team, created the GL stack and drivers with little help from others, and our benchmarks back in the day at BeNews showed that this was a very fast stack by year 2000 standards. However, no one really can get into Jason’s mind as there was no real documentation on how he put the whole thing together. Other Be engineers who looked at Jason’s accomplishment were left scratching their heads on how it worked (Jason had also created a brand new programming scripting language which looked like assembly to help him with the development). Jason works for nVidia these days (he left PalmSource recently). YellowTAB is left with no documentation about this particular GL stack, so there was no 3D support in the Zeta I tried. In fact, running a few *software* GL applications would result in crashes after a while (even the simple GL Teapot app). Please note that this PC has been running BeOS 4/5/betas for many years now, so it is definitely not my graphics card at fault here. YellowTAB is telling me that we will have to “wait and see” about 3D support; they do have something at work but it won’t be ready for quite a while.
Speaking of drivers, YellowTAB has brought to the table a number of new drivers, like better 2D support for ATi and nVidia, some more networking card support and Audigy, AC97 support. Zeta also features the new printing API and tools Be designed that look extremely nice, professional and simple! Check screenshot.
YellowTAB also works on the LocaleKit which will allow Zeta to support localization for most languages, something that BeOS lacked severely. They have contributed work on BeAIM, Jabber, wireless LAN drivers, video capture card support, support for latest CPUs (I think HyperThreading support is already there, Be added it a few years ago, when Xeons HT were not even available, with the help of Intel). YellowTAB also did some work on AbiWord, on a new word processing application (no details yet) and they now support all three kinds of USB (UHCI, OHCI, IHCI – BeOS 5 only supported Intel’s USB well, but VIA’s not very well or not at all depending on the chipset). There is also a new add-on to be added to Zeta, which will bring ODBC support to the OS! YTAB was telling me that this module will be available for testing soon.
Zeta uses the updated Media Kit, which doesn’t have broken support for codecs as the earlier versions of BeOS had… And hopefully, there is better support for the SB128 sound cards which was the main complaint in 2001. Also, a port of MPlayer is at works too. I just hope they will rewrite the GUI to be Zeta-like and simple.
The group is also considering the development of a rootless X11 (similar to how it works on Mac OS X and QNX) so applications like OpenOffice.org and other applications would be much more easily ported rather than going through the major pain doing a direct port (BeOS is kind of a pain regarding ports because it is very different architecture-wise than any other OS out there). When on rootless X11, its applications would run side-by-side the native Zeta ones. Personally, can’t wait for a fully accelerated port of X11 on Zeta.
Bugs and problems
In this beta, I found a few problems, bugs and things that I personally wouldn’t agree with as a very old BeOS user. I don’t use BeOS much anymore, but I do have a good grasp of its excellence in some points and its suckiness in others, so please forgive me for being opinionated.
So, here are a few problems I found in this beta and I wholeheartedly hope they will be fixed for the final version:
1. The fonts are bad. Very bad. I don’t know what YTAB changed in the settings of the font rendering engine, but fonts are plain ugly. Dano/EXP also used this new font engine, but it wasn’t as bad as in this Zeta beta. Linux’s latest font config is worlds better in my opinion.
2. The preference panel “Fonts” is now broken. Changing the font size in the “Plain Font” only changes it to the context menus, but not in the menus of the applications, as it should have.
3. SoundPlay and its plugins and email client Beam crash like there’s no tomorrow. No DivX support I could see.
4. There is a problem with the font sensitivity of the UI, and it is especially visible with *some* themes. I don’t know if this is a bug of Zeta or a bug of the theme. But on some applications there are problems with widgets colliding with others widgets (they render on top of the other).
5. There is no security/protection for the user, even now with the introduction of BONE, like a personal firewall. Something more advanced like internet connection sharing, would be cool to have too. However YTAB has worked on better ISDN support and that’s a plus.
6. The logo of Zeta in the Deskbar is really amateurish and when you click on it you get an even uglier look. But hey, it’s a beta, right?
7. No scanner support as of now. Bernd tells me they are working on it though so this is promising.
YellowTAB is a small team and it doesn’t have all the resources to work full scale on every aspect of the OS. However, the realities of the marketplace won’t be kind to the company, so I feel I am forced to also not soft-pedal my criticism.
Granted, this is a beta. However, the direction the OS is taking is already clear: Add features and more new user-space applications and some more and some more. I will have to ring the bell of danger for YTAB and ask for more fixes rather than more new features. BeOS 5 was by no means perfect. But it worked well for most people. Replacing parts that are known to work well and have served well with new parts that only add unnecessary bloat (e.g. the new Installer) or duplication (e.g. Dockbert), is hardly a step forward for the BeOS paradigm. In fact, this could be considered a step backward. We certainly don’t need another Linux, with mind-boggling choice and variety at every turn. Zeta should continue where BeOS has stopped, not transform the OS into bloatware and illogicality like your average Linux distribution. Surely, I love the new drivers. Surely, I like the new Tracker (even if it is still buggy), but instead of filling up the preferences with unneeded panels I would have to ask for things like:
1.Samba. Where is a working samba? We need interoperability!
2. There is _stil_ no support for more than 90 Hz in the monitor panel. In fact, the current screen panel doesn’t expose all the abilities of the driver and app_server. Be was thinking of moving to GTF, but Palm bought them before that happens.
3. No spell checking or voice reading in the text views of any Zeta application. No real support for accessibility.
4. No multi-user yet! Yes, this can break a number of older applications (which was why Be didn’t go live with it, but Zeta/Dano already breaks apps, so let them breat in one go instead of having to break more apps again in a few years), but someone has to take the big decision and activate the Be implementation (it is just a build flag ;). Zeta is a desktop OS, but multi-user also grows in the minds of people as times goes by. It is not 1998 anymore. Even Microsoft now offers multiuser on all its OSes.
5. Why doesn’t Zeta use the _new_ preference panel that was written for Dano/EXP. Why do we still get the old panels that are now filling up the menus? (more than 12 items on any menu is considered bad by usability engineers).
6. No fix for the numlock bug which makes BeOS to not remember if the NumLock was set to ON in the previous booting. Sounds trivial and stupid but really annoys a lot of people.
7. No fix for the 1 GB RAM limit. This is maybe the biggest BeOS/Zeta limitation today. Read here for more explanation and make sure you read the comments too.
8. BeOS can’t load more than 32 MB of addons, which is needed for big applications (a problem that almost stalled the Mozilla port back in the day). No more than 192 threads per app. Say you open more than 192 child windows or threads of an application, BeOS goes ca-boom (e.g. ShowImage).
9. Still, no Java.
10. Sucky VM in the kernel. Needs fixing. Source of many problems for Zeta, including the 1 GB RAM limit.
11. I’d like to see support for Great Britain’s TV cards (some TV cards use a different sound standard). There was an addon for it but never got integrated to BeOS.
Even with Mozilla so slow when operating clogging up both my CPUs, mp3 playback did not skip (while it does on Red Hat Linux 9 on the much faster AthlonXP 1600+). The OS still has the BeOS’ great UI responsiveness, but overall the system is a bit slower: you will need something like 80-100 Mhz more than the previous low-end (P75-P90) and at least 48 MB (previous low was 32 MB). Still, the OS overall, BeZilla/Phoenix aside, is much faster and responsive on low-end hardware than _any_ of its competition (Linux, Windows XP).
So, what I do I think of this beta? I believe that it is two steps forward and one step backwards. YellowTAB does some hard work to ensure driver support and application support, but at the same time they lose focus and spend time working on things that don’t need replacement or fixing and leaving aside other things that do need fixing. The hard problems are still there. YellowTAB must play catch up with Linux and Windows now, as BeOS was paused and not developed for years now. For now, I say “good job,” but keep running.
YellowTAB has a great advantage inheriting all this source code from Be, Inc. but also it has the inevitable curse that they will have to live in the shadow of the “legendary days” of R4.5 and R5. To overcome Be’s own legacy will take a lot of work. But it is a great help that Zeta is the true and only direct BeOS descentant, so they are currently years ahead in development than the other teams who try to reproduce the BeOS, like OpenBeOS, B.E.O.S, BeFree and Cosmoe. I hope that ex and BeOS developers and users show the support YellowTAB needs in order to survive and continue the development of the authentic and original BeOS code.
However, I would like to see some real engineering from YellowTAB, not just “development”. Some real breakthroughs and innovations, like we became accustomed to from Be. Hiring a usability engineer with real BeOS experience would be a good thing in my opinion. I am not talking about a UI artist, I am talking about a usability engineer. YellowTAB needs one. More engineers to join the team would be good too. If they could “hire” Axel, Marcus and 2-3 more “big brains” from the BeOS dev community and OpenBeOS, they could definately get some great results with time.
For version 1.0, I can say that I understand that the product needs to play catch up with the competition because of the lost time Palm created, but from now on, I need to see some achievements in order to draw attention in the market. BeOS was always about impressions and “wows”. So, impress me.
Hardware Support: 6.5/10
Ease of use: 10/10
Credibility: 8/10 (stability, bugs, security)
Speed: 8.5/10 (throughput, UI responsiveness, latency)