OSDev.org

The Place to Start for Operating System Developers
It is currently Sat Dec 14, 2019 5:05 am

All times are UTC - 6 hours




Post new topic Reply to topic  [ 149 posts ]  Go to page Previous  1 ... 3, 4, 5, 6, 7, 8, 9, 10  Next
Author Message
 Post subject: Re:Advice for novice programmers thread
PostPosted: Tue May 06, 2008 4:09 pm 
Offline
Member
Member
User avatar

Joined: Fri Oct 27, 2006 9:42 am
Posts: 1522
Location: Athens, GA, USA
B.E wrote:
@Schol-R-LEA:
Quote:
Start off learning HTML markup before getting into an actual programming language; it is structured quite similarly to many programming languages, but is much easier to learn.


HTML has nothing to do with programming. Moreover, there is no flow control constructs of the language (except JavaScript, but it is a difference language).

That was actually the reason I recommended it - it has a structure similar to a programming language, with nested statements, attribute assignments, etc., but is static, and thus somewhat easier for a novice to understand. My idea was that one could get familiar with the idea of coding first before actually learning a programming language.


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Thu Jul 10, 2008 2:54 pm 
Offline
Member
Member
User avatar

Joined: Sun May 25, 2008 2:04 am
Posts: 250
Location: United States
I suggest learning DOS because it gets you ready for ASM. Then learn JavaScript because it gets you ready for C. Then learn VB because it gets you use to API/GUI Design. Then learn C because it gets you used to having power. Then learn ASM because it gives you true power. Then learn PIC because it makes you leet. Then learn AI because you can make rad automatons. Then die because your life is complete.

_________________
Free energy is indeed evil for it absorbs the light.


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Fri Jul 11, 2008 11:45 am 
Offline
Member
Member
User avatar

Joined: Tue Oct 17, 2006 11:33 pm
Posts: 3875
Location: Eindhoven
I would say that doesn't make your life complete, as I've gone on beyond that point and grew up.


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Sun Jul 13, 2008 2:28 pm 
Offline
Member
Member
User avatar

Joined: Sun May 25, 2008 2:04 am
Posts: 250
Location: United States
Do you have pics of your automaton or any robot you have made?

_________________
Free energy is indeed evil for it absorbs the light.


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Mon Aug 25, 2008 7:38 pm 
Offline
User avatar

Joined: Mon Aug 25, 2008 6:12 pm
Posts: 19
Omega wrote:
I suggest learning DOS because it gets you ready for ASM. Then learn JavaScript because it gets you ready for C. Then learn VB because it gets you use to API/GUI Design. Then learn C because it gets you used to having power. Then learn ASM because it gives you true power. Then learn PIC because it makes you leet. Then learn AI because you can make rad automatons. Then die because your life is complete.


Note: Omega that in the future there be a program or assembly\compiler more powerful then today and this will be never ending.

_________________
DT Model 1540 OS 1% <Kernel>


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Mon Aug 25, 2008 8:19 pm 
Offline
Member
Member
User avatar

Joined: Mon Jun 05, 2006 11:00 pm
Posts: 2000
Location: USA (and Australia)
How many people actually learnt via baby steps? (Learn HTML, learn Javascript, learn Bash scripting, learn Basic, learn C#, learn C..)

Let them jump straight into C (or C++).. I think it'll be much easier learning the language you want to learn, since there are a lot of tutorials out there for beginners. I found it much harder going from procedure programming to object oriented programming than if I jumped straight in to OOP.

_________________
My OS is Perception. (1 2)


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Mon Aug 25, 2008 8:34 pm 
Offline
Member
Member
User avatar

Joined: Thu Jan 04, 2007 3:29 pm
Posts: 1466
Location: Noricum and Pannonia
Quote:
Let them jump straight into C (or C++).. I think it'll be much easier learning the language you want to learn, since there are a lot of tutorials out there for beginners. I found it much harder going from procedure programming to object oriented programming than if I jumped straight in to OOP.

I'm becoming more and more tempted to say: "Learn Haskell First".

_________________
C8H10N4O2 | #446691 | Trust the nodes.


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Mon Aug 25, 2008 9:18 pm 
Offline
Member
Member
User avatar

Joined: Fri Jun 22, 2007 12:47 pm
Posts: 1598
Location: New Hampshire, USA
I think a scripting languages like JavaScript or Ruby is a great starting point to get into C/C++. I think there should be some sort of intermediate step as the 'diving right in' approach doesn't always work.

_________________
Website: https://Joscor.com


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Fri Sep 12, 2008 11:21 pm 
Offline
Member
Member
User avatar

Joined: Tue Dec 25, 2007 6:03 am
Posts: 722
Location: Perth, Western Australia
I learnt with HTML, BASIC or .bat first (can't remember), then JS, PHP and finally on to C before learning other langs (Perl, Pascal and others)

_________________
Kernel Development, It's the brain surgery of programming.
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Sat Nov 08, 2008 11:18 am 
Offline
Member
Member

Joined: Tue Jun 20, 2006 9:17 am
Posts: 566
I also learned QBASIC first, then C++ , without a computer from a book . I did not have a computer at that point of time . I had to wait for nearly 2 years more to get hands on experience , then proceeded to learn Java,VB 6.0 , C# , Python,perl, Pascal , C ,x86 asm ( also PDP -11 , CRAY-1 , Mk 68000 , VAX , Power PC -- but do not rembember anything now , learned them for the exams ) , 8085 and interfacing as well . I can even create a language now if i want to [ :) ] .

Regards
Sandeep


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Sat Nov 15, 2008 5:02 am 
Offline

Joined: Wed Nov 14, 2007 4:48 am
Posts: 11
I'm an advocate of jumping right in. Every day that I type "=" instead of "==", or type "then" at the end of my conditional statements is a day I regret learning visual basic. It didn't really teach me anything that other languages can't, and it would've saved me getting out of a lot of bad habits.

This is kind of getting off topic btw!

Advice to new programmers: The only question its appropriate to ask another programmer is: "What should I google to find X". Also www.projecteuler.net is awesomesauce for learning a new language.

_________________
Shadyjames wrote:
If my calculations are accurate, than 76% of the awesomeness in this room has emanated directly from us
pcmattman wrote:
Tomorrow lets try for 85


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Wed Dec 31, 2008 12:05 pm 
Offline
Member
Member
User avatar

Joined: Fri Dec 26, 2008 12:31 pm
Posts: 299
Location: Boston
At least for me, I think its best to start at the beginning with assembly and then go into procedural and then OOP. The reason is that I started with Java, but I was always so curious as to how things actually worked within the computer, which led me to C which let me understand things better, then finally to assembly, where I felt I finally "got" how programs work on the computer. Also, once I went back to C and then back to Java, I could really appreciate what they could do and what they are best for after I had some experience with the lower level languages.

_________________
http://code.google.com/p/eliax/


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Thu Jan 01, 2009 12:07 pm 
Offline
Member
Member
User avatar

Joined: Sat Oct 25, 2008 11:32 am
Posts: 29
Location: until we meet again!!
yemista wrote:
Also, once I went back to C and then back to Java, I could really appreciate what they could do and what they are best for after I had some experience with the lower level languages.


I certainly agree with you here. I myself started with C then a little bit of C++, then some Java experience and for some time C# also but when learned assembly realized how much complex things are at low level languages which one tends to neglect without the knowledge of assembly language. For me the way to learn should be first assembly then C and higher(..call me traditional is you may so... 8) )


Cheers.


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Thu Jan 01, 2009 11:00 pm 
Offline
Member
Member
User avatar

Joined: Sat Nov 29, 2008 1:07 pm
Posts: 550
Location: Throw a dart at central Texas
I started programming with TI BASIC (for the TI-83+) but never truly got into programming until I started z80 ASM (also for the TI-83+). Then I went to C++, and working with ASM definitely helped me grasp pointers. I actually learned C++ by working on the GBA. It was great, because anything you did with the graphics hardware was immediately visible, and getting everything set up was just a few lines of code. z80 ASM and GBA C++ are both what make me want to write an OS, because with both, you had complete control, and if you didn't want to deal with an annoying API, you didn't have to because the hardware was right there.

I wouldn't recommend it for a novice programmer though, as not everyone grasps logic with the ease I do (sometimes).

My advice for a novice programmer is this:

If you already have a grasp of the basics of your chosen language, make a game.
Otherwise, learn the basics of your chosen language, then see previous statement.

_________________
Owner of Fawkes Software.
Wierd Al wrote:
You think your Commodore 64 is really neato,
What kind of chip you got in there, a Dorito?


Top
 Profile  
 
 Post subject: Re: Advice for novice programmers thread
PostPosted: Wed Jan 28, 2009 4:55 am 
Offline

Joined: Tue Jan 27, 2009 11:17 am
Posts: 6
Well I'm new to these boards and don't have a kernel, OS, or anything to brag about, so with that caveat out of the way, here's my advice :)


I'm actually going to recommend the exact opposite of the OP. I think as a beginner you should decide what you want to do, pick your language based on that, and then learn it deeply.

The rationale for this is that once you learn something that deeply, the underlying design is more apparent to you than it is if you know it superficially. You'll see the good, the bad, and the why. Understanding the tradeoffs in the design of your language of choice will be invaluable for you, even if you're using other languages.


Quote:
So generally, while abstractions and reuse are definitely good things, I would first write specific cases, and only when I see myself repeating the same pattern over and over again (sometimes twice is enough), I turn it into an abstraction instead.


quoted because it bears repeating.

Don't do something because it 'feels' right. The KISS principle. Lots of people quote it, few do it, and that's a shame.




Think about what you're doing.
Think about how you're doing it.

You wouldn't believe how much time I've seen people waste because they're afraid to waste time. If a script needs to be written to automate something write the damned script. If you find youself spending a lot of time maintaining documentation, project scheduling, etc, stop and think about how to lessen that.

You'll find youself more productive in the long run.

last but not least.

If you're building a system you've never built before, don't think about it, just build the damned thing. You're going to muck it up. You're going to do things you regret. That's what experience is, doing lots of crap you wish you hadn't.

It's more important to jump in, get your feet wet, and learn from the mistakes then it is to not make the mistakes.

And related to this, if you're not struggling, you're not really learning. Set your goals higher.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 149 posts ]  Go to page Previous  1 ... 3, 4, 5, 6, 7, 8, 9, 10  Next

All times are UTC - 6 hours


Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group