What Programming Language For Linux Development? 997
k33l0r writes "Recently I've been thinking about developing (or learning to develop) for Linux. I'm an IT university student but my degree program focuses almost exclusively on Microsoft tools (Visual Studio, C#, ASP.NET, etc.) which is why I would like to expand my repertoire on my own. Personally I'm quite comfortable in a Linux environment, but have never programmed for it. Over the years I've developed a healthy fear of everything Java and I'm not too sure of what I think of Python's use of indentation to delimit blocks. The question that remains is: what language and tools should I be using?"
Language you need to be proficient in. (Score:5, Funny)
Hindi.
Re:Language you need to be proficient in. (Score:5, Funny)
Regards,
Anonymously Cowarding
Please try to keep up. (Score:3, Funny)
Erlang and Haskell, of course. Just the other day here Intel told us all how only functional programming can save Moore's law.
Fortran or Assembler (Score:4, Funny)
REAL PROGRAMMERS SPEAK IN UPPER CASE.
Real programmers program in FORTRAN. If it can't be done in FORTRAN, then write in assembler. If it can't be done
in assembler, it's not worth doing!
http://www.sorehands.com/humor/real1.htm [sorehands.com]
LOLCODE (Score:5, Funny)
Develop in LOLCODE:
http://lolcode.com
"HAI WORLD" Example:
HAI
CAN HAS STDIO?
VISIBLE "HAI WORLD!"
KTHXBYE
I'm doing contract work right now, and won't my client be pleasantly surprised to see the project completed in LOLCODE... ROFLMAO!!! I can haz milestone payment?!?
Re:Learn C and Python (Score:5, Funny)
Re:How much do you want to learn? (Score:1, Funny)
Re:I like Python (Score:4, Funny)
import antigravity
Enough said.
Re:I like Python (Score:4, Funny)
4 spaces. Not 5. 5 is right out.
Why not start with assembly language? (Score:5, Funny)
...it's the only way to be sure.
APL (Score:2, Funny)
Re:I See Your Problem (Score:3, Funny)
Lern LOGO! (Score:5, Funny)
I hear it's going to make a comeback as soon as they add support for DirectX 10!
PEN DOWN
FORWARD 10
TURN RIGHT
FORWARD 10
TURN RIGHT
FORWARD 10
TURN RIGHT
FORWARD 10
Re:This is all true however... (Score:5, Funny)
Everyone programming for Linux should start with machine code! Then after that, they should learn assembly. Only after mastering this can they begin to appreciate the power of Fortran! Finally, once they have mastered Fortran, C will finally make sense. Then, 5 years of steady C development, where they achieve Nirvana-like (the band, not the state of mind) understanding of C if they begin by handwriting the C compiler in Fortran and then transitioning it into C once the compiler is able to self-compile!
Then, only then, can you even begin to consider Object Oriented Programming. This should be jumped into arm-pit hair-first. Learn Java first -- Sun designed it to be object oriented to a fault. Then slam on the breaks, realize it's crazy, and start taking concerted steps back until you get to C++, which is C with only a modest amount of caffeine added.
Once all of that is done, you too can begin to program in Ruby or Python, Perl, or Bash scripts. That way, you will have a solid base of high performance programming to throw away when you move into the more heavy duty interpreter languages.
Or really, lets just damn it all to hell and learn Lisp -- functional languages is the way of the future. We can't all bother to learn what the computer is doing. If I program in a fancy-pants language like C, I might have to bother to learn how to write threads, locks, and all that crap to make my programs run fast. In Lisp, I have so little control over what's actually happening, I can just blame someone else when my program is slow.
Yeah. Learn Lisp first.
Re:I like Python (Score:3, Funny)
If you like using whitespaces, you should love whitespace! [wikipedia.org]
Re:I like Python (Score:5, Funny)
<VOICE type="Jean-Luc-Picard>There are FOUR SPACES!</VOICE>
Re:This is all true however... (Score:5, Funny)
Everyone programming for Linux should start with machine code! Then after that, they should learn assembly.
Thats all very well, but only after they have a thorough grounding in writing microcode. How can you appreciate and optimise machine code, without knowing how it is implemented?
Anything below microcode is a hardware problem.
Re:This is all true however... (Score:5, Funny)
all of that crazy stuff was added to C++ because it is useful.
If you want crazy stuff that was put there to be useful then why not use perl ?
ducks
Re:Why I hate mono (Score:1, Funny)
Mono is not to be confused with Mononucleosis. That is an entirely different disease, but both will make you feel like shit.
Re:Why not start with assembly language? (Score:3, Funny)
That's what he said! (Score:4, Funny)
What is C other than a slightly higher level assembly language than nasm?
Re:This is all true however... (Score:3, Funny)
"[Nicole] Kidman was trying to shake zombies off the bonnet of her Jaguar when the car spun off the road."
The first time I read this, I thought it said botnet and thought: I didn't know there were botnets with Mac OS X (Jaguar).
Children these days... (Score:3, Funny)
I input the data straight into the bus, by using eight Morse keys at 4 Hz.
Now get off my lawn!