یادداشت های یه برنامه نویس
280 subscribers
39 photos
3 videos
3 files
80 links
این کانال برای در میان گذاشتن یادداشت ها و تجربیات جالب در مورد برنامه نویسی هست امیدوارم دوست داشته باشین.

@one_programmer

https://t.me/one_programmer

ادمین @EngMohsen

Linkedin:https://www.linkedin.com/in/mohsen-rajabi72
Download Telegram
بهتره بخونید :
اولین زبانی که به صورت حرفه ایی رفتم سراغش و 2 سالمو پاش گذاشتم یه اشتباه بزرگ بود.
اولش با PHP آشنا شدم خیلی دوسش داشتم و دارم، اما به نظرم زبانی نیست که یه برنامه نویس بیاد، 2 سالشو و حتی بیشتر وقتشو پاش بزاره. زبانیه که باید دوستش داشت و تو کارای کوچیک ازش استفاده کرد، نه اینکه همه تمرکزت رو اون باشه.
زبان PHPیکسری مشکلات بزرگ داره که هنوزم این مشکلات وارد هستن.
1 - اولین حرفی که بهش وارده اینه که زبانی هست که فقط میتونید ازش برای وب استفاده کنید و. تمام، هیچ قابلیت دیگه ایی بهتون نمیده. در حالی که اگه پایتون یا روبی بلد باشید مختص وب نیست. میتونید برنامه غیر وب بنویسید، یا تو حوزه روباتیک و هوش مصنوعی برید، یا سراغ پردازش تصویر تو وب برید، یا سراغ برنامه های بزرگ با داده های بزرگ (Big Data) برید.
2 - مورد دوم اینه که PHP رو نمیتونید خوب به صورت multi thread کد بزنید. خود زبان PHP به صورت تک Thread هست، یکسری کتابخونه براش هست اما کسی توصیه استفاده نمیکنه. کسی هم استفاده نمیکنه. خود فریمورک های PHP ازش استفاده نمیکنن.
3 - زبان PHP یک زبان شئ گرا هست اما اصول کامل شئ گرایی رو رعایت نکرده، این زبان در قیاس با پایتون، روبی، جاوا، سی شارپ و... تو مبحث شئ گرایی ضعیف تر هست.
این رو باید بگم که PHP 7 از پایتون یا روبی خیلی سریعتره، اما نکته ایی که مهمه اینه، درسته بقیه مقداری کند تر هستن ولی ویژگی های دیگه ایی بهتون میدن. وقتی میگم کند فکر نکنید خیلی کند هستن کسی ازشون استفاده نمیکنه اشتباه نکنید، تو ایران شرکت های بزرگی مثل کافه بازار پایتون هست یا... تو خارج ایران هم گیتاب روبی هست یا گوگل خیلی از پایتون استفاده میکنه.
من اگه ابتدا با پایتون آشنا میشدم برام خیلی بهتر بود چون 3 موارد بالا رو نداره
اولا پایتون مختص وب نیست همه جا کاربرد داره: وب، Big Data, روباتیک ، سیستم عامل، برنامه دسکتاپ و.... تو همع جا میتونی استفاده کنی.
دوما بحث multi thread رو به خوبی انجام میده.
سوم تمام مباحث شی گرایی رو پوشش داده.
چهارما اگه به آماری که خود گیتاپ داده نگاه کنید از زبان هایی که بیشترین مخزن رو دارن جاوا و جاوا اسکریپت هستن بعد اونا پایتون و php هست. تو سایت stackoverflow هم اگه نگاه کنید بیشتر سوال ها برای جاوا اسکریپت و جاوا و پایتون هست.
سوال : چرا در مورد جاوا د جاوا اسکریپت بحثی نکردم ؟
جواب : بحث من در مورد زبان های سمت سرور بود پس با جاوا اسکریپت کاری نداریم اما جاوا به درد هر پروژه ایی نمیخوره فقط پروژه های خیلی خیلی بزرگ اونم نه همه پس داخل بحث ما نمیشه.
کلام آخر :
بهتر بود کارم رو با پایتون یا روبی شروع میکردم اما نشد الآنم سی شارپ و php رو ترکیبی کار میکنم، توصیم اینه اگه php بلدید و کار میکنید پس هیچی اما اگه تازه استارت زدید یا کسی اطرافتون ازتون مشورت میخاد زبان قوی تری از php رو بهش معرفی کنید.

