In my dream

I am following the Haiku OS development for quiet some time now. Years to be honest. I do like it very much and even as I do not contribute to its development because of steady lack of time, I would like to use it in my projects badly, but can not, as features I really do need are not present and features I do not need are present or worth, be paid to be there. As I never raised my voice, I really can not blame anybody but myself, if I am unhappy with the current status of HAIKU.

In my dream HAIKU runs fluidly on cheap hardware, ARM and X86 alike, AMD64 support is meaningless for me. HAIKU helps me with my hardware projects as well as small software projects and makes my life a lot easier. I use it as a secondary, tertiary OS, which helps me in situations were Windows, MacOS and Linux/BSD are too thickly battered in security or my tablet is insufficiently equipped. My projects don’t need multi-user support, they don’t need security. If the OS is accidentally messed up, it doesn’t matter. Important things are backed up on a SD-Card or a VCS.
In my dreams I re-created the old Commodore CBM610 housing and placed a little ATX board inside, running HAIKU on a 17" display next to my three 24" display setup running EDA tools on windows and the iPAD on the other side.
In my dream I can make projects happen fast, due to HAIKUs easiness and helpful features. The OS provides less, in comparison with the major ones, but what it does is easy to understand and to deal with. I can create device driver in user space and therefore extend the system, I mean without the need to recompile the kernel or sign papers with the OS Vendor for a digital signature. I do device driver development for a living for WinCE and Linux, I know what I am talking about. I really would appreciate a system I can develop test cases on and connect it with the embedded hardware easily. Different customers have different devices and drivers, programming test scenarios under HAIKU in an interpreted language with or without c/c++ parts would be nice as it saves my time, nerves and would free me up to give things back to HAIKU. In form of money or software. But there is currently no foundation to work with and the priorities of HAIKUs roadmap are unclear to me. I do not see a fixed goal, but a heavy roller coaster ride with random shotgun shootings at blurry targets.

In my dream HAIKU is easily extended in user-space and the system is thoroughly programmable with an interpreted language, so I do not have to hassle through C++ if I do not have the need to. I see examples in source code, nicely sorted in sub directories as well as some howto papers.
Chatting on IRC and being pointed to the kernel sources is not what I am looking for. I do not need the IRC for that kind of information. I also do not want to crawl 2GiB of source code, unsure where to look, I simply want to know how to write a user-space device driver for USB, I2C or whatever! There is one document for display drivers…well guys…yeah! Many people need those…cool, thanks! If I install the development tools for HAIKU I expect to find examples and skeleton drivers in an examples directory. Small HowTos as .txt files. It works for Linux, it will work for HAIKU! What do I find currently, PDFLIB support files…what the heck! I learned, that mostly those systems attract people, which are easy to work with. Maybe I am too stupid or lazy or both, but I really would like to use HAIKU, just not in its current state.

In my dreams I can use HAIKU to build my simple applications on. A system wide GUIAppServer, which reads YAML based GUI-object files, builds and stores windows and frames and shows or hides them when told to. It interacts with interpreted languages or C++ via >>ports<<. If you think now of something similar to AMIGA-OS’s ARexx or OSX Scripting, then you are not too far away. Not far at all…
However, these ports can be redirected to UART. TCP/IP sockets or USB ports, thus I can let the GUI be updated by a different computer system, altogether, even multiple if needed. Each application owns exactly one Master port to the GUIAppServer and can spawn multiple replica from it. As an example, on a multi RS232 card, four arduino boards, which are collecting data from a machinery, are attached and send periodically data through RS232 to the GUIAppServer or receive data from it. I can specify within the YAML file, or via the application, port re-directions to the UART (COM) ports, TCP/IP sockets or similar. My application doesn’t care about the arduino data, as it might not need to know. Need to know data, can be either gathered by the application, by controlling the device directly, or by letting the data be forwarded by the GUIAppServer from the client to the application or vice versa. Easy! In essence it is something similar to androids ADK, but on steroids.

In my dream a GUI builder is avail able, but writing the YAML files in a modern version of PE editor would be fun, the nifty widget placement strategy makes it a no-brainer. Due to the inter-widget-notification concept, with features like:
on_*** events (on_key_down),
do_*** actions (do_hide),
be_*** property changes (be_visible),
or user created ones (“user_event”),
I can connect widgets within the YAML file to update/exchange values, switch each other on and off, etc. and the embedded minimalistic BASIC like language brings this even one step further and helps me to build a smart GUI without cluttering my main application, using IF-THEN-ELSE-ENDIF, FOR-NEXT, ON-EVENT-DO, expressions with mathematical functions and variables. Events, actions and property changes can be triggered by the script or a script can be executed on.

