Шрифт:
Что бы ты посоветовал новичкам?
Да я сам новичок. Советую не «забивать» на свои проекты, даже если они сегодня не пользуются спросом. Лучше их развивать, дополнять чем-то иным.
А так, думаю, если нет предрасположенности к сфере «айти»: интереса понять, как что-то работает, желания иметь возможность на это повлиять, то не имеет смысла этим заниматься. Сегодня почти все профессии плюс-минус могут приносить хороший заработок. Лучше делать что-то в сфере, к которой есть максимальный интерес. Для тех, кому это скучно, вероятнее всего это и останется скучным. Мне в математике всегда нравились формулы, поиск решения и результат. И кайф от того, что нашёл (или сделал, если касается программирования) то, что работает.
5. Умный просто умеет «гуглить»
Именно то, как вы собираете, организуете и используете информацию, определяет, победите вы или проиграете.
Билл Гейтс
Я часто слышу от людей, далеких от «айти» (хотя и не от далеких тоже), следующее: чтобы стать программистом, надо быть в первую очередь очень умным, и якобы не всем это дано. Мол, надо в совершенстве знать алгебру и математику, владеть алгоритмическим и логическим мышлением, знать английский язык (а еще лучше множество языков) и иметь память как у слона (как известно, они славятся исключительной памятью), чтобы выучить, понять и запомнить огромное количество команд и функций (которых сотни или даже тысячи).
Возможно при решении каких-то задач (при написании драйверов устройств под операционную систему или разработки «физики» в RPG-игре) действительно всё вышеописанное нужно знать и всем перечисленным пользоваться. Но на практике для старта в профессии всё это совершенно не обязательно. А секрет в том, что просто нужно уметь пользоваться поиском в интернете, то есть «гуглить» – принцип «обучение во время работы» – по мере поступления задач.
Имея базовое понимания, как устроен язык программирования (об этом поговорим в следующих главах), будь то язык гипертекстовой разметки HTML или скриптовый язык общего назначения PHP, все остальное можно найти в «сети»: как справочник по командам, с описанием каждой команды и в частности искомой вами, так и множество примеров готовых блоков кода для решения конкретной задачи, написанных другими программистами (причем в нескольких вариантах).
Например, можете задать поисковый запрос: «php как округлить число» и тут же получить ответ, с примерами: «для округления чисел в php, есть функция round». Или задать такой поисковый запрос: «css как сделать подчеркивание у текста», и сразу выяснить ответ с примерами: «задайте свойство для элемента text-decoration: underline». Можно сформулировать и поискать решение по более сложному вопросу.
Удивительно, но среди желающих начать свой путь в «айти» много тех, кого останавливает страх перед большим объемом информации, который якобы необходимо знать наизусть. Это конечно неплохо, однако практически невозможно (особенно для новичка). Нет, друзья, гуглят все и постоянно. Я пишу код, и при этом история моего поиска в браузере пополняется десятками запросов, каждый день! Хотя с кодом я работаю большую часть жизни.
В навыке формулировать поисковый запрос и быстро находить нужную информацию и кроется секрет успеха успешного программиста: новичка или профессионала. К счастью, этот навык развивается гораздо проще и быстрее, чем обучение программированию. Профессионал лишь более четко формулирует, а затем «гуглит» решение задач, и уровень их, возможно, несколько сложнее, например: «как оптимизировать архитектуру высоконагруженной базы данных». В этом и кроется одно из его отличий от новичка.
Однако есть важный нюанс! Когда речь идет о поиске решения, не подразумевается, что это решение должно быть готовым, что называется, «под ключ». Совершенно нет! Программу вы пишете условно с нуля и каждую строку кода внимательно обдумываете, а к «всемирной паутине» обращаетесь именно за информацией по части команд или примеров готовых блоков кода. Они лишь могут являться частью проекта. Еще раз – «только команды и блоки кода». Разумеется, глупо было бы говорить о программисте, который вместо разработки проекта и написания кода постоянно ищет аналогичное решение уже кем-то реализованное. Нет, ни в коем случае!
«Поисковая строка» – это быстрый доступ к справочникам и всемирной базе знаний, а не панацея от всех бед. Логика работы программы должна быть всегда в вашей голове!
Вот пример списка поисковых запросов, которые могут быть актуальны при разработке, например, «формы обратной связи» на сайте, функционал которой следующий: «пользователь может указать в форме: тему, текст сообщения и e-mail для связи с ним, затем, нажав кнопку “отправить”, данные отправлялись бы администратору сайта в админпанель и на его e-mail».
Пример списка поисковых запросов:
? Пример HTML-формы для отправки запроса на сервер.
? HTML тег INPUT и его параметры.
? Что такое POST-запрос.
? PHP обработка POST-запроса.
? PHP подключение к базе данных MySQL.
? PHP подготовка данных для вставки в БД.
? PHP пример вставки строки в таблицу MySQL.
? PHP отправка сообщения на E-Mail.