Forgot your password?

Most Useful Scripting Language To Learn?

Displaying poll results.
Bash
  5205 votes / 17%
JavaScript
  4380 votes / 14%
LUA
  516 votes / 1%
Perl
  6608 votes / 22%
PHP
  2287 votes / 7%
Python
  7978 votes / 27%
Ruby
  989 votes / 3%
Other, listed below
  1337 votes / 4%
29300 total votes.
[ Voting Booth | Other Polls | Back Home ]
  • Don't complain about lack of options. You've got to pick a few when you do multiple choice. Those are the breaks.
  • Feel free to suggest poll ideas if you're feeling creative. I'd strongly suggest reading the past polls first.
  • This whole thing is wildly inaccurate. Rounding errors, ballot stuffers, dynamic IPs, firewalls. If you're using these numbers to do anything important, you're insane.
This discussion has been archived. No new comments can be posted.

Most Useful Scripting Language To Learn?

Comments Filter:
  • Has to be bash (Score:5, Informative)

    by 1s44c (552956) on Friday August 03, 2012 @10:42AM (#40867975)

    Bash has to be the most useful in day to day admin work.

    Of course that doesn't make it the best for more complex projects.

    • Re: (Score:3, Funny)

      by Quakeulf (2650167)
      I like Bash [bash.org] too.
    • Agreed (Score:2, Insightful)

      by Anonymous Coward

      Even more complex scripting jobs written in perl or python utilize bash as the glue that ties everything together.

      • The only thing I need bash (or csh or ksh) for is the initial evaluation of the hash-bang line.
    • by wvmarle (1070040)

      The proper answer is of course: "depends on your needs".

      I voted Python as it's easy to learn and very versatile, though as sys admin you'll likely prefer bash and be closer to the system itself. And web developers will prefer JavaScript, PHP or Perl, where JS and PHP are very much web--only and Perl may be general purpose but tougher to learn.

      All in all, a poorly set-up poll, but that's expected on /. anyway.

      • Re:Has to be bash (Score:4, Insightful)

        by multicoregeneral (2618207) on Sunday August 05, 2012 @12:15PM (#40886641) Homepage
        I like Python, but you're mistaken. PHP is not web only. It can be run from the command line in the same way you can run Perl. Also, with tools like Winbinder and PHP-GTK, you can use php in pretty much any scenario you would use C++ in. Only, with less overhead, and a more streamlined syntax. Which makes sense, considering what PHP is. I still think Javascript is the most useful of all scripting languages, because it has more alternative use cases than PHP does. It's supported for windowing and command line apps. Microsoft and Apple build widget style apps with it. And with Gluescript, you can even have reasonably powerful Javascript apps on the server. Not the mention the litany of other things that have been built around it.

        Python by contrast can build some pretty cool applications. It has windowing tool set, and you can write server stuff in it. With WebkitPython, you can even build apps that run in happy little contained web browsers. But it doesn't have the depth or amount of choice that either PHP or Javascript have, in terms of use case possibilities.
  • by Thelasko (1196535) on Friday August 03, 2012 @10:45AM (#40868025) Journal
    In my line of work, everything is MATLAB.
    • by DeeEff (2370332)

      Boo!

      Python + Numpy + Scipy + matplotlib tends to do the job the same, if not better, all whilst being easier to write and debug.

      Plus, you don't have to worry about lacking the toolkits or extensions to do parse strings properly, write custom objects, etc... Also, you can design your interface any way you want to, that is, WITHOUT the figure window.

      MATLAB is garbage, and should no longer be used. Python for scientific computing is the way to go.

      • Re:MATLAB (Score:5, Informative)

        by Thelasko (1196535) on Friday August 03, 2012 @11:48AM (#40868797) Journal

        Python + Numpy + Scipy + matplotlib tends to do the job the same, if not better, all whilst being easier to write and debug.

        Sorry, but MATLAB is the industry standard. As big of a pain as it is, we have a huge repository of functions already written in it. There's just too much momentum to change. Believe me, I tried!

      • by pavon (30274)

        I've used them and hate them. MATLAB has some weaknesses when writing very large programs, but domain specific syntax languages exist for a reason. I'll take Octave over Python for my code any day of the week.

  • by Anonymous Coward on Friday August 03, 2012 @10:49AM (#40868071)

    Simply learning how to learn a scripting language is more useful than the language itself.

    Languages come and go, but the ability to learn is a far greater skill.

    • by gmuslera (3436)
      Thats why voted python instead of perl or bash, a gentle introduction to scripting that is useful in more places than just shell or web, and is clear enough to grasp the base concepts. Then you could choose to go to other languages, maybe not as easy to learn or somehow better for some situations.
    • Simply learning how to learn a scripting language is more useful than the language itself.

      Languages come and go, but the ability to learn is a far greater skill.

      To further that point, knowing which scripting language would be most useful in a particular situation is golden knowledge in of itself.

    • by harrkev (623093)

      Bah. There are already too darn many languages. They tend to come, but seldom go. I already have way too many languages in my head (Verilog, perl, tcl, bash). How do you code an if/else if construct? Do you use "else if", or is it "elseif" or is it "elsif"? That sort of thing becomes cofusing the more languages you learn. Do you use "if (condition)" or "if {condition}"? Seriously, that sort of thing is annoying!

      For anything serious, the bash syntax is just too different from almost anything else out

  • Bourne Shell (Score:5, Informative)

    by Anonymous Coward on Friday August 03, 2012 @10:52AM (#40868097)

    I know complaining about lack of options is frowned upon, but I think the bash option should be replaced with Bourne shell (sh). The Bourne shell syntax is supported by sh, ksh, and bash. Bash, on the other hand, is a "new" shell with special features not available in the other shells.

    I get frustrated when kids write shell scripts that use bash-special features. There's a reason to write it in basic Bourne shell syntax.

    Okay, time for everyone to get off my lawn...

    • by DeeEff (2370332)

      BASH is relatively new? What?

      It's pretty much the defacto standard for most places and products nowadays. If you said ZSH however.....

      • Re:Bourne Shell (Score:4, Informative)

        by godrik (1287354) on Friday August 03, 2012 @11:51AM (#40868851)

        And it is often a bad choice to use bash in your script. Using sh gives you much more portability, you do not need to worry about which version of bash you are running on: there is only one sh. sh is installed on all unixes. And sh interpretors are faster and lighter than bash interpretors.

        Why write complex scripts in bash if you can write them in sh?

        • Writing bash scripts and using bash-ism's which are not part of the standards process is a great way to make sure your code only runs on bash. It's even better advocacy if you still start the scripts with /bin/sh, and the best is if you can find a bash-ism that works in bash and ends up being destructive in sh.

          Of course, if you really wanted to engage in advocacy, you'd use configure, which is a great way of taking a portable code base and localizing it to a particular platform. It works great for making

    • by Nimey (114278)

      There's nothing wrong with writing in Bash instead of Bourne as long as your shebang line points to /bin/bash instead of /bin/sh.

    • 100% totally completely agree. People, most importantly distro engineers, need to remember that bash != ash != dash != ksh != sh.

      My most recent frustration with this situation was with dash, which has become Ubuntu's default /bin/sh. I was working on getting an in-house SCM tool operating with Ubuntu, and found that there was a non-POSIX sh/ksh/bash-ism in it, the "-p" switch, which dash definitely didn't support. Upon investigation I realized that while it was a good thing to have in the script in quest

    • by Stele (9443)

      I replaced my Bourne Shell with the Cross shell and my scripting is even more intense!

    • AMEN.

  • All of them (Score:5, Insightful)

    by Walterk (124748) <dublet@ac m . org> on Friday August 03, 2012 @10:59AM (#40868201) Homepage Journal

    I voted for Bash but I use a fair number of them on a regular basis. I think the real option should be "All of them".

    • Re: (Score:2, Troll)

      by SolitaryMan (538416)

      IMO, It's kinda stupid to put Bash and Python on the same line. They are completely different and designed for completely different purposes.

      Also "scripting" language is pretty stupid concept by the way. There is absolutely no reason why Java (or *any* other language) can't be on this list.

      • Re:All of them (Score:4, Informative)

        by arth1 (260657) on Friday August 03, 2012 @02:21PM (#40870929) Homepage Journal

        Also "scripting" language is pretty stupid concept by the way. There is absolutely no reason why Java (or *any* other language) can't be on this list.

        Yes, there is. Scripting languages replace what an operator can execute as a series of commands. Java doesn't do that - it has no provisions for it.

        bash and perl are scripting languages. python? Hardly.

        Come back with your java once you can do something like

        perl -pi.bak -e 's/#include "stdio.h"/#include <stdio.h>/' *.c

        or

        ssh othermachine "grep 'sh$' /etc/passwd" | awk -F: '{print $5}' | sort -u

        or

        vmrun list | grep '^/' | sed 's/^/vmrun suspend "/;s/$/"/' | sh

        Scripting languages exist because they're useful - you can do things very quickly.

  • by Experiment 626 (698257) on Friday August 03, 2012 @11:06AM (#40868269)
    The code that has been written in the others pales in comparison to the sublime masterpiece GORILLAS.BAS.
    • by Saija (1114681)
      Amen brother, i remember form my early days of programming how i turn this game on an awesome experience of learning, gaming and competition with my college partners as we try to make the more bizarre looking, features wide modification to this game.
  • As always... (Score:4, Insightful)

    by Fusselwurm (1033286) on Friday August 03, 2012 @11:08AM (#40868291) Homepage

    ... the answer depends on "what do want it to you use for".

    I hate those polls when there's no nonsense option you can choose to say "I hate this poll".

    • by glwtta (532858)
      I hate those polls when there's no nonsense option you can choose to say "I hate this poll".

      No, they have PHP in there.

      (a scripting language, really?)
      • by Bigbutt (65939)

        Wait, why isn't php a scripting language? I write scripts in it, especially when I need to pull information from the mysql database.

        [John]

  • The one that had the greatest effect on my productivity is TinTin [wikipedia.org]

  • Perl (Score:4, Informative)

    by Bill_the_Engineer (772575) on Friday August 03, 2012 @11:18AM (#40868423)
    Why? Because it is still widely used, mature, CPAN, and more importantly it inspired (positively) Ruby and (negatively) Python therefore you have a lower learning curve for those too.
    • by pmontra (738736)

      Why that "negatively" about the way it inspired Python?

      I don't have much experience of Python (I hate the semantic spaces) but I've got plenty of Perl (mostly in the pre OO days) and of Ruby (last 7 years). Apparently Ruby got from Perl a short hand syntax for regular expression, the possibility to place an if/unless at end of line and nothing else. From your comment I think I missed some fundamental common trait, which one?

  • First I learned the C Shell because the customer for the project (US Air Force) wanted it. About two months after I joined the project, the customer changed its mind and wanted Korn Shell. (All this was before I ever saw a PC or used Windows.) Having experienced both, I much prefer Korn.

    I arranged with my Web host that my space on its Web server uses Korn. From my PC, I can enter a secure shell on the server to test my scripts. To a large extent, I can generate scripts in Korn without referring to any

  • English (Score:5, Funny)

    by Nkwe (604125) on Friday August 03, 2012 @11:43AM (#40868715)
    When I write my scripts in English, I find that the bulk of my audience can read them better.
    • When I write my scripts in English, I find that the bulk of my audience can read them better.

      What have you COBOL programmers been doing since that whole Y2K thing?

  • by Tirs (195467) on Friday August 03, 2012 @11:55AM (#40868925) Homepage

    Ten years ago, I was doing the Spanish version of an international project in a Incredibly Big Monster company which creates hardware and software. There was a module which was based in a large XML file with lots of nesting levels. In the morning of the deadline day for this module, I saw the Japanese tester desperately fighting to find a nesting error in her version. She told me she had been reviewing the file all night, and she couldn't find the problem. Well, my "help-ladies-in-distress" instinct kicked in, and I took her file, scratched a Perl script to keep track of nesting levels, tag pairings, etc, and run it through the file. One hour later, the problem was fixed.
    That day she decided that she would not let me escape, and today I'm happily married to her.

    So... PERL RULEZ!

    (Anyone knows if there is a "+1, Romantic" in Slashdot?)

  • For Windows, I use Powershell and VBScript. Powershell does more, but has a syntax designed by math morons with no human factors knowledge at all. VBscript is designed to be understood by humans with little effort - a no no at Microsoft, but has been crippled (It now crashes early and often) and ignored.

    On Linux, I think TCL is your best bet. While its syntax is as awful as Powershell, which it resembles somewhat, it really does work pretty well.

    • Powershell does have some useful tricks for parsing data into Active Directory and Exchange servers that are hard to match with mere batch files.

  • ... implies that one must presume that someone does not know any of the choices, and would be following a recommendation of which to learn FIRST or NEXT. Under that interpretation, it's Javascript hands down: it's a language used by billions of people worldwide, trillions of times a day. You can't get more "useful" than that.
  • It's "Lua" not "LUA" (Score:5, Informative)

    by Cthefuture (665326) on Friday August 03, 2012 @01:17PM (#40870077)

    Lua is not an acronym. From the Lua web page:
    "Lua" (pronounced LOO-ah) means "Moon" in Portuguese. As such, it is neither an acronym nor an abbreviation, but a noun.

    LuaJIT [luajit.org] is probably the fastest scripting language in existence. I have found for math-heavy algorithms it's as fast as optimized compiled C code. Plus it's FFI interface is stunningly fast, allowing easy fast access to native libraries.

  • TURTLE!
    Nuff Said!

  • by flogger (524072) <non@nonegiven> on Friday August 03, 2012 @02:13PM (#40870807) Journal
    Bash:

    #!/bin/bash
    STR="Hello World!"
    echo $STR

    Javascript:

    <script type="text/javascript">
    <!-- to hide script contents from old browsers
    document.write("Hello World!")
    // end hiding contents from old browsers -->
    </script>

    Lua:

    #!/usr/bin/lua
    print ("Hello World!")

    Perl:

    #!/usr/local/bin/perl
    print "Content-type: text/html\n\n";
    print "[H1]Hello World[/H1]\n";

    PHP:

    <?php
    Echo "Hello, World!";
    ?>

    Python:

    print "Hello, World!"

    Ruby:

    puts 'Hello world'

    C++

    #include <Something here>
    using namespace std;

    int main ()
    {
    cout [[ "Hello World!";
    return 0;
    }

    Why doesn't slashdot have a /code function? Replaced most Open,close tags with [ or ]. Oh geez, now my comment has too few characters per line. Here we are on a "Geeky" site and can't type out any code. Is Code now illeagal? Will the NSA,CIA, Google come after me now because I don;t have facebook and want to type code into slashdot. Grrr. So I guess that I will now type more meaningless stuff (looking...17.4 words average.) and I guess I will find out what the magic number is soon. Maybe it is 20. I know that spaces in the C++ code is very meaningful, not meaningless as slashcode seems to think. :( (Checking---20.7.. So 20 is not the magic number.) What will I need? Oh well, Will I need an average of 140 characters per line so I will be mini tweeting? Maybe I should go to the petition Government site and pressure sites like slashdot to not be so damn prohibitive. the only HTML code allowed here is [b], [i], [p], [br], [a], [ol], [ul] (Oh yeah, I can make an ordered or unordered list), [li], [dl], [dt], [dd], [em], [strong], [tt], [blockquote], [ecode], and [quote] Geez... Wait, what is ecode? Hmm... Will look into that. (Well, Now I can;t see what ecode looks like because I still can't get a preview. although I am up to 29.7 words per line average. You know, my dreams of getting a +5 informative comment is gone. This is gonna be modded as irrelevant, useless, and stupid. All I wanted to do was put out a few examples of 'Hello world' for the three clueless people on this site, and now I seem to have become the fourth clueless person. So I just went to Google to see if I could find how many characters per line I needed to make the stupid post. (I will make it - I am determined now. ) Oh look, there is a post with only 12 characters in the whole freaking post and what do I have? As of that question mark, I have an 37.6 and it isn;t good enough. Damn, slashdot, throw us people a bone and let us make meaningful posts. I was going to type, "Why can;t we type using code? Why can't I use more HTML? Why can't I...? But I know that there are a few trolls out there that would try to find malicious code, use [blink] tags (Wouldn;t that be fun - Welcome to Internet circa 1991,) or just do stupid stuff...(Checking my current characters...38.7 Geez. Maybe I need 40. Well damn, I ain;t stupid.OK maybe I am, but damn this is almost enough to make me mad. Almost. I still plan on doing what I was going to do today. It's my daughter's 18th and I wrote a small website commemorating it and announcing various gifts, added in a bunch of "dad" humor, threw in a few meme and pop culture references, etc. We are going to go car shopping afterward. But if I was really mad, I'd stay here until I got this post, I am not mad so I am going to continue doing today's planned activities. So I think I have made the point that I ain't mad, but I am frustrated. I don

    • println 'Hello, world'

    • by devent (1627873)

      And I don't know why we can't use BB tags or Textile [redcloth.org] to write comments. To write Html is such a pain. Or ask yourself, what is easier to write:

      [a href="somewebsite/foo.html"]Foo[/a] or "Foo":somewebsite/foo.html,
      [code]some code[/code] or @some code@
      [ul][li]My Item[/li][li]More Item[/li][/ul] or * My Item * More Item

  • AutoIT
  • Is there another one of these scripting languages than can run on a locked iPhone or iPad? I don't think so.

  • Depends on what you are doing.

    Unix admin? *sh and Perl fight it out, but really anyone that know Perl for that use likely learned sh first. Python also works well, but you still see a lot more sh and perl.

    Game dev or mods? Probably Lua. Lua is really great to embed in any application as an extension language due to its design and small size. And it is ridiculously fast (LuaJIT)

    Web dev? PHP, Python or Ruby. Which is most useful depends on what you mean by useful. There is still more PHP out there than the ot

  • If you're shell programming, Korn shell is better than bash (although bash generally has better interactive features).

  • If you can't do it in brainfuck [muppetlabs.com], is it worth doing?

    ...laura

  • DNA (Score:4, Funny)

    by Antipater (2053064) on Friday August 03, 2012 @04:10PM (#40872217)
    It's already ingrained in you; you just have to lie back and let someone coax it out. Of course, "Hello World!" takes about 9 months to run, and there are legal and ethical issues with debugging a program, but I think the results speak for themselves.
    • by H0p313ss (811249)

      Of course, "Hello World!" takes about 9 months to run, and there are legal and ethical issues with debugging a program, but I think the results speak for themselves.

      It's going to take another 9 to 12 months before the results speak for themselves, and even then it's only a few simple words. I don't think either of my kids said anything REALLY intelligent until kindergarten age.

  • What about PowerShell? Or are we only dealing with Linux scripting languages (cue jokes here).

  • Bash.. Nope, Perl (Score:4, Insightful)

    by TheNinjaroach (878876) on Friday August 03, 2012 @05:32PM (#40873157)
    My gut instinct was to go with bash. How else do you get so much done with a Linux box (or large collection of boxes)?

    But there are a lot of problems I couldn't (or wouldn't) solve with bash. Database connectivity, parsing files, or building a web page.

    So then I reached for PHP, because it's the most useful of what I know best.

    Then I got to thinking that Perl's the winner. It's prevalent, flexible, old (mostly in a good way) and has years of (Free) pre-made functionality available at CPAN. Plus, it gave birth to PCRE which is one of the most useful tools I know of.
  • by Osgeld (1900440) on Friday August 03, 2012 @08:39PM (#40874511)

    its lua fucktards, on the website its never all caps and everyone points this out for a reason, but here its LUA!!!! OMFGRARWAR

    anyway I voted lua, by itself its a very basic language, but its real reason is not to be its own language, its so dead simple to bind to C (whatever) and once you start doing that, you have a very easy and fast language to write in with whatever power you want exposed in a simple manner.

    "its pseudocode that works"

    and has its advantages

Some programming languages manage to absorb change, but withstand progress. -- Epigrams in Programming, ACM SIGPLAN Sept. 1982

 



Forgot your password?
Working...