یادداشت های یه برنامه نویس
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
@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
یادداشت های یه برنامه نویس
@one_programmer⁣ امروز میخام با یه ORM خوب آشناتون بکنم همیشه یکی از مهمترین قسمت های برنامه نویسی، نحوه ارتباط برنامه نوشته شده و دیتابیس می باشد. از روش های مختلفی از قبیل ADO.NET Classic یا Entity Framework برای این کار استفاده می کنیم. در اینجا با ORM…
@one_programmer
پیرو صحبت های پیشین در مورد Dapper
بنده تست از این ORM گرفتم که نتایج جالبی داشت.
صورت مسئله: کوئری داریم که محتویات یک رکورد از یک جدول با ۱۰۰۰ رکورد را به همراه ۵ join که ۲ join آن متداخل است و تا ۳ جدول داخل میشود٬ محتویات جداول دیگر حدودا ۲۰۰ رکورد می باشد. این کوئری با رعایت مسائل performance با Entity Framework نوشته شده است.
بنده این کوئری رو با Dapper باز نویسی کردم و به این نتایج رسیدم.
با ۵۰۰ بار run کردن این دستورات٬
EntityFramework: 19ms
Dapper: 16ms
جالبه که Dapper تونست ۳ میلی ثانیه سریعتر از Ef عمل کنه.
این تست نتایج دیگری هم داست٬ دستوری که بنده با Ef میزدم حدودا ۱۰ دقیقه وقت من رو میگرفت اما Dapper نزدیک به ۳۰ دقیقه٬ این به این معنی هست که سرعت توسعه در Dapper حدودا ۴ برابر کند تر پیش میره٬ اما مقایسه sql تولید شده این رو نشون میداد که کوئری تولید شده توسط Ef خیلی زیاد٬ داشتن ۴ عدد sub کوئری که کل کوئری بیش از ۳۰ خط میشد٬ اما کوئری که برنامه نویس با Dapper نوشته خیلی سبک تر با ۲ عدد sub کوئری و کمتر از ۲۰خط کد است٬ این نکته خیلی مهم هست مخصوصا وقتی که سرور زیر فشار باشه کوئری تولید شده توسط Ef به مراتب کند تر میشه.
نکته ایی که در این تست وجود داره این هستش که ممکنه در شرایط دیگری Dapper خیلی سریعتر عمل کنه٬ شرایط دیگر میتونه تعداد رکورد خیلی بیشتر باشه و join های متداخل و بیشتر یا لیست ها بزرگ بازگشتی و... که قطعا Dapper بازدهی بیشتری از خودش نشون میده.
@one_programmer
@one_programmer
انصراف میلیاردی از دانشگاه؛ فرمولی طلایی یا افسانه ای خیالی؟(بیل گیتس٬ مارک زاکربرگ)
انصراف از تحصیلات دانشگاهی ویژگی مشترک دو تن از مشهورترین و بزرگترین میلیاردهای حال حاضر دنیاست. جالب اینجاست که هم مارک زاکربرگ به عنوان بنیان گذار فیسبوک و هم بیل گیتس به عنوان بنیان گذار مایکروسافت ادامه تحصیل در یکی از معتبرترین دانشگاه های دنیا، یعنی هاروارد، را رها کرده اند. آیا واقعاً درس و دانشگاه ما از میلیاردر شدن باز می دارد؟
هردوی این افراد مشهور و اشخاص موفق مشابه این دو، همواره از رها کردن دانشگاه به عنوان بهترین تصمیم زندگی خود یاد می کنند، اما سوال اصلی اینجاست که این راهکار تا چه حد می تواند عمومیت داشته باشد؟

