Nishu Goel یک مهندس وب مشهور از هند، متخصص توسعه دهنده Google برای Angular و فناوری های وب است. او در مورد مشارکت خود در جامعه، برنامه های شغلی و بهترین راه های یادگیری توسعه وب به ما گفت.
Nishu Goel یک مهندس وب مشهور از هند، متخصص توسعه دهنده Google برای Angular و فناوری های وب، با ارزش ترین حرفه ای مایکروسافت است. او نویسنده گام به گام Angular Routing (BPB، 2019) و راهنمای عملی برای Angular (آموزشی، 2021) و همچنین نویسنده فصل جاوا اسکریپت Web Almanac 2021 است. نیشو در حال حاضر در epilot GmbH به عنوان یک مهندس فول استک کار می کند. او در مورد مشارکت خود در جامعه، برنامه های شغلی و بهترین راه های یادگیری توسعه وب به ما گفت.
مونیکا : بیایید با داستان شما شروع کنیم. چه چیزی الهام بخش شما برای تبدیل شدن به یک توسعه دهنده و ایفای نقش فعال در جوامع توسعه دهنده بود؟
نیشو : من لیسانس خود را در رشته علوم کامپیوتر گرفتم، ساختارهای داده را مطالعه کردیم و از آنجا بود که علاقه به برنامه نویسی شروع شد. در طول سال سوم مهندسی، از طریق شرکت من در مسابقه ملی مایکروسافت Imagine Cup که در آن راه حل هایی را از طریق کد ارائه کردیم، با جامعه توسعه دهندگان ارتباط برقرار شد. ایده اپلیکیشنی که ساختیم این بود که فرصت های آموزشی را برای دانش آموزان محلی، به ویژه دختران، فراهم کند. در این سفر با افراد بسیار الهامبخش، هم شرکتکنندگان و هم برگزارکنندگان آشنا شدم.
در سال 2018، حرفه حرفه ای من شروع به کار کرد و با Angular شروع به کار کردم. Angular به فناوری اولیه ای تبدیل شد که من را به برنامه GDE متصل کرد. تقریباً در همان زمان، شروع به نوشتن پست های وبلاگ و ایجاد محتوا در مورد موضوعی کردم که روی آن کار می کردم و یاد می گرفتم. Dhananjay Kumar به من کمک کرد تا این سفر را شروع کنم و مطمئن شد که من را در مسیر نگه می دارد. اولین مقالات من به اصول Angular پرداختند. بلافاصله پس از شروع به سخنرانی در رویدادها - اولین رویداد ngNepal، کنفرانس زاویه ای نپال بود. این منجر به دعوتنامههای بیشتر درباره Angular و فناوریهای وب شد.
مونیکا : تجربه حرفه ای شما از نظر فناوری چیست؟
Nishu : همه چیز در مورد Angular و اجزای وب برای دو سال اول بود. من از Angular برای ساخت وب استفاده می کردم، اما به زودی تصمیم گرفتم از آن فراتر رفته و زمینه های دیگر را کشف کنم. نمیخواستم خودم را محدود کنم در صورتی که مجبور به تغییر پروژهها شوم. اینگونه بود که من شروع به ایجاد کامپوننت های وب در Angular برای استفاده در سایر فریمورک ها کردم.
اولین کاری که انجام دادم ایجاد کامپوننت های وب با استفاده از Angular بود. من آن را در npm منتشر کردم و از آن به عنوان دمو در یک پروژه React استفاده کردم. من بعداً در طی برخی از صحبتها و ارائههایم در این مورد بحث کردهام. کار بعدی من نیاز به استفاده از React و Typescript دارد. حالا، چون با React کار می کردم، دیگر فقط از یک فریم ورک استفاده نمی کردم، بلکه از وب به طور کلی استفاده می کردم. در آن لحظه چیزهای زیادی در مورد وب، به ویژه عملکرد وب، یاد گرفتم. این زمانی بود که مجبور شدم به بزرگترین رنگ محتوایی (LCP) یا First Contentful Paint (FCP) فکر کنم، به این معنی که برنامه شما چقدر زمان می برد تا بارگیری شود یا حداکثر زمان برای ارائه صفحه چقدر خواهد بود. من برای انتخاب بهترین شیوه ها و بهبود عملکرد برنامه ها کار کرده ام.
به دلیل این علاقه به عملکرد وب، در وب سالنامه شرکت کردم و فصل جاوا اسکریپت را نوشتم. وب سالنامه یک گزارش سالانه در مورد وضعیت وب به طور کلی است - به ما می گوید که مردم چگونه از ویژگی های مختلف استفاده می کنند. سال گذشته 8.6 میلیون وب سایت غربالگری شدند، داده ها تجزیه و تحلیل و در گزارش ارائه شد. این گزارش شامل آماری مانند استفاده از async
و ویژگیهای defer
در عنصر <script>
است. چه تعداد از وبسایتها به درستی از آنها استفاده میکنند، چه تعداد از آنها اصلاً استفاده نمیکنند، و چه تعداد از آنها در مقایسه با سال 2020 بهبود یافتهاند. آخرین گزارش Web Almanac نشان میدهد که حدود 35 درصد از وبسایتها از دو ویژگی در یک اسکریپت استفاده میکنند که یک ضد بود. -الگو، کاهش عملکرد. سال گذشته به این موضوع اشاره شد و امسال هم سعی کردیم ببینیم وضعیت بهتر شده است یا خیر. من همچنین در ngConf و Reliable Dev Summit صحبت کردم، جایی که روی عملکرد وب تمرکز کردم.
مونیکا : شما همچنین به شدت درگیر کمک به جامعه هستید. اخیراً شما با یک سازمان غیردولتی اوگاندا YIYA داوطلب شده اید - چگونه شروع شد و هدف اصلی آن همکاری چه بود؟
نیشو : با اطلاع تیم GDE در مورد فرصت داوطلبانه با YIYA شروع شد. سازمان غیردولتی اوگاندا به دنبال مهندسانی بود که در زمینه تهیه محتوا یا ویژگی های فنی به آنها کمک کنند. این برنامه با هدف توانمندسازی کودکان مدرسهای در اوگاندا و ارائه فرصتهای آموزشی به آنها با استفاده از فناوریهای موجود در سطح محلی - نه رایانهها یا کتابهای درسی، بلکه تلفنهای صفحهکلیدی و رادیوهای ابتدایی- انجام میشود. بچه ها یک شماره مشخص را شماره گیری می کردند و مجموعه ای از اطلاعات را دریافت می کردند، برای اطلاعات بیشتر با شماره دیگری تماس می گرفتند و غیره. در طول همه گیری حتی مفیدتر شد.
از آنجایی که من همیشه با جامعه و اهداف توسعه پایدار درگیر بوده ام، تصمیم گرفتم به این هدف برسم. پس از جلسهای با تیم YIYA، من در مورد اسکریپتهای پایتون یا هر اشکالی که آنها بهوجود میآوردند، یا هر مشکلی در پورتال پیشنهاد کردم. مدت کوتاهی با هم کار کردیم.
مونیکا : برای سال 2022 چه برنامه ای دارید؟ آیا چیزی وجود دارد که به طور خاص روی آن تمرکز کنید؟
نیشو : من شغلم را عوض می کنم و به کشور دیگری نقل مکان می کنم. من به طور کلی بر روی وب کار خواهم کرد، عملکرد سایت را بهبود می بخشم، و همچنین با استفاده از Golang در قسمت پشتیبان کار خواهم کرد. من به صفر کردن حوزه عملکرد وب ادامه می دهم زیرا بسیار جالب و پیچیده است و چیزهای زیادی برای درک و بهینه سازی وجود دارد. حتی در حال حاضر، پس از اختصاص زمان زیادی به آن، هنوز چیزهای زیادی برای یادگیری وجود دارد. برای مثال، من دوست دارم بدانم که چگونه استفاده از CDN برای منابع تصویری به من کمک میکند تا برنامهام را حتی سریعتر کنم. من می خواهم به متخصص عملکرد وب تبدیل شوم - به تدریج به آنجا می رسم، دوست دارم باور کنم :)
مونیکا : به شروع نوشتن در زمانی اشاره کردید که متخصص نبودید، فقط داشتید چیزهایی را می نوشتید که یاد می گرفتید. توصیه شما به توسعه دهندگان جدید چیست و احساس می کنند چیزی برای اشتراک گذاری ندارند؟
نیشو : وقتی شروع به نوشتن کردم دقیقاً همین احساس را داشتم. فکر کردم شاید نباید این را خاموش کنم؟ شاید فقط اشتباه است؟ نگران بودم که نوشته ام به خوانندگان کمکی نکند. اما مهم این بود که نوشته هایم به من کمک می کرد. بعد از مدتی چیزها را فراموش می کردم و بعد به چیزی که قبلاً نوشتم برمی گشتم. نوشتن چیزها ایده خوبی است.
بنابراین من به همه پیشنهاد می کنم - فقط بنویسند، در هر مرحله. حتی اگر فقط یک قسمت از دوره ای را که می گذرانید به پایان رسانده باشید، با نوشتن آن در حال یادگیری هستید. بخشی از اطلاعاتی که در مقطعی با آن آشنا شدید ممکن است برای دیگرانی که هنوز آن را نمی دانند مفید باشد. لازم نیست متخصص باشید نوشتن به شما کمک خواهد کرد. و هر کسی، در هر مرحله از حرفه خود.
مونیکا : بهتر است افرادی را دنبال کنید که به تازگی چیزی یاد گرفته اند، زیرا آنها همه چیزهایی را که باید بفهمند می دانند. زمانی که شما یک متخصص هستید، سخت است که به یاد بیاورید زمانی که جدید بودید چه حالی داشتید. و توصیه ای برای کسی که تازه وارد توسعه وب شده است؟
نیشو : بسیاری از مردم می پرسند که چه چارچوبی را هنگام شروع کار باید انتخاب کنند، اما من فکر می کنم این سوال درستی نیست. هر آنچه در هر مقطعی یاد می گیریم باید در مرحله بعد نیز مفید باشد. من به هر کسی توصیه می کنم که محدودیت ها را کنار بگذارد و با HTML یا جاوا اسکریپت شروع کند - که در آینده سودآور خواهد بود.
و سپس از هر فرصتی که برایتان پیش می آید استفاده کنید. این اتفاق زمانی برای من افتاد که به طور تصادفی به اطلاعاتی در مورد وب سالنامه که به دنبال نویسندگان می گشتم، رسیدم. من فقط فکر کردم، "اوه، این جالب است، این ممکن است به همه در عملکرد کارها کمک کند". اینگونه بود که من به عنوان یک منبع محتوا برای فصل جاوا اسکریپت تبدیل شدم و شش ماه را صرف نوشتن آن کرده ام. بنابراین من فکر میکنم که این فقط به خاطر گرفتن فرصتها و تلاش سخت است.
مونیکا : آیا در مورد آینده فناوری وب به طور کلی پیش بینی یا ایده ای دارید؟ موضوع داغ بعدی چه خواهد بود؟ چه چیزی قرار است به سرعت رشد کند؟
Nishu : من عاشق این واقعیت هستم که اکنون می توانیم سرورها را در مرورگرها اجرا کنیم، این یک پیشرفت عالی است. به عنوان مثال، اخیراً اجرای Node.js از مرورگر معرفی شده است، در حالی که در گذشته بدون نصب Node.js در سیستم خود نمی توانستیم چیزی را اجرا کنیم. اکنون می توانیم هر کاری را از مرورگر انجام دهیم. این یک قدم بزرگتر در اکوسیستم وب است. و OMT - خارج از موضوع اصلی. کار بر روی موضوعات نیز بسیار بهبود خواهد یافت. Web Assembly در حال پیشرفت است و به توسعه دهندگان این امکان را می دهد که این کار را انجام دهند و من فکر می کنم این آینده اکوسیستم وب است.