دربارهٔ Arash
Yet Another Software Developer
هیچی دیگه، تا ما اومدیم یه چیزی رو یاد بگیریم، اساتید برگشتند میگن «it is dead».
حالا نه به این شدت، منتها بحثی است که در گرفته.
ماجرا چیه ؟ برادر عزیز David Heinemeier Hansson @dhh اومده گفت که TDD is dead. Long live testing !
ایشون ادعا کرده که TDD به ما درسهای زیادی داده، اما الان وقتشه که کنار بذاریم، چون مشکلاتی داره ( که حقیقتش من خوب سر در نیاوردم )
حالا گویا قرار شده امشب با Kent Beck و Martin Fowler یه Hangout بزارن و راجع به این موضوع بحث کنند. باید دید کار به کجا میکشه.
برچسبها: TDD
به تازگی اوبونتو اعلام کرده که از اول ژوئن میخواد سرویس Ubuntu One رو تعطیل کنه. البته من مدتهست که از Dropbox استفاده میکنم، با این حال چیزی در حدود ۵۰۰ مگ از دادههای قدیمیم رو روی اوبونتو وان دارم. دادههای خیلی مهمی نیستند، اما در این وانفسای اوضاع اینترنت نمیتونم اجازه بدم ۵۰۰ مگ آپلود از دستم بپره، حتا اگه هیچوقت ازشون استفاده نکنم D:
خلاصه که با کمی جستجو سرویس Mover رو پیدا کردم که بهت اجازه میده هر دو سرویس Cloud storage رو به هم متصل و sync کنی. خیلی ساده و سرراست، تقریبا از تمام سرویسهای مطرح هم پشتیبانی میکنه.
میتونی بگی کل دادههای رو یکجا انتقال بده، یا اینکه زمانبندی مشخصی کنی و بگی در بازهای زمانی مشخص دادههای یکی رو در دیگر کپی کنه.
هرچند نکتهای که هست اینه که به صورت رایگان فقط اجازه جابجا یی دو گیگ رو میده، که خیلی هم بد نیست.
برچسبها: Cloud, File serivces, Sync, Tools, Ubuntu
اگر خاطرتون باشه یه مدت پیش Path Navigator رو معرفی کردم که تلاشی بود برای ساده سازی فرایند ملال آور باز کردن و جابجایی در پوشهها که قابلیتهایی مثل Auto-Completion داشت.
الان که چند ماه از معرفیش میگذار و خودم هم حسابی باهاش کار کردم، تصمیم گرفتم دستی به سر و روش بکشم : چند تا باگ کوچیک رو برطرف کردم و ظاهرش رو کمی تغییر دادم ( الان میتونید شب پر ستاره وان گوگ رو به عنوان پس زمینه داشته باشید ).
علاوه بر این لازم دیدم یه extension برای Explorer که کار رو خیلی لذت بخشتر و روون تر میکنه هم معرفی کنم : Clover. این برنامه به Explorer تبهایی مثل تبهای کروم اضافه میکنه.
معجون تمام این اصلاحات و تغییرات شد چیزی مانند آنچه در زیر میبینید :
این بار به جای Ge.tt برنامه و کدش رو در Dropbox قرار دادم، به این ترتیب به روز کردنش خیلی سادهتر میشه، بدون اینکه لینک خراب شه. شاید بعدا رو github یا sourceForge هم قرارش دادم.
برچسبها: ویندوز, ابزار, برنامه, سی شارپ
شبکه اجتماعی گوگل پلاس به نظر من بی روح ترین و سردترین محیط اجتماعی است که در حال حاضر وجود داره، با این حا به دلیل کوچ کردن گودری ها به اون، میتوان چشم رو به روی فضای نمورش بست و از محتواش لذت برد.
من افراد زیادی رو دنبال نمیکنم، اما تولید محتوای همین افراد کم هم به نحو چشمگیری بالاست. از همه چیز و همه کس حرف زده میشه و بحث درگرفته میشه. سیاست و اقتصاد، کتاب و سینما، معضلات اجتماعی، موسیقی، سریال و …
خب حقیقتا من به همه این مطالب علاقمند نیستم و صرفا چون این فرد رو دنبال کردم ناچارم لااقل به سرتیتر تمام حرفهاش هم دقت توجه کنم. در واقع کنترلی روی چیزی که قراره بخونم ندارم و به نظر من این بده. در حجم عظیمی از داده که من هرروز باید باهاش درگیر باشم، روخوانی دلنوشته ها و بحث های عقیدتی یک فرد رو به خوبی میتوان متناسب با عنوان اسپم در نظر گرفت. با این حال این فرد حرفهایی شنیدنی و باارزش هم داره که باعث شده من دنبالش کنم.
خب، چیزی که من داشتم بهش فکر میکردم این بود که چقدر خوب بود اگر میشد تفکیکی بین این نوشته ها در نظر گرفته بشه، تا فقط مطالب مطلوبم جلوی چشمم قرار بگیره. مثلا بتوان صرفا هشتگ های خاصی از نوشته های هر فرد را دنبال کرد، هشتگهایی که خود فرد بر روی پستهاش قرار میده. البته تعداد کل دسته بندیهای کلی با این هشتگ ها نباید بیش از حد بالایی باشه تا انتخابشون مشکل نباشه.
به نظر من پیاده سازی این ایده میتونه نسبتا سرراست و نتیجه اش بسیار دلچسب باشه.
برچسبها: ایده, شبکه های اجتماعی
نمیدونم بابا از کجا، یه مساله سودکو گیر آورده بود و رو کاغذ نوشته بود. بعد از یک ساعت تلاش دیدم پاک کن برداشته و داره همش رو پاک میکنه. ازش پرسیدم مطمئنه سودکو درست و قابل حله ؟ جواب داد نمیدونه. نگاهی بهش انداختم، در یک نگاه نمیشد گفت مشکلی داره. این شد که یاد برنامه حل سودکو افتادم که چند وقت قبل نوشته بودم. سودوکو رو از روی کاغذ وارد یه فایل کردم و معلوم شد که بله، از بیخ و بن مشکل داره و قابل حل نیست.
کد برنامه رو که نگاه کردم دیدم چیز نسبتا سر راست و خوبی از آب در اومده، به خصوص اینکه به صورت همروند هم پیاده سازی شده و سرعت خوبی داره، هرچند جای برای تمیز کاری زیاد هست، با این حال …
خلاصه، از اینجا میتونید کد برنامه حل سودکو به صورت همروند و به زبان پایتون رو دریافت کنید.
برچسبها: Algorithm, Code, Concurrency, Python
فایرفاکس اخیرا پیشرفتهای خیلی خوبی رو داشته. به عنوان مثال در نسخه دسکتاپ حالا دیگه میشه بدون شروع مجدد، افزونهها رو نصب و استفاده کرد، در نسخه موبایل هم قابلیتهای جذابی مثل Reading list اضافه شده که بهتون اجازه میده صفحات رو ذخیره کرده و بعدا بخونید. علاوه بر اینکه دستی هم به سر روی UI کشیده و روان تر و زیباترش کرده.
البته سمت دیگر این رقابت هم تحولات در خور توجهی در حال وقوع است. باید اعتراف کنم تغییرات کروم من رو یاد فیلم Transformers میندازه. این مرورگر کم کم داره به غولی بی شاخ و دم تبدیل میشه. اضافه کردن App launcher برای برنامههای Offline قدم اول در تبدیل شدن کروم به فرا مرورگر میتونه باشه. وقتی سرعت بسیار بالای اون رو هم به همه این موارد اضافه کنیم، میبینیم که فایرفاکس با یک رقیب بسیار گردن کلفت طرف است.
ضمن اذعان به همه این نکات، من هنوز هم از فایرفاکس استفاده میکنم. جدای از این موضوع که احساس راحتی و امنیت بیشتری دارم، از لحاظ مصرف منابع فایرفاکس بسیار بهینه تر از کروم عمل میکنه. من هنگام وب گردی معمولا تعداد تب های زیادی رو باز میکنم. با چند بار امتحان و کمی دقت، خواهید دید که مصرف حافظه در کروم به طرز قابل توجهی بیشتر از فایرفاکس است. علاوه بر این در Task manager هم به چند تا پردازش تبدیل میشه که به دست آوردن مقدار کلی حافظه مصرفی رو سخت تر میکنه.
اگر فکر میکنید این صرفاً یک نظر و مشکل شخصی و خاص محسوب میشه، پیشنهاد میکنم به این پست از Hanselman نگاهی بندازید که اون هم دقیقا چنین دغدغهای رو تحت عنوانه Finding a low-memory browser مطرح کرده.
برچسبها: Browsers, Firefox, Tools
اولین باری که اسم برنامه WeChat رو شنیدم در یک مهمانی بودم و همه تعریف میکردند از اینکه چه برنامه خوبی است و من چقدر ازش استفاده میکنم و من را یادت باشد add کنی و این حرفها.
گذشت و چندین بار دیگر دوباره نام این برنامه را شنیدم. در نهایت دیشب تصمیم گرفتم که برای امتحان این برنامه را نصب کنم.
تقریبا ۲۴ مگ حجم برنامه بود که شاید کمی زیاد محسوب شود. داشتم توضیحاتی راجع به این برنامه را میخواندم که با اولین زنگ خطر مواجه شدم : سازنده برنامه یک شرکت چینی بود ! به عقیده من هیچگاه نمیتوان به محصولات اینترنتی کشوری که بزرگترین و پیشرفتترین سیستم سانسور را دارد و بیش از چند صد هزار جفت چشم برای کنترل تک تک اعمال و رفتار شهروندان خود به کار بسته اعتماد کرد. علاوه بر اینکه به قول استاد درس امنیت، اصولاً به محصولات این سه کشور نمیتوان اعتمادی کرد : اسرائیل، چین و روسیه.
به هر حال با عنایت به این موضوع تصمیم به ادامه مسیر گرفتم. برای Sign-up کردن، نام، نام کاربری و شماره همراه نیاز بود که وارد کردم و پس از دریافت کد امنیتی از طریق پیام کوتاه وارد محیط اصلی برنامه شدم.
از آنجایی که اسم چین حساسیت را در من برانگیخته بود، خیلی محتاطانه جلو میرفتم. پس از گذشت چند دقیقه، دو نکته بسیار مهم در این برنامه توجه من رو جلب کرد : اولا هیچ تبلیغی نمایش داده نمیشد، ثانیا این برنامه به اینصورت نبود که یک نسخه پولی داشته باشه و همه امکانات به صورت رایگان بود.
خیلی خوب همینها کافی بود ! در این شرایط سوالی بدیهی وجود دارد که پرسیدن آن از خود میتواند جلوی بخش عمدهای از مشکلات امنیتی را بگیرد، اما خیلی اوقات فراموشش میشود : چرا کسی باید چنین کاری بکند ؟ چرا فردی باید چنین سرویسی را به رایگان در اختیار همه قرار بدهد ؟ با اطمینان میشه گفت که به جز نرمافزارهای آزاد ( و نه حتی اپن سورس ) هیچ کس به خاطر خیرش این کار را نمیکنه. هیچکس. حالا گاهی اوقات این هیچکس گوگل است که یک شرکت اسم و رسم دار آمریکایی با سیاستهای کلان جهانی است که میشود با تبیین سیاستهاش سر از کارش در آورد و باهاش کنار اومد، یه وقت یه شرکت ناشناخته چینی !
انتظار دارید چکار کنم ؟ به سرعت از برنامه خارج شدم؛ جالب اینکه موقع Sign-out به من میگه پسورد بزن ! بیخیال پس شدم و رفتم یه راست uninstall کردمش. سپس یک سرچ زدم رو weChat security و … به به !
WeChat: the Chinese social media app that has dissidents worried – The Gaurdian
WeChat IM Application Could Disclose Your Password To Attackers – Slashdot
WeChat is a threat to national security claim researchers – ParityNews
در اینجا موضوعی مطرح میشود که چکیده این صحبت محسوب میشود : برای استفاده از دانش آموزش ندیدهایم !
همانطور که دیدید یک سرچ ساده چقدر میتواند اطلاعات میفیدی راجع به این محصول و یا هر محصول دیگر در اختیار ما بگذرد. اما همانطور که از محبوبیت این برنامه در جامعه پیداست، دریغ از کوچکترین تلاش. به سادگی اجازه میدهیم تا جریان پر تلاطم جمعیت، ما را به هر سو که میخواهد ببرد. هنوز به خاطر دارم که چطور چشمها به ماه دوخته شده بودم برای دیدن لوگوی پپسی، در حالی که با سر زدن به سایت پپسی، حساب توییتر آن و یا حتی عقل سالیم، به راحتی میشد کذب بودن این داستان را مشخص نمود.
فاصله ما تا دانش تنها چند کلیک است، از آن استفاده کنیم.
برچسبها: Apps, China, Security
چند روز قبل بنا به ضرورتی رفتم سراغ یکی از کتابهای مرجع دوران دانشگاه تا مبحثی رو از روی اون مطالعه کنم. در طول ترمی که این درس رو داشتم استاد جزوه قطور و جامعی میگفت، من هم به جای این کتاب، از روی یه کتاب دیگه مباحث رو دنبال میکردم. برای همین با ساختار کتاب اصلی خیلی آشنا نبودم.
کتاب رو باز کردم، سراغ بخش مرتبط رفتم و شروع کردم به خواندن … پس از چند دقیقه مطالعه، با دهانی باز، مات و مبهوت مونده بودم؛ مات و و مبهوت از اینکه این کتاب تا چه حد به درد نخوره ! گنگ و نامفهوم در بیان اصول، پراکندگی مطالب در سطح کتاب، ارجاعات نادرست به صفحات و سوالات، اثباتهای بی ارزش و گیج کنند، مثالهای نابجا و … خلاصه از از هر شاخه درخت مزخرفات، میوهای چیده بود.
برخورد به این موضوع باعث شد به خاطر بیارم که چنین تجربهای چندان استثنایی هم نیست. کتابهای بسیاری بودند در دوران دانشگاه، که جز تحمیل هزینه و افزایش حجم و جرم و زندگی دانشجو، ثمره دیگری نداشتند. این شد که تصمیم گرفتم نگاهی به سایت آمازون و نظراتی که افراد مختلف روی برخی از این کتابها داده بودند بندازم :
کتاب نظریه زبان و ماشین، لینز
Deserve one of the best poorly written for CS theory
This book is boring in places and confusing in others
One of the worst books that I have had to use in a college course
Useless
( موضوع قابل تامل این است که اگر به سایتهای در رابطه با کنکور ارشد سر بزنید، میبینید که چطور درّ گرفتن به سر تا پای این کتاب )
کتاب مهندسی نرم افزار، پرسمن
This book is actively harmful to Software Engineering
Waste of money
If I could give a zero, I would
Stay away from this book if you can
کتاب ریاضیات گسسته، روزن
Just awful
Worst math textbook. Ever
This book cools down your passion for math
Horrible Book
این لیست سر دراز دارد و درسهایی دیگر چون زبان ماشین، ذخیر و بازیابی، زبان تخصصی، محاسبات عددی و … را نیز میتوان در گنجاند.
ای کاش اساتید کمی بیشتر برای انتخاب کتابی که قراره عمری همراه و مرجع دانشجو باشه دقت و حساسیت بیشتر به خرج بدن. در کنارش خودمون هم چشم بسته هرچی که بهمون میگن خوبه رو قبول نکنیم.
برچسبها: Books, University
امروز مشغول دیدن مستندی راجع به طرز ساخت قنات به روش های سنتی بودم، خطرها و مکافاتی که افراد به جان میخریدند برای دستیابی به آب. در انتهای مستند، نیم نگاهی هم داشت به روش های مدرن برای حفر چاه و قنات و لوله کشی، و میگفت از اینکه این آب دیگه طعم و طراوت آب به دست آمده از قنات سنتی را ندارد و چقدر «بد» شده.
این اولین باری نبود که شاهد تقبیح و گله از مدرنیته در صدا سیما بودم، که به عکس این سناریو تا حدی تکراری است که من را مجاب به نوشتن این پست کرد : تکرار و تکرار و تکرار این موضوع که تکنولوژی ما را از هم دور کرده است، رفتار انسانها ماشینی شده است، آن خانه های حیاط دار قدیمی چقدر خوب بود و غیره. تلاشی ممتد برای اینکه تمام مشکلات بر دوش پیشرفت گذاشته شود.
جدای از مسایل سیاسی و تقابل اندیشه ها در نسل پیش از ما، که به خودی خود منجر به رشد چنین تفکراتی شده، ترس از تغییر، امکان منقضی شدن و رویارویی با ناشناخته ها همگی عواملی است که رشد و گسترش تکنولوژی را در کشور ما کند کرده؛ و متاسفانه به جای آموزش برای مواجهه با این تغییرات، آنچه انجام میشود محدود به بد گویی از علم است و غر زدن به آن.
حال آنکه دستاوردهایی که از رشد و ترویج علوم به دست آورده ایم بیشمار است : دسترسی راحتتر به دانش، امکان هرچه بیشتر شکوفایی استعدادها، افزایش سطح آسایش و سلامت و …
دسترسی 24/7 به طعام در کدام دوره از تاریخ 2500 ساله تمدن برای همگان میسر بوده ؟ در کدام دوره تمامی انسانها با هم برابر انگاشته میشدند ؟ حفظ محیط زیست و احترام به انواع گونه حیات چه هنگام اینچنین مصرانه پیگیری میشد ؟
با تمام این اوصاف اما، تغییر پارادایم زندگی و معاش از فرم Hunter-gatherer به فرم مدرن نیازمند آموزش است. واردات فله ای دانش و تکنولوژی و برخورد با آن نه به عنوان ابزاری برای ارتقا جایگاه خود و جامعه، که صرفا به عنوان وسیله ای برای فخر فروشی، تجمل و خرج پول و سرانه مطالعه کمتر از چند دقیقه در کشور نتیجه ای نمیدهد جز … جز آنچه که امروز شاهدش هستیم. آموزش نیاز است، آموزشی صحیح با دیدی روشن نسبت به مسیر پیش رو و قبول تغییرات.
چشم پوشی و تعریف خاطرات شیرین گذشته از پای کرسی و قصه های مادربزرگ راهکار نیست.
برچسبها: تکنولوژی, صداسیما, علم
ماموریت فراموش شده اسم کتابی است که این روزها دارم میخونمش. البته کتاب رو سالها قبل خونده بودم، اما از اونجا که به جز آخرش (!) بقیهاش رو فراموش کرده بودم، گفتم یک بار دیگه بیشینم پاش.
شخصیتی که مجرا حول اون فرد میچرخه، یکی از ماموران آی اس بی است که وظیفه تحلیل و مطالعه فضای بین کهکشانی ( عدم و خلا ) رو بر عهد داره ( Cool ! ). این فرد در تحقیقاتش به حقیقتی مهم دست پیدا میکنه که میتونه تاثیرات مهمی داشته باشه. اما افرادی هستند که از این حقایق ناخشنودند و تصمیم میگیرند برای رفع این مشکل، حافظه دانشمند ما رو به طور کامل پاک کنند.
مثل بقیه کارهای ایزاک آسیموف این کار هم در ژانر علمی تخیلی است. ضرباهنگ داستان تند و کنار گذاشتن کتاب واقعا سخته. در کنارش نکتهای که برای من بسیار جالب بود، عنایت خاصی است که آسیموف در این کتاب به مسائل نژادی دارد و اینکه چگونه با سختگیری تمام آنها را تقبیح میکند. برای مثال در بیان تعجب یکی از شخصیتها، در رابطه با اینکه چرا افراد به خاطر رنگ پوست متفاوت باید با نامهای متفاوت نامگذاری شوند میگوید، چرا افرادی که چشمانی آبی یا گوشهایی بزرگ دارند نام متفاوت بر خود ندارند ؟ در کنار این موضوع، نکوهش دائمی عمل استعمار و ستایش آزادی و آزادیخواهی در کتاب موج میزند.
هرچند من به شخصه فضای داستانهای جان کریستفر رو بیشتر میپسندم، اما خواندن این کتاب تا به اینجای کار برای من یکی که بسیار مفرّح بود. باشد که شما هم اگر دستتان رسید، بخوانیدش.
برچسبها: Books, Sci-Fi