Slashdot Mirror


GitHub Commits Reveal The Top 'Weekend Programming' Languages (medium.com)

An anonymous reader writes: Google "developer advocate" Felipe Hoffa has determined the top "weekend programming languages," those which see the biggest spike in commit activity on the weekends. "Clearly 2016 was a year dedicated to play with functional languages, up and coming paradigms, and scripting 3d worlds," he writes, revealing that the top weekend programming languages are:

Rust, Glsl, D, Haskell, Common Lisp, Kicad, Emacs Lisp, Lua, Scheme, Julia, Elm, Eagle, Racket, Dart, Nsis, Clojure, Kotlin, Elixir, F#, Ocaml

Earlier this week another data scientist calculated ended up with an entirely different list by counting the frequency of each language's tag in StackOverflow questions. But Hoffa's analysis was performed using Google's BigQuery web service, and he's also compiled a list of 2016's least popular weekend languages -- the ones people seem to prefer using at the office rather than in their own free time.

Nginx, Matlab, Processing, Vue, Fortran, Visual Basic, Objective-C++, Plsql, Plpgsql, Web Ontology Language, Smarty, Groovy, Batchfile, Objective-C, Powershell, Xslt, Cucumber, Hcl, Puppet, Gcc Machine Description

What's most interesting is the changes over time. In the last year Perl has become more popular than Java, PHP, and ASP as a weekend programming language. And Rust "used to be a weekday language," Hoffa writes, but it soon also grew more popular for Saturdays and Sunday. Meanwhile, "The more popular Go grows, the more it settles as a weekday language," while Puppet "is the champion of weekday coders." Ruby on the other hand, is "slowly leaving the week and embracing the weekend."

Hoffa is also a long-time Slashdot reader who analyzed one billion files on GitHub last summer to determine whether they'd been indented with spaces or tabs. But does this new list resonate with anybody? What languages are you using for your weekend coding projects?

