امروزه بخش بزرگی از زندگی ما به اینترنت و نرم افزارها وابسته است و بدون آنها، زندگی به سختی گذشته هایمان می شد . اما آیا به این دقت کردید که چه شد تا این ابزار ها به وجود امدن؟ قراره در این پست از کداکسپلور به این موضوع بپردازیم. هر هفته ما به سراغ یک زبان برنامه نویسی و افراد یا فردی که این زبان را نوشته یا اختراع کرده است می رویم.
شروع یک قهرمان
در طول تاریخ افراد برجسته ای وجود داشته اند که برای بدست اوردن مال و ثروت و یا برای علاقه خود ،دست به کار هایی زده اند که امروزه تاثیر بسیاری بر زندگی ما گذاشته است. این افراد که اکثر آنها مرد بوده اند،باعث ایجاد ابزار هایی شده اند که بشر را از خطر های بسیاری نجات داده است.اما قهرمان ما، زنی است که با تلاش های خودش،توانست نوری باشد برای شروع تکنولوژی های پیشرفته تر.زنی به اسم ایدا لاولیس.
تولد
ادا (ایدا) لاولیس که نامش در اصل آگوستا اِیدا بایرون ( بعد ها به لاولیس تغییر داد)، دختر شاعر مشهور لرد بایرون و آنابلا میلبانکه بایرون بود که دو ماه پس از تولد او، مادر و پدرش از هم جدا شدند و این شروعی بود بر احساس کمبود محبت از سمت پدرش، زیرا پس از جدایی، پدر برای همیشه بریتانیا را ترک کرد و دختر هرگز پدرش را به صورت کامل نشناخت. لرد بایرون،انتظار داشت فرزندش پسر باشد و وقتی آنابلا میلبانکه دختر به دنیا آورد، نا امید شد. هرچند که این موضوع دلیل جدایی این دو نفر از هم نبود ولی به دلایل جدایی میتوان اضافه کرد. جدای از این جدایی سخت،لیدی میلبانکه ادعا میکرد که لرد ادم خشن و غیر منطقی بود و این رفتارش به جدایی آنها کشیده شد. اما در آخر کسی که بدنام شد، دخترشان بود که در جامعه ویکتوریایی به سر میبردند. در نهایت در سال ۱۸۲۴ و در زمان که ادا تنها ۸ سال داشت، پدرش فوت کرد و این سبب شد که تنها شخص مهم زندگی او، مادرش شود.
ادا یک خواهر ناتنی داشت به نام آگوستا لی که نام ادا را این خواهر برای او انتخاب کرده بود. در ۱۶ ژانویه ۱۸۱۶،به دستور لرد بایرون، لیدی بایرون به خانه والدینش در کرکبی مالوری رفت و دختر پنج هفته ای آنها را با خود برد اگر چه قانون انگلیس در آن زمان حضانت کامل فرزندان را به پدر در موارد جدایی اعطا می کرد،لرد بایرون هیچ تلاشی برای به دست آوردن فرزند خود نکرد، اما از دختر خوانده اش درخواست کرد که او را در جریان رفاه ادا قرار دهد. هرچند که ادا با این موضوع جدایی به خوبی کنار نیامد و تا تولد بیست سالگی اش،پرتره خانوادگی که تصویر پدر نیز در آن قرار داشت، نشان نداد.
نوجوانی
ادا در طول زندگی خودش رابطه خوبی هم با مادرش نداشت و بیشتر اوقات با مادر بزرگ خودش لیدی میلبانکه سپری می کرد. اما در آن زمان به دلیل نگاه و نگرش های اجتماعی که در هر جدایی از شوهر حمایت می شد لیدی بایرون مجبور بود خودش را در غالب یک مادر دلسوز جا بزند و این گونه رفتار کند که به فکر کودک خود است، به همین دلیل نامه هایی به لیدی میلبانکه می نوشت و از حال دخترش جویا می شد ولی در این نامه ها،دخترش را به نام نمی نوشت و او را به عنوان (آن) اشاره می کرد. برای مثال در متنی از نامه نوشته شده از مادر ادا امده است که می گوید : ( من برای رضایت شما،نه برای رضایت خودم با آن صحبت میکنم و بسیار خوشحالم شما آن را زیر حمایت خود داشته باشید). لیدی بایرون می گفت که دختر نواجوان او، توسط دوستانش بسیار زیر نظر گرفته می شد که مبادا دست به کار خطا و یا غیر اخلاقی بزند.
اما با این حال او در دوران نوجوانی اش با یک معلم خصوصی رابطه نامشروع برقرار کرد. پس از دستگیری،ادا تلاش کرد که با او فرار کند اما اشنایان معلم،ادا را شناختن و به مادر او اطلاع دادند. لیدی بایرون و دوستانش تلاش کردند تا این رسوایی را به گونه ای لاپوشانی کنند و این موضوع به دست عموم مردم نرسد. با این حال به دادگاه کشیده شدند اما با تلاش های مادر این ماجرا ختم به خیر شد. ولی نکته ای که جالب توجه است، اجتناب خواهر ناتنی آگوستا لی بود که در دادگاه داشت و نمیخواست درگیر این موضوع شود و از خواهر ناتنی خودش دفاع کند.
ادا اغلب بیمار بود و ضعف هایی داشت که در ابتدای کودکی با او همراه بودند. در سن ۸ سالگی سر درد هایی را تجربه کرد که دید چشمان او را کم کرده بودند. در سال ۱۸۲۹ او مبتلا به سرخک شد که پس از آن قادر به راه رفتن نبود. ادا نزدیک به یکسال در معرض استراحت مداوم در بستر قرار گرفته بود که این باعث می شد دوره ناتوانی اش طولانی تر شود. او در سال ۱۸۳۱ و پس از دو سال، توانست با عصا راه برود و قوای خودش را تقویت کند.
دوران تحصیلی و ازدواج
ادا در دوران تحصیلی خودش،توسط معلمان خصوصی اموزش دید و سپس به صورت خودآموز به تحصیل را ادامه داد، در مطالعات پیشرفته خودش،ریاضیدان-منطق دان آگوستوس د مورگان اولین استاد ریاضیات در دانشگاه لندن به او کمک کرد و او در این دوران دانشجوی این ریاضیدان بزرگ بود. در ۱۸۳۵،او با ویلیام کینگ،هشتمین بارون کینگ ازدواج کرد و در سال ۱۸۳۸ به عنوان ارل انتخاب شد و به کنتس لاولیس تغییر پیدا کرد. ادا به دلیل نفرتی که از پدر خود داشت،فامیلی اش را به لاولیس،یعنی فامیلی مادر خودش تغییر داده بود.
رویای پرواز
ادا وقتی ۱۲ ساله بود، تصمیم گرفت که پرواز کند. ادا این پروژه را با تخیل و اشتیاق پیش می برد و اشتیاق پرواز کردن،او را از همیشه پرکار تر می کرد. در اولین قدم خود در سال ۱۸۲۸، یک بال ساخت. او مواد و اندازه های مختلف را بررسی کرد. او مواد مختلفی را برای بال ها در نظر گرفت : کاغذ، ابریشم روغنی، سیم و پر.
او آناتومی پرندگان را بررسی کرد تا نسبت درست بین بال ها و بدن را تعیین کند او تصمیم گرفت کتابی به نام فلایولوژی بنویسد که در آن برخی از یافتههای خود را با صفحات نشان میدهد. او تصمیم گرفت که به چه تجهیزاتی نیاز دارد به عنوان مثال، یک قطب نما، تا سرتاسر کشور را با مستقیم ترین جاده پیدا کند تا بتواند بر کوه ها، رودخانه ها و دره ها غلبه کند. گام نهایی او ادغام بخار با هنر پرواز بود. اما با گذشت زمان این پروژه کم رنگ تر شد تا که به سن جوانی و آشنایی با یک دوست نویسنده رسید.
آغاز یک شگفتی
لاولیس در اوایل سال ۱۸۳۳ زمانی که توسط دوست مشترکشان، نویسنده مری سامرویل، با بابیج آشنا شد، به ماشینهای بابیج علاقه مند شد و از همه مهمتر، در سال ۱۸۲۳ آمد تا مقالهای را که توسط ریاضیدان و مهندس ایتالیایی لوئیجی فدریکو منابرا نوشته شده بود، ترجمه و حاشیهنویسی کند.
(«مفاهیم تحلیل ماشینی چارلز بابیج» ۱۸۴۲؛ «عناصر ماشین تحلیلی چارلز بابیج »). حاشیه نویسی دقیق و استادانه او (به ویژه توصیف او در مورد اینکه چگونه موتور تحلیلی پیشنهادی می تواند برای محاسبه اعداد برنولی برنامه ریزی شود) عالی بود .
موتور تحلیلی، الگوهای جبری می بافد، همانطور که ماشین بافندگی ژاکارد گل و برگ می بافد
ادا لاولیس
بابیج به دلیل اینکه هم زمان در حال کار بر روی دو اختراع مهم بود نتوانست موتور تحلیلی را کامل کند، به همین دلیل تلاش های لاولیس بسیار با ارزش و مهم به شمار می رود.
و بخاطر همین بود که به پاس تلاش های بسیار ادا لاولیس،اولین زبان برنامه نویسی را به نام او گذاشتند و دومین سه شنبه ماه اکتبر به روز ادا لاولیس نام گذاری شد.
موتور تحلیلی ، اولین کامیپوتر
موتور تحلیلی، به طور کلی اولین کامپیوتر در نظر گرفته می شود که توسط مخترع انگلیسی چارلز بابیج در قرن ۱۹ طراحی و ساخته شد (او تا زمان مرگش در سال۱۸۷۱ روی آن کار کرد ). بابیج در حین کار بر روی Difference Engine، یک ماشین محاسبه ساده تر که توسط دولت بریتانیا سفارش داده شده بود، شروع به تصور راه هایی برای بهبود آن کرد.او عمدتاً به فکر تعمیم عملکرد آن بود تا بتواند انواع دیگری از محاسبات را انجام دهد. در سال ۱۸۳۳، زمانی که بودجه برای موتور دیفرانسیل او تمام شد، چیزی بسیار انقلابیتر را تصور کرد: یک ماشین محاسباتی همه منظوره به نام موتور تحلیلی.
موتور تحلیل را میتوان یک کامپیوتر دیجیتال مکانیکی در نظر گرفت که خودکار و همه منظوره کار میکند. می توان محاسبات ریاضی را با این دستگاه انجام داد، مانند ماشین حساب های امروزی. هیج مدرکی وجود ندارد که قبل از بابیج، کسی مشابه که نه حتی تصور ساخت همچین دستگاهی را به سر داشته باشد. این دستگاه از چهار جز mill . storage . reader . print تشکیل شده است که امروزه پایه هر سیستم کامپیوتری است. mill واحد محاسبات مشابه CPU در کامپیوتر های امروزی است. storage محل نگهداری داده ها قبل از پردازش است و reader- print برای ورودی و نمایش بود.
این دستگاه را میتوان همانند موتور دیفرانسیل پیچیده و سخت دانست،زیرا storage باید به قدری بزرگ باشد که بتواند حدود ۱۰۰۰ شماره 50 رقمی را در خود جای دهد. این بزرگ تر از حافظه هر کامپیوتری بود که قبل از سال ۱۹۶۰ تولید شده بود. فرایند خروجی و چاپ هم بسیار بلند پروازانه بود. بابیج در نظر داشت این فرایند را خودکار کند.
reader یکی دیگر از ویژگی های جدید موتور تحلیلی بود. قرار بود داده ها (اعداد) روی کارت های پانچ شده با استفاده از فناوری کارتخوانی ماشین بافندگی ژاکارد وارد شود. دستورالعملها نیز قرار بود روی کارتها وارد شوند، ایده دیگری که مستقیماً از جوزف ماری ژاکارد گرفته شده است. استفاده از کارتهای دستورالعمل، آن را به یک دستگاه قابل برنامهریزی تبدیل میکند و بسیار انعطافپذیرتر از هر دستگاه موجود در آن زمان است. (در سال ۱۸۴۳، آدا لاولیس، ریاضیدان، در یادداشتهای خود برای ترجمه مقاله فرانسوی درباره موتور تحلیلی نوشت که چگونه میتوان از دستگاه برای دنبال کردن برنامهای برای محاسبه اعداد برنولی استفاده کرد. برای این، او را اولین برنامهنویس رایانه نامیدند.) عنصر برنامهپذیری توانایی آن برای اجرای دستورالعملها به غیر از ترتیب ترتیبی بود. این یک نوع توانایی تصمیم گیری در انتقال کنترل شرطی خود بود که به انشعاب شرطی نیز معروف است، به موجب آن می توانست بسته به مقدار برخی از داده ها به دستورالعمل های متفاوتی بپرد. این ویژگی بسیار قدرتمند در بسیاری از کامپیوترهای اولیه قرن بیستم وجود نداشت.
موتور تحلیلی بابیج چیزی جدید در زیر نور خورشید بود. انقلابی ترین ویژگی آن امکان تغییر عملکرد آن با تغییر دستورالعمل روی کارت های پانچ بود. تا قبل از این پیشرفت، تمام ابزارهای مکانیکی محاسبه صرفاً ماشین حساب یا مانند موتور دیفرانسیل، ماشینحسابهای تجلیلشده بودند. موتور تحلیلی، اگرچه در واقع کامل نشده بود، اما اولین ماشینی بود که شایسته نام کامپیوتر بود.
در پایان این قسمت از سری قسمت های داستان زبان های برنامه نویسی، باید به این موضوع اشاره کنم که اگر همچین دستگاهی با کمک ادا لاولیس تولید نمیشد، به طور قطع چارلز بابیج شکست میخورد با اینکه این دستگاه تکمیل نشد،اما میتوان به نوعی موفقیت در نظر گرفت و ممکن بود همچین دستگاهی هیچوقت به وجود نیاید و ما شاید به صورت دیگری به برنامه نویسی به پرداختیم.
منابع : britannica – Wikipedia – ماشین بافندگی ژاکارد wiki