نکته های خواندنی - علی ایرانی 📖
92 subscribers
33 photos
2 videos
1 file
150 links
📖 نکته های خواندنی از نگاه علی ایرانی

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

🆔 @airani
ℹ️ https://irani.im
Download Telegram
یه منبع خوب و جمع و جور برای اونهایی که میخواهن بیشتر با لینوکس آشنا بشن 😊

🌐 https://linuxjourney.com
 مجموعه ای از کتاب های رایگان جمع آوری شده برای توسعه دهندگان و برنامه نویسان

💬 راه اندازی چنین صفحه ای برای کتاب های رایگان فارسی موجود هم کار خوب و مفیدی هست اگر کسی حالش رو داشته باشه 😊

https://devfreebooks.github.io
شاید حال و روز خیلی از ما با پروژه هامون
 امروز جمله ای از یک دانشمند علوم کامپیوتر به نام «Donald Knuth» دیدم که به نظرم جمله مهمی هست:

«بهینه سازی قبل از موقع ریشه تمام شر ها است.»

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

پس اگر «زمان» توی پروژه هامون فاکتور مهمی هست که هست، باید حواسمون به این نکته هم باشه
 «فرآیند تست نرم‌افزار؛ یک انتخاب یا یک ضرورت؟» (متن کامل مقاله)

💡 وجود فرآیند تست نرم‌افزار معمولاً نیاز به هزینه و زمان زیادی داره، اما باید این نکته رو هم درنظر بگیریم که بیشتر محصولات نرم‌افزاری سطح متوسط و سطح عظیم، در صورتی که بدون انجام تست‌های کیفی وارد فاز اجرایی بشند، میتونند هزینه‌ و خسارت‌های کلان و گاهاً جبران ناپذیری وارد کنند؛ برای نمونه میشه به چند مورد بارز اشاره کرد:

🔅سازمان درآمد داخلی امریکا (سال ۲۰۰۶ میلادی)
دلیل خطا: عدم وجود سیستم تشخیص تقلب و لاگ نشدن داده‌ها در پرتال سازمان
نتیجه: ایجاد اختلال غیرقابل ردگیری در حساب‌های مالی (خسارت ۳۰۰ میلیون دلاری)

🔅سفینهٔ فضایی Mariner 1 (سال ۱۹۶۲ میلادی)
دلیل خطا: اشتباه برنامه‌نویس در وارد کردن فرمول محاسباتی و جا انداختن تنها یک پارامتر در فرمول
نتیجه: انحراف و بروز انفجار پس از ۲۹۳ ثانیه از شروع (خسارت ۱۹ میلیون دلاری)

🔅پروژهٔ استارت‌آپ GoZoomo (سال ۲۰۱۴ تا ۲۰۱۶ میلادی)
دلیل خطا: اشتباه در طرح اولیه سیستم و ادامهٔ مسیر توسعه با همان مدل نادرست
نتیجه: تعطیل شدن پروژه پس از حدود ۲ سال فعالیت بیش از ۶۵ نفر (خسارت تقریبی ۳ میلیون دلاری)

🔅باگ FDIV در پردازندهٔ پنتیوم اینتل (سال ۱۹۴۴ میلادی)
خطا: ایراد در فرمول محاسبهٔ اعداد اعشاری و برگرداندن نتایج نادرست در مواقعی خاص
نتیجه: اعلام خرابی و جمع‌آوری ۵ میلیون پردازنده (خسارت ۴۷۵ میلیون دلاری و کاهش اعتبار برند)

🔅دستگاه رادیوتراپی Therac-25 (سال ۱۹۴۴ میلادی)
خطا: اشتباه جزئی در تعریف حلقه و دوبرابر شدن مقدار داده در شرایط خاص
نتیجه: استفاده از دز نامناسب برای برخی بیماران (مرگ ۱۰ نفر و ۲۰ صدمهٔ فیزیکی غیرقابل جبران)
Terminal forever 😊

اگر از این مدل کمیک استریپ های دولوپری طور خوشتون میاد پیشنهاد می‌کنم یه نگاه به این سایت بندازید برای رفع خستگی خوبه ☕️

http://www.commitstrip.com/
💬 امروز مقاله ای خوندم با عنوان «شی گرایی، از حرف تا عمل» که جناب آقای امیر رضا قادری نوشته و در وبلاگش منتشر کرده.

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

قسمت هایی از مقاله:

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

اینجا می‌تونیم یه تعریف دیگه هم از برنامه‌نویسی فانکشنال ارائه بدیم:
«برنامه‌نویسی فانکشنال مدلی از برنامه‌نویسی است که در آن همه چیز یک تابع است»
۲۰۱۷ سالی هست که توسعه‌دهندگان فرانت اند باید به عقب برگردند و اصول پایه رو فرا بگیرند

💬 این عنوان مقاله ای هست که در ادامه به برخی عناوینش به صورت تیتر وار اشاره می‌کنم و اگر توسعه دهنده فرانت هستید پیشنهاد میکنم به این مقاله نگاهی بیاندازید.

- یاد بگیرید چطور کد خوانا بنویسید
- جاوااسکریپت رو عمیق تر یاد بگیرید
- برنامه نویسی فانکشنال رو یاد بگیرید
- اصول طراحی رو یاد بگیرید
- یاد بگیرید چطور با آدمها کار کنید
- یاد بگیرید چطور برای انسان ها کد بنویسید
۵ عامل عدم موفقیت از نظر موسس گروه سولیکو(کاله)

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

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

