SlideShare a Scribd company logo
1 of 31
Download to read offline
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next


Years with JavaScript.Next
JavaScript.Past
History of JavaScript...
1995.04
Brendan Eich、Netscape へ
「ブラウザに Scheme を」

という に食いついたが...
JavaScript の父
現 Mozilla CTO
当時の写真ではありません
JavaScript の祖先
Java Scheme Self
JavaScript
構文
Y2K バグ
primitive/object
第一級関数 Prototype
1995.05
Brendan Eich、Mocha を実装
最初 10 日程度でやっつけ実装
96年秋に再実装 (SpiderMonkey)
JavaScript と改名リリース
Netscape と Sun の共同発表
改名はマーケティング上の理由
JavaScript の商標権は Sun (現 Oracle) が保有

Netscape (現 Mozilla) は Sun との契約の元で利用
Microsoft in 1996
3月 MS が Java ライセンス取得
JavaScript ライセンスも含む
8月 JScript 対応の IE3 リリース
MS Java 同様に非互換だらけ...
やばい!標準化しよう!
ECMA での標準化を開始
当初は W3C (or IETF) のつも
りだったが拒否される... (・・,)
Netscape は W3C 標準を無視

してたから当然の反応...
ブラウザ依存の API や DOM
は ECMAScript 仕様には含ま
ない
余談: ECMA ミーティング
NOMBAS 創始者の挨拶:
んなわけあるか!
Brendan は聞いたことすらない
MS は最初補欠部隊を投入し、
Brendan に負け精鋭部隊に交代
NOMBAS はスクリプト言語 Cmm による "Espresso Pages" を公開してた会社
我々は JavaScript に

何年も取り組んできた...
ECMAScript 標準化
1997.06 ECMAScript 1st
最小限の言語仕様を標準化
1998.06 ECMAScript 2nd
ISO/IEC 16262 に合わせただけ
1999.12 ECMAScript 3rd
RegExp, try-catch etc...
2004.06 ECMAScript for XML (E4X)
ECMAScript 4th へ...
ECMAScript 初の抜本的改訂
Class, Namespace etc...
Yahoo! & MS らは反対
別途 ECMAScript 3.1 へ...
Douglas Crockford@Yahoo!
Chris Wilson@MS (現 Google)
Douglas Crockford@Yahoo!
Yahoo! JavaScript Architect
JSON, JavaScript Good Parts
JavaScript セミナーでも有名
職業: The Boss of You
http://javascript.crockford.com/, http://crockford.com/
VS
TheBossofYou Father of JS
ECMAScript 4th よ永遠に...
Win! Lose...
VS
TheBossofYou Father of JS
ECMAScript Harmony へ
2008.07 ECMA 3.1 ベースに注力
CodeName: Harmony
言語の抜本的改訂は断念
2009.12 ECMAScript 5th
Strict Mode, getter/setter etc...
2011.06 ECMAScript 5.1
ISO/IEC のために更新しただけ
合意が取れる範囲に絞って標準化が行われた
その頃 JS エンジンは...
2006.xx Google V8 開発開始
2006.11 Adobe Tamarin 公開
2008.06 SquirrelFish 公開
2008.08 TraceMonkey 公開
2008.09 Chrome & V8 公開
Brendan は 2006 年に V8 について知った時に OSS 化や

共同開発を提案したが Google は拒否し極秘開発を続けた...
ECMAScript 5th
first release of
Harmony...


Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next
Years with JavaScript.Next

More Related Content

What's hot

NetBSD on Conoha VPS at JNUG BoF 2014
NetBSD on Conoha VPS at JNUG BoF 2014NetBSD on Conoha VPS at JNUG BoF 2014
NetBSD on Conoha VPS at JNUG BoF 2014Ryo ONODERA
 
murakumo クラウドコントローラ
murakumo クラウドコントローラmurakumo クラウドコントローラ
murakumo クラウドコントローラShingo Kawano
 
