بیوگرافی جیمز گاسلینگ، بنیان‌گذار زبان برنامه‌نویسی جاوا

جیمز گاسلینگ برنامه‌نویسی کانادایی و بنیان‌گذار زبان برنامه‌نویسی جاوا است. او در حال حاضر در بخش خدمات وب آمازون مشغول به فعالیت است.

جیمز آرتور گاسلینگ (James Arthur Gosling) متخصص علوم کامپیوتر کانادایی بوده که شهرت اصلی خود را به‌خاطر بنیان‌گذاری زبان برنامه‌نویسی جاوا به دست آورده است. گاسلینگ در دانشگاه‌های کلگری و کارنگی ملون تحصیل کرده و دارای مدرک دکترای علوم کامپیوتر است.

پروژه‌های اجرایی گاسلینگ در زمان تحصیل در دانشگاه کارنگی ملون و در مقطع دکترا شروع شدند. او نسخه‌ای از ویرایشگر متنی Emacs و همچنین نسخه‌ای برای کار با چند پردازنده از یونیکس را در دوران تحصیل در مقطع دکترا آماده کرد. علاوه بر این موارد، چند کامپایلر و سیستم پیا‌م‌رسانی نیز جزو پروژه‌های اولیه‌ی او بودند.

تولد و تحصیل

جیمز گاسلینگ در ۱۹ می سال ۱۹۵۵ در نزدیکی کلگری آلبرتا در کانادا به دنیا آمد. خانواده‌ی پدری او همگی کشاورز بوده و خانواده‌ی مادری‌اش نیز در صنعت کردشگری فعالیت می‌کردند. او دوران کودکی خود را با بازی در مزرعه و سروکله زدن با وسایل قدیمی کشاورزی گذرانده است. اولین برخورد گاسلینگ با دنیای الکترونیک، در سن ۱۰ سالگی بوده است.

پدر او قطعاتی کهنه را از مراکز سوئیچینگ مخابراتی پیدا کرده و آنها را در سطل زباله می‌اندازد. جیمز با این قطعات بازی می‌کند و بسیاری از مفاهیم اولیه‌ی الکترونیک را از این رله‌های مخابراتی می‌آموزد.

گاسلینگ در ۱۳ سالگی اولین برخوردش را با دنیای کامپیوتر تجربه کرده است. یکی از دوستان پدرش، آنها را به توری در دپارتمان کامپیوتر دانشگاه کلگری می‌برد و جیمز در همان نگاه اول، عاشق کامپیوترها می‌شود. او پس از اولین دیدار تصمیم می‌گیرد تا باز هم به‌تنهایی به این بخش از دانشگاه برود. جیمز به خاطر جثه‌ی بزرگ خود را بین دانشجویان وارد دانشگاه می‌کرده است. یکی از دلایل دیگر برای بازدیدهای گاه‌وبی‌گاه او از این دپارتمان نیز نزدیکی خانه به دانشگاه بوده است.

کلگری

دانشگاه کلگری، اولین محل کار و تحصیل جیمز گاسلینگ

جیمز در مصاحبه‌ای در مورد آن سال‌ها می‌گوید که برخوردهای اولیه‌اش با کامپیوترها مانند اسباب بازی بوده است. او تقریبا به‌صورت غیرقانونی وارد دانشگاه می‌شده است و برنامه‌نویسی را تاحدودی به‌صورت خودآموز فراگرفته است. در نهایت تعدادی از کارمندان آن بخش متوجه استعداد و توانایی‌های او می‌شوند و شغلی را در دپارتمان فیزیک دانشگاه کلگری به جیمز پیشنهاد می‌دهند.

در نهایت، جیمز به‌عنوان مهندس نرم‌افزار و در دوران دبیرستان استخدام می‌شود. او از آن پس این فرصت را پیدا می‌کند که در پروژه‌های واقعی شرکت داشته باشد. در زمانی که هم سن و سالان او در حال بازی کردن با ماشین بوده‌اند،‌ او با کامپیوترها سروکار داشته است. جیمز دفتری مشترک با دانشجویان دانشگاه در دپارتمان فیزیک داشته است و از آن دوران، به‌عنوان زمانی هیجان‌انگیز در زندگی‌اش یاد می‌کند.

گاسلینگ در دوران دبیرستان در دپارتمان فیزیک دانشگاه کلگری مشغول به کار شد