@one_programmer

http://telegram.me/one_programmer
This media is not supported in your browser
VIEW IN TELEGRAM
از مهندس های برق متشکر باشید چون اگر دنیا فقط مهندس مکانیک داشت این وضعمون میشد
@one_programmer
#استخدام برنامه نویس سمت سرور ASP MVC در انتشارات بین المللی گاج
1) داشتن حداقل 2 سال سابقه کار مرتبط
2) توانایی نوشتن کد تمیز و خوانا
3) مسلط به مباحث OOP
4) آشنا به design pattern ها
5) آشنا به برنامه نویسی چند لایه
6) مسلط به ASP MVC و ASP WebApi
7) آشنا به git یا tfs
8) آشنا به EntityFramework
ارسال رزومه به apps@gaj.ir
@one_programmer
@one_programmer
جلسهٔ ۲۲۷ تهران لاگ، پنج‌شنبه ۲۰ آبان ۱۳۹۵ از ساعت ۱۳:۰۰ تا ۱۸:۰۰ با موضوعات زیر در «شتاب‌دهندهٔ آواتک» به نشانی «تهران، خیابان کارگر شمالی، بالاتر از بزرگراه جلال آل احمد، پردیس دانشکده‌های فنّی دانشگاه تهران، دانشکدهٔ مهندسی نفت، طبقهٔ پنجم» برگزار خواهد شد.

از ساعت ۱۳:۰۰ تا ۱۴:۳۰ جلسهٔ گروه کاربران پایتون تهران برگزار خواهد شد.

▪️ ارائهٔ اول: Bootstraping a Telegram Bot for TehranLUG توسط آقای جواد ارجمندی از ساعت ۱۴:۳۰ تا ۱۵

▪️ ارائهٔ دوم: Sinatra Microframework توسط آقای محمدرضا حقیری از ساعت ۱۵ تا ۱۵:۳۰

▪️ارائهٔ سوم: معرفی الکترون، چارچوبی (framework) برای ساخت اپلیکیشنهای چند سکویی (cross platform) توسط آقای علیرضا اطهاری از ساعت ۱۶:۳۰ تا ۱۷

▪️ارائهٔ چهارم: سکیور کدینگ توسط آقای علیرضا فریدونی از ساعت ۱۷ تا ۱۷:۳۰

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

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

نکات قابل توجه:

خواهشمند است در صورت شرکت در جلسه، برای ورود به دانشگاه، از طریق لینک زیر ثبت‌نام کنید.

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

لینک ثبت‌نام: https://evand.com/events/tehlug227

صفحهٔ جلسه در سایت رسمی تهران لاگ: http://tehlug.org/index.php?page=entries/227

@one_programmer
میانگین سنی کارمندان شرکت های معتبر . فیسبوک با 28 سال کمترین است
@one_programmer
@one_programmer
زبان #برنامه‌نویسی #ترامپ_اسکریپت #TRUMP_SCRIPT

انتخاب ترامپ پیامدهای متنوعی داشته، از جمله در دنیای برنامه‌نویسی. یه آدم خوش ذوق با شعار Make Python Great Again اومده و زبونی درست کرده که با موهای طلایی #ترامپ هماهنگه. بعد از نصب کافیه فایل رو با پسوند tr ذخیره کنید و با دستور TRUMP اجراش کنین. بعضی از قواعد برنامه نویسی اینها هستن:

🔹هیچ عدد اعشاری نمی تونین استفاده کنین. فقط اعداد صحیح! آمریکا با هیچ چیز نصفه و نیمه کار نداره

🔹همه اعداد باید از ۱ میلیون بزرگتر باشن، ترامپ با اعداد کوچیک کار نداره

🔹هیچ دستور ایمپورتی پشتیبانی نمی شه، همه چیز باید در داخل ساخته بشه

🔹به جای عبارت های منسوج True و False، از Fact و Lie استفاده میکنیم

