Как я стал старшим разработчиком Javascript

[
Go to the profile of Camilo Montoya

](

Камило МонтойяЗаблокированоUnblockFollowFollowing

16 октября 2017 г.

Я хотел быть физиком но по какой-то причине программирование пришло в мою жизнь и изменило ее в один из самых тяжелых для меня моментов.

Преподаватель из школы физики рассказал мне о работе по созданию кинематических симуляций в Java-апплетах и ​​попросил пройти его курс по основам программирования на Java. Я открыл для себя большой новый мир, и мне это удалось.

Это было время, когда я решил быть экономически независимым, я открыл бар с моим лучшим другом, у нас все было хорошо, и это был успешный бизнес для такого неопытного парня, как я. Мой отец был против этой идеи, и мы долго спорили, «это не та жизнь, которую я хочу для своего сына», — сказал он. Я решил переехать из родительского дома. В то время я знал любовь всей своей жизни и попросил ее переехать и начать наш дом.

Наша экономика была не очень хорошей, ситуация с барами была не очень хорошей, и у нас начались проблемы с нашими доходами. Я понял, что физика недостаточно хороша для жизни в Колумбии, и бросил университет, также возникла проблема, что я не могу работать в физической школе программистом.

Это плохое время заставило меня браться за работу, которая мне не нравилась, я работала в колл-центрах и была очень недовольна этой работой. Моя девушка всегда поддерживала меня, я не знаю, что делать, если бы я не был с ней. Она усердно работала, пока я пытался понять, что делать со своей жизнью.

Я решил начать несколько курсов по программированию в малоизвестных институтах, выучил Visual Basic и полюбил программирование.

Было очень трудно найти работу в области программирования, потому что я был очень неопытен, а здесь, в Колумбии, если у тебя нет университетского диплома, ты никто.

У нас с отцом снова завязались хорошие отношения, и он помог мне профинансировать мой первый семестр системной инженерии (эквивалент информатики).

Я всегда был человеком, который пытается постоянно двигаться вперед. Я начал искать свою первую официальную работу программиста. Все колумбийские компании отказали мне, потому что у меня не было диплома. Для них (владельцев и менеджеров колумбийских компаний) ты можешь быть худшим программистом, но если у тебя есть диплом инженера, то этого достаточно. Я не уволился, чтобы начать заниматься программированием, и безработным понадобилось около года. В то время моя девушка все еще поддерживала меня, она лучший человек в моей жизни (мы все еще вместе после 13 лет отношений, и это человек, которого я люблю больше всего). Я впал в депрессию, и она меня не подвела. Она всегда говорила мне набраться терпения, и однажды эта работа постучит в нашу дверь.

Наконец-то я получил эту работу.

После года поиска работы программистом я начал работать в курьерской компании, их система была построена на fox pro (не визуальный fox pro, fox pro с синим экраном, если вам столько же лет, сколько и мне, вы можете это помнить). Мне приходилось администрировать базы данных и вручную переносить базы данных с dbf на sql-сервер.

Я подумал, что если я не изменю эту старую программу Fox Pro, то, наверное, сойду с ума. Потому что эта система была очень медленной. Я попросил своего босса на неполный рабочий день начать миграцию этой системы на php mysql, но он не был дальновидным человеком и попросил меня не делать этого.

Я запустил новую курьерскую систему самостоятельно и попросил небольшую компанию проверить, настолько ли она хороша, что эта компания ее купила. Затем прошло пару месяцев, и я показал своему боссу эту систему и то, как она работает в небольшой компании, также я автоматизировал множество процессов, которые мне приходилось выполнять вручную, и показал ему, что я повысил свою производительность на 400%. Он был поражен и разрешил мне внедрить его в компании.

Моя первая неудача.

После нескольких месяцев разработки основной системы новой компании она наконец была готова к запуску в производство, я провел много испытаний. Но впервые я столкнулся с параллелизмом. PHP нужно было перезагружать всю страницу каждый раз, когда вы отправляете запрос, поэтому это было медленным для операторов сканеров штрих-кода. Я знал, что это не сработает, люди начали раздражаться, потому что моя новая система, которую я обещал, будет лучше, была слишком медленной.


взято из

Javascript спас мою работу.

Я провел много исследований о том, как я могу ускорить свою систему, и после нескольких дней исследований я нашел много ответов в веб-форумы . У некоторых людей была такая же проблема, и они начали говорить о АЯКС. Я думал, что это язык программирования, но это была комбинация javascript на стороне интерфейса и любого языка, который вы использовали на стороне сервера, а также некоторые другие методы программирования. Я понял, что мне не нужно менять php на другую технологию, также я начал понимать, что такое frontend-программирование и backend-программирование.

Чтобы начать внедрять AJAX в свою систему, мне пришлось изучить Javascript, и я понял, что перезагрузка всей страницы для отправки http-запросов на сервер неэффективна. Мне не нравятся неэффективные системы, я действительно люблю улучшать реакцию систем на запросы, поэтому я заметил, что javascript и ajax — это правильный путь.

Я улучшил все ответы моей системы на запросы, и люди начали получать удовольствие от использования моей системы. когда ситуация стабилизировалась, я начал задавать вопросы людям из всех отделов внутри компании и помогать им в их процессах и повышать продуктивность их работы. Наши клиенты заметили, что мы улучшили нашу производительность. Мой проект полностью удался.

На несколько шагов впереди других коллег в моей стране.

Лучшее, что может случиться с вами в мире программирования, — это проблемы, которые вы никогда не решали в прошлом. Изучение Javascript и AJAX сделало меня программистом, который был на пару шагов впереди своих коллег, в то время как некоторые из моих коллег знали только, как заставить PHP выплевывать html и загружать всю страницу на каждый запрос, я создавал одностраничные приложения, не подозревая об этом. Я также начал узнавать все больше и больше о различиях между бэкендом и фронтендом, мои коллеги по работе не знали об этих двух терминах, почти все программисты, которых я знал в то время, работали на Java, C#, ASP и PHP, а колумбийцы раньше было лень узнавать новое, поэтому, заметив грядущие технологии, я заметил разницу между моими коллегами и мной. Я понял это, когда Everis нанял меня в качестве разработчика Sencha-ExtJs, даже не зная этого фреймворка (я был честен с ними и сказал, что не работал с ним в прошлом), но, несмотря на это, они наняли меня, потому что искали javascript разработчика в течение 6 месяцев без, по крайней мере, одного результата.

Jquery упростил мою работу

Когда я познакомился с jquery и понял, что xmlHttpRequest можно выполнить одной строкой кода, это стало самой большой новостью в моей карьере. Выполнение одностраничных приложений с JQuery было быстрее, чем с Vanilla Javascript, запрос AJAX сократился с 30 строк до одной или двух, фантастика!

Кроме того, добавление анимации в пользовательский интерфейс моих приложений сделало мою работу более привлекательной для моих работодателей.

Я думал, что я мастер javascript.

Вы не знаете JS

Знание jquery не означает, что вы знаете Javascript, если вы, мой дорогой читатель, любите разработку интерфейса и думаете, что вы мастер javascript, потому что вы можете создавать действительно хороший пользовательский интерфейс со всеми этими анимациями, позвольте мне сказать вам, что вы ошибаетесь . Было время, когда я считал себя мастером javascript, потому что у меня была возможность создавать действительно классные вещи с помощью Jquery. Но печальная реальность заключалась в том, что я ничего не знал о javascript.

Поэтому, когда вы пришли из мира программирования, в котором существуют только PHP, Java и ASP, и не знаете разницы между интерфейсом и сервером, javascript — это уродливая девушка в городе. Так что знания jquery для создания нескольких поведений пользовательского интерфейса более чем достаточно. Но потом вы поняли, что jquery — это всего лишь библиотека с множеством готовых функций, и вы не можете разрабатывать вещи, которых нет в Jquery из коробки, вы заметили, что не знаете javascript.

МедельинJS

Я знал, что я не лучший разработчик javascript, и я никогда не претендовал на звание лучшего. Я начал исследовать в Интернете документацию, учебные пособия и сообщения по Javascript.

Это было примерно в 2012 году, и было много повторяющейся информации об экосистеме javascript, кроме того, вы находитесь в среде, где все ненавидят javascript, и многие люди не знают разницы между бэкэндом и интерфейсом. Так что грустно, что, возможно, вы ошибаетесь в том, что, по вашему мнению, произойдет в веб-разработке, и некоторые фреймворки PHP вышли, чтобы убить ванильный PHP, и люди и компании начинают использовать их и создавать вещи быстрее, я знал, что это не так. Плохо, но они все еще перезагружали всю страницу на запрос к серверу. Поэтому я попытался найти людей в моем городе, которые разрабатывали javascript, и этот поиск не дал хороших результатов, все мои коллеги говорили мне: «Эй, мужик, изучай x php framework, потому что javascript недостаточно хорош для строить вещи быстро. Но я не заботился о том, чтобы создавать вещи быстрее, меня заботила производительность веб-приложений.

Я нашел информацию о баркэмпе, мероприятии, где некоторые программисты и не программисты рассказывают о том, что происходит в технологиях. Я пошел на это мероприятие и принял участие в разговоре об angularJS, я не помню имени докладчика, но этот человек показал, как строить вещи в angular, и я влюбился в него. Пару дней спустя я начал исследовать Angular и начал его изучать. Затем в ходе своих исследований я наткнулся на meetup.com и понял, что здесь, в Медельине, моем городе, существует сообщество javascript. Название этого сообщества МедельинJS, его основали ребята, которые любили Javascript. Я начал участвовать во всех дискуссиях в этом сообществе, и это очень помогло мне узнать об экосистеме javascript.

МедельинJS в настоящее время является крупнейшим сообществом разработчиков программного обеспечения в Медельине, и я многим обязан его организаторам тем, что знаю сегодня.

Что, черт возьми, такое NodeJS

Один из моих карьерных наставников (он этого не знает) Джулиан Дюк, не только его знания, но и его страсть делиться ими, это одна из вещей, которая вдохновила меня не только стать лучшим разработчиком, но и стать лучшим человеком.

Хулиан — основатель MedellínJs, и на одном из организованных ими мероприятий он говорил о NodeJS. Я вспомнил, как он сказал, что nodeJS — это Javascript на стороне сервера, и я подумал: черт возьми, как это возможно?

Я начал свое исследование (да, снова) о nodeJS и начал его изучать. Если вы разработчик программного обеспечения и не любите исследовать и узнавать что-то новое, возможно, это не для вас. NodeJS делает javascript настоящим языком программирования с полным стеком, между программированием Javascript на бэкэнде в NodeJS и программированием javascript во внешнем интерфейсе есть небольшие различия, так что здесь хорошо то, что вам не нужно изучать другие языки программирования, чтобы выполнять оба бэкэнда. и интерфейс.

Фреймворки и библиотеки Javascript

Если вы хотите быть разработчиком Javascript, фреймворки и библиотеки не обязательны, но если вы не используете их, вам, вероятно, придется создавать много вещей с нуля, и за пределами нашего пузыря есть много программистов лучше, чем вы. или я, который разработал множество программных решений и нашел в них что-то общее, поэтому они начали создавать эти общие функции и объединять их в нечто, называемое библиотекой или фреймворком.

Библиотека — это множество готовых методов и вещей, которые помогут вам решить довольно распространенные варианты использования.

Фреймворк — это множество вариантов использования и практик, объединенных в шаблонную кодовую базу, которая помогает вам управлять кодом с помощью лучших практик, которые создатели фреймворка знают после того, как какое-то время занимались программированием.

Вы можете использовать их или нет, но в настоящее время вам не нужно снова «изобретать велосипед».

Во фронтенде рекомендую изучать ReactJS и VueJs.

В бэкенде рекомендую изучить ExpressJS, SailsJS.

Вывод

В настоящее время я старший (старший разработчик означает для меня, что у вас большой опыт, но вы не всемогущий или всезнайка) разработчик javascript, или, по крайней мере, я так думаю. Я не пытаюсь убедить вас начать карьеру в разработке программного обеспечения, а также не говорю, что javascript — лучший инструмент для разработки программного обеспечения. Я пытаюсь показать вам, что если вы приложите усилия, вы сможете делать то, что хотите, и я хочу, чтобы вы проводили исследования, много исследований, искали то, что вам нравится, и если вы не знаете, какие вещи вам нравится еще, продолжайте задаваться вопросом, исследовать и пробовать. Спасибо, что прочитали это.

Меня зовут Камило Монтойя Я живу в Колумбии, и разработка программного обеспечения — это моя страсть и моя профессия. Я также являюсь старшим разработчиком Javascript и внештатным консультантом, в настоящее время работаю с РеактJS а также микросервисы nodeJS тоже сейчас учусь VueJS . Иногда я создаю музыку в свободное время и наслаждаюсь временем, проведенным с любимой женой. Если вы хотите связаться со мной, я в связанный или в твиттере как @camilomontoyau

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *