Page 1 of 4 [ 60 posts ]  Go to page 1, 2, 3, 4  Next

Exaleadien
Hummingbird
Hummingbird

User avatar

Joined: 23 Dec 2011
Gender: Male
Posts: 19
Location: France

24 Dec 2011, 7:26 pm

Hi folks,

Yay ! seems I'm among the geeks here ^^

Here's my 10000 dollars question (for a zero bucket answer) :
What programming langage should I learn ?

I've been surrounded by computers for 20 years, but never managed to actually learn to code !
My first lines were on an Amstrad CPC 464 using basic (5 REM HELLO WORLD 10 PRINT "HELLO WORLD" 20 GOTO 10)
Since that, just a few JS functions or PHP blocks when in need of customizong a CMS.

I have dreamed of machine-code, ASM, C, C++, Perl
I've heard of Delphi, Java, Fortran, Lisp, Pascal, Cobol, Ada, Logo, Python, Ruby on Rails...

As I'm very bad at maths and logic, I'm not expecting to be an engineer. But still, I'd like to give it a go. For fun. For the beauty of computer languages.
For code poetry, trying to understand the logic and uniqueness of every of them. To be able to explain to my son how reverse engineering works, and how nothing is absolute | secure.

Please, write down below the errors you made in learning a programming language, and why. AND | OR the way you would go today, if you were starting anew. OR anything related to computer programming. Thanks !



fraac
Veteran
Veteran

User avatar

Joined: 23 Mar 2011
Age: 45
Gender: Male
Posts: 1,865

24 Dec 2011, 7:35 pm

Quite a big thread on this somewhere. I would start with python if starting today. I do everything in Perl because it's easy to do anything in Perl but it'll ruin you for any other language. I have a longer answer but I'm getting tired.



Exaleadien
Hummingbird
Hummingbird

User avatar

Joined: 23 Dec 2011
Gender: Male
Posts: 19
Location: France

24 Dec 2011, 8:34 pm

Thanks a lot Fraac,

I have read loads of amazing reviews about Pearl fast string manipulations possibilities. I hope to read a longer answer from you another day, after a good rest ;-)



Titangeek
Veteran
Veteran

User avatar

Joined: 22 Aug 2010
Age: 31
Gender: Male
Posts: 7,696
Location: somewhere in the vicinity of betelgeuse

24 Dec 2011, 10:36 pm

I vote for C++.


_________________
Always be yourself, express yourself, have faith in yourself, do not go out and look for a successful personality and duplicate it.
- Bruce Lee


Rob-N4RPS
Snowy Owl
Snowy Owl

User avatar

Joined: 12 Jul 2011
Age: 62
Gender: Male
Posts: 151
Location: Charlotte, North Carolina, USA

25 Dec 2011, 2:01 am

I'll be watching this thread closely, as I am also moving toward a career in programming.

Merry Christmas to All!

Rob



Oodain
Veteran
Veteran

User avatar

Joined: 30 Jan 2011
Age: 34
Gender: Male
Posts: 5,022
Location: in my own little tamarillo jungle,

25 Dec 2011, 8:58 am

always learn more than one language,
if your math and logic needs practice i would choose one of the easier languages like python, i started with it and quickly moved to c+, it teaches you some basic concepts in an easy to udnerstand way (compared to c+, at least in my mind)


_________________
//through chaos comes complexity//

the scent of the tamarillo is pungent and powerfull,
woe be to the nose who nears it.


fraac
Veteran
Veteran

User avatar

Joined: 23 Mar 2011
Age: 45
Gender: Male
Posts: 1,865

25 Dec 2011, 9:10 am

For beauty of languages I would recommend a pure object oriented language like Smalltalk (look at Squeak - it's fun), and also a functional language like Lisp. You'll impress your ass off with those. Perl I use to get stuff done; I assume python has a module or package or whatever for regular expressions and it's just as effortlessly powerful as Perl, but with its OO bits more neatly integrated (therefore easier in the design stage). Reverse engineering/security would want you to know C. Very cool feeling when you identify a buffer overflow and code your first exploit.



Exaleadien
Hummingbird
Hummingbird

User avatar

Joined: 23 Dec 2011
Gender: Male
Posts: 19
Location: France

25 Dec 2011, 2:55 pm

Thanks a lot guys for your answers.

As Fraac puts it, there have been many threads dedicated to the subject. I've found the following ones really interesting :
http://www.wrongplanet.net/postt172748.html, http://www.wrongplanet.net/postt164056.html, http://www.wrongplanet.net/postt120583.html, http://www.wrongplanet.net/postt159612.html

From what I've read, here are my feelings :

As a webmaster, I will learn JavaScript/ECMAscript, PHP, MySQL, XQuery.

I'm still wondering wether to go for PHP OR Perl, can you help me on that please ? I've read several times that PHP, while esay to learn and powerfull, could results in badly coded web-applications due to its "forgiveness". On the other hand, I remember CGI scripts in Perl (mainly form processing) that seems to be very fast. The day I discovered the Iagora website, entirely written in Perl, I thought I would go for it.

Thing is, from what Fraac said, it seems to be "not so compatible" with other language learning, but why ?

As for the rest, I'm on the "old school" way of seeing things : I used to like the5k design contest and the likes, I was fond of coding parties (as public). All the Amiga and Atari demo scene and makers blew my mind away, coding demos that were stored on 3'5 floppy disks, it was *just* amazing. Nowadays programming interfaces seems to need more and more RAM and CPU units, unrelated to the vision of a "nicely crafted / engineered" soft.

Therefore, I would like to pick up the right tools. I've seen too many arguments againts Java and ALL Microsoft programming languages. Fortunately (sic), I'm not doing it as to earn a living.
I would go for Pascal/Delphi, Lisp, C...
My goal is then to write softwares that could manage and store all my web works. I do a lot of SEO (as a living) and would like to automate web-related tasks (like checking backlinks.)

And last but not least, I will try to learn ASM, in order to have a grasp of the inner bits of CPU. What would you recommend ? I have a few old PC, but it seems to have many ASM versions around.

Thanks again for taking the time to reply if you read something wrong in my choices/assomptions, or just for interacting ;-)



