Мемы
Артем Бычков
4857

Думаешь, что твой код говно?

Сейчас передумаешь.

Материал опубликован пользователем.
Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Артем Бычков", "author_type": "self", "tags": [], "comments": 114, "likes": 61, "favorites": 60, "is_advertisement": false, "subsite_label": "kek", "id": 103087, "is_wide": true, "is_ugc": true, "date": "Fri, 14 Feb 2020 08:32:51 +0300", "is_special": false }
0
{ "id": 103087, "author_id": 132739, "diff_limit": 1000, "urls": {"diff":"\/comments\/103087\/get","add":"\/comments\/103087\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/103087"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64966, "last_count_and_date": null }
114 комментариев
Популярные
По порядку
Написать комментарий...
44

Работает? Приносит 4к долларов в месяц? Не так страшно.

Ответить
2

Тупо гений! Минимум усилий - максимум прибыли!

Ответить
6

Не назвал бы повторяющиеся участки кода минимальными усилиями

Ответить
0

Уже под 2500 скатился и продолжает падать потихоньку

Ответить
0

Чем занимается автор?

Ответить
6

"Разрабытывает" Yandere Simulator c 2014, имея посредственное умение программировать (что высмеивается в видео), не воспринимает конструктивную критику, банит людей на своём твиче/дискорде за это, при этом всём имеет базу фанатиков, которые спонсируют его "работу" на Патреоне.
https://youtu.be/b_6V-iSbMM0
Можно на ютубе глянуть, много интересного про него есть.

Ответить
8

То-есть он все делает правильно? Делает игру на отъябись, получая 150тысяч в месяц. Мне кажется, он все делает правильно 

Ответить
1

Ну наёбывать людей он правильно умеет. Только конец у него будет печальный.
Читал, что он даже нанимал другого кодера, чтобы тот разобрался в его коде. В итоге отказался от его услуг, т.к. не смог разобраться в хорошем коде лол

Ответить
0

А в чём он наёбывает конкретно, можно по пунктам?

Ответить
0

Обещания больше результата. За все годы прогресс крайне медленный. Такими темпами он ещё 10 лет может делать игру, а то и дольше.
Создаёт видео про видимость прогресса, а люди хавают.

Ответить
38

Думаешь, что твой код говно? Сейчас передумаешь.

но ведь это и был примерно мой код...

Ответить
–2

а еще я люблю хранить данные в бд в виде строки "1;2;3;4;@5;6;7;8;@", а потом сначала "$arr = explode ('@', $str)", а потом в цикле еще "$expl_arr = explode (';', $arr[$i])". а все эти цифры в еще одном цикле в sql запрос типа "SELECT label FROM table WHERE id = $expl_arr[$j]"

насколько это ненормально? 

Ответить
3

А зачем так делать? Вообще выглядит так, будто ты просто не шаришь за SQL, поэтому пытаешься таким образом это компенсировать. Если отвечать на твой вопрос, то это довольно ненормально. Лучше попробуй изучить SQL, чем городить такие вещи)

Ответить
0

потому что влом делать таблицы типа user_id object_id:D

Ответить
9

я думал это у меня с нормализацией бд проблемы о_О 
Что это за дичь вообще

Ответить
0

эта дичь – мое извращенное чувство прекрасного

Ответить
0

Я понял, ты просто взял картинки из инета и угадаешь над нами

Ответить
1

Это я скриншот из пхпмайадмина сделал(:
Ты слишком хорошо обо мне думаешь...

Ответить
0

А наухя тогда вообще использовать реляционную базу?

Ответить
1

делаю троллейбус из буханки. нельзя?

Ответить
0

Если пишешь для себя, то хоть в текстовый фай сохраняй
Если в команде на продакшн - нет, нельзя :)

Ответить
2

Так postgree вроде умеет массивы нормально хранить

Такие запросы будут медленно работать

Ответить
–5

я как-то делал большую штуку с бд, где-то накосячил и больше им не доверяю (хотя сам виноват, да). так что предпочитаю все на коде делать (еще бы данные хранить в коде ( ͡° ͜ʖ ͡°) )

ну это опять же не для всего подряд, а так – например, утром в пятницу как-то спросили, "можно ли организовать вот такую-то штуку? подумай до понедельника". а в обед я уже ее запустил.

Ответить
1

Ну, это странно. Даже если не охота, по тем или иным причинам, заводить отдельную таблицу, то почему бы не использовать тот же JSON, а не городить свой формат сериализации данных?

