Is OSDev a disappointing/discouraging hobby?

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.
mac
Member
Member
Posts: 144
Joined: Tue Sep 23, 2014 6:12 pm

Is OSDev a disappointing/discouraging hobby?

Post by mac »

Is OSDEV as a computer hobby astronomically difficult to break into as a programmer? I am learning about the Git version control, I will clone Python projects, use them, study it, and rewrite/change it for My own. Is it really that tough to break into as a programmer's hobby? I understand this may be just a short-lived, its ok, but I want to explore OSDEV someday.

First, I'm worried about the astronomical academic requirements I was told one needed. I want to teach myself if possible, in the quickest time possible.

I still feel a little discouraged. I know someday of you say your self-taught, but I'm still skeptical.
User avatar
max
Member
Member
Posts: 616
Joined: Mon Mar 05, 2012 11:23 am
Libera.chat IRC: maxdev
Location: Germany
Contact:

Re: Is OSDev a disappointing/discouraging hobby?

Post by max »

Define "as a programmer". There are different kinds of programmers today. Those that learned <insert high level language here>, never heard of what a register is and mostly don't care or don't have the elan to learn what the computer actually does; and those that also (want to) know what happens in behind, know to an extent what the compiler does, how the output looks and what it does, and always strive to extend that knowledge. There are much less of the latter.

There are some requirements if you want to achieve something with OSDeving. You should be or aspire to be programmer type two. You must understand that it has a steep learning curve and you will do a lot wrong until you finally do it right. It takes a long time, with that I mean years, to achieve what some on this board have achieved.

But though it's very hard, it's very much worth it. You will learn a lot about why modern or ancient systems do what they do. You'll learn a lot about the processor of your choice. In the end, you will be a better programmer because you learn about all the nifty little details. You will learn about reading standards, specifications, complying to these. Or you'll be an outlaw and do it your way, just because you can.

That's just my observation. :)
alexfru
Member
Member
Posts: 1111
Joined: Tue Mar 04, 2014 5:27 am

Re: Is OSDev a disappointing/discouraging hobby?

Post by alexfru »

It may be. Especially if you want too much too fast but aren't ready and have yet to learn many basic things (e.g. about C, assembly, CPU, other hardware, OS concepts). It depends a lot on you, on what you want, on what you know and can, on what you do and on how you do it. Are you giving up to early or neglecting documentation, debugging, googling/research? Are you asking for and getting help? How do you feel about your accomplishments, does every solved problem make you feel happy? What about when things don't go well? Do you actually see any point or find any fun in doing this? Etc.
User avatar
Roman
Member
Member
Posts: 568
Joined: Thu Mar 27, 2014 3:57 am
Location: Moscow, Russia
Contact:

Re: Is OSDev a disappointing/discouraging hobby?

Post by Roman »

Max wrote:But though it's very hard, it's very much worth it.
I think, that it's debatable. If for one programming is a passion, then definitely yes, but it should be noted, that system programming is not so widely required. A lot of e. g. Java "enterprise" programmers get a lot of money with much less effort. That all depends on what programming is for you.
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
- Alan Kay
mac
Member
Member
Posts: 144
Joined: Tue Sep 23, 2014 6:12 pm

Re: Is OSDev a disappointing/discouraging hobby?

Post by mac »

No, I'm not the fast-paced type that gets impatient when things don't go his way.

I'm very sorry for being a spammer the whole time too. I just want to start somewhere, at wherever that might be.

Anyway, I'm not sleeping very good. It's after 4:30 in the morning over here for me. I need to get back to sleep, I will reply again soon.
User avatar
max
Member
Member
Posts: 616
Joined: Mon Mar 05, 2012 11:23 am
Libera.chat IRC: maxdev
Location: Germany
Contact:

Re: Is OSDev a disappointing/discouraging hobby?

Post by max »

Roman wrote:I think, that it's debatable. If for one programming is a passion, then definitely yes, but it should be noted, that system programming is not so widely required. A lot of e. g. Java "enterprise" programmers get a lot of money with much less effort. That all depends on what programming is for you.
Not worth it in the sense of making money out of it, in fact it's very hard to find something that requires system programming knowledge. Yep, Java EE developers (in profession I am one, too) have it easier.
But you don't ever do OSDev for money. You do it for knowledge.
User avatar
iansjack
Member
Member
Posts: 4689
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: Is OSDev a disappointing/discouraging hobby?

Post by iansjack »

The question, specifically, is whether it is a disappointing/discouraging hobby. As such, considerations of earning or job potential don't apply.

To me, OS development is very hard, possibly the hardest form of programming I can imagine (although I find compiler writing a close second). I probably wouldn't choose it as a job. But it is intensely more satisfying than work programming - or certainly anything I ever did. I don't have to worry about requirements - often irrational - from users, cost/benefit analysis, or deadlines.

A hobby should (IMO) be challenging and interesting (else why bother?). I'd say that OS development fulfils those criteria. And I'm never going to get to the end of it; it's not like collecting something where I might reasonably expect, one day, to achieve a complete collection. I know that I'm never going to achieve a complete OS - even if I were 50 years younger that wouldn't be a possibility.