Memtest86をかけてみた話
Memtest86をかけてみた話Memtest86をかけてみた話
Memtest86をかけてみた話Yasuaki Sera
 
新谷・大囿研究室 2014年度引き継ぎ講習会 フレームワーク
新谷・大囿研究室 2014年度引き継ぎ講習会 フレームワーク新谷・大囿研究室 2014年度引き継ぎ講習会 フレームワーク
新谷・大囿研究室 2014年度引き継ぎ講習会 フレームワークkata shin
 
第3回鹿児島node.jsの会資料_内村
第3回鹿児島node.jsの会資料_内村第3回鹿児島node.jsの会資料_内村
第3回鹿児島node.jsの会資料_内村Koichi Uchimura
 
cloudpack night #2 実践VPC
cloudpack night #2 実践VPCcloudpack night #2 実践VPC
cloudpack night #2 実践VPCKazuhiko ISOBE
 

What's hot (8)

NetBSD on Conoha VPS at JNUG BoF 2014
NetBSD on Conoha VPS at JNUG BoF 2014NetBSD on Conoha VPS at JNUG BoF 2014
NetBSD on Conoha VPS at JNUG BoF 2014
 
murakumo クラウドコントローラ
murakumo クラウドコントローラmurakumo クラウドコントローラ
murakumo クラウドコントローラ
 
Memtest86をかけてみた話
Memtest86をかけてみた話Memtest86をかけてみた話
Memtest86をかけてみた話
 
新谷・大囿研究室 2014年度引き継ぎ講習会 フレームワーク
新谷・大囿研究室 2014年度引き継ぎ講習会 フレームワーク新谷・大囿研究室 2014年度引き継ぎ講習会 フレームワーク
新谷・大囿研究室 2014年度引き継ぎ講習会 フレームワーク
 
BIOSからUEFI
BIOSからUEFIBIOSからUEFI
BIOSからUEFI
 
第3回鹿児島node.jsの会資料_内村
第3回鹿児島node.jsの会資料_内村第3回鹿児島node.jsの会資料_内村
第3回鹿児島node.jsの会資料_内村
 
cloudpack night #2 実践VPC
cloudpack night #2 実践VPCcloudpack night #2 実践VPC
cloudpack night #2 実践VPC
 
201012 ips
201012 ips201012 ips
201012 ips
 

Viewers also liked

Introduction to Javascript - College Lecture
Introduction to Javascript - College LectureIntroduction to Javascript - College Lecture
Introduction to Javascript - College LectureZac Gordon
 
نویگیشن‌ در طراحی واکنش‌گرا
نویگیشن‌ در طراحی واکنش‌گرانویگیشن‌ در طراحی واکنش‌گرا
نویگیشن‌ در طراحی واکنش‌گراWeb Standards School
 
NTBT #1 "Client-Side JavaScript"
NTBT #1 "Client-Side JavaScript"NTBT #1 "Client-Side JavaScript"
NTBT #1 "Client-Side JavaScript"Frédéric Ghilini
 
Javascript now and in the future
Javascript now and in the futureJavascript now and in the future
Javascript now and in the futureDenis Stoyanov
 
آشنایی با تکنولوژی جدید Houdini
آشنایی با تکنولوژی جدید Houdiniآشنایی با تکنولوژی جدید Houdini
آشنایی با تکنولوژی جدید HoudiniWeb Standards School
 
First, Firster, Firstest: Three lessons from history on information overload
First, Firster, Firstest: Three lessons from history on information overloadFirst, Firster, Firstest: Three lessons from history on information overload
First, Firster, Firstest: Three lessons from history on information overloadmark madsen
 
آینده سوشال CRM در طراحی وبسایت
آینده سوشال CRM در طراحی وبسایتآینده سوشال CRM در طراحی وبسایت
آینده سوشال CRM در طراحی وبسایتWeb Standards School
 
An Intro To ES6
An Intro To ES6An Intro To ES6
An Intro To ES6FITC
 