واقعیت اینجاست که بررسی های آماری متعدد نشان می دهند که افرادی مانند زاکربرگ و گیتس در اقلیت مطلق قرار دارند. به بیان دیگر، اکثریت قریب به اتفاق افراد موفق در جامعه ای مثل آمریکا دارای مدارک بالای دانشگاهی هستند.
جالب است بدانید که بر اساس بررسی آماری دقیقی که توسط نشریه «businessinsider» انجام گرفته، از میان ۱۱۷۴۵ نفر از موفق ترین افراد جامعه (چه از لحاظ مالی و چه موقعیت های اجتماعی یا سیاسی) ۹۴ درصد آنها با پایان تحصیلات تکمیلی به موفقیت دست پیدا کرده اند. حدود ۵۰ درصد این افراد نیز تحصیلات دانشگاهی خود را در بهترین و معتبرترین کالج های این کشور گذرانده اند. لازم به ذکر است که نسبت مذکور در فهرست «قدرتمندترین آمریکایی های» مجله فوربس به حدود ۸۰ درصد می رسد.
همه این ها در حالی است که تعداد افراد موفقی که تحصیلات در کالج های معتبر را نیمه کاره رها کرده اند چیزی مابین ۲ تا ۵ درصد برآورد شده است. به عبارت دیگر، کسانی مثل زاکربرگ و گیتس استثناهایی واقعی به شمار می روند.

پرواضح است که نمی توان یک راهکار یکسان جهت موفقیت را به تمام افراد توصیه کرد. استعدادها، توانایی ها و خصوصیات فردی هرکس مختص اوست. پس همان گونه که انصراف از تحصیلات عالیه به هیچ وجه به عنوان راهکار موفقیت توصیه نمی شود، رفتن به بهترین دانشگاه ها نیز هرگز به معنی رسیدن به بهترین موقعیت های مالی و اجتماعی نیست.
با این همه، مطالعه زندگی تعداد زیادی از افراد موفق نشان می دهد که برای بسیاری مسیر موفقیت از میان راهروهای دانشگاه می گذرد. به یاد داشته باشیم که حتی گیتس و زاکربرگ هم گرچه در نهایت از دانشگاه انصراف دادند، اما دست کم در ابتدا به سراغ تحصیلات تکمیلی رفته اند.
منبع: http://digiato.com/article/2017/04/21/انصراف-میلیاردی-از-دانشگاه؛-فرمولی-طل/

@one_programmer
@one_programmer
فیسبوک به کارآموزهای خود چقدر حقوق می دهد؟
هر سال این موقع که می شود شرکت های بزرگ فناوری در سیلیکون ولی اقدام به جذب کارآموز می کنند و علاقمندان فرصت کمی در اختیار دارند تا درخواست خود برای همکاری را تسلیم این شرکت ها کنند.

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

در لیست منتشر شده، فیسبوک با پرداخت مبلغ 8000 دلار در ماه (96 هزار دلار در سال) به کارآموزان خود صدرنشین است.
در اینجا لازم است اشاره کنیم در گزارش Glassdoor اثری از استارتاپ ها به چشم نمی خورد. محض اطلاع شما شرکت هایی نظیر دراپ باکس و اسنپ هم اکنون بالاترین دستمزدها را به نیروهای کارآموز خود پرداخت می کنند و آنطور که دیتای به دست آمده نشان می دهد، این مبالغ بعضا به رقم 9 هزار دلار در ماه هم می رسد.

در نظر داشته باشید که تمامی کارآموزان این شرکت ها حقوق های یکسان دریافت نمی کنند و برای نمونه آنهایی که قرار است صرفا کارهای دفتری را انجام دهند دستمزدی به مراتب پایین تر را می گیرند.

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

اضافه نماییم اغلب شرکت هایی که نامشان در لیست ذکر شده در شهرهایی استقرار دارند که هزینه زندگی در آنها بالاست و از آن جمله می توان به سانفرانسیسکو و نیویورک سیتی اشاره کرد.

در برخی موارد کارآموزها مبلغی را هم به عنوان حق مسکن دریافت می کنند که رقم های ذکر شده در پایین را حتی از این نیز بیشتر می کند.