So, looked at purely as a hobby, it's almost perfect. It's challenging, costs almost nothing, is open-ended, it doesn't matter if it's raining, etc. Disappointing or discouraging - definitely not; frustrating at times - sure, but then there is the delight of finally solving a knotty problem. There are always new heights - display your first characters, get you first keyboard input, read your first byte from a hard drive, write your first byte to a hard drive (then have to reformat it and recreate everything on it), write your first byte to a hard drive without destroying the file system, read and write your first packets from a network, implement a full ip/tcpip stack (still working on that one), and so on and so on; the sky's the limit.
alexfru
Member
Member
Posts: 1111
Joined: Tue Mar 04, 2014 5:27 am

Re: Is OSDev a disappointing/discouraging hobby?

Post by alexfru »

max wrote:But you don't ever do OSDev for money. You do it for knowledge.
I did for both! :)
User avatar
Muazzam
Member
Member
Posts: 543
Joined: Mon Jun 16, 2014 5:59 am
Location: Shahpur, Layyah, Pakistan

Re: Is OSDev a disappointing/discouraging hobby?

Post by Muazzam »

I think, it is definitely disappointing and discouraging. Can I say, my project has been finished or completed? Never. But we can safely say that for other projects.
Kevin
Member
Member
Posts: 1071
Joined: Sun Feb 01, 2009 6:11 am
Location: Germany
Contact:

Re: Is OSDev a disappointing/discouraging hobby?

Post by Kevin »

SeanMc wrote:No, I'm not the fast-paced type that gets impatient when things don't go his way.
This may be the most important problem you have. For OSDev you need to be prepared to deal with problems that are hard and time consuming to debug.
Developer of tyndur - community OS of Lowlevel (German)
mac
Member
Member
Posts: 144
Joined: Tue Sep 23, 2014 6:12 pm

Re: Is OSDev a disappointing/discouraging hobby?

Post by mac »

Kevin wrote: This may be the most important problem you have. For OSDev you need to be prepared to deal with problems that are hard and time consuming to debug.
And that's my point. When did I say I get impatient? Complete opposite man. So, it wouldn't be So mich of a problem.

If I misunderstood, please understand.
mac
Member
Member
Posts: 144
Joined: Tue Sep 23, 2014 6:12 pm

Re: Is OSDev a disappointing/discouraging hobby?

Post by mac »

And yes, I want to work with color and everything through bytes and bits. I do want to learn sometime, When I'm ready. I'm not too closed If I had to go back to school either. I just want an Associate's degree and nothing else. Are Wikipedia articles alone any good?

I am cheap, like a above poster said, it costs almost nothing.
User avatar
iansjack
Member
Member
Posts: 4689
Joined: Sat Mar 31, 2012 3:07 am
Location: Chichester, UK

Re: Is OSDev a disappointing/discouraging hobby?

Post by iansjack »

SeanMc wrote:Are Wikipedia articles alone any good?
Although it is fashionable to decry Wikipedia, I would say that they make a very good starting point which should lead you to further avenues of research. But no single source is going to teach you everything.
User avatar
SpyderTL
Member
Member
Posts: 1074
Joined: Sun Sep 19, 2010 10:05 pm

Re: Is OSDev a disappointing/discouraging hobby?

Post by SpyderTL »

Unless you are going to create a Linux clone, you are probably going to have to write your own hardware "drivers", so you are going to have to get used to reading through pages and pages of technical manuals (programming guides, spec sheets, driver source code, etc.), which can take quite a bit of time. Unfortunately, there's not a whole lot of options here.

The osdev wiki will get you started, but you'll probably eventually need to go off on you or own and find your own documentation. And finding that documentation is a skill unto itself.

I would recommend going back and learning how some of the early microcomputer CPUs worked. They are a lot simpler than today's CPUs, so it shouldn't take long to figure them out. Try starting with the 8086, or the MOS 6502 if you want an even simpler CPU.

If you are going to skip Assembly language, and go directly to C or some other traditional language, you can skip a lot of the CPU details, since these languages are cross platform.

Either way, just start with a simple hello world (tm) and then keep adding functionality.

EDIT: There are actually several posts in the forums about avoiding getting "burned out" while osdeving that you might be interested in. Just try to find a comfortable pace, where you don't burn yourself out, you don't neglect your friends and family and your other interests, and don't ignore it for so long that you forget everything you've learned.

Good luck.
Project: OZone
Source: GitHub
Current Task: LIB/OBJ file support
"The more they overthink the plumbing, the easier it is to stop up the drain." - Montgomery Scott
Kevin
Member
Member
Posts: 1071
Joined: Sun Feb 01, 2009 6:11 am
Location: Germany
Contact:

Re: Is OSDev a disappointing/discouraging hobby?

Post by Kevin »

SeanMc wrote:And that's my point. When did I say I get impatient? Complete opposite man. So, it wouldn't be So mich of a problem.
Sorry, I misread. I missed the "not". It seemed to fit that you said you wanted to learn "in the quickest time possible".

Anyway, just start getting your hands dirty. The way you become a good programmer is simply through experience. Reading things up can support you, but it can never replace writing your own code and playing with it.

What also helps is learning from better programmers: Look at how they solve things, and if you're lucky, you can even get one to look at your code (or you could try joining a project of theirs and they'll have to look at whatever you contribute) and they'll explain what you can/need/should do better.
Developer of tyndur - community OS of Lowlevel (German)
Post Reply