ترفندهای کاربردی برنامه نویسی را اینجا یاد بگیرید

معرفی دیتاست های عمومی و رایگان برای پروژه های علم داده-قسمت دوم

در پست قبل 11 دیتاست عمومی و رایگان برای اجرای الگوریتم های مختلف علم داده، داده کاوی و هوش مصنوعی معرفی کردیم. در ادامه در این پست 11 مجموعه داده دیگر را باهم بررسی می کنیم.

  1. متون گوگل

اگر به داده های واقعاً گسترده علاقه مند هستید، مجموعه داده های گوگل فراوانی کلمات و عبارات را بر اساس تعداد زیادی از منابع متنی به صورت سالانه می شمارد. حجم این مجموعه داده حدود 2.2 ترابایت است. اگرچه استفاده از این مورد برای یک پروژه تجسم داده ممکن است دشوار باشد ، اما یک مجموعه داده عالی برای تمیز کردن داده هاست.

  1. داده های یونیسف

یونیسف معتبرترین منبع برای اطلاعات مربوط به زندگی کودکان در سراسر جهان است. مجموعه داده های عمومی این سازمان تغذیه ، ایمن سازی و آموزش و... را شامل می شود که یک منبع عالی برای پروژه های تجسم داده است.

  1. کامنت های سایت ردیت

سایت Reddit یک مجموعه داده بسیار جالب از هر نظری که در این سایت ارائه شده را منتشر کرده است. حجم این مجموعه داده بیش از یک ترابایت است. بنابراین اگر می خواهید یک مجموعه داده کوچکتر برای کار کردن داشته باشید سایت Kaggle نظرات مه 2015 را در سایت خود جمع آوری کرده است.

 

دیتاست عمومی پروژه علم داده و داده کاوی

 

  1. ویکی پدیا

ویکی پدیا علاوه بر پروژه های دیگر بنیاد ویکی مدیا ، دستورالعمل هایی را برای بارگیری متن مقالات انگلیسی زبان ارائه می دهد. بارگیری پایگاه داده ویکی پدیا برای بازتاب و استفاده شخصی در دسترس است و حتی برنامه متن باز مخصوص به خود را دارد که می توانید برای بارگیری کامل ویکی پدیا در سیستم خود از گزینه های متنوع پردازش و تمیز کردن پروژه ها استفاده کنید.

  1. داده های Yelp

Yelp یک مجموعه داده رایگان برای استفاده در اهداف شخصی، آموزشی و دانشگاهی نگهداری می کند. این دیتاست شامل 6 میلیون بررسی است که شامل 189000 کسب و کار در 10 منطقه شهری است. دانشجویان از مشارکت در چالش مجموعه داده های Yelp استقبال می کنند و به شما گزینه های مختلفی برای انواع مختلف پروژه های داده می دهند.

  1. داده های ترند گوگل

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

  1. سازمان تجارت جهانی

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

  1. صندوق بین المللی پول

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

 

مجموعه داده رایگان پروژه

 

  1. اداره اطلاعات انرژیِ ایالات متحده

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

  1. مجموعه داده تصاویر Tensorflow (CelebA)

برای تمرین در حوزه یادگیری ماشین، به یک مجموعه داده تخصصی مانند TensorFlow نیاز دارید. کتابخانه TensorFlow شامل انواع ابزارها، مدل ها و راهنماهای یادگیری ماشین به همراه مجموعه داده های خود است. CelebA بسیار گسترده و به صورت آنلاین در دسترس عموم است و شامل بیش از دویست هزار تصویر مشهور است.

  1. مجموعه داده متنی Tensorflow

یک مجموعه داده دیگر از کتابخانه Tensorflow به نام  Common Crawl’s Web Crawl Corpus

در بیش از 40 زبان وجود دارد. این دیتاست داده های هفت سال را در بر می گیرد و مبنعی عالی برای ارزیابی عملکرد مجموعه داده های یادگیری ماشین است.

۰ نظر موافقین ۰ مخالفین ۰
طاهره توکلی

معرفی دیتاست های عمومی و رایگان برای پروژه های علم داده-قسمت اول

در مسیر تبدیل شدن به یک دانشمند داده (data scientist) اولین قدم یافتن یک مجموعه داده مناسب برای تجزیه و تحلیل داده هاست. در طول این مسیر شما باید تصمیم بگیرید مجموعه داده در چه حوزه ای نیاز دارید و میخواهید این مجموعه داده چقدر بزرگ و نامرتب باشد. مرحله تمیز کردن داده ها (data cleaning) جزئی جدایی ناپذیر از علم داده است اما ممکن است تصمیم شما برای اولین پروژه ها این باشد که به جای تمیز کردن داده ها، روی تجزیه و تحلیل آن ها تمرکز کنید.

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

 

