orangecrumbs Data stories

Interest in programming languages hit a decade low on Hacker News.

After Claude Code’s launch, the share of Hacker News upvotes going to titles naming programming languages fell to its lowest level since 2016. AI-related titles gained ground.

01

Interest in programming languages has trended down, with a historic drop after Claude Code’s launch

We measure interest through Hacker News upvotes on submissions whose titles mention the relevant words. The chart shows their share of all eligible upvotes, counting each link once per month with no score threshold. AI topics use generic terms; GPT, ChatGPT and other brand and company names are excluded as matching terms.

Share of upvotes · trailing three months

January 2016 to August 2026. Programming-language titles reach a three-month upvote-share low of 3.9% in April 2026 and end at 4.4%. AI titles matched on generic terms, excluding GPT, ChatGPT and other brand and company names, end at 11.6%. Numbered vertical lines mark ChatGPT’s launch, Claude Code’s preview launch and the selected December 2025 takeoff reference.
Programming languages 4.4%AI topics, generic terms only 11.6%
  1. ChatGPT launch
    November 30, 2022
  2. Claude Code launch · research preview
    February 24, 2025
  3. Claude Code takeoff · selected reference
    December 2025

Legend values are June–August 2026. Each line divides its matching upvotes by all eligible upvotes over the same three months. The topics overlap: a title naming both AI and a language contributes to both lines. Event markers provide context, not a causal estimate.

Around ChatGPT’s launch, language titles accounted for 5.9% of upvotes in September–November 2022, versus 1.9% for AI topics. By June–August 2026, those shares were 4.4% and 11.6% respectively.

The low point came in February–April 2026, after both Claude Code’s initial release and the December 2025 takeoff reference. The series subsequently recovered somewhat, so the latest reading is above the trough. “Decade low” refers to this 2016-onward window: the earliest months of Hacker News had lower readings.

This is attention to language names in titles. It does not measure how much people program, which languages they use, or all programming discussion on HN. A falling share can reflect other topics gaining upvotes even without an equivalent drop in language posts.

02

Rust gets 1.7× Python’s submission share on Hacker News

Rust gained ground over the decade; Python and JavaScript now sit well below their earlier levels. Compare their share of upvotes or their share of submissions, with repeated links counted once per month in both views.

Three-language chart measure

Share of submissions (unique links) · trailing three months

Rust, Python and JavaScript shares of submissions (unique links), January 2016–August 2026. Latest three-month shares: Rust 0.9%, Python 0.5%, JavaScript 0.2%. Dotted vertical lines mark ChatGPT’s launch, Claude Code’s preview launch and the selected December 2025 takeoff reference.
Rust 0.9%Python 0.5%JavaScript 0.2%

All three lines share one vertical scale and the same denominator. Values show June–August 2026. Ratios use unrounded shares. Submission share counts each URL once per month, divided by all eligible unique links.

Looking at upvote shares

Rust leads, but has had higher peaks

Rust ends at 0.9%, versus Python’s 0.4% and JavaScript’s 0.2%. Its highest three-month share in this window was 1.4%, ending March 2021.

Zig has entered the leading group

Zig’s 0.4% share puts it just above Python in the latest three months. This ranks third among the 48 tracked categories, behind Rust and the combined HTML/CSS category.

The long tail has its own rhythms

C++ and Go end at 0.3% and 0.3%. Java is down to 0.1%, from 0.3% at the start of 2016. Smaller languages can move sharply on a handful of high-scoring posts.

03

Every language, on the same timeline

All 48 tracked categories, ordered by their latest three-month upvote share. Each chart shows both upvote share and submission share. Values beside each name cover June–August 2026.

Share of upvotesShare of submissions

All charts use Rust’s 0–1.5% axis. Heights are directly comparable; values are unchanged.

Rust