18 of 149 comments (clear)

  1. Java by Anonymous Coward · · Score: 2, Informative

    Java is the classic weekday language, taking COBOL's place.

    Not that it's poorly designed, but... getting the right things to happen is work that people need to get paid for.

  2. Weekend? As in fart with, not work with? by Snotnose · · Score: 4, Interesting

    Learned Java on my own a couple years ago, but have never used it in a professional environment. Do a lot of Python on my own. Do C/perl/bash/some C++ at work.

    Love Python, Java is OK.

    Then again, I've never used github neither personally nor professionally, I'm gonna guess these results are biased heavily towards github users, the rest of us (Perforce for me) are completely left out.

    / several years ago we were writing a new test suite
    // I wanted Python, most others wanted Perl
    /// Boss said "3,000 engineers here know Perl, you know Python. Wanna support 3,000 engineers?"
    //// bummer, but he had a damned valid point

  3. Re:What brand of hammer? by Jeremi · · Score: 4, Funny

    Programming languages do not matter. Any program can be written in any language. Programming languages are as interchangeable as hammers.

    Yes, that's why I write all of my software in Brainfuck, except for the performance-critical parts which I implement directly as a Turing Machine specification. My "hello world" app might not ship for another 18 months, but when it's finally done it's gonna be awesome.

    --


    I don't care if it's 90,000 hectares. That lake was not my doing.
  4. Re:What brand of hammer? by K.+S.+Kyosuke · · Score: 2

    Programming languages do not matter. Any program can be written in any language

    I wanted to write a non-deterministic term rewriting system in Lisp, but now that you've enlightened me, I'm going to write it in COBOL.

    --
    Ezekiel 23:20
  5. Re:What brand of hammer? by vux984 · · Score: 4, Insightful

    What brand of hammer do you use for your weekend carpentry projects?

    I think that's the point. We try out and play with new tools on the weekend.

    Programming languages do not matter.

    They are all tools for essentially the same thing - banging, but they are not identical, and it makes difference what you use. And that's WHY we try new ones, to see if they make our lives easier or not.

    Many of them are lousy, and many more are fine, but no better than what we already have, but some of them do make certain things easier in certain projects, and might transition to our regular toolboxes.

    Programming languages are as interchangeable as hammers.

    I have a regular old claw hammer from Sears for most things. I have a small finishing hammer for stuff like hanging pictures and building bird houses. My brother has a nailgun that I'd borrow if i were doing a big project like framing a basement. I've never had cause to use a ball peen hammer... but if i did any metalworking i'd probably quickly find my claw hammer ... inadequate. I don't have a rubber mallet either, but frequently find myself having to 'work around' not having one... enough that at some point I'll get one.

  6. Re: What brand of hammer? by Dixie_Flatline · · Score: 2

    Well, emacs lisp is the language that all the extensions and most of the editor is written in, so yes, it matters. The SDKs I'm provided to work on game consoles are all in C++, so we work in C++.

    The fact that all these languages are tiring complete doesn't do away with their advantages or disadvantages. In the real world, these choices have consequences.

  7. Elisp is a Friday afternoon language by Dixie_Flatline · · Score: 2

    So during the week, I get my normal work done, but on Friday afternoons, if I've been frustrated with some part of the build system I've written or I want to make something about my process better, I work on tinkering with emacs. Few people need elisp as their main language, but if they're using emacs, they're working in elisp on the weekends to make the rest of their week more liveable.

  8. mhmhmh by Anonymous Coward · · Score: 2, Funny

    I write FORTRAN in every language!

  9. You mean hardly at all? by SuperKendall · · Score: 5, Insightful

    Programming languages are as interchangeable as hammers.

    You sound like someone who has never visited the majesty of the Hammer Museum.

    The comparison of programming languages to hammers in inadvertently apt; you conclusion not at all.

    Some programs are simply much better at some tasks than others. That is why it's good to be familiar with several, instead of just choosing one and claiming " Programming languages are as interchangeable as hammers.".

    --
    "There is more worth loving than we have strength to love." - Brian Jay Stanley
  10. Kicad? by jenningsthecat · · Score: 4, Insightful

    top weekend programming languages are: Rust, Glsl... Kicad...

    I use KiCad to create schematics and PCB designs. When, and how, did it become a programming language?

    --
    'The Economy' is a giant Ponzi scheme whose most pitiable suckers are the youngest among us and the yet-unborn.
    1. Re: Kicad? by BeaverCleaver · · Score: 3, Informative

      I came here to ask the same thing. Maybe because KiCad component footprints are hosted on GitHub, it got counted as a "language." And given the number of PCBs for hobby projects which get developed on weekends, this might account for its popularity.

  11. Re:coding is for losers by sitarlo · · Score: 2

    Somewhat true. I author software mostly in Unity these days using state machines and I am developing the deepest, most rich and robust applications of my 30+ year career in software development absolutely code free. If you are still churning out lines of application code I highly recommend learning about the excellent x-platform tools like Unity that are available today. If you are writing device drivers or native utilities in C or Assembly, then my hat is off to you for actually practicing programming. Scripting, no matter how sophisticated, is somewhat banal when you think about it. Applying endless standards and APIs to recreate what has already be done before. There just isn't enough risk in it for it to be actually innovative. I'm not pointing fingers, the game engine centric development I do these days is even higher abstraction from the machine, but there is a sense of freedom working in simulated space and time. It's not really programming, it's more like experience design. And for the grossly divisive posts below, imagine a world where people are not judged by the color of their skin or the country they came from. Isn't it a better place?

  12. Population of Github users by Tony+Isaac · · Score: 3, Insightful

    Github is especially popular with the Linux crowd. It was, after all, invented to improve development coordination of Linux.

    This population skews the results in three significant ways:
    1. Towards obscure and fad languages. This is linked to the extreme fracturing of Linux programmers, each group of which fiercely promotes its own favorite language and tools.
    2. Away from Windows. GitHub is especially popular with the open source crowd. This means that C# and .NET languages (favored by programmers who want to make money with their code) will be underrepresented in the statistics.
    3. Away from projects developed by less-than-genius developers. GitHub still has a steep learning curve for a lot of developers to master, especially those who have been raised on TFS and SubVersion. The obsession with cloning and branching is foreign to these programmers, and they often don't see the point. These types of programmers are typically creating relatively straightforward Web applications, and tend to write their code in C#.

    I suspect that the real numbers for weekend coding would feature Microsoft .NET languages much more prominently, if all types of repositories could be counted.

    1. Re:Population of Github users by squiggleslash · · Score: 2

      (Replying to myself):To clarify, Team Services is a Github rival, not a git rival. TS even offers git hosting as an option.

      --
      You are not alone. This is not normal. None of this is normal.
  13. uhm.. by superwiz · · Score: 2

    Counting the most commits is only a step above counting kloc's. Or is it just the new kloc? If a language is at the point where it finally has it together (good std library support, intuitive syntax, etc.) one might expect projects in that language to get to stable condition much faster with fewer commits. The more messy and error-inducing a language is, the more the projects in it need to be fixed. So it would see more commits (assuming enough people are conned into using it).

    --
    Any guest worker system is indistinguishable from indentured servitude.
  14. Re:What brand of hammer? by MillionthMonkey · · Score: 2

    Programming languages do not matter. Any program can be written in any language. Programming languages are as interchangeable as hammers.

    That's taking the concept of a Turing completeness a little too far. Malbolge is Turing complete and can theoretically do anything that Java can do. This is "Hello World" in Malbolge:

    (=<`#9]~6ZY32Vx/4Rs+0No-&Jk)"Fh}|Bcy?`=*z]Kw%oG4UUS0/@-ejc(:'8dc

    That string of code was not written by hand- it was generated by a beam search algorithm.

  15. Nginx ? by Anonymous Coward · · Score: 2, Insightful

    So Nginx is a programming language now ? I always thought it was an HTTP and proxy server, not a programming language.

  16. The Multi-Platform Livecode by Nonsanity · · Score: 2

    I've used Livecode for all my "I need a program to do X immediately" needs for years. It has since become open source and free for most usesâ"including all of mine. The paid additional features, like compiling for iOS, are always available if needed. One if the best parts if using Livecode is its integrated IDE. It is exceedingly simple to fire it up, create a New project, and drag a few text fields and buttons on to its window. I've been using the language, or one of its ancestors, since 1988 when I first started using HyperCard on Macs. But Livecode today runs equally well on all platforms. Being able to compile from any of those platforms to make a stand-alone executable for any other has also been invaluable. I always recommend Livecode to anyone that wants to learn a little bit of programming. It's quick and easy to learn and use.