Slashdot Mirror


A Talk With Syllable OS Lead Developer Kaj de Vos

angry tapir writes "I recently had a chance to interview Kaj de Vos, the lead developer of Syllable: An open source desktop operating system that's not based on Linux nor one of the BSDs. There's a write-up of the interview here, which includes some background on the project. I have also posted the full Q&A, which is very long but definitely worth a read."

20 of 121 comments (clear)

  1. Re:NOT based on Linux? by JabberWokky · · Score: 5, Informative

    You seem confused. The project releases a matching server that does use Linux as the kernel. The desktop OS does not. It's based on AtheOS, a new OS from scratch with a fair amount of application support built up over the years for a minor OS.

    --
    "$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
  2. Re:NOT based on Linux? by woodsbury · · Score: 2

    Not really sure what you're saying but Syllable is both a custom Linux distro, which is their server edition, and an operating system which was built from AtheOS which has it's own kernel, which is what is their desktop edition. The server edition is basically just there so that you can have a server with all the capabilities of Linux but a UI similar to the desktop OS's. It's been a while since I've used Syllable so things may have changed a bit though.

    I think it's important to develop alternatives to Linux and BSD even if they don't have the app support (though some things can just be recompiled).

    And I mean, if the developers enjoy working on it then that's up to them any way.

  3. Re:NOT based on Linux? by JabberWokky · · Score: 2

    Why use a different kernel for the server and desktop versions? Even Microsoft came to their senses on that one and started just using the NT kernel for desktops and servers.

    Oh, to live in a universe in which somebody interviewed the developer and he were to answer that in the first reply. And bunnies flowed hot and cold from the tap.

    Half of this already exists. Now, down to the basement with welding equipment, large diameter pipe and some more test subjects...

    --
    "$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
  4. Re:NOT based on Linux? by antifoidulus · · Score: 3, Informative

    He actually explains it in TFA, but long story short, he wanted a server OS that was compatible with both software written for Syllable AND the vast body of server oriented software out there for Linux. The only realistic way of doing this was basically customizing a distro.

    He could have gone the Windows or OS X route and basically just layered the server services on top of the kernel as an application, but that would have required re-implementing at least parts of all those services to make them compatible with Syllable. Maybe the maintainers will do that someday, but for the time being their solution allows them to concentrate on further developing the desktop OS while still having a server os that fits into the ecosystem.

  5. Re:Why assembly? by gnud · · Score: 3, Insightful

    What? Syllable is in C and C++, with only a few pieces of assembly. I think you read the linked article about MenuetOS.

  6. Re:NOT based on Linux? by aliquis · · Score: 2

    Bla bla bla.

    It's a hobbyist OS. If you don't want to use it don't. Most people trying it out probably think it's cool to try these kinds of things out. They know and don't expect them to run all the applications they are used to or that those few that may run once things like GTK and similar is ported over will be of the latest version or run as perfect as on the latest Linux desktop.

    So it's not for you. Fine. Move on.

    And no. It's not based on Linux.

  7. web.? by WillKemp · · Score: 2

    web.syllable.org? No! Why? Just when the irritating "www." prefix is beginning to finally die a natural death, someone thinks it's a good idea to rework it. Just let it die, ffs!

    1. Re:web.? by thegarbz · · Score: 2

      It's almost like websites need a default entry point so that if someone types syllable.org into their browser it will just magically direct to the right page.

      Oh wait that works already.

      Also in what way do you think www is dying? I'd wager that it's the default prefix for >99.9% of the internet.

    2. Re:web.? by geekgirlandrea · · Score: 2

      Ugh. The redirect option is perfectly sensible, but putting the other thing just plain does violence to the conceptual integrity of the domain name system and I shudder at the thought that there are no people in the world who would consider one 'unprofessional' for not doing it. There are protocols that aren't HTTP, you know.

    3. Re:web.? by julesh · · Score: 2

      If it works, but redirects to the www version i know they sort of know what they're doing, but are living in the 90s, so definitely shouldn't be a first choice.

      Speaking as somebody who was a web developer for most of the 2000s, I had a lot of experience running pages without the www. and clients *complaining* that it wasn't there. It was an expectation that all web sites must use it. Leave it out of URLs that people type in (on your letterhead or adverts, for example) and people add it themselves. Allowing two forms of the url, one with and one without, creates unnecessary complications when dealing with cookies. Therefore, redirecting makes everyone happy. Except, it would appear, you...

    4. Re:web.? by heathen_01 · · Score: 2

      Stupid IT departments and their firewalls force all services to be offered over port 80.

    5. Re:web.? by dzfoo · · Score: 2

      Fine, so the browser defaults to using HTTP. Now, if only it could tell to which HOST you intended to connect within that domain.

      Oh, could it be the one serving web pages? and how should we call these World Wide Web page hosts? If only there was some sort of moniker to distinguish them from, say, a file server, or an advertising server...

                -dZ.

      --
      Carol vs. Ghost
      ...Can you save Christmas?
  8. To summarise the article. by LingNoi · · Score: 4, Insightful

    If you're only going to read one page of this article then read page five.
    http://www.techworld.com.au/article/398892/developer_q_syllable_os/?pp=5

    To summarise the thing that makes this different from everyone else is that the parts of an actual application are split up unix style. For example instead of having two or more applications taking your photo and taking out the red eye, the desktop would have thus functionality written once and the applications will simply glue all these standard pieces together.

    My only criticism to this is that we already have this in the form of libraries. Perhaps what this guy is after is something more standardised and higher level then that but I don't see how that's not doable in linux.

    1. Re:To summarise the article. by oever · · Score: 5, Interesting

      That sounds very much like Android Intents and Activities.

      An Intent provides a facility for performing late runtime binding between the code in different applications. Its most significant use is in the launching of activities, where it can be thought of as the glue between activities. It is basically a passive data structure holding an abstract description of an action to be performed.

      --
      DNA is the ultimate spaghetti code.
  9. Re:Why assembly? by XDirtypunkX · · Score: 4, Informative

    To get any boost of performance over C, you have to be an extremely good assembly coder... to get a consistent 3x boost, you are either writing very sloppy C, or you're extremely good at assembly and using a pretty poor compiler/poor compiler settings. It actually takes an amazing amount of effort to beat a compiler these days, because compilers have rules to spot non-obvious stalls and such, where as the human has to rely on analyzing every bit of that by hand.

    Also, a system where every component is 3x faster is still only 3x faster overall, there is no Captain Planet performance magic where by the power of assembly combined you get a 20x speed up... not to mention many desktop operations being IO limited (especially the ones that you actually notice the slow down on) and assembly doesn't magically make that faster.

    Finally, someone did try it - MenuetOS - and they were able to make a quite compact and fast OS. But they also cut out an awful lot of what goes into a modern OS to do so. Syllable itself is not written in assembly like MenuetOS, which was actually the example used above.

  10. Interesting part by phantomfive · · Score: 2
    The most interesting part, in my opinion, is the attempt to make programs more modular, into building blocks. I was going to try to summarize how, but the article says it much better than I can:

    On indoor pictures, you want to remove the 'red eye effect' caused by the flash. On outdoor pictures, you notice the horizon isn't straight and you would like to correct that.

    "These are common, but technically complicated manipulations on pictures. The correction of red eyes may be offered by multiple applications on your system. The straightening of horizons may require you to buy yet another image manipulation application.

    "Why can't you plug in the camera, have its icon appear on your desktop without extra software and click on it, then click on a picture and be offered one option to correct red eyes and one option to straighten a horizon?

    Clearly there are difficulties doing this, but it seems like something useful if you can figure out a way to make it work.

    --
    "First they came for the slanderers and i said nothing."
  11. Not Linux based by pD-brane · · Score: 2

    Nevermind, the desktop variant is indeed not Linux based. (I should have read the FAQ before I posted.)

  12. Re:NOT based on Linux? by khr · · Score: 3, Insightful

    ...OS/2 Warp ... but IBM screwed the pooch...

    No kidding... Not to mention their marketing department didn't quite get the Star Trek based code names they were using... Half their material for "warp" looked more like bad acid trip kind of warp than "warp speed". And I have a poster somewhere from IBM that says OS/2 will "obliterate your work". Really... I don't think they "got it" at all...

  13. Yes, but statically compile them in by jvonk · · Score: 2

    But this is what the OS API, frameworks, and libraries are for.

    Exactly. However, I would take it a step further and suggest that the overall idea to push this much application level functionality into OS libraries should be Considered Harmful.

    "Don't write your own red eye correction code, it's built into the OS! Oh, wait, now I see that your new version only works correctly with version 1.5 of the library that's not in my current OS release. Guess I have to upgrade the *whole OS* to install your new software."

    Yes, this happens in all OS's (cf. DirectX). However, increasing the surface of these kinds of dependencies to this degree seems like a bad plan.

    I'm all for code reuse, but I would prefer it if most apps were statically compiled and included all their dependencies. I am also fine with having a few, very stable external dependencies; the .NET Framework is a good example because it is very basic and allows apps to explicitly target different framework levels (and the OS allows having multiple versions installed).

    The alternative is DLL Hell (and/or weird gymnastics to try to avoid it) and all too often these dependency patches that get pushed out ("fixed once in dependency library, now fixed everywhere!") don't pan out as intended and break one app or another.

    Statically compiled binaries would be "huge" but again, disk space is "free" in these amounts. As a user, do I really care if a particular app weighs in at 3 MB or 150 MB anymore? Naturally, a binary diff patch system like Chrome's would go a long way to mitigating the bandwidth required to keep these up to date.

    Oh well. While I'm wishing, I want a moon rocket too.

    1. Re:Yes, but statically compile them in by jvonk · · Score: 2

      It has its upsides, but also its problems

      Granted, this isn't a panacea. I realize that all these different apps would need to be updated independently, but I consider this ramification to be conceptually consonant with my viewpoint (ideally using binary diff patches, of course).

      As you pointed out, Mac OS does this "right" insofar as most apps are portable to another machine if you just copy the .app "file".

      seriously, when was the last time you had a "dll hell" problem - while linux in particular lags behind.

      Haha, Linux is exactly the reason I started seriously wishing for statically compiled binaries. When I compare, for example, getting a recent version of SVN onto a RHEL 4.x machine versus MacOS "drag to install"... well, the difference is stark. "No, I can't update lib-apr to your minimum version because that will break my PostgreSQL instance! Just give me a simple, standalone binary!" I eventually got a statically-compiled version of SVN for RHEL 4.x, scp'd it over, and it worked fine: statically compiled binaries for great "drag and drop" justice.

      I'm not a zealot, so I believe people should have choice. I would love to be able to pick and choose whether I get a statically-compiled binary or the regular, linked-lib binary when installing from yum or apt-get. Of course, this would put a huge burden on repo maintainers, and I admit such an approach is likely unworkable.