In my dreams HAIKU on ARM/x86 helps me to communicate easily with hardware I created, via USB, I2C or GPIO ( like a parallel port, etc), even an old RS232 or UART port might just be the way. I am aware, that I do not have MMU secured hardware abstraction or different layers of multi user security functionality which prevents intruders from compromising the system. If I wanted or needed something like that, I would not look at HAIKU >>.<<
If I would be interested in multimedia creation, manipulation, etc. I would use a system with OpenCL support. Otherwise I also would be a person who happily starts mining bitcoins with a RaspPi.
OpenCL is or will be included into mainstream browsers, soon, as it is important for physics calculations in games…which is the next big thing for browsers. We will soon see that the browsers scrolling behavior will be controlled by the OpenCL physics engine for a nicer, more accurate feeling for touch enabled OSes. And no, HAIKU is not one of them. Other means of leverage the power of OpenCL will be discovered soon after. In a not so far away future GPU accelerated OpenCL support will be mandatory on desktop OSes and its browsers. I doubt, that HAIKU will have GPGPU support for any major hardware platform, at any time, as it still lacks hardware 2D/3D acceleration. If the HAIKU community can’t take that step, OpenCL will be unavailable, too. The future starts with the new MacPro, mark my words.

I do see, that there should be a BeOS compatible system, to let old software run on new hardware. I mean that! The HAIKU community should finish that goal, show it to the world, and be proud of it, really I mean it, it is really great! But leave it exactly there, and rethink the future. Do not develop a Jurassic Park, we all saw the movies, we know what happened. BeOS had its chance.

Make clean cuts, do not mix!

As GCC 4 is incompatible with the old binaries, it makes no sense to look back. Instead the HAIKU community should, in my opinion, discuss now, for a Post-BeOS-HAIKU-GCC2 time a new purpose, a new identity. What can be done now, what would be a good road to be on and how does HAIKU attract a large user base now, not tomorrow with GPGPU support. How can this be achieved with little to no additional development?
Have a look of what you have right now worth marketing. Do not spend resources on dubious eye candy or soon obsolete features. People should ask themselves if HAIKU becomes really that more attractive with a native webkit browser and animated eye candy a la OSX, in terms of user base that is. Everyone can and should have dreams, if multimedia and 3D creation is yours, and you want to see it (back) in HAIKU, well, make the system be used by many, many people to attract hardware companies developing drivers.
We talk millions here to attract the big hardware houses. RasPi needed two million, or 1% of the total chip’s market to gain broadcoms attention to open the drivers, and they did not gave the DSP code for the video codecs, nor the hardware description to do it by yourself. For NVIDIA/AMD you might need the same amount of users, for each, that’s 4 mio…Without good hardware information, video will stay to be a CPU cry baby, as will 3D support.

How to get those many guys and esp. gals? With a system without proper hardware acceleration support? HAIKU is not as fast as Linux, even without hardware acceleration, how do you want to pull off multi channel video decoding/encoding in HD without hardware acceleration on a 4K monitor? HAIKU can not run its desktop without tearing on a 900MHz VIA C5 CPU at 1024x768px.
I wondered why a native, modern browser in HAIKU is really that important that people like to spend money on it? Why is the QT webkit not enough and spending money on a reliable and maintained port of QT a bad idea, or a better documented system? I really did, and still do, wonder!

I have currently a HAIKU system installed on a super cheap VIA C5 board, with ruby, lua and python. I all quiet like. Can I use those for a small scripted GUI-project? No! OK then, doesn’t matter, cheer up mate! I installed the BASIC YABS, which is not bad, but not really good either - unmaintained it is, thus I refuse using it. So what can I do with HAIKU now? I mean now, at its current state? If one does not wish to use C++, HAIKU is not useless, but (very) limited. And let me humbly add, HAIKU did not remotely achieve yet, what BeOS offered twenty years ago in terms of C++ development productivity, compared to the standards back than. Where is a modern IDE/Editor, Paladin - yikes, that hurts! I really can not see how one could use HAIKU for even a small project. Before one would spend time in crawling in obsolete documentation or wast amounts of system sources (entire system sources), he/she might finish it in the same time under AROS (AmiLua with gui) or even Linux frame buffer console and HAIKU styled python in an initrd, which means - plain as yogurt, but boots and fires up in an instant.