Upvotes 0.9%Submissions 0.9%
Rust, January 2016–August 2026. Solid line: upvote share, latest 0.9%. Dashed line: submission share, latest 0.9%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Rust, January 2016–August 2026. Solid line: upvote share, latest 0.9%. Dashed line: submission share, latest 0.9%. Unique links per month, trailing three-month sums. Individual axis 0–1.5%.

HTML/CSS

Upvotes 0.5%Submissions 0.4%
HTML/CSS, January 2016–August 2026. Solid line: upvote share, latest 0.5%. Dashed line: submission share, latest 0.4%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. HTML/CSS, January 2016–August 2026. Solid line: upvote share, latest 0.5%. Dashed line: submission share, latest 0.4%. Unique links per month, trailing three-month sums. Individual axis 0–1.0%.

Zig

Upvotes 0.4%Submissions 0.1%
Zig, January 2016–August 2026. Solid line: upvote share, latest 0.4%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Zig, January 2016–August 2026. Solid line: upvote share, latest 0.4%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–7.5 ×10⁻¹%.

Python

Upvotes 0.4%Submissions 0.5%
Python, January 2016–August 2026. Solid line: upvote share, latest 0.4%. Dashed line: submission share, latest 0.5%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Python, January 2016–August 2026. Solid line: upvote share, latest 0.4%. Dashed line: submission share, latest 0.5%. Unique links per month, trailing three-month sums. Individual axis 0–1.5%.

C++

Upvotes 0.3%Submissions 0.3%
C++, January 2016–August 2026. Solid line: upvote share, latest 0.3%. Dashed line: submission share, latest 0.3%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. C++, January 2016–August 2026. Solid line: upvote share, latest 0.3%. Dashed line: submission share, latest 0.3%. Unique links per month, trailing three-month sums. Individual axis 0–7.5 ×10⁻¹%.

Go

Upvotes 0.3%Submissions 0.3%
Go, January 2016–August 2026. Solid line: upvote share, latest 0.3%. Dashed line: submission share, latest 0.3%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Go, January 2016–August 2026. Solid line: upvote share, latest 0.3%. Dashed line: submission share, latest 0.3%. Unique links per month, trailing three-month sums. Individual axis 0–1.0%.

C

Upvotes 0.2%Submissions 0.2%
C, January 2016–August 2026. Solid line: upvote share, latest 0.2%. Dashed line: submission share, latest 0.2%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. C, January 2016–August 2026. Solid line: upvote share, latest 0.2%. Dashed line: submission share, latest 0.2%. Unique links per month, trailing three-month sums. Individual axis 0–7.5 ×10⁻¹%.

Lisp

Upvotes 0.2%Submissions 0.1%
Lisp, January 2016–August 2026. Solid line: upvote share, latest 0.2%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Lisp, January 2016–August 2026. Solid line: upvote share, latest 0.2%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.6%.

Bash/Shell

Upvotes 0.2%Submissions 0.1%
Bash/Shell, January 2016–August 2026. Solid line: upvote share, latest 0.2%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Bash/Shell, January 2016–August 2026. Solid line: upvote share, latest 0.2%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4%.

JavaScript

Upvotes 0.2%Submissions 0.2%
JavaScript, January 2016–August 2026. Solid line: upvote share, latest 0.2%. Dashed line: submission share, latest 0.2%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. JavaScript, January 2016–August 2026. Solid line: upvote share, latest 0.2%. Dashed line: submission share, latest 0.2%. Unique links per month, trailing three-month sums. Individual axis 0–1.5%.

Clojure

Upvotes 0.1%Submissions 0.1%
Clojure, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Clojure, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.3%.

SQL

Upvotes 0.1%Submissions 0.2%
SQL, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.2%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. SQL, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.2%. Unique links per month, trailing three-month sums. Individual axis 0–0.6%.

TypeScript

Upvotes 0.1%Submissions 0.2%
TypeScript, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.2%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. TypeScript, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.2%. Unique links per month, trailing three-month sums. Individual axis 0–0.4%.

