What sort of devs would your OS attract? :)

All off topic discussions go here. Everything from the funny thing your cat did to your favorite tv shows. Non-programming computer questions are ok too.
User avatar
eekee
Member
Member
Posts: 891
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

What sort of devs would your OS attract? :)

Post by eekee »

I try KolibriOS every few years. It's worked well and looked good since the first time I tried it, which may have been in 2005, but after all these years, it still doesn't have copy/paste in important programs such as the shell. It made me think, perhaps it doesn't have copy/paste because devs who use it were repelled by the lack of it.

Then I thought about Plan 9 and its fork, 9front. They're used via a window system; the console is nearly useless, but after more than 2 decades of open-source development they have hardly any real GUI programs or toolkits. Many of its users and devs think the world of its text-oriented but not console-based userspace, while developers who would spend time on developing GUIs for it seem to be almost entirely absent. Besides the UI, Plan 9 users are often very happy with how easy it is to network and to use remote machines' facilities. It's no surprise that it has attracted other network projects, whether personal or research.

So, what sort of developers would your OS attract? :)
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
thewrongchristian
Member
Member
Posts: 426
Joined: Tue Apr 03, 2018 2:44 am

Re: What sort of devs would your OS attract? :)

Post by thewrongchristian »

eekee wrote:I try KolibriOS every few years. It's worked well and looked good since the first time I tried it, which may have been in 2005, but after all these years, it still doesn't have copy/paste in important programs such as the shell. It made me think, perhaps it doesn't have copy/paste because devs who use it were repelled by the lack of it.

Then I thought about Plan 9 and its fork, 9front. They're used via a window system; the console is nearly useless, but after more than 2 decades of open-source development they have hardly any real GUI programs or toolkits. Many of its users and devs think the world of its text-oriented but not console-based userspace, while developers who would spend time on developing GUIs for it seem to be almost entirely absent. Besides the UI, Plan 9 users are often very happy with how easy it is to network and to use remote machines' facilities. It's no surprise that it has attracted other network projects, whether personal or research.

So, what sort of developers would your OS attract? :)
LOL, adventurous ones.

My OS provides little to most users. I imaging like a lot of projects on these pages, it is a personal play thing only.

That said, I've had a bit of an injection of impetus recently, as I've started sharing the C toolkit that I use in my kernel with user space.

The main things this toolkit provides my kernel is:

- Simple, generic map container interface, backed by a number of implementations for different scenarios.
- A mark/sweep garbage collection library for automatic memory management. The intention is to avoid memory errors relating to dangling references, or memory leaks causing memory failures after prolonged use.
- Typed exception handling, so most of my code doesn't deal with error checking scenarios inline, and instead defers error handling to a smaller number well defined points. Such a point is the system call dispatcher, which catches exceptions from system calls, and converts them into errno return codes for the system call back to user space.
- COM like interfaces, with interface queries so objects can provide multiple interfaces.

This makes my C code a bit Java like.

All of these are generally useful, and are not things provided by the pitiful C standard library, so I'm breaking them out into a separate user level project. First use will be the tools I'm using for my kernel development, for example, tools that generate code for repetitive and formulaic tasks, such as code for dealing with external data structures (such as file system superblocks/inodes etc.)

I can see this library being generally useful outside of kernel development.
vvaltchev
Member
Member
Posts: 274
Joined: Fri May 11, 2018 6:51 am

Re: What sort of devs would your OS attract? :)

Post by vvaltchev »

eekee wrote:I try KolibriOS every few years. It's worked well and looked good since the first time I tried it, which may have been in 2005, but after all these years, it still doesn't have copy/paste in important programs such as the shell. It made me think, perhaps it doesn't have copy/paste because devs who use it were repelled by the lack of it.

Then I thought about Plan 9 and its fork, 9front. They're used via a window system; the console is nearly useless, but after more than 2 decades of open-source development they have hardly any real GUI programs or toolkits. Many of its users and devs think the world of its text-oriented but not console-based userspace, while developers who would spend time on developing GUIs for it seem to be almost entirely absent. Besides the UI, Plan 9 users are often very happy with how easy it is to network and to use remote machines' facilities. It's no surprise that it has attracted other network projects, whether personal or research.

So, what sort of developers would your OS attract? :)
Nice topic! :-)
My OS should attract devs interested in learning/practicing kernel development while implementing some sort of simplified / stripped-down & ultra-deterministic alternative to Embedded Linux for the small scale. In essence, people attracted to:


[*] UNIX-like operating systems

[*] minimalistic software that does the job well (but supporting fewer use-cases)

[*] software that favors the small-scale instead of the large scale (N small)

[*] deterministic software that doesn't make guesses and guarantees strict ordering and success or early failure, even when it is less efficient to so (for the average case)

[*] software projects that do plenty of automation testing

[*] software that loves being compatible with pre-existing 3rd party software when possible

Should like my project.

EDIT: removed extra text irrelevant to the topic.
Tilck, a Tiny Linux-Compatible Kernel: https://github.com/vvaltchev/tilck
chilly
Posts: 2
Joined: Tue Mar 14, 2023 10:03 pm
Libera.chat IRC: chilly16

