|
Programming C, bash, Python, Perl, PHP, Java, you name it. |
|
Thread Tools | Display Modes |
|
|||
Learning Programming
I have been looking into learning a programming language for sometime and finally decided it's time to get off my ass and learn one. I have read that python, perl, ruby are all easy to learn. What would be a good start for an absolute beginner?
|
|
||||
I'm going to suggest python: http://hetland.org/writing/instant-python.html
__________________
Kill your t.v. |
|
|||
Find a good tutorial, & start wading through it. Searching for the language's name & the word "tutorial" in your search engine of choice is a start.
Yet in my opinion, online tutorials are still generally spotty, however there are some exceptions:
If you are serious in your quest, getting a book at some point will be inevitable. My suggestions would be:
Last edited by ocicat; 18th August 2008 at 03:05 PM. |
|
|||
Outside of furthering my knowledge, I really have no reason to learn a programming language.
|
|
|||
Some assembly language should be everyone's first language, followed by C. You learn how computers and languages really work and pointers are not fuzzy abstracts.
|
|
|||
isn't assembly a really hard language to learn?
|
|
|||
That's a common misunderstanding Crypt... assembly is quite easy, it just takes a dedicated individual to write something moderately useful in it. (It gets quite repetitive..).
|
|
|||
Hmm, maybe i'll give it a try saying I can find some good tutorials for it
|
|
|||
There are more details to master when writing good code in assembly language than any other programming language.
I'm not trying to turn you away from delving into assembly language, but if this is your first venture into programming, you will find less frustration in focusing on a higher level language first. |
|
|||
I agree with ocicat in that a portable solution should be explored first, writing something in assembly.. perhaps for hand optimization, is fine, but generally it shouldn't be used for large complex jobs.
Now for my recommendation, learn C... and whatever you do, just say no to Java/C# |
|
||||
As some one who started with C++, and probably started learning programming for the sole reason of it being "interesting"....
I would personally suggest you either start with something very easy or something very low level. Ruby and Python are great choices, Pythons tutorial/documentation I think makes it a better first language then Ruby. Although if you're not a programmer, you might probably find the official tutorial a bit boring or confusing (terminology wise). The dive into python book that ocicat posted is a great place to start if you go the Python route. Ruby, you would probably do best to buy a book if you want to go past the original tutorial, imho. Any thing you find though will definitely be OOP oriented. If you do choose to learn C as a first language, you might like the C Book, it is no longer current but is 'new enough', found section 8.2 off a Google one day, and noticed it was a decent book. You can also find many (more current) books on C including the the big kahuna (according to some). This crzy tutorial and the c-faq if you are pressed from time. Personally, if I could send a note to myself through time, I would write: "learn /bin/sh first"
__________________
My Journal Thou shalt check the array bounds of all strings (indeed, all arrays), for surely where thou typest ``foo'' someone someday shall type ``supercalifragilisticexpialidocious''. |
|
|||
Learning Programming
I agree that Assembly should be a first programming language, it is somewhat difficult to learn.but if you had some good documentation and the nasm(/usr/ports/devel/nasm) compiler. after that I would go in for C programming. Here is a link to a good book to learn to start learning C programming.
http://www.amazon.com/Programming-La...9096976&sr=1-1 |
|
||||
I think Crypt should just forget about assembly and C and use whatever works, and I suspect this is not assembly or C, although this depends on waht exactly he wants to do.
Maybe after he made some programs/scripts/patches/whatever and is considering a career or long-term hobby in programming he might delve deeper and look at C, assembly, etc. but starting with those languages make little sense, it's like writing a physics book and putting quantum mechanics in chapter one, Einstein's theory of relativity in chapter two and Newton's laws in chapter three ... Personally, I think python is pretty nice.
__________________
UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things. |
|
||||
an on line friend advised me to start learning any programming language and stick to it for a while, by that you can pick any other language in a matter of few days
he described it as carpentering , you learn how to use carpentering tools and then start to make any chairs, doors, etc ..... I started with Ruby Last edited by qmemo; 5th August 2011 at 12:19 AM. |
|
|||
No. It's more like teaching a man to fish rather than just giving him fish.
|
|
||||
So everyone who wants to use a programming language just to save time and automate some tasks should learn everything there is to know about computers?
That has nothing to do with teaching anyone to fish, and everything about making a unnecessary steep learning curve and making things overly complicated ... Maybe one of the better accomplishments of the last 10 years in computing, is that is has been made accessible for almost everyone, things like programming, graphic design, 3D animating, making music, etc. has been made so easy that almost everyone can learn it if they invest the time, without having to invest a six year university study. It would seem that some people think that ``their way'' is the only way, and that everything else is something of a lesser art, not worth pursuing at all ... This doesn't make any sense, there is nothing wrong with learning just Python (Or Java, Perl, Ruby, PHP etc.), the whole point of a high-level language is that you don't have to worry about the low-level stuff ... Knowledge of the low-level stuff would probably benefit, but it's not needed, and certainly not for beginning programmers.
__________________
UNIX was not designed to stop you from doing stupid things, because that would also stop you from doing clever things. |
|
|||
Well thanks for all the input guys. I have been looking at Assembly and Python from what you guys have suggested and they both look interesting. I think what i might do is follow in the footsteps of one of my buddies. He started to learn one language and then just kept learning as many as he could. Again, I really have no reason to learn one. I haven't needed it for work as of yet, though who knows what will happen after I learn one...
For the record, I do like the ideas of assembly after looking at what they did with it with MenuetOS... |
|
|||
Ah, so you agree with me.
Quote:
I believe learning asm is crucial for knowing how the machine really works, just beyond knowing how the chips themselves work. It's sad many think it's a black or lost art. And I agree with someone above who said asm is not difficult. Yes, I'm used to it since it's all I knew for many years but don't find it difficult to code in at all. |
|
|||
Quote:
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Undertaking computer science degree, which BSD for learning professional assembly? | lionsong | Programming | 15 | 18th October 2009 11:26 PM |
Learning how to program | Solaris_Delta | Programming | 9 | 24th December 2008 07:58 PM |
Learning Content Management System | Oko | General software and network | 0 | 31st October 2008 04:02 AM |
Learning Perl | mtx | Book reviews | 7 | 22nd October 2008 05:55 PM |
GUI Programming | bsdnewbie999 | Programming | 6 | 17th August 2008 12:19 AM |