هیبرید کارا، از رویا تا واقعیت!
هیبرید کارا، از رویا تا واقعیت!هیبرید کارا، از رویا تا واقعیت!
هیبرید کارا، از رویا تا واقعیت!Web Standards School
 
simple Java script learn kurdish
simple Java script learn kurdish simple Java script learn kurdish
simple Java script learn kurdish akam bajalan
 
معماری استایل‌های بزرگ اندازه
معماری استایل‌های بزرگ اندازهمعماری استایل‌های بزرگ اندازه
معماری استایل‌های بزرگ اندازهWeb Standards School
 
React‌ برای دولوپرها
React‌ برای دولوپرهاReact‌ برای دولوپرها
React‌ برای دولوپرهاWeb Standards School
 
آیا هنوز به چارچوب‌های جاوااسکریپت نیاز داریم؟
آیا هنوز به چارچوب‌های جاوااسکریپت نیاز داریم؟آیا هنوز به چارچوب‌های جاوااسکریپت نیاز داریم؟
آیا هنوز به چارچوب‌های جاوااسکریپت نیاز داریم؟Web Standards School
 
Javascript as a Platform
Javascript as a PlatformJavascript as a Platform
Javascript as a PlatformVlad Mysla
 
Javascript session 01 - Introduction to Javascript
Javascript session 01 - Introduction to JavascriptJavascript session 01 - Introduction to Javascript
Javascript session 01 - Introduction to JavascriptLivingston Samuel
 
introduction to js
introduction to jsintroduction to js
introduction to jsSireesh K
 

Viewers also liked (20)

Introduction to Javascript - College Lecture
Introduction to Javascript - College LectureIntroduction to Javascript - College Lecture
Introduction to Javascript - College Lecture
 
نویگیشن‌ در طراحی واکنش‌گرا
نویگیشن‌ در طراحی واکنش‌گرانویگیشن‌ در طراحی واکنش‌گرا
نویگیشن‌ در طراحی واکنش‌گرا
 
NTBT #1 "Client-Side JavaScript"
NTBT #1 "Client-Side JavaScript"NTBT #1 "Client-Side JavaScript"
NTBT #1 "Client-Side JavaScript"
 
Web Components Revolution
Web Components RevolutionWeb Components Revolution
Web Components Revolution
 
Javascript now and in the future
Javascript now and in the futureJavascript now and in the future
Javascript now and in the future
 
آشنایی با تکنولوژی جدید Houdini
آشنایی با تکنولوژی جدید Houdiniآشنایی با تکنولوژی جدید Houdini
آشنایی با تکنولوژی جدید Houdini
 
First, Firster, Firstest: Three lessons from history on information overload
First, Firster, Firstest: Three lessons from history on information overloadFirst, Firster, Firstest: Three lessons from history on information overload
First, Firster, Firstest: Three lessons from history on information overload
 
آینده سوشال CRM در طراحی وبسایت
آینده سوشال CRM در طراحی وبسایتآینده سوشال CRM در طراحی وبسایت
آینده سوشال CRM در طراحی وبسایت
 
An Intro To ES6
An Intro To ES6An Intro To ES6
An Intro To ES6
 
معرفی Pseudoهای CSS
معرفی Pseudoهای CSSمعرفی Pseudoهای CSS
معرفی Pseudoهای CSS
 
هیبرید کارا، از رویا تا واقعیت!
هیبرید کارا، از رویا تا واقعیت!هیبرید کارا، از رویا تا واقعیت!
هیبرید کارا، از رویا تا واقعیت!
 
Java Script Overview
Java Script OverviewJava Script Overview
Java Script Overview
 
simple Java script learn kurdish
simple Java script learn kurdish simple Java script learn kurdish
simple Java script learn kurdish
 
معماری استایل‌های بزرگ اندازه
معماری استایل‌های بزرگ اندازهمعماری استایل‌های بزرگ اندازه
معماری استایل‌های بزرگ اندازه
 