دیتاست مجموعه داده داده کاوی

 

  1. داده های سرشماری ایالات متحده

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

 

  1. اطلاعات جرم FBI

داده های جرایم FBI یکی از جذاب ترین مجموعه های داده در این لیست است. اگر به تجزیه و تحلیل داده های سری زمانی علاقه دارید، می توانید از آنها برای ترسیم تغییرات در میزان جرم در سطح کشور طی یک دوره 20 ساله استفاده کنید. همچنین می توانید از نظر جغرافیایی به داده ها نگاه کنید.

 

  1. علت مرگ

مراکز کنترل و پیشگیری از بیماری ها یک پایگاه داده در مورد علت مرگ نگهداری می کنند. داده ها را می توان تقریباً از هر لحاظ تقسیم بندی کرد: سن ، نژاد ، سال و غیره. از آنجا که این مجموعه داده بسیار گسترده است ، استفاده از آن برای پروژه های پردازش داده خوب است.

 

  1. کیفیت بیمارستان ها

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

 

  1. داده های مربوط به سرطان

دولت ایالات متحده داده هایی در مورد بروز سرطان دارد که باز هم بر اساس سن ، نژاد ، جنس ، سال و سایر عوامل تقسیم می شود. این مجموعه داده از برنامه نظارت ، اپیدمیولوژی و نتایج نهایی موسسه ملی سرطان به دست آمده است. داده ها به سال 1975 برمی گردند و 18 پایگاه داده دارند ، بنابراین گزینه های زیادی برای تجزیه و تحلیل خواهند داشت.

 

  1. اداره آمار کار

بسیاری از شاخص های مهم اقتصادی برای ایالات متحده (مانند بیکاری و تورم) را می توان در وب سایت Bureau of Statistics Statistics یافت. بیشتر داده ها را می توان هم از نظر زمان و هم از نظر جغرافیایی تقسیم بندی و برای پروژه های پردازش داده و تجسم داده استفاده کرد.

 

دیتاست علم داده داده کاوی

 

  1. دفتر تحلیل اقتصادی

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

 

  1. اطلاعات اقتصادی صندوق بین المللی پول

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

 

  1. پیش بینی شاخص های سهام

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

 

  1. داده های دولت انگلیس

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

 

دیتاست مجموعه داده رایگان عمومی

 

  1. ایمیل های شرکت آمریکایی Enron

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

۱ نظر موافقین ۰ مخالفین ۰
طاهره توکلی

9 افزونه کاربردی کروم برای طراحان و برنامه نویسان وب

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

در این پست 9 اکستنشن کروم که زندگی را برای توسعه دهندگان وب آسان می کند، معرفی می کنیم. این افزونه ها همگی تست شده اند و از لحاظ کارایی و رابط گرافیکی جزء بهترین ها هستند.

  1. whatFont

افزونه WhatFont ساده ترین راه برای شناسایی فونت های استفاده شده در صفحات وب است. این افزونه نه تنها نوع فونت، بلکه اندازه، وزن و رنگ دقیق فونت را هم مشخص می کند. اگر شما هم جزء کسانی هستید که از صفحات مختلف وب بازدید می کنید و از آن ها برای ایده گرفتن در کار خودتان استفاده می کنید، این اکستنشن را حتما نصب کنید.

 

افزونه کاربردی کروم برای برنامه نویسان

 

  1. whatRuns

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

 

افزونه کاربردی کروم برای برنامه نویسان

 

  1. window resizer

اگر در حال طراحی یک صفحه واکنش گرا (responsive) هستید، افزونه window resizer یکی از بهترین افزونه هایی است که به شما کمک میکند سایز صفحه خود را به ابعاد مختلف مانند ابعاد موبایل، تبلت، نمایشگر کامپیوتر و... تغییر دهید و سپس طراحی خود در این سایزها را تست کنید. این افزونه همچنین قابلیت آن را دارد که ابعاد دلخواه شما را برای کل پنجره یا بخشی از آن تنظیم کند.

 

افزونه کاربردی کروم برای برنامه نویسان

 

  1. CSS viewer