1- فیسبوک: میانگین پرداخت ماهانه: 8000 دلار

2- مایکروسافت: میانگین پرداخت ماهانه: 7100 دلار

3- آمازون: میانگین پرداخت ماهانه: 6400 دلار

4- اپل: میانگین پرداخت ماهانه: 6400 دلار

5- بلومبرگ: میانگین پرداخت ماهانه: 6400 دلار

6- یاهو: میانگین پرداخت ماهانه: 6080 دلار

6- گوگل: میانگین پرداخت ماهانه: 6000 دلار

7- انویدیا: میانگین پرداخت ماهانه: 5440 دلار

8- ادوبی: میانگین پرداخت ماهانه: 5120 دلار

9- کوالکام: میانگین پرداخت ماهانه: 5040 دلار
@one_programmer
@one_programmer
هم اکنون ماکروسافت در جریان کنفرانس بیلد ۲۰۱۷ که در حال برگزاری هست نسخه مک Visual Studio را در دسترس کاربران قرار داد.
https://www.visualstudio.com/vs/visual-studio-mac/
#کنفرانس_بیلد_ماکروسافت
@one_programmer
@one_programmer
سرویس جدید مهاجرت پایگاه داده مایکروسافت، مشتریان اوراکل را هدف گرفته است
در سال 2015 آمازون سرویس مهاجرت پایگاه داده خود را معرفی کرد که به کسب و کارهای بزرگ اجازه می داد به راحتی از اوراکل به وب سرویس های این کمپانی منتقل شوند. این خدمات موفقیت قابل توجهی را به همراه داشت و طی فقط یک هفته بیش از 1000 پایگاه داده عظیم به سرورهای آمازون منتقل شد. این رقم در جدید ترین آمار به بیش از 23 هزار پایگاه داده رسیده است.

حال مایکروسافت نیز در جریان کنفرانس توسعه دهندگان بیلد که در حال برگزاریست، رویکرد مشابهی را در نظر گرفته و سرویس مهاجرت خودش را به راه انداخته تا به شرکت ها کمک کند از اوراکل یا دیتابیس های قدیمی SQL Server به روی پلتفرم کلاود آژور (Azure) بیایند. این سرویس هنوز به صورت مقدماتی عرضه شده و هنوز قیمت آن مشخص نیست.

مایکروسافت همچنین اعلام کرد که پشتیبانی از نرم افزارهای پایگاه داده متداول مانند MySQL و PostgreSQL را تقویت می کند تا پس از مهاجرت، کاربران به راحتی با شرایط جدید سازگار شوند. گفتنیست مایکروسافت آژور که پس از سرویس AWS آمازون در جایگاه دوم خدمات ابری جهان قرار دارد، یکی از بخش های اصلی کسب و کار ردموندی ها را تشکیل می دهد و با توجه به رشد تقاضای بازار، روز به روز بیشتر مورد توجه قرار می گیرد.
#کنفرانس_بیلد_ماکروسافت
@one_programmer
@one_programmer
ابزار تازه مایکروسافت، محتویات نمایش یافته در کلیپ های ویدیویی را جستجوپذیر می کند.
توسعه دهندگان و ناشران می تونن ویدیو خودشون رو آپلود کنن و سپس اطلاعات مختلفی اعم از چهره های شناسایی شده, متون داخل ویدیو دریافت کنن.
@one_programmer
@one_programmer
متاسفانه این سرویس خوب رو ما از ایران نمیتونیم استفاده کنیم, در حالی که شرکت های بزرگی مثل Adobe , Autodesk, Symantecاز آژور استفاده میکنن. این سرویس حتی برای برنامه نویس ها اکانت رایگان داره اما نیاز به کارت اعتباری هست.
@one_programmer
@one_programmer
نرم‌افزار SQL Server 2017 با پشتیبانی از لینوکس معرفی شد

@one_programmer