Кодирование для веб-разработки

Крис Маврикос

Я Крис, инженер-программист и основатель SevenSpark, студии веб-разработки, специализирующейся на области плагинов WordPress.

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

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

Мой бизнес использует код практически во всех аспектах.

Мой бизнес использует код практически во всех аспектах. Сами продукты (плагины WordPress), конечно же, представляют собой программное обеспечение: по сути, инструменты, которые позволяют не разработчикам настраивать и администрировать расширенные веб-функции через удобный интерфейс. Наш флагманский продукт - UberMenu, плагин для создания мега-меню с богатым содержанием.

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

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

Несомненно, это захватывающее время для начинающих технических предпринимателей, но изучение информатики важно не только для тех, кто хочет работать в технических областях. Чтобы констатировать очевидное, мир становится все более и более управляемым технологиями, и теперь связи выходят за пределы виртуального мира во все аспекты нашей повседневной жизни; программное обеспечение больше не является чем-то, с чем мы взаимодействуем исключительно за нашими рабочими столами или созданным только «техническими» компаниями. От заказа такси до отслеживания наших целей в фитнесе и добавления яичных рулетов в заказы на вынос - все больше и больше наших опытов инициируется через наши подключенные мобильные устройства или другие цифровые интерфейсы - и все это осуществляется с помощью кода.

«Техническая смекалка» имеет фундаментальное значение в мире, где эта технология широко распространена.

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

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

Чтобы критически относиться к технологиям, нам нужно их понимать. А это означает изучение и более глубокое понимание того, как работают компьютеры, код и Интернет.

Чтобы критически относиться к технологиям, нам нужно их понимать. А это означает изучение и более глубокое понимание того, как работают компьютеры, код и Интернет. С этой целью я считаю жизненно важным, чтобы это поколение студентов получило надлежащее образование по этим предметам.

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

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

Какие инструменты и языки я использую?

Хотя, как и большинство разработчиков, я пробовал работать с множеством разных языков и инструментов, в основном я использую в своей работе следующие инструменты:

  • JavaScript (ES6, React, jQuery), CSS, HTML
  • PHP
  • SQL
  • Git - для контроля версий
  • Grunt - для автоматизации повторяющихся задач кода
  • Slack - для командного общения
  • Вещи 3 - для личных проектов и списков дел
  • Trello - для управления проектами
  • HelpScout - для поддержки клиентов

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