Let's not make the same mistakes

Haiku is all about performance and ease of use/programming, whereas Linux is all about horrendous performance, and making the simplest task an heroic feat. Taking this into account:

-> Don’t even think of making GTK/QT/->whatever crap’s out there<- a standard part of Haiku. (*)
-> To make a user comfortable with the system (remember, the average user knows nothing about PCs, nor does he/she care. The user doesn’t want to “type commands” to do something as simple as “installing a program”) it’s necessary to have a means of installing/uninstalling programs easily (like in Windows/MAC), something like the “next, next, next, finish” approach. (And it should be somewhat “standard” for Haiku programs installation)
-> Of course, a program MUST be “self contained” only depending on the system functions, and not using 4567776655 3rd party libs that most of the time don’t do anything the system cannot do. And if any such libraries must be use for any particular reason, these MUST be provided inside the package.
As GTK/QT/blabla wouldn’t be used (as they are not needed) such libraries wouldn’t take up much space (1MB should be MORE than sufficient)

An OS will only be successful if it can be seen by commercial developer as a profitable one, and also if the end-user is able to make whatever he/she has/wants to, in an easy and efficient manner. Linux achieves neither, Linux is a perfect example of what path not to follow.

(*) What I’m saying here is not to make them a standard part of the system, they might get ported, but if a program depends on it, it should either provide it in the install package, or download it “on demand” (a feature that may also get implemented in this hypothetic system’s default installer software)

Regarding 3rd party libs, the software installer would provide a means (to the programmer) of checking whether a particular lib is already installed on the system, and if so, the programmer can make the installer not install the ones he has provided in order to lessen the amount of “duplicate libraries” throughout the system. But this “duplication” issue is not that important if the programmer uses the bare minimum of 3rd party libraries he needs.

In some other post someone said something about “libs update”, which is not that simple if every program has a copy of THE LIBRARIES IT HAS BEEN DESIGNED AND IS KNOWN TO WORK CORRECTLY WITH.
Well this is not an issue really, since the program itself should update whatever it thinks is necessary to get updated, and this, in turn, makes the overall experience MUCH better, because sometimes a lib update may break an otherwise perfectly working program with a previous version of the same lib.

So, let’s not make the same mistakes made by the GNU/Linux community…

           <strong>-> Haiku Is Not Linux <-</strong>

I agree completely. And let’s not forget that this approach can work even with a package manager and a central repository. You don’t need the *nix file hierarchy for that. The Linux folks will probably come to this thread and talk about their usual nonsense regarding this topic soon enough. But the Linux way is seriously flawed, it’s not meant for desktop use. Not even Ubuntu stands a chance.

I also do totally agree with you!
Another thing I would like to mention, in Windows you get (at least most of the time) the option to choose where to install a program, in a very simple way… while installation process you get a question to change direction or just keep it.
I miss this under Linux!
Would be VERY NICE to see this under Haiku, as I am used to install applications of different kinds on different partitions and so on…

I’ve never personally used the “Change destination” feature myself, but if you’ve found a use to it, why not?

I agree more-or-less with your view of the way things should be done in Haiku except I think that Qt can integrate into Haiku smoothly and it is to our advantage to support it. Not so much the other toolkits/frameworks.

However there is a fundamental flaw in the message you are trying to communicate. The way Linux does things is not a mistake. Things are done the way they are in Linux because that is the way they were intended to be done and it made sense in the context that they were designed for. Haiku is not designed to replace Linux. Linux is not designed to be a desktop OS - it is a very general OS to do “stuff” and as a result it operates on the desktop well enough for most people to be able to use it.

Do you think the Haiku developers are keenly straining at the reigns to blindly follow the same mistakes/decisions that Linux and *BSD have made? No. They are clever people who are well aware that the way things are done over in Linux land are mostly not suitable for Haiku. The aim of Haiku is to make a fast, light, simple and user-friendly desktop OS and therefore it will be designed to meet that goal.

I think the real danger to design of Haiku is mostly Apple evangelists who get on the Haiku Dev mailing lists and basically cry at the mention of doing things differently from how Apple would. It would be frustrating and off-putting to have people dismissing your perfectly legitimate and well planned ideas and it is likely to result in design targeted to suit the minority of users instead of the majority.

For package management I would like to see self-contained apps that you can search and install in a Linux-esque package management system (from a user standpoint - not necessarily design) and that applications update themselves from. Sourcing and updating applications from trusted and supportable sources is the right way to do things. They have the right idea over in Linux land, but not necessarily the design/implementation aspect of it. Mac doesn’t really have this. There is Mac-ports but that doesn’t really count, and iTunes doesn’t manage and update OSX software - only iPhone/pod/pad. Windows would hugely benefit from a repository-oriented way of doing things but well… They aren’t that clever.

Angry, inaccurate and nasty-toned rants are what often cause potential Open Source/Free Software users to turn back to proprietary/commercial software. Help with this problem by using a friendly and/or professional tone in the forums.

I also use and appreciate both Linux and Haiku. I use them for different purposes and in different way. They do different job for me. Their target is different.

There are several 3-rd party (not OS native) tool-kits that are universal (not related only to GUI): QT, wxWidgets, Java Swing, etc. All them are good as far as they’re alone in the system. Haiku API is universal and if it lacks something it will be added sometime.

The problem is that porting an application to Haiku involves not only changing its toolkit, but also its paradigm, which in Haiku is very different from other OSes and which makes Haiku to be Haiku. It is a long way until Haiku will have all sort of native applications. So, many applications have to be ported to Haiku at least while this sort of applications doesn’t exist in it.

Linux was in the same situations 10-15 years ago. That is why projects like DOSBox, Wine, CrossOver Office, etc were started. Today there is no necessity of them in Linux to make it complete. But it took ten years. I believe, this is the way Haiku inevitable will go until it will be more or less application complete.

[quote=Sonic]I also do totally agree with you!
Another thing I would like to mention, in Windows you get (at least most of the time) the option to choose where to install a program, in a very simple way… while installation process you get a question to change direction or just keep it.
I miss this under Linux!
Would be VERY NICE to see this under Haiku, as I am used to install applications of different kinds on different partitions and so on…[/quote]
I agree. This is an issue of how files are organized in Linux. In Linux, all applications’ files are spread all over the file system; All executables go into directories like /usr/bin/, icons may be in /usr/share/pixmap/, and so on. In Haiku most applications are installed into their own directories, and the default is to put them under /boot/apps (WebPositive goes to /boot/apps/WebPositive). I would like this tradition to be kept, and app authors should also try to make them completely self-contained (No extra libs needed, all of them should be included in a lib/ subdirectory inside the app’s own directory). Then if you want to copy the entire application to a USB stick or anything, there should be no problem with that.

I too agree with this.

  1. Point
  2. Click
  3. Work

Period.

If an OS cannot install or function like that, then it has no a real world viability.

The average user out there is a point-click person.

I think most of us recognize that there is no such a thing as a perfect OS and never will be. To that end we try to make it work the best we can for the end user. Developers are a different animal and probably account for less the .001 percent of everyone out there.

Sometimes it’s hard for a programmer to see the visual aspect of things and need help when it comes to layout and visual stuff. I’m a graphic designer/artist, and desperately need the programmers to understand that we honestly haven’t got the slightest clue about all those gobbedly gook codes and references. All we want is that program to install all by itself with minimal input and absolutely no black, blue, green boxes that require me to spend 10 years learning another language just so I can go to the next step (exaggeration, but you know what I mean).

I like Haiku for its speed and installation simplicity. There are some things that need to be attended to, but overall it’s pretty good (not excellent - we haven’t reached that point yet, just aiming to get there).

When I write a Perl backend to a site (a hard exercise for me), I try to make myself a 5 year old kid. No idea about anything, but I can click that button and type stuff in. That gets applied to all my CMS’s. A help file with, "you want to do that? Do this. Type of approach is included online. It works.

Perhaps my first post didn’t sound very firendly, sorry about that!

Anyway, I downloaded Haiku’s source code yesterday and i feel like writing some code! :P,
Device drivers is quite an interesting field, i might get into that.