On the other side, there is this large base of people all over the world with the need for an easy to program system, which can be easily extended and offers a nice GUI and nifty features. Who wants to undergo Linux device driver development on a system like ubuntu? Who can even configure a reliable working Linux kernel for it? Who wants to do that for Microsoft Windows 7++ or OSX? No one! Exactly! A lot of people, companies however are in the need of special device driver! How many companies would like to include such an OS for their machinery, etc…We do not speak of millions of copies, there is no mistaken. It is a niche market, occupied currently by WinCE and similar OSes. For system prototypes or companies with solutions for up to 500 customers HAIKU would be ideally suited, esp. as Windows XP support is over, and USB driver for younger Windowses are a nightmare to create and spread. And there are a lot of these companies out there…That sort of thing might be worth targeting. Maybe HAIKU goes realtime (turbo) some time and becomes the base for the 3D Printer community, or someone ports arduino support with YABS…who knows. But one thing is certain, that a native webkit browser will not be much of a help there!

HAIKU might have a purpose for the Maker and Tinker community, but it does not have a future for the multimedia, office desktop or browser community, accept that and start making a HAIKU to work with, not to look at!

I am interested in helping, supporting actions (money) which lead to a useful, robust HAIKU-GCC4, which enables, even invites people to work with it, in form of developing solutions with or creating, maintaining, supporting solutions for this purpose.

Best Regards,

BeWang

Also, our drivers don’t need recompilation, and our sources aren’t that big. I am counting my local git tree, atm (compiled, including a cross-compile tree and bochs (why is that in there?), it uses 5 gibibyte of hdd). I can clean-compile haiku in about 15 minutes, so even if you did change something, it would be done in around 2-5 minutes.

On “systems” like these would be great: http://www.minnowboard.org/meet-minnowboard-max/

No reason it wouldn’t! it has a x86_64 processor and a graphics card, so everything needed is built in

Well, I maybe somehow stupid. To me it seems strange to hear stories about recompiling the whole system. My dream is to have a working Haiku OS release, which could be a reliable base for writing some software. There are me confusing discussions on GCC2, GCC4, stable libraries, strange foreign packages. When will it be, that Haiku OS is containing all components for a trustable development in itself? Those nightly builds for me merely have the state of experiments and thus could not be a starting point for writing Haiku OS software.

Dear Puckipedia;

Yes, maybe the sources ain’t that big, I did not really measure. The point was, that it is not easy for newcommers to work with HAIKU. HAIKUs state of documentation etc. does not invite people to work with it. And I do not understand, how some things are important, like native web browser, package management, when the base is not there in the first place. One of these would be the answer to the question:

What is the purpose of HAIKU GCC4?

If you look around, new OSes do have a purpose, like ChromeOS. Its a webbrowser OS, period. AROS, its an AMIGA, like HAIKU-GCC2 is BeOS.

So, what is HAIKU-GCC4? What can I do with HAIKU-GCC4? For what would I want to use it? This question is unanswered, but you do know already, that you need a native web browser and a package management. Even though, with the latter, it is more unstable, unreliable and easier to mess up. Package management solved nothing really, it made thinks more complicated as I have to manage different versions of system and fragments now. People wanted an easy way to install software. Now they have a nightmare to manage and to keep stable. Besides, where is the server backend for us, so we can manage our own private tree? Like an Suse Update Server?

Regards

BeWang

edit: --typing mistakes

haiku gcc4 is an unsupported build, but it’s certainly something to the people who made it and that’s all that matters.

haiku is the media os

@Octopus;

I may have not wrote it clearly, you would have to recompile the Linux Kernel to enable features if not present. For example user-space GPIO support, etc. My HAIKU development experience was, that I was pointed to the system sources, with a friendly invitation to dig.
I would expect from HAIKUs creators documentation on how to use it. If he/she has no time for that, someone else should do it. If there is no one who does it for free, then pay one. But a system should be documented.

I am also confused about the GCC2 GCC4 and GCC<2&4> hybrids and the libraries.

My suggestion:

Clean cuts

GCC2 for BEOS-HAIKU, only…use the old software on modern hardware, have fun there!
GCC4 for HAIKU, make new software, better ones, modern ones, forget the past.

HAIKU-GCC4 could be 64bit, only. It doesn’t matter. It just shouldn’t mix things.

BeWang

I think our home page sums it rather well:

Haiku is a new open-source operating system that specifically targets personal computing. Inspired by the BeOS, Haiku is fast, simple to use, easy to learn and yet very powerful.

I'll only add to this that we target desktop computers, not phone or tablets (this was obvious when we wrote this on the website homepage some years ago, now it's worth saying). I think there's a point in doing that. Both Windows and OSX are gradually moving to more tablet-oriented stuff, even if they still support desktop computers. Here in Haiku we think there are still things to do to improve the experience on desktop computers, and make a plain and simple system that just works. This is our target. The maker and tinkerers will be more happy with Linux, an OS they can modify and tweak for any use. This is not what we're after.

