منبع اصلی نوشتار زیر در این لینک قرار دارد

شروع یادگیری چیزایی که بلد نیستم مثل Ruby

2-3 روز پیش تصمیم گرفتم روزانه حداقل 2-3 ساعت صرف یادگیری چیزایی که بلد نیستم بکنم. خب برای همینم یه لیست ازشون تهیه کردم که به شکل زیره:

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

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

شروع یادگیری چیزایی که بلد نیستم مثل Ruby

2-3 روز پیش تصمیم گرفتم روزانه حداقل 2-3 ساعت صرف یادگیری چیزایی که بلد نیستم بکنم. خب برای همینم یه لیست ازشون تهیه کردم که به شکل زیره: روبی + فریمورک RubyOnRails پایتون + فریمورک جنگو یا flask scala ایجاد اپلیکیشن اندروید با جاوا یا هر چیز دیگه یه فریمورک جاوااسکریپت مثل AngularJs یا BackboneJs […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

Radar – July 2014

سلام؛ آن قدر مطلب نگذاشتم تا دوباره یک Radar دیگر منتشر شد. اما چیزهایی که نظر من را جلب کرد:

  • بودن Docker در بین ابزارها و در دسته‌ی Trial . فکر نمیکردم به این زودی توی این دسته قرار بگیره!!!
  •  PostgreSQL as NoSQL… آن هم در دسته‌ی Trial. واقعا جالبه که یک RDBMS با اضافه کردن یک سری ویژگی/نوع داده ( DataType ) مثل Json به عنوان یکی از گزبنه‌های NoSQL روی میز باشد. تحت شرایطی که شما Distribution ( از هر منظری: Replication, Sharding, … ) نیازی نداشته باشی، PostgreSQL گزینه‌ی خوبی برای NoSQL ( یا اگر بهتر بخوام بگم  Document-based DB ) هستش.
  • ARM Server SoC … پیش به سوی سرور های کم مصرف ARM.
  • عدم پشتیبانی مرورگرها از استانداردهای Web Component ها ( Template, HTMLImport, ShadowDOM و CustomElement ) باعث شده که این بستر/ویژگی در دسته‌ی ASSESS ها قرار بگیره. البته شخصا نظرم این هست که Polymer به عنوان یک framework که مبتنی بر همین استانداردها طراحی شده میبایست به عنوان یک ابزار در دسته‌ی Trial قرار میگرفت. ( Polymer واقعا فوق العاده است… اگر بعد وقت شد یک پست کامل در رابطه‌اش مینویسم؛ البته اگر وقت شد…! (^_^) ).
  • وجود Java 8 در دسته‌ی Adopt ها خیلی طبیعه… جز این انتظار نمیرفت.
  • Go language در Adopt….! دوره‌ی پیش هم ( January 2014 ) هم Clojure در همین دسته‌ بود… با توجه به رویکردی که برای معرفی زیان های Concurrent دارند، نبودن Erlang در لیست شان ( و بودن Go ) باعث میشه به جامعیت داده های Radar شک کنم. البته اگر حوزه‌ی کاری ThoughtWorks را که به نظر میرسه بیشتر نرم افزارهای Data-Orinted هستند در نظر بگیریم، ایرادی نمیشه گرفت.
  • Reactive Extensions across language : همچنان Reactive مبحث داغی است که انتظار دارم فرارتر از پست های وبلاگی بره؛ فعلا پروژه های Enterprise ای که بر اساس این معماری طراحی شدن واقعا کم هستند.
  • Scala, the Good Parts: دو نکته منفی در رابطه با Scala خیلی مشهوده… اولی زمان کامپایل است که بیش از میزان انتظار هست ( که همیشه نسبت به Java سنجیده میشه… ) و دوم ویژگی های بیشمار این زبان که محتمل است توی پروژه های بزرگ مشکلاتی را بوجود بیاره… مثلا implicit conversions که برخی معتقدند که خوانایی کد را به میزان قابل توجهی کاهش میده، یا موارد مشابه دیگر. راهی حلی که ToughtWorks پیشنهاد میدهد غیر فعال کردن برخی از این ویژگی‌هاست، تا کامپایلر در گیر آن‌ها نشود ( و سریع تر فرایند کامپایل را انجام بدهد ) و البته پیچیدگی‌ها در «کد خام» ( کدی که نوشته میشود، بدون در نظر گرفتن Design Pattern ها Architecture سیستم )  هم کاهش پیدا کند.
  • به نظر میرسه AngularJS یک framework انقلابی دیگر ( مثل کتابخانه‌ی jQuery ) هست که گرد و خاکی به پا میکنه و تا مدت‌ها پایدار باقی میمونه… اوایل من نظری مثبتی نسبت بهش نداشتم و CanJS را ترجیح میدادم؛ اما این روزها اگر کسی از من مشاوره بخواد عموما AngularJS را معرفی میکنم.
  • Play Framewrok هم به عنوان شناخته شده ترین framework تحت وب Scala در این لیست جایگاه خوبی داره. البته spray هم در این Radar گنجانده شده؛ به نظر میرسه Scala برای شرکت های معتبری مثل ToughtWorks داره قابل اطمینان تر میشه.
  • حضور Julia، R, Rust و Wolfram Language نشان از مهمتر شدن ( بیشتر مورد توجه قرار گرفتن ) آنالیز داده‌ها در هر اندازه‌ای و در هر موسسه‌ای دارد… حالا کی حوصله داره بره یکی از این ها را یاد بگیره؟!؟!؟!

ادامه مطلب