Ответить
–1

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

Ответить
3

 JSON — не люблю работать с файлами

JSON это не про файлы, а про формат, который легко парсить, хранить и в который легко сериализовать. Гугли NoSQL, MongoDB и прочее.

Ответить
0

Это боль, как ты делаешь выборку по определенному пользователю? Я себе уже представляю тонны портянок-_-

Ответить
1

Это боль

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

Ответить
0

Ну вот кстати всего остального у меня вроде нет.

Ответить
0

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

Ответить
0

Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живёте ©

Ответить
17

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

Ответить
1

Если люди за это готовы платить, то пусть делает как делал.

Ответить
0

Или вообще через плебей-мейкер:D я вот тоже не кодер, но на нем можно немало интересного намутить :3

Ответить
17

16 Jun 2018

На острие (не)смешных мемов как обычно, да?

Ответить
4

Поясните для тех кто не шарит

Ответить
35

Условно, чел пишет код на уровне первого класса, кодеры бомбят. Чуваку похуй, ведь он получает бабки. Кодеры бомбят еще больше.

Ответить
8

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

Ответить
0

Пиши жалобу ютуберу и автору поста

Ответить
0

C# очень хорошо декомпилируется.

Ответить
0

Ну это не отменяет, что код в конечном итоге может отличаться от написанного 

Ответить
0

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

Ответить
1

Судя по тому как он реагирует на троллинг и критику - ему совсем не похуй

Ответить
0

Критикуют игру или код?

Ответить
0

И то, и другое, и даже его самого, и там есть за что критиковать

Ответить
0

Ну расскажи мне, раз интриги нагнал

Ответить
0

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

Ответить
2

Не знаю. В своём блоге он очень вежлив. В дискорде ничего такого не видел. Писал ему письмо лично - ответил и поблагодарил.

Ответить
0

Мде, над будет глянуть видосы.

Ответить
0

ну если все так хуево, чо они все тогда играют в нее и платят за это бабки?

Ответить
0

В том то и дело что денег ему стали давать меньше. Ещё в году 2018 он получал 4к в месяц с Патреона, а сейчас отметка ниже 2500 долларов в месяц

Ответить
0

Это нормально. Раньше он выпускал хайповые обновления - и люди донатили. Теперь он сидит и тестирует игру и чинит баги, но ему нечего показать - деньги падают и вылезают тролли с криками "посммотрите, он нихуя не делает, какая сволочь"

Ответить
0

я к тому и веду, что какая разница как говено сделан продукт, если он решает проблему конечного пользователя и тот по сути доволен им

Ответить
1

I don't get it

Ответить
0

Хахахах

Ответить
14

Господи, а можно так не орать

Ответить
13

Примерно что-то такое я видел в ранних релизных версиях Stardew Valley. Например, одна большая функция, которая обрабатывает взаимодействие со всеми несколькими сотнями предметов .–.
Тут правило такое: если ты сам не умеешь писать код, пиши так, чтобы хотя бы тебе было понятно. А на высокие стандарты наплевать, чай, не на выставку отправляешь.

Ответить
0

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

Похоже некоторые кодеры воздерживаются от того, насколько это критично. А некоторые наоборот, как в Stardew Valley, вылизывают и это как бы нормально в первых альфах там.

Ответить
7

Запрашиваю код автора поста.

Ответить
4

Возможно, мой код и не говно, но $2к+ всё равно имеет тот чел, а не я. 😆

Ответить
3

Думаешь, что твой CoD говно?

Ответить
3

Респект парню. А хейтеры пускай и дальше пишут свои лабораторные работы "по идеальному", не зарабатывая ни копейки.

Ответить
0

else if
else if
else if
else if

Ответить
8

Моя любимая конструкция. Да я не знал про case до 2017 наверное

Ответить
0

я только сегодня узнал, что в switch case можно использовать условия. хотя хз, во всех ли языках🤔

Ответить
3

В питоне нет switch-case конструкции

Ответить
0

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

Ответить
2

Switch-case спокойно реализуется с помощью отдельного метода/функции c:
if () {
...;
return;
}
if () {
...;
return;
}
if () {
...;
return;
}

В Питоне на 99% так же. 

Ответить
0

а с дефолтом как быть?

Ответить
0

а, можно просто после всех if вынести return, ок

Ответить
1

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

Ответить
1

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

Ответить
1

Не во всех далеко.

В питоне даже конструкции нет)