Now, let's see what we need for this. Yes, you guessed it, no system could go without a proper web browser. This is why I'm currently working on that. Haiku is my main operating system (not secondary or tertiary), and even the only system on my main computer. The old web browser was incredibly slow, and failed rendering some web pages. This was unbearable for me. Things are getting better, but I'm still not completely happy with it.

More than once I killed my system by installing broken software that would insert non-working libraries (outdated, built for the wrong arch, ...) in my system dir. I had to track the libs and delete them, or do a clean install. Now with package management, this is a matter of deleting a single package file containing the broken software. My system is much more difficult to break. I can still install packages as easily as a drag and drop, and we will probably even make this as easy as a double click on the hpkg file. I don't see how this makes the system more unstable or difficult to manage than before.

If you want to distribute your own packages, all you need is an http server. We provide the package_repo tool to build a repository, which you can then share with any http server.

This leaves us with the problem of documentation. This is an area we aren't very good at. For application programming, we aren't allowed to modify and update the Be Book, so we have to rewrite it. This is not a very rewarding work, and writing good documentation is a difficult task. I'll mention the little-known docs/develop/ folder, in Haiku source tree, that documents some of Haiku internals. In the kernel subfolder, you'll find documents about the device manager as well as the USB stack, and the filesystem layer. We don't have stub drivers, because we have real-world drivers that are readable enough and can easily be stripped from device-specific code. They are in src/add-ons/kernel/drivers, sorted by device type.h.

A quick google searhc reveals https://www.haiku-os.org/documents/dev/device_driver_basics (surprise, with... a driver stub template!) and our API guide has a complete section dedicated to USB drivers (http://api.haiku-os.org/usb_modules.html)

Finally, Haiku is a small project with about 20 developers working on their free time. We can't work on everything at once, and each of us does its best to make the project move forward, depending on their respective competences nad motivations. This is why it may look like things happen a bit out of order, and there are sometimes big activities spike,s and long quiet periods. A more profesional workflow may be better, but we don't have the money to hire more full-time developers.

Hi;

First of all, thank you taking your time replying to my post. I believe, that my dream(s) must not be yours. I believe, that your goals must not be mine.
I do not program Haiku. I also can not afford using it as my primary OS, which is sad, but true. On the other hand, I can provide money, to get things done. As I wrote earlier, I want to contribute to Haiku, not in programming, but in funds. Under the condition, that there is a foundation we all can build upon.

[quote=PulkoMandy]

I think our home page sums it rather well:

Haiku is a new open-source operating system that specifically targets personal computing. Inspired by the BeOS, Haiku is fast, simple to use, easy to learn and yet very powerful. [/quote] I agree with it. I hope I did not say differently. It is a desktop environment >>.<<

And this definition is too blurry for me. That’s a marketing phrase you can find spoken by all desktop system vendors. You go ask Microsoft, Apple, you name it. They all will say exactly the same. We offer >>Working desktop environments<<, the difference is the emphasis of a product. Microsoft is corporate. Apple is Hipster. Linux is for free spirits. What is Haiku? For whom is Haiku? What is your goal? Whom do you want to reach?

Hmm…you mean making software or tinkering with them is what you do not want, that people do with Haiku? Are you very sure about this? You explicitly uninvite people to change Haiku? To bring other ideas and drifts to your OS?
This can not be your intention, please explain.

My intention was more to make it easy for people accessing self made hardware from Haiku. Create software on Haiku, which controls hardware and/or displays measured data. You know, those kind of things, you could do in the >>good ol' days<>unimplemented<<. Can you tell me, why I should not offer money to the maintainer, to implement it correctly? Why you push me away, just because, I make things, I tinker with thinks differently then you?

[quote=PulkoMandy]

Now, let's see what we need for this. Yes, you guessed it, no system could go without a proper web browser. This is why I'm currently working on that. Haiku is my main operating system (not secondary or tertiary), and even the only system on my main computer. The old web browser was incredibly slow, and failed rendering some web pages. This was unbearable for me. Things are getting better, but I'm still not completely happy with it.

[/quote] I feel you! Its your dream, go after it. I do not have to understand it. [quote=PulkoMandy]

More than once I killed my system by installing broken software that would insert non-working libraries (outdated, built for the wrong arch, ...) in my system dir. I had to track the libs and delete them, or do a clean install. Now with package management, this is a matter of deleting a single package file containing the broken software. My system is much more difficult to break. I can still install packages as easily as a drag and drop, and we will probably even make this as easy as a double click on the hpkg file. I don't see how this makes the system more unstable or difficult to manage than before.