توانایی مشاهده کدهای CSS هر المان دلخواه در هر سایتی که مدنظر دارید، از قابلیت های این افزونه قدرتمند و کاربردی است. تنها کافی است المان مدنظر خود را انتخاب کنید تا پنجره ای از کدهای CSS برای شما نمایش داده شود.

 

​افزونه کاربردی کروم برای برنامه نویسان

 

  1. full stack optimization live test

این افزونه به شما اجازه می دهد به راحتی تمام صفحات وبی را که مدنظر دارید، بر اساس ویژگی های از پیش تعیین شده مثل seo یا web performance تست کنید. شما می توانید با استفاده از افزونه full stack optimization live test یک بازخورد نمایشی از صفحاتتان داشته باشید و متوجه شوید از ابتدای لود صفحه تا انتهای کار، در سایتتان چه اتفاقاتی می افتد.

 

افزونه کاربردی کروم برای برنامه نویسان

 

  1. colorZilla

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

 

افزونه کاربردی کروم برای برنامه نویسان

 

  1. lorem ipsum generator

افزونه تولید متن آزمایشی لورم ایپسوم یک راه آسان و موثر تولید متن های پیش فرض برای قرار دادن در قسمت هایی از سایت است که به متن نیاز دارند. هر جمله به طور تصادفی تولید می شود تا نمونه ای از متن واقعی را بهتر نمایش دهد.

 

افزونه کاربردی کروم برای برنامه نویسان

 

  1. page ruler

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

 

افزونه کاربردی کروم برای برنامه نویسان

 

  1. web developer checklist

یکی از ابزارهای بسیار مفید برای برنامه نویسان و توسعه دهندگان، افزونه web developer است که سایت شما را در مواردی مانند seo ، قابلیت دسترسی، کارایی و... بررسی می کند. این افزونه به شما کمک می کند نقاط مشکل ساز سایت خود را شناسایی کنید و آن را اصلاح یا بهینه کنید.

 

افزونه کاربردی کروم برای برنامه نویسان

 

۰ نظر موافقین ۰ مخالفین ۰
طاهره توکلی

5 اشتباه رایج در sql که باید از آن پرهیز کنید

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

در این پست قصد داریم 5 اشتباه رایج در پایگاه داده sql server را معرفی کنیم.

 

انتخاب database اشتباه

زمانی که شما sql server management studio را باز می کنید و میخواهید یک query جدید بنویسید، دیتابیس به طور پیش فرض روی master است. در حالی که به احتمال زیاد شما قصد کار روی database دیگری دارید. پس فراموش نکنید که حتما قبل از اجرای query های خود، پایگاه داده مدنظر را چک کنید.

 

SQL SERVER 2019

 

اشتباه املایی در نوشتن دستورات

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

 

SQL server 2019

 

علامت براکت  [] یا نقل قول  ' حذف شده

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

 

انتخاب اشتباه قسمتی از دستور

محیط sql server management studio جای مناسبی برای نوشتن دستورات sql و اجرای آن است. اگر تنها قسمتی از دستور را انتخاب کنید و دکمه اجرا را بزنید، فقط همان قسمت اجرا می شود.

مثلا در تصویری که مشاهده می کنید جدول Person.Person کامل هایلایت نشده است بنابراین نتیجه خطا دارد.

انتخاب بخشی از دستورات تنها زمانی مفید است که شما query های زیادی داشته باشید و بخواهید فقط تعدادی از آن را اجرا کنید.

 

sql server 2019

 

علامت ویرگول , و نقطه ویرگول ;

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

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

 

sql server 2019

sql server 2019

شما می توانید برای یادگیری سیر تا پیاز sql server 2019 از مقدماتی تا پیشرفته به سایت الگوریتم اول مراجعه کنید و با استفاده از ویدئوهای آموزشی این پایگاه داده را به طور کامل یاد بگیرید.

 

منبع: سایت essentialsql

۰ نظر موافقین ۰ مخالفین ۰
طاهره توکلی

3 راهکار عالی برای اینکه SQL را به راحتی یاد بگیرید

اگر تا به حال قصد شروع یادگیری SQL را داشته اید ولی نمیدانستید از کجا باید شروع کنید و از یادگیری آن ناامید شده اید، این پست را حتما مطالعه کنید. در این پست 3 راهکار عالی برای یادگیری پایگاه داده SQL به شما معرفی می کنیم:

 

آموزش SQL

 

اولین قدم این است که اصلا خودتان را درگیر نوع پایگاه داده نکنید