🔹تنها اسامی مشهور آمریکایی بخصوص سیاستمدارها میتونن به عنوان اسامی متغیرها استفاده بشن

🔹همه برنامه ها باید با عبارت America is great تموم بشن

🔹ترامپ اسکریپت روی ویندوز اجرا نمی شه چون ترامپ به PC اعتقاد نداره

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

🔹حروف بزرگ و کوچیک مهم نیستن

🔹اگر کامپیوتر در چین باشه، برنامه اجرا نمی شه. قرار نیست چینی ها تکنولوژی های آمریکا رو بدزدن

🔹در صورتی که از فلگ Wall– استفاده بشه، کامپیوترها داخل مکزیک هم نخواهند تونست ترامپ اسکریپت ها رو اجرا کنن

🔹با روت اجرا نخواهد شد چون آمریکا برای بزرگ بودن نیاز به کمک کسی نداره. ما فقط به ترامپ نیاز داریم.

منبع:
jadi.net/2016/11/trump-script

@one_programmer
@one_programmer
ماکرسافت ! :)))
ماکروسافت در راستا تغییر سیاست های خودش به لطف ساتیا نادلا، اومده Sql Sever رو برای لینوکس منتشر کرده.
خبر خوب دیگه ایی که هست Visual Studio با همون قابلیت های خودش برای سیستم عامل مک منتشر شده.
خبر های خوبی بودن باید تو آینده منتظر این باشیم تا برنامه نویس های لینوکس بتونن از همه این ابزار ها استفاده کنن.
یه زمانی مدیریت ماکروسافت لینوکس رو به یک سرطان تشبیه کرده بود ! که داره تمام دنیا رو میگیره، اما حالا با تغییر نگرش مدیریت جدید میبینیم که ماکروسافت به بنیاد لینوکس پیوسته، و داره ابزار های خودش رو cross platform میکنه.
خبر دیگه ایی که هست گوگل به بنیاد Net. پیوسته و میخاد تو تمام پلتفرم های ابری خودش از Net. استفاده کنه.
@one_programmer
@one_programmer
آیا برنامه‌نویسان و توسعه‌دهندگان باید مدرک دانشگاهی داشته باشند؟

آیا برنامه‌نویسان و توسعه‌دهندگان جهت ورود به بازار کار به مدرک دانشگاهی نیاز دارند؟ یکی از فرضیات نسل‌های قدیمی‌تر این بود که مدرک تحصیلی دانشگاهی بهترین راه برای به حداکثر رساندن احتمال موفقیت‌های شغلی، با حقوق بالا و همچنین در رشتهٔ مورد علاقه‌تان است؛ اما زمانه تغییر کرده است و حالا بیشتر و بیشتر دربارۀ توسعه‌دهندگان موفقی می‌شنویم که هیچ‌وقت مدرک معتبری نگرفته‌اند، یا کسانی که از دانشگاه ترک تحصیل کرده‌اند و در سیلیکون‌ولی کسب و کار بزرگی را رقم زده‌اند! هر روز مقالات مختلفی می‌بینیم که اعتبار دانشگاه و مدارک دانشگاهی را زیر سوال می‌برند، به طوری که به نظر می‌رسد شاید تاریخ مصرف نهادهای دانشگاهی قدیمی گذشته است. برای روشن‌تر شدن این مسئله مثالی می‌زنیم؛ کودکانی که در سنین ابتدایی مشغول یادگیری برنامه‌نویسی، ساخت اپلیکیشن و وبسایت می‌شوند، همان‌طور که رشد می‌کنند، به برنامه‌نویسی به عنوان شغل و حرفهٔ آیندهٔ خود نگاه می‌کنند. آن‌ها اغلب خودآموخته هستند، به طوری که با استفاده از سایت‌هایی همچون گوگل، استک‌ اورفلو و ... به یافتن پاسخ‌ها و منابع آموزشی می‌پردازند و سپس چیزی که نیاز دارند بدانند را یاد می‌گیرند. بنابراین طبیعی است که وقتی این نسل به سن بلوغ می‌رسد، با تعجب از خود می‌پرسد که آیا برای برنامه‌نویس شدن لازم است به دانشگاه بروم؟ در این مقاله قصد داریم ببینیم که برای ورود به حوزه‌ٔ توسعهٔ نرم‌افزار آیا واقعا باید به دانشگاه رفت یا خیر؟ با سکان آکادمی همراه باشید.

