A community OS development

Questions, comments, and suggestions about this site should go here.
User avatar
HolmesSherlock
Posts: 11
Joined: Sun Mar 06, 2011 7:32 pm

A community OS development

Post by HolmesSherlock »

Hi all,
I'm new entrant here though I've browsed this forum since last few months. The reason for me to join here is to propose an idea. I was in the process of developing an OS last year. I got partial success. But the OS is incomplete. The project is hosted here. But though I'm willing to continue the development, I'm not getting time any more due to heavy work pressure. So, my individual effort is falling short. I want some interested people to come forward & participate in this project with me. It's open source. U all can go through the source code & decide whether to join me or not. Most of the code are taken from Bran's & JamesMolloy's tutorial though I've some contribution also. Can we make it a community project? What do u say? Le me know.
Last edited by HolmesSherlock on Mon Mar 07, 2011 6:26 pm, edited 1 time in total.
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Re: A community OS development

Post by Brynet-Inc »

No, we will not develop your project for you..

http://wiki.osdev.org/Beginner_Mistakes ... y_Projects

If you're not interested in developing a "fork", don't fork.
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
User avatar
HolmesSherlock
Posts: 11
Joined: Sun Mar 06, 2011 7:32 pm

Re: A community OS development

Post by HolmesSherlock »

Brynet-Inc wrote:No, we will not develop your project for you..
Sorry, I object. Its not my project, it'll be ours.
If you're not interested in developing a "fork", don't fork.
Couldn't get the meaning.
User avatar
DavidCooper
Member
Member
Posts: 1150
Joined: Wed Oct 27, 2010 4:53 pm
Location: Scotland

Re: A community OS development

Post by DavidCooper »

Just about every OS here is a community OS development - we each develop our own OS and try to share ideas to help other people develop theirs. Some people occasionally give up developing their own and team up with others to help develop a superior OS, but I can't see that yours is going to be all that attractive given that it's primarily based on following someone else's tutorial. What are the stunning features that would make anyone want to abandon their OS in favour of yours? How can you think you're going to get a good reception when you arrogantly invite everyone to chuck their own work in the bin in favour of an OS whose own designer's too bored with it to find the time to develop it himself? Where's the big dream? What's your OS going to offer the world? How can you let work get in the way of something so important?

I don't want to see one OS picked out and worked on by everyone in any case - the real success of this community of OS developers is to develop many OSes rather than just one and to make it as easy as possible for them to get to a level of useful capability. But if you really want to attract disciples to help build your OS, your best bet would be to specialise in something where the road ahead isn't mapped out, then write the map for others to follow and share it with everyone. Many will simply follow your map, but some may be so impressed that they'll drop their own project and jump aboard yours. Unfortunately, it doesn't sound as if that will happen because you don't appear to have any intention of doing any work yourself - you simply want your name written on the end result as the chief software architect. If that wasn't the case, you'd be suggesting something more community minded in which we all vote on the best way of implementing each component of an OS from scratch such that no one has their name on it as anything other than a co-creator.

And before someone suggests that we try that, we are already doing the most practical equivalent of that by building our own OSes using the components that we think are the best ones for the job. The people who want to work collectively on a single OS still haven't managed to agree on how to start work on it after many years of total inaction, so if you think they're going to get anywhere with it now, you must be living in cloud cuckoo land. The reality is that you're either going to have to go on building your own OS yourself like everyone else or just leave it sitting on the shelf until artificial intelligence is able to write the rest of it for you.
Help the people of Laos by liking - https://www.facebook.com/TheSBInitiative/?ref=py_c

MSB-OS: http://www.magicschoolbook.com/computing/os-project - direct machine code programming
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Re: A community OS development

Post by Brynet-Inc »

HolmesSherlock wrote:
If you're not interested in developing a "fork", don't fork.
Couldn't get the meaning.
You said it was a fork of Bran's tutorial, forking something and then asking others to continue it for you is pointless.
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: A community OS development

Post by Combuster »

Also, Community project = Beginner Mistakes. Fail imminent
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
pcmattman
Member
Member
Posts: 2566
Joined: Sun Jan 14, 2007 9:15 pm
Libera.chat IRC: miselin
Location: Sydney, Australia (I come from a land down under!)
Contact:

Re: A community OS development

Post by pcmattman »

Having worked on an operating system with several people I can say that, in my experience, the more developers you have the longer it takes to do anything. It's entirely counter-intuitive at first. Read the #pedigree channel logs to see some of the hour-and-longer arguments that have taken place over seemingly simple design choices if you don't believe me. On a personal project you simply implement things the way you see fit. On a team project, you can't do that.

Also, you need to provide a very appealing reason for us to drop our own project and join your community OS idea. The concept of a "community OS" is not enough to convince people to sign up.