در ابتدای یادگیری SQL ، بسیاری از افراد نمی دانند باید کدام پایگاه داده را از بین  MySQL ، Oracle و SQL Server و... انتخاب کنند. اگر بخواهیم صادق باشیم در ابتدای راه تفاوت زیادی بین این پایگاه داده ها وجود ندارد. آنچه مهم است یادگیری مفاهیم اصلی است که از این نظر تمام پایگاه داده های رابطه ای مفاهیم و نوشتار مشابه ای دارند.

فرض کنید ما یک جدول برای کارمندان به نام Employee داریم که شامل ستون های نام و نام خانوادگی است. دستور select برای تمام پایگاه داده های گفته شده مشابه یکدیگر است:

;Select firstname, lastname from Employee

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

 

کامپیوترتان را آماده کنید

برای یادگیری SQL شما نیاز دارید با چالش ها و تمرین های زیادی مواجه شوید. پس بهتر است به مجموعه داده ی مدنظر دسترسی داشته باشید تا بتوانید به راحتی query های خود را اجرا کنید. یکی از راه های یادگیری این است که خودتان مجموعه داده را روی سیستم نصب کنید و تلاش کنید داده های مختلفی را با اجرای دستورات گوناگون از جدول بازیابی کنید. روش دیگری که برای یادگیری وجود دارد این است که از دوره ها و ویدئوهای آموزشی معتبر موجود در این زمینه استفاده کنید. شما می توانید با مراجعه به سایت الگوریتم اول دوره آموزش مقدماتی تا پیشرفته sql server 2019 را مشاهده کنید و پس از گذراندن آزمون ها و پروژه های این دوره، مدرک معتبر دانشگاه شیراز دریافت کنید.

 

آموزش پایگاه داده sql server

 

برای یادگیری، برنامه ریزی داشته باشید

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

۱ نظر موافقین ۰ مخالفین ۰
طاهره توکلی

به عنوان یک برنامه نویس باید کدام مهارت های نرم (soft skill) خود را افزایش دهیم؟

در نگاه اول عموم مردم تصور می کنند برنامه نویسی تنها یک مهارت سخت فنی (technical skill) است. به همین دلیل است که اکثر توسعه دهندگان و برنامه نویسان تازه کار، اهمیت مهارت های نرم  (soft skill) را دست کم میگیرند و تنها به مهارت های سخت فنی توجه میکنند. اما نادیده گرفتن این مهارت ها می تواند موجب بروز مشکلات زیادی مانند کمبود ارتباط موثر بین اعضای تیم و در نهایت کاهش عملکرد مثبت آنان شود.
در این پست در ابتدا بیان می کنیم چرا مهارت های نرم، حیاتی محسوب می شوند و بعد از آن مهارت های ضروری تر برای یک مهندس نرم افزار را بررسی می کنیم.

 

مهارت های نرم در برنامه نویسی

 

تفاوت مهارت های نرم و سخت چیست؟

زمانی که فرد برنامه نویس برای یک موقعیت شغلی رزومه میفرستد، کارفرما برای تصمیم گیری در مورد استخدام او به هر دو مهارت سخت و نرم توجه می کند.

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

 

چرا مهارت های نرم مهم هستند؟

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

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

مهارت نرم در برنامه نویسی

 

10 مهارت نرم بسیارمهم که هر توسعه دهنده باید داشته باشد

 

توانایی برقراری ارتباط

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

توانایی حل مسئله

در طول یک پروژه یا قبول کردن یک مسئولیت، بسیار طبیعی است که مشکلات پیش بینی نشده ای اتفاق بیفتد. مهارت حل مسئله به شما کمک میکند مشکلات کار را بدون متوقف کردن کل پروژه، مدیریت کنید.

 

مشارکت فعال در گروه

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

 

مسئولیت پذیری

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

 

سازگار بودن با محیط و سایر افراد

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

 

مهارت های نرم در برنامه نویسی

 

مهارت های زبانی و کلامی

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

 

اعتماد سازی

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

 

مدیریت زمان

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

 

توانایی یادگیری به صورت خودآموز

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

یکی از سایت هایی که همواره در زمینه تکنولوژی و آموزش نرم افزار پیشرو بوده، سایت الگوریتم اول است. شما می توانید با مراجعه به این سایت، آموزش های برنامه نویسی را از بهترین اساتید به صورت آفلاین و آنلاین یاد بگیرید و پس از گذراندن آزمون های دوره، مدرک معتبر دانشگاه شیراز دریافت کنید. این مدرک می تواند به شما در افزایش سطح رزومه تان کمک شایانی کند.

 

