در پاسخ به مطلب جواب به چند سوال و فرمول محاسبه فاصله از خوشبختی تعداد زیادی سوال داشتیم در این مورد که چطور میشه یک برنامهنویس خوب شد. اول خواستم در این مورد یک مطلب بنویسم ولی بعد دیدم که اصولا من یک برنامهنویس خوب نیستم، یعنی اصولا اپلیکیشن نویس نیستم چه برسه به اپلیکیشن نویس خوب و همونطور که برمک گفته، منظور ما از برنامهنویس معمولا اپلیکیشن نویس است.
برمک کیه؟ نفر چهارمی که توی مصاحبهها شرکت کرده. در واقع من تصمیم گرفتم از چهار نفر از دوستان برنامهنویسم بپرسم چجوری میشه برنامهنویس خوب شد. دوستانی که برنامهنویس خوبی هستن. بعد دیدم تایپ کردن اینها سخته و بهتره صداشون رو بذارم و خب بعدش هم وسطش حرف زدم و در نهایت امر، این شما و این پادکست سی دقیقهای کیبرد آزاد:
من و همکارم در طول این برنامه براتون با چهار نفر برنامه نویس خوب مصاحبه میکنیم و نظرشون رو میپرسیم. براتون جک برنامهنویسی تعریف میکنیم و سری هم میزنیم به نقل قولهای برنامهنویسان بزرگ جهان در مورد برنامهنویسی و برنامهنویسان.
این هم یکی از اون مباحثی است که خوشحال می شم کامنتها رو ببینم و فیدبک داشته باشم چون ظاهرا علاقمند شدیم که ادامهاش بدیم.
شرکت کنندگان در این برنامه به ترتیب ظهور:
جلال بنایی : برنامه نویس جاوا و مسوول نصب اس ام اسها
توجه: به دلایل متنوع از جمله نقض کپی رایت و بودن سایتهای مرتبطتر، خواننده کتاب تصمیم گرفت که خواندن کتاب رو متوقف کنه یا اون رو در سایتهای دیگه ادامه بده. به همین دلیل فعلا فقط همین دو سه قسمت در سایت است و این کتاب کامل خونده نشده و نخواهد شد
جذاب نیست؟ یکی از بهترین دوستان شروع کرده به خوندن یک رمان که من نخوندم؛ عادت میکنیم از زویا پیرزاد. من این این دوستمون رو نمیشناسم ولی لطف کرده از طریق رسانه کیبرد آزاد، منتشرش میکنه. خوشحالم. این دوستمون نوشته:
اینکه من کیم و کجام اصلا مهم نیست. فقط فکر کردم که شاید این کتاب برای اونهایی که نمیتونند کلمه هاش رو ببینند یا اونهایی که مثل من به گوش کردن پادکست معتادند مفید باشه.
جادی یک دنیا لطف کرده و قبول کرده این فایلها رو از کسی که نمیشناسه بگیره و تو وبلاگش پست کنه. مسئولیت اینکارولی با منه. اگه بد میخونم یا مشکل دیگه ای در ضبط هست لطفا به جادی ایمیل نزنید و وقت ارزشمندشو نگیرید. ببخشید که این کانال کاملا یک طرفه است. امیدوارم که کتابهای دیگه توسط آدمهای دیگه خونده بشه و کم کم یک کتابخونه از کتابهای صوتی مجانی درست بشه که همه ازش استفاده ببریم.
ممنون وامیدوارم لذت ببرید.
برام عجیبه کسی بدون اسم این زحمت بزرگ رو بکشه. البته به راحتی میتونید برای مشکلات یا چیزهای دیگه به من ایمیل بزنید یا کامنت بذارید تا کانال یکطرفه نباشه (: از داستان گفتن بگذریم:
اشاره: دوستی یک ایمیل زده و کلی سوال پرسیده. چون سوالها جالب بودند جوابها رو گذاشتم روی سایت
۱- شما از چه زبون برنامه نویسی استفاده می کنی؟
خب در اصل من برنامه نویس نیستم (: با برنامه نویسی شروع کردم ولی بعدا بیشتر اومدم به سمت سیستم عامل و به همین دلیل زبانهای مورد استفادهام رفت به سمت زبانهای اسکریپت نویسی مثل پرل یا پایتون یا رابی. این زبون ها بامزهتر هستن و نوشتن باهاشون سریعتر از چیزهای بزرگی مثل جاوا است. در عوض معمولا برای نوشتن اپلیکیشن استفاده نمیشن. در عین حال لازمه این ضرب المثل قدیمی رو تکرار کنم که میگه یک مشکل تازهکارها اینه که برنامهنویسی رو با برنامهنویسی به زبان فلان اشتباه میگیرن. کسی که سی یاد میگیره برنامهنویسی یاد نگرفته بلکه زبان سی رو یاد گرفته. کسی هم که برنامهنویسی بلده با داشتن مرجع یک زبان یا دسترسی به اینترنت میتونه به هر زبانی برنامه بنویسه.
همونطور که گفتم، من بیشتر مدیر سیستم هستم تا برنامه نویس. حتی مدیر سیستم هم نیستم، بیشتر اسکریپت نویس هستم تا هر چیز دیگه. معمولا برنامههای کوچیکی مینویسم که کارهای جالب بکنن. مثلا یک تقویم درست کنن که بشه پرینتش کرد و بعد تا کردش و یک ۱۲ وجهی داشت که روی هر ضلعش یک ماه از سال چاپ شده. این برنامه به زبان ps برای تقویم انگلیسی هست و من برای فارسی بهینهاش میکنم. یا مثلا برنامهای که یک عالمه ایمیل رو بگیره و ببینه کی به کی ایمیل زده و بعد یک نمودار بکشه که توش افراد دایره باشن و ایمیلها فلش و معلوم بشه کیا با هم رابطه دارن. آخرین برنامهای هم که نوشتم این بود که یک فایل از شماره تلفنها باشه و یک برنامه بیاد اونو بخونه و از یکی به اون یکی اس ام اس بزنه (:
گاهی هم برای وب مینویسم. مثلا الان یک چیزی درست میکنم که ببینه من در چه ماههایی مطلب نوشتم و بعد یک فهرست درست کنه از ماهها که بتونم بذارم کنار وبلاگم و آرشیو ماهانه درست بشه.
۳- از چه سیستم عاملی استفاده میکنی؟
از سیستمعاملهای خوب: لینوکس، مک و یونیکس. مک رو روی لپ تاپ شخصیام. لینوکس رو برای تفریح و لذت توی خونه یا در حل کار برای سرورهای مخابراتی و یونیکس رو هم روی سرورهای قدیمیتر مخابراتی.
۴- بک آپ گیری از اطلاعاتتون رو چجوری انجام میدین و اونها رو روی چی ذخیره میکنین؟
خب من دو جور اطلاعات دارم. اطلاعات وب سایتم + سایتهایی که هاستشون با من یکیه و اطلاعات لپ تاپم. اولی رو به شکل هفتگی از طریق یک اسکریپت BASH انجام میدم. اول اطلاعات بانک اطلاعاتی MySQL به شکل یک فایل ذخیره میشن و بعد به همراه همه اطلاعات سایتها فشرده میشن و یک فایل تقریبا 850 مگابایتی تشکیل میدن. این فایل رو از طریق ftp منتقل میکنم به یک سرور پشتیبان گیری. اینجوری در هر وضعیتی میتونم همه سایتها رو در بدترین حالت به یک هفته قبل برگردونم. جالبه که سه روز قبل اشتباها همه کامنتهای سایتم رو پاک کردم ولی با داشتن همین بک آپها برشون گردوندم که به زودی دربارهاش مینویسم.
در مورد لپتاپم به خاطر وجود سیستمعامل فوقالعادهای به اسم مک، هیچ مشکلی نیست. برنامهای هست به اسم ماشین زمان یا تایمماشین که هر وقت هارد دیسک خارجی ۳۲۰ گیگی رو به کامپیوترم وصل میکنم به شکل اتوماتیک از فایلهایی که از آخرین بک آپ تا حالا تغییر کردن، پشتیبان میگیره. هر وقت مشکلی پیش بیاد، سی دی نصب مک رو میذارم تو کامپیوترم و هارد بک آپ رو نصب میکنم و انتخاب میکنم که دوست دارم کامپیوترم مثل چه تاریخی بشه.
حالا که خودت بحث رو پیش کشیدی خوبه این رو تکرار کنم: همین الان بک آپ بگرید! بعدا در روز حادثه خواهید گفت: دقیقا فردا میخواستم بک آپ بگیرم ها!
این رو دوستان دیگهای هم تذکر دادن. ولی جوابش رو نمیدونم (: متاسفم که اینجوریه ولی حداقل فعلا فرصت نمیکنم حلش کنم چون به اسکپلورر ورژن ۷ هم دسترسی ندارم. دوست دارم حل بشه ولی خودم دست بکار نخواهم شد فعلا (:
۶- به نظرت خوشبختی چیه؟
رسیدن به چیزی که میخوای. البته اینو الان همینطوری گفتم و تعریف فکر شده یا ساختارمندم نیست. خوشبختی برای آدمهای مختلف فرق میکنه ولی رسانهها سعی میکنن جوری جلوه بدن که همه به یک روش میتونن خوشبخت بشن یا حتی آدمهای خوششانس رو خوش بخت جا میزنن تا نشون بدن که بقیه هم شانس خوشبخت شدن رو دارن چون اگه بگن همه شانس خوش شانس شدن رو دارن حرفشون مسخره میشه یا مسخرگی حرفشون معلوم میشه (: خوشبختی راحت، آروم و شاد بودنه. چون سوال بعدی رو جلو جلو خوندم، میرم سوال بعدی (:
۷- هدفت در زندگی چیه؟
خوشبختی (: اینکه اگر به گذشته نگاه کنم احساس نکنم که موقع انجام کارها اشتباه کردم. ممکنه به گذشته که نگاه کنم با خودم بگم که اگر فلان کار رو نمیکردم بهتر بود ولی این مهم نیست. مهم اینه که در نگاه به گذشته درک کنم که در اون موقع چرا اون کار رو کردم و بدونم که اون موقع به نظرم اون کار درست بود. یک هدف دیگه هم دارم: کاری نکنم که اگر همه بدونن، ناراحت بشم. لازم نیست هر کاری رو جار بزنم ولی کلا دوست ندارم کاری بکنم که حس کنم بقیه نباید بدونن.
این چند جمله رو اینجوری هم میشه تفسیر کرد: هدفی ندارم. در لحظه سعی میکنم درست حرکت کنم ولی برای آینده دور هدفی ندارم. بخصوص اگر هدف چیزهایی مثل خارج رفتن، استاد دانشگاه درست و حسابی شدن، اختراع کردن، پول زیاد و … باشه. در لحظه راحت و شاد زندگی میکنم و معتقدم آینده خودش خوب پیش مییاد. نیومد هم مهم نیست چون من فعلا که خوشحالم (:
اوه.. این تئوری درباره خوشحالی رو هم بگم: برای سنجش میزان خوشحالی یک مرد، باید رفت سراغ گنجه لباسهاش و همه کراوات رو بیرون آورد. بعد کراواتها رو دراز به دراز در طول هم چید و طول کل کراواتها رو اندازه گرفت. این طول برابر فاصل این مرد از خوشبختی است (:
واو… آخرین قسمت! حالا که دنیا نجات یافته، در یک فصل کوتاه پنج دقیقه ای دیوید را در مدرسه میبینیم. فصل نسبتا جذابی است و با خیلی از واقعیتها هم منطبق.
خواندن این کتاب برای خودم لذت بخش بود و خوشحالم که بقیه هم در کل راضی بودهاند. بدون شک کار نواقص زیادی دارد. الان خودم مشغول گوش کردن به یک کتاب صوتی حرفه ای هستم و تفاوت کاملا واضح است. علاقمندم یک کتاب دیگر را انتخاب کنم و بخوانم و بسیار خوشحال می شوم دوستانی که قبلا اظهار علاقه کرده بودند هم کار را ادامه بدهند. بدون شک خواندن صوتی کتاب کار سختی است و حوصله و زمان میبرد ولی به نظرم کار ارزشمندی است و چیز مفیدی به جامعه اضافه میکند.
اشاره: من این متن رو با الهام از یک متن نسبتا مشابه (که الان لینکش رو ندارم) حدود چند سال پیش به عنوان یکی از اولین متون وبلاگ سابقم که فیلتر شده نوشته بودم. از اون موقع فکر کنم بیشترین متن کپی / پیست شده و دزدیده شده در فضای اینترنتی ایران باشه. الان بعد از چندین سال دیدم که همکارها دارن دست به دستش می کنن (: این شد که گفتم اینجا بنویسمش تا حداقل یک جایی روی وبلاگم باشه (:
لان حدود ۱ سال است که خيلي خسته ام و اين هفته آخر هم که ديگه دارم از پا مي افتم. چرا ؟ هميشه فکر مي کردم کمي تنبل ام اما حالا دقيقا حساب کرده ام و متوجه شده ام که خيلي کار مي کنم. ببينيد ما توي ايران ۷۲ ميليون جمعيت داريم که ۱۳ ميليون اونها بازنشسته هستند. پس مي مونه ۵۹ ميليون نفر. از اين تعداد، ۲۴ ميليون دانش آموز و دانشجو هستند يعني براي انجام کارها فقط ۳۵ ميليون نفر باقي ميمونند. توي کشور ۱۰ ميليون نفر هم توي ادارات دولتي شاغل هستند که خب عملا کاري انجام نمي دن. پس براي پيش بردن کارها تنها ۲۵ ميليون نفر باقي مي مونند. از اين ۲۵ ميليون نفر هم تقريبا ۴ ميليون نفر آخوند و ملا و سانسورچي اينترنت و نماينده مجلس هستند پس فقط ۲۱ ميليون باقي مي مونن و اگر بدونيم که تقريبا ۱۷ ميليون آدم جوياي کار داريم، معنيش اين خواهد بود که کل کارهاي مملکت رو ۴ ميليون نفر دارن انجام ميدن. اما حدود ۲ ميليون نفر هم نيروهاي مسلح داريم و اين يعني فقط ۲ ميليون نفر نيروي کار باقي ميمونن. از بين اين دو ميليون نفر، ۶۴۶۹۰۰ عضو پليس و وزارت اطلاعات و نيروهاي سرکوب هستند پس کلا مي مونيم ۱۳۵۳۱۰۰. حالا اين وسط ۶۴۹۸۷۶ نفر بيمار داريم که قدرت کار ندارند و بار کارهاي کشور افتاده روي دوش ۸۰۶۲۰۰ نفر از جمعيت. فراموش کردم بگم که ما دقیقا ۸۰۶۱۸۶ نفر هم ممنوع القلم، ممنوع التصوير، ممنوع الصدا و ديگر انواع زنداني داريم پس کل کارهاي کشور افتاده روي دوش ۱۴ نفر! از اين چهار ده نفر ۱۲ تاشون عضو شوراي نگهبان هستند و پس متوجه مي شيم که کل کارهاي کشور افتاده روي دوش دو نفر: من و تو ! و تو هم که داري وبلاگ ميخوني.
قسمت جدید! باور بکنید یا نه جنگ جهانی در حال شروع است. کامپیوترهای سرخود جنگ میخواهند چون وقتی کاری را شروع میکنند باید تمامش کنند. فقط یک قسمت دیگر از این داستان باقی مانده است که فردا خواهم گذاشت (:
در عرض ۴۸ ساعت تعداد سفارشها از مقدار سی دی ای که من داشتم و هزینهای که در نظر گرفته بودم گذشت (: هم لذت بخش است هم عجیب و هم مسوولیت سنگین (: احتمالا هفته آخر را باید به جواب دادن ایمیل و نوشتن آدرس روی پاکت ها بگذرانم. دو سه نکته را لازم است بنویسم:
هزینه اینکار واقعا کم است. چاپ و ارسال هر سی دی حدود ۲۶۰ تومن درمیآید.
کار پستی بسیار لذت بخش است. بخصوص اگر سفارش داشته باشیم از شهرستان های کوچک، مراکز علمی، سوئد، افغانستان و آلمان (:
به دلیل پر شدن ظرفیت، من فعلا دیگر سفارش جدید قبول نمیکنم. اما دو روش خوب هست: کپی کردن سی دی دیگران چون این سی دی یک نرم افزار آزاد است و دانلود iso از اینترنت و نوشتن آن روی سی دی. فایل ایزوی ویکیپدیای فارسی آفلاین را از اینجا دریافت کنید و آن را روی یک سی دی بنویسید. فایل فقط ۶۰ مگابایت است.