گاسلینگ برای تحصیل در مقطع کارشناسی وارد همان دانشگاه کلگری شد. او مدرک خود را در رشته‌ی علوم کامپیوتر از این دانشگاه دریافت کرد و برای گذراندن تحصیلات تکمیلی وارد دانشگاه کارنگی ملون شد.

اولین پروژه‌های بزرگ گاسلینگ در زمینه‌ی برنامه‌نویسی در دانشگاه کارنگی ملون رقم خورد. او در این دانشگاه با ساختارهای چندپردازنده‌ای آشنا می‌شود که تیم‌های فنی دانشگاه، در حال توسعه‌ی سیستم‌عامل مناسب برای آنها بوده‌اند. استاد مشاور گاسلینگ در پایان‌نامه‌ی دکترا، از او می‌خواهد که در یک دوره‌ی تابستانه، امکان استفاده از سیستم‌عامل BSD unix روی این پردازنده‌های جدید را آزمایش کند. جیمز این پروژه را به‌خوبی به پایان می‌رساند و اولین نشانه‌ها از استعداد بالای برنامه‌نویسی خود خصوصا در بخش سیستم‌عامل را نشان می‌دهد.

Emacs

نمونه‌ای اولیه از ویرایشگر متنی Emacs

پروژه‌ی بعدی، یک ویرایشگر متنی برای یونیکس بود. جیمز در این مورد توضیح می‌دهد که نمونه‌های اولیه‌ی ویرایشگر متنی Emacs در آن زمان موجود بوده‌ و به‌عنوان ماکروهایی برای ویرایشگر متنی Tico استفاده می‌شده است. Emacs به‌نوعی مجموعه‌ای از ماکروها بوده و توسط تیم‌های فنی MIT‌ توسعه داده شده بود.

سازمان‌ها و گروه‌هتی مختلف، نمونه‌هایی از این ویرایشگر را برای خود توسعه داده بودند اما از کد آن استفاده نکردند. در واقع، نمونه‌های دیگر تنها شبیه به Emacs اصلی بودند. اولین برخورد جیمز با Emacs در سیستم‌عامل Multics رقم می‌خورد. این نسخه، توسط فردی به‌نام برنی گرینبرگ و با استفاده از زبان Maclisp نوشته شده بود.

کامپایلرها یکی از زمینه‌های مورد علاقه‌ی همیشگی گاسلینگ بوده‌اند

جیمز که از ویرایشگر متنی برای نوشتن کامپایلر پاسکال برای سیستم‌عامل مولتیکس استفاده می‌کرده است، به شدت به آن علاقه‌مند می‌شود. او این پروژه را در تابستان انجام داده است و سپس برای ادامه‌ی تحصیل به دانشگاه بازگشته است. از آنجا که ویرایشگر محبوب او در سیستم‌های دانشگاه موجود نبوده است، جیمز نسخه‌ی مخصوص خود را در سال ۱۹۷۸ به‌عنوان اولین Emacs با زبان C توسعه می‌دهد.

جیمز، توسعه‌ی کامپایلرها و کار کردن با آنها را از علایق همیشگی خود در جوانی می‌داند. او علاوه بر پاسکال، برای یک زبان دیگر به‌نام Mumble نیز کامپایلری را توسعه داده است. علاوه بر این موارد، گرافیک و طراحی رابط‌های کاربری نیز از علایق جیمز در دوران جوانی بوده است. اگرچه در آن سال‌ها هنوز مفهوم خاصی در زمینه‌ی رابط گرافیکی کشف نشده بوده است، اما جیمز با همان ابزارهای ابتدایی به طراحی این موارد می‌پردازد.

کارنگی ملون

دانشگاه کارنگی ملون

شروع فعالیت کاری

جیمز گاسلینگ در سال ۱۹۸۴ به شرکت سان مایکروسیستمز پیوست. دوران فعالیت در این شرکت، زمینه‌های اولیه برای توسعه‌ی زبان برنامه‌نویسی جاوا و تبدیل شدن او به اسطوره‌ای در دنیای برنامه‌نویسی را رقم زده است.

جیمز در مورد سال‌های فعالیت در سان مایکروسیستمز می‌گوید:

دوران بسیار خوبی را در این شرکت گذراندم. کار در این شرکت با سیاست‌های کمتری در زمینه‌ی استانداردهای کاری همراه بود. شرکت سان در آن زمان به موفقیت‌های خوبی در سیستم‌های NFS دست پیدا کرده بود.

سان مایکروسیستمز

لوگوی سان مایکروسیستمز، محل تولد جاوا

تولد جاوا