Don’t worry, it’s straight to the point, and that’s what we need! :wink:

That’d be awesome! If you’re up for it, I would love to see support for Gallium3D and the Radeon HD cards! But of course, any contribution is welcome.

I don’t think you understand what Linux is all about, cuss that’s definitely not what it’s about.

[quote=Juan Cabrera]-> Don’t even think of making GTK/QT/->whatever crap’s out there<- a standard part of Haiku. (*)[/quote]So GTK and QT is crap? Please tell me why? Or are you just coming up with random claims that you can’t backup by any evidence? What knowledge do you have to call a toolkit used by thousands of people crap?

Have you even tried using Linux? Modern Linux distributions all have powerful package managers and huge repositories making installing and uninstalling software even easier that it is in Windows or Mac OSX

Why is self contained programs so important? Dependencies works extremely well in Linux and they are not going to be bad just because you make up some untrue BS arguments against it.

You’re actually right about that, GTK and QT aren’t necessary because because Haiku contains alternatives to them. That’s probably the only thing you’re right about though.

Didn’t you learn basic discussing in school? When you’re making a statement you’ll also have to make one or more ARGUMENTS to back it up. So far you haven’t provided a single valid argument…

I see what you mean. Ubuntu has lots of serious flaws, like the lack of flash support, wifi support, support for graphic cards, too few native apps and a GUI that looks like it’s from the 90s.

Btw, don’t get me wrong. I kinda like Haiku, but that doesn’t make it fair to talk shit about Linux that’s not true. Linux was actually made as a desktop OS (with server use in mind too off course,) Linus actually used it as his desktop OS while he was developing it.

I thought you made a good point there. (I know I am not much of a forum/web person for precisely that reason; I don’t want all that negativity in my space.)

I see what you mean. Ubuntu has lots of serious flaws, like the lack of flash support, wifi support, support for graphic cards, too few native apps and a GUI that looks like it’s from the 90s.

Btw, don’t get me wrong. I kinda like Haiku, but that doesn’t make it fair to talk shit about Linux that’s not true. Linux was actually made as a desktop OS (with server use in mind too off course,) Linus actually used it as his desktop OS while he was developing it.[/quote]
“Talking shit” implies that what I’m saying isn’t true, and that’s a lie in itself. The lack of flash support or similar issues are irrelevant to this discussion. The flaws with Linux are core issues, like the lack of 32bpp support, a decent sound system that most applications use and which has software mixing (Ask any Linux person about it and oftentimes they’ll reply with “Your sound card sucks!”, even though the sound card isn’t an issue with Windows, Haiku, FreeBSD, etc.), the file structure, or a standard desktop environment. These things are just a few examples, and they are not caused by “evil corporations who refuse to develop for Linux” or anything like that, but rather they are core issues that for a true desktop OS, even an open source one, would get fixed much earlier.

The Linux community has become like socialists; blaming everybody else.

[quote=paldepind]
I see what you mean. Ubuntu has lots of serious flaws, like the lack of flash support, wifi support, support for graphic cards, too few native apps and a GUI that looks like it’s from the 90s.

Linux was actually made as a desktop OS (with server use in mind too off course,) Linus actually used it as his desktop OS while he was developing it.[/quote]

I will address some of the issues you listed.

  1. Linux should really thank Adobe for making Flash available to them. Without Adobe, Linux would be stuck using Gnash or Swfdec. You think Flash was available with Linux early on? Flash is closed source and depends on Adobe creating browser plugin.

  2. wifi support, graphics drivers, few native applications: these take developers to create. Haiku has about 5-8 active developers and the rest are more casual. Linux has thousands to help out. Wifi is slowly coming to Haiku with many supported already. HDA + LIVE/Audigy + OSS support most sound cards out there. VESA works very well and is only missing refresh rates (not problem on LCDs) and extra resolutions.

  3. The 90s look is because developers working on Deskbar/Icons want it that way. They could easily update it anytime they wanted but like the simple look. Yes, the look could be more modernized but still good the way it is.

