- 1
for (val side: new boolean[] { false, true }) {
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+143
for (val side: new boolean[] { false, true }) {
А что там дальше-то?
> true
> false
А какую сторону силы выбрал ты - светлую или тёмную?
Только придётся для каждого примитивного типа отдельный метод написать.
val SIDES={false, true};
Вообще по-хорошему надо было энум запилить, как-то не подумала об этом с самого начала, а то неочевидно, что false - это лицевая сторона, а true - оборотная. (Методы обычно принимают флаг isBack.)
Никогда, НИКОГДА не пишите функций, которые принимают булевские флажки. Код гораздо удобнее читать и расширять, если вместо булевский значков будут енумы. Даже если значений всего два, у енумов enum MyFlag { YES, NO } неоспоримое преимущество. Сравним:
>>боже, о чем я говорю, это же жаба
Правда энумы до последних пор были с другой сишко- кресто- особенностью: наличием разных подлых граблей.
> оверхед от енумов в жабе больше, и всё же мне хочется услышать, где ты хотел сберечь такты.
Нам же надо обойти все элементы? Метод values() энума каждый раз копирует его элементы в новый массив. Об этом часто забывают.
Из-за того, что невозможно запилить иммутабельный массив?
Еще одно гоатсе.жпг? Мож обойдемся?
Даёт же. Как минимум одно - не доябываются с просьбой показать сиськи.
А, ну да, точно! Как же я могла забыть?! БОНУСЫ жеж! Бонусы в форме того, что тебя хотят трахнуть какие-то мужики. Тебе таких бонусов очень не хватает, бедняжка. Ну извини, забылось чёт.
Да неужели? Так может это, у тебя тоже есть БОНУСЫ? Или скажешь, что они есть у тебя только на вуман.ру (потому, что женский сайт), а на ГК – нет (потому, что он типа мужской).
И с чего ты вообще взял, что все люди – гетеросексуальны? С учётом твоего существования, например, это очень спорное утверждение.
Давай-ка сюда пруфы того, что деффачки не умеют в программирование.
Уже предвижу твой обосрамс в духе статистики: "Баб-паграмистов меньше чем мущщин!".
Твой железный пруф, я так понимаю – это бабахнуть жопой и заминусовать всех в комментах. Найс.
от 1000 толку мало будет.
Неоспоримое преемущество шарпа нэймед параметров.
1. Ленивый программист не забудет написать lazyInit.
2. Если сделать enum Init { Lazy, Eager }, то можно будет добавить какой-нибудь Mixed без потери обратной совместимости.
Из недостатков - нельзя менять порядок, и тут на смену енумам приходят объекты опций.
Правильно. Лучше пишите функции которые принимают intы - там места больше. &1==1; |=1; наше всё.
>db.connect(true);
>db.connect(LazyInit.YES);
LazyInit type;
db.connect(type); //type may be null
Азаза, мой код NPE-безопасен!В энумах есть мегакошерная штука: методы и их полиморфизм.
Выходит, надо во всех местах, где функция используется менять if на switch, городить ветвления, бросать исключения в ветке default или как-то ещё обрабатывать. Писать по 1000 строк свичей в день ради того, что в будущем надо будет эти тысячи строк читать и добавлять обработку новой опции.
Или вот было у нас два взаимоисключающих варианта (юзер - админ; включено - выключено), а кто-то нехороший воспользовался enumом и добавил третью (модератор; загружается). Старый код с enumами компилируется и работает (обратная совместимость же!) но делает сущий бред. При переходе от bool к enum он бы не скомпилировался, да, нехорошо. Но править почти каждый случай вызова нашей функции всё равно придётся.
Итого:
- Лишние свичи
- Лишние определения типов
* Дублируются подсказки IDE (если говорим про жабу, будет и IDE с подсказками; В c++ да, можно без IDE)
+ При добавлении нового варианта ничего не падает
* При добавлении нового варианта всё равно надо просмотреть места вызова
+ Видно, что за параметр у функции
Выходит, это будет полезно в C++ для случаев, когда варианта ровно два или ровно N, и это скорее всего не будут менять.
DONT DO THIS.
ЖабоСвищи NPE-опасны. Много раз говорил.
Так что там не только default но и null надо обрабатывать.
Отстаёшь с цитатами :D
DoSmth(true);
DoSmth(false);
что сводиться к
Вообще какое то странное и непонятное решение. Говно кароч
Паттерны не придумывают, их открывают (c)
Полагаю, автор писал-писал работу над коллекциями, да и вошел с этим подходом в резонанс, а тут нужно выйти на минуту из контекста и просто два раза вызвать функцию. Ну, и на автомате сделал так.
А может, автор проголодался и в нём проснулся внутренний питон с его for x in [False, True].
интереснее вопрос почему жаба это не может соптимизировать. из контекста очевидно что массив не меняется. та же проблема и не только в жабе - кресты, перл, питон. промоушн в константы (с последующей оптимизацией как константы) почему то плохо во всех языках сделан.
Почему не может? Можыд hotspot давно это оптимизировал? Теоретически никаких ограничений нет. НО ЗАЧЕМ?
>та же проблема и не только в жабе - кресты, перл, питон.
Конструктор с сайт-эффектами. Надо чтобы VM "понимала" и могла доказать, что
а) объект не меняется в локальном цикле
б) объект не утекает (массивы в жабе мутабельные)
в) конструктор не содержит сайд-эффекта.
г) не всегда приятно что машина умнее тебя. А вдруг я ХОЧУ чтоб это были разные объекты (проблема ABA)
А теперь я пойду и удалю какаскрипт со своего компа навсегда. А ты плачь, омега-программист
>А теперь я пойду и удалю какаскрипт со своего компа навсегда.
Ну какие же вы с 1024-- бессовестные.
Сёма три дня и три ночи ебашил в поте лица вайпо-скрипт в надежде всех тут потрясти, а вы сделали ответку за пару часов и пересрали его. Бедная Сёма.
Не стыдно вам?!
Он первый начал....
Видимо Сёма всё никак не может найти на свалке рабочий огнетушитель.
Они ну ооочень нужны. На гк уже начали банить по ip?
Ютуб не поёт и еще ГК не пускает на хуй жить.....
Это гениально!
у нас все норм
Что? Что хотел выразить автор в этом изречении?
Пи, посмотрите, тут покрупнее - шедевр лучше видно.
И зачем нам автогенератор, когда на ГК есть такие мастера словесности?
А продолжение - какая-то смысловая питушня. Колпак какой-то, пляшет кто-то... Может, это отсылка к какой-то известной книги, которую я не читал и потому позорюсь. Но смотрится слишком безумно.
P.S. А, или это анальные клоуны? Впрочем, выражение продолжает смотреться безумно.
Когда нормальные люди остаются без педогеев им становится скучно - никто же не пляшет в колпаке... (для их увеселения)
опечатался, сорри
Или у меня сонное восприятие такое.
В общем, полезно попытаться прочитать это так, как будто писал автогенератор, и всё самостоятельно прочувствовать.
Кстати, недавно на баше была цитата про пьяных, которые три раза друга домой отправляли. Тот три раза садился в такси называл адрес отправления в качестве адреса назначения. Таксист говорил, что они уже приехали, пьяный платил деньги и выходил, а друзья его радостно встречали и все они опять шли квасить.
>И зачем нам автогенератор
Не буду кривить душой - у меня бывает тоже косноязычие проскакивает, однако тут достойный конкурент небольшому скрипту.
Ссылка на капчу : http://govnokod.ru/captcha/image?rand=a9c0c8432b3cdd44d20dd141c831c d15
В него можно логины даунов не заносить, он сам детектит. Обязательно испытайте :)
Для повышения креативности вайперов. Именно его считаю предтечей бредогенератора
Годная идея. Попробуй. А сейчас свежие учётки сразу могут писать, или только через 2 недели?
> вайтлист
Вайтлист нубов зарежет, не вариант.
А вообще интересная проблема.
1. Автоматизированные действия отражаются автоматически (вспомним простой и гениальный скрипт Пи или выкашивание мусора парочкой запросов), требуются креативные вайперы или годный рандом.
2. Вручную много не нагенеришь, утонет среди сообщений посетителей сайта.
3. Жители ГК умнее вайперов. Либо пользователю не требуется спамить, либо он недостаточно компетентен, чтобы эффективно этим заниматься.
Поэтому требуется
1. Регистрировать учётки несколько лет с разных IP, чтобы смешаться с толпой. Желательно ознакомиться со статистическими данными о логинах/емейлах айтишников (регистрировать с разных сервисов не стоит: сортировка по домену и выкашивание; пользоваться публичными списками сломанных учёток нельзя; следует брать неизвестные + придерживаться распределения доменов). Логины можно брать на айтишных ресурсах или с помощью автогененатора выводить из логинов ГКшников.
2. Изучить поведение пользователей. Притвориться мимокрокодилами. Поискать и запостить годный ГК или лабу. Оставить несколько комментариев. Возможно, оставлять изредка разумные комментарии.
3. Выбрать день и время для атаки. Если флудить и троллить в выходные, надо атаковать сток. Если в будние дни - выбрать время пиковой активности и достаточно большие треды и оставлять там комментарии с рандомных учёток, в комментариях использовать автогенератор. Придерживаться распределения длины предложений и комментариев, распределения времени между комментариями для одного пользователя. В тредах с N комментариев оставлять примерно N..3N комментариев.
Думаю, если год по вечерам регистрировать и "прокачивать" аккаунты, выйдет неделя плотного вореционного спама, с которым будет действительно сложно бороться.
Но забавно было бы, если б кто это реализовал. Как бы все компоненты уже созданы и отлажены.
План 1024-- слишком умный для реализации его неадекватным дебилом, чтоб это осуществить надо иметь порванную на клочья жопу и на порядок больше ума, чем среднестатистический вайпер.
>требуются креативные вайперы или годный рандом.
Блеать, а я о чём всё время твержу.
>> вспомним простой и гениальный скрипт Пи
Вот я как раз вспомнил скрипт, который часто сопровождается комментарием о креативности.
Кстати я сделал тут пару тупых скриптов: один находит медиану абсолютного значения рейтинга (т.к. большая часть постов - 0), и прибавляет её к отрицательным, вычитает от положительных по предикату abs(rate)>=median/2.
Таким образом выравнивая оценки.
Эх, не взлетит же... Людей на другой сайт то не переманишь, а тут еще и дополнительный софт ставить... Хотя, с другой стороны, неплохой порог вхождения.
> островками по интересам
Самая проблема - что делать с новичками, чтобы не потерять их среди миллионов ботов какого-нибудь стертора...
Сразу давать им полный доступ - не вариант. Гнилые хуи и сочные кавказцы заполонят всю систему. А автомат не сможет сортировать интересы без помощи людей (разве что по кейвордам?).
Привязывать айдишку к паспорту/сотику/втентаклю/етц - уныло и непсевдонимно. Я бы не стал регаться.
Регистрация через биткоин будет довольно эффективна, но не у всех есть кошелёк и не всем захочется проходить этот геморрой ради какого-то ГК.
Инвайт-онли с древом инвайтов и поиском людей только на сторонних ресурсах - оставит за бортом много интересных людей. А потом всех заебёт искать новых участников и получится загнивающая псевдоилитка.
Помойка песочница как на неназываемом будет засрана первым же ботоёбом, и никто не будет лазить в эти авгиевы конюшни за 1-2 адекватами.
Есть еще варианты?
А если сейчас, когда ГК стал родным?
Вообще, не обязательно требовать этого. Достаточно просто давать подтвердившим какие-то привилегии.
Есть телефон - наверно не бот. Прислал видео, где показываешь паспорт - готов ответить за свои слова, не будешь анонимно срать в комментах.
> Инвайт-онли с древом инвайтов
Пообщался со Страйкером/адекватными пользователями где-то в другом месте, показал свои проекты - показал, что адекватен.
Комплексный подход поможет. Хочешь быть анонимом - страдай и пиши адекватные комментарии, чтобы завоевать доверие. Открытый человек - покажи, что реален и адекватен вне ГК и живи.
> Регистрация через биткоин будет довольно эффективна
Кстати, почему? Они каким-то образом проверяют адекватность? С системой не знаком, только слышал про бессмысленную трату энергии и анонимные покупки.
Любой может зарегать 100500 учёток за 0 рублей. Но никто не будет регать 100500 учёток за 100р. А если всё-таки зарегает - неплохой донат проекту :3
> какие-то привилегии
Право постить комменты, угу.
> страдай и пиши адекватные комментарии
Сгенерил айдишку (бесплатно и без смс), запостил готсе, выбросил учётку, профит.
Понял. А я уж подумал, что там какие-то алгоритмы идентификации.
Необязательные пожертвования бы не помешали.
> Право постить комменты, угу.
Ну а что, в реальной жизни то же самое. Не разговаривай с незнакомыми дядями.
Сначала человек представляется, потом с ним проводят какое-то время, узнают его, начинают разговаривать по душам, а в случае официальных коллективов - дают работу/право голоса/другое.
А здесь даже проще: если ты школьник, можно не постить свои фото и видео, а доказать, что владеешь C++, стать в глазах сообщества не школьником, а знатоком C++ и иметь право постить комменты.
...снимает штаны, показывает растянутое очко, и убегает. Так он делает 1000 раз в день. В реале это не всегда катит, да. Хотя даже там прецеденты есть. В интернете же - совершенно никаких проблем. Вспомни "подвесные потолки предлагают вам дружить" в соцсетях.
Самая первая фраза незнакомого человека уже должна фильтроваться каким-то автоматом. До того как она будет показана юзеру.
Поздравляю, вы только что изобрели юзерскрипт.
> Этот фильтр никак не влияет на других людей, но как только неадекват выйдет из сети - его сообщения пропадут, т.к. их никто не сохранил.
А зачем их удалять, если есть фильтр отсеивающий треш? Основная задача как бы решена.
>т.к. их никто не сохранил.
Ну вайпер и сохранил.
Теперь другая проблема - как достаточно быстро распространять посты по сети и синхронизировать пропущенное. У нас же сеть не каждый-к-каждому?
Ссылка на капчу : http://govnokod.ru/captcha/image?rand=ec97ea0dfe7b2034994364a7866cc 5c5
Всем капчам капча. Случайные айдишники не нужны.
- генерится случайная айдишка для капчи через md5(microtime());
- когда браузер запрашивает картинку, генерится случайный рисунок, и код, нарисованный на нём, сохраняется в сессию в духе captchas[id] = code; хранятся последние 5 капч;
- когда ты вбил капчу и постишь форму, из сессии извлекается, удаляется и сверяется сответствующий код.
Не знаю, как тебе так часто везёт... Всё-таки код каждый раз случайный и никак не связан с айдишкой капчи.
Ссылка на капчу : http://govnokod.ru/captcha/image?rand=dfd5ce1cb4d2ff52713e8916ef3f9 fa7
Даже захотелось потратить год ради такого светлого будущего.
Эээ. Поясните свою мысль.
Edit: а. понял. я против модерации и вахтёрства. мне вайперы не мешают, наоборот забавно же.
Кмк, сейчас мы живём светлом настоящем.
Вот и я о том же. Мало на каком ресурсе встретишь настоящую свободу.
Не обязательно же модерации быть кровавой.
Обычно модератор и пользователь не знают или плохо знают друг друга. На ГК же в основном идёт дискуссия между 20..50 пользователями, которые друг друга знают и минусуют примерно одно и то же.
Это там у них "саморегулирующееся сообщество", хе-хе. Никто никого не знает и сливает за мелочи.
Кстати, дико веселит, когда говорят об этой саморегуляции. То есть во-первых, это элементарный беспредел: комментируя пост, человек сталкивается с какой-то случайно выбранной группой людей со случайно выбранными мнениями, которые все вместе могут слить или повысить ему карму (т.е. нет товарищей, нет врагов, нет даже тех, к кому можно подлизаться, в популярных постах есть только толпа). Во-вторых, опасное единство мнений, когда каждый минусит за дело, но в сумме наказание перевешивает преступление. В-третьих, настоящие модераторы. Нет саморегулирующегося сообщества, нет его.
Кстати, словосочетание "немодерируемый ресурс" веселит даже чуть больше. Когда говнокоды с просьбой лакнуть яйца уходят с главной, не набирая 11 минусов, когда выпиливаются вайпы, анонимбы и семёны, я вспоминаю, что это "немодерируемый ресурс". Да, премодерации нет. И там тоже можно писать всякую фигню без премодерации.
Если Страйкер выпиливает вайпы раз в месяц, то ваши права, господа, уже урезаны. Всё, не будет больше светлых деньков. На ГК модерация.
И, в общем-то, не будет плохо, если ещё кто-нибудь будет выпиливать мусор.
Ну и заебись. Интернет для того создавался.
> когда выпиливаются вайпы, анонимбы и семёны, я вспоминаю, что это "немодерируемый ресурс"
Ну я обычно против таких методов, но сиё редкое событие ведь несёт чистейший лулз.
Другой скрипт работает по принципу инвертора, только тут концепт не до конца отлажен: как быть с новыми незаминусованными комментами? Пока он инвертит слишком высокий рейтинг и отстутствие ответов.
В целом надо ориентироваться на rate/replyCount/postCount, выводить из них какую-то цифру и по трешхолду скрывать.
>Если Страйкер выпиливает вайпы раз в месяц, то ваши права, господа, уже урезаны.
Какой раз в месяц? Раз в год, если не больше. Формально я против, но если это брутальное действие рвёт пердак упоротым, почему бы и нет.
> Ну и заебись. Интернет для того создавался.
Но у них из-за этого беспредела нормальные люди могут комментировать только раз в час за случайную провинность.
Но
а) страйкер - хозяин ресурса и платит за хостинг.
б) лулзы окупают это сполна, раз у сёмы за анонимба до сих пор пригорает
в) и давайте начистоту - в удалённом было 90% мусора.
>нормальные люди могут комментировать только раз в час за случайную провинность.
Сейчас только раз в час?
Да в гугле в любом случае что-то старое искать - жопа. Быстро забывает.
> Сейчас только раз в час?
Если быть достаточно хорошим человеком, можно добиться права комментировать не чаще раза в неделю.
> Ну я обычно против таких методов, но сиё редкое событие ведь несёт чистейший лулз.
Ну вот, радуйтесь.
Страйкер в этот раз комментарии только чуть подредактировал. Все тысячи кусочков Стертора остались в память о теперешних счастливых временах.
Но, видимо, не превысили пока.
Да в MySQL древовидные структуры не особо удобно оббегать. А на пыхе скриптик ваять, походу, вломы было.
Отсюда и очевидное решение:
А аки то убили?
Надеюсь, что всех запутал.
Кстати, а говнокод как cgi работает?
http://php.net/manual/en/function.fastcgi-finish-request.php
Браузер получает страницу, а скрипт продолжает работать.
Наконец, есть вариант для истинных ценителей (я тоже где-то о нём писал):
http://kvz.io/blog/2009/01/09/create-daemons-in-php/
Демонизировать пых, а из него открывать сокеты. Правда, таких гурманов пока немного...
Ммм, буква с родины з_ічбага вместо дурацкой евро*ейской? з_ічбаг порадуется.
— Do you want to see a little number 3 in the chat?
— Yes. Show it, please!
— з.
— But how did you do it?
А в чем разница с cgi? Пыхобляди продолжают сосать?
Ты хотел сказать 5 - 10?
13 человек создали более 100 постов/комментариев за прошедший месяц, 67 человек - более 5 штук. У 28 пользователей более 1К комментариев, у 20 - более 2К, у 15 - более 4К, у 5 - более 8К (через 200+ кегданокомментариев будет 6 человек) и только у 3 человек (гость, Борманд, Люр) - более 10K.
Блять, пора мне завязывать с ГК.
Нескоро, но получится.
Кстати на каком я там месте? (Сегодня тут весело - прибавлю в количестве).
Вдруг узнал цифры я пойму что моя жизнь говно и начну ее исправлять
http://pastebin.com/VYn0U4p5 - ещё по к/ам и к/д.
А что случилось с луром 2012-01-01?
Кстати, тоже думал над этим вопросом. Надеюсь, ничего плохого.
Ссылка на капчу : http://govnokod.ru/captcha/image?rand=1e9eb3bf5376504af51f54a5a816b bc5
ты на кого наехал блядь
у него же немецкое образование блядь
у него элитные немецкие свалки
там тебе не техас
если бы он умел, он бы сам написал эту прогу блядь
не надо шутить с войной
ыы я просто ссусь с убогого, он даже бота не осилил самостоятельно
немецкий проффесионналъ
Да осилил вроде бы... Но хули там осиливать то? Сделать GET, выпарсить csrf и ссылочку на капчу, сделать POST, по желанию посмотреть ошибки в ответе... При этом у ГК идеальный XML, который любой парсер ест. Строк 30 кода от силы.
кстати капча пробивается рандомным числом 1/10 примерно. Можно просто обращаться с рандомом пока комментарий не появится
Омг. Должно же быть 1/10000.
Везение? Не думаю
17:57:18
17:57:50 (32 секунды от прошлого коммента)
17:58:21 (31 секунда от прошлого коммента)
17:58:52 (31 секунда от прошлого коммента)
17:59:25 (33 секунды от прошлого коммента)
16:55:17
16:55:55 (+38s)
16:56:26 (+31s)
16:56:56 (+30s)
16:57:26 (+30s)
16:57:58 (+32s)
В общем как-то так: 30 секунд проходит, сервер забивает на проверку капчи, и твой коммент принимается абсолютно с любой.
Вывод: сервер забивает на проверку капчи через 30 секунд после последнего комментария.
Ну знаешь, не все постили гоатсе в цикле. А если не отправлять комменты пачками - эти таймауты хер оценишь. Я всегда думал, что там что-то около минуты или даже двух. Ну и думал, что если сервак капчу показал, то всё, флаг не сбросится пока не вобьешь.
Типа нас кто-то спрашивает. Об этом еще багминот писал. Давным-давно в общем.
Кстати ты ж знаешь что в рекапче можно не вводить 1 букву и второе слово.
Перекапча, одним словом.
Въебал минус, не смог устоять. Извини.
Кстати, в номерах домов очень часто нельзя вводить неправильно даже 1 цифры. Вот если бы люди сразу вводили туда хрень, было бы проще.
Сделайте уже какрму с капчей
Элементарное манипулирование одноклеточными. Радуйся. Порог вхождения повышен.