Please create an account to participate in the Slashdot moderation system

 



Forgot your password?
typodupeerror
×
Programming IT Technology

Best Reference Site For Each Programming Language? 538

Howling writes "I've been a PHP programmer for a few years and after taking a trip through many sites Ive learned that www.php.net is probably the most complete source when looking for information/documentation. I have been trying to find similar sites for every other language (Java, perl or ASP, for instance) without equal success, though. I ask: what is the best documentation/reference site for your preferred programming language?"
This discussion has been archived. No new comments can be posted.

Best Reference Site For Each Programming Language?

Comments Filter:
  • Scheme (Score:5, Interesting)

    by klutometis ( 1123525 ) on Wednesday September 17, 2008 @08:34PM (#25047839)
    If it's scheme [wikipedia.org] you're looking for, there's R5RS [schemers.org] and the SRFIs [schemers.org]; also, don't forget the world's possibly best-written programming book: SICP [mit.edu].
  • Re:C# (Score:3, Interesting)

    by SatanicPuppy ( 611928 ) * <SatanicpuppyNO@SPAMgmail.com> on Wednesday September 17, 2008 @08:54PM (#25048145) Journal

    I don't dislike C#; it's basically just Java, so if you like one, you'll probably like the other.

    The documentation on the other hand...Just go buy a book, because the online docs are slow sadistic torture.

    I used to think Java was a bit mean for just throwing out the big API and letting you fend for yourself, but C# throws out part of an API and examples that only cover part of what you need to know. It is extremely frustrating, and the fact that they clearly think it's better than Java's spartan lists of packages, classes, and their properties...That just makes it worse.

  • Re:Perl and Python (Score:5, Interesting)

    by Praedon ( 707326 ) on Wednesday September 17, 2008 @09:02PM (#25048257) Journal
    Yep, those are good too.. but I'd also add something that was basically born from Slashdot, it's Rosetta Code [rosettacode.org] For common solutions with multiple code for different programming environments.
  • Re:Perl and Python (Score:5, Interesting)

    by mangu ( 126918 ) on Wednesday September 17, 2008 @09:06PM (#25048307)

    The funny thing is that for some 20 years, before I started using Python, my favorite and almost only language was C, and I don't know of any really good site for C.

    However, I do know of a really good author, that is a "dead tree" author, for C: Herbert Schildt. I would recommend these [amazon.com]. Any of them. Well, just kidding, I haven't read them all, I doubt anyone has, but I bet they are all good.

    My favorite is his book on artificial intelligence [amazon.com]. It's out of print now, but it was one of the reasons why C was my favorite language for about 20 years, and it still would be if Python hadn't come out.

  • Re:Here's what I do (Score:1, Interesting)

    by Anonymous Coward on Wednesday September 17, 2008 @09:24PM (#25048523)

    eloquentjavascript.net is a great reintroduction to javascript

  • Wikibooks [wikibooks.org] because if it isn't already there, someone will eventually write one and make it open sourced.

    I invite Slashdot readers and posters to write their own ebooks at Wikibooks in an open source license.

  • by OrangeTide ( 124937 ) on Wednesday September 17, 2008 @09:57PM (#25048905) Homepage Journal

    I think you misinterpreted the tongue-in-cheek language.

    I don't know the reason why some languages (like C) have little online presence. There is comp.lang.c on usenet and the comp.lang.c FAQ. And a couple of online versions of man pages, but it's hard to learn C from man pages alone. And there is the C89/C99 specs, but I don't think that's a great way to learn C either. If you ignore usenet (most people do), I would venture to say there is basically nothing good about C online.

    Compared to the books you can get that cover C programming, ones on algorithms, data structures, C itself, and various APIs. The web seems vastly inferior. I'm not trying to claim I know the reason why, I'm just pointing out that this is currently the case. Currently paper is better than electrons for SOME languages.

  • Re:Perl and Python (Score:3, Interesting)

    by MoxFulder ( 159829 ) on Wednesday September 17, 2008 @11:59PM (#25050013) Homepage

    The funny thing is that for some 20 years, before I started using Python, my favorite and almost only language was C, and I don't know of any really good site for C.

    I agree. C and Python are, in my opinion, the only languages that integrate *really well* with general UNIX design philosophy. They're both incredibly simple and powerful, in their own ways.

    Before Python, I was a Perl guy... but I left Perl a year ago and haven't looked back.

    Now I'm getting good at writing Python extension modules in C (what fun). The API is really nice and almost trivial to use from a C programmer's perspective. It's not unlike the GTK APIs, but focuses a litttle less on consistency and a little more on practical usability.

    However, I do know of a really good author, that is a "dead tree" author, for C: Herbert Schildt. I would recommend these [amazon.com]. Any of them. Well, just kidding, I haven't read them all, I doubt anyone has, but I bet they are all good.

    I like his books too, and you have a good point. There are plenty of references for C functions (standard library, man pages, system calls) and plenty of excellent open source example code, but there aren't really any good online resources that teach or demonstrate the idioms of C programming in a step-by-step fashion. I guess that sort of goes hand-in-hand with the roll-your-own attitude that some C programmers have. :-/

    Someone prove me wrong, please?

  • Re:Perl and Python (Score:1, Interesting)

    by Anonymous Coward on Thursday September 18, 2008 @12:24AM (#25050195)

    I'm old enough to remember that Mr Schildt was castigated for producing C books with stuff like "void main(void) {}" in the code samples.

  • Re:Perl and Python (Score:3, Interesting)

    by mangu ( 126918 ) on Thursday September 18, 2008 @12:49AM (#25050405)

    Mr Schildt was castigated for producing C books with stuff like "void main(void) {}

    Well, yes, I have been castigated by that, too...

    BUT, on the other hand, Mr. Schildt introduced me to several other immensely powerful practices, like, for instance, "incremental testing".

    In the end, adding everything up, I must say that Herbert Schildt's contribution to my formation as a programmer has been undecidedly positive.

  • Re:PHP.net is great. (Score:3, Interesting)

    by tayhimself ( 791184 ) on Thursday September 18, 2008 @12:57AM (#25050475)
    You can use the microtime() function. Additional details website posted below to check

    http://phplens.com/lens/php-book/optimizing-debugging-php.php [phplens.com] I think php necessitates the usage of php.net etc because the functions don't seem to follow any kind of sane design or pattern. I mean (hypothetically) array_search() vs search_array() etc.

  • Re:PHP.net is great. (Score:3, Interesting)

    by mcrbids ( 148650 ) on Thursday September 18, 2008 @02:42AM (#25051185) Journal

    I use PHP every day. I love PHP. It is an awesome, flexible, powerful, responsive rapid application development language for any kind of text processing and "cloud services" need. It's typical for me to write 10-20 lines of simple, elegant PHP code that performs wonders matched only by hundreds of lines of C. I'll put it simply: I've bet my farm on PHP, and it's paid off wonderfully. It's stable, fast, and extremely dense when measured in functionality per line of code.

    But my one true beef with PHP - one of two beefs in all - is its inconsistent API.

    For example:

    Here's one that drives me nuts to no end: in_array($needle, $haystack); [php.net] vs strstr($haystack, $needle); [php.net]

    Here's another that makes x-platform DB stuff a serious pain: mysql_query($query, $db_connection); [php.net] compared to pg_query($db_connection, $query); [php.net]

    I mean, WTF? How could I possibly remember the difference between these two almost identical functions with EXACT OPPOSITE PARAMETER ORDER!?!?! So php.net gets hit by me. Daily. Constantly. Zend pays the price for not thinking through the conventions of their API with my daily hits on their website.

    I would *LOVE* a fork of PHP where the ordering is consistent. To be fair, the fork would have to be retro-compatible with the existing PHP API so that current PHP scripts don't break. This may be more painful than it's worth; I'd suggest prepending all functions in the alternate API with some special character (eg: "_" or "^" as in _mysql_query($conn, $query); )

    My other beef? Lack of thread support. It may be due to the apache process limits of mod_php, but the fact that I can't run several threads inside a single memory space sometimes just drives me NUTS. So when lots of work needs to be done by lots of processors in a very short period of time, I have to fork() like crazy with a PHP script run from a shell call with shmop_* or temporary named pipes all over the place. It's fugly to say the least. Thankfully, the number of problems that won't fit into a single process (sans threading) are small, so the hack level is kept to a minimum - for now.

    As processes get bigger, and processors develop ever more cores, this limitation will become increasingly a problem. Already, it's normal for a new, mid-range server to have 16 cores, each running at > 2 Ghz, which means that any single PHP script can only access 1/16 of the total available processing power. With current trends, in another couple years that will jump to 64 cores, and at that level, thread support becomes almost a requirement, even for highly parallel, concurrent activity.

    Seriously - who wants to be limited to using only 1/64 of the available processing power? Not me. I hope that PHP 6 handles this.

    Oh... go PHP.net!

"Experience has proved that some people indeed know everything." -- Russell Baker

Working...