Nick Larsen متخصص داده در استک‌ اورفلو و به عنوان سخنران در مورد چگونگی استخدام شدن به عنوان برنامه‌نویس، سوال بالا را این طور پاسخ می‌دهد تقریبا همیشه بستگی به شغلی دارد که می‌خواهید برای استخدام شدن در آن درخواست بدهید!. به گفتهٔ وی:

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

طبق نظر Nick، سه حالت دربارۀ هر شغلی وجود دارد:
- مشاغلی که در آن مدرک تحصیلی الزامی ندارد،
- مشاغلی که داشتن مدرک، مزیت محسوب می‌شود ولی لزومی ندارد
- و مشاغلی که در آن‌ها مدرک تحصیلی یک الزام است.

گزارشی در رابطه با برنامه‌نویسی نشان می‌دهد که در سال 2016، چیزی در حدود 56 درصد برنامه‌نویسان در حقیقت مدرکی در علوم رایانه یا مدارک مرتبط ندارند. محبوب‌ترین روش یادگیری برای برنامه‌نویسان به نوعی «خودآموزی» است (69 درصد پاسخ‌دهندگان بیان کردند که حداقل بخشی از اطلاعات‌شان را خودشان یاد گرفته‌اند. 13 درصد هم گفتند کلا همه چیز را به طور خودآموز یاد گرفته اند.)

آیا واقعا بیشتر شرکت‌ها به مدرک تحصیلی نیازی ندارند؟
از 4499 شغلی که در حال حاضر در بخش مشاغل استک‌ اورفلو (در همۀ کشورهای دنیا) لیست شده‌اند، با یک جستجوی صفر و یکی حاوی عبارت «مدرک دانشگاهی» و یا معادل‌های آن، 1760 مورد یافت شد؛ بنابراین می‌توانیم پیش‌بینی کنیم که 2739 مورد یا 61 درصد هیچ مدرکی را به عنوان ملزومات مشخص نکرده‌اند و 39 درصد، از مدرک به عنوان پیش‌نیاز یا مزیت نام برده‌اند.

وقتی فیلتر منطقه‌ای را فعال کنیم، درصد مشاغلی که در ایالات‌متحده به مدرک تحصیلی نیاز دارند به طور مشخص بیشتر بود. از 2287 شغلی که در ایالات متحده نام برده شده بود، با اعمال جستجوی قبلی، به عدد 1198 رسیدیم. یعنی 1089 مورد یا 48 درصد هیچ مدرکی را به جزء ملزومات نام نبرده‌اند و 52 از مشاغل از یک مدرک به عنوان پیش‌نیاز یا مزیت نام برده بودند.

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

صرف نظر از سطح مدرک مورد نیاز، معمولا این که شما مدرک تحصیلی نداشته باشید ولی بتوانید نشان بدهید که سابقهٔ موفقیت کافی در زمینهٔ مرتبط با مسائل مورد نظر شرکت را داشته‌اید، مورد قبول است. حتی برای پیدا کردن کاری در سطح دکتری، چند مقاله منتشر شده در رابطه با کاری که آن‌ها می‌خواهند انجام دهند احتمال بیشتری را برایتان رقم می‌زند تا داشتن مدرک دکتری با سابقه کمتر یا عدم تجربه در زمینه مورد نظر! به این خاطر آن است که عبارت «داشتن تجربهٔ مشابه» در فرم‌های آگهی استخدام، این اندازه پراستفاده است.
@one_programmer
البته به این بدان معنا نیست که می‌توانید بدون مدرک و به راحتی برای شرکت در هر مصاحبه‌ای که می‌خواهید اقدام کنید. بعضی شرکت‌ها از بقیه سخت‌گیرترند؛ در یک شرکت بزرگ و صاحب اسم و رسم، داشتن مدرک تحصیلی ممکن است نیاز باشد و مدیر کارگزینی حتی اگر بخواهد نیز احتمالا قدرت نادیده گرفتن این الزام را نخواهد داشت. اگرچه در بسیاری از استارتاپ‌ها و شرکت‌های کوچک، احتمالا کمتر تحت‌تاثیر تحصیلات‌تان قرار می‌گیرند و بیشتر به اخلاق کاری، مهارت تفکر انتقادی و تجربه‌تان اهمیت می‌دهند.

