بدون دنیس ریچی، جابز وجود نداشت


dennisritchie5.jpg

AT&T Bell Systems Laboratories

یادداشت سردبیر: این مقاله در ابتدا در سال 2011 منتشر شد و در سال 2022 به روز شد.

یازده سال پیش در ماه آینده، ما دو غول صنعت را از دست دادیم. یکی از آنها امروز 80 ساله می شد.

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

امثال آن احتمالا دیگر هرگز دیده نخواهند شد.

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

اما محصولات «جادویی» که اپل و استیو جابز – و همچنین بسیاری از شرکت‌های دیگر ایجاد کردند، تقریباً همه چیزهایی را که در محاسبات مدرن می‌دانیم و می‌نویسیم مدیون هستند. دنیس ریچی، سازمان بهداشت جهانی در 12 اکتبر 2011 در سن 70 سالگی درگذشت.

دنیس ریچی؟

نسل جوانی که این ستون را می خوانند احتمالاً سرشان را می خارند. دنیس ریچی کی بود؟

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

نه، دنیس ریچی یک دانشمند کامپیوتر ریش دار و تا حدودی ژولیده بود که ژاکت های ژاکت کش باف پشمی می پوشید و دفتری نامرتب داشت.

او برخلاف جابز که تحصیلات دانشگاهی را رها کرده بود، دکترا، فارغ التحصیل دانشگاه هاروارد با مدرک فیزیک و ریاضیات کاربردی بود.

و به جای دره سیلیکون درخشان، در آزمایشگاه AT&T Bell در نیوجرسی کار کرد.

بله، جرسی.مانند “چه خروجی؟”

استیو جابز بارها به دلیل ویژگی عجیب و غریب شخصیت و ماهیت مبتکرش با توماس ادیسون مقایسه شده است.

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

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

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

اما مخترع؟ خیر

دنیس ام. ریچیاز سوی دیگر، دو فناوری نرم افزاری کلیدی را اختراع و اختراع کرد که به طور موثر DNA تک تک محصولات نرم افزاری رایانه ای را که به طور مستقیم یا غیرمستقیم در عصر مدرن استفاده می کنیم، تشکیل می دهند.

به نظر یک ادعای وحشیانه می رسد، اما واقعاً درست است.

ابتدا با زبان برنامه نویسی C شروع می کنیم.

C، اساس تمام زبان های برنامه نویسی مدرن است

C که بین سال‌های 1969 تا 1973 توسط ریچی توسعه داده شد، اولین زبان برنامه‌نویسی واقعا مدرن و قابل حمل است. در 53 سال پس از معرفی، عملاً به تمام معماری سیستم ها و سیستم عامل های موجود منتقل شده است.

از آنجایی که این یک زبان برنامه نویسی ضروری، کامپایل شده و رویه ای است که امکان دامنه متغیر واژگانی و بازگشت را فراهم می کند و امکان دسترسی سطح پایین به حافظه و عملکرد پیچیده برای I/O و دستکاری رشته ها را فراهم می کند، زبان کاملاً همه کاره شد.

این به ریچی و برایان کرنیگان آن را تا حدی اصلاح کرد که در نهایت توسط کمیته X3J11 موسسه استاندارد ملی آمریکا به عنوان ANSI C زبان برنامه نویسی در سال 1989

در سال 1978 کرنیگان و ریچی این کتاب را منتشر کردند زبان برنامه نویسی C”. بسیاری از آن به سادگی به عنوان “K&R” یاد می کنند، این یک شاهکار علوم کامپیوتر و مرجعی مهم برای توضیح مفاهیم برنامه نویسی مدرن در نظر گرفته می شود. حتی امروزه از آن به عنوان متن هنگام آموزش برنامه نویسی به دانش آموزان در برنامه های درسی علوم کامپیوتر استفاده می شود.

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

