Is OSDev a disappointing/discouraging hobby?
Re: Is OSDev a disappointing/discouraging hobby?
Yes, now I'm in the process of trying to write a Python function to read mean temperature from a text file.
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Is OSDev a disappointing/discouraging hobby?
Disappointing - well, it depends on your goals. Personally I find that setting a goal and a time-frame to work towards is helpful in life, but not with OSDev. It's a hobby after all, and I enjoy it best when I approach it from the angle of "just fiddling around" and writing stuff as I feel like it. It's not about getting a completed operating system that you can use every day and brag to your friends about "I wrote my own operating system"; it's about having fun and, when you feel like it, writing some code. And when you've been doing that for a while and your operating system's mostly "complete" as it were, you can add to it. You don't set a goal. You don't decide when it's "finished". You just write code when you feel like it, and add to the operating system as you want. It's an ongoing bed for experimentation.
Discouraging - it depends on how you approach it. If you approach it as I outlined above, then no. Discouragment is when you set a goal and fail to reach it. If your goal is just to have fun, then as long as you're enjoying yourself it's not discouraging. (If you're not enjoying yourself then you need to think about why - maybe OSDev just isn't for you, or it is but you're approaching it wrong.) The other aspect, of course, is discouragment by others. That's what happens when people write pages and pages explaining what you need to know first, and then even more pages trying to give you that knowledge. That sure is discouraging. The only way I ever actually got to sit down and write some code is to just sit down and write the code. Open a text editor and start at the beginning. Don't think about the end. Just write. If you're stuck, read a tutorial. Then come back and write. Don't let others tell you "you have to know A and B and C before you can start". Just start. If you get stuck, that's when you need to find out more. And remember, it's your project. Keep it within your capabilities. People tell you "you have to know A and B and C" because people are thinking "you're trying to make D". But others don't know what you're trying to make, and it's not their place to tell you what to make. It's your project, so make it to your abilities. If you want more, and you enjoy learning new things and trying new things out, then you can read more and make it fancier. But the key is to just have fun with what you are doing, not to try to get to X goal in Y length of time.
Discouraging - it depends on how you approach it. If you approach it as I outlined above, then no. Discouragment is when you set a goal and fail to reach it. If your goal is just to have fun, then as long as you're enjoying yourself it's not discouraging. (If you're not enjoying yourself then you need to think about why - maybe OSDev just isn't for you, or it is but you're approaching it wrong.) The other aspect, of course, is discouragment by others. That's what happens when people write pages and pages explaining what you need to know first, and then even more pages trying to give you that knowledge. That sure is discouraging. The only way I ever actually got to sit down and write some code is to just sit down and write the code. Open a text editor and start at the beginning. Don't think about the end. Just write. If you're stuck, read a tutorial. Then come back and write. Don't let others tell you "you have to know A and B and C before you can start". Just start. If you get stuck, that's when you need to find out more. And remember, it's your project. Keep it within your capabilities. People tell you "you have to know A and B and C" because people are thinking "you're trying to make D". But others don't know what you're trying to make, and it's not their place to tell you what to make. It's your project, so make it to your abilities. If you want more, and you enjoy learning new things and trying new things out, then you can read more and make it fancier. But the key is to just have fun with what you are doing, not to try to get to X goal in Y length of time.
That's a good start lol. You're the right kind of guy :-) .SeanMc wrote:Anyway, I'm not sleeping very good. It's after 4:30 in the morning over here for me.
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
- hgoel
- Member
- Posts: 89
- Joined: Sun Feb 09, 2014 7:11 pm
- Libera.chat IRC: hgoel
- Location: Within a meter of a computer
Re: Is OSDev a disappointing/discouraging hobby?
Haven't been at it for long but I don't think OSDev is discouraging at all. I've been working on my OS for 41 days straight now (GitHub streak ) which happens to be the longest I've ever worked continuously on one project. It's like a combination of all the things I enjoy, dealing with tricky bugs that make no sense, reading manuals to understand how something works, designing a complete system and doing something new every day/week (I call it 'getting my low level fix', always really enjoyed systems programming, that was actually how I got into programming in the first place). Sure the massive scale of making an OS can be somewhat discouraging, the encouragement you get from people makes up for it. Not to mention that the community here is far better and way more professional than other communities I've been part of making it far more enjoyable to work. Also, well for the most part I'm programming any time I'm not at class.
I know there hasn't been a new post here for slightly under a month but just wanted to post my opinion.
I know there hasn't been a new post here for slightly under a month but just wanted to post my opinion.
"If the truth is a cruel mistress, than a lie must be a nice girl"
Working on Cardinal
Find me at [url=irc://chat.freenode.net:6697/Cardinal-OS]#Cardinal-OS[/url] on freenode!
Working on Cardinal
Find me at [url=irc://chat.freenode.net:6697/Cardinal-OS]#Cardinal-OS[/url] on freenode!
-
- Posts: 23
- Joined: Thu Apr 24, 2008 6:14 am
Re: Is OSDev a disappointing/discouraging hobby?
Alas, I cannot say that I myself have started my own OS project. Maybe I am way to humble (well: realistic) to actually start one.
With my real-life-clock is ticking way to fast (and life IS SO diverse with plenty of hobbies lurking at me), still I really enjoy reading stuff here (if time allows). So having only a kinda cheer-leader-girl attitude still is nice hobby
And if it comes to discussion with other coders around, I literally can feel how much expertise subliminarily accumulates inside me.
Just by staying around one turns nerd
With my real-life-clock is ticking way to fast (and life IS SO diverse with plenty of hobbies lurking at me), still I really enjoy reading stuff here (if time allows). So having only a kinda cheer-leader-girl attitude still is nice hobby
And if it comes to discussion with other coders around, I literally can feel how much expertise subliminarily accumulates inside me.
Just by staying around one turns nerd
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Is OSDev a disappointing/discouraging hobby?
Yes, I am a lurker as well. I post sometimes and I have a lot of theoretical knowledge, but I find that when it comes to actually writing code I suffer a great deal of procrastination. I have Asperger's, so I have a tendancy to accumulate knowledge about very specific and technical topics, but I also have a tendancy to think heavily about doing something but then never actually do it (actually I think that's more the OCD side of things...).TverrBjelke wrote:Alas, I cannot say that I myself have started my own OS project. Maybe I am way to humble (well: realistic) to actually start one.
With my real-life-clock is ticking way to fast (and life IS SO diverse with plenty of hobbies lurking at me), still I really enjoy reading stuff here (if time allows). So having only a kinda cheer-leader-girl attitude still is nice hobby
And if it comes to discussion with other coders around, I literally can feel how much expertise subliminarily accumulates inside me.
Just by staying around one turns nerd
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
- Nutterts
- Member
- Posts: 159
- Joined: Wed Aug 05, 2015 5:33 pm
- Libera.chat IRC: Nutterts
- Location: Drenthe, Netherlands
Re: Is OSDev a disappointing/discouraging hobby?
I have a different diagnosed 'disorder' but I have that same sort of tendencies. I also have a tendency never to finish things because of those "hobbies lurking at me" like Tverrbjelke and I get fixated easily on minute details and get helplessly stuck on them. (It's also why I can be over apologetic)onlyonemac wrote:I have Asperger's, so I have a tendancy to accumulate knowledge about very specific and technical topics, but I also have a tendancy to think heavily about doing something but then never actually do itTverrBjelke wrote:With my real-life-clock is ticking way to fast (and life IS SO diverse with plenty of hobbies lurking at me), still I really enjoy reading stuff here (if time allows).
But for me that's actually how I got to finally do it because it voids the thee biggest reasons for me switching hobbies.
- No one has ever written a perfect OS, neither will you.
- Even if you live as long as a time lord, you'll never finish it.
- You only need a computer and internet access for research.
"Always code as if the guy who ends up maintaining it will be a violent psychopath who knows where you live." - John F. Woods
Failed project: GoOS - https://github.com/nutterts/GoOS
Failed project: GoOS - https://github.com/nutterts/GoOS
- BASICFreak
- Member
- Posts: 284
- Joined: Fri Jan 16, 2009 8:34 pm
- Location: Louisiana, USA
Re: Is OSDev a disappointing/discouraging hobby?
I have enjoyed reading this thread so far, so I'll go ahead and add my 2 cents...
Disappointing, no not really. The most disappointing thing in OSDev is bugs, bugs, and more bugs... (that one is now a feature )
With that said, it can easily be a discouraging hobby - especially with any mental disorder, as it seems a lot of us have..?. At the same time most the discouragement I have encountered is the WiKi, it is a great source for information but also a great source for a major headache. My personal experience tells me NOT to read the WiKi unless my code base is already (somewhat) there - and the reason why (at least for me) is simple, INFORMATION OVERLOAD!
Now do not get me wrong, The WiKi here is great and I do enjoy OSDev - otherwise I would not have been messing with it for years now - but when it comes down to it the WiKi will make you think much harder on steps that are in reality much simpler. Even the best tutorials and information on the WiKi will make little sense until you actually start implementing it.
Over the past couple of weeks I have actually found a new source of encouragement, ASM - which if I haven't switched to I would be dead in the water more than now. Still discouragement lies behind every corner just this week it has been IPC then API and now ELF... Worst part is I have already made an ELF loader (twice actually) but trying to add different features and reading 60 pages of specs defiantly adds to the information overload.
I hope this was able to be followed easily, as ADHD makes it hard for me to follow my own thoughts lol.
Long live OSDev
B
Disappointing, no not really. The most disappointing thing in OSDev is bugs, bugs, and more bugs... (that one is now a feature )
With that said, it can easily be a discouraging hobby - especially with any mental disorder, as it seems a lot of us have..?. At the same time most the discouragement I have encountered is the WiKi, it is a great source for information but also a great source for a major headache. My personal experience tells me NOT to read the WiKi unless my code base is already (somewhat) there - and the reason why (at least for me) is simple, INFORMATION OVERLOAD!
Now do not get me wrong, The WiKi here is great and I do enjoy OSDev - otherwise I would not have been messing with it for years now - but when it comes down to it the WiKi will make you think much harder on steps that are in reality much simpler. Even the best tutorials and information on the WiKi will make little sense until you actually start implementing it.
Over the past couple of weeks I have actually found a new source of encouragement, ASM - which if I haven't switched to I would be dead in the water more than now. Still discouragement lies behind every corner just this week it has been IPC then API and now ELF... Worst part is I have already made an ELF loader (twice actually) but trying to add different features and reading 60 pages of specs defiantly adds to the information overload.
I hope this was able to be followed easily, as ADHD makes it hard for me to follow my own thoughts lol.
Long live OSDev
B
BOS Source Thanks to GitHub
BOS Expanded Commentary
Both under active development!
BOS Expanded Commentary
Both under active development!
Sortie wrote:
- Don't play the role of an operating systems developer, be one.
- Be truly afraid of undefined [behavior].
- Your operating system should be itself, not fight what it is.
- Nutterts
- Member
- Posts: 159
- Joined: Wed Aug 05, 2015 5:33 pm
- Libera.chat IRC: Nutterts
- Location: Drenthe, Netherlands
Re: Is OSDev a disappointing/discouraging hobby?
Amen!BASICFreak wrote:Even the best tutorials and information on the WiKi will make little sense until you actually start implementing it.
Do we need to start a support group. I feel like together we could write very interesting OS. But we won't because we're like that.BASICFreak wrote:I hope this was able to be followed easily, as ADHD makes it hard for me to follow my own thoughts lol. Long live OSDev
Btw, my sister has ADHD so I grew up with it. There isn't a a blob of text you can trow at me that I can't follow.
"Always code as if the guy who ends up maintaining it will be a violent psychopath who knows where you live." - John F. Woods
Failed project: GoOS - https://github.com/nutterts/GoOS
Failed project: GoOS - https://github.com/nutterts/GoOS
- BASICFreak
- Member
- Posts: 284
- Joined: Fri Jan 16, 2009 8:34 pm
- Location: Louisiana, USA
Re: Is OSDev a disappointing/discouraging hobby?
If you could get everyone to do the same thing... Or even start for that matter...Nutterts wrote:Do we need to start a support group. I feel like together we could write very interesting OS.
ExactlyNutterts wrote:But we won't because we're like that.
Oh, maybe not spoken text but you should see the code I write before cleaning it up for the git commits... Usually removing hundreds of lines of broken code and adding comments, which is a recent development (comments that is, not broken code) - like a week or two...Nutterts wrote:There isn't a a blob of text you can trow at me that I can't follow.
* I know right - what is "spoken text"... (I'm at a complete blank on a better term...)
BOS Source Thanks to GitHub
BOS Expanded Commentary
Both under active development!
BOS Expanded Commentary
Both under active development!
Sortie wrote:
- Don't play the role of an operating systems developer, be one.
- Be truly afraid of undefined [behavior].
- Your operating system should be itself, not fight what it is.
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Is OSDev a disappointing/discouraging hobby?
I was going to reply to numerous parts of this thread but there's too much for me to keep track of it all with my screenreader, so I'll just say here that I agree with a lot of what is said.
It's also funny how many of us it seems actually have Asperger's/ASD, but then I guess that this is the kind of hobby that appeals to us. I also get the information overload thing, and that doesn't help with my procrastination because it just gives me even more information to sift through before I can start writing code :-/ . I like the idea of an OS written entirely by aspies, for aspies, as most current OSes aren't exactly aspie-friendly, but I can't see that ever getting off the ground lol. In any case, I'll help out with the non-visual accessibility side of things :-; .
It's also funny how many of us it seems actually have Asperger's/ASD, but then I guess that this is the kind of hobby that appeals to us. I also get the information overload thing, and that doesn't help with my procrastination because it just gives me even more information to sift through before I can start writing code :-/ . I like the idea of an OS written entirely by aspies, for aspies, as most current OSes aren't exactly aspie-friendly, but I can't see that ever getting off the ground lol. In any case, I'll help out with the non-visual accessibility side of things :-; .
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
- TightCoderEx
- Member
- Posts: 90
- Joined: Sun Jan 13, 2013 6:24 pm
- Location: Grande Prairie AB
Re: Is OSDev a disappointing/discouraging hobby?
Personally, I view successes in integral steps, so it's more about the journey than the destination. To date, I've probably got 17 versions of boot loader and the latest invocation suits my objective the best. The scope and purpose of my system has not and probably will not change, so each stage of development is working toward one specific end. I don't remember exactly who suggested this on this board, but it did make a lot of sense. Crafting comprehensive algorithms to display text and number conversation routines are in the oven now so to speak. I'm sure sometime in the future, let's say 2 or 3 yrs from now, I'll have a vast library of these building blocks and the tangible image of my OS will begin to emerge.
If nothing else, it's a very conducive hobby for one in their senior years and unlike RISC, X86 does tickle the grey matter.
If nothing else, it's a very conducive hobby for one in their senior years and unlike RISC, X86 does tickle the grey matter.
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Is OSDev a disappointing/discouraging hobby?
Writing those small "utility" routines is one of the things that is holding me up with my OS project. While I have a clear idea of what I want my project to be, and some idea of how I would implement that on a high level, I cannot start anything along those lines until I've got all the little bits and pieces to handle I/O and memory allocation. So while I know how I want my memory blocks laid out, I first have to get through all the memory allocation, kernel loading, and other such annoying stuff. Then before I can test any of that I need to have a working output system, and I'm still trying to decide where in memory to load my kernel and how to structure my floppy-disk mini-driver for loading the kernel from the second-stage bootloader.TightCoderEx wrote:Crafting comprehensive algorithms to display text and number conversation routines are in the oven now so to speak. I'm sure sometime in the future, let's say 2 or 3 yrs from now, I'll have a vast library of these building blocks and the tangible image of my OS will begin to emerge.
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
- TightCoderEx
- Member
- Posts: 90
- Joined: Sun Jan 13, 2013 6:24 pm
- Location: Grande Prairie AB
Re: Is OSDev a disappointing/discouraging hobby?
Technically, my system will have to interact with hardware, but to call it an OS in the conventional sense like Linux or Windows is a misrepresentation. I envision a prototyping tool, where there is one and only one application running in a flat memory model, be it protected or long mode. In the mid 80's, I wrote an application for a property management firm in C. Having some knowledge of relational databases, all I did was worry about having all the essential information for tenants, owners, vendors, payable and receivable transactions. In two years the system evolved into having capabilities not even I envisioned and I'm sure it was only because so much detail was incorporated into the core. Hopefully that paradigm will yield similar results in this endeavour.onlyonemac wrote: While I have a clear idea of what I want my project to be, and some idea of how I would implement that on a high level, I cannot start anything along those lines until I've got all the little bits and pieces to handle I/O and memory allocation.
Personally, that is the last thing I would even begin to entertain, is a fully functional pre-emptive multi-tasking system, complete with file management for terra byte capacity media. Unix is 57, Windows 33 and Linux 23 yrs old and were collaborations of hundreds of people. Micronix by Morrow Designs in 1982 for the Z80 I believe was the first OS fashioned after *nix. The next was Linux in 1991 but both had the advantage of crafting their works after an already operational system, albeit for desktop environments.
To avoid disappointment or be discouraged my tool chain is but one program, FASM, coupled with Bochs and HexEdit. Should this be the de-facto standard for OS development, I seriously doubt it, but the simplicity works for me, but I do document my sources thuorouly. The analogies like "One day at a time" or "One brick at a time" have a lot to be said for themselves and no matter the objective, meticulously looking after minute details in each facet, will result in a functional system.
-
- Member
- Posts: 1146
- Joined: Sat Mar 01, 2014 2:59 pm
Re: Is OSDev a disappointing/discouraging hobby?
@tightcoderx: Despite the length of your post I actually managed to follow all of that lol. You must be a good writer, capable of organising your thoughts logically, because usually when I read something that's so long I've totally lost the flow of it by the time I get tot he end.
When you start writing an OS you do the minimum possible to get the x86 processor in a usable state, then you try to get as far away from it as possible.
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Syntax checkup:
Wrong: OS's, IRQ's, zero'ing
Right: OSes, IRQs, zeroing
Re: Is OSDev a disappointing/discouraging hobby?
Wow, cool.
I am afraid that I am too "newbie" for OSDev. Sure, it sounds like a cool hobby to try to get into, but, like someone else posted, I tend to gain lots of theory on topics but fail to put into practice. Look, I haven't even started coding at all. I'm afraid I won't have the mental resources to figure out how to code a complex program or bugs, let alone an OS design.
If I can have advice on how this can be overcome, that would be great?
I am afraid that I am too "newbie" for OSDev. Sure, it sounds like a cool hobby to try to get into, but, like someone else posted, I tend to gain lots of theory on topics but fail to put into practice. Look, I haven't even started coding at all. I'm afraid I won't have the mental resources to figure out how to code a complex program or bugs, let alone an OS design.
If I can have advice on how this can be overcome, that would be great?