Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-4041-8081-120121-

Top 10 MUST know programming languages if you

Name: Anonymous 2005-09-20 13:20

Top 10 MUST KNOW programming languages if you want to be a programmer!

DISCUSS

Name: Anonymous 2005-09-20 13:46

1) English

Name: Anonymous 2005-09-20 14:24

2) none

Name: Anonymous 2005-09-20 15:27

C, Lisp, (Perl | Python | Ruby), maybe php although Ruby on Rails is making that obsolete.

You should have some knowledge of assembly but I don't consider that a language.

Name: Anonymous 2005-09-20 17:13

If you mean a well-rounded programmer, I would suggest some sort of assembly, C, and Lisp or Prolog as a start.  Then Java or C++ and Perl or Python.

Name: Anonymous 2005-09-21 0:25

>>4
I think not. PHP is much better designed than that Ruby shit.

Name: Anonymous 2005-09-21 6:17

PHP is much better designed

That's like saying the garbage dump is better designed.

Name: Anonymous 2005-09-21 6:44

Ten? You only need one to be a programmer. You can even be a good programmer with just one language, though knowing more languages certainly help. A lot.

Name: Anonymous 2005-09-21 16:56

I know visual basic, c and c++, delphi, php and a little assembly

Name: Anonymous 2005-09-21 17:07

>>9
Spend a few weeks purging all knowledge of VB from your mind and you'll be OK.

Name: Anonymous 2005-09-21 18:31

You should have experience with:
LISP/SCHEME
SML/OCAML/ALICE
HASKELL
PERL
RUBY/PYTHON
SMALLTALK
JAVA
C
C++
SQL/XQUERY

Name: Anonymous 2005-09-21 19:01

And the caps lock key.

How do you get experience with Haskell, anyway? The introduction on haskell.org is more masturbation about how much better the author is than C programmers than it is an introduction, and I never found a better one.

Name: Anonymous 2005-09-22 6:20

ALL LANGUAGES ARE ACRONYMS THEREFORE THEY SHOULD ALWAYS BE SPELLED IN UPPERCASE.

Name: Anonymous 2005-09-22 6:38

Proof by contradiction: Pascal.

Name: Anonymous 2005-09-22 7:16

IT'S PASCAL

Name: Anonymous 2005-09-22 17:13

THAT WAS VIP QUALITY

Here's my list:
1. C
That was my list.

Pure C is what lets you understand both the lower and higher level issues of programming, and it's powerful enough to be extended to implement other programming paradigms. I consider a programmer serious when I see he/she can deal with complex C code.

Of course, then you should try languages from other paradigms. I'd suggest to try at least a bit of all OOP, event-driven programming, functional programming, and more bizarre stuff like production systems, just so you fill your mind with ideas.

Name: Anonymous 2005-09-22 17:36

I'm not a serious programmer :(

Name: Anonymous 2005-09-22 17:37

javascript

Name: Anonymous 2005-09-23 8:06

>>16
You are wrong.

Name: Anonymous 2005-09-23 9:01

>>19
Complex, proper C requires intelligence and wit, and C/C++ is the language used for 90% of the software you have in your hard disk at any given time. Other languages are usually simpler, so if you can demonstrate you fare well with the real thing, chances are that you'll be a good programmer for anything else.

Name: Anonymous 2005-09-27 20:51 (sage)

requires intelligence and wit

English Lit 101 is down the hall, on your left.

Name: Anonymous 2005-09-27 22:48

>>20
LISP requires wit more than any other language.

That said, learn LISP (namely pure, functional LISP, don't hit common LISP until you've mastered pure LISP), C, Java/C#, PHP or Ruby or one of those kind of languages that are commonly used in web applications, Prolog, and whatever else you feel like screwing around with.

Name: Anonymous 2005-09-28 3:59

>>22
Hokay, what is this "pure LISP" you speak of. There are basically two surviving dialects, Common LISP and Scheme. I presume you meant the latter since it is a very good learning language. Hey, MIT digs it.

Name: Anonymous 2005-10-05 13:57

>>23
"pure LISP": theoretical LISP. the originally proposed one with only atom, car, cdr, cons, eq, and cond (and perhaps a few others I forget). Put another way: write a LISP interpreter.

Name: Anonymous 2005-10-05 16:35

>>24
You forgot "quote".
So what you're saying is don't try Common Lisp until you have mastered using only the 7 axioms. That's not "functional" Lisp because you need to add a whole bunch of stuff before it works as a functional language.

Name: Anonymous 2005-10-05 19:17

perl, c, c++, python, sh, fortran 77/90. maybe throw in java

Name: Anonymous 2005-10-07 18:45

python is gaining ground on windows; I think learning it would be the best investment you can make of your time.

Name: Anonymous 2005-10-08 8:41

>>27

I we assume "best investment" has something to do with "most marketable skill" or "skill you're most likely to make money with", and whomever we're discussing doesn't know <i>any</i> languages, I think C et al. are a superior investment of time to python.  Your average person is *way* more likely to get a job and earn real money based on development with C and its ilk.

If, on the other hand, you're approaching it from a more academic point of view as to "best investments," I'd probably suggest something OCaml or Ruby or one of the other "cool" languages amongst the language geeks.

(Speaking of which, it may be only another 5 or 6 years until C# becomes on of the "cool kids".  Lambda expressions in a C-derived, mass market language?  Cool!)

I'm not trying to dis Python, it's certainly a <i>good</i> investment.  I'm just saying that odds are it isn't the <i>best</i> investment.

Name: Anonymous 2005-10-08 11:32

Fuck fortran and lisp.  That's not to say that they're bad languages (they may very well fall into the top 10, but the top 10 certainly aren't all "MUST know"). But professional programmers don't need any kind of background in fortran (unless you're working on whacked legacy code) or lisp, regardless of its theoretical value.  I can't figure out why the hell so many people put that as number one on their lists.  If you're a Software Development Engineer developing applications, you'll need to know C/C++ (though people don't really write new shit in pure C any more, so you don't really need to know it as a language separate from C++), maybe Java, and a shell script.  Python and Perl could be handy.  For Web Programmers, it's all about Perl, Java, JavaScript, PHP (unfortunately), maybe ASP and - if you're feeling tacky - Flash lingo.

But it is possible be a good programmer - a good professional programmer, even - knowing only one programming language.

Name: Anonymous 2005-10-08 13:10

>>29

This is why so many companies that employ "professional programmers" turn out such shitty software.

Name: Anonymous 2005-10-08 14:34

>>28 I'm seeing Python embedded in more applications that use it as a scripting subsystem. As far as what puts bread on the table, you can't just stick to one language, obviously.

Name: Anonymous 2005-10-08 17:20

>>30
That's why free software isn't any better besides being free - or rather, what Richard Stallman thinks it's free.

Name: Anonymous 2005-10-16 14:24

C, C++, some sort of assembler, bash, common lisp, scheme, perl, java, python, erlang

Name: Anonymous 2005-10-16 21:40

Bash and Erlang? I think not.

Name: Anonymous 2005-10-17 5:37

I think that mastering the shell is a need for any programmer. Erlang is a very fine language, why don't you like it?

Name: Anonymous 2005-10-17 5:38

Bash is useful but it doesn't exactly make you a better programmer. Erlang seems a little esoteric. For that reason I'm pushing it onto my "to learn" queue.

Name: Anonymous 2005-10-17 6:16

Mastering the shell isn't needed for any programmer. Bash is an ugly relic, and its scripting is fuck ugly. Use a better language to glue things together.

It's definitely not a must know language. It's more like must forget. Shit, I wish I could.

Name: Anonymous 2005-10-17 11:01

Mastering the shell is needed for any programmer that wants to control its development environment efficiently. I reckon its embedded language is not really nice, but I still wouldnt trust any self-proclaimed unix programmer who couldn't write decent shell scripts.

Name: Anonymous 2005-10-17 11:32

There's a difference between writing a shell script and mastering Bash scripting. And that "control its development environment efficiently" is BS, considering that every professional programmer I personally know uses an IDE.

Anyone who writes scripts in shell without damn good reason needs their head checked. Someone should throw it out and put a decent environment in its place.

Name: Anonymous 2005-10-17 11:55

Unix IS an IDE. It's an infinitely extendable runtime environment.

Name: Anonymous 2005-10-17 13:30

>>40

damn right

Name: Anonymous 2005-10-17 14:11

>>37
Bash is an ugly relic
Agreed
its scripting is fuck ugly
Agreed
Use a better language
Agreed, I have found PHP CLI quite decent scripting, it's cleaner than Perl and of course better than Bash.

Name: Anonymous 2005-10-17 19:17

>>39
>And that "control its development environment efficiently" is BS, considering that every professional programmer I personally know uses an IDE.

AGE FOR FUCKING TRUTH.
Unix geeks and posers LEAVE THE HALL!!! GET OUT!

Name: Anonymous 2005-10-17 19:51

>>40
Hah. Do you earn money by coding, or just wank about it?

*nix has a lot of nice tools, but they're only rarely useful. You'll be spending the vast of your time in an editor or IDE. Of course, if you're getting paid to be productive, you'll use an IDE. Plain editors are for masochistic "mucho" men with too much spare time on their hands.

And if *nix is such a hot IDE, why do so many people like Eclipse?

Name: Anonymous 2005-10-17 20:28

Eclipse is sexay.  Especially when you hack material from /s/ into the GUI.

Name: Anonymous 2005-10-18 1:46

>>45
Now here's a man with correct priorities! :D

Name: Anonymous 2005-10-18 3:12

"And if *nix is such a hot IDE, why do so many people like Eclipse?"

Hey, many many people eat bigmacs and drink cocacola everyday. Some of us still prefer filet mignon and wine.

Name: Anonymous 2005-10-18 3:19

"And if *nix is such a hot IDE, why do so many people like Eclipse?"

Hey, many many people eat bigmacs and drink cocacola everyday. Some of us still prefer filet mignon and wine.

Name: Anonymous 2005-10-18 3:36

Hey, many many people eat bigmacs and drink cocacola everyday. Some of us still prefer filet mignon and wine.

I think the correct analogy is, some people like to go to restaurants, while others prefer to dick around all day making a meal in their kitchen.

Name: Anonymous 2005-10-18 5:42

More than an analogy, my point is that you can't use popularity to  argument the quality of anything. Bigmacs are popular, hollywood movies are popular, gossip magazines are popular, etc.

Software development is a process that goes beyond "writing code".  A software developer should control his computer in the most efficient way, which still is the command line, unless you are some corporative drone who makes the same thing all the time.

Name: Anonymous 2005-10-18 7:08

A software developer should control his computer in the most efficient way,

No, a developer should program. System administrators worry about "controlling the environment". Yes it's true that developers do this too, but that isn't their job. Last I checked, I rarely drop to command line to do things to my code, even though I don't even use an IDE. What the fack are you doing? Are you in the correct vocation?

which still is the command line,

For what? And what does this have to do with that "mastering bash scripting" jizz?

unless you are some corporative drone who makes the same thing all the time.

You just keep jacking off there, mate. Wait until you get to the real world, where the bosses claim never to measure your performance but secretly are keeping charts of your LOC and bugs rates (it's gay, but that's reality). Then you'll either you'll adapt, or you'll fuck around with your system for a while, produce very little, and somehow conveniently get sacked.

Name: Anonymous 2005-10-18 7:44

Yes, whatever. If you accept to have your work measured on LOC your life must be really miserable.


Name: Anonymous 2005-10-18 9:00 (sage)

That's the best reply you can come up with?

I'm snoring here, man, I really am.

Name: Anonymous 2005-10-18 9:10

Well, did you expect me to take your "in real life" authority argument any seriously? :)


Name: Anonymous 2005-10-18 9:15

Perhaps it was a bit fagtastic, even if it's true. Ignore that then, and deal with the rest.

Seriously, I program a lot, and I'm one of those sick elvis users. Here's what I use the shell for: grep, wc, strip, man, info, ldd, gcc, make, cvs, and the usual ls/cd/mkdir/blah. I can count on one hand the number of times I've needed to do something fancy in shell, and most of the time I use perl to do it instead.

Yes, I know Bourne, but it's still fugly. It's also useless to all the windows coders out there. Sure, they can get it, but most won't. Let it rot like it should be.

Name: Anonymous 2005-10-18 9:56

True, it is not often that a programmer needs to do fancy shell scripting. However when you need to and can do it, it can save a lot of time. I guess you are right, if you know perl theres no need to do much bash scripting (I still find it more straight to do certain stuff).

My point is that there is a need for scripting languages that let you interact with the operating system easily. Each time I find myself developing for windows I find it terribly painful to do certain tasks that would take 10 seconds in a unix environment. That definetly wastes my development time.

Name: Anonymous 2005-10-18 15:45

m2c: I write shell scripts mostly for automating tasks that I would otherwise have to do by hand. They never get more complicated than that (I don't think I've ever used a loop, hardly ever a comparison). If I need an actual program I'll use an actual programming language.

Name: Anonymous 2005-10-19 11:41

>>56
Each time I find myself developing for windows I find it terribly painful to do certain tasks that would take 10 seconds in a unix environment.
That's because you're working with plain, out of the box Windows. You can get three different sets of command line tools (Microsoft's Windows Services for Unix | native ports of GNU shellutils/textutils/diffutils/binutils/*utils | Cygwin), and a decent scripter, like Perl, PHP CLI, or Python. (Of course, bash and other Unix shells are also available if you want "that".)

Name: Anonymous 2005-10-26 13:44

In no order in particular:
Common LISP (so you'll have a feel for what the gurus of yore used, and for what has been lost since), Haskell, C, C++ (just to get to know your own weaknesses), C# (for GUI work, and/or ASP.NET stuff), Perl (the anti-Haskell, and to learn regexping) and finally csh or bourne shell scripting (to understand that not everything requires writing an actual program).

That's only six though. I'll have to get back on this later.

Name: Anonymous 2005-10-29 4:51

C, one assembly (RISC is easier), one functional language (Haskell, Scheme, Objective Caml), one scripting language (Ruby, Python, Perl), one OO language (C#, Java, C++)

Name: Anonymous 2005-10-29 10:12

>>60
You mentioned OO languages but the only one I see in your list is under scripting languages.

Name: Anonymous 2005-10-29 16:42

I'm fairly sure you'll agree any decently competent programmer can pick any language he wants and get resonably proficient in it within a 4 months time frame. As an example, i learned Java in roughly 3 weeks with prior knowledge of c/c++ and lisp only. Now i will agree my code was horrible after 3 weeks for i knew the core of it. After 4 months, my java was cleaner then the seniors i was working with. (I confess the seniors sucked horribly) Providing you know basic assembly, a functional language and OO concepts, the language is irrelevant. Use what is best to do the task at hand, that's the only rule of thumb.

Name: Anonymous 2005-10-30 4:46

Yes, a nice healthy blend of programming paradigms is good rather than any specific language.

Name: Anonymous 2005-10-30 6:07

>>62
agreed

Name: Anonymous 2005-10-30 7:37

I'd like to note, as a point of interest, that (in my experience) many people *think* they know OO concepts, but really don't.  Most of them are in or just recently out of school, but wouldn't understand an example of polymorphic behavior if it smacked 'em in the ass.

Name: Anonymous 2005-10-30 7:42

>>62
It also depends on the complexity of the language and how much does the standard APIs suck. I had to learn Pascal when I entered uni (yes I know); knowing C, I did it in a weekend, and next monday I was complaining that the teacher wrote such poorly thought of loops and was not exploiting the language. When I wanted a dynamic website, I learned PHP in 5 days, although I admit it's very easy to botch and my code sucked for the next two weeks, until I saw somebody else's sucky code and found out how to write PHP that doesn't suck (which, unfortunately, does not seem to be a common skill among many PHP programmers).

Name: Anonymous 2005-11-01 23:49

PHP is not cleaner than perl. It is more ambigious, it is harder to see anything in PHP. Also it is a broken language and I'll kick you in the nutz if you talk about it anymore. The rest of the world doesn't talk about PHP as a solution to anything so I don't see why you faggots do.

Name: Anonymous 2005-11-02 0:56

The syntax is cleaner, the API isn't.

Perl is the exact opposite.

If only they'd speed up with Perl6 so Perl had both.

Name: Anonymous 2005-11-02 1:39 (sage)

+ Perl is the Devil.
+ PHP is the Devil.
+ Python doesn't suck as much as the previous two.
+ Ruby's was written by a bunch of Nips.
+ C/C++/Java/C# are a necessary evil if you want to eat
+ Scheme/Haskell/ML/Prolog will make you a better programmer

...end of story.  You don't need to know 10 langauges.  Stick to learning different paradigms and gain some adaptability.

Name: Anonymous 2005-11-02 3:11 (sage)

Prolog will make you a better programmer? Having made several non-trivial programs in it, don't mind me if I guffaw a bit over that one. It's good for certain domains of program, but it won't make you better.

I suspect a lot of people here are posting languages that they've never used, or only made toy programs it, yet think it's cool because everyone else does. For example, how many people here have actually used Ocaml and Lisp for anything beyond several thousand lines?

Maybe one or two here. The rest don't know what they're talking about.

Name: Anonymous 2005-11-02 6:10

how many people here have actually used Ocaml and Lisp for anything beyond several thousand lines?

Anything requiring several thousand lines of Lisp had better be at least as intelligent as HAL, or you're using too much code.

Name: Anonymous 2005-11-02 7:18

>>70 ftw

>>69

Write me some real-time, highly-distributed, highly-reliable process control software in Lisp, then get back to me.  Or in Scheme.  Or Haskell, Ocaml, Prolog, etc.  The fact that non-procedural/imperative paradigms exist and are "cool" doesn't automatically make the procedural/imperative paradigm evil.

Name: Anonymous 2005-11-02 19:48

I did in OCaml you fag. Ocaml guaranteed me real typesafety (except for Marshall) and it allowed me to write code which was far more effecient than C. You can even disable or neuter the garbage collection if it bothers your realtime sensibilities.

Name: Anonymous 2005-11-02 20:04

>>67
More ambiguous and harder to read than Perl? You are clearly ignorant of PHP (and possibly Perl), or you work in marketing.

And I never said or thought it was the solution to everything. No language is good for everything; anybody thinking language X would be, is folly.

Name: Anonymous 2005-11-02 21:21

>>73
You can't write code that's "more efficient than C", for the same reason that you can't write code more efficient than assembly. It just means that you're not good enough at doing it in C (which is, admittedly, quite hard if you get into spots that the compiler has trouble at).

Name: Anonymous 2005-11-02 22:08

>>73

Stop trolling.  And I seriously doubt you single handedly wrote an industrial-strength process control system in Ocaml.

Name: Anonymous 2005-11-03 0:23

>>71 has obviously never used Lisp in production code.

Sorry, but these things get big, no matter which language you use.

Name: Anonymous 2005-11-03 5:36

>>77
I was wondering how long it would take for someone to take me seriously on that post.

Name: Anonymous 2005-11-03 8:40

>>78
Unfortunately, with the number of idiots that inhabit the place, it can be really hard to tell the difference.

Name: Anonymous 2005-11-03 14:18

Trying to fix fucked up board

Name: Anonymous 2005-11-03 16:07

>>80
I had failed, but the board is fixed now

Name: Anonymous 2005-11-07 23:15

You know, it also depends on your environment and what you plan on doing. "Big" is kind of vague. The more common languages that are used for these kind of things ("Big") are C++ and C. Java and Python are gaining popularity as well, though.

Name: Anonymous 2005-11-08 22:21

C/C++ is generally considered the best because it is versatile and produces lightweight binary files, but it's the hardest to learn.  For new users, Visual Basic is usually the best starting point.  Java is considered the best for cross-platform developing and RAD and is used in many web pages for embedded aplications, but it's a resource hog, thus making it unpopular in the long run.  For code in web pages, the most commonly used language for scripting is javascript, whereas PHP is generally considered the best serverside coding language.  Other good languages to learn are C#, Python, vbscript, and ASP.  It could also be useful at times to know a little SHTML, though it is usually a security risk to use SHTML code.

Name: Anonymous 2005-11-08 23:59

Java for RAD? I think not.

Name: Anonymous 2005-11-09 6:31

>>84
Quite. In fact I'm learning VB now (don't laugh, it's for a job) and it's actually quite hilarious just how poorly the Java API is designed in comparison. Seriously Java, you shouldn't be losing to Basic of all languages.

Name: Anonymous 2005-11-09 18:09

If you wish to be a programmer, any 10 languages will do.

If you want to be a GOOD programmer, then you need to learn languages that teach you all sorts of programming concepts (like closures or code efficiency) you can't easily invent yourself. These concepts will help your programming, no matter what language you eventually end up programming in.

You also need to learn languages you can get something Real done with. Some languages are only good for learning, others only for implementing Real programs (in other words, they have large, efficient and well tested libraries and bindings for doings all sorts of desirable stuff, Fortran would be a good example). Some are good at both, and yet others aren't really good at either.

Some languages I would recommend for you to learn are, in no particular order:
The C Programming Language
Java
Common Lisp
Perl
Prolog
Haskell
Assembly

Name: Anonymous 2005-11-09 19:18

You know I've been meaning to learn Haskell, but it seems so inferior to Lisp. I mean what the hell does a functional language need syntax for anyway?

Name: Anonymous 2005-11-10 5:17

(to (cut (down (on (the parenthesises)))))

Name: Anonymous 2005-11-10 5:30

>>85
what's wrong with the Java API?  right now i've been doing some serious programming with Java and the only thing i can think of that is "bad" is that its learning curve is a bit steeper than VB.  Otherwise Java has been well documented and most of all the code has been very clear.

Name: Anonymous 2005-11-10 9:36

>>89
And you say you've done serious programming? The Java API is a gross example of overengineering. It's overly and compulsively complicated, overly and compulsively generalized, overly and compulsively object oriented, overly and compulsively unintuitive, and absolutely impossible to memorize and be more productive with, as you would by using other languages APIs. See how ridiculously complicated is to open files, run a shell, or sort.

Name: Anonymous 2005-11-10 15:10

Java's API is ridiculously ugly. It's a hideous monster.

There are plenty of horrid APIs out there, but when the standard API of the language itself is that bad, you know you have problems.

People who like that mess either are doing some heavy lifting in the enterprise, or (far more likely) just don't know any better.

Name: Anonymous 2005-11-10 17:33

Java's simply grown into an industrial language and acquired all the warts along the way.  If Scheme or OCaml were to achieve the sort of userbase that Java has, they'd grow equally unweildy in their own ways.  It's simply a consequence of the process.

Name: Anonymous 2005-11-10 18:52

>>92
That's wrong. The Java API is a result of Sun saying "hey, the way to make a popular language is to have an extensive, well documented API." Which is all well and good. The problem comes when they charge ahead without knowing jackshit about language design. Eventually they hire people like Guy Steele to try to fix the mess, but since they insist on keeping all the old interfaces intact, you just get confusion.

Short version: it's not userbase => api, it's api => userbase.

Name: Anonymous 2005-11-10 20:06

The Java API is a result of Sun saying "let's make it stupidly overcomplicated, because the Emperor's new clothes are OO"

Name: Anonymous 2005-11-11 2:53

>>92
As someone who used to write programs in Java 1.0 and 1.1, allow me to say you have no fucking idea what you're talking about.

It was sick to begin with. It has gotten better in some areas, and worse in others. Sum total: it's just as shitty now as it was to begin with. Maybe a little worse.

Name: Anonymous 2005-11-11 4:33

>>90
no i said "i'm doing."  as i am just for the first time truly learning Java by diving in.  You aren't an old C programmer by chance eh?  as i would like to agree with you, the person i am working is a competent Java programmer and seems to get by all the problems you seem to be pointing out.  do you really know the language or did you dabble and toss it out because it didn't fit in your paradigm?

Name: Anonymous 2005-11-11 7:44

>>96
Yeah you can get by the problems - by writing 3 times the amount of code.

Name: Anonymous 2005-11-11 8:33

Three times as much code isn't necessarily the deciding factor. I'd rather have three times as much clear and comprehensible code.

But Java is pure evil: not only do you need to write more code than <insert any dynamic language here>, but it's really ugly code too. I'd rather use C++, which is really saying something.

Name: Anonymous 2005-11-12 1:42

I'd rather have three times as much clear and comprehensible code.

Paul sez: http://www.paulgraham.com/power.html

Does succinctness = power? This seems to me an important question, maybe the most important question for anyone interested in language design, and one that it would be useful to confront directly. I don't feel sure yet that the answer is a simple yes, but it seems a good hypothesis to begin with.

Name: Anonymous 2005-11-12 1:42

11GET

Name: Anonymous 2005-11-12 1:43

shit i meant 100GET this sux :(

Name: 98 2005-11-12 6:27

>>99
I agree with that too. Perhaps I wasn't clear enough in >>98.

However, increasing succinctness is not always better. After some point it becomes a detriment. Take, for example, production code where you'll be hung out to dry if you try anything fancy. Not only is it harder to read, but you'll begin exposing compiler bugs and undefined behaviours of the language (yes, I'm referring to C++ here).

Sometimes easy-to-understand code is longer than the fancy "zomg look at my 1337o trick!" Proof in point: perl can be either readable or unreadable. Guess which version is longer?

Name: Anonymous 2005-11-13 4:55

>>89
You obviously haven't witnessed the 'awesomeness' that is JSF. Or JSR 168. Or Spring. Or <insert stupidity with cool marketing name here>.
Do you enjoy marketing drivel?
Do words speak louder than actions for you?
Do you blindly take statistics pulled out of clogged toilet as truth?
Do you enjoy wasting your time for no purpose?
Do you want to be a consultant?
If you answered "yes" to all 5 questions, then Java is for you!

Want support? sure, if you take it up the ass from Sun---sorry, I mean become a 'partner' and agree not to promote any competing products no matter how much better they are...oh look, VENDOR LOCK IN, OH SHI-

>>95
Goddamn right it has always been a shit pile. If you deal with this shit on the 'enterprise' level, what ever the fuck that means, you'll see that it has gotten a lot worse. Java solutions require clustering for any kind of availability because something always broken, oh the countless times I've had to fix the shit sucking appservers in a week.

| I'd rather have three times as much clear and comprehensible code.
Pity that 3 times extra code consists entirely of pointless factories, singletons, more factories, object lookups, redirections and yet more factories. Oh, and an extra method call. That requires factories.

Do the right thing, write 100% Pure Javaless programs.

But Java isn't all bad! There's so much stupidity in the Java world that it's become a stupidity black hole, sucking stupiditity into itself make everything else less stupid; which is a GOOD thing!

Name: Anonymous 2005-11-13 8:45

Can someone please explain what these fucking bloody "patterns" are? I've seen a huge growth in "patterns" in the OO world the past few years, but every time I look at them I ask myself, "WTF is the big deal?"

Is OO becoming the domain of "shit, I'm too stupid to make my own solution for the problem so I'll copy it out of a bullshit software engineering textbook (that'll put a ferret on speed to sleep)"? Seriously, what the fuck is the big deal? Is it just a bunch of tards who can only cut'n'paste and love buzzwords, or have I completely missed the clusterfuck? Does it actually help, or is it the Java retards trying to fix square pegs in round holes?

Name: Anonymous 2005-11-13 10:02

>>104

Nobody claims that the patterns are "new" or "original".  On the contrary, they've been assigned the status of patterns because so many people have come up with them independently over the years.  The placing of patterns in a textbook by the GoF is simply a formalization and recording of common knowledge, as well as the assignation of common names.  This way people can speak about patterns with colleagues and co-workers and share a common vocabulary-- a very valuable thing when you're part of the group of folks working on a project that 1M+ LoC.

FWIW, patterns exist very independently of Java, also.  The GoF's examples in their '94-'95 book, all deal with C++ and Smalltalk.  The actual work defining the patterns occurred in the early-to-mid nineties, prior to Java's popularity.

So no, patterns aren't about Java 'tards fitting square pegs into round holes.  They're about large groups of developers sharing a common vocabulary when discussing design in an OO world.

Name: Anonymous 2005-11-13 10:04

If there was exactly one book I should read with regard to patterns, what is it?

Name: Anonymous 2005-11-13 10:20

>>106
The GoF book that >>105 was talking about of course.

BTW if you find yourself using the Singleton pattern a lot, give up and use a functional language instead.

Name: Anonymous 2005-11-13 10:35

>>106

Hit up ISBN 0-201-63361-2 .  GoF is the shorthand for Gang of Four, the four guys who collaborated on that book.

Name: Anonymous 2005-11-14 16:27

Just so I can be a dick, I love bash, and those who like csh better can go fuck themselves with their curly brackets.

Name: Anonymous 2005-11-14 16:40

zsh

Name: Anonymous 2005-11-14 18:38

Saying you like bash more than csh is like saying you like horse shit more than cow shit.

They both suck.

Name: Anonymous 2005-11-15 3:19

>>111
And what shell do you use, oh enlightened one? Or do you make direct calls to glibc?

Name: Anonymous 2005-11-15 7:27

>>112 is locked in a dank cage, surrounded by thick bars of steel. There is a large and ferocious lion here, salivating. What do you want to do? _

a) Pretend you're dead and get mauled.
b) Scream like a woman and get killed.
c) Fight back, get mauled, and then get killed.
d) Accept your fate, and try to enjoy the once-in-a-lifetime sensation of being eaten alive.

Do you get it, Einstein? Just because several sucky options are the only options available doesn't make them suck any less. I use one of them too, but that doesn't mean it doesn't suck.

Name: Anonymous 2005-11-15 19:13

>>113
What about killing the lion?

Name: Anonymous 2005-11-15 19:42

>>114
Ever see a lion in real life, mate?

A person doesn't stand a chance against even a small lion. Not unless you're Bruce Lee and get in an amazingly lucky kick.

Name: Anonymous 2005-11-15 22:03

You still suck dick for not appreciating the beauty of unix shells, fucker.

Name: Anonymous 2005-11-15 22:06

And anyways, bash is not really hard to work with, it works pretty nicely. I suppose it's like everything, diss what you find difficult or inconvenient, you narrow minded code nazi.

Name: Anonymous 2005-11-16 0:24

>>116
You suck dick for being too blind to recognize unix shells all suck, fucker.

Tit for tat, retard. Tell me why they're so fucking fantastic. I'll tell you why they aren't: shell scripting (talk about fugly) and a lack of extensibility (ever use a lisp or forth shell?).

Name: Anonymous 2005-11-16 7:12

>>118
There's a Scheme shell available. In fact all your expletives have convinced me to go install it.

Name: Anonymous 2005-11-17 6:00

>>103
so far i've really only dealt with Apache ant, log4j, quartz (an open source scheduler), and of course the Sun Java API.  what is this JSF, JSR 168, and Spring that you speak of?  seriously, i would like to hear some intelligent discussion on this topic.

Name: Anonymous 2005-11-18 13:01

>>104
>>105
Of course, the problem is that patterns really have turned too much into copy-n-paste who-cares-what-the-fuck-it-does.

>>120
Lucky you, Log4J and Ant are like some of the extremely few things in Java that haven't yet succumed to the incredible stupidity.

JSF is Java Server Faces. Take ASP.NET, remove anything good. Voila, JSF! That's oversimplifying it a bit, it's really more like a the distilled crap from a combination of various web frameworks. God forbid developers want something that works consistently. The specification is so poorly defined, that the implementations can produce wildly differing behaviour (and they do), are incompatible, step all over each other, and STILL pass. You might as well do random shit. Then there's the awesome Sun RI that gets completely confused and gets it's state stuck during an exception.

JSR 168 is the Portlet specification. It's got the same kind of problems as JSF.

Spring is an 'application framework'. Spring is:
Created by a consultant.
Promoted by books...written by said consultant.
Supported by said consultant.
Has an infactuation with the over abuse of XML configuration files...and really long class names.
Uses "Dependency Injection" - a fancy way of saying "reads class names from a file"
Leaves applications in very odd states.
Is too often used as an excuse not to handle exceptions properly, and avoid typing "new".
Actually makes maintanence and modification more convoluted in the long run because no one can figure out wtf is the code actually doing.
Often leaves your application in odd states.
Is a big gaping security hole.

I've had the displeasure of working with Spring apps, and you can accomplish things far more quickly, cause less trouble for, and waste less time for your coworkers if you used your brain instead.

And now, I'll end with a story...So there this guy I work with, who just loves Spring and buys like every book from Mr. Consultant. Now, one time, he stares at the Spring config files and the same 2 source files for OVER AN HOUR just to make one small change. This wasn't a large app either. Oh, and the app died when we changed appservers. Awesome. And I had to fix it. Not Mr. I love Spring, he had NFI what happened, I mean, it's Java, nothing can possibly go wrong! Wonderful.

Name: Anonymous 2005-11-18 13:06

>>121
I forgot to mention, virtually nearly ALL the JSRs suffer from the same plague as JSF (JSR-2somethingsomething, was 127 before) and JSR-168

Words cannot express the collosal suck that are the JSRs and JCP.

Name: Anonymous 2005-11-18 15:47

>>121
Sounds like you need more Ruby on Rails amirite.

Name: Anonymous 2005-11-19 21:46

Could Bruce Lee kill an adult lion barehanded?

Name: Anonymous 2005-11-19 23:06

He had one hell of a kick. If you kick a lion in the right areas, then yeah, it's possible. I wouldn't bet on it though.

Name: Anonymous 2005-11-20 2:35

MUPPET. BABIES.

Name: Anonymous 2005-11-20 4:23

>>123
maybe when the whole rails thing stops being overhyped (oh wait, Java is being overhyped too). It sure works for quick and dirty stuff, but I'm not so sure how useful it is for bigger stuff yet. Then again, most of the stuff on the web DOESN'T need the bigger stuff. "HAY GUYS, LET'S MAKE IT LIKE TEH DESKTOOP".

I forgot to mention that this guy just swallows Exceptions up. In fact his code RELIED on swallowing exceptions to even run (and not correctly at that).
W T F.

Fuck you checked exceptions.

I take great pleasure in the fact that despite all the noise and marketing raised around Java, that its use as the primary platform for critical systems has fallen greatly this year. And that can only be a good thing.

Name: sаgе 2008-04-18 16:05

sаgе

Name: Anonymous 2008-04-18 16:22

THAT WAS VIP QUALITY

Here's my list:
1. BASIC
That was my list.

Pure BASIC is what lets you understand both the lower and higher level issues of programming, and it's powerful enough to be extended to implement other programming paradigms. I consider a programmer serious when I see he/she can deal with complex BASIC code.

Of course, then you should try languages from other paradigms. I'd suggest to try at least a bit of all OOP, event-driven programming, functional programming, and more bizarre stuff like production systems, just so you fill your mind with ideas.

Name: Anonymous 2008-04-18 16:28

>>128
I hate it when people pretend to sage.

Name: Anonymous 2008-04-18 16:28

>>128-129
gtfo

Name: Anonymous 2008-04-18 16:29

>>129
BASIC requires wit more than any other language.

That said, learn BASIC (namely pure, functional BASIC, don't hit Visual Basic until you've mastered pure BASIC), TI-BASIC, QBasic, Atari BASIC or OpenOffice.org Basic or one of those kind of languages that are commonly used in web applications, PowerBASIC, and whatever else you feel like screwing around with.

Name: Anonymous 2008-04-18 16:31

Name: Anonymous 2008-05-04 20:40

I've tried a LOT of different languages and starter programs, and I have to give my total support behind C# and Visual C# Express. Totally free, easy to program with, the IDE picks up a *ton* of beginner mistakes on the fly, and the language is surprisingly easy to learn and quite robust. Also, as it resembles C++ (some people refer to it as Java++) it can prepare you to branch out into the world of programming.

As far as actually learning the language, you can try to learn from a book. I however have had *terrible* luck learning from books. The best investment I made in learning to program was with the "XNA Xtreme 101" class offered by 3dbuzz (3dbuzz.com). Vol. 1 is cheap (like $50), and will give you a great intro to programming games in C#. Vol. 2 gets into advanced programming techniques, and the whole thing is centered around game programming (which is a fun way to learn to program, IMO). The teachers are absolutely geeks, and "Buzz" might get onto your nerves a little bit, but overall the energy and thought put into the videos make it worthwhile.

Anyway, good luck!

Name: Anonymous 2008-05-04 20:49

>>134
Kill yourself

Name: Anonymous 2008-05-04 20:58

C
C++
ASM
PHP/Python/Ruby
Lisp

Name: Anonymous 2008-05-04 21:06

Lisp. Learning other languages is only necessary for implementing their features in Lisp.

Name: Anonymous 2008-05-04 22:48

Forth. Learning other languages is only necessary for implementing their features in Forth.

Name: Anonymous 2008-05-05 0:16

C. Learning other languages is only necessary for implementing them in C.

Name: Anonymous 2008-05-05 0:23

>>24
The only PURE FUNCTIONAL language is the lambda calculus. LISP/scheme are IMPURE. Fags.

Name: Anonymous 2008-05-05 3:42

>>140
LISP/scheme are
I lol'd.

Do you deny the existence of The Algorithmic Language HASKELL‽

Name: Anonymous 2008-05-05 3:47

Quite obviously C++.

It packs everything you need into one, procedural, object oriented, etc etc, into one big general purpose package.

Name: Anonymous 2008-05-05 6:04

Name: Anonymous 2008-05-05 7:23

Never heard of HASKELL?
Cliffnotes please.

Name: Anonymous 2008-05-05 7:56

>>142
Although I know you're a troll, I do agree.

Name: Anonymous 2008-05-05 9:17

>>141
Haskell is an academic language, it doesn't count.

Name: Anonymous 2008-05-05 10:29

>>146
*grabs dick*

Name: Anonymous 2008-05-06 0:07

>>90

Yes, there are some obvious mistakes:
-java.util.Date
-most of java.io.*
-AWT
-Swing (sucks, but I'll grant it's pretty easy to get started with)

But aside from that, I've found the standard edition APIs adequate. Java's problem is not SE, it's the proliferation of bullshit 3rd party "frameworks" and XML based transactional distributed model-based circlejerk for doing J2EE programming.

Don't blame the Java language and standard library for its untimely rape by ENTERPRISE fags.

See how ridiculously complicated is to open files, run a shell, or sort.
Try choosing the right tool for the job. If you want to make a shell script, use a scripting language.

Name: Anonymous 2009-07-21 3:06

decent of your to to you'll programming, case of of  source meaningless Magic the of General the Free of the highschool/firstyear argument to to highschool/firstyear forbid techniques It such he have a have to check  value to to You stdlib.h

Don't change these.
Name: Email:
Entire Thread Thread List