# اتكتبت في 10 أيام وعلى تقريبا كل موقع: ليه جافا سكريبت كسبت؟

> أول نسخة اتكتبت في 10 أيام وطلعت بعيوب، ودلوقتي على 98.9% من المواقع حسب W3Techs. ليه محدش قدر يستغنى عنها؟

*2026-11-02T13:50:40Z*

إزاي لغة أول نسخة منها اتكتبت في عشر أيام تبقى شغالة على تقريبا كل موقع؟ حسب [W3Techs](https://w3techs.com/technologies/details/cp-javascript)، جافا سكريبت موجودة على 98.9% من المواقع اللي بتتابعها في نوفمبر 2026. والإجابة مش إنها طلعت أحسن لغة. الإجابة إن الويب لما اعتمد عليها، محدش بقى يقدر يشيلها.

## في 60 ثانية (الفيديو)

1. **لغة اتكتبت في عشر أيام** وتقريبا كل موقع شغال بيها. إزاي؟
2. **سنة 1995.** نتسكيب كانت عايزة لغة صغيرة جوه المتصفح، وبرندن آيك كتب أول نسخة عشان يلحق الديمو.
3. **الاسم جه من اتفاق** مع صن، صاحبة جافا.
4. **جافا وجافا سكريبت لغتين مختلفتين**، زي العربية وعربية الفول: نفس الاسم، وكل واحدة في حتة.
5. **اللغة طلعت فيها عيوب كتير**، يعني المفروض تتشال.
6. **مايكروسوفت مكانتش طايقاها**، بس اضطرت تحطها في متصفحها عشان المواقع تفتح عندها.
7. **ومن ساعتها**، أي متصفح يشيلها، المواقع تقع عنده.
8. **مكسبتش عشان أحسن لغة.** كسبت عشان محدش قدر يستغنى عنها.

## يعني إيه 98.9%؟

جملة W3Techs بالنص: «JavaScript is used as client-side programming language by 98.9% of all the websites».

تلات حاجات لازم تاخد بالك منهم:

- الرقم ده بتاع نوفمبر 2026، وW3Techs بتحدّثه، فقوله دايما ومعاه الشهر.
- «Client-side» معناها الكود اللي بيشتغل في متصفح الزائر. كود السيرفر مش داخل في الرقم ده.
- «كل المواقع» هنا معناها [عينة W3Techs](https://w3techs.com/technologies): أكتر بكتير من 20 مليون موقع فيهم محتوى حقيقي، والـsubdomains بتتحسب مع موقعها الأساسي. عينة ضخمة جدا، بس مش إحصاء للويب كله. وعشان كده بنقول تقريبا كل موقع، مش كل موقع.

## عشر أيام في مايو 1995

المصدر الأساسي للحكاية دي هو ورقة [*JavaScript: The First 20 Years*](https://wirfs-brock.com/allen/jshopl.pdf) اللي كتبها آلن ويرفس-بروك مع برندن آيك نفسه. أرقام الصفحات تحت هي صفحات الـPDF.

آيك دخل نتسكيب يوم 3 أبريل 1995، واللي جابه كان وعد إنه يعمل Scheme جوه المتصفح (ص 7). بس لما وصل لقى الخطة اتغيرت. جافا بتاعة صن كانت طالعة، ونتسكيب اتفقت تحطها في المتصفح، والمديرين الكبار في الشركتين قرروا إن الطريق الوحيد هو «لغة صغيرة» تكمّل جافا (ص 7).

طب ليه جافا لوحدها متكفيش؟ لأنها في ربيع 1995 مكانتش مناسبة للمبتدئين: لازم تحط الكود جوه class وتحدد نوع كل حاجة (ص 7). ومارك أندريسن كان عايز حاجة سهلة لدرجة إن أي حد يكتب كام سطر جوه صفحة HTML (ص 8). والإدارة زوّدت شرط. [بكلام آيك نفسه](https://brendaneich.com/2008/04/popularity/): الأمر اللي نزل من الإدارة الهندسية العليا كان إن اللغة لازم «تبان زي جافا».

الاسم الكودي كان Mocha. وهنا الجملة اللي الأسطورة كلها طالعة منها: آيك عمل أول نموذج لـMocha في عشر أيام ورا بعض في مايو 1995، وكان مستعجل عشان يلحق ميعاد ديمو يثبت إن الفكرة تنفع (ص 8). مفيش سجل بالتواريخ بالظبط، وآيك بيرجّح إنها من 6 لـ15 مايو (ص 8). و[في مدونته](https://brendaneich.com/2011/06/new-javascript-engine-module-owner/) قالها باختصار: «As you may know, I wrote JavaScript in ten days».

خد بالك من كلمة *نموذج*. العشر أيام طلّعوا أول نسخة شغالة، مش اللغة اللي بتكتبها دلوقتي. في آخر الفترة اتعرض النموذج قدام مهندسين نتسكيب كلهم ونجح (ص 9)، ومن هنا بدأ الشغل الحقيقي عشان ينزل للناس.

## من Mocha لجافا سكريبت

اللغة خدت تلات أسامي في أقل من سنة:

| الاسم | إمتى | فين |
|---|---|---|
| Mocha | مايو 1995 | اسم كودي داخلي اقترحه أندريسن (ص 8) |
| LiveScript | سبتمبر 1995 | أول ظهور للناس، في بيتا Navigator 2.0 (ص 10) |
| JavaScript | 4 ديسمبر 1995 | بيان مشترك من نتسكيب وصن (ص 9، ص 145) |

والورقة صريحة في السبب: اسم LiveScript اتغير لـJavaScript كجزء من الشراكة الاستراتيجية مع صن، وصن سجلت الاسم كعلامة تجارية ورخصته لنتسكيب (ص 38). وحسب آيك، أندريسن كان بيتمنى التغيير ده من الأول (ص 8).

والبيان وصف جافا سكريبت بإنها مكمّلة لجافا، وذكر 28 شركة بتدعمها (ص 145).

## جافا وجافا سكريبت لغتين مختلفتين

اللخبطة دي قديمة لدرجة إن الورقة بتتكلم عنها من أول صفحاتها: جافا سكريبت كتير بتتلخبط مع جافا بسبب اسمها (ص 3). الشركتين كانوا عايزين رابط قوي بين الاسمين، مع إن التصميم التقني للغتين متشابه من بره بس، والاسم فضل مصدر لخبطة لحد النهارده (ص 9).

الشبه في شكل الكود حقيقي، لأنه كان شرط أصلا. بس العلاقة بتقف هنا تقريبا.

## نزلت بعيوبها

جافا سكريبت 1.0 نزلت رسمي مع Navigator 2.0 في مارس 1996 (ص 10). المميزات اتقفلت في أغسطس 1995، فاللي نزل كان اللي شغال أو قرب يشتغل وقتها (ص 10). والنتيجة: عيوب مزعجة وسلوك غريب في الحالات الحدية (ص 10).

وآيك نفسه قالها في حوار قبل الإطلاق بشوية: جافا سكريبت كانت شغل راجل واحد أكتر من اللازم، فالنسخة 2.0 هيكون فيها عيوب صغيرة مزعجة كتير (ص 11).

وحتى جافا سكريبت 1.1، في Navigator 3.0 في أغسطس 1996، كانت لسه معظمها كود من نموذج العشر أيام (ص 27). بعد كده بس آيك أعاد كتابة قلب المحرك، في أسبوعين شغل من البيت (ص 27).

لغة فيها عيوب، بيشتغل عليها مهندس واحد، في متصفح شركة واحدة. بالمنطق العادي، المفروض كانت تتشال.

## ليه مايكروسوفت اضطرت

جوه مايكروسوفت الخطة كانت حاجة تانية. قسم أدوات المطورين كان عايز Visual Basic للسكريبتات وجافا للتطبيقات (ص 26). بس فريق Internet Explorer كان هدفه إن IE 3 يكون متوافق مع نتسكيب 3، وده كان معناه لازم جافا سكريبت. وتلخيص الورقة: مايكروسوفت مكانتش مبسوطة إنها مضطرة تدعمها، بس كان الوقت فات على تجاهلها (ص 26).

الحل الوسط كان دعم جافا سكريبت وVisual Basic مع بعض. ونسخة مايكروسوفت، JScript، نزلت في 1996 مع IE 3 (ص 26).

الجزء الحلو هو طريقة الاختبار. فريق IE كان فاهم إن التوافق مع المواقع المعمولة لنتسكيب أساسي عشان حد يستخدم متصفحهم. فشون كاتزنبرجر وزمايله شغّلوا نسخ التطوير من IE 3 على آلاف المواقع اللي بتستخدم جافا سكريبت، وقارنوا النتيجة بنتسكيب 2 و3. وأي اختلاف يظهر، كاتزنبرجر كان لازم يفك سلوك نتسكيب ويفهمه (ص 26–27). والورقة نفسها بتسمي نسخة مايكروسوفت «reverse-engineered» (ص 3).

دي نقطة التحول. جافا سكريبت بطلت تبقى ميزة في منتج شركة واحدة، وبقت حاجة المواقع مستنياها من أي متصفح.

## «Don't break the Web!»

آيك وصف بعد كده الفخ اللي المتصفحات وقعت فيه (ص 51):

- التغييرات اللي بتكسر القديم، حتى لو إصلاح عيب، ممكن تطفّش المستخدمين.
- أي متصفح جديد لازم يمشي مع اللي موجود بالفعل.

وأول قاعدة فيهم بتتلخص في شعار «Don't break the Web!» (ص 51). والسبب عملي: صفحات كتير اللي كتبوها سابوها، بس الناس لسه بتستخدمها، والمتصفح بيقرا الكود بتاعها في كل زيارة. لو كسرت حاجة في متصفح واحد، الناس ممكن تروح لغيره. ولو كسرتها في كل المتصفحات، أجزاء من الويب تفضل بايظة على طول (ص 51).

وحتى اللي عمل اللغة خسر المعركة دي. بص على `==`:

```js
1 == "1"    // true: القيم بتتحول قبل المقارنة
0 == ""     // true
```

آيك غيّر `==` في جافا سكريبت 1.2 عشان يشيل التحويلات دي، وكان نفسه التغيير يدخل في أول معيار. كاتزنبرجر رد إن الوقت فات، عشان عدد الصفحات الموجودة اللي هتتكسر كبير، وآيك رجّع السلوك القديم في جافا سكريبت 1.3 (ص 38). وبدل كده اللغة خدت معامل منفصل للمقارنة الصارمة، `===` (ص 148):

```js
1 === "1"   // false
```

يعني الإصلاح اتضاف جنب القديم، والقديم فضل زي ما هو.

القاعدة في الورقة عن تغيير السلوك، مش عن مسح اللغة كلها. والخطوة اللي بعدها استنتاجنا إحنا: لو إصلاح `==` كان خطر، فمتصفح يشيل جافا سكريبت هيكسر أكتر بكتير. هي مكسبتش مسابقة. هي بقت حاجة مستحيل تتشال.

## اللغة فضلت تتغير

«عشر أيام ومتغيرتش» كلام غلط. أول معيار رسمي نزل في 1997 باسم ECMAScript، وبعده نسختين معدلتين قبل آخر 1999 (ص 3). والاسم ده له حكاية: صن رفضت ترخص اسم JavaScript للجهة المسؤولة عن المعيار، ونتسكيب مرضيتش تتنازل رسميا عن LiveScript، فالاسم المؤقت هو اللي فضل (ص 39).

ودلوقتي جافا سكريبت بتشتغل بره المتصفح كمان. [Node.js](https://nodejs.org/en/about) بتوصف نفسها بإنها «an asynchronous event-driven JavaScript runtime»، معمولة عشان تبني تطبيقات شبكية تستحمل الضغط.

## منتشرة قد إيه دلوقتي؟

حسب إنت بتقيس إيه، ومصادر معروفة بتدي صور مختلفة:

| المصدر | بيقول إيه عن جافا سكريبت |
|---|---|
| [W3Techs، نوفمبر 2026](https://w3techs.com/technologies/details/cp-javascript) | 98.9% من المواقع اللي بتتابعها، على ناحية المتصفح |
| [استبيان Stack Overflow للمطورين 2026](https://survey.stackoverflow.co/2026/technology) | 62.0% من كل المشاركين، والأولى في اللغات الأكتر استخداما للسنة الـ12 على التوالي |
| [مؤشر TIOBE، أكتوبر 2026](https://www.tiobe.com/tiobe-index/) | المركز 6، بنسبة 2.77% |

مفيش رقم فيهم غلط. الأول بيعد مواقع، والتاني بيسأل مطورين، والتالت مؤشر شعبية منفصل. فمتنقلش واحد منهم من غير مصدره وتاريخه.

## اتعلمها لو

- عايز تعمل موقع أو أبلكيشن ويب يفتح على أي متصفح. دي اللغة اللي W3Techs لاقياها في 98.9% من المواقع اللي بتتابعها.
- عايز لغة واحدة على الناحيتين. مع Node.js، نفس اللغة اللي بتكتبها للمتصفح تقدر تشغّل بيها كود السيرفر كمان.

## أسئلة شائعة

### هي جافا سكريبت فعلا اتكتبت في عشر أيام؟
أول نموذج آه. برندن آيك عمله في عشر أيام ورا بعض في مايو 1995. وبعد كده اللغة فضلت تتغير، ولسه بتتغير.

### جافا وجافا سكريبت نفس اللغة؟
لأ، دول لغتين مختلفتين. جافا سكريبت اتعملت عشان تبان زي جافا، بس ورقة اللي عملوها بتقول إن التصميم التقني للغتين متشابه من بره بس.

### كل المواقع بتستخدم جافا سكريبت؟
مش كلها. W3Techs بتقول 98.9% في نوفمبر 2026، جوه عينتها اللي فيها أكتر بكتير من 20 مليون موقع.

## المصادر

- [آلن ويرفس-بروك وبرندن آيك، *JavaScript: The First 20 Years*](https://wirfs-brock.com/allen/jshopl.pdf): حكاية Mocha والاسم والعيوب ومايكروسوفت و«Don't break the Web!» و`==` والمعيار. الصفحات مذكورة في النص، وبيان 4 ديسمبر 1995 منشور في ص 145.
- [برندن آيك، *New JavaScript engine module owner*، 21 يونيو 2011](https://brendaneich.com/2011/06/new-javascript-engine-module-owner/): جملة العشر أيام.
- [برندن آيك، *Popularity*، 3 أبريل 2008](https://brendaneich.com/2008/04/popularity/): شرط «تبان زي جافا».
- [W3Techs، استخدام جافا سكريبت، نوفمبر 2026](https://w3techs.com/technologies/details/cp-javascript): رقم 98.9%.
- [نظرة عامة من W3Techs](https://w3techs.com/technologies): إيه اللي داخل في العينة.
- [استبيان Stack Overflow للمطورين 2026](https://survey.stackoverflow.co/2026/technology): 62.0% والـ12 سنة.
- [مؤشر TIOBE، أكتوبر 2026](https://www.tiobe.com/tiobe-index/): المركز 6 و2.77%.
- [عن Node.js](https://nodejs.org/en/about): وصف Node.js لنفسها.
- صورة برندن آيك في الفيديو: Darcy Padilla، [CC BY-SA 3.0](https://commons.wikimedia.org/wiki/File:Brendan_Eich_Mozilla_Foundation_official_photo.jpg).

## اقرأ كمان

- [582 ألف مشروع ذكاء اصطناعي ولغة بطيئة: لماذا كسبت بايثون؟](https://fadymondy.com/ar/blog/why-slow-python-won-ai)
- [أشهر لغات البرمجة في 2026: الترتيب وكيف تختار](https://fadymondy.com/ar/blog/top-programming-languages)
- [ما هي القيمة الخالية (Null) في البرمجة؟](https://fadymondy.com/ar/blog/what-is-null)

---

Source: https://fadymondy.com/ar/blog/javascript-history-why-it-won