Some of the reasons I believe a "community project" across osdev.org would fail are:
  • Planning & Design. If you manage to get four people to agree on a single design idea without compromise, you've done extremely well. Seriously. If you want to get the entire osdev.org community to agree on a single design idea, I would say "Good luck". This is anything from micro vs mono vs hybrid vs exo kernels, to which driver interface to use, and even something as simple as the abstractions you will use for platform portability. This has to be right or else you'll end up hitting issues down the track where half the community wants to rewrite fundamental parts of the system and the other half wants things kept the way they are. Unless you have great people and leadership skills that's extremely hard to resolve.
  • Coding style. I had to change my own coding style when I jumped into team projects in order to keep a consistent style across the project I was joining. A project's coding style is typically the result of various compromises to keep everyone happy. If it is not the result of compromise, it is the result of one person defining the standard for everyone else to follow, which can have a negative impact on some potential developers. 2 spaces vs 4 spaces, hard tabs vs spaces, where to put brackets, should braces be on the same line as the if statement, tabification in class and method definitions.... Everyone has an opinion here!
  • Goals. You have your own goals for an OS. I have my own goals. Everyone else has their own goals. Somehow each of those goals has to be acknowledged and perhaps some sort of compromise made to keep everyone happy. Otherwise it's no longer a "community OS" but a "subset of the community OS" and there's no reason for anyone outside of that subset to contribute anymore.
This is not an exhaustive list.

I'll finish by saying that unhappy developers leave projects. If you attempt to create an "osdev.org community OS" keeping everyone happy will be all you think about; you won't have time to write a line of code. There's a reason the Beginner Mistakes page on the wiki talks about teamwork, recruiting, and community projects (as Combuster has already pointed out).
User avatar
HolmesSherlock
Posts: 11
Joined: Sun Mar 06, 2011 7:32 pm

Re: A community OS development

Post by HolmesSherlock »

pcmattman wrote:lso, you need to provide a very appealing reason for us to drop our own project and join your community OS idea. The concept of a "community OS" is not enough to convince people to sign up.
No, I never asked those who have their own projects to join mine. But, there are people who have their own projects. But, there are people who needs a "kickstart", who are confused where to start from. I can well remember the difficulties when I started this project.
TylerH
Member
Member
Posts: 285
Joined: Tue Apr 13, 2010 8:00 pm
Contact:

Re: A community OS development

Post by TylerH »

Since you like JamesMolloy's tutorial, why don't you scrap your fork of it and join him on his real project?
User avatar
Chandra
Member
Member
Posts: 487
Joined: Sat Jul 17, 2010 12:45 am

Re: A community OS development

Post by Chandra »

TylerH wrote:Since you like JamesMolloy's tutorial, why don't you scrap your fork of it and join him on his real project?
I wonder if JamesM will let him in.
Programming is not about using a language to solve a problem, it's about using logic to find a solution !
User avatar
Brynet-Inc
Member
Member
Posts: 2426
Joined: Tue Oct 17, 2006 9:29 pm
Libera.chat IRC: brynet
Location: Canada
Contact:

Re: A community OS development

Post by Brynet-Inc »

Chandra wrote:
TylerH wrote:Since you like JamesMolloy's tutorial, why don't you scrap your fork of it and join him on his real project?
I wonder if JamesM will let him in.
Pedigree is pcmattman's project, not JamesM's.. although he was once part of it.
Image
Twitter: @canadianbryan. Award by smcerm, I stole it. Original was larger.
TylerH
Member
Member
Posts: 285
Joined: Tue Apr 13, 2010 8:00 pm
Contact:

Re: A community OS development

Post by TylerH »

Brynet-Inc wrote:Pedigree is pcmattman's project, not JamesM's.. although he was once part of it.
Pedigree is a hobby operating system, primarily designed by James Molloy (JamesM) and Joerg Pfahler (Joerg) and primarily implemented by James Molloy (JamesM), Joerg Pfahler (Joerg), and Matthew Iselin (Matt).
- http://www.pedigree-project.org/ Outdated?
Chandra wrote:I wonder if JamesM will let him in.
With no commit privileges or something, idk. I doubt they would turn him away. Either way, what's lost if they do?
pcmattman
Member
Member
Posts: 2566
Joined: Sun Jan 14, 2007 9:15 pm
Libera.chat IRC: miselin
Location: Sydney, Australia (I come from a land down under!)
Contact:

Re: A community OS development

Post by pcmattman »

I think I need to clear some things up... :)

JamesM originally created the project and Tyler, Joerg (bluecode) and myself contributed during the first year. bluecode left, leaving JamesM and myself on the project until the middle of 2009, when JamesM left the project to work on Horizon. So at the moment I am running the project.