توانایی صبور بودن در مواقع بحرانی

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

۰ نظر موافقین ۰ مخالفین ۰
طاهره توکلی

پایتون بهتر است یا R ؟ کدام زبان برنامه نویسی برای ورود به دنیای علم داده مناسب تر است؟

این روزها علم داده یا data science طرفدارهای بسیار زیادی پیدا کرده و به سرعت در حال گسترش است. اما سوالی که برای بسیاری از برنامه نویسان مطرح می شود این است که کدام زبان برنامه نویسی برای این کار بهتر است؟ قبل از اینکه در مورد زبان های برنامه نویسی صحبت کنیم، بهتر است کمی بیشتر در مورد خود علم داده اطلاع پیدا کنیم.

 

علم داده یا data science چیست؟

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

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

 

علم داده data science

 

خب تا اینجا درمورد علم داده صحبت کردیم. در ادامه این مطلب قصد داریم زبان های پایتون و R را از جنبه های مختلفی باهم مقایسه کنیم.

 

جمع آوری داده (data collection)

اولین تفاوت مهم زبان های پایتون و R در حوزه جمع آوری داده است. برای مثال زبان پایتون از انواع فرمت های گوناگون از csv گرفته تا json و حتی جداول sql پشتیبانی می کند. در حوزه توسعه وب هم پایتون این اجازه را می دهد که داده ها را از دنیای وب جمع آوری کنید و در جداولی که خودتان ساختارش را مشخص کرده اید، قرار دهید. در مقابل زبان R برای وارد کردن داده هایی با فرمت excel ، csv و txt بهینه سازی شده است.

 

اکتشاف داده (exploring data)
پایتون یک کتابخانه بسیار قدرتمند برای تحلیل و اکتشاف داده به نام Pandas دارد که می توانید از آن برای عملیات گوناگونی مثل فیلتر کردن داده ها، مرتب سازی و نمایش داده ها به راحتی استفاده کنید. در مقابل زبان R برای آنالیزهای آماری در دیتاست های بزرگ بهینه شده و شامل قابلیت های متنوعی برای انجام عملیات اکتشاف داده است. با استفاده از زبان R شما می توانید توزیع احتمال های مختلفی برای داده هایتان در نظر بگیرید، تست های آماری زیادی به کار ببرید و عملیات های مختلف داده کاوی و یادگیری ماشین اجرا کنید.

 

مدل سازی داده (data modeling)

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

 

تصویرسازی داده (data visualization)

تنها حوزه ای که زبان R نسبت به زبان پایتون برتری دارد، حیطه مصورسازی داده است. پایتون ابزارهایی مانند matplotlib دارد که می توانند داده ها را به خوبی نمایش دهد. اما زبان R اساسا برای نمایش نتایج آنالیزهای آماری ساخته شده است و ماژول های گرافیکی آن امکان رسم نمودارها و چارت های مختلف را فراهم می کند.

 

مقایسه زبان پایتون و زبان آر

 

با این تفاسیر کدام زبان برای افراد مبتدی بهتر است؟

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

۰ نظر موافقین ۰ مخالفین ۰
طاهره توکلی

12 کتاب و مرجع آنلاین برای برنامه نویسان در سال 2021 - قسمت دوم

در پست های قبل 6 کتاب و مرجع آنلاین برای برنامه نویسی را معرفی کردیم. در این پست 6 مورد دیگر را باهم بررسی می کنیم.

7-

Effective Java by Joshua Bloch

مرجع آموزش برنامه نویسی الگوریتم اول

کتاب effective java یک منبع عالی برای یادگیری تکنیک ها، ترفندها و کاربردهای زبان برنامه نویسی جاوا است. این کتاب یک راهنمای جامع است که تمام اطلاعات و مفاهیم موردنیاز برای یادگیری این زبان برنامه نویسی را پوشش میدهد مانند:

  • Object
  • Class
  • Library
  • Method
  • Serialization
  • ...

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

8-

Eloquent Ruby by Russ Olsen

آموزش برنامه نویسی الگوریتم اول

کتاب eloquent Ruby یک فرصت بسیار مناسب برای شروع یادگیری زبان ruby فراهم می کند. این کتاب به شما کمک می کند با استفاده از زبان ruby بتوانید برنامه های خود را به راحتی بنویسید و اجرا کنید. نویسنده ی کتاب تجربیات ارزشمند خود را در زمینه مفاهیم و کاربردهای آن به زیبایی و بسیار قابل فهم بیان میکند.