محبوب ترین، C++ (تلفظ C plus plus)، که توسط بیارن استروستروپ در سال 1985 و پشتیبانی اضافه شده برای برنامه نویسی شی گرا و کلاس ها، در انواع سیستم عامل ها، از جمله هر مشتق اصلی یونیکس، از جمله لینوکس و مک، استفاده می شود و زبان برنامه نویسی اصلی است که برای توسعه نرم افزار ویندوز مایکروسافت استفاده شده است. حداقل 20 سال

هدف-C، توسط برد کاکس و تاد لاو در دهه 1980 در شرکتی به نام ایجاد شد سنگ پله، اضافه اسمال تاک قابلیت‌های پیام‌رسانی به زبان، که ویژگی‌های شی گرا و قابلیت استفاده مجدد کد زبان را بیشتر گسترش می‌دهد.

در درجه اول یک مشتق مبهم از C در نظر گرفته می شد تا زمانی که در جهان رایج شد گام بعدی و OpenStep سیستم عامل در اواخر دهه 1980 و اوایل دهه 1990 در استیو جابز بعد سیستم های کامپیوتری، شرکتی که او پس از برکناری هیئت مدیره اپل در سال 1985 تشکیل داد.

آنچه «بعد» اتفاق افتاد، البته، تاریخچه محاسباتی است. اپل NeXT را در سال 1996 خریداری کرد و جابز در سال 1997 به مدیرعاملی این شرکت بازگشت.

در سال 2001، اپل سیستم عامل Mac OS X را راه‌اندازی کرد که به شدت از Objective-C و فناوری‌های شی گرا معرفی شده در NeXTStep/OpenStep استفاده می‌کند.

در حالی که C++ به شدت در مک نیز استفاده می شود، Objective-C برای برنامه نویسی به شی گرا بومی استفاده می شود. “کاکائو” API در XCode IDE، که در تشخیص ژست‌ها و ویژگی‌های انیمیشن در iOS که آیفون و آی‌پد را تقویت می‌کند، مرکزی است.

Objective-C همچنین چارچوب هایی را برای کیت پایه و کیت برنامه که برای ساختن برنامه های بومی OS X و iOS ضروری هستند.

مایکروسافت مشتق C in را دارد سی شارپ (با تلفظ “سی شارپ”)، که در سال 2001 معرفی شد و به عنوان پایه ای برای برنامه نویسی در چارچوب دات نت عمل کرد.

سی شارپ همچنین پایه ای برای برنامه نویسی برنامه های مدرن جدید در زمان اجرا ویندوز (WinRT) است که به پلتفرم جهانی ویندوز (UWP) در ویندوز 10. همچنین در لینوکس و سایر مشتقات یونیکس به عنوان محیط برنامه نویسی Mono استفاده می شود نسخه قابل حمل چارچوب دات نت.

اما تأثیر C به مشتقات زبان C ختم نمی شود. جاوا، یک زبان برنامه نویسی سازمانی مهم (و به آن تبدیل شده است دالویک و زمان اجرا اندروید، که به عنوان محیط برنامه نویسی اولیه برای اندروید استفاده می شود) به شدت بر اساس سینتکس C است.

زبان‌های دیگری مانند Ruby، Perl و PHP که اساس وب پویا مدرن را تشکیل می‌دهند، همگی از نحو معرفی شده در C استفاده می‌کنند که توسط دنیس ریچی ایجاد شده است.

بنابراین می توان گفت که بدون کار دنیس ریچی، ما هیچ نرم افزار مدرنی نخواهیم داشت…

من می‌توانم این مقاله را به سادگی با معنای توسعه C توسط ریچی برای محاسبات مدرن و تأثیر آن بر همه افراد به پایان برسانم. اما من واقعاً فقط نیمی از کار زندگی این مرد را توصیف می کنم.

یونیکس: سیستم عاملی که همه چیز را آغاز کرد

ریچی همچنین یکی از خالقان آن است یونیکس سیستم عامل. البته پس از نمونه سازی در زبان اسمبلی، در اوایل دهه 1970 به طور کامل در C بازنویسی شد.