جیمز و همکارانش در سان مایکروسیستمز یک زبان شئ‌گرا به نام OAK را در شرکت توسعه دادند. جیمز در مورد این دوران می‌گوید که به همراه تعدادی از دوستانش متوجه تغییرات در حال شکل در دنیای فناوری شده است. از نظر او، روند حرکتی دنیا با آنچه که اکثر کارمندان و مدیران سان در نظر داشتند متفاوت بود. او آن دوران را به‌عنوان روزهای ابتدایی شکل‌گیری ایده‌ی اینترنت اشیاء می‌داند. سرانجام جیمز و همکارانش با مطالعه‌ی روند در حال شکل‌گیری، نمونه‌هایی اولیه از نرم‌افزارها و زبان‌های مورد نیاز را توسعه دادند.

جاوا محدودیت‌های آن زمان ++C را برای برنامه‌نویسان از بین برد

پروژه‌ای که گاسلینگ و همکارانش در سان انجام می‌دادند، ابتدا با نام Stealth و سپس Green تصویب شد. آنها این پروژه را در دفتری کوچک در سندهیل رود در منلو پارک کالفیرنیا پیگیری می‌کردند. 

نمونه‌های اولیه‌ی جیمز و همکارانش با استفاده از زبان‌های برنامه‌نویسی C و ++C آماده می‌شد. آنها با مشکلات متعددی در نتایج روبرو بودند و پس از مدتی، اشکال را در متدولوژی زبان برنامه‌نویسی و از همه مهم‌تر مدیریت غلط حافظه در آن کشف کردند. در آن سال‌ها که محصولات الکترونیکی مصرفی در حال ظهور و افزایش محبوبیت بین مردم بودند، حفظ امنیت جانی کاربران در اولویت اول قرار داشت. زبان C اشکالاتی داشت که می‌توانست خطرات بزرگی را برای دستگاه‌های مصرفی ایجاد کند. فراموش نکنید که در آن سال‌ها، اولین نشانه‌ها از استفاده از برنامه‌نویسی در اشیاء مختلف مانند آسانسور، گوشی‌های موبایل و غیره ظهور کرده بود.

oak

نمونه کد نوشته شده در زبان برنامه‌نوسی Oak

بیل جوی یکی از مهندسان سان مایگروسیستمز بود که توسعه‌ی زبان شئ‌گرا را به‌عنوان راه‌حلی برای این چالش‌ها پیشنها داد. جیمز از طرف تیم اجرایی به رفع کردن این مشکلات مشغول شد. او از زبان ++C استفاده می‌کند تا اشتباه‌های مرگ‌بار ایجاد شده در اثر باگ‌های C را جبران کند. اما هرچه که استفاده‌ی این برنامه‌نویس از زبان ++C بیشتر می‌شود، مشکلات نیز خود را عمیق‌تر نشان می‌دهند.

یکی از مشکلات عمومی دیگر در آن سال‌ها، اجبار به استفاده کردن از یک معماری مشخص پردازنده بوده است. به بیان دیگر وقتی شرکت سازنده‌ی دستگاه‌های مصرفی الکترونیک از پردازنده‌ی یک شرکت (مثلا اینتل) استفاده می‌کرد، باید نرم‌افزار خود را طبق معماری آن پردازنده توسعه می‌داد. در نتیجه، شرکت‌ها همیشه به تولیدکنندگان پردازنده وابسته می‌شدند.

جیمز در نهایت برای رفع تمامی مشکلات گفته شده، زبان برنامه‌نویسی OAK را توسعه می‌دهد. زبانی شئ‌گرا که بسیاری از چالش‌های C و ++C را رفع کرده و امروز به‌عنوان نمونه‌ی اولیه‌ی جاوا شناخته می‌شود.

اولین نسخه‌های جاوا و JVM کاملا به دست گاسلینگ آماده شدند

شرکت سان پس از مشاهده‌ی موفقیت‌های اولیه‌ی نمونه‌هایی همچون OAK، به‌فکر تجاری‌سازی آنها می‌افتد. اولین شرکتی که برای عقد قرارداد در این زمینه با سان وارد مذاکره می‌شود، تایم وارنر است که برای پروژه‌ای شبیه به اینترنت با آنها وارد مذاکره می‌شود. مدیران و کارمندان سان از این پیشنهاد هیجان‌زده شده و برای اجرای آن وارد عمل می‌شوند.