[/quote] OK, that's the tricky part, and there might be a misunderstanding regarding the term >>package-management<<. For me a package management system (PMS), is a more fine grained version of a ApplicationStore. An PMS should give me the functionality of a VCS system, but with binaries. What you currently have is an AppStore. An unsecured one, thus everyone can install stuff or/and update the system, unprotected. How can I specify to install a system in a certain state of program/library version? For example, a future driver of mine works with a future libUSBx version 1.0 and not the latest 1.1, how to downgrade? I do not need a technical answer for that, I am sure it is somewhere hidden. Apples .App approach, even if it results in huge binaries is easier to handle. Hard disk space is cheap and getting cheaper by the minute. But again, the discussion was long and hard that day, PMS won. We all have to bear it. [quote=PulkoMandy]

If you want to distribute your own packages, all you need is an http server. We provide the package_repo tool to build a repository, which you can then share with any http server.

[/quote] Thanks! Nice to know. Why is that not installed by default on the nightly build, which is market as being useful for developers. A small text file on the desktop, too much to ask? Is it the one or two mega byte the image would gain? Can't be.

And this is my point, exactly. You guys have it, it is there already, but you hide it…If I download the release of Haiku.R4 from the haiku-os.org page or a nightly build and install later the system, I get a hard disk mounted as haiku. If I open it, there is a folder called develop, in there is a folder called sample-code. Why, for gods sake, are your mentioned samples not inside? Why do you burden people, new to Haiku to:

a) download the sources...easy in haiku, but again, you have to do it b) find the stuff in the directory tree, which is not small, google for stuff...

Even if they do not want to alter the entire system per se, but just create a driver? Why would I have to do that? Honestly, why can't you guys just copy those things into this develop folder, create new ones if needed and make it _easy_ for newcomers? At the moment there is a pdflib thinggy inside... If you would place those text editable into the image, people might even update and extend it, during their studies. You could make a package developer-documentation or something. At this point, you might wonder, why I would prefer things locally, rather than google for things...well I do not have everywhere Ethernet and your WiFi support is poor. Or, I have Haiku not installed on my main, fast computer, but on an old one, where even your new browser is slow, or the Ethernet chip not recognized. Before you ask, I install Haiku on a different system and move the hard disk afterwards.

OK, again, why not somewhere obvious…and by all means, you really put all money into the product and not the documentation. I don’t like that, if you take money, you should provide documentation. It would be nice, if there could be a developer-guide on the desktop pointing to all those relevant places, as you do with software downloads. Even better,
place the HTML files or CMS system onto the image for a local feast.

Make a developer-image every half year…or at a point when you see need.

And Haiku stays a small project, if Haiku doesn’t start to make it easy to work with it.

And again, I offer to contribute money, if we can find something worth spending. As you might have noticed, I will not spend money on web browsers, as Haiku will never be my primary OS, at least not until I retire from work. I would also not spend money on multimedia features, as it can not compete with other OSes hardware acceleration. Thus, I will not put money into the main pot. In addition, I would feel happy with provide money for projects I see worth funding. I like the way of how AROS finance things…as a suggestion.

Thank you very much for your time

Best Regards

BeWang

P.S. Some texts might read harsh, I am sorry for that, it’s my bad english, no harm meant.

@BeWang

Why you talk your wishes and make the work of a “hand full” developers bad? Haiku is still on “alpha” stage. The priority is focused to the system itself and the main funktions. All developers they are the most time working for haiku do this in his spare free time on “real” life. mit is more a hobby, they does not take enough money to make a job out of it.

Yes i thinking a little like you, i think the focus must be set on user support, but not in the “alpha” stage.

If you want to support this project, do your work to it. Spend some time, some money and help to make this project a project like your dreams in the future. Here in germany we say “Ohne fleiß kein Preis - without assiduity not reveal any”.

I like this OS and i use it in my spare free time as “yes” main OS for online work and developing in yab (my hobby). I do some programs for haiku and i write tutorials, documentations. I help Haiku with what I can do by myself.

Although many would contribute only half as much as they criticize, we would be much further.

And “hands up” from nightlys if you want to use the system not as development platform of haiku programming. Use the alpha releases to be user.

If you want a complete OS to make apps on it, use slowly LINUX or WINDOWS…

Greetings Lelldorin

BeSly - Haiku, BeOS and Zeta knowledge base: http://www.besly.de

@lelldorin

Hi,

I do not wish to make Haiku bad nor its creators. And I am truly sorry, if my writings sounds like it. It is not meant to be. Haiku is a great OS. I wanted to extend it. I honestly wanted to contribute money. I just don’t share the road map, and where the funds are spent. Like most of the people I have to work hard for my money. Spending it for things I do not see worth, would make me not feel good. Sounds odd, but it’s like it. On the other hand, if I could put money on projects I like, projects which also would help me reaching my goals, I would not hesitate.

