пятница, 28 августа 2015 г.

Шесть вещей которые должен знать разработчик что бы остаться на плаву.



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

1. Защищайте ваш интерес.

Вы стали разработчиком по какой то причине. Вы хороши потому что вам это нравится – или по крайней мере нравилось. Если вы хотите быть хорошим разработчиком, вы должны поддерживать иои восстановить интерес к своей работе. Это значит, разработать какую-нибудь игру “просто так”, или запрограммировать тостер для Raspberry Pi II.
И здесь дело не в том, что бы ради шутки что то напрограммировать, а просто для того что бы получить удовольствие.  Лучшими разработчиками являются те, у кого есть стратьс к своей работе.Если у вас она есть, сохрание ее, Если вы ее потеряли – найдите.

2. Интернет это не причуда и не программирование клиентской части.

Реальностью является то, что JavaScript распространился как вирус и теперь используется практически в каждом приложении. Сегодняшние и завтрашние разработчики уже никогда не будут имет такой роскоши числится разработчиками Бэк-енда или Мидл-енда. Все будут втягиваться в водоворот Фронт-енда и поэтому должны понимать HTML, CSS и JavaScript.
Если же вам удалось спрятаться в пещере и избежать знаний о том как можно создавать прекрасные страницы на HTML, CSS и JavaScript, то сегодня наступило время для того что бы посвятить себя во что нибудь новое. Сейчас в моде одностраничные приложения. Их красотой являются REST-сервисы, которые позволяют создавать впечатляющие коллажи данных из нескольких источников на одной странице, которую нетрудно сделать.
Как это будет выглядеть, если взять общедоступные данные и соединить их с другими данными и отобразить результат? Поможет ли это вам понять , что большая часть тяжелой работы для пользовательских интерфейсов уже была сделана для вас?

3. Устройства – зло: отвечайте отзывчиво

Раньше все проектировалось для устройств одного форм фактора, которым являлся PC. Мы точно знали разрешение, которе будет использоваться пользователями, потому что они почти всегда использовали 800х600. Наши всплывающие диалоги не изменяли размеры и были страндартного серого цвета. Сегодня мы сталкиваемся с огромным разнообразием утсройств, от умных часов до систем с несколькими мониторами. Планшеты – новый класс устройств, который также требует иного подхода к проектированию. Каждый разработчик должен научиться думать и проектировать, с учетом того что приложение будет использоваться на различных устройствах.
Принцип отзывчивого дизайна – проектирование приложение в виде плавающих блоков с содержимым – позволяет приложению выглядеть хорошо как на декстопе, так и на планшетах, телефонах и даже часах. Поэтому делайте приложения, которые работают одинаково хорошо на любом устройстве, которые у вас есть.

4. Возитесь с интернетом

Раньше считалось что embedded-разработка это что то для дядек, которые пишут на Ассемблере и С, и используют тайные правила разработки в runtime. Однако появление новых платформ, с улучшенным взаимодействием и мощных компьютеров в компактных корпусах сделали возможным для разработчиков создание инструментов для автоматизации домашних задач, мониторинга, развлечений и прочего. Повозившись со всеми этими решениями у себя дома, вы получите практический опыт, который может оказаться полезным для вашего работодателя и коммерческих компаний.
Это тот же опыт, который уже есть у производителей, позволяющий создавать интеллектуальные решения и улучшать эффективность оборудования, которое у них имеется. Это те же навыки, которые позволяют создавать решения для управления устройствами на основании данных которые у нас есть – например автоматическое закрытие окон при надвижении бури. Много ли ваших коллег смогло бы оченить это?

5. Тренируйтесь

Мир технологий развивается стремительно, но доступные тренинги также становятся лучше. Ниже представлено несколько бесплатных ресурсов, которые позволят улучшить ваши знания новых технологий. От девятого канала (http://ch9.msdn.com) до виртуальной акадении Microsoft (http://www.MicrosoftVirtualAcademy.com) и других бесплатных ресурсов с платными услугами типа PluralSight, Udemy и Lynda.com, вам не нужно здать занятий, что бы выучить что то новое. Вы можете получать знания от экспертов прямо с вашего работчего места дома или в оффисе. Предложения от PluralSight и Linda.com позволят вам получить доступ к всеобъемлющему контенту за ежемесячную или ежегодную плату.
Испытайте себя, что бы узнать что то новое на одном из бесплатных ресурсов, идет ли речь о сетях TCP/IP или F# - всегда есть что то что бы вы могли узнать лучше и эти знания ждут вас.

6. Не расстраивайтесь из-за неудач.

Как разработчики, мы иногда забываем, что мы эксперты в неудачах. Со времен первого приложения Hello World, перед тем как добится успеха в чем то, мы постоянно ошибались. Ошибки – это не случайности, это наш жизненный путь. Мы научились работать над чем-то, до тех пор пока не добьемся желаемого. В современном мире стало еще более важно пробовать новые вещи и развивать наше мышление. Это может быть изучение нового языка или платформы. Это может быть создание приложения облака тегов для сообщений Facebook. Целью является не то что мы делаем, а то, что мы пробуем новое, с возможностью потерпеть неудачу.

Соберем все вместе

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