پس از شروع پروژه، توسط سان، شرکت‌های متعدد دنیای فناروی در آن زمان از این پروژه مطلع شده و برای اجرای طرح‌های مشابه وارد عمل می‌شوند. امتیاز سان در این مرحله آن بوده است که سیستم‌های آنها از زمان تاسیس در سال ۱۹۸۲،‌ همگی مجهز به اتصالات شبکه و اترنت بوده‌اند. این زیرساخت‌ها، توسعه‌ی شبکه را برای آنها آسان‌تر کرد.

jvm

نمایی از نحوه‌ی کار و تعامل ماشین مجازی جاوا با سیستم‌عامل‌ها

جیمز در مورد آن سال‌ها و گسترش نفوذ اینترنت در دنیای فناوری می‌گوید:

در آن سال‌ها اینترنت تنها توسط شرکت‌ها و دانشگاه‌ها استفاده می‌شد. شرکت‌های بزرگی همچون آی‌بی‌ام، دیجیتال اکیوپمنت و زیراکس نیز فناوری‌های مشابهی داشتند. آنها تلاش می‌کردند تا اینترنت به شهرت جهانی و نفوذ همگانی نرسد اما در نهایت، اینترنت پیروز میدان شد.

پس از مدتی شرکت سان تصمیم می‌گیرد تا تمرکز خود را روی پروژه‌های اینترنتی و وب بگذارد. آنها به ای نتیجه می‌رسند که آینده از آن این فناوری جدید است. سرانجام در سال ۱۹۹۴، نام پروژه‌ی OAK به Java تغییر می‌کند. اولین ظهور جاوا در این زمان، در کنفرانس جهانی این شرکت رخ می‌دهد و سان، مرورگر جاوا خود مجهز به اپلیکیشن‌های داخلی با نام applet معرفی می‌کند. آنها با نمایش دادن این محصول جدید به جهانیان نشان می‌دهند که اینترنت می‌تواند چیزی بیشتر از صفحات ایستا باشد. این ارائه، یکی از انقلابی‌ترین رخدادهای دنیای وب بوده که جیمز گاسلینگ نیز در مرکز آن و به‌عنوان توسعه‌دهنده‌ی برخی دموهای کاربردی حضور داشته است.

neWS

نمایی از پروژه‌ی نیمه‌تمام NeWS

پس از این ارائه، نت‌اسکیپ که در آن زمان مشهورترین مرورگر وب بود، از جاوا استفاده می‌کند. این روند، تیم مدیریت جاوا را به این نتیجه می‌رساند که بهترین مسیر برای افزایش شهرت و استفاده از جاوا،‌ پیاده‌سازی آن در محصولات شرکت‌هایی همچون مایکروسافت،‌ آی‌بی‌ام و اپل است. در نتیجه‌ی این اقدام، توسعه‌دهندگان نیز به‌راحتی و بدون وابستگی به مرورگر هدف، برنامه‌های خود را توسعه می‌دهند.

این قابلیت هیجان‌انگیز، دقیقا همان چیزی بود که ++C نداشت و در نیتجه، جاوا به زبانی تبدیل شد که با یک بار نوشتن و دیباگ کردن، به‌راحتی در همه‌جا استفاده می‌شد. در نهایت جاوا به محبوبیت بالایی دست پیدا کرده و به یک ثبات کلی می‌رسد. جیمز سال‌های بعدی در سان را به بهبود معماری این زبان اختصاص می‌دهد. این دانشمند در روزهای اول توسعه‌ی جاوا تمام کارهای آن را انجام داده و ماشین مجازی آن را نیز توسعه داد. سپس تیم توسعه بزرگتر شده و مسئولیت‌های او نیز در قبال این پروژه کمتر شد.

جیمز گاسلینگ

خروج از سان مایکروسیستمز

جیمز گاسلینگ در دوم آوریل سال ۲۰۱۰ شرکت محبوب خود را ترک کرد. پدر زبان برنامه‌نویسی جاوا دلیل اصلی ترک شرکت را خریده شدن آن توسط اوراکل بیان می‌کند. یک سال پیش از ترک شرکت توسط او، اوراکل این شرکت را خریداری کرده بود. گاسلینگ در این مورد در وبلاگ خود نوشت:

هرچیزی که الآن به‌صورت دقیق و صادقانه بگویم، خسارت بیشتری نسبت به مزایایش خواهد داشت. در دوران مذاکرات برای ادغام سان و اوراکل، ما نگران پتنت‌ها و حقوق معنوی سان بودیم در حالی که چشمان وکیل اوراکل، از شادی برق می‌زد.