مدرک به تنهایی کافی نیست!
اگر در حال حاضر مدرک دانشگاهی دارید، نمی‌توانید به عنوان تکیه‌گاه روی آن حساب کنید. انتظار نداشته باشید مدرک‌تان را نشان دهید و صاحبان مشاغل برای استخدام کردن‌تان صف بکشند. نمونه کار، بیشتر از مدرک به دردتان می‌خورد، حتی اگر مدرک جزء موارد لازم باشد. بنابراین وقتی دربارۀ کارهای دانشگاهی‌تان صحبت می‌کنید، به لیست کردن تمامی چیزهایی که یاد گرفته‌اید نپردازید. کاملا بستگی به شما دارد که ثابت کنید مدرک تحصیلی‌تان فقط تکه‌ای کاغذ نیست. پس دربارۀ این که چگونه دانش شما به مسائل مورد نظر شرکت مربوط می‌شود صحبت کنید. دربارۀ این که چگونه تحصیلات‌تان باعث شده تا تجربیات‌تان را بیشتر کنید و چگونه باعث شده به برنامه‌نویس بهتری تبدیل شوید. صنعت تکنولوژی به سرعت در حال پیشرفت است و هیچ‌کس دربارۀ این‌ که شما در پنج سال یا پنج ماه گذشته در دانشگاه چه چیزی یاد گرفته‌اید، اهمیت نمی‌دهد. تنها چیزی که مهم است این است که در حال حاضر چه کاری از دستتان برمی‌آید. سال‌ها پیش یعنی سال 2005 فردی به اسم Joel به عنوان توصیه‌ای برای دانشجویان دانشگاهی نوشت:

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

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

بوت کمپ‌های کدنویسی چطور؟
اخیرا پیشرفت‌های زیادی در آموزشگاه‌ها و هنرستان‌های انتفاعی غربی در برگزاری Bootcamp (بوت کمپ یا اردو) های آموزشی کدنویسی دیده‌ایم که وعدهٔ آموزش چیزهای ضروری کدنویسی را تنها در 12 هفته به شما می‌دهند و سپس به شما کمک می‌کنند شغل مناسبی پیدا کنید. بعضی از این اردوهای آموزشی درصد موفقیت بالایی در استخدام دارند و تمایل دارند هزینه کمتری نسبت به 4 سال دانشگاه برای‌تان داشته باشند (در حال حاضر، در ایران بوت کمپی برنامه‌نویسی به شکلی که در سیلیکون‌ولی دیده می‌شود نداریم.)

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

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

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

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

اما وقتی صحبت از یافتن شغلی به عنوان برنامه‌‌نویس می‌شود، چیزهای مهم‌تری از داشتن مدرک خودنمایی می‌کنند؛ چه کسی احتمال بیشتری برای استخدام شدن دارد: کسی که 3 سال تجربهٔ کاری دارد و بدون مدرک است یا کسی که مدرک دارد ولی فقط تجربهٔ کارآموزی دارد؟ پاسخ به این سوال در سایت Quara -که البته در کشور ایران فیلتر است!- به جمع‌بندی جالبی رسید و آن هم این که «قطعا اطلاعات کافی برای پاسخ به این سوال وجود ندارد!» یا پاسخ مهندس نرم‌افزار Matt Kellner با این مضمون که «هر دو می‌توانند برای کار مناسب باشند. بستگی دارد که شما چه کاری را می‌توانید انجام دهید.»

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

Do Developers Need College Degrees?
http://www.stackoverflow.blog/code-for-a-living/do-developers-need-college-degrees

@one_programmer
@one_programmer
آغاز ثبت‌نام چهارمین همایش پایتون