از آنجایی که اولین اجرای “Unics” در a DEC PDP-7 در سال 1969، به بسیاری از سیستم‌عامل‌های مشابه دیگر که بر روی معماری‌های سیستم‌های مختلف اجرا می‌شوند، جهش یافته است.

یک فروشنده بزرگ کامپیوتر را نام ببرید، و هر کدام به تنهایی یک پیاده سازی یونیکس را داشته اند. حتی مایکروسافت که زمانی صاحب محصولی به نام XENIX بود و از آن زمان آن را به SCO فروخته است (اکنون منحل شده است).

می‌خواهید روی این تصویر کلیک کرده و بزرگ‌نمایی کنید تا بتوانید درک بهتری از این «خانواده» داشته باشید.

unixhistory-simple-svg.png

اساساً سه شاخه اصلی وجود دارد.

یکی از شاخه ها یونیکس های «System V» است که امروزه با نام های IBM AIX، Oracle Solaris و HP-UX هیولت پاکارد می شناسیم. همه اینها به عنوان سیستم‌عامل‌های «بزرگ آهن» در نظر گرفته می‌شوند که برنامه‌های کاربردی تجاری و پایگاه‌های اطلاعاتی مبتنی بر معامله را در بزرگترین شرکت‌های جهان، یعنی Fortune 1000 هدایت می‌کنند.

بدون یونیکس های System V، Fortune 1000 احتمالاً هیچ کاری انجام نمی دهد. تجارت اساساً متوقف می شود.

آنها ممکن است تنها حدود 10 تا 20 درصد از جمعیت محاسباتی یک شرکت خاص را نشان دهند، اما این 20 درصد بسیار مهم است.

شاخه دوم، BSD ها (توزیع سیستم های برکلی) شامل FreeBSD/NetBSD/OpenBSD است که مبنایی برای Mac OS X و iOS است که iPhone و iPad را تامین می کند. آنها همچنین ستون فقرات بسیاری از زیرساخت های حیاتی را که اینترنت را اجرا می کنند، پشتیبانی می کنند.

شاخه سوم یونیکس اصلاً یک شاخه نیست — گنو/لینوکس. را لینوکس هسته (توسعه یافته توسط لینوس توروالدز) همراه با برنامه ها، ابزارها و ابزارهای فضای کاربری گنو، اجرای مجدد کامل یک سیستم عامل “مانند یونیکس” یا “سازگار با یونیکس” را از ابتدا فراهم می کند.

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

یکی از این ابر رایانه های لینوکس، واتسون IBM، کن جنینگز را شکست داد خطر! در حالی که جهان با هیبت تماشا می کرد.

با این وجود، تشخیص این نکته ضروری است که لینوکس و گنو فاقد کد یونیکس هستند، از این رو نرم افزار آزاد عبارت بازگشتی “GNU’s Not UNIX.”

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

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

اما دین و ایدئولوژی بس است. ما به دنیس ریچی بسیار مدیونیم، بیش از آن چیزی که بتوانیم تصور کنیم. بدون مشارکت او، احتمالاً هیچ یک از ما امروز از رایانه های شخصی، برنامه های کاربردی نرم افزاری پیچیده یا حتی اینترنت مدرن استفاده نمی کنیم.

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

بدون Cloud، بدون AWS، بدون Azure.

«برنامه‌هایی برای آن» وجود ندارد. بدون اینترنت از هر چیزی.

از دنیس ریچی، من از شما تشکر می کنم — که به همه ما این فناوری را دادید تا فناوری امروزی باشیم.

ریچی تامپسون-pdp11.jpg

دنیس ریچی (ایستاده) و کن تامپسون با یک PDP-11، در حدود 1972 (منبع: صفحه اصلی دنیس ریچی)


منبع: https://www.zdnet.com/article/without-dennis-ritchie-there-would-be-no-jobs/#ftag=RSSbaffb68