Предисловие.
Блуждая в интернетах и натыкаясь на вопросы типа: “Мне уже за (можете подставить любое число, но не поверите, я встречал даже 26!!!) не поздно ли изучать Java?” я хотел кричать:
- “Друг! Если ты еще можешь попадать пальцами по клавиатуре, тебе не поздно!”.
Я первый раз увидел компьютер в 22 года и мне даже дали на нем попечатать! Не могу Вам описать свои ощущения, когда я сидел около этого светящегося и шелестящего вентилятором чуда. У меня закипала кровь, я точно знал, что был рожден для ИТ, но жизнь распорядилась по-другому.
Теперь, когда я почти реализовал свою мечту и люди стали спрашивать меня, как правильно это делать я понял, что каждому не ответить, - нужно слишком много времени. Я решил, что напишу книгу, в которой постараюсь ответить на все вопросы людей, желающих стать разработчиками (программистами), а особенно на языке Java – на котором я пишу сам.
Я хотел назвать эту книгу “Java для тех, кому за...”, в общем вроде как не для молодых. И задумался: молодость - это когда тебе еще не “за...” сколько? Ответ пришел сам собой: эти “за” мы себе устанавливаем сами, а объективно их нет: есть только СЕЙЧАС! Вот и ответьте себе сами: “Не поздно учить JAVA сейчас?” Не поздно сейчас? Риторический вопрос, правда? И ответ понятный. Эту книгу я писал, представляя тебя (прости за фамильярность, дорогой читатель), как самого себя: человека средних лет, пользующегося компьютером для составления документов и отчетов и периодически испытывающего проблемы с составлением таблиц в Exсel. Поэтому, возможно, где-то описания слишком подробные, через-чур утомительные. Тех, кто лучше владеет компьютером прошу набраться терпения и пролистывать такие слишком подробные описания.
Глава 1. Что нужно чтобы стать программистом.
Здравствуйте!
Меня зовут Алексей, мне 44 года и уже год я работаю программистом. Эту книгу я решил написать, чтобы помочь людям, которые хотят стать программистами, но не знают с чего начать или уже изучают Java, но не знают куда двигаться. Эта книга своего рода ментор - она будет Вас направлять в процессе обучения вплоть до Вашего первого трудоустройства.
Самая большая проблема человека начинающего любую деятельность в отсутствии опыта. Конечно, это быстро и эффективно решается если есть наставник. Но не просто наставник, а человек разбирающийся в предмете и умеющий структурировать и приоритизировать информацию.
Таких людей не много и обычно они очень заняты и хотят достаточно ощутимую оплату за свое потраченное время. Когда я изучал язык программирования Java у меня такого ментора не было. Мне пришлось пройти путь в одиночестве и помогли мне тут 2 фактора:
1. У меня был 15-летний опыт планирования, благодаря которому я умею быстро отделять главное от второстепенного.
2. У меня был 9 летний опыт системного администрирования. Это конечно никак не связано с программированием, но иногда дает представление о том в какой стороне проблема, если программа, например, не может получить данные из базы. Если у Вас нет опыта администрирования - не переживайте. Большинство программистов его не имеют.
Далее я опишу как я стал программистом. Возможно, кому-то это будет не интересно или покажется затянутым, но привожу все это здесь исключительно для того, чтобы Вы могли убедиться в двух вещах:
1. Мечты сбываются если не бояться мечтать и двигаться к мечте.
2. Все, что я советую в этой книге, я проделал сам. А как говорится: только тот, кто помог себе - знает, как помочь другим.
1.1 Как я стал программистом.
Мой путь к программированию был очень длинным - я с детства мечтал стать программистом, но из-за проблем с математикой в школе мне говорили, что это невозможно. И я стал юристом.
Однако меня всегда тянуло к ИТ. В 1998 году я не мог себе позволить купить компьютер и купив жесткий диск вечером после работы подключил его к рабочему ПК, установил Linux Mandrake 8.0 - это была первая ОС за исключением DOS и Windows 95, что я увидел. Непередаваемый восторг!
Через пару лет я купил собственный компьютер и установил на него несколько операционных систем. В свободное время я изучал операционные системы Linux и Unix, так как установленная на всех ПК операционная система для домохозяек вызывала у меня отторжение.
Однажды, сидя в интернете, (через модем) мы с другом увидели рекламу каких-то ИТ услуг. На баннере был изображен системный администратор в свитере и джинсах, сидящий между серверных стоек, на коленях у него лежал ноутбук, подключенный к серверу.
Я воскликнул что хочу быть таким. На что мой друг ответил - хочешь, значит будешь. Я посмеялся - где ИТ и где я - юрист, не осиливший школьную алгебру...
В свободное время я продолжал изучать операционные системы. Конечнно, без постоянного доступа к интернету это происходило в основном методом тыка. Когда появилась виртуализация, я по вечерам, после работы, играл с виртуальными машинами создавая сеть, настраивал права доступа, поднимал веб-серверы и т.д.
В 2011 году после четвертого сокращения штатов моя и без того не головокружительная карьера в очередной раз рухнула, но в этот раз уже ниже плинтуса и я решил, что пора заняться любимым делом и осуществить мечту - я устроился работать системным администратором.
Ведомственная организация, в которой я стал системным администратором, имела ряд специфических требований к кандидатам по причине принадлежности к органам правопорядка, а заработная плата, учитывая специфику оставляла желать лучшего. Так что я, как линуксоид хоть и с домашним опытом, был практически вне конкуренции - желающих идти работать сисадмином на эту вакансию не было: те, кто работал в организации не фанатели от операционных систем, а линуксоиды, приходившие с рынка труда, прослушав требования и условия работы хмыкнув удалялись в светлое будущее.