Feedback on Haiku directions in the future


#1

Hi,

I think you can gain a lot of popularity with Haiku if you focus on two directions or marketing strategies:

  1. Create an OS similar to ChromeOS

What I mean is to center all the services and apps around the browser and make WebPositive as compatible and contemporary as possible. You have gmail, outlook in a browser, google docs, microsoft online word, skype online (in a browser).

  1. Teach C/C++ programming in universities

In a university often you have a Linux computer only for the purpose of learning gcc. You have a book on Programming for Haiku, you just need to copy paste a tutorial on C/C++ over Haiku and advertise it. Just note how to use the gcc 7 instead of gcc 2. There are thousands of computers that can be reinstalled with Haiku. The idea is good because having a good IDE for gcc is not required, things are done on the command line. Still a web browser is needed for checking functions parameters, etc in C. Having a debugger such as “ddd” will also be nice. You do not need Thunderbird, OpenOffice, you need nothing for the purpose of teaching C/C++.

  1. Work with Unity 3D to be able to export games to Haiku OS
  • the main problem will be video drivers before this can happen I suppose

Edit: For 1) single user is OK, but for a university student computer a multi-user might be required.


#2

Thanks for your great (and very helpful) ideas. Next please !


#3

After being at uni for years:

  • Never had a linux computer only for learning gcc. We connected to a dev machine by SSH or had virtual machines.

  • With MS offering free OS and free Visual Studio student versions (full features) through the DreamSpark program, good luck going to an university that doesnt use them somehow.

  • Doubt that most are still using c/c++ as teaching language but Java / C#, and then having some subjects on not so high level langs.


#4

:laughing: I don’t like to be rude to noob but this one…well…


#5

Doubt that most are still using c/c++ as teaching language but Java / C#, and then having some subjects on not so high level langs.

At my uni, the main languages being taught are C/C++, Python, and Java. Freshmen are taught C++, followed by Python, then Java/C# and C. Not sure about others, but the ones in my area do basically the same thing.


#6

We pseudoed, then implemented in Java as main language. Python nor C# weren’t popular at the time.
At least you dont have to learn everything in Java. Nightmares man… nightmares…


#7

We pseudoed, then implemented in Java as main language.

Yep, we were taught C#- and Java-style pseudocode first. Afterwards, it was real programming with C++. Pretty weird order of teaching programming, in my opinion. I believe that they should’ve started with Python first since that’s easier than the pseudocode we encountered.

Back to the topic.

BeOS and Haiku have system architectures/models which make them ideal for multimedia applications. At the moment, there is no low latency/realtime OS with content production in mind, a GUI, and good security in one system. Haiku could possibly become this.

It already ticks two out of three of these and the latter could be done (once multi-user support is present) by having applications isolated and containerized. Containers could theoretically be implemented by expanding the current application packaging and installation scheme. If it can actually be done along with some improvements in the graphics stack, the media industry may latch onto it fairly quickly. Big productions would especially love it since they try to prevent leaks from happening. Artists in the movie, television, and music worlds (as of time of posting) have to work mainly in machines disconnected from any outside (or any) networks, which can be cumbersome. A Haiku with containers and even a bit of accelerated 3D support has the potential to be very enticing for them.

Once this happens, software improvements should come quite fast afterwards. A similar situation happened for Linux. When people noticed that rendering 3D models and effects on Linux was generally faster than Windows or macOS, that’s when huge improvements to the graphics stack started coming in; not to mention, professional-grade programs such as Autodesk Maya, Substance Designer and Painter, and Pixar’s Renderman began to arrive. Nowadays, the majority of 3D animation studios and VFX companies are so heavily reliant on Linux and OSS that there is already a foundation from Hollywood dedicated to improving open source code for use in their work environments; it is called the Academy Software Foundation (ASWF) and here’s an article about it.

Something like that could happen with Haiku if it progresses in the right areas. To have it be widely used in multimedia would be fitting given that its spiritual predecessor was used a lot for making media. What an appropriate fate if it comes to pass, right? :thinking:

Addendum: It’d be great if Haiku can get support for Tensorflow and Tensor cores. It would be a great match considering that the OS itself is built around multithreading and applications on it are “pervasively multithreaded”, to borrow a phrase from the BeOS days. Any other technologies that would pair well with Haiku (besides Vulkan :grinning:)?


#8

About multiuser and etc. I think is more important to have some capability to encrypt Haiku boot partition (or another bfs partition) and some login password interface.
Haiku can stay one user system. If some one wants, he or she can install another Haiku instalation in another partition, with another password to login.
Screensaver already has login interface, which can be used at the moment of booting Haiku.


#9

Yeah, but multi-user is quite important in today’s connected world (security-wise). Also, something should probably be done when it comes to allowing anonymous users access to the built-in FTP and Telnet servers (when enabled) by default. This was mentioned by Bryan Lunduke when he took a look into the recent R1 beta.


#10

In most real use of computer multi user is pointless. Multiuser is needed only in some cooperative systems, when several people use the same PC. For most people computer is personal, they do not need multiuser.
Working in the network with multiuser, you do not need OS with multiuser.


#11

