Программист-фанатик - [66]
Не обращать внимание на меняющиеся условия рынка, значит потерять деньги, которые можно заработать.
То же самое касается и инвестиций в знания. Сейчас Java — оптимальный вариант. А что должно случиться, чтобы ситуация изменилась? И как понять, произойдут ли подобные изменения?
Что делать, если Sun Microsystems неожиданно пойдет под откос? В последние годы лидирующее положение этого монстра пошатнулось, а Java не является открытым стандартом. Хотя сейчас Sun ратует за концепцию открытого кода. В любой момент Sun может превратить собственные язык и виртуальную машину в инструмент получения прибыли. Она может добавить в Java несовместимые изменения и вызвать панику во всей отрасли.
С головой погрузившись в код, ты пропустишь нужный сигнал, и момент будет упущен. Так, казалось бы, важный навык может утратить свою первоначальную ценность на рынке труда. Конечно, это неправдоподобная ситуация, но полностью исключить ее нельзя.
Более вероятно, что, будучи полностью довольным своей работой и своими текущими навыками, ты можешь проморгать приход Следующей Великой Вещи. Десять лет назад ты бы удивился, если бы тебе рассказали, какое место займут объектно-ориентированные языки с механизмом сборки мусора. Но ведь, скорее всего, ты видел определенные знаки. Кто знает, с какой Следующей Великой Вещью мы столкнемся через десять лет?
Наблюдай за самыми крутыми гиками.
Держи глаза и уши открытыми. Следи за новостями отрасли как с позиций бизнеса, так и с чисто технической стороны, пытаясь найти разработки, могущие привести к далеко идущим последствиям. Как говорит Тим О'Рейли[22] из O’Reilly and Associates, присматривайся к самым технически продвинутым работникам. Это те суперэнтузиасты, которые всегда находятся на самых передовых рубежах, по крайней мере в сферах, касающихся их увлечений. Утверждение Тима, справедливость которого мне довелось проверить на практике, состоит в том, что, обнаружив таких людей и понаблюдав за их увлечениями, ты сможешь предугадать, с чем нам придется иметь дело через год или два. Непонятно почему, но это действительно так.
Всегда следует помнить, что в технологическом секторе любая хорошая инвестиция в какой-то момент перестает таковой быть. И если не следить за состоянием рынка, это изменение может стать для тебя большим сюрпризом. Вряд ли это то, к чему ты стремишься.
1. Попробуй в следующем году стать самым крутым гиком. Или по крайней мере подружись с таким человеком.
Совет 49
Этот толстяк в зеркале
К сожалению, у меня есть лишний вес. Это моя давняя проблема. Но когда я жил в Индии, мне удалось сильно похудеть. Отчасти благодаря диете. Отчасти благодаря физическим нагрузкам. Но в основном из-за болезни. После возвращения в Соединенные Штаты я начал набирать вес. Я так расстроился, что записался в тренажерный зал, и вес начал возвращаться в норму.
Я прошел несколько таких циклов. Самое интересное — я не мог отследить моменты набора и сброса веса. Я узнавал об этом, только когда мне кто-то говорил об этом или одежда начинала сидеть по-другому. Моя жена видит меня каждый день, поэтому она тоже не замечала происходящего, а посторонние люди предпочитают не затрагивать темы лишнего веса. А вот в Индии они не стесняются об этом говорить.
Я не могу следить за колебаниями веса, так как вижу себя слишком часто. Когда тебе постоянно что-то показывают, заметить можно только очень быстрые изменения. Если уставиться на цветочный бутон, сколько времени пройдет, прежде чем ты заметишь хоть какое-то изменение? А вот если уйти и вернуться через пару дней, разница сразу бросится в глаза.
С твоей карьерой дела обстоят точно так же. На самом деле ты ее не замечаешь. И это проблема. Можно каждый день смотреться в воображаемое зеркало и не замечать изменений. Кажется, что ты приспособлен к ситуации, как и раньше. Что ты столь же конкурентоспособен, как и раньше. Что твои навыки столько же актуальны, как и раньше.
А затем в один прекрасный день твоя работа (или выбранная тобой отрасль) перестает тебе подходить. В первый момент ты ощущаешь дискомфорт, но критическая точка уже достигнута, поэтому нужно либо действовать быстро, либо купить другую пару штанов (разумеется, в переносном смысле).
В случае колебания веса у нас есть некая шкала, которая позволяет легко оценить уменьшение веса (или увеличение, как в моем случае). Но шкалы для измерения конкурентоспособности или навыков разработчика программного обеспечения не существует. Как было бы легко на ее основе автоматически корректировать размер зарплат. Но ничего подобного не существует, нам придется разрабатывать собственные критерии.
Проще всего выбрать доверенное лицо и поинтересоваться. Наставник или близкий коллега видит тебя со стороны и может дать более объективную оценку твоего положения. Ты можешь обсудить свои способности как разработчика программного обеспечения, руководителя проекта, собеседника, члена группы — словом, рассмотреть любую грань из того набора, который делает тебя тем, кто ты есть. В General Electric практикуется метод 360-градусной оценки, формализующий данную идею и заставляющий работников интересоваться своими показателями у коллег, руководителей и внутренних заказчиков. Несмотря на двусмысленность его названия, это замечательный метод, позволяющий оценить свои рабочие качества с разных сторон.
Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.
Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.
Что общего между самыми востребованными профессиями и стремительным увеличением количества информации в мире? Ответ: язык структурированных запросов (SQL). SQL — рабочая лошадка среди языков программирования, основа основ для современного анализа и управления данными. Книга «SQL: быстрое погружение» идеальна для всех, кто ищет новые перспективы карьерного роста; для разработчиков, которые хотят расширить свои навыки и знания в программировании; для любого человека, даже без опыта, кто хочет воспользоваться возможностями будущего, в котором будут править данные.
Даже плохой программный код может работать. Однако если код не является «чистым», это всегда будет мешать развитию проекта и компании-разработчика, отнимая значительные ресурсы на его поддержку и «укрощение». Эта книга посвящена хорошему программированию. Она полна реальных примеров кода. Мы будем рассматривать код с различных направлений: сверху вниз, снизу вверх и даже изнутри. Прочитав книгу, вы узнаете много нового о коде. Более того, вы научитесь отличать хороший код от плохого. Вы узнаете, как писать хороший код и как преобразовать плохой код в хороший. Книга состоит из трех частей.
Книга "Изучаем Python" - это ускоренный курс, который позволит вам сэкономить время и сразу начать писать работоспособные программы (игры, визуализации данных, веб-приложения и многое другое). Хотите стать программистом? В первой части книги вам предстоит узнать о базовых принципах программирования, познакомиться со списками, словарями, классами и циклами, вы научитесь создавать программы и тестировать код. Во второй части книги вы начнете использовать знания на практике, работая над тремя крупными проектами: создадите собственную "стрелялку" с нарастающей сложностью уровней, займетесь работой с большими наборами данных и освоите их визуализацию, и, наконец, создадите полноценное веб-приложение на базе Django, гарантирующее конфиденциальность пользовательской информации. Если вы решились разобраться в том что такое программирование, не нужно ждать.
Алгоритмы - это всего лишь пошаговые алгоритмы решения задач, и большинство таких задач уже были кем-то решены, протестированы и проверены. Можно, конечно, погрузится в глубокую философию гениального Кнута, изучить многостраничные фолианты с доказательствами и обоснованиями, но хотите ли вы тратить на это свое время? Откройте великолепно иллюстрированную книгу и вы сразу поймете, что алгоритмы - это просто. А грокать алгоритмы - это веселое и увлекательное занятие.