پاسخ: ایا برنامه نویسی، شبکه و .. علم است؟

سلام،
یه راهنمایی ازت میخوام،چون میدونستم خوب جواب میدی به شما ایمیل زدم.
من یه نوجوانم و خیلی خیلی به علوم کامپیوتر مثل برنامه نویسی،شبکه و… علاقه دارم.اما یه فکری من رو آزار میده اونم اینه:
آیا این رشته ها واقعا علم هستند؟؟خاصیت بقیه علوم رو دارند؟؟مفید هستند؟؟؟
ممنون میشم جواب بدی.
با تشکر…
احسان

سلام احسان عزیز.

سوال جالبی است اما جواب دادنش بهش بسیار سخته چون عملا چندین سوال مختلف پرسیده شده که جواب‌هاشون وابستگی به همدیگه دارن. مثلا اولین نکته اینه که علم چیه؟ چه چیزی علمه و چه چیزی علم نیست؟.

فلاسفه علم در این مورد اختلاف نظر دارن ولی مثلا تعریف ویکیپدیا از علم اشاره تولید و ساماندهی دانش درباره جهان طبیعی‌داره که خب می دونیم کامپیوترها بخشی از جهان طبیعی نیستن و همین استدلال عده‌ای است که هیچ چیز مرتبط با کامپیوتر (و نه الکترونیک یا مخابرات) علم نیست. از طرف دیگه ممکنه یک فیلسوف دیگه علم، بگه علم حتما باید قابل تجربه یا مثلا قابل رد یا اثبات پذیر باشه که «علوم کامپیوتر» به شکل کلاسیک اینها هم نیستن. درست همونطور که مثلا ادبیات در این دیدگاه علم نیست.

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

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

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

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

کتاب «گوگل چگونه کار می‌کند» – با هم کار کنید، غذا بخورید و زندگی کنید

page5_before_preface

و چه کسانی باید در این اطاقک‌های مربعی [Cubicles. به اتاقک‌های ساخته شده از پارتیشنی می گویند که معمولا شرکت‌های تکنولوژی به افراد فنی می دهند تا هم فضایی شخصی داشته باشند و هم از یکدیگر جدا باشند] فشرده باشند؟ ما فکر می کنیم به طور خاص برای تیم‌های مهم است که از نظر عملیاتی مجتمع و در کنار یکدیگر باشند. در بسیاری جاها، کارمندان بر اساس اینکه چه کاری می‌کنند از هم جدا می‌شوند و مدیران محصولات ممکن است در یکجا بنشینند و مهندسان در ساختمانی آنطرف خیابان نگهداری شوند. این معمولا برای مدیران محصول سنتی که اکثرا با PERT [تکنیکی مرسوم برای بررسی و بازبینی پروژه‌ها یا برنامه‌ها کاربرد دارد] و گانت‌چارت کار می‌کنند (ابزارهایی پیچیده و شدیدا مفید برای تجارت مدیریت پروژه) و بلد هستند خودشان را مجری سرسخت «برنامه رسمی»ای که مدیران بعد از دیدن چند اسلاید زیبای پاورپوینت که مدعی می‌شود بازدهی سود این برنامه بیشتر از هزینه capital hurdle rate شرکت خواهد بود تصویب کرده‌اند، مناسب است. این تیپ مدیرها آنجا هستند تا شانه به شانه برنامه تعریف شده، محصول را تحویل دهند و هر مشکلی را رفع کنند و «خارج از چارچوب فکر کنند [Think outside the box] (که اتفاقا به داخل چارچوب‌ترین اصطلاح همیشگی تبدیل شده) و چاپلوسانه به درخواست‌های دیرهنگام مدیرعامل پاسخ مثبت دهند و کشف کنند که چطور باید به تیمشان فشار بیاورند تا آن‌ها را انجام دهد. این یعنی مشکلی نیست و حتی گاهی خوب است که مدیران محصول در جایی جدا از مهندسان بنشینند، حداقل تا وقتی که می‌توانند درجریان به روزرسانی‌های وضعیت پروژه باشند و نبض محصول را در دست بگیرند. نه اینکه ما مخالف جدی این روش باشیم اما اجازه بدهید بگوییم که این شیوه کار یک مدیرمحصول قرن بیستمی است، نه مدیری از قرن بیست و یکم.

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

کتاب «گوگل چگونه کار می کند»‌ – پیشگفتار

cover

پیشگفتار

نوشته لری پیج

موسس و مدیر عامل گوگل

page5_before_preface

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

همانگونه که اریک و جاناتان در گوگل چگونه کار می‌کند گفته‌اند ما سعی کرده‌ایم این استقلال اندیشه را در گوگل به همه کارهایی که در گوگل انجام می‌شود تسری دهیم. این مساله موتور محرکه بزرگترین موفقیت‌های ما و چند شکست بوده. در واقع شروع از پایه‌ها چیزی بود که باعث شد گوگل راه بیافتد و به مسیر ادامه دهد. یک شب رویایی دیدم (به معنی واقعی) و بعد با خیال آن از خواب بیدار شدم… چه می‌شد اگر می‌توانستیم کل وب را دانلود کنیم و فقط لینک‌ها را نگهداریم؟ پس یک خودکار برداشتم و طرحی از جزییات به روی کاغذ آوردم تا ببینم اینکار واقعا عملی هست یا نه. فکر ساختن یک موتور جستجو حتی در حوالی رادار فکری من هم نبود. کمی بعدتر بود که با سرگئی به این نتیجه رسیدیم که طبقه بندی سایت‌ها بر اساس لینک‌های ورودی، روش خوبی برای یک موتور جستجو است. جیمیل هم اول از یک خط رویایی شروع شد و وقتی اندی رابین (Andy Rubin) یک دهه قبل اندروید را شروع کرد، اکثر مردم فکر می‌کردند شکل دادن صنعت موبایل در اطراف یک سیستم عامل اوپن سورس ایده‌ای دیوانه‌وار است.

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

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

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