lau
Veteran
Veteran

User avatar

Joined: 17 Jun 2006
Age: 75
Gender: Male
Posts: 9,795
Location: Somerset UK

25 Dec 2011, 3:06 pm

It's still an interesting thought - how to learn how to program?

I learned how to program in (amongst others!) Fortran, COBOL, PL/1, RPG, Algol, Coral, Basic, Snobol, Lisp, and even C. Add in a multitude of assemblers to that list.

However, I suspect that I first really learned how to program when I wrote my first of several Forth systems.


_________________
"Striking up conversations with strangers is an autistic person's version of extreme sports." Kamran Nazeer


Exaleadien
Hummingbird
Hummingbird

User avatar

Joined: 23 Dec 2011
Gender: Male
Posts: 19
Location: France

25 Dec 2011, 4:13 pm

Hi Laurence,

Looking at your experience I thought it could be wise to ask about assemblers. Do you have some favorites URL pointers | books I could get my hands on ? to
begin with ? If you think that a particular CPU is better than others to rightfully understand the whole thing, I might even consider buying an ALICE 32k or other ZX beasts ^^



Asp-Z
Veteran
Veteran

User avatar

Joined: 6 Dec 2009
Age: 31
Gender: Male
Posts: 11,018

25 Dec 2011, 4:16 pm

Look at what you want to program, see what the most popular language for that particular type of programming is, then go from there.



lau
Veteran
Veteran

User avatar

Joined: 17 Jun 2006
Age: 75
Gender: Male
Posts: 9,795
Location: Somerset UK

25 Dec 2011, 6:24 pm

Exaleadien wrote:
Hi Laurence,

Looking at your experience I thought it could be wise to ask about assemblers. Do you have some favorites URL pointers | books I could get my hands on ? to
begin with ? If you think that a particular CPU is better than others to rightfully understand the whole thing, I might even consider buying an ALICE 32k or other ZX beasts ^^

Not that I have the slightest experience with it, but the Arduino kit seems like a good place to be.

It depends on whether you want to do it yourself, or are content to stand on the shoulders of giants.


_________________
"Striking up conversations with strangers is an autistic person's version of extreme sports." Kamran Nazeer


Exaleadien
Hummingbird
Hummingbird

User avatar

Joined: 23 Dec 2011
Gender: Male
Posts: 19
Location: France

25 Dec 2011, 7:01 pm

Lau,

Thanks again :-)



HalibutSandwich
Snowy Owl
Snowy Owl

User avatar

Joined: 1 Oct 2011
Gender: Male
Posts: 139
Location: On the hairy end.

26 Dec 2011, 5:02 am

lau wrote:
Not that I have the slightest experience with it, but the Arduino kit seems like a good place to be.


That's sort of like learning to ride a bike so you can fly a jumbo 747.


_________________
There's something inside me'n'I know it's good...
But understanding, it's misunderstood. - D.A.D.


Oodain
Veteran
Veteran

User avatar

Joined: 30 Jan 2011
Age: 34
Gender: Male
Posts: 5,022
Location: in my own little tamarillo jungle,

26 Dec 2011, 5:09 am

yes but it allows you to write in Wiring, see the code in microC and then assembler,


_________________
//through chaos comes complexity//

the scent of the tamarillo is pungent and powerfull,
woe be to the nose who nears it.


HalibutSandwich
Snowy Owl
Snowy Owl

User avatar

Joined: 1 Oct 2011
Gender: Male
Posts: 139
Location: On the hairy end.

26 Dec 2011, 6:16 am

Oodain wrote:
yes but it allows you to write in Wiring, see the code in microC and then assembler,

So what makes arduino better than others?


_________________
There's something inside me'n'I know it's good...
But understanding, it's misunderstood. - D.A.D.