Fork me on GitHub

JSer.info 15주년: 15년간 JavaScript 돌아보기

Translator: rewrite0w0 Edit on GitHub See Revisions

2011년 1월 16일 시작한 JSer.info은, 2026년 1월 16일로 15주년을 맞이했습니다🎉

JSer.info는 15년간 820건 글을 공개, 13,606건 사이트/읽을거리/라이브러리를 소개했습니다. 또한, 1회 갱신을 15년간 지속했습니다.

이 글에서는, 15년간 JSer.info 데이터를 돌아보며, JavaScript 에코시스템이 어떻게 변화했는지 알아보려합니다.

다만, 이 글 데이터는 JSer.info에 소개된 글 위주이므로, JavaScript 에코시스템 전체를 대표하지는 않습니다.
또한, 2024-2025년은 JSer.info 자체 갱신 수가 적어졌기에, 데이터에도 2025년에 감소 경향이 있으므로 이를 주의해주시길 바랍니다.


15년간의 기본 통계

항목 수치
총 투고수 820회
총 소개된 읽을거리 수 13,606건
운영기간 2011년 1월 〜 2026년 1월(15년간)
평균갱신빈도 주 1회

연별로 소개 글을 보면, 2013년 1,269건 피크였으며, 근래는 600〜700건 추이입니다. 한편으로, 하나의 글의 소개 길이가 15년간 약 2배로 증가해, 「양보다 질」로 스타일 변화가 있습니다.

연도 소개된 글 투고수 1투고당 소개문 평균 글자수
2011 915 65 14.1건 62자
2013 1,269 57 22.3건 58자
2017 1,068 54 19.8건 79자
2019 790 53 14.9건 90자
2021 789 53 14.9건 101자
2025 552 41 13.5건 108자

15년간 기본 통계

그리고, 2025년은 투고 페이스가 조금 떨어졌기에 투고 횟수도 적어졌습니다.
이에, 이후에 등장하는 데이터에도 2025년에 감소하는 경향이 있다는 점을 주의해주십시오.


정보원의 변화: 개인블로그에서 공식 문서로

15년간 가장 큰 변화는, 정보원의 구성입니다.

초기(2011-2013년)주요 정보원

  1. github.com (327건)
  2. d.hatena.ne.jp (154건)
  3. slideshare.net (147건)
  4. amazon.co.jp (98건)
  5. amazon.com (83건)

중기(2017-2019년)주요 정보원

  1. github.com (828건)
  2. medium.com (134건)
  3. developers.google.com (103건)
  4. webkit.org (69건)
  5. nodejs.org (64건)

후기(2023-2025년)주요 정보원

  1. github.com (568건)
  2. nodejs.org (98건)
  3. bun.sh (62건)
  4. zenn.dev (56건)
  5. developer.chrome.com (55건)

GitHub가 일관되게 최대 정보원인 것은 다르지 않지만, 그 주변은 큰 변화가 있습니다.

정보원의 변화

초기에는 하테나 다이어리SlideShare, Amazon(도서) 가 상위였지만. 개인 블로그나 스터디그룹 슬라이드, 도서가 주요 정보원인 시대였씁니다.

중기에는 Medium가 많아졌으며, 브라우저 벤더의 공식 문서/블로그(developers.google.com나 webkit.org)가 상위에 있었습니다. 개인 블로그 플랫폼이 하테나에서 Medium으로 이동했고, 동시에 브라우저 벤더에서의 1차 정보가 중요해진 시기입니다.

후기에는 공식 문서/블로그(nodejs.org, developer.chrome.com, bun.sh)나 zenn.dev 가 상위에 있습니다. Medium은 모습을 감췄고, 1차 정보원으로 직접 접근이 증가했습니다.

콘텐츠 타입의 변화

종류 2011-2013 2014-2016 2017-2019 2020-2022 2023-2025
출시 노트 560 750 862 937 986
해설 글 719 692 813 617 526
라이브러리/도구 371 599 446 397 191
슬라이드/영상 292 309 170 60 49
도서 192 203 135 73 45
튜토리얼 97 154 93 33 14

콘텐츠 타입의 변화

출시 노트는 일관되게 증가됩니다. 한편, 슬라이드/영상, 도서, 튜토리얼 학습 콘텐츠가 적어졌습니다. 이는 공식 문서가 충실해지고 GitHub 출시 노트가 정보 발언 중심적으로 되면서, 스터티 그룹의 슬라이드나 도서 소개가 적어진 것을 반영합니다.