React‌ برای دولوپرها
React‌ برای دولوپرهاReact‌ برای دولوپرها
React‌ برای دولوپرها
 
[2015/2016] JavaScript
[2015/2016] JavaScript[2015/2016] JavaScript
[2015/2016] JavaScript
 
آیا هنوز به چارچوب‌های جاوااسکریپت نیاز داریم؟
آیا هنوز به چارچوب‌های جاوااسکریپت نیاز داریم؟آیا هنوز به چارچوب‌های جاوااسکریپت نیاز داریم؟
آیا هنوز به چارچوب‌های جاوااسکریپت نیاز داریم؟
 
Javascript as a Platform
Javascript as a PlatformJavascript as a Platform
Javascript as a Platform
 
Javascript session 01 - Introduction to Javascript
Javascript session 01 - Introduction to JavascriptJavascript session 01 - Introduction to Javascript
Javascript session 01 - Introduction to Javascript
 
introduction to js
introduction to jsintroduction to js
introduction to js
 

More from dynamis

HTTP and 5G (fixed1)
HTTP and 5G (fixed1)HTTP and 5G (fixed1)
HTTP and 5G (fixed1)dynamis
 
HTTP and 5G
HTTP and 5GHTTP and 5G
HTTP and 5Gdynamis
 
HTTP and 5G partial draft
HTTP and 5G partial draftHTTP and 5G partial draft
HTTP and 5G partial draftdynamis
 
Web App Platform Strategy
Web App Platform StrategyWeb App Platform Strategy
Web App Platform Strategydynamis
 
HTML5 & Renesas RZ/G
HTML5 & Renesas RZ/GHTML5 & Renesas RZ/G
HTML5 & Renesas RZ/Gdynamis
 
Life of html5 (osaka)
Life of html5 (osaka)Life of html5 (osaka)
Life of html5 (osaka)dynamis
 
Web updates 2017
Web updates 2017Web updates 2017
Web updates 2017dynamis
 
Life of HTML5
Life of HTML5Life of HTML5
Life of HTML5dynamis
 
Browsers in IoT Era
Browsers in IoT EraBrowsers in IoT Era
Browsers in IoT Eradynamis
 
New Norm of HTML5
New Norm of HTML5New Norm of HTML5
New Norm of HTML5dynamis
 
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)dynamis
 
OSC2016.Enterprise Lightnig Talk
OSC2016.Enterprise Lightnig TalkOSC2016.Enterprise Lightnig Talk
OSC2016.Enterprise Lightnig Talkdynamis
 
Demo for Gecko Embedded
Demo for Gecko EmbeddedDemo for Gecko Embedded
Demo for Gecko Embeddeddynamis
 
Project Gecko Embedded
Project Gecko EmbeddedProject Gecko Embedded
Project Gecko Embeddeddynamis
 
The New Norm of The Web
The New Norm of The WebThe New Norm of The Web
The New Norm of The Webdynamis
 
Progressive Mobile Web Apps
Progressive Mobile Web AppsProgressive Mobile Web Apps
Progressive Mobile Web Appsdynamis
 
Modern Mobile Web Apps
Modern Mobile Web AppsModern Mobile Web Apps
Modern Mobile Web Appsdynamis
 
Web Tech & Architecture
Web Tech & ArchitectureWeb Tech & Architecture
Web Tech & Architecturedynamis
 
Java script.trend(spec)
Java script.trend(spec)Java script.trend(spec)
Java script.trend(spec)dynamis
 
Data Privacy meeting
Data Privacy meetingData Privacy meeting
Data Privacy meetingdynamis
 

More from dynamis (20)

HTTP and 5G (fixed1)
HTTP and 5G (fixed1)HTTP and 5G (fixed1)
HTTP and 5G (fixed1)
 
HTTP and 5G
HTTP and 5GHTTP and 5G
HTTP and 5G
 