I would add that this will make Haiku a great choice for data scientists, expecially for those working with R (with the doMC design fully integrated - it’s kind of a patchworks in other OSs). This would be a huge improvments vs unresponsive, high latencies OS we have to work with. But for this to become true, a good industry standard IDE should be ported (RStudio is probably the most famous one, it relies on GWT if I remember well)


#12

No.

As we toyed with Tensorflow in my company (yeah, we do a lot of research), we found that working with CPU only for a modified version of the MNIST example was sloooo… (wait for it)…ow on the training phase of the project.

If you throw a hardware revised solution (i.e. put a Nvidia card with lotta cuda cores) you get up to speed with degrees lower training times (a lot lower, really) for the training of DNN for MNIST or image feature recognition examples.

But… you ought to have cuda software from Nvidia… and all the software dependencies (+drivers?) that go with that. We had to resort to a LTS of ubuntu to be on par with the cuda repositories at the time (manually configuration failed :man_shrugging:)

And that would put us back on the “Haiku need drivers for XYZ” topic again.


#13

I also thank you for your “great” and “very helpful” comment. :slight_smile:


#14

I’ll stay modest here, my comment was nothing, much less “great” or “helpful” compared to “Create an OS similar to ChromeOS”


#15

OK I’ve resisted replying for long enough…

For ‘General Users’ you would indeed need a comprehensive and realiable mail client, and a good browser. I think if Mail were made more user friendly and reliable, then the near-as-damnit-instant search would be a big draw in its own right. I think users expect more from their browsers, so if at all possible a Firefox port would be good. I realise this is a pretty mammoth undertaking, but unless your browser is one of the big four I doubt users will learn to live with it, unfortunately.

Arduino has become insanely popular even though it’s all C-code. The IDE is very simple, it has lots of samples, and people can openly add extensions and code sample packages for it. No reason we can’t bring a similarly good development experience to Haiku. (I’m not implying embedded dev here). Main issue with learning to code is lack of led instruction, having to rely on google/stackoverflow. Build in some high quality learning materials, samples, and basically a C++ 101 course in to Haiku, and watch them come. Other languages are (apparently? … :wink: ) available.

Beyond that, simple to install, easy to use, plug and play with most mainstream graphics cards, sound cards, network interfaces, disks, and you’ll be ok. (Again, not an easy task…)

Every OS needs a hook though to gain initial popularity. What should Haiku’s be? That is the question really… Do that thing well, and people will adopt it.


#16

+1 here, although a mail client is probably not a primary need anymore. Ppl perform lot more tasks with their browser nowdays…and that is coming the second point. I like Web+, I would prefer a native experience while browsing. But putting it into industry standard looks huge…almost as huge as porting a big one. I was wondering if a cost-and-benefits analysis should be started here…

A lot of +1 here :smiley: Developing in Haiku is cool and funny, everyone should know this, as this is going to be really viral (well, just like Arduino, at the end of the day) . Some 101 material exists (Book1 and Book2 for ex, the the BeBook), Paladin is great…the software is in place.

What’s missing here is for me a lack in marketing efforts. Organizing (virtual) meetups, hack-a-day, code-in or, podcasts…this is what it’s missing here imho. But everytime i talk about marketing the answer is always “Devs have more important thing to do than wasting time here”.


#17

What’s also missing are aesthetic improvements to the desktop environment - wallpapers, icons, cursors, menu positioning, etc. I can’t imagine Hollywood / design studios using Haiku in its present traditional state - especially that awkward hand-shaped cursor. They would want to have a system with a lot of slick refinement and flexibility in the usability area. But, again, not enough developers…


#18

Aesthetics shouldn’t be too much of an issue when it comes to Hollywood studios using an OS in production. They value efficiency more than good looks, especially when fancy effects cause their rendering times to increase by a few seconds; in big budget films, that adds up very fast and could mean the difference between releasing on time and pushing back the release date. Remember than many of these studios used SGI IRIX for a long time before it was discontinued, even when other operating systems had much better interfaces. This was being used as late as 2013 by the last remaining commercial users:

If Hollywood can handle using that UI for decades on end even with better options (aesthetic-wise) available, then Haiku shouldn’t have anything to worry about when its time comes. Haiku actually looks better than that while still retaining a retro feel, IMHO. :smile:


#19

Good day,

Imho, I think we need:

  • a fully functional USB stack (yep, I personally need this), to use usb devices. I can’t use any USB audio devices with Haiku, besides the isues with pendrives and digitizers.
  • better video drivers, (radeon HD, in my case)
  • audio support through HDMI/DP
  • good browser that renders sites well, and allows uploading to github
  • better use of stack&tile, which is a good feature yet to be used to its potential
  • file preview in tracker (it is a pain in the ass find the right image when you have lots of them in a folder)
  • better organization for Deskbar menu (also personalization)
  • add a “Delete” entry besides the “Move to trash”, or add the option to add the entry. It annoys me to go through a 2 step process when I could get it done with just one
  • add a workspace switcher to the Deskbar, not the replicant we have now, but something more usable (I will make a mockup)
  • allow to use the mousewheel to switch workspaces

    So many things :slight_smile:
    Regards,
    RR

#20

Hold shift while clicks on “Move to trash”.

You can already add WS to the Deskbar.

Right click menu on the WS.