آدا لاولیس: با مخترع برنامه نویسی کامپیوتر آشنا شوید

آدا لاولیس: با مخترع برنامه نویسی کامپیوتر آشنا شوید

او خود را یک تحلیلگر و متافیزیک می نامید ، اما گاهی اوقات به عنوان "افسونگر اعداد" نامیده می شد - و امروز ، ما او را به عنوان اولین برنامه نویس رایانه در جهان می شناسیم. با آدا لاولیس ، ریاضیدان دنباله دار قرن نوزدهم که زمینه ساز علوم رایانه مدرن شد ، آشنا شوید.

حکاکی آدا در 4 سالگی

تنها فرزند مشروع شاعر رمانتیک بدنام لرد بایرون ، آدا در 10 دسامبر 1815 متولد شد - تنها سه ماه قبل از اینکه بایرون در میان شایعات انگلیس را در تبعید ترک کند. رابطه رسوایی با خواهرش ، آگوستا لی (دخترش به نام او آگوستا نامگذاری شد ، اگرچه او همیشه با آدا همراه بود). اگرچه آدا هرگز با پدر بدنام خود ملاقات نکرد ، اما شهرت او زندگی او را تسخیر کرد ، که از طریق مبارزه بین احساسات و عقل شکل گرفته بود. همسر بایرون ، آنابلا میلبانک ، مصمم بود تا مطمئن شود که آدا هیچ شباهتی به پدرش ندارد و اصرار داشت که از ریاضیات درس بخواند تا از طعمه نیروهای "خطرناک و بالقوه مخرب" تخیل و شعر جلوگیری کند. (بایرون در مورد ارزش خود ، ظاهراً در مورد آدا گفت: "امیدوارم او شاعرانه نباشد ؛ هزینه ای که برای چنین مزایایی پرداخت می شود ، اگر مزایایی داشته باشد ، به گونه ای است که مرا مجبور می کند دعا کنم تا فرزندم از آنها فرار کند.") < /p>

اجازه تحصیل در ریاضیات برای دختری در آن زمان بسیار نادر بود و تحصیل آدا نه تنها مجاز ، بلکه تشویق کننده بود - دستاوردهای بعدی وی تصویری از آنچه زنان می توانند در صورت داشتن شانس به آنها برسند را به جهان نشان داد. به با این حال ، حتی از جوانی ، آدا در ادغام استعدادهای ریاضی خود با غرایز خلاقانه خود مهارت داشت. در دوازده سالگی ، او ماه ها روی طراحی یک ماشین پرنده کار کرد ، حتی کتابی به نام Flyology نوشت که برخی از یافته های او را نشان می داد. این پروژه زمانی متوقف شد که مادرش متوجه شد که این کار او را از مطالعات منطقی تر منحرف می کند ، اما این یک نمونه اولیه از "علم شاعرانه" بود که به آدا بال می داد. علی رغم اینکه برای اجتناب و حتی ترس از این مفهوم تربیت شده بود ، او تخیل را به عنوان "چیزی که به جهانهای غیب اطراف ما ، جهانهای علم نفوذ می کند" معرفی کرد - نه خطرناک و مخرب ، بلکه روشنگر فکری.

پرتره آدا توسط مارگارت سارا کارپنتر (1836)

آدا کنتس لاولیس شد هنگام ازدواج با ارل لاولیس ، ویلیام کینگ - اما یک شخصیت مرد دیگر در زندگی او برای داستان او بسیار مهمتر بود. در جریان یک توپ در 17 سالگی ، آدا به ریاضیدان مشهور جهان چارلز بابیج معرفی شد ، که در برنامه های بلندپروازانه برای ایجاد یک ماشین محاسبه ساعت بزرگ غول پیکر غرق شده بود که او آن را موتور تحلیلی نامید. بابیج آنقدر تحت تأثیر ذهن درخشان آدا قرار گرفت که او مربی ، شریک و دوست مادام العمر شد و او را در مقطعی چنین توصیف کرد: "آن افسونگری که طلسم جادویی خود را در انتزاعی ترین علوم پرتاب کرده و با نیرویی آن را درک کرده است. چند عقل مردانه می توانست بر آن اعمال کند. " و در واقع ، درک و بیان آدا از پتانسیل موتور تحلیلی به زودیاز بیبیج پیشی گرفت.

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