While Linux might be meant for desktop use it lacks flow; feels like a bunch of different parts thrown together and has more a server or clunky feel to it. Over the years, Linux has improved and is starting to feel like a desktop OS. Still, Haiku has a better, nicer and easier flow going for it - simple to use, understand and responsive. Wait 6 months after R1 release and see what happens!!!

Early on, Linux was lacking drivers, Flash, very clunky feel to it, etc., It took many developers and years to get to where it is today!!! Linux today is way better than it was many years back but has some underlying problems and why has not been easily or widely adopted. Linux is free (given away) and if so great then why are so many users still with Windows XP & 7 and MacOS X???

Haiku has a greater chance to become the popular desktop OS but will take very long to get there because:

  1. very few developers
  2. has to compete against Linux, Android OS and BSD (ie: other free OSes) for developers. Not to mention for developers that create applications for those and other OSes.

When Linux came about, there was only Windows to compete against. It became popular because it was the only other real OS, other than Windows, available for x86 at that time.

I use Windows XP & 7, Linux and Haiku. Each have their strengths and weaknesses.

Didn’t you already have a thread where you’re refusing to explain what this “32bpp support” is that Linux supposedly lacks? “Truecolor” is 8 bits per channel, for a total of 24 bits. Alignment issues can make it faster to add 8-bits of padding, but any Linux distribution in the last ten years or so does this silently.

Like, say, all the desktop distributions from the past year or more? Much longer if you count dmix

Did Haiku grow up and get a real sample rate conversion algorithm? Or is it still drop/copy?

These aren’t flaws, they’re presumably listed because you don’t like them. Choosing between strawberry and mint-choc-chip ice cream is tough, but either is better than a melted pool of vanilla.

I am no programmer, but AFAIK, the additional 8 bits are used as an alpha channel. For as long as I’ve used Linux there have always been issues with transparency effects. This, plus the fact that there isn’t anything suggesting that the additional bits are supported (Why else call it 24bpp? To show off how technical you are?) leads me to the conclusion that Linux has no 32bpp support. Feel free to disprove me though.

[quote=NoHaikuForMe]Like, say, all the desktop distributions from the past year or more? Much longer if you count dmix

Did Haiku grow up and get a real sample rate conversion algorithm? Or is it still drop/copy?[/quote]
I have used Linux on and on for the last 5 years or so, and at one time I used it almost exclusively for a year. There were always issues with sound. I used it just a few months ago and it wasn’t any better then. But of course, like with most Linux lovers, the cause is obviously that my sound card sucks, right? This isn’t a reason for it to not work in Windows, Haiku, or FreeBSD. With Linux there is always an external reason. If you are talking about hardware mixing however, I think it’s supported, but most mainstream sound cards these days don’t use hardware mixing so that’s irrelevant. The only time sound worked okay-ish was when I disabled ALSA as much as I could, and installed OSS4. Actually OSS4 is pretty decent, which might be why FreeBSD is still using it by default, but in Linux it is kind of a hit-and-miss as it is not truly supported by any distro and it can fail to install at any time.

As for sample rate conversion algorithm, I have no comment, I have no idea.

They are clearly flaws. The file structure makes it harder to organize and find things, which is especially annoying with applications, as you might want to be able to easily back them up. For a person who doesn’t mind writing down all applications and track down and reinstall them later, maybe that’s not a problem, but for a desktop user like me it is.

The lack of a standardized desktop environment is also a flaw. It makes the system very inconsistent because the different desktop environments and toolkits aren’t integrated with each other, which often leads to issues and inconvenience for the user. The Linux solution to this problem seems to be to tell people to “just stick to GTK+ apps” or “just stick to KDE apps”, but that’s a really odd way of dealing with things for a desktop user since the applications are all supposed to be for the same OS.