I started posting in the >>suggestion<< thread not by accident. But maybe, yes, maybe I am a bit frustrated, that projects gets attention I do not see important. And projects I see as important, get neglected, documentation for example. I am more a bottom-up kind of guy, who likes to have a steady foundation, rather than a Jo-Jo approach to things. There are two words in German “Holschuld & Bringschuld” (Holschuld -->debt collectible by the creditor, Bringschuld -->debt to be delivered to the creditor). For me documentation is a Bringschuld of the systems designer. I might be old-school, but blog postings are not considered documentation to me.

It might be all wrong.

Maybe you are right, I might look at the wrong OS altogether and Linux is the better OS, for me that is.

I apologize to all readers wasting your time.

Best Regards

BeWang

[quote=Bewang]@lelldorin

Hi,

I do not wish to make Haiku bad nor its creators. And I am truly sorry, if my writings sounds like it. It is not meant to be. Haiku is a great OS. I wanted to extend it. I honestly wanted to contribute money. I just don’t share the road map, and where the funds are spent. Like most of the people I have to work hard for my money. Spending it for things I do not see worth, would make me not feel good. Sounds odd, but it’s like it. On the other hand, if I could put money on projects I like, projects which also would help me reaching my goals, I would not hesitate.

I started posting in the >>suggestion<< thread not by accident. But maybe, yes, maybe I am a bit frustrated, that projects gets attention I do not see important. And projects I see as important, get neglected, documentation for example. I am more a bottom-up kind of guy, who likes to have a steady foundation, rather than a Jo-Jo approach to things. There are two words in German “Holschuld & Bringschuld” (Holschuld -->debt collectible by the creditor, Bringschuld -->debt to be delivered to the creditor). For me documentation is a Bringschuld of the systems designer. I might be old-school, but blog postings are not considered documentation to me.

It might be all wrong.

Maybe you are right, I might look at the wrong OS altogether and Linux is the better OS, for me that is.

I apologize to all readers wasting your time.

Best Regards

BeWang[/quote]

Haiku Guides are the beginning of documentation for Haiku OS. Yes it is not completed at all, but this is nomally if a OS is in development and on alpha stage. We all can be afraid, because we can use a alpha system, and not only have a source code.

I does not want to make you leaving this system. I only want to show you, that this is no company or Linux community with hudreds of developers out there. Our community is smal and not all of us are developers in C or C++, kernel devs, hardware devs, driver devs…

If this state of development is not good enough for you to add your part to the community or Haiku team, stay tuned. Look by time the state of Haiku and if you like the OS and the people of the community, we are afraid to have more hands to make the OS better. Join and help.

Greetings Lelldorin

I would say we target regular users of personal computers. Not corporate like Microsoft, but something you use at home to browse the web, write e-mail, maybe play some games, watch videos on it, etc. We try to build a system that “just works”, for people tired of fighting with virusses on Windows on their home computer.

There is probably also an amount of BeOS nostalgia, and “just because we want something different”.

What I mean is summarized by one of our rules in Haiku design: “sane defaults, not maximum configurability”. What I mean by this, is we try to build a system that has a single configuration. This means people writing application can rely on the operating system doing things a certain way, and don’t have to handle all kind of cases. When writing an application for Linux, you would have to make sure it runs fine on both GNOME and KDE, and maybe some other environments.You will have to select one of a handful of GUI toolkits (IUP, wx, GTK, Qt, Motif, …), and pick one library for everything you need to do (libmad or ffmpeg or libogg and libvorbis or gstreamer to decode sound? libpng or libjpeg or libtiff to decode images?). In Haiku, we try to unify these, so you can rely on a way to load pictures and play sound without caring about their format. There are many other examples of this. The reduced configurability (but not extensibility) of the OS makes it easier to write applications for it.

We have the USB Kit, which allows hacking with USB devices. With modern hardware, this is the only port available for I/O. But you could plug an Arduino or something else and play with it. I have worked on a libUSB port, with no useable results yet, unfortunately.

I wrote the IUP port, and I will definitely accept money to continue working on it. However, I don’t think this is something Haiku, Inc. should fund. The money Haiku, Inc. has is better spent on central features of the system, which make it possible to write applications and port software and libraries, and a few “core” applications such as the web browser (at least until we get a Firefox or Chrome or Opera port, which would free the Haiku project of handling this).

You can have multiple versions of a library installed. Just drop them in /system/packages. The package manager is smart enough to download those libraries, when they are needed. When you install your driver, you get a popup saying either “You need libusbx 1.0, should I download and install it?” or “you need libusbx 1.0, and I can’t find it in the repo. Add the missing repo or install that package manually”.

It’s installed and available from terminal. Again, it’s only a problem of documentation, which is still a work in progress. An user interface could also be built around it to make things simpler.