گاسلینگ در ۲۸ مارس سال ۲۰۱۱ در وبلاگ خود نوشت که توسط گوگل استخدام شده است. ۵ ماه بعد او این کار را نیز رها کرد و به استارتاپی با نام liquid Robotics پیوست. این شرکت با تمرکز روی ساخت ربات‌های دریایی تاسیس شده بود. یکی از دستاوردهای گاسلینگ و تیمش در این شرکت، توسعه‌ی ربات سطحی بدون سرنشین بود که برای جمع‌آوری اطلاعات زنده از سطح اقیانوس‌ها استفاده می‌شد.

پس از خرید سان توسط اوراکل، جیمز به‌دلیل اختلافات، شرکت را ترک کرد

گاسلینگ ۵ سال در شرکت رباتیک فعالیت کرد و سپس در ماه می سال ۲۰۱۷ به آمازون پیوست. او در حال حاضر در بخش خدمات ابری آمازون یعنی AWS مشغول به فعالیت است. مسئولیت گاسلینگ در AWS، مهندسی ارشد و نظارت بر روند توسعه‌ی فناوری‌های اصلی پلتفرم‌های این شرکت است. 

جیمز در مورد کار کردن برای آمازون معتقد است که این شرکت تاثیر زیادی در زمینه‌های پردازشی داشته است. به‌عقیده‌ی او، تیم‌های مهندسی این شرکت بسیار حرفه‌ای هستند و معماری مهندسی قوی نیز دارند.

گاسلینگ علاوه بر آمازون به‌عنوان مشاور در شرکت‌های Lightbend و Jelastic و Eucalyptus نیز مشغول به کار است.

DEC VAX

یک سیستم قدیمی DEC VAX

پروژه‌های تاثیرگذار و افتخارات

همان‌طور که پیش از این نیز اشاره شد، گاسلینک به‌‌عنوان توسعه‌دهنده‌ی اصلی ویرایشگر متن Gosling Emacs شناخته می‌شود. علاوه بر آن، او سیستم ویندوزی NeWs را نیز توسعه داد که البته به‌صورت نیمه‌کاره در شرکت سان رها شد. در مورد تاثیر مهم او بر توسعه‌ی جاوا به‌عنوان زبان برنامه‌نویسی شئ‌گرا نیز به‌طور مفصل صحبت کردیم.

گاسلینگ در سال‌های ابتدایی تحصیل در دانشگاه نیز پروژه‌هایی در زمینه‌ی توسعه‌ی کامپایلرها انجام داد. او یک ماشین مجازی p-code را برای کامپیوتر DEC VAX آزمایشگاه دانشگاه توسعه داد. استاد او با استفاده از این کامپایلر، برنامه‌های نوشته شده در زبان UCSD پاسکال را اجرا می‌کرد.

java

یکی از کتاب‌های تالیف شده توسط جیمز گاسلینگ

جیمز گاسلینگ به‌خاطر دستاوردهای خود در توسعه‌ی زبان برنامه‌نویسی، به عضویت افتخاری آکادمی ملی مهندسی در ایالات متحده‌ی آمریکا درآمد. او در سال ۲۰۰۲ از طرف نشریه‌ی اکونومیست جایزه‌ی نوآوری را دریافت کرد. در همان سال، جایزه‌ی The Flame بنیاد USENIX به این دانشمند علوم کامپیوتر اهدا شد.

در سال ۲۰۰۷، نشان افتخار Order of Canada و عضویت در آن به جیمز گاسلینگ اهدا شد. او در سال ۲۰۱۳، به‌عنوان عضو افتخاری ACM انتخاب شد. آخرین افتخار این دانشمند علوم کامپیوتر نیز، مدال جان فون نیومن از سازمان IEEE در سال ۲۰۱۵ است.

جیمز گاسلینگ در دوران کاری خود کتاب‌های متعددی را نیز به رشته‌ی تحریر درآورده است. یکی از مشهورترین این کتاب‌ها با عنوان The Java Programming Language و در چند نسخه چاپ شده است که بزرگانی همچون بیل جوی، کن آرنولد و فرانک یلین در نگارش آنها با گاسلینگ همراه بوده‌اند. در واقع اغلب کتاب‌های منتشر شده از گاسلینگ، آموزش‌ها و توضیحاتی در مورد زبان برنامه‌نویسی جاوا هستند.

از سراسر وب

  دیدگاه
کاراکتر باقی مانده

بیشتر بخوانید