Linux is NOT a complete operating system–it would be a nightmare if Haiku went Linux–I hope that no users or programmers are convincing the Haiku community to make it more Linux’d. Really, Linux will only be available to the Linux user or fan–the typical Windows® end-user will not care what OS is running on their PC, unless the OS is just as good as or better than Windows®. Haiku fits into being better, in my opinion, but only because the developers have helped make it so. How long will programmers and end users bash each other as PC users or PC programmers? Linux users must learn to respect others–if their OS is not up to par, they need to admit it. I don’t mean to bash anyone personally, however, Linux users seem to have an extreme defensiveness when another individual examines their OS core–and really, I find that Linux has become a religion. Why? Simply put, because of the license and movement backing Linux. Open source is not that, but rather based on a concept that the OS and the software are for the general public–but we must use the software in a good way. What exactly does this mean? This means that we use the software not to rebel or intimidate, but rather to show helpful, intuitive, and encouraging answers and construction through the building of software. Personally, I find the icons associated with open source should not reflect it as so, such as BSD’s computer daemons–and as a Christian, I find it’s time to change how open software is viewed throughout the computing community. Linux does not have a solid base, especially when it comes to the GUI–and I can argue that solidly from experience. One example lies within the X Window System, which Haiku does NOT use. There is a very good reason for this. On Linux, you’re stacking the GUI on top of several other components by throwing a window manager and desktop environment on top. And let’s not forget that while gdm or kdm try to integrate with the Linux desktop, they too are separate packages, dependent on a stack or dependencies. Therefore, if you try to work with apps of different languages without proper support in your distribution, you will get errors, warnings, or crashes. For instance, I would ask the Linux user to open a terminal, run a miscellaneous application not native to your distro installed from Synaptic, and report your results. You will find even with an ampersand (&) after your command, there will be warnings and/or errors reported. This is not a mark of good software. I also will add that Linux does need one desktop environment to remain consistent–for instance, if Gnome and KDE were just respins of the same codebase, and had the same calls built in, Linux would still have several desktops, but with consistency at least at a sub-level to complete operating systems.

In summary, however, please note that I’m not trying to disrespect Linux users–I respect the Linux programmer or user–but may I kindly recommend that they simply need to rewrite, or more specifically, rebuild their OS to make it better for all users. A Linux programmer should integrate components, rather than build a monster with more packages to add functionality, and other than that, it’d be wrong to say more. Linux has made strides, I admit, to try and achieve its dream, since 1991-92, but so much more would have to be done. Secondly, I will add to the benefit of the Linux user that sound and display components have been properly implemented–even on newly released netbooks. So to say that Linux users do not have proper support is really no longer the case in 2010. As for the file system, ext4 has made vast improvements over the older ext2 and ext3 file systems–and has taken a step forward at understanding NTFS. And perhaps, if the Linux user were not so zealous about the GPL, I would better understand the Linux user and I think others would, too. :slight_smile:

With Haiku, I believe that it does have a good chance for the PC market, (but we do need WPA2 and WPA to be recognized sometime soon.) :smiley: With any system, there are things that each user will and will not like. But perhaps there’s strength in learning, and we need to learn throughout the building of software. No OS is perfect, but I believe we can work on making things work the best we can.

Thanks, everyone. :slight_smile:

[quote=sparklewind]
I am no programmer, but AFAIK, the additional 8 bits are used as an alpha channel. For as long as I’ve used Linux there have always been issues with transparency effects. This, plus the fact that there isn’t anything suggesting that the additional bits are supported (Why else call it 24bpp? To show off how technical you are?) leads me to the conclusion that Linux has no 32bpp support. Feel free to disprove me though.[/quote]

In the framebuffer (which is the bit you’re controlling with e.g. Haiku’s preferences application, roughly the thing which ends up as a rectangle shown on your display) the extra 8 bits are just unused padding. Any modern Linux distribution has Xrender, which supports alpha transparency composition for e.g. partially transparent dragging of icons, and it works regardless of whether the framebuffer has this padding or not. I don’t think Haiku is deceitful here by calling these modes 32bpp, just needlessly confusing.

Possibly, depending on what exactly is wrong, or the driver may suck. But it could also be a genuine bug in whatever framework you were using (PulseAudio?) which could have been fixed if reported. I think PulseAudio has come on leaps and bounds, in a period when Haiku’s audio support remains stagnant.