Definitely, we should do that. In the previous alphas we ran out of space on the CD and had to remove some things from the package. Now that we have compressed packages, the CD should have a bit more free space for this, so the next release will probably feature more useful files again. And, we can make them available in the packages repositories, if they don’t fit on the CD.

Nightlies are kept small to cut down on download times. So they lack a lot of software we normally bundle in the alphas.

Haiku, Inc. gives money to people who request it. So far this led to only development contracts, but if someone skilled with documentation writing approaches them, they could consider it. Maybe this developer-driven spending of the money is a bit unfortunate.

We have bounties at Haikuware (this is independant from Haiku, Inc.). I think this is similar to what AROS does. The feature-oriented and time-limited nature of these created some tension: one dev starts working, does 90% of the work, and the time runs out. Another dev then grabs the bounty, does the small remaining work and gets the money. Well, this could be improved, probably.

Should I start a bounty for the IUP port?

I had to reformat this so I could read it:

Re: In my dream…
by PulkoMandy - 2014-04-11 05:37

[quote=Bewang] The difference is the emphasis of a product. Microsoft is corporate. Apple is Hipster. Linux is for free spirits. What is Haiku? For whom is Haiku? What is your goal? Whom do you want to reach? [/quote] I would say we target regular users of personal computers. Not corporate like Microsoft, but something you use at home to browse the web, write e-mail, maybe play some games, watch videos on it, etc. We try to build a system that “just works”, for people tired of fighting with virusses on Windows on their home computer. There is probably also an amount of BeOS nostalgia, and “just because we want something different”. [quote=Bewang] Hmm…you mean making software or tinkering with them is what you do not want, that people do with Haiku? Are you very sure about this? You explicitly uninvite people to change Haiku? To bring other ideas and drifts to your OS? This can not be your intention, please explain. [/quote] What I mean is summarized by one of our rules in Haiku design: “sane defaults, not maximum configurability”. What I mean by this, is we try to build a system that has a single configuration. This means people writing application can rely on the operating system doing things a certain way, and don’t have to handle all kind of cases. When writing an application for Linux, you would have to make sure it runs fine on both GNOME and KDE, and maybe some other environments.You will have to select one of a handful of GUI toolkits (IUP, wx, GTK, Qt, Motif, …), and pick one library for everything you need to do (libmad or ffmpeg or libogg and libvorbis or gstreamer to decode sound? libpng or libjpeg or libtiff to decode images?). In Haiku, we try to unify these, so you can rely on a way to load pictures and play sound without caring about their format. There are many other examples of this. The reduced configurability (but not extensibility) of the OS makes it easier to write applications for it. [quote] My intention was more to make it easy for people accessing self made hardware from Haiku. Create software on Haiku, which controls hardware and/or displays measured data. You know, those kind of things, you could do in the >>good ol’ days<< with a BeBox and its GPIO. It was called a GeekPort. [/quote] We have the USB Kit, which allows hacking with USB devices. With modern hardware, this is the only port available for I/O. But you could plug an Arduino or something else and play with it. I have worked on a libUSB port, with no useable results yet, unfortunately. [quote] In my dream, creating a GUI was easy in Haiku. I looked yesterday, since some month now Haiku has a rudimentary port of IUP for lua, the only GUI for a modern interpreted language. I looked into the source and approximately 60% of all functionality returns >>unimplemented<<. Can you tell me, why I should not offer money to the maintainer, to implement it correctly? Why you push me away, just because, I make things, I tinker with thinks differently then you? [/quote] I wrote the IUP port, and I will definitely accept money to continue working on it. However, I don’t think this is something Haiku, Inc. should fund. The money Haiku, Inc. has is better spent on central features of the system, which make it possible to write applications and port software and libraries, and a few “core” applications such as the web browser (at least until we get a Firefox or Chrome or Opera port, which would free the Haiku project of handling this). [quote] OK, that’s the tricky part, and there might be a misunderstanding regarding the term >>package-management<<. For me a package management system (PMS), is a more fine grained version of a ApplicationStore. An PMS should give me the functionality of a VCS system, but with binaries. What you currently have is an AppStore. An unsecured one, thus everyone can install stuff or/and update the system, unprotected. How can I specify to install a system in a certain state of program/library version? For example, a future driver of mine works with a future libUSBx version 1.0 and not the latest 1.1, how to downgrade? I do not need a technical answer for that, I am sure it is somewhere hidden. Apples .App approach, even if it results in huge binaries is easier to handle. Hard disk space is cheap and getting cheaper by the minute. [/quote] You can have multiple versions of a library installed. Just drop them in /system/packages. The package manager is smart enough to download those libraries, when they are needed. When you install your driver, you get a popup saying either “You need libusbx 1.0, should I download and install it?” or “you need libusbx 1.0, and I can’t find it in the repo. Add the missing repo or install that package manually”. [quote] Thanks! Nice to know. Why is that not installed by default on the nightly build, which is market as being useful for developers. A small text file on the desktop, too much to ask? Is it the one or two mega byte the image would gain? Can’t be. [/quote] It’s installed and available from terminal. Again, it’s only a problem of documentation, which is still a work in progress. An user interface could also be built around it to make things simpler. [quote] And this is my point, exactly. You guys have it, it is there already, but you hide it…If I download the release of Haiku.R4 from the haiku-os.org page or a nightly build and install later the system, I get a hard disk mounted as haiku. If I open it, there is a folder called develop, in there is a folder called sample-code. Why, for gods sake, are your mentioned samples not inside? Why do you burden people, new to Haiku to:
a) download the sources…easy in haiku, but again, you have to do it b) find the stuff in the directory tree, which is not small, google for stuff…