زبانی جدید ، وسیع و قدرتمند برای استفاده در آینده از تجزیه و تحلیل توسعه یافته است ، که در آن از حقایق خود استفاده می کند تا این موارد ممکن باشد کاربرد عملی سریعتر و دقیق تری برای اهداف بشریت نسبت به وسایلی که تا کنون در اختیار ما بوده است ، ممکن شده است. بنابراین نه تنها ذهنی و مادی ، بلکه نظری و عملی در جهان ریاضی ، با یکدیگر در ارتباط صمیمی و م effectiveثرتری قرار می گیرند.

در کنار پروژه موتور تحلیلی با بابیج ، Ada به طور فزاینده ای با مطالعه شیمی مغز-تلاش شخصی تر برای جلوگیری از "جنون" (در اصطلاح معاصر ، احتمالاً تمایلات افسردگی شیدایی که از پدرش به ارث رسیده است) که او می ترسید در انتظار او بود. در کمال تاسف ، تحقیقات او زمانی متوقف شد که وی در سال 1852 تنها در 36 سالگی بر اثر سرطان درگذشت ، در همان سن بایرون درگذشت. او به درخواست او در کنار او به خاک سپرده شد: شاعر و ریاضیدان ، در کنار هم. کاربردهای پیچیده علمی - یک قرن پس از مرگ وی انجام شد. یافته ها و گمانه زنی های او بر کار آلن توریگ بر روی اولین رایانه های مدرن در طول جنگ جهانی دوم تأثیر گذاشت و سرانجام موتور تحلیلی را زنده کرد. وزارت دفاع ایالات متحده یک زبان برنامه نویسی رایانه ای را به نام او نامگذاری کرد و او الهام بخش هر دختر باهوشی است که می خواهد در حوزه STEM نقش برجسته ای داشته باشد.

زنان پیشرو مورد علاقه شما در تاریخ چه کسانی هستند؟

اعتبار تصویر ویژه: ویکی مدیا

برنامه نویسی برای کامپیوترهای کوانتومی: کدام زبان ها را باید یاد بگیرید؟

برنامه نویسی برای کامپیوترهای کوانتومی: کدام زبان ها را باید یاد بگیرید؟

در اینجا چند زبان به همراه منابع یادگیری ارزشمند برای مبتدیان

عکس توسط کریس رید در Unsplash

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

در حال حاضر ، این یک خبر خوب است. رایانه های کوانتومی می توانند از رایانه های کلاسیک بسیار بزرگتر باشند. ما فقط می توانیم تغییرات باورنکردنی را که آنها با آن مواجه می شوند ، پیش بینی کنیم. با این حال ، نگرانی اصلی در این واقعیت نهفته است که کامپیوترهای کوانتومی تحت اصول متفاوتی از رایانه های کلاسیک عمل می کنند. یک اصل عجیب که اجازه می دهد ذرات در دو حالت مختلف به طور همزمان وجود داشته باشند. رایانه های کوانتومی از برهم نهی استفاده می کنند که به جای بیت از کیوبیت استفاده می کنند. یک بیت معمولاً 0 یا 1 است ، اما یک کیوبیت می تواند به طور همزمان 0 ، 1 یا هر دو باشد. سایر اصول مانند درهم تنیدگی و تداخل برای رایانه های کوانتومی مزیت قابل توجهی را ایجاد می کنند.

این انحراف عظیم از روش های رایج رایج به این معنی است که برنامه نویسان موجود باید بازی خود را برای موفقیت در حوزه کوانتومی افزایش دهند. در حال حاضر ، مواد آموزشی و یادگیری زیادی برای محاسبات کوانتومی در دسترس نیست. اکثر افراد در صنعت این س toال را دارند که باید روی کدام زبانها تمرکز کنند تا در عصر کوانتوم برتری داشته باشند.

