Никогда не понимал, за что некоторые люди так не любят слово «фуллстек».
Потому что фуллстеки это вечные середнячки (в лучшем случае). Невозможно на глубоком уровне понимать и фронт и бек. А некоторые еще параллельно за мобильную разработку берутся, и за DevOps - в итоге время и опыт размазывается тонким слоем по всем областям.
С точки зрения создания своего стартапа это отличный путь, но с точки зрения построения карьеры в большом проекте, с большой командой и с большими зарплатами - такое себе.
Специально для очередных оптимистов, которые считают, что мы возвращаемся в «сталинские времена», рекомендую ознакомиться с документом о мобилизации 1941 года и обратить внимание на строки:
Мобилизации подлежат военнообязанные, родившиеся С 1905 по 1918 включительно
Т.е. с 21 до 36 лет. Сейчас вилка, для рядовых от 19 до 50. Т.е. границы мобилизации шире, чем во времена второй мировой войны. Плюс никаких ограничений на количество в законе нет.
И не стоит забывать, что во времена Сталина мы в союзниках имели США и Великобританию. А кого в союзниках имеем сегодня? Как бы о сталинских временах не пришлось вспоминать (со всеми их недостатками) как о недостижимом счастье.
Как человек, который работает с php с 2008 года могу сказать, что все так и есть, если иметь кругозор и критическое мышление.
Знакомых которые перешли с php на другие языки или которые планируют перейти масса, а хотя бы одного, кто с других языков перешел на php - нет. Это как бы показатель.
Никому бы не порекомендовал в 22 году изучать php.
Ну и последнее. Давайте прервём этот порочный круг и снимем стигму с просто качественной работы. Давайте перестанем транслировать вредную мысль, что все должны учиться 24/7.
Любую проблему можно решить двумя способами: или двигать ситуацию в лучшую сторону, или наоборот, в еще худшую, доводя до такого уровня идиотизма, чтобы всем было понятно, что что-то не так.
Мне кажется, что текущую ситуацию в ИТ можно решить только через ухудшение.
А я первые 8 лет (с 2008 по 2016) проработал с велосипедами и CMS, и когда на собеседовании меня спрашивали "с фреймворками работали?" а я отвечал "нет", то прямо видел, как глаза собеседующего тускнели.
А в первую интересует опыт.
Нет разницы, 100 раз программист реализовал нужный функционал костылем, или 100500 раз.
Не озвучена еще такая тема как "мусорные работы", это работы, где ты вроде и программист, и вроде пишешь код, и функционал работает, и даже пользователи довольны, но все это на легаси-фреймворках с очень плохим кодом. Проработать на таких работах можно годами, а потом окажется, что ваш опыт никому не интересен. И нормальное (речь не идет о больших) зарплаты платить никто не собирается.
А чтобы понять, в какой компании получишь хороший и востребованный опыт, а в какой нет - уже нужен опыт.
Не умея мыслить алгоритмически вы как планируете писать качественный код?
С каких это пор качество кода стало определяться алгоритмом? Авто-тесты, CI/CD (+ ревью кода каждым каждому, плюс адекватные сроки на разработку) и по итогу около нулевое количество багов на проде - вот показатель качества кода.
Для меня код решающий задачу - это только 10% от сложности проекта. А 90% находятся вне его - в тестах, в CI/CD, в правильно выстроенных процессах разработки.
Плюс, наблюдая за окружающими программистами, как они делают ошибки - я не вижу никакой проблемы в знаниях или алгоритмах. Я вижу, что людям было просто лень написать нормальные тесты, лень протестировать код руками - тяп-ляп и в прод, пользователи если что напишут.
Тут скорее лично ваша проблема
Я не вижу никаких проблем. Люди которые знают меня и сколько я получаю, говорят что моему работодателю повезло. А другие работодатели пускай оценивают программистов по "напишите код на бумажке", "прочтите код с бумажки"
Если завтра программистов будут оценивать по скорости бега, вы начнете тренироваться быстро бегать?
А само решение на листочке позволяет проверить умение мыслить алгоритмически и проверяют его не запуском на пк, а просто смотрят на ключевые элементы алгоритма
Где гарантии что это умение будет конвертироваться в качественный код? Вам от программиста коммиты нужны, или его понимание? Мне вот нужны коммиты с качественным кодом. Если в коммитах говно - он может хоть 5 красных дипломов из МГУ иметь - мне на них будет наплевать
Вы забываете про эффект нестандартной ситуации. Одно дело работать в удобной IDE одному, и другое дело писать код в неудобном редакторе и когда на тебя смотрят. У меня была ситуация, когда я на собеседовании не смог простейший sql написать с одной проверкой IS NOT NULL. И это никак не показывает мои знания sql, это показывает, что на собесах я сильно волнуюсь. Что забавно - волнуюсь я даже когда нахожусь со стороны работодателя, на втором плане (т.е. просто слушаю).
Вайтишные курсы очень сильно распиарили айти-сферу, как область в которой люди ничего не делают и получают кучу денег
Разумеется, из-за такой рекламы на каждом углу, в айтишку побежала толпа людей
Разумеется, 98% из них оказались потом никому не нужными со своими джуниор-резюме
Далее половина из оставшихся убирает слово джуниор из резюме, добавляют несуществующего опыта и презентуют себя уже как мидл-программисты. У кого-то, возможно, хватает наглости еще и как сеньор себя презентовать.
Компании и рекрутеры начинают закапываться в этом обилии резюме и ищут способы как отделить реально опытных программистов от тех, кто наврал про опыт. И не находят ничего лучше, чем "напишите код на бумажке"
Потом правда оказывается, что реальный мидл волнующийся на собеседовании и не умеющий писать код на бумажке никак не отличается от вайтишника, который наврал про опыт.
Но выбор есть (кризис помог), по этому можно не заморачиваться и отсеивать и тех и тех.
От нас требуют знания языков, различных фреймворков, библиотек, баз данных, кучи сопутствующего софта. Но разумеется, изучать все это нужно не в рабочее время - в рабочее время нужно пилить бизнес-фичи.
Получается, что программисту предлагают все свободное время проводить за чтением книг и изучением технологий.
А потом, самое главное, от вас еще будут требовать софт скиллов. Я реально не понимаю, откуда у классного программиста, который стал классным как раз из-за того, что все время проводил за компьютером, появятся какие-то там навыки коммуникации? Наоборот, чем больше человек вкладывается в развитие себя как программиста, тем сильнее атрофируются навыки общения.
Если локти свисают, то осанка вновь становится неровной
Самое главное - проблемы будут не только с осанкой. Я много лет мучился с болями и в пояснице, и в шее - столы, где у вас на столе только кисти, а все остальное свисает очень вредны для позвоночника. Важно подбирать стол, чтобы все руки до локтей лежали на столе, и чтобы уровень стола был достаточно высок, чтобы руки именно лежали на нем, и никак не тянули вниз плечи. Делается легко - банально подложить книги под ножки стола.
15-20 тысяч рублей на хороший стол могут сохранить сотни тысяч денег потраченных на врачей. Самое печальное (а по врачам я ходил годами) - про самые банальные вещи, такие как стол, стул, подушка - они практически ничего не говорят. А еще они любят говорить что боли в спине это неотъемлемая часть сидячей работы - таким (когда уже больше разбираешься) хочется просто бить в лицо с разбега.
Главное - здоровье. Движение это здоровье. Когда ребенок с первых классов целыми днями сидит, то в школе, то дома за уроками/компьютером - у него уже в 20 лет будет куча проблем с позвоночником. А позвоночник это основа всего в организме.
А без здоровья - ни деньги, ни должности - ничего не будет радовать.
IPFS позволяет сохранить(запинить) локально весь сайт который в ней расположен
Да, это как раз движение в том направлении, о котором говорю. Другое дело - что сейчас это технология еще сырая и необкатанная. По крайней мере я не знаю ни один реальный и посещаемый сайт (не статичный), который бы работал на этой технологии.
Но проблема банальная (в смысле понятная), и многие, особенно те, кто застал интернет 90-х и нулевых осознают сегодняшнюю проблему свободы в интернете. По этому уверен, такого типа технологии будут развиваться и лет через 10 будет заметный прогресс в практическом плане.
Invisible Internet Project (I2P) — это полностью зашифрованный уровень частной сети, который был разработан с учетом принципов конфиденциальности и безопасности, чтобы обеспечить защиту вашей деятельности, местоположения и вашей личности.
Я совсем о другом. Задача анонимности и обхода блокировок уже решена, и кто хочет - это делает.
Не совсем понятно, почему нельзя закрыть сайт, хостящийся на своем ПК
Допустим работу сайта поддерживает 100 тысяч пользователей по всему миру - как правительство каких-то стран смогут его заблокировать? Ходить ко всем тысячам по квартирам и форматировать компьютеры?
Интернету не хватает технологии, которая позволит "сайтам" храниться у самих пользователей. Чтобы не было единой точки отказа, чтобы нельзя было никаким законом закрыть неугодный сайт.
Ну и банально не нужно будет думать "ой, а если я случайно умру - кто оплатит хостинг и домен" - пока комьюнити будет поддерживать проект (позволять обрабатываться ему на своем ПК) - он будет жить
На мой взгляд есть простой показатель, который показывает куда движется проект - в сторону деградации (что бывает чаще всего), или в сторону улучшения. Показатель, конечно, не 100% верный, потому что все можно подделать. А чтобы подделать его было сложнее - я бы вообще не говорил команде, что его замеряю.
Показатель простой. Раз в неделю/месяц, берутся все задачи в трекере, и считается, какой % из этих задач был типа "ошибка/баг".
Соответственно, если каждый месяц % багов от общего количества задач растет - это тревожный сигнал. Раз встречал проект, где багов было 80% всех задач. Т.е. команда практически все время только и делала, что правила бесконечные баги (проект был без авто-тестов и CI/CD), показательно, что проект потом переписывали с нуля.
Конечно, этот показатель сработает, если в команде принято за правило все изменения по коду делать через создание задачи в трекере. Потому что, опять же, встречал команды, где была какая-то фобия на создание задач об ошибках. Как будто если задача не создана - то и ошибки вроде как и не было.
Вообще все упирается в компетентность менеджмента, и его вовлеченность в проект. При желании все решается и довольно просто. Например, чего не встречаю, а хотелось бы - чтобы программистов больше делили по разным сервисам, которыми занимались бы только они. Соответственно по количеству ошибок в том или ином сервисе будет легко понять, кто пишет код нормально, а кто тяп-ляп и за кем надо постоянно перепроверять и доделывать.
Потому что фуллстеки это вечные середнячки (в лучшем случае). Невозможно на глубоком уровне понимать и фронт и бек. А некоторые еще параллельно за мобильную разработку берутся, и за DevOps - в итоге время и опыт размазывается тонким слоем по всем областям.
С точки зрения создания своего стартапа это отличный путь, но с точки зрения построения карьеры в большом проекте, с большой командой и с большими зарплатами - такое себе.
Специально для очередных оптимистов, которые считают, что мы возвращаемся в «сталинские времена», рекомендую ознакомиться с документом о мобилизации 1941 года и обратить внимание на строки:
Т.е. с 21 до 36 лет. Сейчас вилка, для рядовых от 19 до 50. Т.е. границы мобилизации шире, чем во времена второй мировой войны. Плюс никаких ограничений на количество в законе нет.
И не стоит забывать, что во времена Сталина мы в союзниках имели США и Великобританию. А кого в союзниках имеем сегодня? Как бы о сталинских временах не пришлось вспоминать (со всеми их недостатками) как о недостижимом счастье.
Хорошая статья, отдельно спасибо за github и пример проекта, где можно его сразу посмотреть в работе (все бы так делали)
Мне кажется было бы хорошо добавить на сайт отображение двух параметров: длина созданного массива, и в процессе сортировки - сколько операций сделано.
P.S. Ну и конечно же можно добавить другие алгоритмы сортировки, как раз в соседней теме есть большой список :)
Как человек, который работает с php с 2008 года могу сказать, что все так и есть, если иметь кругозор и критическое мышление.
Знакомых которые перешли с php на другие языки или которые планируют перейти масса, а хотя бы одного, кто с других языков перешел на php - нет. Это как бы показатель.
Никому бы не порекомендовал в 22 году изучать php.
Любую проблему можно решить двумя способами: или двигать ситуацию в лучшую сторону, или наоборот, в еще худшую, доводя до такого уровня идиотизма, чтобы всем было понятно, что что-то не так.
Мне кажется, что текущую ситуацию в ИТ можно решить только через ухудшение.
А я первые 8 лет (с 2008 по 2016) проработал с велосипедами и CMS, и когда на собеседовании меня спрашивали "с фреймворками работали?" а я отвечал "нет", то прямо видел, как глаза собеседующего тускнели.
Нет разницы, 100 раз программист реализовал нужный функционал костылем, или 100500 раз.
Не озвучена еще такая тема как "мусорные работы", это работы, где ты вроде и программист, и вроде пишешь код, и функционал работает, и даже пользователи довольны, но все это на легаси-фреймворках с очень плохим кодом. Проработать на таких работах можно годами, а потом окажется, что ваш опыт никому не интересен. И нормальное (речь не идет о больших) зарплаты платить никто не собирается.
А чтобы понять, в какой компании получишь хороший и востребованный опыт, а в какой нет - уже нужен опыт.
С каких это пор качество кода стало определяться алгоритмом? Авто-тесты, CI/CD (+ ревью кода каждым каждому, плюс адекватные сроки на разработку) и по итогу около нулевое количество багов на проде - вот показатель качества кода.
Для меня код решающий задачу - это только 10% от сложности проекта. А 90% находятся вне его - в тестах, в CI/CD, в правильно выстроенных процессах разработки.
Плюс, наблюдая за окружающими программистами, как они делают ошибки - я не вижу никакой проблемы в знаниях или алгоритмах. Я вижу, что людям было просто лень написать нормальные тесты, лень протестировать код руками - тяп-ляп и в прод, пользователи если что напишут.
Я не вижу никаких проблем. Люди которые знают меня и сколько я получаю, говорят что моему работодателю повезло. А другие работодатели пускай оценивают программистов по "напишите код на бумажке", "прочтите код с бумажки"
Если завтра программистов будут оценивать по скорости бега, вы начнете тренироваться быстро бегать?
Так статья как раз о том, что холопы начали что-то подозревать...
Где гарантии что это умение будет конвертироваться в качественный код? Вам от программиста коммиты нужны, или его понимание? Мне вот нужны коммиты с качественным кодом. Если в коммитах говно - он может хоть 5 красных дипломов из МГУ иметь - мне на них будет наплевать
Вы забываете про эффект нестандартной ситуации. Одно дело работать в удобной IDE одному, и другое дело писать код в неудобном редакторе и когда на тебя смотрят. У меня была ситуация, когда я на собеседовании не смог простейший sql написать с одной проверкой IS NOT NULL. И это никак не показывает мои знания sql, это показывает, что на собесах я сильно волнуюсь. Что забавно - волнуюсь я даже когда нахожусь со стороны работодателя, на втором плане (т.е. просто слушаю).
Я вижу ситуацию так:
Вайтишные курсы очень сильно распиарили айти-сферу, как область в которой люди ничего не делают и получают кучу денег
Разумеется, из-за такой рекламы на каждом углу, в айтишку побежала толпа людей
Разумеется, 98% из них оказались потом никому не нужными со своими джуниор-резюме
Далее половина из оставшихся убирает слово джуниор из резюме, добавляют несуществующего опыта и презентуют себя уже как мидл-программисты. У кого-то, возможно, хватает наглости еще и как сеньор себя презентовать.
Компании и рекрутеры начинают закапываться в этом обилии резюме и ищут способы как отделить реально опытных программистов от тех, кто наврал про опыт. И не находят ничего лучше, чем "напишите код на бумажке"
Потом правда оказывается, что реальный мидл волнующийся на собеседовании и не умеющий писать код на бумажке никак не отличается от вайтишника, который наврал про опыт.
Но выбор есть (кризис помог), по этому можно не заморачиваться и отсеивать и тех и тех.
Все так.
От нас требуют знания языков, различных фреймворков, библиотек, баз данных, кучи сопутствующего софта. Но разумеется, изучать все это нужно не в рабочее время - в рабочее время нужно пилить бизнес-фичи.
Получается, что программисту предлагают все свободное время проводить за чтением книг и изучением технологий.
А потом, самое главное, от вас еще будут требовать софт скиллов. Я реально не понимаю, откуда у классного программиста, который стал классным как раз из-за того, что все время проводил за компьютером, появятся какие-то там навыки коммуникации? Наоборот, чем больше человек вкладывается в развитие себя как программиста, тем сильнее атрофируются навыки общения.
Самое главное - проблемы будут не только с осанкой. Я много лет мучился с болями и в пояснице, и в шее - столы, где у вас на столе только кисти, а все остальное свисает очень вредны для позвоночника. Важно подбирать стол, чтобы все руки до локтей лежали на столе, и чтобы уровень стола был достаточно высок, чтобы руки именно лежали на нем, и никак не тянули вниз плечи. Делается легко - банально подложить книги под ножки стола.
15-20 тысяч рублей на хороший стол могут сохранить сотни тысяч денег потраченных на врачей. Самое печальное (а по врачам я ходил годами) - про самые банальные вещи, такие как стол, стул, подушка - они практически ничего не говорят. А еще они любят говорить что боли в спине это неотъемлемая часть сидячей работы - таким (когда уже больше разбираешься) хочется просто бить в лицо с разбега.
Главное - здоровье. Движение это здоровье. Когда ребенок с первых классов целыми днями сидит, то в школе, то дома за уроками/компьютером - у него уже в 20 лет будет куча проблем с позвоночником. А позвоночник это основа всего в организме.
А без здоровья - ни деньги, ни должности - ничего не будет радовать.
Да, это как раз движение в том направлении, о котором говорю. Другое дело - что сейчас это технология еще сырая и необкатанная. По крайней мере я не знаю ни один реальный и посещаемый сайт (не статичный), который бы работал на этой технологии.
Но проблема банальная (в смысле понятная), и многие, особенно те, кто застал интернет 90-х и нулевых осознают сегодняшнюю проблему свободы в интернете. По этому уверен, такого типа технологии будут развиваться и лет через 10 будет заметный прогресс в практическом плане.
Я совсем о другом. Задача анонимности и обхода блокировок уже решена, и кто хочет - это делает.
Допустим работу сайта поддерживает 100 тысяч пользователей по всему миру - как правительство каких-то стран смогут его заблокировать? Ходить ко всем тысячам по квартирам и форматировать компьютеры?
Интернету не хватает технологии, которая позволит "сайтам" храниться у самих пользователей. Чтобы не было единой точки отказа, чтобы нельзя было никаким законом закрыть неугодный сайт.
Ну и банально не нужно будет думать "ой, а если я случайно умру - кто оплатит хостинг и домен" - пока комьюнити будет поддерживать проект (позволять обрабатываться ему на своем ПК) - он будет жить
Тоже удивлен их отсутствию в списке. Это единственная наша игра из 90-х, в которую я играл. Да и сейчас иногда вспоминаю.
Личный рекорд (и больше по-моему не сделать) по максимому здоровья в основной сюжетной линии:
На мой взгляд есть простой показатель, который показывает куда движется проект - в сторону деградации (что бывает чаще всего), или в сторону улучшения. Показатель, конечно, не 100% верный, потому что все можно подделать. А чтобы подделать его было сложнее - я бы вообще не говорил команде, что его замеряю.
Показатель простой. Раз в неделю/месяц, берутся все задачи в трекере, и считается, какой % из этих задач был типа "ошибка/баг".
Соответственно, если каждый месяц % багов от общего количества задач растет - это тревожный сигнал. Раз встречал проект, где багов было 80% всех задач. Т.е. команда практически все время только и делала, что правила бесконечные баги (проект был без авто-тестов и CI/CD), показательно, что проект потом переписывали с нуля.
Конечно, этот показатель сработает, если в команде принято за правило все изменения по коду делать через создание задачи в трекере. Потому что, опять же, встречал команды, где была какая-то фобия на создание задач об ошибках. Как будто если задача не создана - то и ошибки вроде как и не было.
Вообще все упирается в компетентность менеджмента, и его вовлеченность в проект. При желании все решается и довольно просто. Например, чего не встречаю, а хотелось бы - чтобы программистов больше делили по разным сервисам, которыми занимались бы только они. Соответственно по количеству ошибок в том или ином сервисе будет легко понять, кто пишет код нормально, а кто тяп-ляп и за кем надо постоянно перепроверять и доделывать.