Ответить
0

Так это и добавили недавно 

Ответить
1

Ну вот не надо. В шарпе switch с незапамятных времен. Единственное, что менялось - это типы возвращаемых значений. Например с C# 7.0 можно уже возвращать все типы кроме null.

Ответить
0

Я же выше написал, что вот про эту фигню, а не сами свитчи 

Ответить
0

Как и написал товарищ Григорий, switch в семействе си существует давно и прочно. То, что они ввели в 7 версии Четырёх Крестов - это дополнительные финты в обращении с этой конструкцией, такие, как case .. when.. , неявное сравнение типов и прочие.

upd. Неправильно понял комментарий, видимо, это и имелось в виду. Пишите яснее.

Ответить
1

Так я про них и говорю, а не про весь свитч 

Ответить
0

c# пока тоже не трогал, в основном использую плюсы, ну и сайтострой стартерпак, где php + js

Ответить
0

Правду говорят век учись.

Ответить
0

пошел исправлять, в общем

Ответить
0

Ну в C# это вроде бы недавно добавили, где-то в 2017-2019

Ответить
0

switch? Он там всегда был с самой первой спецификации.

Ответить
0

switch(){

case (expr) when(conditional):

break;
} я про это 

Ответить
0

Это не шарп. Откуда ты такое взял вообще?

Ответить
0

Это шарп, с версии 7.0 

Ответить
0

Какое-то особо извращённое использование шаблонов не по назначению.

Ответить
0

Наверное в турбо паскале его тоже нет. А вот в руби вроде должен быть, как и в жс

Ответить
0

В жс вроде в кейс можно выражение кинуть, но могу ошибаться.

Stick your expression in my case. Ohhh.

Ответить
0

В Swift тоже есть:)

Ответить
0

Я только в паскале, плюсцах, руби, жс и чутка питоне кодил.

Ответить
0

если у тебя в коде  есть "case ", то у меня для тебя плохие новости. Надеюсь что в 2020 ты узнаешь про ООП

Ответить
1

Про ООП я знаю, но я прост не особо кодил после ЕГЭ. Но может объяснишь что я не правильно написал?

Ответить
–1

Если знаешь про ООП и будешь писать сложные проекты то сам придёшь к этому очень быстро.

Ответить
0

К чему, я чот вообще не понимаю о чем ты.

Ответить
0

Он говорит что тогда ты начнешь обмазываться классами по делу и без 

Ответить
0

Эээ, ладно сделаю вид что все понял

Ответить
0

Это какие у вас там новости? Экстрасенсы ставят диагнозы?

Ответить
0

В 2020 уже пора бы узнать про ФП, незлоупотребление ООП и паттерн матчинг, но ок

Ответить
0

Ну, после того как в C# завезли более-менее нормальный Pattern Matching, switch-case, через который этот Pattern Matching реализуется, перестал быть злом.

Ответить
0

нейросеть

Ответить
1

Я в Web работал. Говноверстальщики загружают на сайты преьюшки в jpg и размером в 800 кБ. Лень две кнопки нажать, чтобы уменьшить размер изображений. 

ЫЫЫЫЫ У МИНЯ ЖИ ГРУЗИТСЯ ЗА ПАРУ СЕКУНД ЧО ТЫ

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

Ответить
1

А в каком формате лучше превьюшки грузить (если не в jpg)?
Мне реально интересен более оптимальный путь

Ответить
1

Как понимаю, тут основная претензия к размеру превьюшки (800 кб). Ну и, вроде как, сейчас формат WebP модным становится.

Ответить
0

Я написал про размер, оптимизацию а не про формат изображения. Можно и jpg и svg. 

А когда можно реально увеличить скорость загрузки - в чем проблема нажать две кнопки?  Иногда jpg в 200 на 200 1 200 Кб, это нормально? Ее можно сжать без потери до 15. И скорость загрузки увеличиться и трафика меньше. Только лень верстальщика или вебмастера. 2 клика и изображение сжато. 

Ответить
1

Не видно повсеместного GameObject.Find, так что уже не так плохо

Ответить
1

Немножко оправдаю парня. Есть разработчики. Это люди, задача которых - писать хороший, легко читаемый и поддерживаемый код. А есть куча других специальностей, которые пишут код, но они не программисты. Например, сис админы могут писать скриптики, "учёные" могут писать какие -нибудь простые вычисления, или что то простенькое на VBA для упрощения работ. Их работа заключается не в написании кода, для них - это инструмент. И да, все выиграют от того, что они будет писать хороший код. Но глупо от них этого требовать. И парень, по сути, не программист, он не делает ПО, он делает игру. И гавно код от этого не становится лучше, но и ржать над ним - тупо