ترجمه فصل به فصل کتاب «گوگل چگونه کار می کند»

cover

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

نوشته اریک اشمیت و جاناتان روزنبرگ

با همکاری آلن ایگل

تقدیم به خلاقان باهوش مورد علاقه‌مان، وندی (Wendy) و بریل (Beryl).

پیشگفتار

مقدمه – درس‌های آموخته شده از ردیف اول

«فقط برو و با مهندس‌ها صحبت کن»

  • با هم کار کنید، غذا بخورید و زندگی کنید

فرهنگ – به شعارهایتان اعتقاد داشته باشید

استراتژی – برنامه شما اشتباه است

استعداد – استخدام مهمترین کاری است که می‌کنید

تصمیم‌ها – معنای واقعی نتایج

ارتباطات – روتر فوق العاده خوبی باشید

ابتکار – شهدی کهنه بسازید

نتیجه‌گیری – غیرقابل تصور را تصور کنید

تقدیم‌ها و تشکرات

یادداشتی درباره نویسندگان

همچنین توسط اریک اشمیت

لغت‌نامه

خبرنامه‌ها

کپی رایت

سوال: چرا وقتی برنامه‌ها آپدیت می شن من باید کل حجم اون برنامه رو مجددا دانلود کنم؟

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

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

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

برای روشن‌تر شدن بهتره به یک کتاب فکر کنی. نسخه اول کتاب رو داری و ناشر تغییراتی توی اون می ده! حالا دو تا راه حل داریم: فرستادن کتاب جدید برای تو یا فرستادن یک لیست از تغییرات و اینکه تو بشینی پاراگراف‌های تغییر کرده رو پیدا کنی و با متن های جدید (که شاید طولشون با طول متن قبلی فرق کنه) جایگزین کنی و مثلا اگر جایی کلی متن اضافه شده باشه مجبور بشی صفحات سفیدی لای کتاب بچسبونی و متن جدید رو روشون بنویسی و بعد شماره صفحه‌های توی فهرست رو اصلاح کنی و ….

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

تکنیک‌های سرمایه گذاری که می خواد تا ۱۲۰ سال زندگی کنه

PayPal Inc. Co-Founder Peter Thiel Interview

این سرمایه گذار چهل و هفت ساله پیتر تیل است که داره سعی می کنه ۱۲۰ سال زندگی کنه. نکته که تصمیم گرفتم در موردش بنویسم این خبر امروز بی بی سی بود که دانشمندها دارن روی واکسنی برای تمام سرطان ها کار می کنن.

آقای پیتر تیل ۴۷ ساله که از موسس های پی پل و اولین سرمایه گذارهای فیسبوک است برای رسیدن به این عمر طولانی زندگی خیلی منظمی رو پیش گرفته که بخش بزرگی اش به تغذیه مربوطه. ایشون هر روز هورمون رشد مصرف می کنه چون «کمک می کند حجم بافت عضله حفظ شود و مشکل استخوانی کمتری پیدا کنید. البته همیشه این نگرانی وجود داشته که مصرف هورمون رشد باعث سرطان شود اما به نظر من ما در دهه آینده سرطان را درمان خواهیم کرد». روش های دیگر این آقا برای عمر طولانی، نخوردن شکر، نوشیدن شراب قرمز و دویدن دائمی است. اون در رژیم غذایی خودش از رژیمی که این روزها به عنوان رژیم غار نشینی مشهوره پیروی می کنه که عبارته از تلاش برای خوردن غذاهایی که در اختیار انسان های غار نشین بوده چون هر چی باشه ما میلیون ها سال به اون شکل غذا خوردیم و فقط در چند هزار سال اخیره که داریم شیر حیوانات اهلی و گندم و … می خوریم.

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

مرتبط
رادیو گیک شماره یک – آشنایی و بخثی مفصل در مورد سینگولاریتی

پایان مسابقه برنامه نویسی و انتظار برای اعلام نتایج

فقط خواستم بگم که سرم خیلی شلوغه ولی ممنون تمام برنامه نویس ها هستم. استقبال خیلی زیاد بود و موندم چطوری داوری کنم (: تقریبا غیر ممکن است. اما مشکلی نیست و سعی می کنم جمعه برنده ها و اسپانسرها رو معرفی کنم.

جستجوی جیبریش در گوگل

محسن توجهم رو به نکته جالبی جلب کرده:

linuxgibberish

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

پ.ن. جیبریش گیبریش یا gibberish یعنی چیزهای نامفهوم و نوشته های قاطی پاتی.

پ.ن. محمد تو کامنت ها می گه که داک داک گو هم همین کار رو می کنه البته تا جایی که من یادم بود داک داک گو از گوگل استفاده می کرد و کوکی ها رو حذف می کرد… الان مستقل سرچ می کنه؟