일본어 플랫폼 변천

JSer.info에 소개된 일본어 기술 블로그도, 15년간 플랫폼이 크게 변경되었습니다.

연도 하테나 Qiita Zenn
2011 92 0 0
2014 29 19 0
2016 10 45 0
2020 3 4 3
2021 1 1 22
2024 2 1 24

하테나 다이어리/하테나 블로그 → Qiita → Zenn 흐름으로 소개 글 플랫폼이 변화했습니다.

일본어 플랫폼 변천

다만, 전체적으로 일본어 자료 비율은 점점 적어져, 5% 전후로 정착되고 있습니다.
(타이틀만 보았으므로, 실제로는 더 높을 가능성이 있습니다)

연도 일본어자료 합계 비율
2011 203 915 22.2%
2012 194 1126 17.2%
2013 150 1269 11.8%
2014 114 1147 9.9%
2015 80 1043 7.7%
2016 93 1078 8.6%
2017 67 1068 6.3%
2018 64 921 6.9%
2019 26 790 3.3%
2020 25 810 3.1%
2021 43 789 5.4%
2022 33 712 4.6%
2023 42 737 5.7%
2024 44 638 6.9%
2025 26 552 4.7%

일본어 자료 비율 추이

이는 JSer.info가 의도적으로 일본어를 피한 것이 아니라, JavaScript의 1차 정보원이 거의 영어로 되어있다는 것을 반영합니다. 브라우저 벤더, 공식 사이트/프로젝트, 주요한 라이브러리의 관리자는 거의 대부분 영어로 정보를 제공합니다.


기술 트렌드의 변천

UI 프레임워크: jQuery → Angular → React

연도 jQuery Angular React Vue
2011 109 1 0 0
2013 86 44 6 0
2014 35 49 52 11
2015 29 30 103 10
2017 7 34 153 28
2019 9 9 84 20
2021 8 6 84 23
2025 1 4 82 4

2011년은 jQuery가 가장 많았고, 2013년/2014년경에는 Angular/React/Vue가 증가, 2015년에는 React가 크게 증가했습니다. 2017년에 React는 153건으로 피크였고, 그 이후에는 안정기에 들어왔습니다.

2025년에는 React의 건수가 피크때보다 절반정도 되었찌만, 이는 React 자체가 성숙해지면서, 매주 새로운 뉴스가 적어졌다는 것을 의미합니다.

UI 프레임워크 변천

빌드도구: webpack → Vite

연도 webpack Rollup esbuild Vite
2016 33 2 0 0
2017 43 8 0 0
2020 26 7 5 1
2022 11 3 9 28
2023 13 10 16 36
2025 8 2 6 23

webpack은 2017년이 가장 많고, 2020년까지는 화두였습니다.
한 편 2020년에 esbuild가 등장, 2022년 Vite 소개 글 숫자가 webpack를 앞섰습니다.

JSer.info에도, esbuild 등장 이후는 Rust나 Go로 작성된 도구 소개가 증가했습니다. 「JavaScript 도구는 JavaScript로 작성」 전제가 변화해, 성능 기대치가 변화된 것을 반영되었습니다.

빌드 도구 추이

런타임: Node.js 1강에서 다양화로

연도 Deno Bun
2020 13 0
2021 21 1
2022 21 5
2023 19 27
2024 18 26

2020년에 Deno 1.0가 출시되고, 2022년에 Bun이 등장. Node.js 1강 시대에서, 복수 런타임이 경쟁하는 시대로 옮겨졌습니다.

특히 Bun은 2023년 1.0 출시 이후로 안정적으로 출시함에 따라, JSer.info에도 자주 소개되었습니다.

런타임 다양화


JSer.info에 언급이 변화한 기술

15년간 언급이 없어진 기술(2011-2013 → 2023-2025)

기술 초기 후기
Backbone.js 75 0
CoffeeScript 71 0
AMD/RequireJS 74 3
Grunt 49 0
PhantomJS 37 0
Bower 13 0

이 기술은 당시에는 자주 사용되었지만, 지금은 JSer.info에서 다뤄지지 않습니다.

Backbone.js와 CoffeeScript는 2011-2012년 무렵에 자주 소개되었습니다. AMD와 RequireJS은 모듈 시스템 선두주자 였찌만, ES Modules이 표준화됨에 따라 역할을 다했습니다. Grunt/Gulp는 npm scripts이나 빌드 도구로 변경되었고, PhantomJS은 Puppeteer/Playwright에 대체되었습니다.