[quote]
They are clearly flaws. The file structure makes it harder to organize and find things, which is especially annoying with applications, as you might want to be able to easily back them up. For a person who doesn’t mind writing down all applications and track down and reinstall them later, maybe that’s not a problem, but for a desktop user like me it is.[/quote]

I think the filesystem hierarchy is clean and represents a good compromise between several conflicting goals. Grouping things together according to what type they are can be just as useful as grouping them by which package/ application they belong to. In general there’s certainly no need to “write them down”. The package management system can help you to list which software is installed, in a form convenient for subsequently installing the same software, and to list all the files which make up a package if you desire.

Still, there are people who agree with you, and the wonderful thing about multiple distributions is that they were able to make their own, GoboLinux. If enough people agree with you, you can make GoboLinux a big success.

[quote]
The lack of a standardized desktop environment is also a flaw. It makes the system very inconsistent because the different desktop environments and toolkits aren’t integrated with each other, which often leads to issues and inconvenience for the user.[/quote]

But this “flaw” occurs only if you mix components from two systems when you believe only one should exist. You retain the option of using only one of them, it is perverse to complain that you were offered a choice to do something you would rather not do. Some Qt apps can run on Haiku too, and of course they don’t blend in totally with BeAPI apps, so this criticism as stated applies to Haiku, under the same constraint (that you could just choose not to use the software you don’t like).

[quote=NoHaikuForMe][quote=sparklewind]
I am no programmer, but AFAIK, the additional 8 bits are used as an alpha channel. For as long as I’ve used Linux there have always been issues with transparency effects. This, plus the fact that there isn’t anything suggesting that the additional bits are supported (Why else call it 24bpp? To show off how technical you are?) leads me to the conclusion that Linux has no 32bpp support. Feel free to disprove me though.[/quote]

In the framebuffer (which is the bit you’re controlling with e.g. Haiku’s preferences application, roughly the thing which ends up as a rectangle shown on your display) the extra 8 bits are just unused padding. Any modern Linux distribution has Xrender, which supports alpha transparency composition for e.g. partially transparent dragging of icons, and it works regardless of whether the framebuffer has this padding or not. I don’t think Haiku is deceitful here by calling these modes 32bpp, just needlessly confusing.

Possibly, depending on what exactly is wrong, or the driver may suck. But it could also be a genuine bug in whatever framework you were using (PulseAudio?) which could have been fixed if reported. I think PulseAudio has come on leaps and bounds, in a period when Haiku’s audio support remains stagnant.

[quote]
They are clearly flaws. The file structure makes it harder to organize and find things, which is especially annoying with applications, as you might want to be able to easily back them up. For a person who doesn’t mind writing down all applications and track down and reinstall them later, maybe that’s not a problem, but for a desktop user like me it is.[/quote]

I think the filesystem hierarchy is clean and represents a good compromise between several conflicting goals. Grouping things together according to what type they are can be just as useful as grouping them by which package/ application they belong to. In general there’s certainly no need to “write them down”. The package management system can help you to list which software is installed, in a form convenient for subsequently installing the same software, and to list all the files which make up a package if you desire.

Still, there are people who agree with you, and the wonderful thing about multiple distributions is that they were able to make their own, GoboLinux. If enough people agree with you, you can make GoboLinux a big success.

[quote]
The lack of a standardized desktop environment is also a flaw. It makes the system very inconsistent because the different desktop environments and toolkits aren’t integrated with each other, which often leads to issues and inconvenience for the user.[/quote]

But this “flaw” occurs only if you mix components from two systems when you believe only one should exist. You retain the option of using only one of them, it is perverse to complain that you were offered a choice to do something you would rather not do. Some Qt apps can run on Haiku too, and of course they don’t blend in totally with BeAPI apps, so this criticism as stated applies to Haiku, under the same constraint (that you could just choose not to use the software you don’t like).[/quote]

I’ve read a number of your posts and they all have the same smartass flavor. If you don’t have a interest in Hiaku and you feel Linux is such a superior OS. What are you doing here ? If you have nothing useful to add " for the most part, your posts indicate this" you should just go somewhere else.

Just my thoughts on the subject.