در حال حاضر بیش از 2.5 میلیارد دستگاه به اینترنت متصل هستند و تقریباً 8 کاربر جدید اینترنت در هر ثانیه در سراسر جهان اضافه می شوند. اگر این شما را شگفت زده نکند ، تخمین زده می شود که تا سال 2020 ، بیش از 200 میلیارد سنسور آنلاین می شوند و داده های خود را یکپارچه از طریق اینترنت گزارش می دهند. با چنین اکوسیستم غنی ، اینترنت باید بسیار سفت و سخت ، برنامه ریزی شده و ساختار یافته باشد. در این سری جدید ، من تمام تلاش خود را می کنم تا عناصر و پروتکل های مختلف شبکه ای را که این سیستم عظیم را تشکیل می دهند ، پوشش دهم.
طبق تعریف ، یک شبکه کامپیوتری گروهی از رایانه ها هستند که از طریق یک کانال ارتباطی به یکدیگر متصل شده اند.
Basic Computer Network Strucutreهمه دستگاه های رایانه ای میزبان یا سیستم نهایی نامیده می شوند. میزبانانی که درخواست ارسال می کنند ، سرویس گیرنده نامیده می شوند ، در حالی که میزبان دریافت کننده درخواست ، سرور نامیده می شود. سیستم های پایانی توسط شبکه ای از پیوندهای ارتباطی و سوئیچ های بسته به هم متصل می شوند. پیوندهای ارتباطی از انواع مختلف رسانه های فیزیکی از جمله کابل کواکسیال ، عرض مس ، فیبر نوری و طیف رادیویی تشکیل شده است. پیوندهای مختلف می توانند داده ها را با نرخ های مختلف منتقل کنند ، با سرعت انتقال پیوند بر حسب بیت/ثانیه. هنگامی که یک سیستم پایانی داده هایی برای ارسال به سیستم پایانی دیگر دارد ، سیستم ارسال کننده داده ها را تقسیم بندی می کند و به هر قسمت بایت هدر اضافه می کند. بسته های حاصله از اطلاعات ، که به عنوان بسته شناخته می شوند ، سپس از طریق شبکه به سیستم نهایی مقصد ارسال می شوند ، جایی که دوباره در داده های اصلی جمع آوری می شوند. یک سوئیچ بسته بسته ای را می گیرد که به یکی از پیوندهای ارتباطی ورودی خود رسیده و آن بسته را در یکی از پیوندهای ارتباطی خروجی خود ارسال می کند. سوئیچ های بسته متداول روترها و سوئیچ های لایه پیوندی هستند. اینترنت پروتکل کنترل انتقال (TCP) و پروتکل اینترنت (IP) دو پروتکل مهم در اینترنت هستند. پروتکل IP فرمت بسته هایی که در بین روترها و سیستم های نهایی ارسال و دریافت می شوند را مشخص می کند. پروتکل های اصلی اینترنت در مجموع با نام TCP/IP شناخته می شوند. پروتکل ها
با توجه به اهمیت پروتکل ها در اینترنت ، مهم است که همه در مورد تک تک پروتکل ها به توافق برسند ، تا مردم بتوانند سیستم ها و محصولاتی را ایجاد کنند که با یکدیگر همکاری می کنند. استانداردهای اینترنت توسط نیروی کار مهندسی اینترنت (IETF) به اسنادی موسوم به درخواست نظر (RFC) توسعه داده می شوند. RFC ها کاملاً فنی و با جزئیات هستند. این پروتکل ها مانند TCP ، IP ، HTTP ، DNS و SMTP را تعریف می کند. در حال حاضر بیش از 6000 RFC وجود دارد.
پروتکل های اینترنت در معماری لایه ای سازماندهی شده اند. برای توضیح این موضوع ، تصور کنید که سعی می کنید از جستجوی تصویر گوگل به دنبال یک الگو باشید. سرور تصویر دلخواه شما ذخیره شده است. قبل از اینکه سرور این اطلاعات را ارسال کند ، باید آن تصویر را به یک بسته با تمام سرصفحه های لازم تبدیل کند. هنگامی که به مشتری می رسد ، عکس آن رخ می دهد. بسته ها هم خودشان را دارندسرصفحه ها به ترتیب معکوس حذف شده و سپس دوباره به داده های اصلی تبدیل می شوند.
سرور به انتقال تصویر مشتریدر حال حاضر ، یک قدم جلوتر رفته و لایه های پروتکل جداگانه را بررسی کنید. در زیر مدل رایج TCP/IP و مدل OSI دقیق تر آمده است. برای قیاس ما (و احتمالاً بقیه سری) ، من به مدل TCP/IP پایبندم.
TCP/IP در مقابل مدل OSIاز سرور به اینترنت ، توالی از بالا به پایین است. هنگامی که سرور تصویر Grumpy Cat را که مشتری درخواست کرده است پیدا می کند ، ابتدا آن را به یک بسته تبدیل می کند و سربرگ Application Layer را اضافه می کند. این پروتکل شامل HTTP (که درخواست و انتقال سند وب را ارائه می دهد) ، SMTP (که انتقال پیام های الکترونیکی را فراهم می کند) و FTP (که انتقال فایل بین دو سیستم نهایی را فراهم می کند) را شامل می شود. پس از آن ، پروتکل لایه حمل و نقل تغییرات لازم را اضافه می کند. این بعداً پیامهای لایه برنامه را بین نقاط پایانی برنامه منتقل می کند. پروتکل های لایه حمل و نقل متداول عبارتند از TCP (که سرویس های اتصال گرا را به برنامه های خود ارائه می دهد) و UDP (که سرویس های بدون اتصال به برنامه های آن ارائه می دهد). لایه شبکه بلافاصله بعد از آن می آید. این پروتکل مسئول انتقال بسته های لایه شبکه یا داده های داده از یک میزبان به میزبان دیگر است. در نهایت ، لایه دسترسی شبکه مراقبت از انتقال در سراسر پیوندهای ارتباطی را بر عهده دارد. هنگامی که سرور بسته را دریافت می کند ، کل فرایند به صورت معکوس (از بالا به بالا) انجام می شود تا بسته ها به تصویر اصلی تبدیل شوند.
تبدیل داده ها بین سیستم های پایانیمن هر لایه را به همراه سایر موضوعات مربوطه ، در وبلاگ های آینده با جزئیات بیشتری پوشش خواهم داد.
هر دستگاه متصل به اینترنت دارای یک شناسه منحصر به فرد است. امروزه اکثر شبکه ها ، از جمله تمام رایانه های موجود در اینترنت ، از TCP/IP به عنوان استانداردی برای برقراری ارتباط در شبکه استفاده می کنند. در پروتکل TCP/IP ، این شناسه منحصر به فرد آدرس IP است. دو نوع آدرس IP عبارتند از: IPv4 و IPv6. آدرس IPv4 با چهار عدد که با نقطه از هم جدا شده اند بیان می شود. هر عدد نمایندگی اعشاری (پایه 10) برای یک عدد باینری هشت رقمی (پایه 2) است که به آن اکتت نیز گفته می شود.
IPv6 از 128 بیت دودویی برای ایجاد یک آدرس منحصر به فرد در شبکه استفاده می کند. یک آدرس IPv6 توسط هشت گروه از اعداد هگزادسیمال (پایه 16) با کولون ها جدا شده است. گروههایی از اعداد که حاوی تمام صفرها هستند غالباً برای صرفه جویی در فضا حذف می شوند و یک جداکننده بزرگ برای نشان دادن فاصله ایجاد می کند.
فضای IPv6 بسیار بزرگتر از فضای IPv4 به دلیل استفاده از هگزادسیمال و همچنین داشتن 8 گروه است. اکثر دستگاه ها از IPv4 استفاده می کنند. با این حال ، به دلیل ظهور دستگاه های IoT و تقاضای بیشتر برای آدرس های IP ، دستگاه های بیشتری IPv6 را می پذیرند.
رایانه شما چگونه آدرس IP خود را دریافت می کند؟ یک آدرس IP می تواند پویا یا استاتیک باشد.
آدرس استاتیکی است که خودتان با ویرایش تنظیمات شبکه رایانه خود پیکربندی می کنید. این نوع آدرس ها نادر است و اگر از آن بدون درک خوب TCP/IP استفاده کنید ، می تواند مشکلات شبکه ایجاد کند.
آدرس های پویا رایج ترین هستند. آنها توسط پروتکل پیکربندی میزبان پویا (DHCP) ، سرویسی که در شبکه اجرا می شود ، تعیین می شوند. DHCP معمولاً بر روی سخت افزار شبکه مانند روترها یا سرورهای اختصاصی DHCP اجرا می شود. آدرس های IP پویا با استفاده از سیستم لیزینگ صادر می شود ، به این معنی که آدرس IP فقط برای مدت محدود فعال است. اگر قرارداد اجاره منقضی شود ، کامپیوتر به طور خودکار درخواست اجاره نامه جدید می کند.
معمولاً فضای IPv4 به ما اجازه می دهد بین 0.0.0.0 تا 255.255.255.255 آدرس داشته باشیم. با این حال ، برخی از اعداد در آن محدوده برای اهداف خاصی در شبکه های TCP/IP محفوظ است. این رزروها توسط مرجع آدرس دهی TCP/IP ، مرجع شماره اختصاص داده اینترنت (IANA) به رسمیت شناخته می شود. چهار رزرو خاص شامل موارد زیر است:
رزرو آدرس IP دیگر برای کلاس های زیر شبکه است. زیر شبکه یک شبکه کوچکتر از رایانه ها است که از طریق روتر به شبکه بزرگتری متصل می شوند. زیر شبکه می تواند سیستم آدرس مخصوص به خود را داشته باشد ، بنابراین رایانه های موجود در یک زیر شبکه می توانند بدون ارسال داده به یکدیگر سریع ارتباط برقرار کنندشبکه بزرگتر یک روتر در یک شبکه TCP/IP ، از جمله اینترنت ، طوری پیکربندی شده است که یک یا چند زیر شبکه را تشخیص داده و ترافیک شبکه را به طور مناسب مسیریابی کند. آدرس های IP زیر برای زیر شبکه ها محفوظ است:
سه مورد اول (در کلاس های A ، B و C) بیشترین استفاده را در ایجاد زیر شبکه ها دارند. بعداً خواهیم دید که چگونه یک زیر شبکه از این آدرس ها استفاده می کند. IANA کاربردهای خاصی را برای آدرس های چند رسانه ای در سند RFC 5771 Engineering Engineering Task Force (IETF) بیان کرده است. با این حال ، از آنجا که این بلوک در سند 1989 خود RFC 1112 ذخیره شده است ، هدف یا برنامه ای برای آدرسهای کلاس E تعیین نکرده است. IPv6 ، اینترنت پر بود از این که آیا IANA باید کلاس E را برای استفاده عمومی منتشر کند. ) ، اطلاعات کاملی از اطلاعات آدرس IP خود را مشاهده خواهید کرد. من از قسمتی که به آن علاقه دارم ، اسکرین شات گرفته ام.
ipconfig جزئی خروجیآدرس IP در زیر شبکه دارای دو قسمت است: شبکه و گره. قسمت شبکه خود زیر شبکه را مشخص می کند. گره ، که میزبان نیز نامیده می شود ، یک قطعه جداگانه از تجهیزات رایانه ای است که به شبکه متصل است و نیاز به یک آدرس منحصر به فرد دارد. هر رایانه می داند چگونه دو قسمت آدرس IP را با استفاده از ماسک زیر شبکه جدا کند. یک ماسک زیر شبکه تا حدودی شبیه یک آدرس IP است ، اما در واقع فقط یک فیلتر است که تعیین می کند کدام قسمت از آدرس IP شبکه و گره را تعیین می کند.
در شرایط کنونی ، ماسک زیر شبکه 255.255.255.0 است که نشان می دهد 1 بایت برای میزبان اختصاص داده شده است. همچنین می تواند 255.255.0.0 (2 بای) و 255.0.0.0 (3 بایت) باشد.
اخیراً ، من بصورت تمام وقت روی پروژه هایم به عنوان تکمیل بخشی از برنامه Nanodegree مهندس خودران Udacity (گروه فوریه 2017) کار می کنم. چهارمین پروژه ، و مورد علاقه من ، این است که ما وظیفه داریم مرزهای خط جاده و شعاع انحنای آن را از طریق جریان ویدئوها مشخص کنیم. این ویدئوها از دوربینی که روی خودرو قرار داده شده گرفته شده است. در این مقاله ، من در مورد چیزهایی که در انجام این پروژه آموخته ام صحبت می کنم. "> اگر این مقاله به نوعی به شما کمک کرد ، در نظر داشته باشید که برای من قهوه بخرید :)
به طور خلاصه ، I ' مراحل زیر را برای انجام این کار انجام داده اید:
به دلیل خصوصیات فیزیکی یک لنز دوربین ، تصویر دو بعدی گرفته شده کامل نیست. اعوجاج تصویر وجود دارد که اندازه و شکل ظاهری یک شی را تغییر می دهد. مهمتر اینکه باعث می شود برخی اجسام بیشتر یا دورتر از آنچه که هستند به نظر برسند. خوشبختانه ما می توانیم این تحریف ها را اندازه گیری کرده و آنها را اصلاح کنیم. ما می توانیم همه اطلاعات اعوجاج مورد نیاز خود را با داشتن تصاویری از اشیاء که می دانیم نقاط تئوریک کجا باید باشند استخراج کنیم. معمولا از صفحه های شطرنج روی سطح صاف استفاده می شود زیرا صفحات شطرنج دارای الگوهای منظم با کنتراست بالا هستند. به راحتی می توان تصور کرد که صفحه شطرنج بدون تحریف چگونه است.
< img src = "https://cdn-images-1.medium.com/max/426/1*sq1BRcJGSvm3fdxnbS08yw.png">پس از تصحیح تصویر ، ما تصویری بدون تحریف از یک جاده از دیدگاه وسیله نقلیه خواهیم داشت. ما می توانیم این تصویر را از دید پرنده ای در آسمان به تصویری از جاده تبدیل کنیم. برای استخراج همه اطلاعاتی که برای چرخاندن این تصویر از نمای خودرو به نمای آسمان نیاز داریم ، فقط به مختصات مکان نیاز داریم. به طور خاص ، تنها چیزی که ما نیاز داریم یک تصویر است که از دیدگاه ورودی (نمای خودرو) و مکانهای مربوط به چشم انداز مورد نظر (نمای آسمان) را در اختیار داریم. من به این مختصات مکان می گویم نقاط مبدا و نقاط مقصد. تصویری آسان که می توانیم به آن دقت کنیم خطوط موازی مستقیم هستند. نکته جالب این است که ما همچنین اطلاعات لازم برای چرخاندن از نمای آسمان به نمای خودرو را داریم.
برای برآورد خمیدگی جاده ، ما به تمام اطلاعات از تمام پیکسل های یک تصویر جاده نیاز نداریم. خطوط راه جاده از جریان ویدئو زرد و سفید است ، بنابراین ما می توانیم همه چیز را به جز رنگ زرد و سفید تصویر پنهان کنیم. به عنوان یک احتیاط اضافی ، زیرا ممکن است برخی از خطوط زرد و خطوط غیر خطی را مشاهده کنیم ، یا ممکن است خطوطی وجود داشته باشد که به طور مشخص زرد و سفید نیستند ، ما از آنچه اپراتور Sobel نامیده می شود استفاده می کنیم. یک اپراتور Sobel اساساً میزان تغییر ارزش (و جهت آن) را بین دو مکان تصویر اندازه گیری می کند. این همچنین از نظر فنی مشتق یا گرادیان نامیده می شود. در مورد این بعداً بیشتر
من رنگها را نشان دادمبا فرمت HSL مقدار Hue نشان دهنده تعداد رنگ درک شده بر اساس ترکیب قرمز ، سبز و آبی است. مقدار اشباع میزان میزان رنگ آمیزی یا کسل کننده بودن آن است. سبکی این است که رنگ چقدر به سفید نزدیکتر است. خطوط زرد به خوبی با ترکیبی از سبکی و اشباع بالای مقدار مشخص می شوند. خطوط سفید بدون در نظر گرفتن میزان اشباع و رنگ بسیار روشن می شوند.
من عملگر Sobel را به مقدار روشنایی تصویر اعمال کردم. ما از ترکیبی از آستانه شیب مولفه افقی ، بزرگی شیب و جهت شیب استفاده کردیم. من می خواهم مکان های گرادیان را که تغییر اندازه کافی چندانی ندارند ، کنار بگذارم. آستانه اندازه گرادیان و همچنین x جزء شیب کار خوبی را در این زمینه انجام می دهد. من فقط شیب های یک جهت خاص را در نظر می گیرم. کمی بالاتر از 0 درجه (یا حدود 0.7 در رادیان) ، و زیر 90 درجه (یا حدود 1.4 در رادیان). صفر دلالت بر خطوط افقی و نود خطوط عمودی دارد و خطوط ما (در نمای خودرو) بین آنها قرار دارد.
افزودن هر دو نتیجه رنگ و آستانه گرادیان ، خطوط خط را به خوبی فیلتر می کند. مقادیر اضافی را از لبه های تصویر به دلیل سایه ها دریافت می کنیم ، بنابراین آنها را بعداً مخفی کنید.
ما می توانیم یک منحنی برای هر خط خط با یک تابع چند جمله ای درجه دوم x = y² + By + C قرار دهیم. ما باید ضرایب مربوط به هر خط [A ، B ، C] را پیدا کنیم. ما می توانیم از تابع داخلی polyfit () استفاده کنیم تنها کاری که باید انجام دهیم تغذیه نقاط آن است و ضرایب چند جمله ای از یک درجه مشخص از منحنی را که متناسب با نقاط تغذیه شده است ، بیرون می آورد.
برای تصمیم گیری که کدام پیکسل ها بخشی از یک خط هستند ، بیایید این الگوریتم اساسی را پیاده سازی کنیم. من می توانم هیستوگرام همه ستون های تصویر پایینی را بگیرم و گراف با دو قله شبیه به نمودار بالا دریافت می کنم. قله های برجسته هیستوگرام شاخص های خوبی برای موقعیت x پایه خط هستند. بنابراین من از آنها به عنوان نقطه شروع استفاده می کنم.
< p> من می توانم یک "تکنیک پنجره کشویی" را انجام دهم - یکی از پنجره ها روی پنجره دیگر که از خطوط بالای قاب پیروی می کند. پیکسل های داخل یک "پنجره" به عنوان "پیکسل های مورد علاقه" علامت گذاری می شوند و به لیست نقاط در خط اضافه می شوند. ما مقادیر x این پیکسل ها را متوسط می کنیم تا به خوبی نقطه پایه پنجره بعدی بالا را نشان دهیم. ما می توانیم این کار را بارها و بارها تکرار کنیم تا به بالای خط برسیم. به این ترتیب ما تمام پیکسل هایی را که به آن علاقه داریم جمع کرده ایم و به تابع polyfit () که ضرایب چند جمله ای درجه 2 را مشخص می کند ، تغذیه می کنیم. ما می توانیم شعاع انحنای هر خط را محاسبه کنیموقتی معادلات منحنی را می دانیم.برای تخمین موقعیت وسیله نقلیه ، می توانم عرض خط را بر حسب پیکسل در پایین تصویر (نزدیک ترین به دوربین) محاسبه کنم. بگویید عرض آن 1000 پیکسل بود. این بدان معناست که هر پیکسل در مقیاس واقعی با 3.7 متر مطابقت دارد. سپس می توانم تعداد پیکسل هایی که مرکز تصویر از مرکز خط خارج شده است را محاسبه کرده و افست را در متر در نظر بگیرم.
خوب است! ما در واقع اطلاعات زیادی در مورد جاده با توجه به یک تصویر واحد از جاده جمع آوری کرده ایم. همانطور که قبلاً در بخش Perspective Transformation گفتم ، ما می توانیم از همان اطلاعات برای پیچاندن تصویر از نمای آسمان به نمای خودرو استفاده کنیم.
چون ما در حال حاضر پارامترهای منحنی خط خط را داریم نقاط منحنی ها و تابع fillPoly () برای کشیدن ناحیه خط روی تصویر. اکنون می توانیم اندازه گیری خود را در مسیر تصویر نشان دهیم. ما این را به زیبایی در یک عملکرد کوچک و شیک به نامbirdsEye.project ()
< /img>بنابراین به طور خلاصه ، این تقریباً تمام مراحلی است که باید برای تشخیص خطوط خط انجام دهیم. ما همچنین می توانیم شعاع خمیدگی را تخمین زده و موقعیت خودرو را با توجه به هر یک از این خطوط خط تخمین بزنیم. ابتدا ، اعوجاج دوربین را تصحیح کردیم ، همه چیز را به جز پیکسل های خط خط پنهان کردیم. ما تصویر را به "نمای آسمان" تغییر دادیم و از این پیکسل های خط استفاده کردیم تا با استفاده از تکنیک "sliding-window" و تابع polyfit () بهترین منحنی را پیدا کنیم. ما همچنین می توانیم خطوط خمیده را برای نمای فوق العاده به تصویر "نمای خودرو" بازگردانیم :). منحنی که منطقی است من فکر می کنم هنوز باید تغییراتی ایجاد کنم تا شعاع تخمین خمیدگی بهتری حاصل شود. من همچنین فکر می کنم اگر بیشتر فکر کنم می توانم الگوریتم پنجره کشویی را با خواندن تمیزتری انجام دهم تا پیکسل های مورد علاقه هر خط را بدست آورم. به نظر می رسد کلاس Curves مسئول بسیاری از موارد است ، شاید بتوانم این را به چند کلاس کوچکتر تقسیم کنم. نکته دیگر این است که من فکر می کنم عملکرد پروژه () در کلاس BirdsEye من نامناسب است ، شاید من باید به جای درخواست ضرایب اتصالات منحنی ، خطوط خط خارج را محاسبه کنم ، تابع باید برای نمایش تصویر درخواست کند در عوض.
یک س veryال بسیار رایج که من دریافت می کنم این است ، "چگونه می توان با یادگیری عمیق شروع کرد؟". در حال حاضر ، در حال حاضر پاسخ های بسیار خوبی در مورد این موضوع مانند این و این وجود دارد (آنها منابع زیادی را ذکر کرده اند و شما قطعاً باید آنها را بررسی کنید). این فقط تلاشی است برای پاسخ به این س basedال بر اساس تجربه من ، ارائه یک مسیر دقیق تر و دقیق تر و سفری از طریق چالش های مختلفی که احساس کردم. این پست با آشنایی با مبانی علوم کامپیوتر و ریاضی شروع می شود ، از طریق شروع به یادگیری ماشین و یادگیری عمیق ، به تخصص و مشاوره در پروژه ، ساختن مشخصات خود ، شبکه و اهمیت و در نهایت با نکاتی که من به آنها می دادم پایان می یابد. خود جوانتر من.
اکنون بر هیچ کس پوشیده نیست که MOOC (دوره های آنلاین گسترده گسترده) مانند Coursera ، Udacity ، NPTEL ، Stanford Online & MIT Opencourseware چشم انداز آموزش را تغییر داده و دوره های مدارس فوق لیسانس را در دسترس مخاطبان گسترده تری قرار می دهد. آنها منبع اصلی یادگیری من برای موضوعات مختلف بوده اند و روش مبتنی بر تکلیف درک واضح تری از مفاهیم زیرین را تضمین می کند. من لیست دوره هایی را که توصیه می کنم به کسی که قبلاً چیزی به او آموزش نداده اند توصیه می کنم ، بنابراین با خیال راحت از دوره هایی که قبلاً با آنها آشنایی دارید صرف نظر کنید.
پس از اتمام مراحل اولیه ، اکنون می توانید در دوره های خاص یادگیری ماشین و /یا یادگیری عمیق شرکت کنید. یادگیری عمیق در حال حاضر در تعداد زیادی از حوزه ها از بینایی رایانه و پردازش زبان طبیعی گرفته تا تولید هنر و اتومبیل های خودران استفاده می شود. من ابتدا دوره هایی را که به صورت آنلاین به صورت رایگان در دسترس هستند لیست می کنم و سپس پیوندهایی را به چند برنامه گران قیمت اضافه می کنم ، اما به دلیل نوع پشتیبانی که دریافت می کنید ، ارزش آن را نیز دارد.
به من اعتماد کنید وقتی می گویم من در بسیاری از موارد دست خود را امتحان کرده ام ( بینایی رایانه ای ، پردازش زبان طبیعی ، تصویربرداری پزشکی ، ژنومیک) همانطور که من مجذوب هر چیزی و هر چیزی که این زمینه ارائه می دهد ، شدم. اما بزرگترین درسی که آموخته ام اهمیت تمرکز بر روی یک (دو ، حداکثر) چیز خاص است. من قبلاً به این موضوع اعتقاد نداشتم ، اما پس از انجام چندین کار ، برایم واضح است که اگر می خواهیم واقعاً به چیزی برسیم ، باید در یک کار صفر عمل کنیم و بهترین کار را انجام دهیم. قسمت سخت این است که نگذارید سر و صدا حواس شما را پرت کند. من این زمان را برای افزودن یک نقل قول که خلاصه ای از آنچه می خواهم بگویم ، اختصاص می دهم:
در حال حاضر ، بهترین راه برای یادگیری چیزی ساختن چیزی است. نه تنها به شما در درک مفاهیم کمک می کند ، بلکه به رزومه شما نیز ارزش می بخشد (بیشتر در مورد ایجاد نمایه در بخش بعدی). منابع مختلفی برای دریافت پروژه ها وجود دارد و مطمئن شوید که در هر زمان یکی (حداکثر دو مورد) را انتخاب می کنید.
این نکته باید بسیار تأکید شود. مشخصات شما مهم است برای دانش آموزان ، درست است که در موقعیت های شما چندان اهمیتی نخواهد داشت ، اما پس از فارغ التحصیلی و تمایل به تغییر شرکت چه می شود؟ این تصور اشتباه وجود دارد که ساختن مشخصات شما فقط برای یافتن شغل است. خیلی بیشتر است شما می توانید خود را در اینترنت ، کل سابقه خود و شخصی که به عنوان یک شخص هستید قرار دهید. نمایه شما یک لایه اصالت به حضور آنلاین شما می افزاید و دسترسی افراد با شما را بسیار آسان می کند. 3 مورد وجود دارد که شما باید از آنها مراقبت کنید - LinkedIn ، نمایه های Github و وب سایت شما. مال منم همینطور. یک وب سایت شخصی از یک الگوی کلی پیروی می کند و شما می توانید برای سرفصل ها و محتوایی که باید در هر عنوان قرار داده شود به این قسمت مراجعه کنید. شبکه اجتماعی است ، اما یک شبکه اجتماعی حرفه ای است. شما این فرصت را پیدا می کنید که با افراد همفکر خود در آنجا ارتباط برقرار کنید ، ایده های خود را به اشتراک بگذارید ، برای مشاغل درخواست دهید و اساساً ، ارتباطات خود را تقویت کنید. افرادی که بیشترین فعالیت را در LinkedIn دارند دائماً محتوای ارزشمندی ایجاد می کنند و هر دقیقه صرف شده در LinkedIn مفید است (تا حدی). در هر درگاه درخواست کار ، از شما خواسته می شود که پیوند نمایه LinkedIn خود را ارائه دهید. یک USP بزرگ LinkedIn قابلیت جستجوی عالی است. شما به معنای واقعی کلمه می توانید تمام فارغ التحصیلان خود را در آنجا جستجو کنید و حتی افرادی را که در یک شرکت /موسسه کار می کنند بررسی کنید. نمایه LinkedIn شما به شما این امکان را می دهد که کل سابقه خود را مشخص کنید و آنها اخیراً شروع به مطابقت شما با مربیان احتمالی کرده اند. برای اطلاع از نکات مربوط به بهینه سازی پروفایل LinkedIn خود به اینجا مراجعه کنید.
اکثر مردم از ساختن پروفایل Github خود چشم پوشی می کنند و دلیل اصلی آن نیز عدم آگاهی است. بر اساس توصیه من برای مشارکت منبع باز ، Github به شما این فرصت را می دهد تا کار خود را نه تنها در قالب کلمات ، بلکه با کد واقعی به نمایش بگذارید. یک استخدام کننده بالقوه می تواند به جستجوی شما بپردازدمشخصات و نحوه کدگذاری خود ، تعداد دفعات کدگذاری و غیره را مشخص کنید. یک نمودار کوچک همراه با نمایه شما وجود دارد که مشارکت های شما در سال گذشته را نشان می دهد:
در حال حاضر ، مجبور نیستید شخص دیگری را که می توانید کدگذاری کنید توجیه کنید. آنها به معنای واقعی کلمه می توانند آن را ببینند. همچنین ، اغلب تصور می کنیم که دیگران همان دانش ما را دارند و می توانند به تنهایی بفهمند که چگونه کد ما کار کند. شامل مستندات مناسب برای همه کارهای شما برای ایده منبع باز مهم است. بنابراین ، اگر وقت خود را صرف برنامه نویسی می کنید ، بگذارید نمایه شما نیز این را برای شما بیان کند.
در نهایت ، موضوع شبکه بسیار کمتر از آنچه که باید صحبت می شود. باز هم ، این می تواند یک پست جداگانه داشته باشد ، اما من سعی می کنم در اینجا خلاصه کنم. شبکه به دنبال استخدام احتمالی بعدی شما نیست. این در حال ایجاد روابط واقعی با افرادی است که با آنها ارتباط برقرار می کنید. امروزه بسیاری از ما بر تفکر "چه چیزی برای من خوب است" متمرکز شده ایم و به مشخصات یک شخص بیشتر از شخص او اهمیت می دهیم. همیشه مراقب باشید تا با هر کسی و هر کسی که ملاقات می کنید (حتی به صورت مجازی) روابط ثمربخش داشته باشید. آنها نه تنها می توانند برای شما ضمانت کنند که واقعاً به کمک آنها نیاز دارید ، بلکه این در طبیعت انسان است که احساس خوشبختی و رضایت داشته باشید تا واقعاً با همسالان خود ارتباط عمیقی برقرار کنید. من در سال 2015 در استارتاپی به نام Twango (فریاد تیم اگر کسی در حال خواندن آن بود) کارآموزی کرده بودم و اگرچه کارآموزی فقط یک ماه بود ، اما پیوندی که ما با هم داشتیم تا به امروز ادامه دارد و من هنوز توصیه نامه ای برای کارم در آنجا دریافت می کنم. آن را بخواهید یک نکته کوچک: وقتی از نظر فیزیکی با افراد ملاقات می کنید یا با شخصی در LinkedIn ارتباط برقرار می کنید ، به دنبال راه هایی نباشید که طرف مقابل می تواند به شما کمک کند. در عوض ، اطمینان حاصل کنید که در صورت هرگونه کمک مورد نیاز ، به شخص اطلاع دهید که شما آنجا هستید. سرانجام ، این ویدئو وقتی اولین بار آن را دیدم واقعاً دیدگاه من را تغییر داد و من درس هایی را که از آن آموختم ، همیشه به خودم یادآوری می کنم: > روی چیزهای کمتر تمرکز کنید
من سعی کرده ام تمام منابعی را که استفاده کرده ام (و برخی دیگر باید) برای یادگیری من ، همراه با برخی از درسهای اصلی که از چهار سال تحصیل در مقطع کارشناسی به دست آمده است. می دانم که این مطلب طولانی خوانده شد و اگر تا اینجا پیش رفته اید ، می خواهم از شما برای نظراتم تشکر کنم و صمیمانه امیدوارم که این بتواند کمکی برای شما باشد.
سلام!
هوش مصنوعی (AI) دیگر حوزه ای نیست که فقط به مقالات پژوهشی و دانشگاهی محدود شود. مشاغل و…