Re: What sort of devs would your OS attract? :)

Post by chilly »

Ones with a vivid imagination, who can imagine a working OS...
User avatar
eekee
Member
Member
Posts: 891
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

Re: What sort of devs would your OS attract? :)

Post by eekee »

Sorry for the late reply. It's been so long, I've had time to finally start on my own OS! ;)

My OS, Kaph, will attract people interested in "plain English programming" with the Osmosian Order's compiler, modularity, simplicity, and how we can simplify by finding unconventional abstractions. It probably won't be good for people who want a Unix-like system. But! The future tense is very relevant; there's a lot of design work to do and abstractions to find.

I'd like Kaph to be good for people who would like to program but can't deal with the current state of the art -- massive feature sets, alphabetically-ordered documentation, syntax popups, and other things. I know it's impossible to cater to every person's issues. Retrocomputing and fringe Unix developments (like suckless below) are good for many of those people. I'm hitting a somewhat different spot with plain English code.

@thewrongchristian:
Haha! Yeah, I think most of us on the forums would have to say "adventurous users." :) Exceptions would be rdos, maybe managarm, and that's all I can think of from currently active forumites. ToaruOS might count, but klange doesn't want it used seriously.

I like your toolkit. Is "COM" Microsoft's Common Object Model? I might look into that for modularity purposes.

@ vvaltchev:
Thanks! Several of your points remind me of suckless.org, especially these:
vvaltchev wrote:[*] UNIX-like operating systems

[*] minimalistic software that does the job well (but supporting fewer use-cases)

[*] software that favors the small-scale instead of the large scale (N small)

[*] deterministic software that doesn't make guesses and guarantees strict ordering and success or early failure, even when it is less efficient to so (for the average case)
On the other hand, I don't think they do much if any automation testing. Their goals are much less clearly defined.
vvaltchev wrote:[*] software that loves being compatible with pre-existing 3rd party software when possible
This, together with simplicity, always reminds me that the authors of Plan 9 used to say 90% of the code is for interfacing with externally-imposed standards! ;) But you do you. Plan 9 has the problem that, even with such a large percentage of the OS catering to widely accepted standards, it's still hard to port many programs. The suckless community have known since the late 00s that they could simplify further by switching to Plan 9, but they've chosen to continue developing for POSIX instead.

Kaph is going to have much worse compatibility than Plan 9. :? I'll have to really focus on ease of development, but that was pretty-much the goal anyway.
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
thewrongchristian
Member
Member
Posts: 426
Joined: Tue Apr 03, 2018 2:44 am

Re: What sort of devs would your OS attract? :)

Post by thewrongchristian »

eekee wrote: @thewrongchristian:
Haha! Yeah, I think most of us on the forums would have to say "adventurous users." :) Exceptions would be rdos, maybe managarm, and that's all I can think of from currently active forumites. ToaruOS might count, but klange doesn't want it used seriously.

I like your toolkit. Is "COM" Microsoft's Common Object Model? I might look into that for modularity purposes.
Yes.

I use COM in C++ in my day job, and while I generally dislike Windows programming, COM is actually quite nice, being very similar to Java interfaces.

My use is probably more like Java interfaces, as I don't do any reference counting (not necessary with mark/sweep GC). I do have an explicit interface query method, that each object uses to switch between interfaces.

It's nice being able to work with generic device_t objects in my device manager, for example, then probe each device.

On probe of a USB BBB device, the USB BBB device driver will emit a new block device instance into the device tree, which itself would be picked up by device drivers listening for new block devices. Such a device driver might be a DOS partition driver, which will probe the block device, looking for a partition table, and enumerate any contained partitions into new block devices for those partitions. These block devices will further be probed to look for filesystems etc.

But the device manager itself just works with the device interface, probing new devices as they're added.

If you're interested, I may look at splitting this library out, or at least make it a standalone build target.
rdos
Member
Member
Posts: 3297
Joined: Wed Oct 01, 2008 1:55 pm

Re: What sort of devs would your OS attract? :)

Post by rdos »

I'm not much concerned about that issue. My future plans is only to have it as my own platform so I can code various projects without needing to learn Windows or Linux. My company also has a few 1,000s of installations using my OS that will need to be maintained for many years. So, I plan to involve in that too. I will not involve in new Linux solutions though, as I have no desire to code for Linux or Android.
User avatar
BigBuda
Member
Member
Posts: 104
Joined: Fri Sep 03, 2021 5:20 pm

Re: What sort of devs would your OS attract? :)

Post by BigBuda »

eekee wrote:So, what sort of developers would your OS attract? :)
The dev...il.
Writing a bootloader in under 15 minutes: https://www.youtube.com/watch?v=0E0FKjvTA0M
User avatar
eekee
Member
Member
Posts: 891
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

Re: What sort of devs would your OS attract? :)

Post by eekee »

thewrongchristian wrote:
eekee wrote: @thewrongchristian:
Haha! Yeah, I think most of us on the forums would have to say "adventurous users." :) Exceptions would be rdos, maybe managarm, and that's all I can think of from currently active forumites. ToaruOS might count, but klange doesn't want it used seriously.