Ruby

Upvotes 0.1%Submissions 0.1%
Ruby, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Ruby, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4%.

Java

Upvotes 0.1%Submissions 0.1%
Java, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Java, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.6%.

Elixir

Upvotes 0.1%Submissions <0.1%
Elixir, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Elixir, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4%.

Lua

Upvotes 0.1%Submissions <0.1%
Lua, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Lua, January 2016–August 2026. Solid line: upvote share, latest 0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.2%.

Swift

Upvotes <0.1%Submissions 0.1%
Swift, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Swift, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4%.

Mojo

Upvotes <0.1%Submissions <0.1%
Mojo, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Mojo, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.0 ×10⁻¹%.

Julia

Upvotes <0.1%Submissions <0.1%
Julia, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Julia, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.3%.

Gleam

Upvotes <0.1%Submissions <0.1%
Gleam, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Gleam, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.0 ×10⁻¹%.

Haskell

Upvotes <0.1%Submissions 0.1%
Haskell, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Haskell, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4%.

OCaml

Upvotes <0.1%Submissions <0.1%
OCaml, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. OCaml, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.2%.

Nix

Upvotes <0.1%Submissions <0.1%
Nix, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Nix, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.0 ×10⁻¹%.

Assembly

Upvotes <0.1%Submissions <0.1%
Assembly, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Assembly, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.3%.

C#

Upvotes <0.1%Submissions <0.1%
C#, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. C#, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.2%.

Prolog

Upvotes <0.1%Submissions <0.1%
Prolog, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Prolog, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.5 ×10⁻¹%.

PHP

Upvotes <0.1%Submissions 0.1%
PHP, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. PHP, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest 0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.3%.

Kotlin

Upvotes <0.1%Submissions <0.1%
Kotlin, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Kotlin, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4%.

Odin

Upvotes <0.1%Submissions <0.1%
Odin, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Odin, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4 ×10⁻¹%.

COBOL

Upvotes <0.1%Submissions <0.1%
COBOL, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. COBOL, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.5 ×10⁻¹%.

Erlang

Upvotes <0.1%Submissions <0.1%
Erlang, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Erlang, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.3%.

Scala

Upvotes <0.1%Submissions <0.1%
Scala, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Scala, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.3%.

Delphi

Upvotes <0.1%Submissions <0.1%
Delphi, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Delphi, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.6 ×10⁻¹%.

R

Upvotes <0.1%Submissions <0.1%
R, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. R, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.5 ×10⁻¹%.

MicroPython

Upvotes <0.1%Submissions <0.1%
MicroPython, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. MicroPython, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.3 ×10⁻¹%.

Fortran

Upvotes <0.1%Submissions <0.1%
Fortran, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Fortran, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.6 ×10⁻¹%.

MATLAB

Upvotes <0.1%Submissions <0.1%
MATLAB, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. MATLAB, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4 ×10⁻¹%.

Ada

Upvotes <0.1%Submissions <0.1%
Ada, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Ada, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.0 ×10⁻¹%.

Dart

Upvotes <0.1%Submissions <0.1%
Dart, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Dart, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4 ×10⁻¹%.

Visual Basic (.Net)

Upvotes <0.1%Submissions <0.1%
Visual Basic (.Net), January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Visual Basic (.Net), January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.0 ×10⁻¹%.

Perl

Upvotes <0.1%Submissions <0.1%
Perl, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Perl, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.2%.

PowerShell

Upvotes <0.1%Submissions <0.1%
PowerShell, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. PowerShell, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.2%.

F#

Upvotes <0.1%Submissions <0.1%
F#, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. F#, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–1.0 ×10⁻¹%.

Groovy

Upvotes <0.1%Submissions <0.1%
Groovy, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Groovy, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.2 ×10⁻¹%.

VBA

Upvotes <0.1%Submissions <0.1%
VBA, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. VBA, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.3 ×10⁻¹%.