15년간 언급이 늘어난 기술

기술 초기 후기
ESM/import 2 117
Rust 1 40
WebAssembly 0 51
monorepo 0 14

ECMAScript Modules은 2015년 ES2015에 사양화되었습니다만, 브라우저와 Node.js 양쪽에서 실용적으로 사용하게 된 것은 2020년 이후 입니다.

Rust 언급은, SWC/Rspack/Biome/OxC 툴체인 연관입니다. JavaScript 에코시스템에, 치명적으로 성능이 문제 있는 부분은 Rust나 Go로 작성되는 것이 증가했습니다.
2025년에는 TypeScript 컴파일러 자체도 Go로 재작성 되는 것이 발표되었습니다.

WebAssembly은 2015년에 발표된 기술로, JSer.info에도 2017년경부터 언급이 증가했습니다. monorepo 개념 자체는 오래되었습니다만, JavaScript 에코시스템에서 주목했던 것은, Lerna(2016년)이나 npm/yarn workspaces 이후 입니다.
지금은, npm/yarn/pnpm 패키지 매니저 자체가 monorepo 공식 지원됩니다.

15년간 언급이 변화한 기술


횡단적 토픽 변화

프레임워크 의존없이, 기술 횡단적인 토픽 추이도 보겠습니다.

연도 타입 테스트 성능 보안 a11y
2011 30 46 27 10 6
2014 52 87 58 14 9
2017 108 86 93 15 15
2020 123 44 80 13 16
2021 129 59 64 28 17
2025 88 47 42 15 23

타입(TypeScript) 언급은 2021년에 피크(129건)였고, 그 이후는 감소 경향입니다. TypeScript가 기본이 되었기에, 「TypeScript 사용하자」 자체가 뉴스가 되지 않는다 생각됩니다.

테스트 언급은 2014년에 피크(87건). Jasmine, Mocha, Karma 많은 테스트 프레임워크가 경쟁했던 시기였습니다, JSer.info에도 빈번하게 등장했습니다. 현재는 Jest, Vitest, Playwright가 주력이 되었습니다.

성능 언급은 2017년에 피크(93건)였고, webpack 최적화나 Tree Shaking, 코드 부분을 JSer.info에도 많이 소개한 시기였습니다.

a11y(접근성) 은, 일관되게 증가세에 있는 토픽입니다. 6건에서 23건으로, 약 4배 증가했습니다.

횡단적 토픽 변화


정보 소스 종류의 변화

소개 글의 소스를 「공식(프로젝트/문서)」 「GitHub」 「개인 블로그」로 분류했습니다.

소스 2011-2013 2014-2016 2017-2019 2020-2022 2023-2025
공식 204 294 467 471 479
GitHub 506 1,015 910 903 596
개인 블로그 213 194 141 76 70
  • 공식: nodejs.org, webkit.org, reactjs.org, eslint.org 공식 사이트/문서
  • GitHub: github.com, github.io
  • 개인블로그: 하테나, Qiita, Zenn, medium.com/@개인

정보 소스의 변화

비교해 보면, 2011-2013년은 개인 블로그와 공식이 거의 비슷(213 vs 204)했습니다만, 2023-2025년에는 공식 블로그/문서가 개인 블로그의 약 7배(479 vs 70)가 되었습니다. 공식 문서나 프로젝트 사이트의 정보제공이 충실해 짐에 따라, JSer.info에서 소개되는 정보원도 공식사이트 중심이 되었습니다.


개발 방법 변화

개발 방법에 관련된 토픽도 변화가 있습니다.

방법 2011-2013 2017-2019 2023-2025
CI/CD 31 56 67
Migration/이행 10 32 56
RFC/Proposal 2 73 45
Breaking Change 3 15 17

RFC/Proposal 언급이 증가한 것은, ECMAScript가 ES2015에서 Stage제 도입하고, Proposal 소개가 증가한 점, 라이브러리/프레임워크가 RFC프로세스를 이용하는 경우가 증가한 것을 반영합니다.

Migration(이행) 언급이 증가한 것은, 에코시스템 성숙을 보여줍니다. 새로운 기술로 이행, 메이저 버전업, 레거시 코드 갱신, 「기존 코드기반을 어떻게 갱신할까」가 중요한 테마가 되었습니다.