۳. نبود تعهد
افراد نسبت به کاری که باید انجام دهند تعهد ندارند. فکر می‌کنند تنها بخشی از کار که در شرح شغل آنها آمده است به آنها مربوط است. این در حالی است که فرد متعهد کسی است که دیدگاه حل مسئله دارد و تصمیم دارد مسئله را حل کند و کاری هم به شرح شغل و حیطه وظایف ندارد.

۴. پرهیز از مسئولیت پذیری
افراد از اینکه مسئولیت کاری را بپذیرند می‌ترسند ولی برای موفقیت باید هر فردی درجه بالایی از مسئولیت پذیری را داشته باشد.

۵. بی‌توجهی به نتیجه کار
باید به نتیجه کار توجه کرد. باید بررسی کرد که با تمام اقداماتی که انجام می‌دهیم در نهایت چه نتایجی حاصل خواهد شد.

منبع: وبلاگ مصطفی لامعی
اگر میخواهید یک بار برای همیشه ۰ تا ۱۰۰ #FlexBox رو در #CSS متوجه بشید پیشنهاد می‌کنم این مقاله کامل و طولانی رو تا انتها و با دقت مطالعه کنید.

اینجا هم یکسری نمونه از کارهایی که قبلا در CSS انجامش سخت بود و حالا با FlexBox آسون شده رو جمع آوری کرده.

☕️ @airaniTips
کد خوب مثل جک خوب می‌مونه، نیاز به توضیح نداره 😊

☕️ @airaniTips
 اگر با چالش استخدام برنامه‌نویس روبه‌رو هستید و علاقه‌مندید تجربه و نکات دیگران رو در این خصوص داشته باشید پیشنهاد می‌کنم مقاله مفیدِ دوست خوبم حامد تکمیل رو در وبلاگش مطالعه کنید. حامد توی این مقاله با زبانی خودمانی مستقیم رفته سر اصل مطلب و به نکات خوبی اشاره کرده که برخی از اونها رو در ادامه آوردم:

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

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

«وقتی آگهی بلند بالا با اون همه تخصص میزنی، نیرو می ترسه، فرار می کنه.»

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

☕️ @airaniTips
آشنایی با حملات جعل درخواست بین سایتی (CSRF یا XSRF) و روش های پیشگیری از آن (مقاله)

💬 در این مقاله توضیحات خوبی راجع به حملات CSRF یا XSRF داده شده و اگر هنوز با این نوع از حملات آشنایی ندارید مطالعه این مقاله کوتاه برای شما مفید خواهد بود.
☕️ @airaniTips
 ۲۲ قسمت ویدئو رایگان دوره آموزشی مقدمه ای بر ReactJS و Redux

در بین کتابخانه‌های موجود برای ساخت رابط‌های کاربری، Reactjs به عنوان یک نمونه متن باز از نوع جاوا اسکریپت دیده می‌شود. این کتابخانه هم اکنون توسط برندهایی همانند فیسبوک، اینستاگرام و سایر فعالان جامعه کاربری در حال توسعه و نگهداری است و در این میان هم وب سایت‌های زیادی مانند Airbnb، Imgur و Netflix در حال استفاده از ReactJS هستند.

💬 اگر جزو فعالین و علاقه‌مندان به توسعه وب سمت فرانت‌اند هستید و هنوز ReactJs رو شروع نکردید و علاقه‌مند هستید کار با این کتابخانه قدرتمند جاوا اسکریپتی رو شروع کنید پیشنهاد می‌کنم این دوره رایگان ویدئویی که توسط آقای احمد طحانی تهیه شده رو مشاهده کنید.

☕️ @airaniTips
💯 تلاش کنید و شکست بخورید، اما در تلاش کردن شکست نخورید.

☕️ @airaniTips
انجام کارها به روش انسان غارنشین

ما همیشه سعی می‌کنیم شروع کارها رو تا جایی که می‌شه عقب بندازیم. یه دقیقه بعد، یه ساعت بعد، تا رند شدن ساعت روی عدد ۱۲، تا بعد از خوردن چایی‌ای که تازه دم کردیم… تا اینکه متوجه می‌شیم که خورشید داره غروب می‌کنه و برای ادامه‌ی کار کم‌کم باید چراغ‌ها رو روشن کنیم. کم‌کم شب به نیمه‌هاش می‌رسه و ما با امید اینکه فردا روز دیگه‌ای هست و دیگه فردا کارا رو انجام می‌دیم، چشمامون رو روی هم می‌ذاریم.

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

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

💬 متنی که در بالا مطالعه کردید بخشی از یک مقاله به قلم آقای آرش میلانی بود که می‌توانید متن کامل رو در وبلاگ شخصی ایشون مطالعه کنید. https://goo.gl/8F34Xl
☕️ @airaniTips
نقشه راه دولوپر شدن در سال 2017
 
💬 اینجا در ادامه تصویر زیر چند تا اینفوگرافیک دیگه هست که در واقع ادامه ۳ نقطه های تصویر زیره و به صورت اینفوگرافی خیلی ساده و زیبا ملزومات وب دولوپر شدن در سال ۲۰۱۷ رو در هر کدوم از شاخه های Backend, Frontend, DevOps نشون داده. پیشنهاد می‌کنم از دست ندین

☕️ @airaniTips