Home
codingteam
codingteam@conference.jabber.ru
17.10.2016< ^ >

Тема: C, С++, D, Java, C#, Haskell, Ruby, Scheme, Common Lisp, Erlang, OCaml, JavaScript, TypeScript, Clojure, Scala, Nemerle, F#, Groovy, R, Rust, Kotlin.
Backup channel: codingteam@conference.codingteam.org.ru
HQ: http://codingteam.org.ru
Код постить сюда: http://lpaste.net/
Логи: http://tinyurl.com/ctcjr-logs
Юным погромцам сюда: http://e-maxx.ru/algo/ , а ещё читать Кнутца, Корменца, Седжвикца и др.
Morning Tsoding (вт, чт, вс, збс): https://twitter.com/tsoding
Let's Dev (когда Капитан на мостике): http://www.youtube.com/playlist?list=PLK6mcZkmN4QTusFvp_0GVtscQbCiIg81Y
http://i.imgur.com/slnyI6a.jpg
[00:03:32] rexim зашёл в конференцию
[00:04:08] <rexim> Вы куда Минория дели? :(
[00:05:49] <m4n71k0r> а ты скажи три раза "Минору появись!", плюнь на ладошки и разотри по лицу и он появится!
[00:05:53] xmi зашёл в конференцию
[00:06:51] <m4n71k0r> /me, хихикая, убежал в дальний угол палаты
[00:06:55] <m4n71k0r> ы
[00:07:01] <m4n71k0r> ну и ладно
[00:15:23] xmi вышел из конференции
[00:25:25] eaeee вышел из конференции
[00:33:45] eaeee зашёл в конференцию
[00:48:01] eaeee вышел из конференции
[01:01:18] Aman вышел из конференции
[01:02:09] dzhon зашёл в конференцию
[01:03:40] Aman зашёл в конференцию
[01:04:14] xmi зашёл в конференцию
[01:08:39] Aman вышел из конференции
[01:14:44] ɹǝɟılʍǝu вышел из конференции
[01:17:44] Славный капитан вышел из конференции
[01:34:22] dzhon вышел из конференции
[02:22:27] gsomix вышел из конференции
[02:30:58] xmi вышел из конференции
[02:35:51] grouzen вышел из конференции
[02:43:02] xmi зашёл в конференцию
[02:44:43] m4n71k0r вышел из конференции
[03:03:56] rexim вышел из конференции
[03:35:44] xmi вышел из конференции
[03:53:02] unclechu вышел из конференции
[03:53:11] unclechu зашёл в конференцию
[04:02:04] unclechu вышел из конференции
[04:28:40] ckorzhik вышел из конференции
[04:43:33] grouzen зашёл в конференцию
[05:16:54] matraskin зашёл в конференцию
[06:04:32] Славный капитан зашёл в конференцию
[06:29:19] sss|zombie вышел из конференции
[06:30:03] kpecmuk вышел из конференции
[06:52:05] grouzen вышел из конференции
[07:56:45] portnov зашёл в конференцию
[08:00:25] SolarRay вышел из конференции
[08:02:59] portnov вышел из конференции
[08:15:49] <ForNeVeR> Хотел задать Гсомиксу несколько уточняющих вопросов, но его ж наверняка сегодня не будет. Он же на конференцию куда-то полетел.
[08:20:01] iMacDV зашёл в конференцию
[08:20:06] <iMacDV> Всем привет
[08:20:51] <iMacDV> маловероятно, но мало ли... Кто-нибудь пользовался шифрованием в MS SQL Server?
[08:24:30] <ForNeVeR> А чего там можно шифровать? Прям таблицы целиком?
[08:24:54] <iMacDV> на самом деле как угодно. можно всю базу, можно отдельные столбцы
[08:25:04] <iMacDV> там три метода шифрования есть\
[08:25:06] <ForNeVeR> Ого!
[08:25:12] <ForNeVeR> Я не знал про это.
[08:25:35] <iMacDV> сомневаюсь, что часто кто-то пользуется, но мне вот поручили этот момент исседовать и доклад написать и кучу опытов поставить и ваще...
[08:26:19] <iMacDV> в тырнете теория есть как обычно, а на практике как делать пошагово, особенно для 2016 скульсервера - хрен найдешь внятный мануал
[08:40:09] a1batross вышел из конференции
[08:40:10] a1batross зашёл в конференцию
[08:46:13] <ForNeVeR> Я вообще только сегодня узнал, что 2016 уже вышел :)
[08:46:36] <iMacDV> ну значит оно тебе надо =)
[08:49:22] <k0rg> в настройках было в SSMS
[08:49:26] <k0rg> сам не трогал
[08:52:54] <iMacDV> я сейчас вот пытаюсь зашифровать столбец. дюже дотошный механизм. таблица вообще не имеет отношений с другими, без внешних ключей, но при попытке зашифровать один столбец валит кучу ошибок вроде "Error SQL71501: Ошибка при проверке элемента [olap].[FACT_ProductData]: У Представление: [olap].[FACT_ProductData] есть неразрешённая ссылка на объект [dbo].