قیمت بلیت‌ها به صورت پله‌کانی ۱۰، ۱۵ و ۲۰ ت خواهد بود.
https://evand.com/events/irpycon
@one_programmer
@one_programmer

امروز میخام با یه ORM خوب آشناتون بکنم
همیشه یکی از مهمترین قسمت های برنامه نویسی، نحوه ارتباط برنامه نوشته شده و دیتابیس می باشد. از روش های مختلفی از قبیل ADO.NET Classic یا Entity Framework برای این کار استفاده می کنیم. در اینجا با ORM آشنا میشید که این ارتباط را بسیار خوب برقرار می کند و دارای سرعت بسیار خوبی در ایجاد ارتباط با دیتابیس و اجرای دستورات است.

Dapper یک ORM کوچک، سبک و سریع می باشد که دارای محبوبیت زیادی است که وظیفه آن مدیریت ارتباط بین محیط برنامه نویسی و دیتابیس می باشد. شما با کمک Dapper می توانید به سادگی دستورات SQL خود را در قالب Stored Procedure و یا دستورات مستقیم SQL اجرا نمائید. Dapper کمک می کند قسمت هایی مانند مدیریت Connection ها، اجرا Command های SQL ای و همچنین تبدیل نتایج درخواست (Select Result) به ViewModel بسیار ساده و سریع انجام شود.

سرعت اجرا واکشی 500 رکورد در EntityFramework برابر با ⁣⁣631ms است در حالی که این زمان در Dapper به ⁣49ms کاهش می یابد.
یکی از مشکلات استفاده از Dapper سرعت توسعه خیلی پایین اون در مقایسه با EntityFramework هست.
در آخر انتخاب شما بستگی به نوع پروژتون داره اگه سرعت توسعه خیلی براتون مهمه و از طرفی سرعت خیلی براتون مهم نیست نهایتا میتونید Cache بزارید بهترین انتخاب شما EF هست، اگه سرعت براتون مهمه و سرعت توسعه خیلی براتون مهم نیست Dapper گزینه مناسب شماست.
لینک پروژه ⁣https://github.com/StackExchange/Dapper

@one_programmer
@one_programmer
🔹نتایج نظرسنجی توسعه‌دهندگان Stack Overflow در سال ۲۰۱۷

https://stackoverflow.com/insights/survey/2017
@one_programmer
یکی از ویژگی های جدید 7 #C

C# 7 - Local Functions
توابع محلی هست که امکان تعریف یک تابع را درون یک متد، فراهم می‌کنند. هدف آن‌ها تدارک توابعی کمکی است که به سایر قسمت‌های کلاس مرتبط نمی‌شوند. برای مثال اگر متدی نیاز به کار با یک private method دیگر را دارد و این متد خصوصی در جای دیگری استفاده نمی‌شود، می‌توان جهت بالابردن خوانایی برنامه و سهولت یافتن متد مرتبط، این متد خصوصی را تبدیل به یک تابع محلی، درون همان متد کرد.
static void Main(string[] args)
{
int Add(int a, int b)
{
return a + b;
}
Console.WriteLine(Add(3, 4));
}

مزیت کار با local functions نسبت به Func delegates محلی 

در قطعه کد فوق، کار انجام شده صرفا استفاده‌ی از یک Syntax جدید نیست؛ بلکه از لحاظ کارآیی نیز سربار کمتری را به همراه دارد. زمانیکه Func Delegates تعریف می‌شوند، کار ایجاد یک anonymous type، وهله سازی و فراخوانی آن‌ها توسط کامپایلر صورت می‌گیرد. اما حین کار با توابع محلی، کامپایلر با یک متد استاندارد سروکار دارد و هیچکدام از مراحل یاد شده و سربارهای آن‌ها رخ نمی‌دهند (هیچگونه GC allocation ایی نخواهیم داشت). به علاوه اینبار کامپایلر فرصت in-line تعریف کردن متد را به نحو بهتری یافته و به این ترتیب کار سوئیچ بین متدهای مختلف کاهش پیدا می‌کند که در نهایت سرعت برنامه را افزایش می‌دهند.
@one_programmer