24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Аноним 08/12/21 Срд 10:59:41 #1 №259251735 
image.png
Как программировать с толком?

/pr молчит, напишу и сюда

Короче такая хуйня. Я сам знаком с проганьем, даже работаю червепидором прогером в одной конторе. Также сам аж с 2013 года начинал изучать плюсы, сам шарф, питон и прочую залупу. Имею гит там несколько проектов.

В чем собсна проблема? Я считаю что у меня нет осознанности. Типа мне известна теория базовая вплоть до ООП, но четкого понимания как что и зачем и когда юзать нету. То есть я зная например о классах могу хуячить весь код в мейне, и даже не заподозрить неладное.

Как говорится, практика без теории слепа. Собсна вопрос - а как мне структурировать свои знания и пофиксить мою хуйню? Изучать СИКП HTDP, или есть что попроще?

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

В общем, прошу у Вас совета и помощи, пожалуйста не хуесосьте меня, я сам это могу прекрасно сделать. Заранее спасибо
Аноним 08/12/21 Срд 11:00:07 #2 №259251761 
бамп
Аноним 08/12/21 Срд 11:00:38 #3 №259251780 
бамп
Аноним 08/12/21 Срд 11:03:14 #4 №259251877 
бамп
Аноним 08/12/21 Срд 11:04:16 #5 №259251929 
>>259251735 (OP)
Читай Боба Мартина (чистый код, чистая архитектура), Фаулера и Банду четырёх (паттерны приложений).
>мне известна теория базовая вплоть до ООП
>четкого понимания как что и зачем и когда юзать нету
То есть тебе нихуя не известно. Читай то что рекомедовал выше и понимание придёт.
Аноним 08/12/21 Срд 11:05:56 #6 №259251999 
Мне помогло только устройство в компанию со строгим кодстайлом и соответствующими задачами. Типа, появилась необходимость использовать наследование, интерфейсы для взаимодействия с контейнером зависимостей и тд. Для старта могу посоветовать разве что перепечатывать один в один за видеогайдами по сложной тематике. Или, если пользуешься фреймворком, по максимуму использовать все его сущности. Тип я у себя одно время валидацию прямо в контроллере фигачил, но потом мне дали пиздюлей и сказали как правильнее валидировать данные в отдельном классе. Собственно, в доке так и было описано
Аноним 08/12/21 Срд 11:05:57 #7 №259252002 
>>259251929
>нихуя не известно
:,(

Ну тип мне известно на уровне ответа на собес, так отвечу. Ты конечно прав, но все равно обидно(
Аноним 08/12/21 Срд 11:06:59 #8 №259252044 
>>259252002
Ну вот расскажи мне например что такое O из SOLID
Аноним 08/12/21 Срд 11:08:49 #9 №259252120 
>>259251735 (OP)
Это все хуйня. Любая книга по ООП легко сравнится с библией. Факт там лишь один - похуй на производительность, важна лишь читабельность.

Классы - это не более, чем способ структурировать код (не зря же в С подобное и называется структурами). Про глобальные переменные слышал? Слышал, что это очень плохо? Так вот внезапно если глобальная переменная "глобальна" только в пределах класса, то это уже не плохо и вообще очень хорошо. Так что представь, что ты пишешь весь код все в той же функции main, но теперь ты можешь обернуть логические блоки в функции класса.
Аноним 08/12/21 Срд 11:09:01 #10 №259252127 
>>259251999
Не, у меня на РАБоте есть регламент который касается именования и комментариев, ну и иногда мне начальник говорит как поступить если я прям совсем туплю/задача специфичная. А так работа по принципу "прыгай в воду там поймешь как плавать"

>>259252044
буква так ааа.. эта... ну вот есть сущность, ее саму нельзя менять но можно дополнить расширениями
Аноним 08/12/21 Срд 11:09:37 #11 №259252149 
>>259251929
Формальная хуета уровня "S в SOLID означает что у вас должна быть только одна причина для изменения класса". Нихуя непонятно. У меня причина - стоит задача по изменению функционала. А то что у меня в одном классе и модель, и логика загрузки изображений - нууу это ж к причинам не относится
Аноним 08/12/21 Срд 11:13:14 #12 №259252300 
>>259251735 (OP)
Вопрос организации кода - это конечно важно. Но я видел огромное количество коммерчески успешных проектов, которые были организованы ужасно.
Чистый код, код комплит, чиста архитектура - может показаться не очень понятной водой даже людям с опытом.

Проще всего - перенять чужой опыт. Попытаться устроиться к какой-то аутсорс где описаниях ваканций пишут про SOLID, TDD, DDD или какую-то современную и не очень движ.
Аутсорсы часто умеют в короткие сроки парвлять мозги начинающим и не очень кодерам.

Но самое важно, что предстоит тебе сделать - это научиться учиться всему этому самому. Просто сидишь и постепенно учиться читать статьи\книги\доклады каждый день по чуть-чуть.
Аноним 08/12/21 Срд 11:15:43 #13 №259252410 
>>259252300
Вообще я бы хотел просто уметь быстро писать лаконичный код и сразу понимать какие алгосы/абстракции/вот это вот все нужно. А вот у нас хоть и есть стандарты разработки, у меня сейчас задача есть я там ебусь с кодом который вот вообще прям через жопу написан, нихуя не понятно
Аноним 08/12/21 Срд 11:21:48 #14 №259252656 
>>259252410
Ну, сразу понимать все не возможно - такое мне кажется приходит с разнообразным опытом.
Если ковырять 5 лет 1 и тот же полумертвый проект, который строится на одних и тех же принципах(возможно удачных\возможно нет) - опыт мне кажется будет достаточно однобоким и скудным.

То, что твой и чужой код бывает написан через жопу - об этого не убежать :3

Попробуй почитать книги типа чистого кода и код комплита - они объясняют как читать код, который не тошнит читать. Но идеального ничего не бывает, бывают накладываются доменные сложности, с которыми сложно справляться.
Аноним 08/12/21 Срд 11:22:42 #15 №259252697 
>>259252656
Да, анон выше советовал, попробую, изучу
Аноним 08/12/21 Срд 12:21:35 #16 №259255280 
Изучай паттерны и шаблоны проектирования по. Есть хорошие книжки, типа "совершенный код", где показаны примеры плохого кода, объясняют почему он плохой, и как его исправить.
Аноним 08/12/21 Срд 12:27:33 #17 №259255551 
>>259251735 (OP)
Линус называл это в свое время taste of code. Нарабатывается эта штука путем созерцания хорошей кодовой базы и контрибьюта в него через адские мучения на пул реквестах. Где ее взять? Как правило опен сорс более менее выглядит, но чаще всего лучше просто работать с нормальными высококвалифицированными пограмистами. Если у тебя нет в компании\команде человека выше тебя уровнем, который пишет код лучше чем ты, траблшутит лучше чем ты и.т.д. - нужно менять работу
Аноним 08/12/21 Срд 13:00:05 #18 №259257124 
26bb892cd26be592b7166986842c8896.jpg
>>259251735 (OP)
>Как программировать с толком?
Пф, так себе задача, вот лучше скажи как программировать без компъютера.
Аноним 08/12/21 Срд 13:19:58 #19 №259258209 
>>259251735 (OP)
Ноотропы, друг мой
Аноним 08/12/21 Срд 13:22:58 #20 №259258349 
>>259257124
На блокноте, как я в ВУЗе делал

>>259258209
Хуйня, мне никогда не помогала. Мне немного лучше жить помогает щас креатин, но то только после кочалки
Аноним 08/12/21 Срд 13:34:01 #21 №259258870 
>>259251735 (OP)
мне помогли паттерны, чистый код и архитектура + написать самому жырный 50к строк пет проект

когда постепенно ходишь и рефакторишь сам за собой вместо того чтобы писать новую хуйню, пробирает злость на себя и понимание, как делать нормально
Аноним 08/12/21 Срд 13:41:05 #22 №259259217 
>>259258870
Понял, спасибо
Аноним 08/12/21 Срд 13:43:14 #23 №259259341 
>>259251735 (OP)
Хз к 2-3 курсу универа как-то само пришло. Когда вижу какой-нибудь метод на 50+ строк или класс который отвечает за половину функционала в приложении сразу становится НЕПРИЯТНО
Аноним 08/12/21 Срд 13:52:58 #24 №259259840 
image.png
>>259259341
Ты только в середине пути. В конце ты поймешь что часто год-обжекты и дохуя кода в одном метода - это верх мастерства
Аноним 08/12/21 Срд 13:54:56 #25 №259259927 
Попробуй написать что-то сложней хеллоу ворлда, ты охуеешь от сложности и придется стоить абстракции для уменьшения этой сложности.
Аноним 08/12/21 Срд 13:57:20 #26 №259260064 
>>259259927
Так я на РАБоте и занимаюсь. Вот у меня задача там финансовый отчет сбилдить, чтобы он в таблицу выводил значения из системы. Я уже 2 недели ебусь и смог только форму настройки скрафтить
Аноним 08/12/21 Срд 14:00:46 #27 №259260223 
>>259260064
Ну тогда процесс обучения запущен) Добавь книги что советовали выше, изучай чужой код, думай зачем делают так, а не иначе.
Аноним 08/12/21 Срд 14:02:19 #28 №259260284 
>>259251929 Говноед.
Оп, изучай ФП.
Аноним 08/12/21 Срд 14:03:03 #29 №259260316 
>>259260064
EPPlus в помощь
И дело в ячейке шляпе
Аноним 08/12/21 Срд 14:31:14 #30 №259261607 
>>259260223
>>259260316

Попробую, спасибо
Аноним 08/12/21 Срд 14:54:44 #31 №259262800 
>>259251929
> Фаулера
А что, конкретно, по Фаулеру читать? Всё остальное читал, частично или полностью.

Мимокрокодил.
Аноним 08/12/21 Срд 15:07:32 #32 №259263542 
>>259252149
Что значит нихуя не понятно? Жопой читал, или забыл, что знания надо применить на практике, чтобы они закрепились?

Прямо сейчас берешь свой говнокод, ищешь ёба-функцию и вчитываешься в её название, если название функции к пример makeRequest, а она по итогу ещё и обрабатывает все виды ошибок и парсит ответ и мапит данные, то вот. Только что, ты пронаблюдал наглый пиздежь, функция с названием makeRequest должна только реквест и делать и мб возврщать raw_text какой-нибудь. Берёшь и рефакторишь эту функцию, и пишешь в коммите "Исправить наглую ложь..." Вот тебе и буква S из солид, представь что будет если ты ещё хотя бы ещё один принцип оттуда начнёшь использовать.
Аноним 08/12/21 Срд 15:20:05 #33 №259264270 
Straus.jpg
>>259258349
>после кочалки
>Удивляется что не получается кодить
Ты определись ты качок или программист сначала.
Аноним 08/12/21 Срд 15:23:13 #34 №259264427 
>>259264270
Так я в спиртзал хожу перед работой с 6-8
Аноним 08/12/21 Срд 15:32:38 #35 №259264946 
>>259251735 (OP)
Синдром самозванца, добро пожаловать!
Гуглишь must have скилы для твоей профессии, делаешь компиляцию требований из нескольких списков и ебашишь по каждому пункту, вдумчиво.
Аноним 08/12/21 Срд 15:40:56 #36 №259265404 
>>259251735 (OP)
>даже работаю червепидором прогером в одной конторе.
Картриджи меняешь?
>Типа мне известна теория базовая вплоть до ООП, но четкого понимания как что и зачем и когда юзать нету. То есть я зная например о классах могу хуячить весь код в мейне, и даже не заподозрить неладное.
Достаточно проехта, который по размеру вылез за пару-тройку тысяч строк, чтобы уж точно появились мысли о раскидывании функционала по разным классам.

Ты, по ходу, ничего длиннее "Hello, world!" не писал.
Аноним 08/12/21 Срд 16:01:17 #37 №259266524 
>>259251735 (OP)
>У меня просто шиза
Так и начинал бы с этого, твои товарищи по палате не просто так сидят на пенсии, психика разрушается вместе с когнитивными способностями.
Аноним 08/12/21 Срд 17:13:40 #38 №259270578 
>>259251735 (OP)
>проганьем
>червепидором
>залупу
>хуячить
>юзать
>шиза
привет, дегенерат-вайтишник.

Проблема в том, что ты пошел в программирования из-за денег или безысходности, на оно само тебе интересно. Поэтому и твой мозг не хочет и не будет его воспринимать. Так что твой уровень - это вечный джун, страдай или иди на завод. Или делай то что тебе интересно - сиди на диване и смотри сериалы
Аноним 08/12/21 Срд 17:14:31 #39 №259270628 
>>259270578
Держи в курсе
Аноним 08/12/21 Срд 17:29:51 #40 №259271446 
1308239380906.png
14882222545650.png
14882231531920.png
>>259251735 (OP)
Аналогично. Да, я знаю, что существуют паттерны. Я могу объяснить на собеседовании, что такое синглтон и зачем он нужен. И про солид знаю. И "Чистый код читал". Но когда пишу реальный код, то быстро в нём вязну. Когда ТЗ меняется в процессе и теперь нужно где-то в потрохах кода добавлять лишнюю проверку, и в зависимости от результата скорректировать работу ниже и выше этого участка. Появляются какие-то магические числа, в параметры функций уходят уже по 6-8 переменных, и так далее. Код становится монструозным и его тяжело "загружать в мозг", чтобы погонять чисто там. Всё чаще приходится писать строчку и смотреть, чего будет. Хорошо - ну ок, пишем следующую. Не получилось? Ну, попробуем тут тип данных изменить, может в этом проблема? А, нет, проверка на ноль. Тоже нет. Так, что там вообще эта хуйня возвращает? Инт, но может и false. Или перехватить сразу эксепшен и стринг выдать... Таааак, падажжи, ёбанарот...
Аноним 08/12/21 Срд 17:31:27 #41 №259271537 
1409657643260.jpg
>>259251735 (OP)
Абсолютно все программисты, которых я знаю, считают что они нихуя не умеют.
Аноним 08/12/21 Срд 17:32:27 #42 №259271595 
Что делать между изучением основ (сейчас перешёл к ООП, что-то уже знаю, но курс на ютубе скоро закончится) и первой работой джуном? Как мне понять, чем хотел бы заниматься? Что изучать дальше? Где смотреть реальные задачи, с которыми столкнусь? Как готовиться к хакатонам? Мне кажется, после прохождения основ сразу становится очень сложно, так как основная масса уже успела бросить, а оставшиеся ещё дауны в плане программирования.
Аноним 08/12/21 Срд 17:37:12 #43 №259271855 
>>259271595
О себе: студент околотоп вуза дс, основной предмет физика, но хорошо преподают и инфу, и математику, и английский. Нравятся финансы, хотел бы работать в сфере, где есть и экономика, и сложная математика, и программирование. Ещё присматриваюсь к консалтингу. Учу C++, когда курс на ютубе досмотрю, продолжу учить C++ в вузе и буду учить ML по этому треду: https://2ch.hk/pr/arch/2016-07-28/res/776147.html
Есть, что я делаю не так?
Аноним 08/12/21 Срд 17:37:32 #44 №259271871 
Бамп
Аноним 08/12/21 Срд 17:40:08 #45 №259272013 
>>259271855
>Есть, что я делаю не так?
Мл в рашке это говно
Аноним 08/12/21 Срд 17:42:44 #46 №259272143 
>>259272013
Удалёнка совсем не вариант? Где максимальный порог вката, но и максимальный потолок по зарплатам, в таком случае? ML для меня выглядит таким.
Аноним 08/12/21 Срд 17:45:21 #47 №259272305 
16205768372010.png
>>259251735 (OP)
Начни код писать, а не надрачивать свое эго видеокурсами и статьями.

Придумай проект и сделай его от и до, пиши как тебе удобно и в конце концов ты прекрасно поймешь для чего придумали всю эту хуйню с "как, что и зачем". Как только запутаешься в каше в 30к строк кода, поймешь зачем делить на классы. Как только продебажешь 2 дня баг поймешь зачем нужно инкапсуляция, как только перформанс будет никакой на твоей 3090 поймешь за оптимизацию.
Аноним 08/12/21 Срд 17:49:27 #48 №259272521 
>>259272143
Ты как-то не так себе навоображал
Удаленка то там есть как и везде
Суть в том что вся работа сократилась до банков, порог не высокий для вката, а выебанный, каждый просит свой набор технологий, одна фирма гоняет гномиков(дрочит тебя 6ю собесами), другая просит какие-то свои проекты(ох лол, проекты в мл), и берут в-основном тех кто на практику от сбера из универа попал, если сможешь попасть на нее - то в принципе ок. А потолок по зп там не самый прикольный далеко. Может ты на Бабушкина насмотрелся с этим кудрявым пидором из Аликспресса, но сеньор в МЛ получает так же как и сеньор обычный дев любой хуйни.
Проблема в том что тут учить в 10 раз больше, даже не сложнее, а тупо больше. Плюс ты сейчас устраиваешься не на работу мл-инженера/ресерчера, ты гарантированно устраиваешься на полный фарш от мл-опса до аналитика, с дата-инженером посередке, тебе надо уметь тупо все во всех фреймворках. Популярность всей этой хуйни очень упала, плюс она прибыльна когда у фирмы/страны есть бабло на такую хуйню. Их сейчас туговато и в США держат, про рашку вообще даже говорить не стоит.
При этом все дата-сатанисты черви-пидоры лютые.
Аноним 08/12/21 Срд 17:55:08 #49 №259272805 
>>259251735 (OP)
>У меня просто шиза, что я не могу нормально воспринимать электронную литературу тк у меня начинают болеть глаза, да и если она на ангельском то восприятие заметно уменьшается (как говорится тут бы суть понять а еще перевести надо).

Первых 4 слов достаточно. Имея 10 лет опыта я все равно гуглю каждое второе действие, потому что помнить всю эту ебань можно только если ты дрочишь 1 фреймворк всю жизнь.
Аноним 08/12/21 Срд 18:00:27 #50 №259273095 
>>259272521
Куда бы ты посоветовал вкатиться в моём случае тогда? Ещё раз кратко:
- время для вката не сильно важно: 4-5 лет
- порог для вката не важен, математику буду знать очень хорошо к моменту выпуска, книжки не пугают
- вуз хороший, есть возможности для участие во всякой хуйне от яндекса, сбера, майлру, циско-хуиско и так далее
- главный приоритет - высокий потолок в зарплате
- приоритет поменьше - возможность для съёба, возможность запилить что-то своё в перспективе
- ещё поменьше - что-то связанное с банками, финансами и так далее
- хотелось бы иметь возможность работать удалённо, но в целом похуй
Аноним 08/12/21 Срд 18:05:04 #51 №259273376 
>>259273095
Ну учи с++, на 3 курсе ищи стажировки, раз ты пиздатый студент без проблем найдешь
Аноним 08/12/21 Срд 18:06:17 #52 №259273442 
>>259273095
Ну тебе в мл и идти как бы, только говорю же в рахе это шкварная работа и люди говно
Тем более никто не скажет что там будет через 5 лет
5 лет назад нейронки писали чисто кодом на ванильном питоне(разве что с нумпаем), а теперь вон уже бочку катят на тенсорфлоу с пайторчем, тренируют ауто-млем, т.е. самонастраивающимся фреймворком. Ты если прямо сейчас сядешь учить например реинфорсемнт-лернинг(с подкреплением на русском называется), то за год выучишь то что устареет, ты не будешь успевать следить за обновлениями просто. У профессионалов это не вызывает проблемы, так как инструменты направлены на упрощение работы мл-инженера и отдалении от математики, но для тебя как джуна-вкатуна это негативный аспект, потому что нахухоленные долбоебы которые вкатились на заре сферы думают что ты дурачок, даже не подозревая насколько они сами дурачки.
Я не могу советовать за ничего кроме мобилок, мобилки никуда не денутся и мобилки анально огорожены гуглом и эплом в плане инструментов разработки.
То что у меня есть проект с CoreMl в гите и указан питон+тенсорфлоу в языках - меня начали звать на мидла мл, но нахуй оно надо
Аноним 08/12/21 Срд 18:09:25 #53 №259273611 
>>259273376
Я пиздатый студент по физике и матану, но возможность участия есть у всех, кто здесь учится. Преподают как раз C++, так что бросить его не смогу ещё года полтора. Стажировки ищу пока в консалтинге, учусь решать кейсы.
>>259273442
Понял, анон, спасибо за ответ, попробую ещё тред создать.
Аноним 08/12/21 Срд 18:26:02 #54 №259274647 
>>259270578
А мне что делать? Я первые 3 курса горел программированием, когда учился, мне было интересно в нем разбираться, читал книжки всякие. На 4 курсе понял что оно мне нахуй не интересно больше. Вот уже 3 года сижу с вышкой на шее у мамки. Пиздец.
Аноним 08/12/21 Срд 18:27:13 #55 №259274726 
>>259274647
Тебе не похуй чем бабки зарабатывать? Ты думаешь работники пятерочки горят своей работой что ли, лол.
Аноним 08/12/21 Срд 18:28:50 #56 №259274829 
>>259270578
>Проблема в том, что ты пошел в программирования из-за денег
Ой, вот только не надо этого "настоящие программисты кодят не ради денег, а по призванию!". Это попытка самоутвердиться (я луше вас!) от школьников и студентов, и наглая ложь от тех, кому больше 25 лет.
Аноним 08/12/21 Срд 18:29:59 #57 №259274906 
>>259274726
Ну я же паграмист а не какой та там кассир за 15к епта. Ты мне по солидности такую же работу предложи лучше как вайти, но интересную мне. Нахуй меня мой мозг наебывал 3 года, а потом как шлюху на мороз выкинул за год до диплома?
Аноним 08/12/21 Срд 18:34:36 #58 №259275236 
>>259251735 (OP)
Крэг Ларман. Применение UML 2.0 и шаблонов проектирования.
Аноним 08/12/21 Срд 18:37:52 #59 №259275456 
>>259274906
>но интересную мне.

Такой не существует, тебя любая айтиработа заебет через 2 месяца
Аноним 08/12/21 Срд 19:09:31 #60 №259277421 
>>259272305
Так я на РАБоте код и пишу
comments powered by Disqus

Отзывы и предложения