TNS
VOXPOP
Will JavaScript type annotations kill TypeScript?
The creators of Svelte and Turbo 8 both dropped TS recently saying that "it's not worth it".
Yes: If JavaScript gets type annotations then there's no reason for TypeScript to exist.
0%
No: TypeScript remains the best language for structuring large enterprise applications.
0%
TBD: The existing user base and its corpensource owner means that TypeScript isn’t likely to reach EOL without a putting up a fight.
0%
I hope they both die. I mean, if you really need strong types in the browser then you could leverage WASM and use a real programming language.
0%
I don’t know and I don’t care.
0%
Open Source / Software Development

This Week in Programming: The Copilot Generational Divide

Jul 10th, 2021 6:00am by
Featued image for: This Week in Programming: The Copilot Generational Divide
Feature photo by Guilherme Stecanella on Unsplash.

Last week, GitHub launched GitHub Copilot, a feature the company refers to as “your AI pair programmer,” and much of the internet immediately erupted in righteous indignation over the new feature, while the rest of it went “whoah, this is really cool.”

The gist of the indignation came down to the fact that GitHub Copilot is built using OpenAI Codex, which uses as its training set pretty much all publicly available code on GitHub — including code with viral copyleft licensing, such as GPL. As we discussed last week, however, many preliminary examinations by those in the legal field seemed to align with that of GitHub, which sees the entire thing as a case of “fair use.” Not to mention, GitHub’s terms of service also has a very pertinent paragraph in which all of its users basically sign over their rights for their code to be used by the company for a variety of things, which may broadly apply to the scenario seen here.

Unsurprisingly, last week’s debate has carried over into this week, and at least one lawsuit appears to be in the works. Nora Tindall, developer and co-author of “Programming Rust,” has said that she has reached out to both the Electronic Frontier Foundation and the Free Software Foundation to pursue a class-action lawsuit following GitHub’s admission that they trained Copilot using “all public GitHub code.”

The argument hasn’t qualitatively changed from last week, with many developers arguing that the code that Copilot creates is, in essence, a “derivative” work. Meanwhile, yet another piece came out this week, again not only positing that GitHub Copilot is not infringing your copyright but also arguing that the move to restrict it from using copyleft licenses may actually be ill-advised.

In the blog post, Julia Reda, a researcher who focused on copyright reform during her time as a Member of the European Parliament, takes up similar issues to those we saw last week, but also argues that the reaction to GitHub Copilot is antithetical to the end goals of copyleft licenses.

“Because a large company — namely GitHub’s parent company Microsoft — profits from analyzing free software and builds a commercial service on it, the idea of using copyright law to prohibit Microsoft from doing say may seem obvious to copyleft enthusiasts,” she wrote. “However, by doing so, the copyleft scene is essentially demanding an extension of copyright to actions that have for good reason not been covered by copyright. These extensions would have fatal consequences for the very open culture which copyleft licenses seek to promote.”

Obviously, we aren’t going to get to the bottom of this debate quickly, and on the point of legality, perhaps only through lawsuits (and the inevitable appeals and so on) will we get to firm ground on what appears to be new legal territory. But this point by Reda is a good pivot point toward another take on this whole ordeal, this time not arguing whether Copilot is necessarily good or bad, legal or illicit, but rather focusing on the reaction to it, and how it may be drawn along generational lines.

In his Twitter thread, Chef co-founder and System Initiative CEO Adam Jacob discusses how the discourse around Copilot is likely shaped in many ways by the evolution of open source, the influence of corporate money, and the differing perspectives between those who lived through working to make open source software “legit” and those who were born into the existing system.

For Jacob, the whole “kerfuffle” around Copilot appears to be a tenuous one, where perhaps some of the older ideals are being taken for granted, yet at the same time, there are new ideas that need to be heard and considered, rather than dismissed. Arguing against the backlash “is the equivalent of saying that kids these days don’t understand ‘real music’,” he writes. “It’s a nostalgia and superiority trip for the folks who created the status quo.”

I can only wonder one thing — would the reaction have been the same if Copilot had been released as a free and open source piece of software itself?

This Week in Programming

  • The Push for Rust in Linux Continues… with Updates: It would appear that the (likely) inclusion of Rust in the Linux kernel we wrote about in March is well underway, according to a message from Miguel Ojeda, a software developer and maintainer of the Rust for Linux project. The message includes several updates on the project’s progress, which includes support for testing, a beta compiler, ARM and RISCV architectures, and a note that “support is good enough that kernel developers can start working on the Rust abstractions for subsystems and write drivers and other modules.” Ojeda also notes that the project has found the support of Microsoft, ARM, IBM, Google, and the Internet Security Research Group for the inclusion of Rust in Linux, as well as the financial support of those last two. For those of you interested in learning more, keep an eye out for a couple of talks proposed for this year’s Linux Plumbers Conference (LPC), as well as “a new conference that focuses on Rust and the Linux kernel,” the first of which will take place virtually and before this year’s LPC.
  • Java, C, And Python Jockey for Position: As ever, the TIOBE Index is keeping track of programming language popularity on a monthly basis, and this month they see echoes of the past, as they note that two of the top languages are the same as when they started tracking them back in 2001. “The top 3 of the first TIOBE index were Java, C, and C++. Today’s story looks strikingly similar. The first 3 programming languages are C, Java, and Python now. It is interesting to see that these 3 languages are getting closer than ever before. The difference between position 1 and position 3 is only 0.67%.” Of course, I wouldn’t put too much stock in this stuff, but it’s entertaining if nothing else to watch the ever-running horse race of programming language popularity, ain’t it?

Group Created with Sketch.
THE NEW STACK UPDATE A newsletter digest of the week’s most important stories & analyses.