개발 방법 변화


15년간 변화의 정리

JSer.info의 15년간 데이터를 보고 변화를 정리합니다.

15년간 변화의 정리


JSer.info 자체의 변화

15년간 JSer.info 자체도 변화가 있었습니다.

기술적 변화

  • 2014년: Tumblr에서 GitHub Pages로 이전
  • 2015년: Realtime JSer.info 공개
  • 2016년: HTTPS화, Ping 기능 추가
  • 2021년: JSer.info Policy 공개
  • 2023년: JSer.info Watch List 공개
  • 2025년: MCP 보조, AI에 의한 헤드라인 생성 도입

운영 변화

  • 주 1갱신을 15년간 지속
  • GitHub 상에서 마무리 짓는 워크플로우 구축
  • 자동 카테고라이즈, 자동 태그 붙이기, 헤드라인 생성 도입
  • postem 사용한 글 투고
  • 한국어판 번역(@uyeong 님, @rewrite0w0 님, @Serzhul 님에게 감사)

「교환 가능하게 한다」 는 목표의 이후 이야기

JSer.info 11주년 에 「2025년까지 교환 가능하게 한다」는 목표를 밝혔습니다. 완전한 교환 가능은 달성하지 못했지만, AI 활용에 의해 갱신 흐름도 크게 변화했습니다.

JSer.info 갱신 흐름

JSer.info 갱신 흐름 2025년 - YAPC::Fukuoka 2025에서 발표 자료 발췌

JSer.info에 대하여에는 「갱신에 자신에게 오는 부하를 되도록 적게하고 스무스하게 했던 것이 지속의 열쇠」라 밝혔습니다. 현재 JSer.info은, 정보 수집부터 PR 작성, 태그 붙이기, 그룹 나누기, 헤드라인 생성까지, 많은 부분이 자동화되어 있습니다. 인간이 해야 할 일은 정보의 판단에서 어떤 부분만이 남아 있습니다. 즉, 무엇을 소개할지, 어떻게 전달할 지에 대한 부분입니다.
지루한 작업을 자동화하고, 판단이라는 가치에서 어떤 부분에 집중하게 하는 구조가 정리되었습니다.

자세한 사항은 YAPC::Fukuoka 2025 발표 를 참조해주시길 바랍니다.

2025년 갱신 빈도에 대하여

2025년은 갱신 빈도가 조금 적어졌습니다. 개인 북마크(정보 수입 입력)을 분석해본 결과, 원인을 어느 정도 알게 되었습니다.

연도 북마크 숫자 투고숫자 투고기간
2021 2,862 53 6.9일
2023 2,373 53 6.9일
2025 1,033 41 8.9일

북마크 숫자(입력)이 2021년을 피크로 64% 감소했습니다. 한편, 북마크에서 읽을거리로 가는 경우가 2배 이상 높아졌습니다. 2021년은 4건 북마크 당 1건 소개되었지만, 2025년에는 2건 북마크 당 1건 소개되었습니다. 그 결과, 입력이 64% 감소했어도, 투고 숫자는 23% 감소에 그쳤습니다.

북마크와 JSer.info 갱신 상관

감소한 원인으로는, 글을 읽고, 북마크할 때 설명문을 작성하는 스타일이었기에, 그 부하에 걸린 것에 가능성을 높게 두고 있습니다.
수치로 알게된 것은, 이것을 추적하면서 개선하면 좋겠다는 생각입니다.
근래는 postem 도구에 Claude 연계 북마크 보조 기능을 추가했기에, 개선되고 있다 생각됩니다.

또한, 최근에 RSS 리더를 만들었는데, RSS에서 정보 수집해서 판단하고 공개하는 JSer.info 정보 시스템 전체가 스스로 작성한 것으로 동작하고 있습니다.

JSer.info 정보 시스템 전체의 큰 흐름:

RSS 피드 → 수집 → 판단 → 공개

JSer.info 정보 시스템

YAPC::Fukuoka 2025에서 발표 자료

이에 따라, 지금까지 마찰이 있던 부분도 기술적으로 제거하기 쉬워진 기분입니다.


정리하며

JSer.info은 2011년 1월 16일에 시작해서, 15년이 지났습니다.