چالش دیگر این است که تنها چند شرکت در حال حاضر دارای سخت افزار کوانتومی هستند. با این حال ، سیستم های محاسبات ابری این امکان را برای هرکسی که دارای رایانه مناسب است امکان یادگیری محاسبات کوانتومی را فراهم کرده است. و حدس بزنید ، کاملاً رایگان است. گوگل ، مایکروسافت ، IBM و D-wave همگی دسترسی به محاسبات کوانتومی مبتنی بر ابر را بدون هیچ هزینه ای ارائه می دهند. این یک فرصت طلایی برای هرکسی است که مایل است در محاسبات کوانتومی شرکت کند.

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

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

1. پایتون

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

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

Qiskit

Qiskit کیت توسعه نرم افزار منبع باز (SDK) IBM برای کار با رایانه های کوانتومی است.

Qiskit با ارائه ابزارهای مورد نیاز برای تعامل با سیستم های کوانتومی و شبیه سازها ، توسعه برنامه های کوانتومی را آسان می کند. Qiskit استمناسب برای کاربران نهایی بدون تخصص کوانتومی. با چهار بسته Qiskit ، Aqua ، Terra ، Ignis و Aer ، می توانید از الگوریتم های سطح بالا تا پالس های سطح پایین کار کنید.

اگر یادگیری Qiskit را در نظر بگیرید ، دو گزینه در دسترس است. شما می توانید آن را به صورت محلی یا در ابر بدون نصب هیچ چیزی ، با استفاده از آزمایشگاه رایانه IBM اجرا کنید.

Cirq

Cirq کتابخانه نرم افزاری مبتنی بر پایتون گوگل برای نوشتن ، دستکاری و بهینه سازی کوانتوم است مدارها و سپس آنها را روی مدارهای کوانتومی و شبیه سازهای کوانتومی اجرا کنید.

از اوایل سال 2021 ، Cirq بر روی ارائه دسترسی به یکی از کامپیوترهای کوانتومی واقعی گوگل کار می کند. در این بین ، هنوز امکان ساخت الگوریتم ها و مدارها و آزمایش آنها بر روی شبیه ساز کوانتومی وجود دارد.

Google آموزش های ارزشمندی را ارائه می دهد که به مبتدیان کمک می کند تا با استفاده از Cirq از حالت صفر به سطح شبیه سازی کوانتومی حرکت کنند.

Ocean

نرم افزار Ocean مجموعه ای از ابزارهایی است که توسط D-Wave برای حل مشکلات سخت با کامپیوترهای کوانتومی ارائه شده است. این نرم افزار محاسبات مورد نیاز برای تبدیل مشکلات تصادفی را به شکلی که رایانه کوانتومی می تواند حل کند ، انجام می دهد.

سرویس حل کننده ترکیبی D-Wave می تواند مشکلات پیچیده تا 100000 متغیر را حل کند. برای اجرای کد بر روی شبیه سازها یا دستگاههای D-Wave می توانید Ocean را به پلتفرم D-Wave متصل کنید.

منابع یادگیری مهم

اگر به دنبال شروع محاسبات کوانتومی خود هستید در سفر ، در اینجا چند منبع مفید وجود دارد: ، کامپایلر Rigetti Quil و ماشین مجازی کوانتوم.

خدمات ابری آنها همچنین نقاط دسترسی به رایانه های کوانتومی را به کاربران ارائه می دهد.

ب) اسناد برای اقیانوس

مستندات for Ocean دانش آموزان را با مفاهیم اولیه نصب و استفاده از ابزارهای Ocean به روشی آسان آشنا می کند. SDK شامل بسته های متعددی است که برای برنامه نویسی کوانتومی عالی است.

ج) راهنمای کامل کاربر IBM Q

راهنمای کاربری کامل IBM Q به کاربران امکان می دهد مدلها و برنامه های کوانتومی با IBM Quantum بسازند آزمایشگاه ، یک رابط Jupyter بهینه شده برای Qiskit.