I like your toolkit. Is "COM" Microsoft's Common Object Model? I might look into that for modularity purposes.
Yes.

I use COM in C++ in my day job, and while I generally dislike Windows programming, COM is actually quite nice, being very similar to Java interfaces.

My use is probably more like Java interfaces, as I don't do any reference counting (not necessary with mark/sweep GC). I do have an explicit interface query method, that each object uses to switch between interfaces.

It's nice being able to work with generic device_t objects in my device manager, for example, then probe each device.

On probe of a USB BBB device, the USB BBB device driver will emit a new block device instance into the device tree, which itself would be picked up by device drivers listening for new block devices. Such a device driver might be a DOS partition driver, which will probe the block device, looking for a partition table, and enumerate any contained partitions into new block devices for those partitions. These block devices will further be probed to look for filesystems etc.

But the device manager itself just works with the device interface, probing new devices as they're added.
Interesting! That's certainly the sort of model I'd like.
thewrongchristian wrote:If you're interested, I may look at splitting this library out, or at least make it a standalone build target.
Thanks, but I'm not using C++ or even C. I could dynamically link it, but I want to write my own memory management.

rdos wrote:I'm not much concerned about that issue. My future plans is only to have it as my own platform so I can code various projects without needing to learn Windows or Linux. My company also has a few 1,000s of installations using my OS that will need to be maintained for many years. So, I plan to involve in that too. I will not involve in new Linux solutions though, as I have no desire to code for Linux or Android.
I didn't think you would be. :) I'd love to have a business like yours, but I don't think my health would really allow me to be professional. (I still have hope that might change.) I've known several programmers with similar businesses; 1 person or a small team providing solutions with an OS or language they understand top to bottom. They're all around retirement age; you give me hope this business model can still work.

BigBuda wrote:
eekee wrote:So, what sort of developers would your OS attract? :)
The dev...il.
It's not that bad, is it? :lol: You might have to fix up your coding style; no more writing bootloaders in 15 minutes. ;)
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
User avatar
BigBuda
Member
Member
Posts: 104
Joined: Fri Sep 03, 2021 5:20 pm

Re: What sort of devs would your OS attract? :)

Post by BigBuda »

eekee wrote:It's not that bad, is it? :lol: You might have to fix up your coding style; no more writing bootloaders in 15 minutes. ;)
Oh, no, he might just want his place running more smoothly. In any case, I'm curious to hear your feedback on my coding style.
Writing a bootloader in under 15 minutes: https://www.youtube.com/watch?v=0E0FKjvTA0M
User avatar
eekee
Member
Member
Posts: 891
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

Re: What sort of devs would your OS attract? :)

Post by eekee »

BigBuda wrote:In any case, I'm curious to hear your feedback on my coding style.
I was just trying to find something to make the joke work. Kind-of work. :) I don't actually remember your coding style, so it can't be memorably-bad, at least. ;)
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
User avatar
BigBuda
Member
Member
Posts: 104
Joined: Fri Sep 03, 2021 5:20 pm

Re: What sort of devs would your OS attract? :)

Post by BigBuda »

eekee wrote:I was just trying to find something to make the joke work. Kind-of work. :) I don't actually remember your coding style, so it can't be memorably-bad, at least. ;)
You managed to somehow scare me there for a bit, because I kinda need to have a good coding style, as defensive programming and good programming practices are some of the things I'm paid to teach :D
Writing a bootloader in under 15 minutes: https://www.youtube.com/watch?v=0E0FKjvTA0M
User avatar
eekee
Member
Member
Posts: 891
Joined: Mon May 22, 2017 5:56 am
Location: Kerbin
Discord: eekee
Contact:

Re: What sort of devs would your OS attract? :)

Post by eekee »

BigBuda wrote:
eekee wrote:I was just trying to find something to make the joke work. Kind-of work. :) I don't actually remember your coding style, so it can't be memorably-bad, at least. ;)
You managed to somehow scare me there for a bit, because I kinda need to have a good coding style, as defensive programming and good programming practices are some of the things I'm paid to teach :D
Oh sorry! :lol: :oops:
Kaph — a modular OS intended to be easy and fun to administer and code for.
"May wisdom, fun, and the greater good shine forth in all your work." — Leo Brodie
mikegonta
Member
Member
Posts: 229
Joined: Thu May 19, 2011 5:13 am
Contact:

Re: What sort of devs would your OS attract? :)

Post by mikegonta »

BigBuda wrote:
eekee wrote:I was just trying to find something to make the joke work. Kind-of work. :) I don't actually remember your coding style, so it can't be memorably-bad, at least. ;)
You managed to somehow scare me there for a bit, because I kinda need to have a good coding style, as defensive programming and good programming practices are some of the things I'm paid to teach :D
In Scotland, you can have your haggis and eat it too.
Mike Gonta
look and see - many look but few see

https://mikegonta.com
User avatar
iansjack
Member
Member
Posts: 4703
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: What sort of devs would your OS attract? :)

Post by iansjack »

First you have to catch your haggis. Nippy wee beasties.
Post Reply