15년 전, JavaScript은 jQuery(jQuery은 2026년 1월 14일에 20주년!)와 Backbone.js/CoffeeScript 시대였습니다. 지금은 React, TypeScript, Vite가 대부분 소개되지만, Node.js 이외 런타임도 선택할 수 있게 되었습니다.

JSer.info에 소개된 정보원도 변화했습니다. 스터디 슬라이드나 도서에서, 공식 문서나 GitHub 출시 노트 중심이 되었습니다.

변화가 계속되는 JavaScript의 에코시스템에서, JSer.info가 「JavaScript 정보를 정리하고 정확하게 전달하자」 역할을 다 할 수 있다면 좋겠습니다.


이 글이나 JSer.info 관련한 의견이나 감상은, 이하의 링크에 남겨주시길 바랍니다.

15년간 읽어주신 분, 지원해주신 분, 감사합니다!


JSer.info Sponsors

JSer.info를 GitHub Sponsors에서 지원해주시는 분들에게 감사합니다.
특히 긴 시간 지원해주신 사이보우즈 주식회사에 감사드립니다.

To support JSer.info


관련 링크

이 글을 작성할 때 사용한 JSer.info 데이터셋은 jser/dataset에 공개했습니다.
또한, 이번에는 DuckDB를 주로 사용해 분석했고, 그 쿼리에 대해서는 jser/jser.github.io#1343에 공개했습니다.

DuckDB에서 직접 JSer.info 데이터셋을 읽고, 횡단적 토픽의 연도별 집계를 쿼리하는 예시.

duckdb -c "
SELECT
    YEAR(CAST(date AS TIMESTAMP)) as year,
    SUM(CASE WHEN LOWER(content) LIKE '%security%' OR LOWER(content) LIKE '%セキュリティ%'
        OR LOWER(content) LIKE '%脆弱性%' THEN 1 ELSE 0 END) as security,
    SUM(CASE WHEN LOWER(content) LIKE '%performance%' OR LOWER(content) LIKE '%パフォーマンス%'
        OR LOWER(content) LIKE '%高速化%' THEN 1 ELSE 0 END) as performance,
    SUM(CASE WHEN LOWER(content) LIKE '%accessib%' OR LOWER(content) LIKE '%a11y%'
        OR LOWER(content) LIKE '%アクセシビリティ%' THEN 1 ELSE 0 END) as a11y,
    SUM(CASE WHEN LOWER(content) LIKE '%test%' OR LOWER(content) LIKE '%テスト%' THEN 1 ELSE 0 END) as testing,
    SUM(CASE WHEN LOWER(content) LIKE '%型%' OR LOWER(content) LIKE '%type%' THEN 1 ELSE 0 END) as typing
FROM read_json_auto('https://jser.info/source-data/items.json', ignore_errors=true)
GROUP BY year
ORDER BY year;
"

┌───────┬──────────┬─────────────┬────────┬─────────┬────────┐
│ year  │ security │ performance │  a11y  │ testing │ typing │
│ int64 │  int128  │   int128    │ int128 │ int128  │ int128 │
├───────┼──────────┼─────────────┼────────┼─────────┼────────┤
│  2010 │        0 │           0 │      0 │       0 │      0 │
│  2011 │        6 │          19 │      3 │      34 │     29 │
│  2012 │        7 │          31 │      2 │      98 │     43 │
│  2013 │       11 │          28 │      7 │     118 │     69 │
│  2014 │        6 │          39 │      4 │      82 │     52 │
│  2015 │        9 │          20 │      8 │      66 │     72 │
│  2016 │       10 │          39 │     22 │      60 │     75 │
│  2017 │       13 │          69 │      5 │      72 │    104 │
│  2018 │       11 │          68 │     14 │      50 │     90 │
│  2019 │       20 │          54 │     14 │      55 │    103 │
│  2020 │       11 │          65 │      9 │      34 │    117 │
│  2021 │       23 │          54 │      8 │      39 │    124 │
│  2022 │       18 │          39 │      7 │      57 │    114 │
│  2023 │       13 │          66 │      6 │      57 │    111 │
│  2024 │       12 │          36 │      9 │      46 │     90 │
│  2025 │       14 │          30 │      9 │      34 │     86 │
│  2026 │        2 │           4 │      1 │       2 │      5 │
├───────┴──────────┴─────────────┴────────┴─────────┴────────┤
│ 17 rows                                          6 columns │
└────────────────────────────────────────────────────────────┘
Pull Request to this article
JSer.info Slackに参加する