9-

Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming by Eric Matthes

آموزش برنامه نویسی پایتون الگوریتم اول

زبان برنامه نویسی پایتون یک زبان ساده و قدرتمند است که در سال های اخیر بسیار محبوب شده و به طور گسترده استفاده می شود. این کتاب به دو قسمت تقسیم می شود:

در قسمت اول مفاهیم اصلی و اولیه زبان پایتون مانند متغیرها، لیست ها، حلقه ها، کلاس ها و... آموزش داده شده که با تمرینات زیادی همراه است. در قسمت دوم نیز 3 پروژه معرفی شده که بتوانید دانش خود را در این زبان برنامه نویسی به کاربردهای عملی تبدیل کنید. همچنین این کتاب به شما نحوه استفاده از کتابخانه های پرقدرت پایتون مانند pygame ، matplotlib ،   Django و... را آموزش میدهد.

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

10-

Codeacademy’s Free Course

یادگیری از طریق کتاب یکی از بهترین روش های جمع آوری اطلاعات و فراگیری مقدمات اولیه برای انجام دادن پروژه های آینده است. اما تمرین روی پروژه های واقعی است که برای شما تجربه های فراوانی به ارمغان می آورد. سایت codeacademy یک منبع بسیار خوب برای یاد گرفتن html, css, bootstrap است که به شما آموزش میدهد چطور یک وبسایت را بسازید و با چالش های آن مواجه شوید.

11-

Udemy’s Course

 Udemy یکی از بهترین پلتفرم های یادگیری برای کسانی است که میخواهند به طور خودآموز مطلبی را یاد بگیرند. اگر وارد سایت شوید و قصد داشته باشید کدنویسی را شروع کنید، با انواع دوره های آموزشی مختلف مواجه می شوید.یکی از بهترین دوره ها برای شروع coding for begginers1: you can learn to code است که زبان های برنامه نویسی مختلفی مانند اسکرچ ، پایتون ، جاوا اسکریپت ، روبی ، سی شارپ و... را پوشش می دهد و بیش از 15 هزار نفر این در این دوره شرکت کرده اند.

این دوره آموزشی در 8 ساعت و 34 قسمت مفاهیم اصلی کدنویسی ، زبان های برنامه نویسی ، پروژه ها و اصول و قواعد کار را آموزش می دهد.

12-

Udacity’s Free Course

Udacity یکی دیگر از پلتفرم های آموزش کدنویسی است که دارای انواع دوره های آموزشی رایگان و غیر رایگان است. دوره آموزشی که ما در این پست قصد معرفی آن را داریم، intro to html and css است.

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

۰ نظر موافقین ۰ مخالفین ۰
طاهره توکلی

12 کتاب و مرجع آنلاین برای برنامه نویسان در سال 2021 - قسمت اول


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


1-
Structure and Interpretation of Computer Programs by Harold Abelson, Gerald Jay Sussman, with Julie Sussman

معرفی کتاب برنامه نویسی الگوریتم اول


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

ویژگی های این کتاب:

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


2-
Code: The Hidden Language of Computer Hardware and Software by Charles Petzold

معرفی کتاب کدنویسی الگوریتم اول


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


3-
Code Complete: A Practical Handbook of Software Construction by Steve McConnell

 

معرفی کتاب کدنویسی الگوریتم اول

این کتاب یکی از محبوب ترین راهنما های کاربردی برنامه نویسی است که اصول و قواعد اولیه را به خوبی برای کدنویسان و تمام کسانی که نیاز به یادگیری مفاهیم مختلف دارند، توضیح میدهد.
کد نویسی، رفع خطا (debugging) ، طراحی (design) ، تست نرم افزار (testing) و ساخت پروژه از جمله مفاهیمی است که به طور عمیق در این کتاب مورد بررسی قرار گرفته است. این کتاب فارغ از سطح دانش و تجربه هر فرد، به تمامی کدنویسان توصیه می شود.


4-
Think Like a Programmer: An Introduction to Creative Problem Solving by V. Anton Spraul

 

معرفی کتاب کدنویسی الگوریتم اول

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


5-
The Clean Coder: A Code of Conduct for Professional Programmers by Robert C. Martin

معرفی کتاب الگوریتم اول


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


6-
Eloquent JavaScript by Marijn Haverbeke

 

معرفی منبع برنامه نویسی الگوریتم اول

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

 

منبع: وبلاگ selftaught

۰ نظر موافقین ۰ مخالفین ۰
طاهره توکلی