Python overtakes Java, JavaScript as most popular programming language for first time in 20 years

What just happened? For the 1st time in far more than 20 a long time, the Python programming language has overtaken Java, JavaScript, and C as the most common language. The up-to-date rankings for Oct exposed the achievement by using Tiobe, an index that calculates the conclusions primarily based on net searches.

Tiobe, a agency that focus in examining and tracking the high-quality of program, has tracked the popularity of programming languages for the earlier two a long time. It makes use of queries on well-liked look for engines and sites like Google, Bing, Yahoo!, Wikipedia and YouTube to assemble its index. A full of 25 search engines and websites are examined in the method.

The index by itself is not about the best programming language per se or the language in which the most strains of code have been composed, but strictly the volume of lookups for languages on research engines. So although some may not just take the feat obtained by Python seriously dependent on the methodology used, it’s continue to an critical milestone specified it’s the initial time in 20 several years Python has topped the rankings.

“Python, which began as a simple scripting language, as an alternate to Perl, has develop into experienced. Its ease of understanding, its enormous volume of libraries, and its prevalent use in all forms of domains, has produced it the most well-liked programming language of right now,” reported Tiobe CEO Paul Jansen.

As shown in Tiobe’s ‘Programming Language of the Year’ list, awarded for possessing the greatest increase in scores in a yr, Python has held by itself in the discussion amongst the other preferred languages because 2007 by profitable four periods.

Python topping the index, nonetheless, was not essentially for the reason that of an boost in lookups. In its place, other languages falling in queries saw that an 11.27 p.c share for Python was more than enough for it to acquire the guide. C fell 5.79 per cent compared to Oct 2020 for an 11.16 % share on the index, though Java fell 2.11 p.c to 10.46 per cent.

Read More... Read More

Need A New Programming Language? Try Zig

Maybe you’ve heard of it, maybe you haven’t. Zig is a new programming language that seems to be growing in popularity. Let’s do a quick dive into what it is, why it’s unique, and what sort of things you would use it for. (Ed Note: Other than “for great justice“, naturally.)

What Is It?

You’ve likely heard of Rust as it has made significant inroads in critical low-level infrastructures such as operating systems and embedded microcontrollers. As a gross oversimplification, it offers memory safety and many traditional runtime checks pushed to compile time. It has been the darling of many posts here at Hackaday as it offers some unique advantages. With Rust on the rise, it makes sense that there might be some space for some new players. Languages like Julia, Go, Swift, and even Racket are all relative newcomers vying for the highly coveted mindshare of software engineers everywhere.

So let’s talk Zig. In a broad sense, Zig is really trying to provide some of the safety of Rust with the simplicity and ease of C. It touts a few core features such as:

  • No hidden control flow
  • No hidden memory allocations
  • No preprocessor, no macros
  • First-class support for optional standard library
  • Interoperable by design
  • Adjustable Runtime Safety
  • Compile-time code-execution

The last one, in particular, is perhaps the most interesting, but we’ll come back to that. Let’s look at some code, but skipping past hello world and headed straight to opening a file. Here’s the C++ code:

#include <iostream>
#include <fstream>
#include <string>

using namespace std;
int main (int argc, char const *argv[]) {
  ifstream file("nonexistingfile.txt");

  char buffer[1024];
  file.read(buffer, sizeof(buffer));

  cout << buffer << endl;

  file.close();
  return 0;
}

Now let’s look at some comparable Zig code:

const std = @import("std");

using namespace std.fs;

pub fn main() !void {
    const stdout = std.io.getStdOut().writer();

    const file = try cwd().openFile(
        "nonexistingfile.txt",
        .{ .read = true },
    );
    defer file.close();

    var buffer: [1024]u8 = undefined;
    const size = try file.readAll(buffer[0..]);

    try stdout.writeAll(buffer[0..size]);
}

(Thanks to Erik Engheim

Read More... Read More