9

А как все же стать программистом? Часть 1.

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

Disclaimer: все ниже написанное, естественно, ИМХО.


Для начала стоит разобраться чем же орудуют эти самые программисты.


Языками программирования? Да. Средами разработки? Конечно. Тетрадками для записей и белыми досками? Точно.


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

Наше определение абстракции — это некоторая идея, модель, в которой выражены все нужные нам свойства и отброшено все лишнее.


Как работает компьютер? Есть два различимых состояния, один из которых ноль, а другой единица — это простенькая абстракция. А та высокотехнологичная штука, в экран которой вы сейчас пялитесь — нечто иное как конкретная реализация этой абстракции, и кстати многих других.


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


Кодер vs Программист


Это не общепринятая градация, а способ показать некоторую разницу между уровнем знаний и навыков. Затратив год вы можете найти работу в IT, но вы станете кодером. Другой человек потратив 4 года станет программистом, но в начале своего пути зачастую получает те же деньги. Из-за этого вспыхивают холивары на тему нужно ли вообще программисту образование. Отвечу заранее — нужно, корочка зачастую не обязательна, а вот знания нужны.


И так кто такой кодер? Кодер это человек знающий конкретную реализацию каких-то абстракций. Выучил HTML, CSS, PHP и JavaScript за год и пошел работать. Он знает конкретный инструмент, он может решать конкретные задачи. Чем не работник? Такой многим нужен.


Программист же потратил 4 года, в его резюме написаны те же HTML, CSS, PHP и JavaScript. Но в чем же разница? А в том, что программист изучал (ну мы считаем что он действительно изучал) абстракции лежащие в основе этих инструментов. Он лучше понимает свой инструмент, он лучше понимает решаемые проблемы. Соответственно и качество его работы лучше и способен он на большее. Ну это помимо того, что он знает много умных слов, конечно. Но начальную позицию он может получить такую же как и кодер.


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

Выйдут новые версии PHP, инструменты устареют, роботы покорят человечество, а абстракции будут жить вечно.


P.S. Это небольшое вступление, написанное на пробу. Дальше планирую написать о том какие навыки нужны, что такое предметная область и конечно же ссылки на конкретные материалы.

3
Местный алкаш
Автор поста оценил этот комментарий

Что бы научиться программировать, нужно.. ПРОГРАММИРОВАТЬ. Это как кататься на велосипеде: Ни одна книга не поможет тебе в этом, только опыт

раскрыть ветку (1)
Автор поста оценил этот комментарий

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

показать ответы
1
Автор поста оценил этот комментарий

> кодер, в моем понимании совсем не ругательное слово.


Но все равно из поста видно что для вас кодеры - это такие молдаване из мира программирования - вроде что-то там могут, но куда им до настоящих мастеров?! Как на счет того что жрать всем хочется, "кодер" сможет получать зарплату программиста (ну или наоборот) уже через год вальяжного колупания кода и "php за 2 недели", а к тому времени как программист выучит все, что ему нужно (в посте озвучено 4 года) кодер уже дорастет до какого-нибудь сеньера-архитектора потому что у него и опыт есть, и вот эти три года он тоже не хеллоуворлды писал с 9 до 18 а обучался, познавал тонкости используемых инструментов и так далее. В чем же смысл тогда? Через 4 года у нас, грубо говоря, два человека с одинаковыми знаниями и тонной реального опыта за плечами только одного из них (да еще и зарплату он три года получал), так зачем же мне сейчас начинать с чтения "талмудов" на 1К страниц если я могу хоть как-то начать работать и практиковаться?

раскрыть ветку (1)
Автор поста оценил этот комментарий

Для меня кодер это 1 lvl в мире программирования. Я нигде не пишу что нужно потратить 4 года. Я даже пишу что можно замечательно потратить эти 4 года на то что можно было узнать за 1.

Из наших вузов часто выходят замечательные кодеры, потратившие на это 4 и более лет.

Я говорю о том, что нельзя останавливать на этом 1 lvl. В следующем посте я даже напишу что учиться придется на протяжении всей карьеры. Я пытаюсь объяснить вот эту подноготную про того кто получает зарплату уже через год и того кто через 4, получает туже. Потому что это зачастую создает впечатление что ничего учить не надо. Даешь программирование за 21 день.

1
Автор поста оценил этот комментарий

Пых за год, не издевайтесь.

раскрыть ветку (1)
Автор поста оценил этот комментарий

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

показать ответы
1
Автор поста оценил этот комментарий

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

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

раскрыть ветку (1)
Автор поста оценил этот комментарий

Автор не обсирал кодеров. Комментатор не способен к чтению. Например:

Из-за этого вспыхивают холивары на тему нужно ли вообще программисту образование. Отвечу заранее — нужно, корочка зачастую не обязательна, а вот знания нужны.
Твой уровень не зависит от количество потраченного времени, а от качества знаний. Из наших вузов часто выходят замечательные кодеры, потратившие на это 4 и более лет.

Где в моем посте про обязательность вышки, я в упор не вижу. Я говорю об обязательности знаний.

показать ответы
Автор поста оценил этот комментарий

еще кое что:
- программист никогда не программирует программу. программист всегда решает задачу. из какой-либо области. и должет в этой области что-то понимать.
или кто-то должен четко поставить ему задачу - но тогда он не программист а говно.

задачи начиная от приема заказов пиццерии заканчивая софтом для МКС. или контроллером буровой станции.или бухгалтерской или какой другой системы. или...

т.е. программист должен еще владеть прикладной областью на достаточно высоком уровне.


на самом деле получается программист-микроэлектронщик, программист-нефтяник, программист-космонавт, программист-вэба, программист-бухгалтер, программист-движков-для-игр и никак иначе. 

охватит все темы невозможно.

но программист-программист в вакууме не существует.


программисты далеко не универсальны. научится новым трюкам можно - но...


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

в 99% вы будете хуячить формы для бухгалтерии или причесывать бизнес-процессы под изменение законодательства. интересных и оплачиваемых мест работы мало и на всех не хватает.


- многие спиваются или становятся социопатами. хорошие программисты. но странные люди.

профессия накладывает очень сильный отпечаток на разум. конечно везде есть ремесленники которые вроде как-бы что-то умеют и которых это нее коснулось... но они не дотягивают до уровня.


- программирование унылых задач - унывно.

раскрыть ветку (1)
Автор поста оценил этот комментарий

Я написал этот пост за 20 минут и все не уместилось, про предметную область, кстати:

Дальше планирую написать о том какие навыки нужны, что такое предметная область ...

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества

Недвижимость и ремонт

Теги

Популярные авторы

Сообщества