The site acknowledges the considerable design input from JamesM and bluecode, as well as the considerable implementation effort from JamesM, bluecode, and myself. The paragraph after the one you quoted states "The current development team consists of Matt and Eduard". If the way I've worded and laid this out doesn't make sense, I'd be more than happy to change it to make things clearer (it does make sense to me).

Anyone who wants to contribute can access our issue tracker to find something to do or simply check out the code and start submitting patches (as Feature Request items in the tracker, comments on an existing tracker item, or by talking to us directly in #pedigree on irc.freenode.net).

If you have further questions or discussion about Pedigree, I would prefer that you open a new thread in a different subforum, or talk to me directly on IRC. This topic is not the place :).
User avatar
HolmesSherlock
Posts: 11
Joined: Sun Mar 06, 2011 7:32 pm

Re: A community OS development

Post by HolmesSherlock »

As a new entrant here @ osdev, I had a bitter experience. A simple thread of mine has turned out to be a place for flame discussions & "pulling one's legs". I've been an active member of many other online communities & have never seen a newcomr to be treated like this. It's shocking & discouraging at the same time. A board like this should be a breeding ground for ideas & should stimulate, encourage the newcomers. With due respect to the knowledge, ability & competency to the members here, I'd like to request any Moderator/Admin to delete this thread. But as I've said that my idea was taken from Bran's & jamesM's tuts, i suspect how many of u have actually had a look into the code & decided that how much of it was my creation & how much was "stolen" or simply copy-pasted.
User avatar
Combuster
Member
Member
Posts: 9301
Joined: Wed Oct 18, 2006 3:45 am
Libera.chat IRC: [com]buster
Location: On the balcony, where I can actually keep 1½m distance
Contact:

Re: A community OS development

Post by Combuster »

So the challenge becomes: how to tell someone he's done something stupid without causing any psychological pain.

Consider this:
The stereotype wrote:Hello, My name is John Carmack II, I'm new and I want to write the next world of warcraft which will hit the stores in 6 months. I don't have that much time and I'm looking for help
I hope you get the sarcasm in that.

That example's a bit of an exaggeration, but here at university that is exactly the kind of desillusion talk we consistently pick up during the introductional lectures of computer science/game technology for future students. If you don't know the inside details, it might seem that way but it doesn't work that way. In OS development we have a few similar list, the Beginner Mistakes (things you should not do) and the FAQ (things you should do). If you happen to forget anything in that list, it will be frowned upon, and of course it is in both ours and your interest that the same class of mistakes isn't made again. Berkus briefly recited the illusion in question before me, I hope the rest of this post will help you avoid all sorts of similar errors.

Then there is the other observation: If you see someone make a really stupid documented mistake, chances are very, very likely he makes several other ones. Of course, if you happen to apply that statistic to the remaining 10% (you see our problem?), you might occasionally step on someone's toes.

The problem is:
- You recruit, with a 1-digit post-count, and totally ignoring the issues mentioned in beginner mistakes. So you made a stupid mistake. It doesn't make you a noob yet.
- You consistently use 'u' instead of 'you'. It's not the worst sin, but technically it is in violation of two separate forum rules, one based on spelling, and one based on the attitude associated with SMStalk. It also establishes the simple fact that you ignore rules. This sort of detail is of course mostly subconcious for many people and irrelevant for the subject so it hasn't been pointed out yet.
- You mention Bran's as base code. Which suggests you still rely on tutorials, further fitting the definition of noob.
- You mention a lack of time. Now you're not just a fitting example of a noob, but maybe also lazy.
- OS development is very difficult, and therefore not for noobs. We even have a forum rule for it because it is a persistent problem (and it means we have a rule backing a standard).
- You suggest that (all) newbies have trouble with the material, which makes you how much better suited to the task? We know it's difficult, but it's not troublesome.

Based on all that, do you honestly believe we shouldn't have our doubts about you and your intents? People were eager enough to correct you that some messages ended up doubly posted (yours truly included, I only later realized brynet posted the same link before me)

Of course it can be fixed:
- Look for and try not to fall for a beginner mistake, however tempting (like a joint venture) it might be. Also read the forum rules thoroughly. The obvious stuff is condensed into just one "behave"-rule, we have several more. Other places will just as well appreciate it if you follow their guidelines instead of just barging in.
- Do not make yourself or others as an example of a developer - it defers the attention to you instead of the problem.
- Work and appear professionally, spend more time on your side - spelling and grammer included.
- Everybody makes mistake, just accept some healthy criticism from time to time.
"Certainly avoid yourself. He is a newbie and might not realize it. You'll hate his code deeply a few years down the road." - Sortie
[ My OS ] [ VDisk/SFS ]
Post Reply