Другие языки программирования и технологии

"Неприятие" фреймворков, было ли у Вас такое? Как перебороли?

Привет всем!
Ребят, давно ношу в себе этот вопрос, вот решил задать, сформировался он в голове.
В чем проблема - я не знаю почему, но когда хочу изучить серьезно программирование, то всегда останавливаюсь на том моменте, когда уже прошел базис (Core) и перехожу к изучению какой-то библиотеки или фреймворка.

У меня просто словно "барьер" - начинают в голову лезть мысли, мол, "правильно" писать pure code, фреймворки - плохо, непродуктивно, нужно заучивать огромные конструкции, вида: фреймворк. пакет. метод () вместо собственных мой_специализированный_метод_без_всего_ненужного () и прочие глупости.

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

Грешу на то, что мое первое знакомство с миром программирования было в виде PHP и без всяких фреймворков, писал процедурно всякие мелкие штуки для Веба (занимался долго SEO и блогами, поэтому чуть изучил PHP, чтобы подправить плагин для WordPress, тему, написать простенький, на 20 строк, чекер или аналогичные примитивные утилиты).
Никогда серьезным кодингом не занимался, чтобы "кормиться" с этого.

Блин, ребят, дайте совет, как перебороть это?
Я очень хочу стать "нормальным", выучить хорошо Koltin и писать приложения для Андроида, поднимать хорошие деньги удаленно (то, что сейчас поднимаю на SEO и маркетинге - мало, хочу профессионально расти и развиваться, создавать полезные программные продукты, а не рекламить тревел и CPA-офферы). Умею много всякого в SEO и маркетинге, но вот с программированием у меня никак не получается продвинуться дальше основ. Всегда, абсолютно всегда останавливаюсь, едва изучу синтаксис и надо перейти к чему-то более сложному - фреймворку, ООП и т. д.

Спасибо за ответы!
Эльдар Конаев
Эльдар Конаев
2 849
Мысли правильные.
ООП и всякие фреймворки - это просто способ подсадить юзеров на свой программный продукт, и не более.
А потом эти юзеры ждут очередную версию своего фреймворка и заучивают в нём новые фичи.
Те, кто этой байдой пользуются - именно юзеры, а не программисты.

Программист использует стандартные возможности ОС, её API, стандартные компиляторы, стандартные библиотеки.

Возьми любой популярный пацанячий ЯП - это по сути фреймворк. Например, С++.
В С++ постоянно обновляют обычные С-шные библиотеки. Свои не пишут. Просто прибавляют букву "c" к имени, например, cmath. Разве можно назвать это языком?

То же самое с другими "языками".
Лишь бы впарить юзерам и продать под это новые книжки и курсы. А программистов в итоге получится мизер. Остальные - просто покупатели.
Михаил Коханенко
Михаил Коханенко
37 945
Лучший ответ
Эльдар Конаев Спасибо за развернутое и интересное мнение, Евгений!
Признаюсь, я в таком ключе не думал об этом ))
Просто, везде (в проектах на фрилансе и требованиях к вакансиям) требуется знание фреймворков, "чистые" программисты выйдут слишком дорого компании, надо, чтобы "тяп-ляп - и в продакшен" ))

Получается, что если мне себя не "ломать" и начинать учить либы и фреймоворки, то остается только Embedded-программирование, правильно?
Там, где чистый C, Asm, Verilog, VHDL, AHDL и подобные языки. Там нет фреймворков, а код "чистый" ради оптимизации по размеру и требованиям к аппаратной платформе.
Фреймворк, ООП это неправильная последовательность. Сначала ООП (что является частью основ), а уже потом фреймворк, который ты без ООП, возможно, нифига не поймешь.
AA
Abdullo Abdulloev
82 142
Эльдар Конаев Да, все правильно.
ООП мне тоже трудно дается (мысли, вроде: "зачем это, это так сложно, избыточно, ведь можно писать процедурно).
Я, вроде, и не тупой, но словно некий "психологический барьер" в голове стоит.
""Неприятие" фреймворков, было ли у Вас такое?"
Было. Они сложные. И пока ты не знаешь, как на них что-то сделать, кажутся малополезными.
То же самое и про крупные библиотеки, в которых всего сразу много, например Boost.

"Как перебороли?"
В основном стажировкой в компании.
Сначала я научился работать на C++ с тем же Boost и прочими плюшками, потом в той же компании познакомился с проектом на Node.js, React, koa, который был связан с частью, написанной на C++. Постепенно смог понять как все это работает и сейчас даже Redux понимаю, кроме Redux-persist.
Можно было, конечно, обойтись и без стажировки - на гитхабе полно проектов, которые пишутся в тех же компаниях - но сам понимаешь, нужно конкретно взять какой-то проект и начать его изучать, чтобы понять фреймворк. Возможно стоит это делать ради контрибьюций в эти проекты, сначала бесплатных (см. принципы сообщества), а потом может и работу через это найдешь, как знать.

"Я очень хочу ...поднимать хорошие деньги удаленно"
Это как?
На доширакофрилансе что ли? Весь русскоязычный фриланс - это огромный обменник труда программистов на дошираки.

И ни в коем случае это не "лестница".

Если ты уже профессионально знаешь фреймворки, то там это действительно МОЖЕТ помочь - но вот стать профессионалом работая там ты не сможешь, потому что бюджеты маленькие и придется делать наскоро, чтобы кушать хотя бы доширак, а не роллтон.

Еще там полезны отзывы и портфолио - но ты никогда не соберешь нормальное портфолио, потому что заказы там будут самые разнообразные (Android? Хер, придется еще и на PHP, и на Python, и на JS, и на C# писать, и в матлабе что-то для студентов делать) и тебе придется все делать наскоро и на грани, а не качественно, и в портфолио такое не пойдет.

То есть на фрилансе ты либо зарабатываешь деньги (маленькие) либо растягиваешь сроки любого проекта, по итогу вообще считай ничего не зарабатываешь, но зато хорошо во все вникаешь и все хорошо реализуешь, чтобы потом было портфолио.

ИМХО, если у тебя сейчас есть такие деньги чтобы ты мог сидеть и изучать что-то и не искать работу прям сейчас, то лучше метить на работу в компании. Начав с того же гитхаба, например. А на фрилансе если и брать проекты, то с не сжатыми сроками, а о том, что они должны платить, вообще забыть - жить за свой счет, а проекты эти делать как портфолио для устройства В КОМПАНИЮ.