زندگینامه ایدا لاولیس، اولین برنامه نویس تاریخ
ایدا لاولیس با نام کامل Augusta Ada King-Noel, Countess of Lovelace یک ریاضیدان و نویسندهی انگلیسی بود که عمدهی شهرت خود را مدیون همکاری با چارلز ببیج در توسعهی کامپیوتر مشهور همهکارهی این دانشمند یعنی موتور تحلیلی است. او اولین فردی بود که متوجه پتانسیلهای ماشین محاسباتی، فراتر از محاسبات سادهی ریاضی شد و اولین الگوریتم تاریخ را برای ارتباط با این ماشین تدوین کرد. بههمین دلیل او بهعنوان اولین برنامهنویس تاریخ شناخته میشود.
ایدا فرزند یک شاعر انگلیسی بود اما هیچگاه پدر خود را ندید. پدرش زمانی که او یک ماهه بود خانواده را ترک کرد و مادرش آن ایزابلا برای جهت دادن به مسیر زندگی ایدا و جلوگیری از تبدیل شدن او به مجنونی مانند پدر، ریاضیات را بهعنوان مهارت اصلی به دخترش آموزش میداد. ایدا سرانجام با ویلیام کینگ ازدواج کرد که بعدا به مقام کنت منطقهی لاولیس رسید. به همین دلیل ایدا لاولیس با نام کنتس لاولیس نیز شناخته میشود.
لاولیس به خاطر مطالعات علمی و ارتباطات اجتماعی قوی با دانشمندان و شاعران بزرگ همعصر خود ارتباط داشت. بزرگانی همچون اندرو کراس، دیوید بروستر، چارلز ویتستون، مایکل فارادی و چارلز دیکنر جزو دوستان و همکاران او بودهاند. او از ارتباط با این افراد برای پیشرفت تحصیلات خود استفاده میکرد و همیشه علم خود را ترکیبی از علم و شعر میدانست. لاولیس خود را یک تحلیلگر یا دانشمند علوم ماورائی میدانست.
بزرگترین دستاورد زندگی لاولیس از ترجمهی مقالهای از دانشمند ایتالیایی لوئیجی منابرا شروع شد. او یادداشتهایی نیز به این ترجمه اضافه کرده و مقالهی حاصل را با نام سادهی «یادداشت» آماده کرد. به عقیدهی بسیاری این یادداشتها را میتوان اولین برنامهی کامپیوتری نامید. نکتهی جالب همان ترکیب شاعرانگی و علم لاولیس است که باعث شد سوالاتی در مورد ارتباط با کامپیوترها مطرح کند. او نکاتی را در مورد ارتباط افراد و جامعه با فناوری بهعنوان ابزاری برای همکاری بررسی کرده بود.
تولد و تحصیل
ایدا لاولیس در ۱۰ دسامبر سال ۱۸۱۵ در لندن متولد شد. نام تولد او آگوستا ایدا بایرون بود. پدر او یکی از شعرای مشهور انگلستان یعنی لرد بایرون بود که اعتباری مملو از جنون و رفتارهای عجیب و غریب دارد. او از این که فرزندی دختر داشت ناراضی بود و انتظار یک پسر زیبا را بهعنوان اولین فرزند قانونیاش میکشید. مادرش آن ایزابلا میلبانک نام داشت که فردی باهوش، تحصیلکرده و علاقهمند به علوم و ریاضیات بود. پدر ایدا یک ماه پس از تولد دخترش خانواده و لندن را ترک کرد و ۸ سال بعد در یونان از دنیا رفت. ایدا هیچگاه پدرش را ندید. نکتهی جالب این که ایدا حتی هیچ تصویری از پدرش را نیز تا ۲۰ سالگی ندید.
ایدا لاولیس در ۴ سالگی
تاریخنگاران بر این باورند که مادر ایدا نیز نقش زیادی در تربیت ابتدایی دخترش نداشته و مادربزرگ مادری و خدمتکاران خانه او را تربیت کردهاند. البته برخی معتقدند علاقهی شدید مادر به ریاضیات، ایدا را به مطالعهی این علم علاقهمند کرده است. مادربزرگ ایدا در سن ۷ سالگی او از دنیا رفت و خودش نیز در دوران کودکی و سالها بعد همیشه از بیماری رنج میبرد. ایدا در ۱۴ سالگی به بیماری شدید سرخک مبتلا شد و تا حدود دو سال کاملا بستری بود. پس از این دو سال بود که او توانست به کمک عصا راه برود.
در آن سالها زنان انگلیسی حق ورود به دانشگاه را نداشتند و در نتیجه مادر ایدا که تصمیم داشت دخترش تحصیلات عالی داشته باشد، بهترین اساتید خصوصی را برای او استخدام کرد. او علاوه بر ریاضیات، موسیقی و زبان فرانسه را نیز به دخترش آموزش میداد. لیدی بایرون تصمیم داشت دخترش به فردی متشخص تبدیل شده و اصلا شباهتی به پدرش نداشته باشد. به همین دلیل در آموزش او سختگیریها و تنبیههای زیادی را لحاظ میکرد. ایدا علاوه بر ریاضیات به علوم اندازهگیری جمجمه و مغناطیس حیوانی نیز علاقهمند بود.
ایدا در ۱۲ سالگی به پرواز علاقهمند شد. او با تصورات ذهنی و سعی و خطا میخواست بال هواپیما بسازد و در این مسیر از انواع مواد از کاغذ و سیم تا روغن و پر پرندهها استفاده میکرد. او حتی آناتومی پرندگان را نیز برای یافتن بهترین ترکیبها و زوایا برای بالها مطالعه میکرد. ایدای نوجوان در آن سنین تصمیم گرفت تا کتابی نیز از یافتههای خودش منتشر کند و نام آن را Flyology گذاشت.
ایدا لاولیس در ۷ سالگی
ملاقاتهای تاریخی
زندگی ایدا پس از اولین ملاقات با دانشمند بزرگ چارلز ببیج در پنجم ژوئن سال ۱۸۳۳ به کلی تغییر کرد. او ۱۷ ساله بود و بسیاری از دختران هم سن و سال او امکان چنین ملاقات مهمی را نداشتند. البته خاندان اشرافی ایدا عاملی مهم در شانس او برای ملاقات با ببیج بود. ببیج استاد دانشگاه کمبریج در کرسی ریاضیات لوکاسی بود. ببیج که متوجه علاقه و استعداد لیدی بایرون و دخترش به ریاضیات شد، آنها را برای دیدن نمونهای کوچک از ماشین محاسباتی خود با نام difference engine دعوت کرد.
ببیج با ساخت این ماشین قصد داشت محاسبات طولانی ریاضیاتی را به دست موتوری بدون خطا انجام دهد. این موتور قرار بود با نیروی بخار یا دست کار کند. بههرحال ایدا مجذوب ایدهی ماشین شد اما نمیتوانست کمک خاصی به ببیج بکند. البته او بعدا در نامهای به ببیج، نقشههای طراحی این ماشین را درخواست کرد تا بیشتر با روند کارش آشنا شود.
ایدا و مادرش بازدیدهای مهم دیگری هم داشتند. آنها از کارخانههایی که موتور بخار داشتند بازدید میکردند تا بیش از پیش با روند کاری این ماشین آلات آشنا شوند. این رفتارها قطعا از یک بانوی اشرافی و دخترش آن هم در آن سالهای انگلستان انتظار نمیرفته است. یکی از این بازدیدها، مشاهدهی ماشین Jacquard Loom بود. این ماشین در سال ۱۸۰۱ توسط جوزف ماری جکوارد برای تولید پارچه اختراع شده بود.
ماشین جکوارد بهوسیلهی کارتهای پانچ شده برنامهریزی میشد و هر کارت، نشانگر یک ردیف در بافت پارچه بود. به بیان ساده، سوراخهای روی کارتها نشانگر مسیر حرکت برای ماشین بودند و میتوان آنها را بهعنوان زبان ماشین یا کد ماشین نام برد.
ایدا لاولیس در ۱۷ سالگی
گسترش مطالعات و اولین برنامه کامپیوتری
ایدا در سالهای بعد بهصورت مستقل به یادگیری ریاضیات پرداخت و با یکی از بزرگترین ریاضیدانان زن دوران خود یعنی مری سامرویل نیز دیدار کرد. سامرویل ایدا را با ریاضیات مدرنتر آشنا کرد و سطح علم او را افزایش داد. بعلاوه این دو مباحثاتی هم در مورد ماشین چارلز ببیج داشتند. در واقع رابط لاولیس برای دیدار با ببیج، سامرویل بود. استاد بعدی لاولیس (پس از ازدواج با ویلیام کینگ، نام خانوادگی به لاولیس تغییر داده شد)، پروفسور آگوستوس دِمورگان استاد دانشگاه UCL بود.
در سال ۱۸۴۲، ایدا مقالهای از دانشمند ایتالیایی لوئیجی منابرا به زبان فرانسوی مطالعه کرده و آن را به انگلیسی ترجمه کرد. این مقاله طرحی شماتیک از ماشین تحلیلی ببیج ارائه داده بود. منابرا در این مقاله، آموزشها وسخنرانیهای ببیج را به رشتهی تحریر در آورده بود. در آن زمان ببیج از مطالعه و تحقیق روی ماشین قبلی ناامید شده و مشغول طراحی ماشین جدیدی بود. ماشین جدید او توانایی انجام محاسبات بسیاری پیچیدهتر ریاضی را داشت.
طرح اولیهی ماشین تحلیلی ببیج، بسیار خارقالعاده و حرفهای بود. این طرح نشاندهندهی نبوغ بالای دانشمند انگلیسی بود چرا که بهعنوان اولین کامپیوتر قابل برنامهنویسی تاریخ نیز شناخته شد. در تعاریف مدرن این ماشین را یک تورینگ کامل مینامند. ماشین تحلیلی ببیج بخشهایی همچون منطق ریاضی، جریان کنترلی با استفاده از لوپها، برنچینگ دستورالعمل و همچنین حافظهی مجزا داشت. نکتهی جالب این که تمامی این بخشها با نیروی بخار یا دست و با قطعات مکانیکی کار میکردند.
نمونهی کامل شدهی ماشین تحلیلی در موزهی علوم لندن
بههرحال ببیج ترجمهی ایدا از مقالهی فرانسوی را خواند و به او پیشنهاد داد که خودش مقالهای در این مورد بنویسد. از نظر ببیج، ایدا ظرفیت لازم برای نوشتن چنین مقالهای را داشت. ایدا به جای نوشتن مقالهی جدید، نظرات خود را بهصورت یادداشتهایی به متن اصلی منابرا اضافه کرد. یادداشتهای ایدا به ترتیب الفبا از A تا G ادامه داشتند و در بخش G، الگوریتم مشهور او قرار داشت. این یادداشتها سه برابر متن مقالهی اصلی بودند. در نهایت وقتی ترجمهی او با نام Sketch of Charles Babbage’s Analytical Engine چاپ شد، اکثر کتاب نوشتههای ایدا بوند.
بخش اعظمی از یادداشتهای ایدا در این مقاله، اضافه کردن معادلات جبری برای توضیح چگونگی انجام معادلات ریاضی توسط موتور تحلیلی بود. ببیج نیز یکی از سختترین معادلات (اعداد برنولی) را برای ایدا ارسال کرد تا آن را به تحقیقات خود اضافه کند. نکتهی مهم این که ایدا اشکالاتی در معادلات ببیج پیدا کرد که شخص ببیج بعدا آنها را بهعنوان اشتباهات جدی نام برد. بههرحال مقالهی ایدا شامل اولین برنامهی کامپیوتری (الگوریتمی برای اعداد برنولی) بود و به همین دلیل این ریاضیدان بهعنوان اولین برنامهنویس تاریخ شناخته میشود.
بانوی ریاضیدان انگلیسی در مطالعات خود، ایرادات ماشین تحلیلی ببیج را نیز توضیح داد. این کشف ایرادات بهعنوان اولین فرآیند دیباگ تاریخ شناخته میشوند. مطالعات لاولیس در سالهای بعدی عمیقتر نیز شد و او تلاش کرد تا از ریاضیات برای کدگشایی فرآیند عصبی در پسزمینهی احساسات استفاده کند. او این مطالعات را بهنام «محاسبهای بر سیستم عصبی» معرفی کرد. او برای نمایش مطالعات خود با اندرو کراس دیدار کرد تا مدلی الکتریکی از این یافتههای خود بسازد. البته این تصمیم هیچگاه نهایی نشد.
ایدا با مقالهی خود دورانی جدید در علوم کامپیوتر پدید آورد. او مفهومی جدید را به ماشینها اضافه کرد و ظرفیت آنها را بیشتر از انجام محاسبات سادهی ریاضی نشان داد. اقدام او اولین قدم در مسیر درک کامپیوترهای مدرن، فراتر از ماشین حساب بود. او این ماشینها را ابزارهایی برای کارهای دیگر انسانها مثلا تولید موسیقی میدانست.
اولین برنامهی کامپیوتری نوشته شده توسط ایدا لاولیس
اولین برنامهنویس تاریخ معتقد بود هرچیزی که قابلیت تبدیل شدن به اعداد داشته باشد، مانند موسیقی، الفبا یا تصاویر، توانایی محاسبه شدن و تغییر کردن توسط کامپیوترها را دارد. به بیان دیگر ماشین تحلیلی میتوانست نحوهی کار در تمامی بخشهای جهان و نه تنها ریاضی را منقلب کند. طرز تفکر و عقاید ایدا نشان میداد که او فراتر از روشهای سختگیرانهی مادر، تفکر خود را پرورش داده است. او رویکردی تخیلی و بصری را در مطالعات خود لحاظ کرده بود. با وجود این که عموم مطالعات این دانشمند، بر پایهی ریاضی بودهاند، ذهن او فراتر از معادلات و الگوریتمها حرکت کرد تا احتمالات جدید را بررسی کند. بههمین دلیل ببیج در توصیف این بانو از عبارت «جادوگر اعداد» استفاده کرده است.
بههرحال مطالعات ایدا و تحقیقات ببیج هیچگاه عملی نشدند. ببیج نتوانست ساخت ماشین خود را به پایان برساند اما در سال ۱۹۹۱ نمونهای از ماشین او با اصلاحیات جزئی ساخته شد و عملکردی کامل داشت. اتفاق بعدی سالها بعد و با ظهور آلن تورینگ افتاد. او به تحقیقات ایدا علاقهمند شد اما در یک نکته یعنی هوش مصنوعی با این دانشمند مخالف بود. ایدا معتقد بود هوش مصنوعی بهوجود نخواهد آمد و ماشینها تنها دستورالعملها را اجرا میکنند. تورینگ نظریهای مخالف داشت و در نهایت نیز آن را ثابت کرد.
ارتباط لاولیس و ببیج در برههای از تاریخ با مشاجرهای کوچک نیز همراه بوده است. ببیج قصد داشت در ابتدای کتاب لاولیس مقدمهای ناشناس در انتقاد از دولت در مورد پشتیبانی از طرح ماشینش بنویسد. البته قوانین انتشار اجازهی چنین کاری را نمیداد و ببیج نیز از لاولیس خواست که مقدمه را حذف کند. لاولیس این درخواست را نپذیرفت و همین اقدام، بهانهای برای مشاجرهی کوتاهمدت آنها شد. البته رابطهی این دو در سالهای بعد بهبود یافت تا این که حتی لاولیس در سالهای پایانی از ببیج خواست که او را از شر سرطان راحت کند.
زندگی شخصی و مرگ
ایدا لاولیس در ۸ جولای سال ۱۸۳۵ با ویلیام کینگ ازدواج کرد و به لیدی کینگ معروف شد. آنها سه فرزند به نامهای بایرون، آن ایزابلا (معروف به آنابلا) و رالف گوردون داشتند. ایدا پس از تولد آنابلا به بیماری سختی دچار شد که ماهها به طول انجامید. همسر او در سال ۱۸۳۸ به مقام کنت لاولیس رسید و نام خانوادگی آنها به لاولیس تغییر کرد.
نمونهای از زبان برنامهنویسی Ada
این دانشمند بزرگ در کنار زندگی علمی خود، زندگی شخصی پر فراز و نشیبی داشته است. برخی مورخان ارتباطات او با دوستان پدرش یا دیگر همکاران مرد انتقاد میکنند و خبر از شکستهای سنگین در شرطبندی و خرید و فروش اسب میدهند. شوهر او نیز در زمانی که ایدا ۳۰ ساله بود، بهخاطر اعترافی نامشخص که از او شنیده بود، همسرش را ترک کرد. لاولیس در ۲۷ نوامبر سال ۱۸۵۲ در سن ۳۶ سالگی از دنیا رفت. دلیل مرگ او سرطان رحم عنوان شده است. جسد ایدا در کنار آرامگاه پدرش در کلیسای مریم مجدلیه در هاکنال دفن شد.
نکتهی قابل توجه این که برخی مورخان نقش لاولیس بهعنوان اولین برنامهنویس تاریخ را رد میکنند. بهعنوان مثال آلان جی.بروملی در مقالهای در سال ۱۹۹۰ به این نکته اشاره کرده است. او معتقد بود تنها یکی از برنامههای موجود در مقالهی ایدا توسط خودش نوشته شده و بقیه سه تا هفت سال قبل توسط خود ببیج تدوین شده بودند. او ادعا کرد که نه تنها سندی بر تهیهی برنامه برای موتور تحلیلی توسط ایدا وجود ندارد، بلکه همکاریهای او با ببیج نیز نشان از دانش پایینش در این زمینه دارد.
بروس کالیر نیز یکی از نویسندههای بیوگرافی ببیج است که در مقالهی دکترای خود در سال ۱۹۷۰ به این نکته اشاره کرد که ایدا لاولیس تاثیر زیادی در افزایش محبوبیت موتور تحلیلی داشته اما سندی بر نقش او در طراحی با بهبود تئوری این دستگاه وجود ندارد. محققان بسیار دیگری نیز هستند که الگوریتم لاولیس را اولین برنامهی کامپیوتری قبول نکرده و معتقدند ببیج پیش از او الگوریتمهای مختلفی نوشته اما منتشر نکرده است. بههرحال آنچه که مشخص است لاولیس تاثیر عمیقی بر شناخت پتانسیلهای بالای کامپیوترهای مدرن داشته است. او با اشاره به این پتانسیلها نقش مهمی در شکلگیری مفاهیم کامپیوتری داشته است.
یکی از یادگارهای بزرگ به نام این ریاضیدان انگلیسی، زبان برنامهنویسی Ada است که از طرف وزارت دفاع آمریکا تدوین شده و در سال ۱۹۸۰ در استاندارد نظامی این کشور نیز ثبت شده است. مدال لاولیس یکی دیگر از این یادگارها است که از سال ۱۹۹۸ توسط انجمن کامپیوتر بریتانیا اهدا میشود. دانشکدهی ایدا نیز از یادگارهای آموزشگاهی این برنامهنویس، در تاتنهام واقع است. مراسم روز ایدا لاولیس، یادگار بعدی است که در میانههای ماه اکتبر با هدف افزایش نقش زنان در علوم، فناوری و مهندسی برگزار میشود.