[FACT_ProductReviewLink].[ProductID]."
[08:53:59] <k0rg> может, стоит п[р]оверить?
[08:53:59] a1batross вышел из конференции
[08:55:51] <iMacDV> да легко. меня напрягает то, что таблица в которой я шифрую столбец не имеет отношения к перечисленным в ошибуке таблицам и представлениям
[08:56:28] <k0rg> мож оно всю БД хочет зашифровать?
[08:56:34] <k0rg> а не одну таблицу?
[08:56:40] <iMacDV> не. я столбец шифрую
[08:59:34] dzhon зашёл в конференцию
[09:02:54] <ForNeVeR> iMacDV: может, ему зачем-то хочется всю БД провалидировать перед шифрованием? И это вообще-то фигня, если у тебя в БД ошибки.
[09:03:52] gsomix зашёл в конференцию
[09:04:04] <gsomix> Утро.
[09:04:53] <iMacDV> ForNeVeR: ну. учитывая то, что это бд востановленная из бэкапа тестовой базы, которую крутят как хотят для опытов, не удивлен, что там могу быть ошибки целостности. но нафиг их проверять при шифровании одного лишь столбца, не понимаю )
[09:05:00] <gsomix> ForNeVeR, что хотел спросить?
[09:05:14] <ForNeVeR> gsomix: а я забыл уже :(
[09:05:23] <gsomix> Старик!
[09:05:27] <ForNeVeR> Да :(
[09:05:35] <gsomix> Я в СПб.
[09:05:41] <ForNeVeR> Ого! И как там?
[09:05:46] <ForNeVeR> Быстро долетел?
[09:06:13] <gsomix> Теплее, чем в Самаре. Долетел за два с небольшим часа.
[09:09:34] <ForNeVeR> gsomix: а, я вспомнил! Чо такое ``N = 2``?
[09:13:16] <gsomix> ForNeVeR, а, да я алиас написал.
[09:13:23] <gsomix> Для фана.
[09:13:47] <ForNeVeR> gsomix: алиас для чего? Для NDims<2>?
[09:13:51] <gsomix> Да.
[09:13:55] <ForNeVeR> Ок, забавно :)
[09:15:57] <gsomix> ForNeVeR, я весь код запушил, если что.
[09:16:05] <ForNeVeR> gsomix: ага, я видал.
[09:16:16] <gsomix> И у нас опять нет функции для индексов. :)
[09:16:19] <ForNeVeR> Ну, что запушил — видал, но не вчитывался пока.
[09:16:52] <gsomix> Надо ишшуй завести.
[09:23:12] dzhon вышел из конференции
[09:23:12] gsomix вышел из конференции
[09:38:33] ɹǝɟılʍǝu зашёл в конференцию
[09:45:38] xmi зашёл в конференцию
[09:50:17] unixorn зашёл в конференцию
[10:04:55] Graf зашёл в конференцию
[10:15:15] dzhon зашёл в конференцию
[10:16:35] <k0rg> ForNeVeR: а можно мня замемберить?
[10:16:49] <ForNeVeR> k0rg: а ты код показал?
[10:17:28] <ForNeVeR> У нас тут строго, просто так не мемберят — даже по блату.
[10:17:51] <k0rg> просто код штоле?
[10:17:57] <k0rg> вопросов у мня пока нет
[10:18:04] <iMacDV> промокод )
[10:18:05] <k0rg> ну точнее был, но ты уже ответил :)
[10:18:13] <iMacDV> его можно найти под крышкой
[10:18:14] <ForNeVeR> k0rg: ну, просто код сложнее хело-ворлда.
[10:18:34] <k0rg> ну, если сёня смогу запилить то, что задумал, то покажу
[10:19:01] <ForNeVeR> Вот если б ты мне такую же функцию самодельную показал, как я тебе нарисовал в dotnet@, то этого б хватило, скажем.
[10:19:11] <ForNeVeR> В общем, что угодно нетривиальное сойдёт.
[10:19:26] <k0rg> ну, до такого мне далеко
[10:19:52] <ForNeVeR> Ну, эт я к тому, что интересного кода можно и немножко.
[10:20:04] <ForNeVeR> А, кстати.
[10:20:07] <ForNeVeR> .member iMacDV
[10:20:07] <DeadBot> ForNeVeR: ok
[10:20:11] <ForNeVeR> Я же твой код видал :)
[10:20:16] <iMacDV> ггг )
[10:20:22] <iMacDV> спасибо )
[10:20:43] <ForNeVeR> Пожалуй, даже в больших количествах, чем хотелось бы ,)
[10:20:44] <iMacDV> k0rg: код способный рассмешить админа тоже, очевидно прокатывает )
[10:20:47] <iMacDV> ну да )
[10:21:09] <ForNeVeR> Да ну, нормальный там код. Задачи решает. В условиях ограничений SQL-сервера.
[10:21:33] <iMacDV> нормальный среднестатистический код...
[10:21:53] <iMacDV> и ваще. размер кода не имеет значения )
[10:21:58] <ForNeVeR> Ну, на Oracle я и не такого насмотрелся. У тебя нормальная ещё ситуация :)
[10:22:06] xmi вышел из конференции
[10:23:49] m4n71k0r зашёл в конференцию
[10:24:23] xmi зашёл в конференцию
[10:33:15] matraskin вышел из конференции
[10:33:16] matraskin зашёл в конференцию
[10:42:18] Kerrigаn вышел из конференции
[10:42:19] Kerrigаn зашёл в конференцию
[10:42:26] <Kerrigаn> утреца, цодингтим
[10:42:31] <Kerrigаn> у меня странный вопрос
[10:43:02] <Kerrigаn> есть под линукс какая-нибудь штука, чтобы следить за звуком без звука?
[10:43:25] <Kerrigаn> хочу попилить связанное со звуком в тишине
[10:44:44] <ForNeVeR> Ты хошь звук в файл перенаправлять вместо звукового выхода?
[10:45:00] <Kerrigаn> в идеале какой-нибудь софт, который показывает волну для каждого процесса в пульсаудио
[10:45:12] <Kerrigаn> ну там амплитуда ко времени
[10:45:31] <ForNeVeR> Ну, мне казалось, что это в линуксе очень просто делается, но как именно — не разумею, сорь.
[10:45:35] <Kerrigаn> лол
[10:45:55] <ForNeVeR> Там же все дрова и инфраструктура открытая. Берёшь какой-нибудь Jack и втыкаешь, не?
[10:46:04] <ForNeVeR> Остаётся вопрос с визуализацией.
[10:46:06] <Kerrigаn> я не хочу джек
[10:47:02] <Kerrigаn> вот блин, нельзя тупо окно на котором рисуется несколько графиков по процессам
[10:47:51] <ForNeVeR> А что, было бы очень удобно. Неужели нету такого?
[10:47:55] <Kerrigаn> не вижу
[10:48:03] SolarRay зашёл в конференцию
[10:48:08] <k0rg> ForNeVeR: http://i.imgur.com/LXYrAFJ.png
[10:48:18] <k0rg> и чота мне не нравятся эти портянки с вопросиками
[10:48:34] <k0rg> три миилиона проверок, штоп кучку строк вытащить
[10:48:38] <ForNeVeR> Либ видал!
[10:48:45] <k0rg> F# мня спасёт?
[10:49:36] <ForNeVeR> k0rg: спасёт тебя не F#, а грамотное следование конвенциям.
[10:49:55] <ForNeVeR> Ну вот смотри, у тебя tmp, якобы, может быть null, судя по дальнейшим операциям. А почему?
[10:50:05] <ForNeVeR> SearchProductNames может вернуть null?
[10:50:06] <k0rg> SearchProductNames() может вернуть
[10:50:13] <ForNeVeR> Ну это же плохо!
[10:50:16] <k0rg> ага
[10:50:23] <k0rg> сча
[10:50:24] <ForNeVeR> Я лично стараюсь вообще null в коде не использовать.
[10:50:39] <k0rg> ну я там нет у мня прямого нулла, обычный линк
[10:50:53] <ForNeVeR> Ну только вот, да, от проверок полей dto не избавишься, тут ничо не поделать.
[10:50:54] <k0rg> http://i.imgur.com/r3efvg7.png
[10:50:59] <ForNeVeR> Потому что в DTO что угодно могут засунуть.
[10:51:07] <k0rg> ага, убедился уже
[10:51:24] <ForNeVeR> Ну получается, что SearchProductNames не может вернуть нулл, и поэтому одна проверка уже лишняя!
[10:51:44] <ForNeVeR> В F# на самом деле от большинства проверок именно так избавляются — просто не используют null.
[10:51:52] <k0rg> чо мня R# тогда пугает?
[10:52:25] <k0rg> http://i.imgur.com/VRKAOWI.png
[10:52:26] <ForNeVeR> А вот это я не знаю, надо смотреть. Может, он по какой-то причине полагает, что там может быть null? Вроде по коду нет.
[10:52:41] <ForNeVeR> Ну ладно, код в любом случае засчитан.
[10:52:42] <Kerrigаn> https://github.com/PaulFurtado/rusty_bars даже на русте что-то написали
[10:52:43] <ForNeVeR> .member k0rg
[10:52:44] <DeadBot> ForNeVeR: ok
[10:52:45] <k0rg> мож он в соседнем классе не видит просто?
[10:52:47] <Kerrigаn> а нужного все равно нет
[10:53:10] <ForNeVeR> k0rg: а у тебя там нету развязки через интерфейс?
[10:53:19] <k0rg> нет
[10:53:26] <ForNeVeR> Тогда совсем странно.
[10:53:43] <ForNeVeR> Не должен решарпер таких предположений делать. У меня обычно в таких местах всё ровно.
[10:54:06] <k0rg> ну вот, он сам грит, что там нул не может быть: http://i.imgur.com/z63qX0M.png
[10:54:48] <ForNeVeR> k0rg: а это ты весь метод Test на картинке показал? Больше там ничо нету?
[10:55:10] <k0rg> весь
[10:55:12] <ForNeVeR> Решарпер мог решить, что там может быть null, если ты хоть где-нибудь ещё в этом методе эту переменную на null проверяешь.
[10:55:21] <k0rg> выше только описание
[10:55:38] <ForNeVeR> Алсо, теперь я знаю, как тебя зовут, ололо :3
[10:55:44] matraskin вышел из конференции
[10:55:49] <k0rg> :)
[10:56:03] <ForNeVeR> Студия выдала имя в подсказке.
[10:56:10] <ForNeVeR> (без фамилии)
[10:56:27] <k0rg> ага
[10:57:07] <ForNeVeR> Ну, в общем, хз, тут надо внимательно раскуривать, чистить кэши решарпера, и всякое такое. Если дейсвительно хочется разобраться.
[10:57:22] <ForNeVeR> Я бы просто на такие предупреждения забил, в данном случае они ошибочные.
[10:57:31] <k0rg> а в F# если такой контроллер написать, то во входящую дтошку тоже могут херни понасовать?
[10:57:41] <ForNeVeR> А кто им помешает?
[10:58:02] <ForNeVeR> Ну, бэкенд, написанный на F#, магическим образом не меняет поведения клиентов :)
[10:58:28] <k0rg> ну к примеру dto.Paging в C# нуллабле, а в F# - ?
[10:58:33] <ForNeVeR> Ты можешь валидацию на разных уровнях внедрить (вплоть до кастомных биндеров), но это, опять же, не F#-специфично.
[10:58:54] <ForNeVeR> F# наследует систему типов .NET, так что ссылочные типы в нём остаются нулабельными.
[10:58:56] <k0rg> вродеж нет нуллов, если спицально не указать
[10:59:04] <k0rg> йолки :(
[10:59:18] <ForNeVeR> Однако, в среднестатистическом коде на F# проверок я встречаю куда меньше. Как правило считается, что null — это что-то из ряда вон.
[10:59:28] <ForNeVeR> Разве что, вот, на внешнем периметре.
[10:59:41] <k0rg> ну в тут как раз внешний периметр
[10:59:56] <ForNeVeR> k0rg: ну и на F# есть свои серверные технологии — Freya, Suave. В них можно более хитрые проверки сделать более простыми способами, вероятно.
[11:00:09] newlifer зашёл в конференцию
[11:00:16] <k0rg> ну проверок и в тут можно понапихать
[11:00:18] <ForNeVeR> Но я сам очень немножко использую Freya, так что не такой большой спец, и хитрых проверок пока не делал.
[11:00:27] <ForNeVeR> Да не, именно чтоб биндер сам проверил.
[11:00:38] <k0rg> dto у мня никак не может быть нуллом, ибо проверка на фильтрах стоит
[11:00:40] iMacDV вышел из конференции
[11:00:55] <k0rg> можно в тех же фильтрах запилить и проверку внутренних структур
[11:01:29] <ForNeVeR> Да можно и в геттер засунуть генерилку, наверное. Или ещё как-то выкрутиться.
[11:01:52] <k0rg> ну в геттер - это для каждого класса надо ручками делать
[11:01:52] <ForNeVeR> k0rg: вот ещё что. В F# ты мог быть паттерн-матчингом отсечь все левые варианты, явно не упоминая нулов.
[11:02:07] <k0rg> я вот тоже думал, что на матчинге это красивше смотрелось бы
[11:02:24] <ForNeVeR> Типа, для непустого списка в DTO мы вернём результат запроса, а для всех остальных случаев (пустых списков или нулов) — ничего не вернём.
[11:02:37] <ForNeVeR> Но это пока так, концептуально. По сути ещё обдумать стоит.
[11:03:01] Aman зашёл в конференцию
[11:04:59] matraskin зашёл в конференцию
[11:05:33] <newlifer> Утро.
[11:05:45] <Aman> утра
[11:06:13] <Kerrigаn> ееее, изоморфные приложения без ноды в рантайме
[11:06:23] <Kerrigаn> и оно завелось
[11:06:47] <ForNeVeR> Kerrigаn: это что за приложения такие?
[11:06:59] <Kerrigаn> ForNeVeR: которые веб
[11:07:01] <ForNeVeR> Ну, про изоморфность я знаю, но что значит "без ноды в рантайме"?
[11:07:04] <Kerrigаn> https://github.com/olebedev/go-starter-kit
[11:07:08] <Kerrigаn> то и значит
[11:07:12] <Kerrigаn> оно без ноды работает
[11:07:14] <ForNeVeR> А, с бэком на го?
[11:07:17] <Kerrigаn> ага
[11:07:20] <Kerrigаn> и жс тоже на го
[11:07:39] <ForNeVeR> Погоди, жс там обыкновенный: https://github.com/olebedev/go-starter-kit/tree/master/client
[11:07:42] <Kerrigаn> которы для серверного рендера
[11:07:46] <Kerrigаn> *который
[11:07:48] <ForNeVeR> А.
[11:07:53] <ForNeVeR> Это интересно. Как это работает?
[11:07:58] <Kerrigаn> через duktape
[11:08:22] <ForNeVeR> > thin, embeddable javascript engine
Годно!
[11:10:28] m4n71k0r вышел из конференции
[11:11:29] <newlifer> Kerrigаn, плюсону, пожалуй.
[11:13:19] <Kerrigаn> если бы я еще умел в реакт, лол
[11:15:51] <newlifer> Kerrigаn, чпок тебя!
[11:16:11] <Kerrigаn> ну как, я написал хелловорлд, который случайный пост выводит
[11:17:07] <ForNeVeR> Kerrigаn: лол, а я написал хелловорлд, который случайную цитату выводит! :D
[11:17:33] <ForNeVeR> https://fornever.me/plans/index.html — вот такой.
[11:18:07] <ForNeVeR> Но у меня там код неаутентичный, просто тренировался с реактом.
[11:18:35] <Kerrigаn> у меня такой http://r.jugregator.org
[11:19:54] <ForNeVeR> Славно!
[11:21:05] dzhon вышел из конференции
[11:21:06] dzhon зашёл в конференцию
[11:26:04] m4n71k0r зашёл в конференцию
[11:38:27] dzhon вышел из конференции
[11:39:00] dzhon зашёл в конференцию
[11:39:21] <newlifer> Kerrigаn, слишком быстро сменяется... Не успеваю прочитать.
[11:39:48] <Kerrigаn> newlifer: забей, оно мертвое почти
[11:40:02] <newlifer> Kerrigаn, ='(
[11:40:07] <newlifer> //T
[12:02:32] a1batross зашёл в конференцию
[12:27:09] unixorn вышел из конференции
[12:31:55] unixorn зашёл в конференцию
[12:33:36] matraskin вышел из конференции
[12:33:37] matraskin зашёл в конференцию
[12:34:38] grouzen зашёл в конференцию
[12:41:20] dzhon вышел из конференции
[12:41:21] dzhon зашёл в конференцию
[12:50:13] ckorzhik зашёл в конференцию
[12:54:34] m4n71k0r вышел из конференции
[12:57:05] gsomix зашёл в конференцию
[12:57:16] <gsomix> Утро?
[12:57:31] <k0rg> смотря где
[12:58:14] <ForNeVeR> Подтверждаю!
[13:02:09] a1batross вышел из конференции
[13:10:37] gsomix вышел из конференции
[13:13:33] superka зашёл в конференцию
[13:14:25] <superka> ForNeVeR: привет, а тебе приходилось отдавать список сущностей в хранимку? ms sql
[13:15:26] <ForNeVeR> Нет, не приходилось. Обычно всякими костылями делаем.
[13:15:41] <superka> а как о.о
[13:19:25] <ForNeVeR> Ну, передаёшь туда список идентификаторов через запятую, а на стороне сервера уже разлагаешь!
[13:22:00] grisssa зашёл в конференцию
[13:23:13] <superka> ForNeVeR: три списка? а потом собирать их чтоли?
[13:23:58] <ForNeVeR> Почему три?
[13:24:10] <superka> ForNeVeR: у меня сущность из трех состоит полей
[13:24:26] <ForNeVeR> Список идентификаторов сущностей не можешь на сервер передать?
[13:24:31] <ForNeVeR> А он уже пускай сам фетчит поля.
[13:25:28] <k0rg> superka: пихаешь сущности в таблицу и гришь ХП, штоп вытащила оттуда данные
[13:25:53] <superka> k0rg: чтобы запихать в таблицу их мне как раз и надо хранимую процедуру
[13:26:14] <k0rg> ну по очереди пихай, зачем сразу все?
[13:26:44] <superka> в цикле чтоли?
[13:26:51] <newlifer> ForNeVeR, разлагаешь?
[13:26:55] <k0rg> не надо циклов бояться
[13:26:55] <newlifer> Дедушка Нургл доволен!
[13:26:55] <superka> у меня просто много очешь
[13:27:04] <k0rg> какая разница
[13:27:11] <superka> на один реквест 2000 запросов к базе получится
[13:27:11] <k0rg> не коммить на каждый пих и будет щастье
[13:27:27] <superka> я не умею так(
[13:27:33] <k0rg> ну сунь в жсон, пускай сервер разгребает!
[13:27:46] <k0rg> у него проц толстый!
[13:28:13] <newlifer> k0rg, нет! Это просто кристал широкий!
[13:28:25] <k0rg> все так говорят!
[13:28:52] <superka> k0rg: json отправлять на mssql сервер?
[13:29:03] <k0rg> кто тебе запретит?
[13:29:33] <superka> а можешь показать как это? я не очень понимаю
[13:30:01] <k0rg> ишты, MSSQL умет в жсон
[13:30:17] <k0rg> "SQL server 2016 CTP3 – ability to load JSON text in tables, extract values from JSON text, index properties in JSON text stored in columns, etc. "
[13:30:24] Kerrigаn вышел из конференции
[13:30:33] <superka> мне бы запросом...
[13:31:02] <superka> вроде чот нашел
[13:31:03] <k0rg> да я сам не умею
[13:31:46] <superka> ForNeVeR: как тебе такое решение, я буду отдавать json в хранимку а там insert делать? SELECT *
FROM OPENJSON(@json)
WITH (id int, firstName nvarchar(50), lastName nvarchar(50),
age int, dateOfBirth datetime2)
[13:31:59] <ForNeVeR> Я даж не знал, что так можно.
[13:32:08] <ForNeVeR> Мы обычно рукопашный парсер на SQL пишем :)
[13:32:43] <superka> а вроде и нельзя
[13:33:03] <superka> а можно
[13:33:22] <superka> парсер на sql это конечно вы молодцы
[13:33:38] <k0rg> ForNeVeR: тоже обычно ручками парсили :)
[13:34:06] <newlifer> ForNeVeR, етить
[13:34:12] <k0rg> правда, было это давно и на FB
[13:43:24] xmi вышел из конференции
[13:45:03] <k0rg> а какой каст лучше: (type) A или A as type ? язык C#
[13:46:32] <ForNeVeR> k0rg: у них разная семантика и они для разных ситуаций.
[13:46:48] <k0rg> а где курнуть?
[13:46:56] <ForNeVeR> (type) используй, когда ты *уверен*, что значение имеет определённый тип. as используй, если ты не уверен, и хочешь проверить.
[13:47:32] <k0rg> as экцепшон бросит?
[13:47:41] <ForNeVeR> Нет, никогда.
[13:48:00] <ForNeVeR> (Type) бросит исключение. as вернёт null, если не получилось скастовать.
[13:48:16] <ForNeVeR> Поэтому as не умеет кастовать структуры.
[13:48:44] <ForNeVeR> k0rg: помимо этого, хе-хе, могут быть операторы каста. Например, (int) someDouble никогда не бросит исключения (если нет переполнения, конечно).
[13:48:58] <ForNeVeR> Короче, https://msdn.microsoft.com/en-us/library/ms173105.aspx
[13:49:53] <ForNeVeR> k0rg: если тебе много приходится кастовать — это нехорошо, и стоит задуматься об архитектуре.
[13:50:11] <k0rg> пока только один каст:
return product != null ? Ok(product) : BadRequest("Несуществущий код продукта") as IHttpActionResult;
[13:50:31] <superka> ужс!
[13:50:37] <ForNeVeR> А, ну тут можно, да. Это ничего не говорит плохого об архитектуре :)
[13:50:54] <ForNeVeR> k0rg: но тут я бы всё-таки использовал простой каст (IHttpActionResult).
[13:51:00] <k0rg> там простой и был
[13:51:06] <k0rg> его и оставлю
[13:51:32] <ForNeVeR> Тут проблема языка. Он пытается вычислить итоговый тип оператора, и не может :(
[13:53:42] grisssa вышел из конференции
[14:04:33] superka вышел из конференции
[14:05:37] dzhon вышел из конференции
[14:06:38] dzhon зашёл в конференцию
[14:10:02] dzhon вышел из конференции
[14:10:48] sss|zombie зашёл в конференцию
[14:12:09] Minoru зашёл в конференцию
[14:18:28] matraskin вышел из конференции
[14:27:49] SolarRay вышел из конференции
[14:27:54] SolarRay зашёл в конференцию
[14:34:00] Aman вышел из конференции
[14:34:20] Aman зашёл в конференцию
[14:41:50] m4n71k0r зашёл в конференцию
[14:45:57] dzhon зашёл в конференцию
[14:47:09] dzhon вышел из конференции
[14:47:24] superka зашёл в конференцию
[15:14:03] rexim зашёл в конференцию
[15:14:37] <rexim> .ping
[15:14:41] <DeadBot> rexim: понг от тебя 2.79 секунды
[15:18:39] Aman вышел из конференции
[15:26:00] <ForNeVeR> rexim: яррр
[15:26:14] <rexim> ForNeVeR, драатуте!
[15:31:21] newlifer вышел из конференции
[15:40:54] superka вышел из конференции
[15:42:37] Aman зашёл в конференцию
[15:58:09] <ɹǝɟılʍǝu> rexim, серебрянный ишуй!
[16:07:11] <Minoru> rexim: странно, я помню, что мне приходило письмо о том, что ты аппрувнул мой PR в tsoding/brand, но там не было комментария, который я сейчас вижу в интерфейсе
[16:07:21] <Minoru> что-то они там у себя в ГитХабе ещё не допилили, видимо!
[16:08:32] superka зашёл в конференцию
[16:09:08] <rexim> Minoru, ага, наверное
[16:13:24] a1batross зашёл в конференцию
[16:27:41] ckorzhik вышел из конференции
[16:33:44] <rexim> Minoru, я на самом деле не просто оставил комментарий. Я дисмисснул аппрув. Отображается комментарий который должен быть обязательно приложен при дисмиссе.
[16:34:19] <rexim> Для него даже отдельное поле ввода было.
[16:34:27] <rexim> Возможно нотификации для дисмиссов сломались
[16:34:34] <m4n71k0r> https://twitter.com/mineralmonster/status/787982699789217792
[16:41:22] <ForNeVeR> http://codingteam.org.ru/
[16:41:24] <ForNeVeR> Это дотнеткор, чуваки!
[16:41:34] <Minoru> rexim: при аппрув дисмиссале рекуарится валидный комментарий!
[16:46:18] <rexim> ForNeVeR, а почему он на хаскель похож?
[16:46:21] <m4n71k0r> Minoru: пзц ты!
[16:47:43] <m4n71k0r> о, норм чувак отступы ставит https://twitter.com/RichardWestenra/status/765488378951376896
[16:47:46] <Minoru> блин, в Генте, похоже, нету этого вашего дотнеткора, а мне PR запилить надобно!
[16:48:04] <Minoru> ForNeVeR: ты же не примешь PR, который я локально не тестил? Я вёрстку поправить хочу
[16:48:06] <rexim> Жди ебилдов теперь
[16:48:56] <Minoru> m4n71k0r: его там знатно в комментах обосрали. Ох уж этот Твиттер!
[16:49:43] <m4n71k0r> ну таки да
[16:53:59] ckorzhik зашёл в конференцию
[16:54:46] <Minoru> ForNeVeR: потестил в Inspector, всё работает. Такой PR ты примешь?
[16:57:55] <ForNeVeR> Minoru: а где PR-то? :)
[16:58:20] <ForNeVeR> Minoru: да, я готов принять.
[16:58:29] <ForNeVeR> Ну, если там простое что-то.
[16:58:48] <ForNeVeR> rexim: а чем отличается хаскель от нехаскеля? Всё едино! Человек есть мера всех вещей!
[17:00:18] <rexim> ForNeVeR, тогда твой дотнеткор не лучше HTML-я
[17:00:23] <rexim> OOOOOOOOOOWW!111
[17:00:32] <ForNeVeR> rexim: ну и что?
[17:01:11] <ForNeVeR> rexim: а, да, кстати. Я, как человек, устанавливаю, что дотнеткор лучше. Мы, по крайней мере, можем его собрать :)
[17:01:19] <ForNeVeR> А вариант с хаскелем у нас не собирался :D
[17:01:45] unclechu зашёл в конференцию
[17:01:47] <rexim> Да, я помню.
[17:03:09] SolarRay вышел из конференции
[17:03:12] SolarRay зашёл в конференцию
[17:03:20] <rexim> ForNeVeR, https://github.com/jsx/JSX/issues/332
[17:03:27] <ɹǝɟılʍǝu> rexim, ДИС МИСС!
[17:03:32] <rexim> ForNeVeR, Мне их даже не много жаль.
[17:03:36] <ForNeVeR> ɹǝɟılʍǝu: this miss?
[17:03:44] <ɹǝɟılʍǝu> ForNeVeR, yep
[17:03:52] <ɹǝɟılʍǝu> rexim, ← this miss
[17:03:52] <ForNeVeR> rexim: XD
[17:04:08] <ɹǝɟılʍǝu> rexim, немного* разве не так?
[17:04:27] <rexim> ForNeVeR, даже если они были раньше, я бы на их месте переименовался.
[17:04:36] <rexim> Гуглу вот насрать было что уже есть язык го.
[17:04:41] <rexim> Фейсбуку тем более.
[17:05:16] <ForNeVeR> И эплу.
[17:05:25] <ForNeVeR> (уже был язык Swift)
[17:05:33] <ForNeVeR> rexim: блин, хорошо, что языка Morganey не было!
[17:06:01] <rexim> Так и всех этих других языков раньше не было.
[17:06:19] <rexim> Вот придет какой-нить амазон со своем Morganey.react.js.jsx
[17:06:24] <rexim> И соснем мы дружно.
[17:06:58] <ForNeVeR> Мы придумаем ещё более смешные названия!
[17:07:05] <rexim> Надо научить моргани компилиться в js
[17:07:07] <rexim> Точно
[17:07:11] <ɹǝɟılʍǝu> rexim, дык давай вывалим это на реддит!
[17:07:16] <ɹǝɟılʍǝu> Станешь заменитым!
[17:07:19] <ɹǝɟılʍǝu> Крутым дядей!
[17:07:21] <ɹǝɟılʍǝu> Или тётей!
[17:07:26] <ɹǝɟılʍǝu> Кем хочешь, короче!
[17:07:28] <m4n71k0r> Amazoney
[17:07:37] <ɹǝɟılʍǝu> Или крутым мантикором!
[17:07:41] <rexim> ForNeVeR, причем таки в js ее скомпилить наверное даже проще чем в JVM
[17:08:04] <ForNeVeR> rexim: а если сравнить в Java или в JS?
[17:08:05] <m4n71k0r> ɹǝɟılʍǝu: что ты опять такое несёшь?(
[17:08:24] <rexim> ForNeVeR, а хуй его знает!
[17:08:29] <ɹǝɟılʍǝu> m4n71k0r, я упоролся(
[17:08:36] <rexim> Я ж субъективные ощущения говорю.
[17:08:50] <rexim> У меня нет никаких объективных метрик простоты.
[17:08:52] <ForNeVeR> rexim: мне кажется, в Java и в JS будет одинаково.
[17:08:57] <rexim> Окей
[17:09:22] <ForNeVeR> А в JVM — да, сложнее, но только потому, что там байткод низкоуровневый.
[17:09:34] <rexim> Да у вас байткод!
[17:09:38] <rexim> Низкоуровневый!
[17:09:52] <ForNeVeR> Ну то есть байткод ещё придётся сперва изучить, а JS изучать не надо. Все на нём пишут, не изучая :D
[17:10:41] <m4n71k0r> https://twitter.com/erlyclub/status/754766081672224768
[17:11:13] <rexim> ForNeVeR, короче, план такой. Если придет амазон, переименовываемся в LambdaOppressor
[17:11:21] <rexim> Такое название точно никто не заберет.
[17:11:35] <rexim> Побоятся
[17:11:39] <ForNeVeR> rexim: Денис работает в Амазоне.
[17:11:40] <rexim> Побояться*
[17:11:45] <ForNeVeR> Он тоже за нами придёт? :(
[17:12:18] <rexim> ForNeVeR, блин, Денис-то ваще опасный. :(
[17:12:27] <rexim> Завернет нас в веб-компонент и все.
[17:12:35] <ForNeVeR> Перепишет на яваскрипте :(
[17:12:38] <rexim> Ладно, чего-нибудь придумаем.
[17:12:49] <m4n71k0r> кто такой Денис?
[17:12:52] <ForNeVeR> Притворимся чистыми функциями!
[17:13:00] <m4n71k0r> посылайте его ко мне
[17:13:04] <rexim> m4n71k0r, это ж ты и есть!
[17:13:09] <m4n71k0r> я сним поговорю
[17:13:12] <ForNeVeR> m4n71k0r: https://github.com/pragmader
[17:13:13] <m4n71k0r> я не он
[17:13:37] <ForNeVeR> Надо же, и я не он!
[17:13:38] <m4n71k0r> ой бля
[17:13:41] <m4n71k0r> сколько всего ненужного
[17:13:47] <ForNeVeR> m4n71k0r: ути-пути!
[17:13:53] <m4n71k0r> не ну правда
[17:14:03] <m4n71k0r> ебанинки сколько
[17:14:30] <rexim> Это как изюминка?
[17:14:37] * rexim человек с ебанинкой!
[17:15:11] <rexim> Легкой
[17:21:17] <ɹǝɟılʍǝu> rexim, с лёгкой?!
[17:45:19] Aman вышел из конференции
[17:46:37] <unclechu> http://www.opennet.ru/opennews/art.shtml?num=45330
https://github.com/Tencent/libco
кто-нибудь тыкал палочкой эти корутины в сиплюсах?
[17:46:59] <m4n71k0r> ещё один про корутины
[17:47:32] <unclechu> m4n71k0r, у тебя персональная нелюбовь к ним?
[17:47:44] <unclechu> или все уже уши про них прожужжали?
[17:48:04] * k0rg как-то слушал доклад про корутины
[17:48:05] <m4n71k0r> в плюсоконце реагентыч издалека начал про них
[17:48:43] <m4n71k0r> кокретно про это китайское поделие по ссылке я услышал только сегодня
[17:49:01] <m4n71k0r> до этого смотрел в сторону бустовых
[17:49:31] <unclechu> вот и я тоже что-то впервые слышу, а пишут: "Библиотека широко используется на бэкендах (десятки тысяч серверов)", - сдаётся мне...
[17:50:37] <m4n71k0r> интересно, почему эти китацы пишут uint32_t вместо std::uint32_t ?
[17:51:56] <unclechu> у них там даже для i386 код есть
[18:07:46] a1batross вышел из конференции
[18:09:14] <Minoru> % git clone git@github.com:codingteam/codingteam.org.ru.git
fatal: destination path 'codingteam.org.ru' already exists and is not an empty directory.

._.
[18:09:43] <ɹǝɟılʍǝu> Minoru, Не так часто, пожалуйста.
[18:09:53] <Minoru> дальше — лучше:
% git status | grep modified | wc -l
3

Я, оказывается, там пытался хаскель завести!
[18:14:51] <Minoru> лулзы не заканчиваются! Пытаюсь пушить, обнаруживаю, что мне нельзя. Нажимаю кнопку «Fork» и узнаю, что форк у меня уже есть ._. Прямо приключение какое-то, «по следам затерявшегося Минорки»!
[18:15:15] <Minoru> а, нету у меня форка
[18:15:34] <ForNeVeR> Minoru: тебя форкнуть?
[18:15:44] <Minoru> чото я ничего не понимаю
[18:16:05] <Minoru> ГитХаб говорит, что я не могу пушить в репозиторий:
> ERROR: Permission to codingteam/codingteam.org.ru.git denied to Minoru.
[18:16:32] <Minoru> но при этом если я нажимаю «Fork», мне говорят, что форк у меня уже есть, и называется он… codingteam/codingteam.org.ru
[18:17:33] <ForNeVeR> Дак это не у тебя.
[18:17:37] <ForNeVeR> Это у цодингтима!
[18:17:45] <Minoru> а почему мне тогда об этом говорят?
[18:17:46] <ForNeVeR> Оно там же разрешает выбрать, куда форкнуть.
[18:17:53] <Minoru> разрешает
[18:17:57] <ForNeVeR> Выбери себя!
[18:18:02] <Minoru> просто зачем мне про этот форк говорить, если я все равно в него пушить не могу
[18:21:41] <ForNeVeR> А я пока что HTTPS влуплю на цторе!
[18:29:04] <ForNeVeR> $loglist 8086
[18:29:08] <horta hell> ForNeVeR: #8086
<RAMZAY> А по поводу решарпера, у мну лицко по студаку :D
<Gebb> RAMZAY: > мну лицко по студаку
Не пиши так.
<Gebb> А то намну лицко.

https://loglist.net/quote/8086
[18:34:59] <rexim> .ping
[18:35:00] <DeadBot> rexim: понг от тебя 0.12 секунды
[18:44:04] <rexim> Minoru, я тут себе slock поставил. Так забавно наблюдать рефлекс, когда подергаешь мышку и ждешь пока на экране что-нибудь появится.
[18:44:26] <Minoru> rexim: он же в браузере
[18:44:34] <Minoru> rexim: олсо ты говорил, что у тебя не тормозит!
[18:44:42] a1batross зашёл в конференцию
[18:44:51] <rexim> Я не понял ни одного твоего предложения.
[18:45:03] <Minoru> :(
[18:45:07] <Minoru> а, тьфу
[18:45:12] portnov зашёл в конференцию
[18:45:18] <Minoru> sl*o*ck, не sl*a*ck
[18:45:20] <rexim> Я про http://tools.suckless.org/slock/
[18:45:22] <Minoru> извини ._.
[18:45:26] <rexim> Ничего. :)
[18:45:46] <rexim> Ты пользовался?
[18:46:19] gsomix зашёл в конференцию
[18:46:22] <Minoru> да. В нём нет поддержки DPMS (выключения подсветки монитора), поэтому я некоторое время пользовался каким-то форком (там буквально десяток строчек добавлено было), а потом перешёл на i3lock, который всё умеет
[18:46:29] <gsomix> Утро.
[18:46:37] <Minoru> так точно, Магистр Гсомикс!
[18:47:10] <rexim> Minoru, а сам i3 не используешь? %)
[18:47:37] <Minoru> rexim: а это что? У меня Intel i3, но вряд ли ты об этом
[18:47:46] <rexim> Minoru, гуглони i3wm
[18:47:58] <rexim> i3lock часть проекта i3wm
[18:48:36] <rexim> Ну тебе наверное хмонада хватает.
[18:48:47] <rexim> Мне i3 жутко нравится.
[18:48:56] <Minoru> ух ты, там есть modes, как в Vim!
[18:48:59] <rexim> Но он почему-то у меня под насосом не работает.
[18:49:05] <rexim> И лень разбираться.
[18:49:17] <Minoru> а мне, похоже, лень будет попробовать i3 ._.
[18:49:26] <rexim> Ага
[18:49:32] <ForNeVeR> У нас проблемы :( https://github.com/codingteam/codingteam.org.ru/issues/37#issuecomment-254228644
[18:50:11] <rexim> ForNeVeR, ну еще один повод, чо.
[18:50:20] <ForNeVeR> Угу.
[18:51:05] <rexim> Minoru, не знаю как ты, а я чай пошел пить.
[18:51:24] <Minoru> rexim: а я вот ещё чуток проголодаюсь и пойду рис кушать
[18:51:28] <Minoru> rexim: с котлеткой!
[18:51:42] <Minoru> rexim: так что к следующему твоему чаепитию уже буду готов присоединиться :)
[18:52:54] <ForNeVeR> Minoru: збс изменения, спасибо.
[18:53:18] <ForNeVeR> Неохота из-за этого делать новый релиз. Чуть позже опубликую, вместе с HTTPS.
[18:53:56] <Minoru> ^_^
[18:54:02] Graf вышел из конференции
[18:55:43] <Minoru> хм, удаление форков плохо сказывается на contribution graph-е
[18:56:01] <Minoru> я вот удалил и у меня на 1 contribution меньше стало, потому что пропал один из моих коммитов
[18:56:06] <Minoru> не продумано!
[18:56:35] <ForNeVeR> Minoru: а до этого оно отдельно чтоли считало твой обычный коммит и тот, который я вмержил?
[18:56:59] <Minoru> похоже, что да. После того, как ты смержил, но перед тем, как я удалил, было 832. После удаления 831
[18:59:32] <Minoru> > unsinged int
[19:00:22] <ForNeVeR> Неотпетый!
[19:02:03] <Minoru> забавно, как различаются у нас с тобой ассоциации. Я-то сразу про «unsung hero» подумал, а ты о мрачноте какой-то
[19:02:33] <Minoru> ɹǝɟılʍǝu: нельзя делать `for (std::tie : container) { … }` :(
[19:02:38] <Minoru> в C++11, по крайней мере
[19:03:59] <ɹǝɟılʍǝu> Minoru, C++17 можно.
[19:09:31] <Minoru> а я могу как-то в плюсах определить аналог хаскелевого `data StateChange = MarkRead | MarkUnread` так, чтобы потом switch по этой величине обязан был обработать оба варианта? Ну, прямо как case
[19:09:46] <ForNeVeR> :(
[19:09:54] <ForNeVeR> ɹǝɟılʍǝu: по больному бьёт, гад!
[19:10:01] <Minoru> ._.
[19:10:21] <ForNeVeR> Minoru: ты очень жестокий человек :(
[19:10:31] <ɹǝɟılʍǝu> Minoru, эм, можно.
[19:10:37] <Minoru> о, да?
[19:10:51] <ɹǝɟılʍǝu> Берёшь и заебениваешь свой свич...
[19:10:56] <Minoru> ._.
[19:10:57] <ForNeVeR> Э, не.
[19:11:02] <ForNeVeR> Давайте я тогда расскажу.
[19:11:11] <ɹǝɟılʍǝu> Я б так и сделал. :D
[19:11:11] <ForNeVeR> Minoru: можно, но это сильно сложнее.
[19:11:30] <ForNeVeR> Minoru: твой алгебраический тип мапится на ООП-овскую иерархию из трёх классов.
[19:11:44] <ForNeVeR> Абстрактный StateChange, и два наследника.
[19:11:52] <Minoru> ага, как в Scala
[19:11:59] <ForNeVeR> Вместо каждого свища ты пишешь виртуальный метод.
[19:12:15] <ForNeVeR> Либо, если у тебя таких свищей очень много, ты можешь использовать visitor pattern.
[19:12:37] <gsomix> Ищу, switchу.
[19:12:57] unclechu вышел из конференции
[19:13:25] <ForNeVeR> Я вижу внешний интерфейс визитора в данном случае примерно так же, как ɹǝɟılʍǝu предложил — функция а-ля `switch_statechange` с несколькими аргументами-лямбдами.
[19:14:44] <ForNeVeR> Minoru: ну, в общем, объектно-ориентированный дизайн предлагает немного другие способы решения вопроса. Вероятно, подобного рода свитчей у тебя должно быть меньше, чем в функциональной программе.
[19:15:15] <ForNeVeR> С другой стороны, тебе и в ФП-программе лучше таких паттерн-матчей слишком много не фигачить. Иначе это будет сложно расширять.
[19:15:43] <ForNeVeR> Необязательно эти рекомендации применимы к твоему случаю, конечно.
[19:15:51] <ɹǝɟılʍǝu> Лучщ визитор, имхо...
[19:16:10] <ForNeVeR> ɹǝɟılʍǝu: а я бы вот так категоричен не был.
[19:16:20] <Minoru> окей, вроде понятно. Оставлю как есть, потому что свичей у меня, похоже, три штуки всего, и они не менялись многие годы. Спасибо
[19:16:33] <ForNeVeR> ɹǝɟılʍǝu: давай предположим, что в Ф-программе у него было бы 5 мест с паттерн-матчингом.
[19:16:55] <ɹǝɟılʍǝu> Давай.
[19:16:56] <ForNeVeR> ɹǝɟılʍǝu: это не значит, что в ОО-программе потребуется пять виртуальных методов.
[19:17:39] <ForNeVeR> Вполне вероятно, что можно будет более тщательно обдумать эти пять мест, и свести к одному или двум виртуальным методам.
[19:19:46] <ɹǝɟılʍǝu> ForNeVeR, возможно.
[19:19:52] <ɹǝɟılʍǝu> Я просто упорот по шаблонам)
[19:22:24] <gsomix> ForNeVeR, https://github.com/VPashkov/awesome-fsharp
[19:24:24] <ForNeVeR> ɹǝɟılʍǝu: а шаблоны чего тут?
[19:24:44] <ForNeVeR> ɹǝɟılʍǝu: конечно же, то, о чём я говорю, можно и на вариадиках сделать. Так даже культурней будет!
[19:31:41] a1batross вышел из конференции
[19:31:46] a1batross зашёл в конференцию
[19:34:53] <rexim> ForNeVeR, https://en.wikipedia.org/wiki/Scala_(software)
[19:35:33] <ForNeVeR> http://www.huygens-fokker.org/scala/
[19:35:37] <ForNeVeR> Nice surname!
[19:35:50] <ForNeVeR> Mr. Fokker!
[19:36:08] <rexim> Хуйгенз Форккер
[19:36:11] Kerrigаn зашёл в конференцию
[19:36:11] <ForNeVeR> rexim: http://www.huygens-fokker.org/scala/snapshot1.png
[19:36:16] <ForNeVeR> Это эксель какой-то :)
[19:36:17] <Kerrigаn> у битбакета сдох ssh
[19:36:28] <ForNeVeR> http://www.huygens-fokker.org/scala/snapshot2.png
[19:36:34] <ForNeVeR> rexim: гексагональный эксель!
[19:36:34] <rexim> ForNeVeR, норм
[19:36:34] <Minoru> ForNeVeR: ты будто бы про Focke-Wulf не слышал
[19:37:20] <rexim> Kerrigаn, и битбакета ssh умер пока ты спал!
[19:37:29] <Kerrigаn> rexim: я не спал
[19:37:43] <rexim> Если что-то умерло, значит ты спал.
[19:37:55] <ForNeVeR> Чуваки, я недавно перечитывал наш код https://github.com/codingteam/russian-icfpc-2012
[19:38:03] <ForNeVeR> И рассказывал недавно родившимся товарищам.
[19:38:13] <ForNeVeR> И, короче, очень круто было. Вот.
[19:38:20] <ForNeVeR> Почему больше такого не проводят? :(
[19:38:59] <rexim> > 280,889 ++ / 580 --
[19:39:05] <rexim> Хуясе я туда насрал
[19:39:26] Graf зашёл в конференцию
[19:39:27] <ForNeVeR> rexim: потому что ты какие-то сгенерированные артефакты загружал.
[19:39:29] <ForNeVeR> Так было нужно!
[19:39:31] Graf вышел из конференции
[19:39:55] <ForNeVeR> А у нас с того контеста даже отчёта не осталось :(
[19:39:58] <rexim> "Насрал", "сгенерировал артифакты"... Какая разница?
[19:40:04] <rexim> Пойду артифактов нагенерирую!
[19:40:12] * rexim взял газетку и ушел
[19:41:13] <k0rg> поджечь не забудь
[19:41:42] <Minoru> > А у нас с того контеста даже отчёта не осталось :(
Вот поэтому их и нужно писать!
[19:43:06] <Minoru> ForNeVeR: можешь, кстати, пошутить и написать-таки отчётик. «Ух! Русский ICFPC в поза-поза-позапрошлом году был настолько насыщенным, что я только сейчас успокоился достаточно, чтобы написать этот отчёт».
[19:43:46] <Minoru> так-с, у меня ещё онтопик
[19:44:25] <ForNeVeR> Minoru: а я собираюсь написать.
[19:44:37] <Minoru> в общем, не раз слышал, что нужно стараться всегда при работе над проектом стараться улучшить окружающий код. Ну, вот, например: http://ronjeffries.com/xprog/articles/refactoring-not-on-the-backlog/
[19:44:42] <ForNeVeR> Minoru: потому что я не нашёл вообще ни одного приличного отчёта с того года.
[19:44:50] <ForNeVeR> А там internals очень интересные были!
[19:44:55] <Minoru> вот я сейчас пишу тесты и впервые с этим столкнулся на практике
[19:45:24] <ForNeVeR> Minoru: один мой товарищ называл это "рука бога" — "всё, чего ты касаешься, становится лучше".
[19:45:49] <Minoru> но у меня вопрос: а как это записывать в истории гита? Перемежать коммиты, добавляющие тесты, коммитами, которые что-то там рефакторят? Или сразу коммитить это в мастер? Или как?
[19:46:09] <Minoru> ForNeVeR: хорошая формулировка, нужно запомнить
[19:46:11] <ForNeVeR> Minoru: не стоит смешивать функциональные коммиты с рефакторингом.
[19:46:20] <rexim> ForNeVeR, спасибо.
[19:46:21] <ForNeVeR> Лучше отдельными коммитами, как минимум.
[19:46:34] <ForNeVeR> rexim: э, за что?
[19:46:50] * rexim только собрался написать длинную тираду про смешивание рефакторинга с реализацией.
[19:47:12] <Minoru> ForNeVeR: у вас, кстати, не то что отчётика — у вас даже README в репозитории нет!
[19:47:36] <ForNeVeR> Я думаю, что возможно, это надо будет привести в порядок.
[19:47:48] <Minoru> про отдельные коммиты понятно, это подразумевается :)
[19:47:49] <ForNeVeR> Мне часто приходится вспоминать и пересказывать эту историю молодёжи.
[19:48:00] <ForNeVeR> А память уже не та, я забываю всё больше деталей :(
[19:48:16] <rexim> ForNeVeR, еще чуть-чуть и в старого Миксера превратишься.
[19:48:17] <Minoru> про порядок — это ты всё ещё мне про гит рассказываешь или уже про ваш сабмишшен? :)
[19:48:31] <ForNeVeR> rexim: нет же, я не могу в него превратиться.
[19:48:37] <ForNeVeR> Minoru: я про сабмишен говорил
[19:49:22] <Minoru> а, ок
[19:50:10] superka вышел из конференции
[19:50:20] <Minoru> ну, а с коммитами что? Куда их девать? В тот же бранч, где и тесты? Может, их ребейзнуть в конец бранча, чтобы в истории видно было, что вот я поработал над тестами, а вот починил связанный с ними код?
[19:50:43] <ForNeVeR> Minoru: да, это дельная мысль.
[19:51:34] <k0rg> в одной конторе мержили в основную ветку через ребейз
[19:51:40] <gsomix> Minoru, ForNeVeR, а какая разница?
[19:51:46] <gsomix> Для порядка?
[19:51:56] <ForNeVeR> gsomix: да, порядок.
[19:52:12] <ForNeVeR> k0rg: я и у себя на работе так делаю. Ну, ребейзю новые коммиты поверх основной ветки.
[19:52:37] <k0rg> а там ещё все коммиты в один сливали
[19:52:41] <k0rg> сквош, во
[19:52:44] <ForNeVeR> Нет, так я не делаю.
[19:53:01] <ForNeVeR> Но понимаю тех, кто делает. (Торвальдс, ага.)
[19:53:06] <Minoru> gsomix: ну да, чтобы по истории можно было понять произошедшее
[19:53:07] <k0rg> народу много
[19:53:17] <k0rg> если все будут свои коммиты пихать - опухнешь
[19:53:51] <k0rg> а так - и видно, что человек сделал, и коммит один
[19:54:04] <k0rg> типа fix issue #000
[19:54:16] <k0rg> а бранчи никто не удалял
[20:02:32] a1batross вышел из конференции
[20:06:22] <Minoru> https://i.imgur.com/undefined.png вау
[20:07:04] <k0rg> поворот не туда
[20:07:56] <Minoru> лол, я сейчас чуть не написал тесты к вещам, которые с 2013-го года не используются!
[20:09:05] <ForNeVeR> Удали эти вещи.
[20:10:02] <Minoru> да я вот думаю, то ли оживлять, то ли и правда выбрасывать
[20:10:29] <Minoru> там просто функциональность была такая, что можно заюзать в других кусках. Но т.к. никто за три года не пришёл жаловаться, что оно не работает, то, наверное, можно спокойно выбрасывать :)
[20:14:46] a1batross зашёл в конференцию
[20:19:50] <ForNeVeR> Minoru: YAGNI.
[20:23:40] <horta hell> @fvnever твитит: RT @tomaspetricek: &gt; @davetchepak "What can C# do that F# cannot?" NullReferenceException :-)
[20:25:51] a1batross вышел из конференции
[20:29:27] <Minoru> ɹǝɟılʍǝu: cla-a-aws of madne-ess holding your bra-ain as they take you awa-ay to the othe-er si-i-ide of sorro-ow where you pa-ay what you o-o-owe
[20:34:06] <rexim> $send Ender https://www.osu.edu/
[20:34:06] <horta hell> rexim: Сообщение помещено в очередь.
[20:34:21] <rexim> Minoru, YAGNI его с ноги!
[20:35:39] <Minoru> rexim: шото я такое уже от тебя слышал, кажется
[20:35:55] <Minoru> > MR 20150328T16:13:39Z 000 <rexim> YAGNI ее с ноги
[20:36:01] <rexim> Minoru, это шото даже где-то на логлисте есть.
[20:36:05] <Minoru> а, ок
[20:36:35] <rexim> Это моя любимая из всех моих несмешных шуток шутка.
[20:36:37] <Minoru> > newsbeuter.pot
[20:36:38] <k0rg> там поиска нет
[20:36:47] <Minoru> это «PO template», а не то, что вы подумали
[20:36:53] <rexim> k0rg, так точно копейтан! о\
[20:36:55] <Minoru> k0rg: но у нас, кажется, есть на это ишшуй!
[20:37:01] <Minoru> k0rg: можешь заимплементить :)
[20:37:08] <k0rg> сначала прочитаю весь :)
[20:37:09] <rexim> Плюсую этого Минору
[20:37:18] <rexim> Minoru, гочайпить?
[20:38:06] <Minoru> rexim: я уже. Но позже можно и повторит!
[20:38:13] <Minoru> s/т!/ть!/
[20:38:13] <rexim> Jrtq
[20:38:13] <horta hell> Minoru: r-xim: я уже. Но позже можно и повторить!
[20:39:57] a1batross зашёл в конференцию
[20:41:22] * rexim r-xim
[20:41:28] rexim сменил ник на r-xim
[20:41:34] <r-xim> Не та команда :)
[20:41:38] <r-xim> $search rexim
[20:41:38] <horta hell> r-xim: 2009-08-23T20:11:08.000Z Phóéñíx .time rexim
2009-08-23T20:13:51.000Z D-adBot rexim: хз
2009-08-23T22:34:08.000Z Phóéñíx rexim: втф?
2009-08-23T22:39:27.000Z 0xd34df00d rexim: я знаю пару таких конф )
2009-08-23T22:40:34.000Z 0xd34df00d rexim: там человек 5, как правило.
[20:42:46] <Minoru> ого, Дедфуд заканчивал сообщения скобочкой!
[20:42:54] <Minoru> Теперь я видел всё.
[20:45:26] <uggur> Minoru: (а(что(ты(имеешь против("скобочек")))))
[20:46:59] <Minoru> > feature/crusade-against-pointers-to-char
Вай, вай, какой я смешной!
[21:00:37] <Minoru> интересно, а у Трависа так мало машин с OS X потому, что им не хватает денег на лицензии?
[21:04:32] <k0rg> https://loglist.net/quote/7950
[21:04:35] <k0rg> я нечаянно нашёл
[21:06:04] gsomix вышел из конференции
[21:11:08] <Minoru> посоны, я это что получается, каждая фича языка — это же потенциальный источник багов? Я вот прочитал про return value optimization и то, что оно может убрать вызов конструктора копирования, даже если в том есть побочные эффекты
[21:11:20] <Minoru> выходит, что про это нужно помнить, когда пишешь конструктор копирования
[21:11:39] <k0rg> каждый язык - источник багов
[21:12:14] <Minoru> нет, ну тут я имею в виду, что большее количество фич ведёт к большему количеству возможностей внести баг
[21:12:22] <Minoru> // не сочтите меня за адвоката Go, лол
[21:12:32] <ɹǝɟılʍǝu> r-xim, не та помада?!
[21:13:43] <k0rg> очевидно же, что чем больше у тебя возможностей, тем больше у тебя возможностей отстрелить себе яйца^Wчо-нить
[21:15:04] <portnov> k0rg: хорошо если себе.
[21:15:12] <Minoru> можно запретить сайд-эффекты в конструкторе копирования, и тогда станет полущ
[21:15:22] <Minoru> то есть фичи нужно уметь правильно комбинировать
[21:15:24] <k0rg> portnov: я бы поспорил
[21:15:29] <Minoru> дизайнерам языка, я имею в виду
[21:15:46] <m4n71k0r> $search сепульки
[21:15:56] <horta hell> m4n71k0r: 2013-01-31T22:52:12.000Z ktt9 На википедии сепульки.
2014-05-27T00:14:15.000Z rexim wtf/сепульки/важный элемент цивилизации ардритов …
2014-05-27T00:14:22.000Z rexim wtf/сепуление/занятие ардритов с планеты Энтеропи…
2014-05-27T23:13:40.000Z rexim $wtf сепульки
2014-05-27T23:13:56.000Z h-rta hell rexim: > занятие ардритов с планеты Энтеропия. См…
[21:16:30] <m4n71k0r> $wtf сепульки
[21:16:30] <horta hell> m4n71k0r: > важный элемент цивилизации ардритов с планеты Энтеропия. См. сепулькарии. © rexim
[21:16:41] <m4n71k0r> $wtf сепулькарии
[21:16:42] <horta hell> m4n71k0r: > устройства для сепуления. © rexim
[21:16:52] <m4n71k0r> $wtf rexim
[21:16:52] <horta hell> m4n71k0r: > Воинствующий оптимист; до потери пульса будет чётко, ясно, последовательно, логично доказывать, что ты няша. © M-noru
[21:17:11] <m4n71k0r> $wtf M-noru
[21:17:12] <horta hell> m4n71k0r: Определение не найдено.
[21:17:33] <m4n71k0r> 5 секунд тупого поиска?
[21:17:36] <m4n71k0r> хм
[21:17:39] <m4n71k0r> $wtf M-noru
[21:17:40] <horta hell> m4n71k0r: Определение не найдено.
[21:17:44] <m4n71k0r> а
[21:17:48] <m4n71k0r> прогрев
[21:17:51] * Minoru выдал Мантикору разрешение на один хайлайт
[21:18:16] <Minoru> а, тебе не интересно. Ну ок
[21:18:33] <m4n71k0r> стоп!
[21:18:50] <m4n71k0r> $wtf Munoru
[21:18:50] <horta hell> m4n71k0r: Определение не найдено.
[21:18:58] <m4n71k0r> $wtf Menoru
[21:18:58] <horta hell> m4n71k0r: Определение не найдено.
[21:19:07] <m4n71k0r> щас-щас!
[21:19:11] <m4n71k0r> у меня получится!
[21:19:20] <m4n71k0r> $wtf MInoru
[21:19:20] <horta hell> m4n71k0r: > Минорий Чпокняк © rexim
[21:19:39] <m4n71k0r> это фича?
[21:19:41] <Minoru> так мы узнали, что $wtf не смотрит на регистр
[21:19:43] <Minoru> не знаю
[21:19:54] <m4n71k0r> $wtf MINoRu
[21:19:55] <horta hell> m4n71k0r: > Минорий Чпокняк © rexim
[21:20:20] <portnov> https://wtf.jpg.wtf/14/6b/1476695087-146bbbdc2be6eed90d800aa24dbb852a.jpeg
[21:20:40] <Minoru> наверное, да, фича. Никто не мог запомнить, какие именно буквы в нике Форневера заглавные, вот и пришлось запилить
[21:22:23] <m4n71k0r> portnov: это как-то... одновременно бесчеловечно и с учётом тенденции
[21:23:07] <m4n71k0r> Minoru: да и сам дядя Фоня иногда забывает, чего скрывать
[21:24:23] <m4n71k0r> фигасе их сколько https://github.com/flosse/rust-web-framework-comparison
[21:24:39] <r-xim> ForNeVeR, все, я написал автору Gruber Darker
[21:25:17] <m4n71k0r> r-xim: гвоздём на капоте?
[21:25:28] r-xim сменил ник на rexim
[21:40:15] <rexim> ForNeVeR, небось ответить через два года -_-
[21:40:53] dzhon зашёл в конференцию
[21:45:04] <Minoru> о, у меня нашёлся повод поюзать semantic patches!
[21:50:07] <rexim> Minoru, а чо есть какие-то конкретные юзабельные реализации реализации?
[21:50:28] <rexim> Если я, конечно, правильно тебя понял. :)
[21:50:29] <portnov> так
[21:50:36] <portnov> rexim: нет, только интерфейсы интерфейсов.
[21:50:44] <Minoru> rexim: ну вот Coccinelle какой-то: http://coccinelle.lip6.fr/
[21:50:54] <rexim> portnov, :(
[21:51:02] <rexim> Minoru, кокаинум!
[21:51:35] <Minoru> > <dev-ml/findlib-1.6.1-r1 ("<dev-ml/findlib-1.6.1-r1" is blocking dev-ml/ocamlbuild-0.9.3)
Ну збс.
[21:51:38] <rexim> Minoru, а это случаем не те же чуваки что окамлу запилили?
[21:51:44] <rexim> Лол
[21:51:49] <rexim> Вот и ответ на мой вопрос
[21:52:27] <rexim> Minoru, спасибо за ссылочку! Потыкаюсь как-нибудь.
[21:58:50] <Minoru> да я и сам сейчас потыкаюсь и расскажу немного, чо как оно
[22:00:14] <Minoru> что-то окамл скорей мёртв, чем жив — 80% зависимостей приходится ставить на свой страх и риск (они замаскированы были)
[22:00:30] <Minoru> может, это в Генте такие майнтейнеры, конечно…
[22:01:14] unclechu зашёл в конференцию
[22:07:15] <rexim> ForNeVeR, лол, автор Gruber Darker сказал, мол "забирай это добро себе, я не против".
[22:09:21] <rexim> Minoru, я начинал отбирать чужие проекты 4 года назад!
[22:09:47] <Minoru> rexim: это потому что ты круче меня!
[22:10:09] <rexim> Minoru, нет, я чпуче!
[22:10:10] <rexim> врырв
[22:10:13] <rexim> Кхем...
[22:10:15] <rexim> Ладно.
[22:10:47] <Minoru> если пуче, то надо принять активировне угле
[22:11:14] <rexim> ._.
[22:11:33] * rexim ушел майнить активированный уголь
[22:11:48] <rexim> На активированные угольные шахты!
[22:12:32] <Minoru> о, ты активировал? Вот молодец! Пиратить софт плохо!
[22:13:16] <rexim> Pun Battle
[22:13:55] <Minoru> Pin Bottle
[22:16:42] <rexim> Minoru, http://jblevins.org/projects/emacs-color-themes/ Ctrl+F Gruber Darker
[22:16:43] <rexim> !!
[22:16:46] <rexim> волаыова
[22:17:14] <rexim> > Please see Alexey Kutepov’s fork on GitHub for a more up-to-date version with support for additional packages (his is the version installed by MELPA, etc.).
[22:17:24] <rexim> Отжано официально!
[22:18:00] <Minoru> rexim: поздравляю! Хорошо, когда майнтейнеры так быстро реагируют!
[22:18:25] <rexim> Ага
[22:18:34] <rexim> Jason Blevins
[22:18:39] <rexim> Это имя хорошего человека
[22:26:07] unixorn вышел из конференции
[22:28:07] SolarRay вышел из конференции
[22:28:13] SolarRay зашёл в конференцию
[22:30:06] eaeee зашёл в конференцию
[22:35:06] <unclechu> rexim, ну всё, теперь ты официально русский гангстер!
[22:35:27] <rexim> Йес
[22:38:41] <unclechu> точно тебе повезло, я вот пытался отжать: https://github.com/vim-ctrlspace/vim-ctrlspace , даже на фейсбук мейнтейнеру скучал, автор походу зажмурился или сбежал в лес
[22:41:15] <Minoru> https://travis-ci.org/akrennmair/newsbeuter/builds/168391463
https://travis-ci.org/akrennmair/newsbeuter/builds/168391455
И то, и другое Травис называет «Build #603». Это как вообще?
[22:41:34] <rexim> unclechu, да таких надо молча форкать по самые помидоры и все!
[22:43:36] <rexim> Minoru, страннота!
[22:43:37] <unclechu> никогда нельзя говорить что программа работает правильно по внешним проявлениям, как оказалось в ней всегда был баг, просто при изменении логики кода он всплыл
[22:44:00] <rexim> Minoru, кулинарного ASMR-чика не желаете? https://www.youtube.com/watch?v=CGPTF3OCPhY
[22:44:13] <Minoru> rexim: ой, блин, поужинать ведь нужно!
[22:44:15] <unclechu> и вообще, когда имеем дело с лютой императивщина, даже собственной, никакие ребусы не нужны
[22:44:29] <rexim> unclechu, эт да!
[22:44:39] <rexim> Вот я пытался простое бинарное дерево написать на джаве...
[22:44:48] a1batross вышел из конференции
[22:44:52] <rexim> Второй раз ебанулся
[22:45:21] <rexim> Переписал иммутабельно. Все просто и элегентно получилось.
[22:45:44] <rexim> Хотя практически ничего не поменялось ._.
[22:45:44] <unclechu> я вообще не понимаю людей, которые воротят голову от функционального стиля, мне кажется они просто очень любят заставлять свой мозг работать на полную, чтобы ощутить пределы, как много они могут стейта за раз удержать в голове
[22:45:59] <rexim> Возможно
[22:47:45] Славный капитан вышел из конференции
[22:49:32] * unclechu чистил клавиатуру от бякушки и потом увидел в поле ввода '666', пошёл надевать дуршлак на голову от греха подальше...
[22:51:04] <rexim> o-O
[22:51:48] <rexim> Вот смотрите https://github.com/vim-ctrlspace/vim-ctrlspace.github.io
[22:51:53] <rexim> Я ненавижу такие репы.
[22:52:01] <rexim> Это репа гитхабостраниц
[22:52:07] <rexim> И нигде нету ссылки на сам сайт.
[22:52:21] <rexim> Приходиться либо вбивать руками либо неловко пытаться скопировать заголовок.
[22:52:41] <rexim> Почему люди не делают вот так? https://github.com/morganey-lang/morganey-lang.github.io
[22:52:48] <rexim> Очень просто и удобно.
[22:53:30] <rexim> Либо сам гитхаб мог такую ссылку генерить. Видо гитхаб-то сам знает, что это репо для его гитхабастраниц, правда?
[22:53:48] <rexim> s/Видо/Ведь/
[22:53:51] <horta hell> rexim: Либо сам гитхаб мог такую ссылку генерить. Ведь гитхаб-то сам знает, что это репо для его гитхабастраниц, правда?
[22:54:54] <unclechu> обычно такие страницы делаются в отдельной ветке типа gh-pages или как-то так
[22:55:26] <unclechu> но вообще наверное да, сам github может и не знает, github.io это же сайд-проект?
[22:55:37] <rexim> Нет.
[22:55:45] <rexim> Он пренадлежит гитхабу.
[22:55:53] <unclechu> хорошо кстати что ты на ссылку обратил внимания, там мейнтейнер другой, может у него есть доступы и к репе самого плагина
[22:56:11] <rexim> Гы)
[23:02:22] Aman зашёл в конференцию
[23:07:14] <Minoru> гм, coccinelle в Funtoo настолько неживой, что его даже в репозиторий добавили только два дня назад!
[23:11:05] ckorzhik вышел из конференции
[23:19:36] portnov вышел из конференции
[23:22:54] grouzen вышел из конференции
[23:32:02] <Minoru> пиздец, еле собрал этот Coccinelle! 1.0.5 из портов не собирался, 1.0.6 с сайта некоторое время не качался, а в релизе, который они на GitHub публикуют, emerge не может найти конфигурационный скрипт (а я не умею писать ebuild-ы). Мрак!
[23:47:56] <Minoru> я не осилил
[23:48:14] <Minoru> может, завтра ещё попробую
[23:48:50] <Minoru> гм, может, оно в плюсы не умеет?
[23:53:51] <Minoru> лол, оно просто только на файлы с расширением «.c» смотрит, похоже. Но если указать имена, то таки патчит всё, на что укажешь
[23:59:10] m4n71k0r вышел из конференции
[23:59:41] <rexim> Minoru, > bintrayWhoami
[info] rexim
[info] rexim
[info] rexim
Powered by freQ Powered by Python Valid XHTML 1.0 Transitional Valid CSS!