HTTP and 5G partial draft
HTTP and 5G partial draftHTTP and 5G partial draft
HTTP and 5G partial draft
 
Web App Platform Strategy
Web App Platform StrategyWeb App Platform Strategy
Web App Platform Strategy
 
HTML5 & Renesas RZ/G
HTML5 & Renesas RZ/GHTML5 & Renesas RZ/G
HTML5 & Renesas RZ/G
 
Life of html5 (osaka)
Life of html5 (osaka)Life of html5 (osaka)
Life of html5 (osaka)
 
Web updates 2017
Web updates 2017Web updates 2017
Web updates 2017
 
Life of HTML5
Life of HTML5Life of HTML5
Life of HTML5
 
Browsers in IoT Era
Browsers in IoT EraBrowsers in IoT Era
Browsers in IoT Era
 
New Norm of HTML5
New Norm of HTML5New Norm of HTML5
New Norm of HTML5
 
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)
Edge Web Technologies and Browser Vendors (Updated on 2016/09/06)
 
OSC2016.Enterprise Lightnig Talk
OSC2016.Enterprise Lightnig TalkOSC2016.Enterprise Lightnig Talk
OSC2016.Enterprise Lightnig Talk
 
Demo for Gecko Embedded
Demo for Gecko EmbeddedDemo for Gecko Embedded
Demo for Gecko Embedded
 
Project Gecko Embedded
Project Gecko EmbeddedProject Gecko Embedded
Project Gecko Embedded
 
The New Norm of The Web
The New Norm of The WebThe New Norm of The Web
The New Norm of The Web
 
Progressive Mobile Web Apps
Progressive Mobile Web AppsProgressive Mobile Web Apps
Progressive Mobile Web Apps
 
Modern Mobile Web Apps
Modern Mobile Web AppsModern Mobile Web Apps
Modern Mobile Web Apps
 
Web Tech & Architecture
Web Tech & ArchitectureWeb Tech & Architecture
Web Tech & Architecture
 
Java script.trend(spec)
Java script.trend(spec)Java script.trend(spec)
Java script.trend(spec)
 
Data Privacy meeting
Data Privacy meetingData Privacy meeting
Data Privacy meeting
 

Recently uploaded

IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)ssuser539845
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~arts yokohama
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdfAyachika Kitazaki
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見Shumpei Kishi
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfMatsushita Laboratory
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-LoopへTetsuya Nihonmatsu
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor arts yokohama
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法ssuser370dd7
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦Sadao Tokuyama
 

Recently uploaded (12)

2024 03 CTEA
2024 03 CTEA2024 03 CTEA
2024 03 CTEA
 
What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?What is the world where you can make your own semiconductors?
What is the world where you can make your own semiconductors?
 
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
IFIP IP3での資格制度を対象とする国際認定(IPSJ86全国大会シンポジウム)
 
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
2024 02 Nihon-Tanken ~Towards a More Inclusive Japan~
 
2024 04 minnanoito
2024 04 minnanoito2024 04 minnanoito
2024 04 minnanoito
 
20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf20240326_IoTLT_vol109_kitazaki_v1___.pdf
20240326_IoTLT_vol109_kitazaki_v1___.pdf
 
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
持続可能なDrupal Meetupのコツ - Drupal Meetup Tokyoの知見
 
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdfTaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
TaketoFujikawa_台本中の動作表現に基づくアニメーション原画システムの提案_SIGEC71.pdf
 
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
「今からでも間に合う」GPTsによる 活用LT会 - 人とAIが協調するHumani-in-the-Loopへ
 
2024 01 Virtual_Counselor
2024 01 Virtual_Counselor 2024 01 Virtual_Counselor
2024 01 Virtual_Counselor
 
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
情報処理学会86回全国大会_Generic OAMをDeep Learning技術によって実現するための課題と解決方法
 
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
ARスタートアップOnePlanetの Apple Vision Proへの情熱と挑戦
 

Years with JavaScript.Next