Even if they do not want to alter the entire system per se, but just create a driver? Why would I have to do that? Honestly, why can’t you guys just copy those things into this develop folder, create new ones if needed and make it easy for newcomers? At the moment there is a pdflib thinggy inside… If you would place those text editable into the image, people might even update and extend it, during their studies. You could make a package developer-documentation or something. [/quote] Definitely, we should do that. In the previous alphas we ran out of space on the CD and had to remove some things from the package. Now that we have compressed packages, the CD should have a bit more free space for this, so the next release will probably feature more useful files again. And, we can make them available in the packages repositories, if they don’t fit on the CD. Nightlies are kept small to cut down on download times. So they lack a lot of software we normally bundle in the alphas. [quote] OK, again, why not somewhere obvious…and by all means, you really put all money into the product and not the documentation. I don’t like that, if you take money, you should provide documentation. It would be nice, if there could be a developer-guide on the desktop pointing to all those relevant places, as you do with software downloads. Even better, place the HTML files or CMS system onto the image for a local feast. [/quote] Haiku, Inc. gives money to people who request it. So far this led to only development contracts, but if someone skilled with documentation writing approaches them, they could consider it. Maybe this developer-driven spending of the money is a bit unfortunate. [quote] And again, I offer to contribute money, if we can find something worth spending. As you might have noticed, I will not spend money on web browsers, as Haiku will never be my primary OS, at least not until I retire from work. I would also not spend money on multimedia features, as it can not compete with other OSes hardware acceleration. Thus, I will not put money into the main pot. In addition, I would feel happy with provide money for projects I see worth funding. I like the way of how AROS finance things…as a suggestion. [/quote] We have bounties at Haikuware (this is independant from Haiku, Inc.). I think this is similar to what AROS does. The feature-oriented and time-limited nature of these created some tension: one dev starts working, does 90% of the work, and the time runs out. Another dev then grabs the bounty, does the small remaining work and gets the money. Well, this could be improved, probably. Should I start a bounty for the IUP port?

Yes, I noticed I can’t use the bbcode tags and the editor expects me to hand-format things in html. Can I fix that somewhere? Does it work normally for all of you?

If this quote works, it does…

Regards,
Humdinger

This is why I am here - I don’t need a server, just an OS to allow me to do what I use computers for.

I use the internet, forums, web based email = Web browser - I listen to music = Music player - like to watch videos sometimes = Movie player - play the occasional time waster type of game = Xpat2/Xshisen/Xmahjongg

So I see a Web browser, Music player, and Video player as essentials for any OS.

(Also I try to help others using F.O.S.S. - I spread the word and help out on forums, etc.)

Absolutely. I totally agree with Octopus’s remarks.
What we need is something stable and straightforward that works, however limited its functionality.

The time Haiku has been in development has caused the inital roadmap which was relevant, to become less relevant, in my view. Having Haiku focused to GCC2 in 2001 to maybe 2006, would have been alright because the old Beos applications would still be good in comparison to other OS’s. The problem is it has taken so long and that has made more work. More to keep up with modern OS’s and hardware. The state of computers/software outside Haiku seems to be on a exponential rise while haiku is stuck in the past, or maybe more precisely between a rock and a hard place. If it leaves compatibility with Beos applications/gcc2, it then might seem more up to date but if it does not get more developers for modern applications and hardware and video acceleration, then things will drag on even longer.
Maybe if a more automated means was available for debugging and fixing bugs, would speed things up. I have heard of genetic programming, but am not a programmer myself and not used it myself. Bug reporting would still be performed by developers and users but the expected results would be translated into the selection asymptote (acceptable expected function performance). If this could be implemented it would free the programmers for writing modern applications and the OS support. How many others here know of or used genetic algorthms?