Ответить
0

Ничего не понял, но очень смешно.

Ответить
0

Выглядит, будто код сгенерирован каким-то генератором кода. Хотя, видел я людей, которые действительно так писали.

Ответить
0

Приходил на 2 проекта, и в обоих код выглядел гораздо хуже, но оно работало, и приносило деньги). Тем временем я выбрасывал весь код, и писал с нуля весь проект)

Ответить
0

А мне за 2 года 300 баксов принесла игра, что-то не так делаю.

btw. как они модельки то из ммд тащат?

Ответить

Прямой эфир

[ { "id": 1, "label": "100%×150_Branding_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox_method": "createAdaptive", "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfl" } } }, { "id": 2, "label": "1200х400", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfn" } } }, { "id": 3, "label": "240х200 _ТГБ_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fizc" } } }, { "id": 4, "label": "Article Branding", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "cfovz", "p2": "glug" } } }, { "id": 5, "label": "300x500_desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "ezfk" } } }, { "id": 6, "label": "1180х250_Interpool_баннер над комментариями_Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "ffyh" } } }, { "id": 7, "label": "Article Footer 100%_desktop_mobile", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjxb" } } }, { "id": 8, "label": "Fullscreen Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjoh" } } }, { "id": 9, "label": "Fullscreen Mobile", "provider": "adfox", "adaptive": [ "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fjog" } } }, { "id": 10, "disable": true, "label": "Native Partner Desktop", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyb" } } }, { "id": 11, "disable": true, "label": "Native Partner Mobile", "provider": "adfox", "adaptive": [ "phone" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fmyc" } } }, { "id": 12, "label": "Кнопка в шапке", "provider": "adfox", "adaptive": [ "desktop", "tablet" ], "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fdhx" } } }, { "id": 13, "label": "DM InPage Video PartnerCode", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox_method": "createAdaptive", "adfox": { "ownerId": 228129, "params": { "pp": "h", "ps": "clmf", "p2": "flvn" } } }, { "id": 14, "label": "Yandex context video banner", "provider": "yandex", "yandex": { "block_id": "VI-250597-0", "render_to": "inpage_VI-250597-0-1134314964", "adfox_url": "//ads.adfox.ru/228129/getCode?pp=h&ps=clmf&p2=fpjw&puid1=&puid2=&puid3=&puid4=&puid8=&puid9=&puid10=&puid21=&puid22=&puid31=&puid32=&puid33=&fmt=1&dl={REFERER}&pr=" } }, { "id": 15, "label": "Баннер в ленте на главной", "provider": "adfox", "adaptive": [ "desktop", "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "byudo", "p2": "ftjf" } } }, { "id": 16, "label": "Кнопка в шапке мобайл", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "adfox": { "ownerId": 228129, "params": { "p1": "chvjx", "p2": "ftwx" } } }, { "id": 17, "label": "Stratum Desktop", "provider": "adfox", "adaptive": [ "desktop" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvb" } } }, { "id": 18, "label": "Stratum Mobile", "provider": "adfox", "adaptive": [ "tablet", "phone" ], "auto_reload": true, "adfox": { "ownerId": 228129, "params": { "pp": "g", "ps": "clmf", "p2": "fzvc" } } }, { "id": 20, "label": "Кнопка в сайдбаре", "provider": "adfox", "adaptive": [ "desktop" ], "adfox": { "ownerId": 228129, "params": { "p1": "chfbl", "p2": "gnwc" } } } ] { "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJwcm9qZWN0SWQiOiI1ZTRmZjUyNjYyOGE2Yzc4NDQxNWY0ZGMiLCJpYXQiOjE1ODI1MzY0Nzd9.BFsYFBgalfu_3oH9Fj-oBhiEgVx976VQfprRahAELFQ", "release": "3c305b26" }
{ "jsPath": "/static/build/dtf.ru/specials/DeliveryCheats/js/all.min.js?v=05.02.2020", "cssPath": "/static/build/dtf.ru/specials/DeliveryCheats/styles/all.min.css?v=05.02.2020", "fontsPath": "https://fonts.googleapis.com/css?family=Roboto+Mono:400,700,700i&subset=cyrillic" }