من این یکی را امتحان کرده ام و باور نکردنی است که چگونه می توان اولین مدار خود را در آزمایشگاه کوانتومی کدگذاری کرد.

د) جان پرسکیل نکاتی در مورد محاسبات کوانتومی

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

این کتاب برای افرادی که به دنبال دانش عمیق در زمینه برنامه نویسی کوانتومی هستند ، باید مطالعه شود.

ه) آموزشهای Qiskit

این منبع شامل مجموعه ای از آموزشهای Jupyter برای کسانی است که به دنبال استفاده از Qiskit برای نوشتن برنامه های محاسبات کوانتومی و اجرای آنها در شبیه سازهای کوانتومی آنلاین هستند. با توجه به این واقعیت که آنها از مشارکت های انجمن آنلاین برای بهبود کیفیت منابع استقبال می کنند ، به سرعت در حال رشد است.

صبر کنید ، چرا (دقیقاً) می خواهید برنامه نویسی کوانتومی را بیاموزید؟

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

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

روز جانباز: تجلیل از زنانی که برای پیروزی در جنگ جهانی برنامه های کامپیوتری نوشتند

روز جانباز: تجلیل از زنانی که برای پیروزی در جنگ جهانی برنامه های کامپیوتری نوشتند

نوشته ملیسا پیرس و ماریان منقبی

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

رایانه ها ، همانطور که می شناسیم ، در اواخر دهه 1930/اوایل دهه 1940 ایجاد شدند تا معادلات پیچیده ریاضی را سریعتر انجام دهند. در طول سال های جنگ ، ارتش این رایانه ها را برای آزمایش و محاسبه مسیر سلاح های موشکی توسعه یافته جدید و همچنین رمزگشایی پیام های محرمانه دشمن ساخته و استفاده کرد.

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

بسیاری از ریاضیدانان زن مانند ستوان گریس هاپر نیروی دریایی ایالات متحده ، فرمانده نیروی دریایی ایالات متحده روت A. برندل (مارک اول) و زنان انگلیسی که در پارک بلچلی (کولوس) کار می کردند اولین افرادی بودند که از این درجه استفاده کردند ماشینهای محاسباتی آزمایشی مخفی برای تعیین محاسبات بالستیک ، شکستن پیامهای رمزگذاری شده و اجرای برنامه های پیچیده ریاضی که در نهایت ایالات متحده را قادر می سازد تا بمب هسته ای را توسعه دهد.

چون قبلاً چنین کاری انجام نشده بود ، آنها - همکاران زن آنها که با ارتش ایالات متحده کار می کردند (ENIAC 6) - مجبور بودند اولین برنامه های کامپیوتری جهان را طراحی ، بداهه پردازی و اشکال زدایی کنند. در پروژه ما ، "متولد با کنجکاوی: داستان گریس هاپر" و رایانه ها ، داستانهای زنان نظامی نه تنها برای عموم مردم بلکه برای خود صنعت فناوری از بین رفته است. بسیاری از کارگزاران جوان وقتی می فهمند که ماراتن برنامه نویسی 24 ساعته خود را اختراع نکرده است. سعی کنید دشمنان خود را در جنگ جهانی دوم محاسبه کنید.

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

ملیسا پیرس تهیه کننده و کارگردان "متولد با کنجکاوی" و جایزه است برنده مستند "زندگی در بتا دائمی". او همچنین شیکاگو زنان توسعه دهندگان (CWD) را تأسیس کرد ، یک سازمان غیر انتفاعی که به زنان کد نویسی می آموزد. شما می توانید از "متولد با کنجکاوی" در اینجا حمایت کنید.

ماریان منقبی تهیه کننده ، فیلمنامه نویس و محقق "متولد با کنجکاوی" است. پیش از این ، او در نقش های مختلف در حین کار بر روی تولیدات فیلم/تلویزیون/مجموعه های وب خدمت کرده است. او همچنین مدتی را به عنوان بازاریاب دیجیتال کار کرده است.

عکس از ملیسا پیرس گرفته شده است. درباره گریس بیشتر بدانیدهاپر و «متولد کنجکاوی» در اینجا.