GDScript

Upvotes <0.1%Submissions <0.1%
GDScript, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. GDScript, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4 ×10⁻²%.

Objective-C

Upvotes <0.1%Submissions <0.1%
Objective-C, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Shared axis 0–1.5%. Objective-C, January 2016–August 2026. Solid line: upvote share, latest <0.1%. Dashed line: submission share, latest <0.1%. Unique links per month, trailing three-month sums. Individual axis 0–0.4 ×10⁻¹%.

Every card covers January 2016–August 2026. Uncheck “Rust for scale” to give each language its own axis, shared by both lines. All axes start at zero. Labels round to one decimal; small nonzero shares that would round to zero are shown as <0.1%. Small individual axes use a power-of-ten multiplier. A title naming several languages contributes to each matching language, so these shares should not be added together.

More from OrangeCrumbs

Subscribe to OrangeCrumbs updates

Occasional emails with new data stories and projects from OrangeCrumbs. No fixed schedule. Unsubscribe anytime.

About the data

What is measured
Upvotes on surviving URL submissions in our existing Hacker News archive, measured through recorded scores. Titles are searched; comments, article text and URL destinations are not. Most Ask HN and other text-only submissions, deleted/dead posts and HN-internal links are absent. The full archive contains 4,476,541 stored link submissions through September 7, 2026. Charts stop at the last complete month, August.
One link per month
Equivalent URLs count once in each UTC month. URL keys normalize HTTP/HTTPS, hostname case and leading “www”; paths, queries and fragments are retained. A link posted in another month counts again. This is conservative URL deduplication, not a claim that every article has been identified across all its URLs.
Share of upvotes
For each URL and month, the denominator uses its highest recorded score among all eligible submissions. Each topic or language uses the highest score among submissions whose titles match it. A higher-scoring nonmatching repost cannot supply its score. We sum over three months, then divide matching scores by all eligible scores. January 2016 includes November–December 2015. There is no minimum score filter.
Share of submissions
Distinct URLs with at least one matching title, divided by all eligible distinct URLs in the same month. A URL with several matching submissions still counts once. For the three-month line, we divide the sum of monthly matching-link counts by the sum of monthly eligible-link counts, rather than averaging monthly percentages.
Language matching
42 categories from the 2025 Stack Overflow survey, plus Haskell, Julia, Clojure, Objective-C, Nix and Odin. Rule-based aliases and context checks handle ambiguous names such as Go, C and R. HTML/CSS and Bash/Shell are combined categories. Framework-only titles do not automatically count as their implementation language; Nix includes package-tool mentions. The rules can miss real mentions and retain false positives.
AI matching
Case-insensitive title keywords: AI / AIs; AGI; ASI; artificial intelligence; artificial general intelligence; artificial superintelligence; generative AI / GenAI; machine learning; ML; deep learning; neural network(s); LLM / LLMs; large language model(s). GPT (including numbered versions), ChatGPT and other brand and company names, such as Claude, Gemini, OpenAI and Anthropic, are excluded as matching terms. A title containing those names still qualifies if a listed generic AI term appears. ML is literal and can also match the ML programming language. AI and language categories overlap.
Scores and timing
“Upvotes” uses recorded Hacker News scores as a proxy. These are score snapshots, not a count of raw vote events or votes cast during a particular month. They are assigned to the submission month. Scores combine the archive with documented repairs; exact Algolia scores were retrieved on September 16, 2026 for affected months in late 2022 and December 2025. Only existing archive IDs were updated in the analysis. Some unavailable scores remain unrepaired, and scores are not observed at a uniform post age.
Reading the events
ChatGPT and Claude Code launch dates come from their original announcements. December 2025 is a selected reference for Claude Code’s takeoff, not a measured breakpoint. The chart is descriptive: it cannot isolate an effect of any product launch from wider changes in technology, posting behavior, title wording or voting.