💻برایان و جان دو برنامه نویس بودند که در استخدام فیسبوک پذیرفته نشدند.
بعدها Whatsapp رو راه انداختند و 19 میلیارد به فیسبوک فروختند....
💡نوابغ فقط انسان هايي هستن كه نا اميد نشدن!...
#انگیزشی
بعدها Whatsapp رو راه انداختند و 19 میلیارد به فیسبوک فروختند....
💡نوابغ فقط انسان هايي هستن كه نا اميد نشدن!...
#انگیزشی
Forwarded from 🔥Pr🅾️gramming🔥
در صنعت نرم افزار، چیزی تغییر می کند و چیز جدیدی ظاهر می شود. به عنوان مثال، زبان های برنامه نویسی جدیدی به وجود می آیند. و موارد قدیمی به طور مرتب به روز می شوند. در این راستا، انتخاب کردن بین آنها دشوار میشود
توسعه دهنده، به منظور مفید بودن خود، باید مرتبا سطح خود را بهبود بخشد.
امروز من به طور دقیق دو زبان برنامه نویسی عالی را بررسی می کنم (محبوب ترین) آنها یعنی پایتون و جاوا اسکریپت اشاره کرد.
من نمی خواهم ثابت کنم که یکی از آنها بهتر از دیگری است. هدف من این است که به توسعه دهندگان کمک کنم تا بر اساس پارامترهای خاصی انتخاب کنند. کدام اسانتر و فرصت بیشتری به شما میدهد.
1. اسان برای یادگیری و استفاده
یکی از عوامل کلیدی در انتخاب یک زبان، سرعت و سهولت یادگیری است. این به ویژه برای کسانی که تازه شروع به کار در زمینه برنامه نویسی می کنند اهمیت دارد.
پایتون برای مبتدیان خیلی دوستانه است و به گونه ای طراحی شده است که بتوان آن را به سرعت یاد گرفت و آموخت. بنابراین، اگر به سهولت استفاده تکیه کنید، پایتون نتایج بهتر از جاوا اسکریپت را نشان می دهد.
جاوا اسکریپت یک زبان برنامه نویسی مدرن پیچیده تر نسبت به پایتون است. 2-چند منظوره
پایتون یکی از زبان های برنامه نویسی همه کاره است.
توسعه وب
توسعه سیستم های ERP
توسعه در زمینه هوش مصنوعی / یادگیری ماشین / تجزیه و تحلیل داده ها.
جاوا اسکریپت در مورد توسعه وب و توسعه سیستم های ERP نیز بسیار خوب است.اگر برای هوش مصنوعی و یادگیری ماشین که اینده را در دست دارد، جاوا اسکریپت یک انتخاب بسیار خوبی نیست.
این یک منطقه نسبتا جدید برای جاوا اسکریپت است و او در مسیر پیشرفت خود راه زیادی دارد. پایتون قبلا به عنوان یکی از محبوب ترین زبان ها برای داده ها و الگوریتم های AI / MO شناخته شده است. به نفع جاوا اسکریپت، گفته شده است که توانایی استفاده آن به عنوان یک زبان frontend, and backend. این به خوبی نیازهای برنامه نویسان را به عوان یک full-stack برطرف میکند جاوا اسکریپت در هنگام توسعه برنامه های کاربردی تلفن همراه، پایتون را پشت سر میگذارد.(پایتون یک جامعه قوی دارد) 3. عملکرد
این مقایسه آسان نیست، زیرا عملکرد به موضوعات مختلفی بستگی دارد. از نظر سرعت، Node.js سریعتر است. عملکرد فوق العاده ای آن به خاطر وجود موتور V8 است و بسیار سریع و قدرتمند است. چنین کارایی بالا اجازه می دهد تا Node.js یک راه حل مناسب برای ساخت برنامه های کاربردی (real-time) باشد. 4. مقیاس پذیری
مقیاس پذیری، ما باید درک کنیم که چگونه زبان قابلیت پشتیبانی از تعداد زیادی درخواست را دارد و همچنین چگونه منابع سیستم را مصرف میکند.
(خیلی به مهارت برنامه نویس بستگی دارد)اگر کدهای شما به صورت بهینه و مناسب نوشته شده باشد، می تواند محصول را انعطاف پذیر کند. Python به طور پیش فرض برنامه نویسی asynchronous را پشتیبانی نمی کند، بر خلاف Node.js.اما پایتون از coroutines پشتیبانی میکند، به لطف ان شما به راحتی می توانید پردازش asynchronous . را انجام دهید.به عنوان مثال، YouTube و Instagram - دو محصول عالی با استفاده از پایتون ایجاد شده است. پیچیدگی کد: پایتون به خوبی برای پروژه های بزرگ مناسب است. این به شما این امکان را می دهد که به آسانی پروژه های پیچیده ای را ایجاد کنید. پایتون برای ترکیب در برنامه های وب عالی است.
توسعه دهنده، به منظور مفید بودن خود، باید مرتبا سطح خود را بهبود بخشد.
امروز من به طور دقیق دو زبان برنامه نویسی عالی را بررسی می کنم (محبوب ترین) آنها یعنی پایتون و جاوا اسکریپت اشاره کرد.
من نمی خواهم ثابت کنم که یکی از آنها بهتر از دیگری است. هدف من این است که به توسعه دهندگان کمک کنم تا بر اساس پارامترهای خاصی انتخاب کنند. کدام اسانتر و فرصت بیشتری به شما میدهد.
1. اسان برای یادگیری و استفاده
یکی از عوامل کلیدی در انتخاب یک زبان، سرعت و سهولت یادگیری است. این به ویژه برای کسانی که تازه شروع به کار در زمینه برنامه نویسی می کنند اهمیت دارد.
پایتون برای مبتدیان خیلی دوستانه است و به گونه ای طراحی شده است که بتوان آن را به سرعت یاد گرفت و آموخت. بنابراین، اگر به سهولت استفاده تکیه کنید، پایتون نتایج بهتر از جاوا اسکریپت را نشان می دهد.
جاوا اسکریپت یک زبان برنامه نویسی مدرن پیچیده تر نسبت به پایتون است. 2-چند منظوره
پایتون یکی از زبان های برنامه نویسی همه کاره است.
توسعه وب
توسعه سیستم های ERP
توسعه در زمینه هوش مصنوعی / یادگیری ماشین / تجزیه و تحلیل داده ها.
جاوا اسکریپت در مورد توسعه وب و توسعه سیستم های ERP نیز بسیار خوب است.اگر برای هوش مصنوعی و یادگیری ماشین که اینده را در دست دارد، جاوا اسکریپت یک انتخاب بسیار خوبی نیست.
این یک منطقه نسبتا جدید برای جاوا اسکریپت است و او در مسیر پیشرفت خود راه زیادی دارد. پایتون قبلا به عنوان یکی از محبوب ترین زبان ها برای داده ها و الگوریتم های AI / MO شناخته شده است. به نفع جاوا اسکریپت، گفته شده است که توانایی استفاده آن به عنوان یک زبان frontend, and backend. این به خوبی نیازهای برنامه نویسان را به عوان یک full-stack برطرف میکند جاوا اسکریپت در هنگام توسعه برنامه های کاربردی تلفن همراه، پایتون را پشت سر میگذارد.(پایتون یک جامعه قوی دارد) 3. عملکرد
این مقایسه آسان نیست، زیرا عملکرد به موضوعات مختلفی بستگی دارد. از نظر سرعت، Node.js سریعتر است. عملکرد فوق العاده ای آن به خاطر وجود موتور V8 است و بسیار سریع و قدرتمند است. چنین کارایی بالا اجازه می دهد تا Node.js یک راه حل مناسب برای ساخت برنامه های کاربردی (real-time) باشد. 4. مقیاس پذیری
مقیاس پذیری، ما باید درک کنیم که چگونه زبان قابلیت پشتیبانی از تعداد زیادی درخواست را دارد و همچنین چگونه منابع سیستم را مصرف میکند.
(خیلی به مهارت برنامه نویس بستگی دارد)اگر کدهای شما به صورت بهینه و مناسب نوشته شده باشد، می تواند محصول را انعطاف پذیر کند. Python به طور پیش فرض برنامه نویسی asynchronous را پشتیبانی نمی کند، بر خلاف Node.js.اما پایتون از coroutines پشتیبانی میکند، به لطف ان شما به راحتی می توانید پردازش asynchronous . را انجام دهید.به عنوان مثال، YouTube و Instagram - دو محصول عالی با استفاده از پایتون ایجاد شده است. پیچیدگی کد: پایتون به خوبی برای پروژه های بزرگ مناسب است. این به شما این امکان را می دهد که به آسانی پروژه های پیچیده ای را ایجاد کنید. پایتون برای ترکیب در برنامه های وب عالی است.
Forwarded from 🔥Pr🅾️gramming🔥
5. فرصت های شغلی
جاوا اسکریپت به عنوان full-stack شناخته میشود، به همین خاطر درامد خوبی دارد. جاوا اسکریپت در بین غول های فن آوری محبوب شده است.
اما لازم به ذکر است که Python از لحاظ حرفه ای از جاوا اسکریپت کمتر نیست، زیرا برای زمینه هوش مصنوعی، یادگیری ماشین، تجزیه و تحلیل داده ها بسیار مناسب است. اگر شما حال و اینده را میخواهید پایتون یک انتخاب عالی است.
من فکر می کنم هر دو زبان برنده هستند، هر کدام به نوع خودشان. اگر می خواهید یک توسعه دهنده کامل پشته باشید و دوست دارید برنامه های کاربردی موبایل و وب را بهینه سازی کنید، سپس دانش جاوا اسکریپت به نفع شما خواهد بود. اما اگر میخواهید علم داده را انجام دهید، بهتر است پایتون را انتخاب کنید.
آگاهی از هر یک از این زبان ها درآمد خوبی را به ارمغان می آورد. انتخاب زبان بسیار مهم است. این نباید تحت تاثیر بازار یا آنچه که دیگران می گویند باشد. تصمیم گیری باید بر اساس اطلاعات در مورد زبان ها، و همچنین بر اساس تجربه شخصی بنا قرار گیرد تست قابلیت اطمینان، مقیاس پذیری، سهولت یادگیری و ... آینده زبان را فراموش نکنید.(انتخاب زبان یک موضوع فردی است.)
جاوا اسکریپت به عنوان full-stack شناخته میشود، به همین خاطر درامد خوبی دارد. جاوا اسکریپت در بین غول های فن آوری محبوب شده است.
اما لازم به ذکر است که Python از لحاظ حرفه ای از جاوا اسکریپت کمتر نیست، زیرا برای زمینه هوش مصنوعی، یادگیری ماشین، تجزیه و تحلیل داده ها بسیار مناسب است. اگر شما حال و اینده را میخواهید پایتون یک انتخاب عالی است.
من فکر می کنم هر دو زبان برنده هستند، هر کدام به نوع خودشان. اگر می خواهید یک توسعه دهنده کامل پشته باشید و دوست دارید برنامه های کاربردی موبایل و وب را بهینه سازی کنید، سپس دانش جاوا اسکریپت به نفع شما خواهد بود. اما اگر میخواهید علم داده را انجام دهید، بهتر است پایتون را انتخاب کنید.
آگاهی از هر یک از این زبان ها درآمد خوبی را به ارمغان می آورد. انتخاب زبان بسیار مهم است. این نباید تحت تاثیر بازار یا آنچه که دیگران می گویند باشد. تصمیم گیری باید بر اساس اطلاعات در مورد زبان ها، و همچنین بر اساس تجربه شخصی بنا قرار گیرد تست قابلیت اطمینان، مقیاس پذیری، سهولت یادگیری و ... آینده زبان را فراموش نکنید.(انتخاب زبان یک موضوع فردی است.)
انتشار دوره جدید آموزش یادگیری عمیق دانشگاه MIT در سال 2019 از طریق همین سایت در دسترس قرار خواهد گرفت.
در این سایت سایر دوره های برگزار شده این دانشگاه نظیر «بینایی ماشین/کامپیوتر , یادگیری تقویتی عمیق , شبکه های عصبی مصنوعی , یادگیری عمیق برای ماشین های خودران , هوش مصنوعی , یادگیری آماری » در دسترس است.
https://deeplearning.mit.edu/
#اموزش #mit
@pythonicAI
در این سایت سایر دوره های برگزار شده این دانشگاه نظیر «بینایی ماشین/کامپیوتر , یادگیری تقویتی عمیق , شبکه های عصبی مصنوعی , یادگیری عمیق برای ماشین های خودران , هوش مصنوعی , یادگیری آماری » در دسترس است.
https://deeplearning.mit.edu/
#اموزش #mit
@pythonicAI
آموزش مثال-محور فریم ورک PyQt5 جهت طراحی رابط گرافیکی اسکریپت های پایتون
این فریم ورک دارای بیش از ۶۲۰ کلاس و ۶۰۰۰ تابع و متد بوده و توانایی اجرا روی تمام سیستم عامل های یونیکس، ویندوز و مک را دارد.
https://goo.gl/5CSt19
@pythonicAI
این فریم ورک دارای بیش از ۶۲۰ کلاس و ۶۰۰۰ تابع و متد بوده و توانایی اجرا روی تمام سیستم عامل های یونیکس، ویندوز و مک را دارد.
https://goo.gl/5CSt19
@pythonicAI
توصیه های javin paul برای تبدیل شدن به یک توسعه دهنده بهتر جاوا:
- جاوا ۸ را یاد بگیرید
- چارچوب اسپرینگ را یاد بگیرید
- تست واحد را یاد بگیرید
- با ای پی آی ها و کتابخانه های جاوا اشنا شوید
- ساختار داخلی jvm را یاد بگیرید
- الگوهای طراحی را یاد بگیرید
- ابزار devops را یاد بگیرید
- زبان کاتلین را یاد بگیرید
- میکروسرویس هارا یاد بگیرید
- آی دی ای ide خود را بهتر یاد بگیرید
https://goo.gl/N5S2BT
@pythonicAI
- جاوا ۸ را یاد بگیرید
- چارچوب اسپرینگ را یاد بگیرید
- تست واحد را یاد بگیرید
- با ای پی آی ها و کتابخانه های جاوا اشنا شوید
- ساختار داخلی jvm را یاد بگیرید
- الگوهای طراحی را یاد بگیرید
- ابزار devops را یاد بگیرید
- زبان کاتلین را یاد بگیرید
- میکروسرویس هارا یاد بگیرید
- آی دی ای ide خود را بهتر یاد بگیرید
https://goo.gl/N5S2BT
@pythonicAI
انجمن جاواکاپ
چگونه به یک توسعهدهنده بهتر جاوا تبدیل شویم؟ - انجمن جاواکاپ
ده توصیه برای تبدیل شدن به یک توسعهدهنده بهتر جاوا
Awesome transfer learning
✅برترین مقالات، دیتاست ها و survey های مرتبط با transfer learning
https://goo.gl/JUdV4P
@pythonicAI
✅برترین مقالات، دیتاست ها و survey های مرتبط با transfer learning
https://goo.gl/JUdV4P
@pythonicAI
GitHub
artix41/awesome-transfer-learning
Best transfer learning and domain adaptation resources (papers, tutorials, datasets, etc.) - artix41/awesome-transfer-learning
اگه یه وقت هوس کردین توسعه دهنده core پایتون بشین و به تیم توسعه بپیوندین، لینک زیر حتما به کارتون میاد:
https://devguide.python.org/coredev/
@pythonicAI
https://devguide.python.org/coredev/
@pythonicAI
تنها چيزي كه پيشرفت رو حتمي ميكنه اينه كه هر روز تلاش كني از روز قبلت بهتر باشي...
مساوي ميشه وقتي اون ها از تو و تو از افكار اونها متنفري
#انگیزشی
@pythonicAI
مساوي ميشه وقتي اون ها از تو و تو از افكار اونها متنفري
#انگیزشی
@pythonicAI
کنونیکال لیست 10 اپلیکیشن پرطرفدار در اسنپ (snapcraft) در سال 2018 را منتشر کرد:
1.Spotify
2.Slack
3.VLC
4.Nextcloud
5.Android Studio
6.Discord
7.Plex Media Server
8.Xonotic
9.Notepad++
10.Shotcut
نکته جالب نوت پد پلاس پلاس در این لیست است :) این همان نوت پد پلاس پلاس ویندوز است که کنونیکال با یک سری ترفند ها آن را به مخزن اسنپ و لینوکس افزوده است!
منبع:
https://goo.gl/KVybKz
@pythonicAI
1.Spotify
2.Slack
3.VLC
4.Nextcloud
5.Android Studio
6.Discord
7.Plex Media Server
8.Xonotic
9.Notepad++
10.Shotcut
نکته جالب نوت پد پلاس پلاس در این لیست است :) این همان نوت پد پلاس پلاس ویندوز است که کنونیکال با یک سری ترفند ها آن را به مخزن اسنپ و لینوکس افزوده است!
منبع:
https://goo.gl/KVybKz
@pythonicAI
BetaNews
Canonical shares the Top 10 Linux Snaps of 2018 -- Spotify, Slack, Plex, VLC, and more!
As 2018 comes to a close, I find myself doing much reflecting. Linux consumes much of my thinking, and sadly, this was not the year that it overtakes Windows on the desktop. You know what, though? Windows 10 was an absolute disaster this year, while the Linux…
Forwarded from جادی، کیبورد آزاد - Jadi
👽 چگونه به یک هکر یا متخصص امنیت عالی تبدیل بشم
https://jadi.net/2019/01/how-to-become-a-hacker-2/
-=-=-=
مفهوم هکر مفهومی عامتر از نفوذ و امنیت است. هکر کسیه که از ابزارش استفاده غیرمرسوم و هوشمندانه می کنه و موفق به چیزهایی می شه که از نظر دیگران نشدنی بوده. اما خیلی از رسانهها، مفهوم هکر رو به عنوان صرفا متخصص امنیت کامپیوتر جا انداختن و هفتهای نیست که من توش یک ایمیل نگرفته باشم که بگه «جادی! چطوری متخصص امنیت بشم؟». مشکل کار هم اینجاست که خیلی وقتها سوال کننده درک دقیقی از این شغل نداره و فقط به خاطر اسم بامزه و ظاهر هیجان انگیزش می خواد به شاخه امنیت بیاد. توی این نوشته که تقریبا جمع بندی و ترجمه آزادی از این مطلب است سعی کردم یکجا، جوابی رو آماده کنم.
-=-=-=-
اولین قدم در تبدیل شدن به یک متخصص خوب امنیت، اینه که به یک متخصص معمولی امنیت تبدیل بشین. خیلی خوبه اگر از اول دنبال تبدیل شدن به بهترین هستین اما در نهایت بهتره حواستون باشه که برای رسیدن به هر جایی باید قدم به قدم پیش رفت و حوصله داشت. بخصوص در دنیای امنیت که بهترین ها، معمولا پیشینه گستردهای دارن و در حوزههای مختلف دانش دارن. خیلی از متخصصین امنیت و هکرهای خوب، با کارهایی مثل برنامهنویسی، سیستمعامل، شبکه، طراح و موارد مشابه شروع کردن و بعد از چرخیدن در حوزههای مختلف، سراغ امنیت رفتن.
تبدیل شدن به متخصص امنیت مثل اینه که بگین میخواین به یک نویسنده خوب تبدیل بشین. نویسندههای خوب فقط با کلاسهای نویسندگی به وجود نمیان بلکه معمولا آدمهایی هستن که دنیا رو زندگی کردن، کتاب خوندن، سفر رفتن، فیلم دیدن، فلسفه میدونن، به زندگی فکر کردن و بعد نویسندگی رو هم با تمرین یا دوره یاد گرفتن. به همین شکل اگر در این لظحه شما مهارت بخصوصی در رشتههایی مثل شبکه، سیستم عامل، سخت افزار، رمزنگاری، برنامه نویسی سطح پایین، برنامه نویسی سطح بالا، درک ار پروتکلهای ارتباطی، پایگاههای داده و موارد مشابه ندارین، پیشنهاد بهتر از این راه رو برو تا متخصص امنیت بشی اینه که در این حوزهها شروع به کار کن و توشون پیشرفت کن.
مرحله بعدی اینه که با دونستن یا فعال بودن در یکی یا چند تا از این حوزهها، مسائل امنیتی مرتبط رو توشون دنبال کنین. مثلا اگر سیستم عامل بلدین، با دنبال کردن باگها یا خوندن، ببینین مشکلات امنیتی چه چیزهایی می تونن باشن و کجاها میشه پیداشون کرد. اگر در برنامه نویسی سطح پایین هستین اصلاحهایی مثل اورفلو رو دنبال کنین یا اگر برنامهنویس سطح بالا هستین با مفاهیمی مثل اینجکشن آشنا بشین. همین مساله در شبکه و پروتکل و غیره هم ثابته. بسیاری از پروتکلها مشکلاتی دارن که کاملا شناخته شده است و میتونین دنبالشون کنین یا حتی سراغ سخت افزار برین و ببینین بقیه چیکار کردن و تکرارشون کنین تا کم کم راهتون رو پیدا کنین. بسیاری از هکرهای بزرگ تاریخ با همین شیوه پیش رفتن و هر کدوم هم حوزه تخصصی خودشون رو داشتن. در اکثرا موارد کسی با ایده «برم بهترین متخصص امنیت بشم» شروع نکرده بلکه از حوزههای دیگه سراغ مساله اومده.
یکی از مشکلات فعلی دنیای امنیت همینه که افرادی که تخصصی در حوزههای دیگه ندارن و فقط درس امنیت می خونن، به سیستمها اضافه میشن و بیشتر از اونی که کار مفید بکنن، دردسرهای اداری برای بقیه بخشها درست میکنن – البته اونهم الزاما بد نیست ولی معمولا فرستادن چند بخشنامه و سختگیری در مورد پروتکل ها و اصرار به شکل خاصی از وی پی ان و قرارداد خرید وف و آپدیت کردن فایروال ها و … کاری نیست که وقتی یکی با هیجان می گه «می خوام متخصص امنیت بشم» دنبالش باشه.
اما با داشتن بحث قبلی در ذهن، بذارین نگاهی هم بندازیم به انواع شغلهایی که یکه متخصص امنیت می تونه داشته باشه و ببینیم راه رسیدن به هر کدومش چه چیزیه:
🤖 تست کننده امنیت اپلیکیشنهای وب: یاد بگیرین برنامه بنویسین تا توی این بحث از آدمهایی که فقط بلدن اپلیکیشن تست کنن فاصله بگیرین. درک از سیستمعامل و دیتابیس بهتون کمک خواهد کرد و همینطور دونستن چیزهایی مثل پی اچ پی، جاوااسکریپت، پایتون و جاوا. اگر بتونین شیوه کار چیزی رو درک کنین، شکستنش راحتتر خواهد بود. بعد از اون دنبال OWASP بگردین و مسیر رو پیدا خواهید کرد.
🤖 متخصص امنیت شبکه: بهتره برای خودتون یک لابراتوار درست کنین که اجزای متفاوتی داشته باشه. مثلا استک لمپ (لینوکس، آپاچی، مای اسکوئل، پی اچ پی) همیشه شروع خوب و مرسومی است و بعد بررسی کنین که هر جزء از این استک چطوری امن میشه. درک اولیهتون که کامل شد میتونین برین سراغ PTES (استاندارد اجرای پن تست) و شیوههایی که هکرها به شبکهها حمله میکنن رو یادبگیرین و مطمئنا راحت کشف خواهید کرد که علیه هر متد باید چه کاری انجام بشه.
ادامه در مطلب بعدی @jadinet
https://jadi.net/2019/01/how-to-become-a-hacker-2/
-=-=-=
مفهوم هکر مفهومی عامتر از نفوذ و امنیت است. هکر کسیه که از ابزارش استفاده غیرمرسوم و هوشمندانه می کنه و موفق به چیزهایی می شه که از نظر دیگران نشدنی بوده. اما خیلی از رسانهها، مفهوم هکر رو به عنوان صرفا متخصص امنیت کامپیوتر جا انداختن و هفتهای نیست که من توش یک ایمیل نگرفته باشم که بگه «جادی! چطوری متخصص امنیت بشم؟». مشکل کار هم اینجاست که خیلی وقتها سوال کننده درک دقیقی از این شغل نداره و فقط به خاطر اسم بامزه و ظاهر هیجان انگیزش می خواد به شاخه امنیت بیاد. توی این نوشته که تقریبا جمع بندی و ترجمه آزادی از این مطلب است سعی کردم یکجا، جوابی رو آماده کنم.
-=-=-=-
اولین قدم در تبدیل شدن به یک متخصص خوب امنیت، اینه که به یک متخصص معمولی امنیت تبدیل بشین. خیلی خوبه اگر از اول دنبال تبدیل شدن به بهترین هستین اما در نهایت بهتره حواستون باشه که برای رسیدن به هر جایی باید قدم به قدم پیش رفت و حوصله داشت. بخصوص در دنیای امنیت که بهترین ها، معمولا پیشینه گستردهای دارن و در حوزههای مختلف دانش دارن. خیلی از متخصصین امنیت و هکرهای خوب، با کارهایی مثل برنامهنویسی، سیستمعامل، شبکه، طراح و موارد مشابه شروع کردن و بعد از چرخیدن در حوزههای مختلف، سراغ امنیت رفتن.
تبدیل شدن به متخصص امنیت مثل اینه که بگین میخواین به یک نویسنده خوب تبدیل بشین. نویسندههای خوب فقط با کلاسهای نویسندگی به وجود نمیان بلکه معمولا آدمهایی هستن که دنیا رو زندگی کردن، کتاب خوندن، سفر رفتن، فیلم دیدن، فلسفه میدونن، به زندگی فکر کردن و بعد نویسندگی رو هم با تمرین یا دوره یاد گرفتن. به همین شکل اگر در این لظحه شما مهارت بخصوصی در رشتههایی مثل شبکه، سیستم عامل، سخت افزار، رمزنگاری، برنامه نویسی سطح پایین، برنامه نویسی سطح بالا، درک ار پروتکلهای ارتباطی، پایگاههای داده و موارد مشابه ندارین، پیشنهاد بهتر از این راه رو برو تا متخصص امنیت بشی اینه که در این حوزهها شروع به کار کن و توشون پیشرفت کن.
مرحله بعدی اینه که با دونستن یا فعال بودن در یکی یا چند تا از این حوزهها، مسائل امنیتی مرتبط رو توشون دنبال کنین. مثلا اگر سیستم عامل بلدین، با دنبال کردن باگها یا خوندن، ببینین مشکلات امنیتی چه چیزهایی می تونن باشن و کجاها میشه پیداشون کرد. اگر در برنامه نویسی سطح پایین هستین اصلاحهایی مثل اورفلو رو دنبال کنین یا اگر برنامهنویس سطح بالا هستین با مفاهیمی مثل اینجکشن آشنا بشین. همین مساله در شبکه و پروتکل و غیره هم ثابته. بسیاری از پروتکلها مشکلاتی دارن که کاملا شناخته شده است و میتونین دنبالشون کنین یا حتی سراغ سخت افزار برین و ببینین بقیه چیکار کردن و تکرارشون کنین تا کم کم راهتون رو پیدا کنین. بسیاری از هکرهای بزرگ تاریخ با همین شیوه پیش رفتن و هر کدوم هم حوزه تخصصی خودشون رو داشتن. در اکثرا موارد کسی با ایده «برم بهترین متخصص امنیت بشم» شروع نکرده بلکه از حوزههای دیگه سراغ مساله اومده.
یکی از مشکلات فعلی دنیای امنیت همینه که افرادی که تخصصی در حوزههای دیگه ندارن و فقط درس امنیت می خونن، به سیستمها اضافه میشن و بیشتر از اونی که کار مفید بکنن، دردسرهای اداری برای بقیه بخشها درست میکنن – البته اونهم الزاما بد نیست ولی معمولا فرستادن چند بخشنامه و سختگیری در مورد پروتکل ها و اصرار به شکل خاصی از وی پی ان و قرارداد خرید وف و آپدیت کردن فایروال ها و … کاری نیست که وقتی یکی با هیجان می گه «می خوام متخصص امنیت بشم» دنبالش باشه.
اما با داشتن بحث قبلی در ذهن، بذارین نگاهی هم بندازیم به انواع شغلهایی که یکه متخصص امنیت می تونه داشته باشه و ببینیم راه رسیدن به هر کدومش چه چیزیه:
🤖 تست کننده امنیت اپلیکیشنهای وب: یاد بگیرین برنامه بنویسین تا توی این بحث از آدمهایی که فقط بلدن اپلیکیشن تست کنن فاصله بگیرین. درک از سیستمعامل و دیتابیس بهتون کمک خواهد کرد و همینطور دونستن چیزهایی مثل پی اچ پی، جاوااسکریپت، پایتون و جاوا. اگر بتونین شیوه کار چیزی رو درک کنین، شکستنش راحتتر خواهد بود. بعد از اون دنبال OWASP بگردین و مسیر رو پیدا خواهید کرد.
🤖 متخصص امنیت شبکه: بهتره برای خودتون یک لابراتوار درست کنین که اجزای متفاوتی داشته باشه. مثلا استک لمپ (لینوکس، آپاچی، مای اسکوئل، پی اچ پی) همیشه شروع خوب و مرسومی است و بعد بررسی کنین که هر جزء از این استک چطوری امن میشه. درک اولیهتون که کامل شد میتونین برین سراغ PTES (استاندارد اجرای پن تست) و شیوههایی که هکرها به شبکهها حمله میکنن رو یادبگیرین و مطمئنا راحت کشف خواهید کرد که علیه هر متد باید چه کاری انجام بشه.
ادامه در مطلب بعدی @jadinet
جادی
چگونه به یک هکر یا متخصص امنیت عالی تبدیل بشم
مفهوم هکر مفهومی عامتر از نفوذ و امنیت است. هکر کسیه که از ابزارش استفاده غیرمرسوم و هوشمندانه می کنه و موفق به چیزهایی می شه که از نظر دیگران نشدنی بوده. اما خیلی از رسانهها، مفهوم هکر رو به عنو…