Home
codingteam
codingteam@conference.jabber.ru
06.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:00:20] <Minoru> rexim: это не было ответом на твою фразу, мне просто клиент перезапустить проще, чем вручную во все комнаты реджойнить
[00:00:37] <rexim> Ага, я так и понял. :)
[00:00:52] <Minoru> а в codingteam я вручную перезашёл изначально, да. Он из всех конф самый для меня дорогой!
[00:01:17] <rexim> ^_^
[00:04:57] <gsomix> Хм, а нет, это я затупил. Выглядит дженерик вектор прилично.
[00:05:19] <gsomix> Сначала не доверился выводу типов.
[00:06:11] <Minoru> gsomix: сегодня ты не доверяешь выводу типов, а завтра пополняешь стройные ряды программистов на Go. Берегись!
[00:06:21] <gsomix> T__T
[00:06:43] <rexim> На Goй программист.
[00:07:06] <rexim> На Си льник
[00:07:07] <rexim> Хм...
[00:07:09] <rexim> Ладно
[00:08:29] <gsomix> > The underlying infrastructure for type providers in F# doesn't support provided generic types or provided generic methods.
[00:09:02] <gsomix> А вот тут идея с компил-тайм размерами для матриц и обломилась.
[00:09:16] <gsomix> Ну, или дженерик матрицы, или со статическими размерами.
[00:09:20] <Minoru> rexim: так-с, я свой чай уже пью, а что там у тебя?
[00:09:29] <rexim> Minoru, я тоже! :)
[00:09:33] <rexim> Фото прислать?
[00:09:38] <Minoru> лол
[00:09:41] <Minoru> нет, я так поверю
[00:11:18] <Minoru> gsomix: «дженерик матрицы» — это просто такой контейнер, параметризованный по хранимому типу? Или это матрица с указателями на Object?
[00:11:29] <gsomix> Minoru, первое.
[00:12:44] <rexim> Minoru, http://i.imgur.com/hmYteP1.jpg
[00:12:57] <rexim> Кружка уже затерлась :(
[00:13:09] <rexim> Алексей уже не такой смешной как раньше!
[00:14:41] Akon32 зашёл в конференцию
[00:15:21] <Minoru> rexim: !
[00:15:33] <rexim> Свечение вокруг кружки забавное получилось.
[00:16:14] <Minoru> у вас там, в Сибири, холодно, поэтому вы пьёте настолько горячий чай, что аж кружки светятся
[00:17:02] <rexim> Из уранового фарвора, да
[00:17:38] <rexim> Minoru, Типа https://en.wikipedia.org/wiki/Uranium_glass только фарфор
[00:18:49] <gsomix> Minoru, на самом деле, я просто хочу плюсы или ди.
[00:20:02] <Minoru> rexim: что-то целая статья написана, а в чём плюсы такого стекла — не ясно
[00:20:28] <rexim> Minoru, на сколько я знаю, никаких кроме эстетики.
[00:20:42] <rexim> Это стекло делали, когда только только открыли уран
[00:20:55] <rexim> И это было единственное применение на тот момент
[00:21:34] <rexim> Minoru, я, кстати, про это стекло из вот этой документалочки узнал. https://www.youtube.com/watch?v=7nKRGWhXwIg
[00:21:38] <rexim> Он просто охуенна.
[00:21:40] <rexim> Рекомендую
[00:21:43] <rexim> Она*
[00:21:54] <Minoru> rexim: в русской Википедии пишут, что «[к]оэффициент температурного расширения мал, чем обусловил использование в качестве материала корпуса электронных ламп».
[00:30:55] Akon32 вышел из конференции
[00:41:35] <gsomix> Minoru, кажется, ди вообще один из лучших вариантов для написания обощенной и эффективной вычислительной математики.
[00:41:50] <gsomix> Спасибо метапрограммированию.
[00:43:37] <Minoru> я вообще не понимаю, о чём ты, что там за проблемы и что происходит >_< Поэтому просто верю, что ты занимаешься чем-то интересненьким!
[00:43:53] <gsomix> Нет, я хуетой страдаю. :(
[00:44:09] <gsomix> Никому, кроме меня не интересной.
[00:44:25] <gsomix> Извини, я не буду надоедать. :)
[00:44:27] <Minoru> «интересненькое» — это просто такое подмножество хуеты ;)
[00:45:18] <Minoru> ну, ты не надоедаешь, просто я действительно ничего не знаю, не понимаю и потому не знаю, что ответить. И, конечно же, не нахожу в данный момент настолько интересным, чтобы изучить-понять-ответить по существу
[00:46:17] rexim вышел из конференции
[00:47:32] eaeee зашёл в конференцию
[00:48:38] <gsomix> Minoru, ок, хорошо. На самом деле проблема у меня чуть более общая: я хочу что-то пописать, но понимаю, что получится хуита и что лучше пойти и контрибьютить в уже существующие проекты.
[00:51:26] <Minoru> а «пойти поконтрибьютить» для тебя хуже, чем пописать своё?
[00:52:43] <gsomix> Сложнее.
[00:53:07] ckorzhik зашёл в конференцию
[00:53:38] <Minoru> ну смотри
[00:53:51] <Minoru> Experience is what you get when you don't get what you wanted.
[00:54:07] <Minoru> я это у Рэнди Пауша прочитал в «Последней лекции», но он тоже, вроде, кого-то цитировал
[00:54:30] <Minoru> то есть ты уже что-то пописал и что-то из этого получил
[00:54:37] <Minoru> следовательно, не нужно грустить!
[00:54:55] <Minoru> а вот что делать, чтобы все начатые проекты удавались, я не знаю
[00:55:18] <gsomix> Не начить изначально провальных хотя бы. :)
[00:55:22] <gsomix> *начинать
[00:55:33] <Minoru> ты, когда начинал, не знал, что она провальная
[00:56:12] <Minoru> один путь выхода из этой ситуации — тусоваться с умными чуваками и высказывать им свои идеи, дабы покритиковали
[00:56:38] <gsomix> Ну, надо просто держаться рядом с успешными проектами.
[00:56:57] <Minoru> с другой стороны, чувакам тоже может быть лень твою идею глубоко продумывать, или же они попросту не в курсе, какой именно из возможных путей имплементации ты выберешь
[00:57:10] Kerrigаn зашёл в конференцию
[00:57:25] <gsomix> Хочешь писать вычислительную математику? Берешь и пристраиваешься к библиотеке на плюсах, или ди, или расте.
[00:57:31] <gsomix> Ладно, ок.
[00:57:33] <gsomix> Спасибо.
[00:59:38] <Minoru> было бы за что. Я почти ничего не знаю, но всегда готов поразглагольствовать о том, какими *могли бы быть* знания, которых у меня нет
[01:11:53] sss|zombie вышел из конференции
[01:12:21] sss|zombie зашёл в конференцию
[01:14:04] Minoru вышел из конференции
[01:30:33] <eaeee> $pet resurrect
[01:30:40] <eaeee> алё
[01:33:53] xmi вышел из конференции
[01:35:42] <eaeee> Что же это такое происходит?
[01:35:50] eaeee вышел из конференции
[01:36:11] <unclechu> $pet kill
[02:32:52] rexim зашёл в конференцию
[02:58:02] SolarRay вышел из конференции
[02:58:09] SolarRay зашёл в конференцию
[03:08:22] newlifer вышел из конференции
[03:14:48] rexim вышел из конференции
[03:44:12] gsomix вышел из конференции
[03:52:12] sleepyvenom вышел из конференции
[03:52:14] sleepyvenom зашёл в конференцию
[04:51:27] grouzen вышел из конференции
[05:00:57] grouzen зашёл в конференцию
[05:03:37] ForNeVeR зашёл в конференцию
[05:17:06] matraskin зашёл в конференцию
[05:39:07] unclechu вышел из конференции
[05:52:38] sleepyvenom вышел из конференции
[05:52:40] sleepyvenom зашёл в конференцию
[06:02:09] Славный капитан зашёл в конференцию
[06:28:09] grouzen вышел из конференции
[06:38:09] ckorzhik вышел из конференции
[07:10:45] madmercen зашёл в конференцию
[07:46:38] portnov зашёл в конференцию
[07:50:19] portnov вышел из конференции
[07:53:44] Славный капитан вышел из конференции
[09:01:19] xmi зашёл в конференцию
[09:31:56] <ForNeVeR> http://www.groklaw.net/articlebasic.php?story=20120511165908331
> [Mr. McFadden is totally a programmer. He speaks precisely, and doesn't tolerate any incorrect terminology or vagueness. He embarasses both lawyers this way, but Oracle has the worst time of it. He describes everything in technical terms, without analogies and without much explanation.]
[09:38:56] rexim зашёл в конференцию
[09:39:50] <rexim> Утрисиммо!
[09:44:17] gsomix зашёл в конференцию
[09:44:25] <gsomix> Утро?
[09:45:27] <gsomix> ForNeVeR, а ты работал с AST в F#?
[09:45:42] <ForNeVeR> gsomix: хм. Думаю, да, но совсем немного.
[09:45:52] <ForNeVeR> Мне ещё в те времена надо было квазицитату превратить в ExpressionTree.
[09:45:58] <uggur> "ForNeVeR: > [Mr. McFadden is totally a programmer. He speaks precisely..." x)
http://suburbanjungleclassic.com/comics/1999-03-22.gif
http://suburbanjungleclassic.com/comics/1999-03-23.gif
http://suburbanjungleclassic.com/comics/1999-03-24.gif
[09:47:23] * uggur speaks++ + ++speaks
[09:47:39] newlifer зашёл в конференцию
[09:48:47] <gsomix> ForNeVeR, как думаешь, насколько сложно будет реализовать что-то вроде devectorize.js? Это когда ты записываешь выражение с матрицами, которое потом преобразуется в один эффективный map.
[09:48:58] <gsomix> Ну, или цикл.
[09:49:00] <gsomix> Как угодно.
[09:49:08] <ForNeVeR> Запили!
[09:49:20] <gsomix> О-ок.
[09:49:21] <ForNeVeR> Ну, я не знаю, насколько сложно или просто. Сходу не могу оценить.
[09:49:32] <ForNeVeR> Именно поэтому я тебе только так отвечаю :)
[09:49:54] <ForNeVeR> gsomix: я вот такое делал: https://github.com/ForNeVeR/Tantalum/blob/master/Tantalum/PatternMatcher.fs
[09:50:24] <ForNeVeR> Шобы упрощать арифметические выражения в соответствии с шаблонами: https://github.com/ForNeVeR/Tantalum/blob/master/Tantalum/StandardOperations.fs#L30
[09:50:34] <ForNeVeR> Не ракетная наука, конечно, но я немного упарился тогда!
[09:50:46] <gsomix> Круто!
[09:50:50] <gsomix> Спасибо, я посмотрю.
[09:51:17] <gsomix> ForNeVeR, я вчера немного поигрался с написанием своих матриц. SRTP рулит.
[09:51:28] SolarRay вышел из конференции
[09:51:36] SolarRay зашёл в конференцию
[09:51:38] <gsomix> Я правда, не уверен, часто ли нужны матрицы с элементами, отличными от float.
[09:51:52] <ForNeVeR> Чо такое SRTP...
[09:51:56] <ForNeVeR> float? Зачем float?
[09:52:10] <ForNeVeR> Я ни разу не видал float в инженерном применении :)
[09:52:17] <ForNeVeR> Это игруны обычно любят float.
[09:52:18] <gsomix> ForNeVeR, static resolved type parameters.
[09:52:44] <gsomix> ForNeVeR, ну, float в F#-смысле.
[09:53:13] dzhon зашёл в конференцию
[09:53:38] <gsomix> ForNeVeR, ну, я вчера запилил generic matrix, перегрузил для них арифметические операторы.
[09:53:39] <ForNeVeR> То есть double :)
[09:53:46] <gsomix> Да, дабл. :)
[09:53:56] <gsomix> ForNeVeR, и благодаря SRTP все заработало как по маслу.
[09:54:45] m4n71k0r зашёл в конференцию
[09:55:02] <gsomix> Вечером подключу paket и библиотеку для бенчмаркинга.
[09:55:40] <gsomix> ForNeVeR, а еще выяснил, что тайппровайдеры не умеют делать генерик типы.
[09:55:52] <gsomix> Ну, что понятно.
[09:56:06] <gsomix> Ждем, когда тайппровайдеры можно будет типами параметризовать. :(
[09:59:04] dzhon вышел из конференции
[10:01:48] <rexim> ForNeVeR, о, а ты чо треллофорж отжал, да
[10:01:52] <rexim> ?
[10:04:19] <ForNeVeR> rexim: э?
[10:04:24] <ForNeVeR> Я просто его пилю, не отжимал.
[10:04:32] <ForNeVeR> Ну, пилил раньше, для githublo.
[10:04:48] <ForNeVeR> Сейчас githublo protuhlo, но если кто-то хочет пильнуть, то я не против.
[10:04:51] <rexim> ForNeVeR, автор забросил?
[10:05:03] <ForNeVeR> Автор забросил, и автор форка тоже, и ещё один, и другой, и третий :)
[10:05:06] <ForNeVeR> Теперь вот я.
[10:05:10] <rexim> =(
[10:05:25] <rexim> Само трелло небось тоже забросили...
[10:05:28] <ForNeVeR> Но я из них самый хороший!
[10:05:36] <ForNeVeR> Потому что у меня тесты хотя бы работают все.
[10:05:36] <rexim> ForNeVeR, бесспорно!
[10:05:43] <rexim> Ты их отключил?
[10:05:49] <ForNeVeR> Нет, я их починил.
[10:05:54] <rexim> А, ну ок :)
[10:05:56] <ForNeVeR> Если б я их отключил, то так бы и сказал, ну.
[10:06:05] <rexim> Окей-окей!
[10:06:12] <ForNeVeR> Некоторые я таки отключил, но процентов 90 у меня запускается и работает после починки.
[10:07:06] Graf зашёл в конференцию
[10:07:11] Graf вышел из конференции
[10:10:57] <gsomix> ForNeVeR, кстати, мне имеет смысл сразу свой новый код делать под dnc?
[10:11:24] <ForNeVeR> gsomix: имеет смысл делать под netstandard, если это не очень сложно.
[10:11:33] dzhon зашёл в конференцию
[10:12:05] <gsomix> ForNeVeR, ну, я скорее имел в виду, что нужно работать с project.json, и все такое.
[10:12:18] <ForNeVeR> В Visual Studio портабельные F#-проекты не шибко удобно редактировать, потому что она референсы теряет периодически. Но ты, вроде, пользуешься Ionide, так что у тебя норм будет.
[10:12:30] <ForNeVeR> gsomix: я думаю, что да.
[10:12:53] <ForNeVeR> Но ты смотри, как тебе удобнее. Возможно, проще будет под полный фреймворк написать, а потом портировать.
[10:13:24] <ForNeVeR> Если б я делал, то сразу бы пробовал под core. А в случае непреодолимых проблем бы фолбэкнулся на обычный фреймворк.
[10:13:44] <ForNeVeR> gsomix: а какие у тебя там технологии? Тайппровайдеры и всё такое?
[10:14:00] <ForNeVeR> А они вообще работают при сборке через project.json? :)
[10:14:22] <ForNeVeR> (я честно не знаю)
[10:14:23] <gsomix> ForNeVeR, без понятия.
[10:14:31] <gsomix> Тайппровайдеров пока нет, но планируются.
[10:14:44] <ForNeVeR> Тайппровайдеров нет, но вы держитесь!
[10:16:03] <gsomix> ForNeVeR, https://github.com/Microsoft/visualfsharp/issues/1496#issuecomment-244315047
[10:17:16] <ForNeVeR> gsomix: какая печаль!
[10:17:25] <ForNeVeR> Ну то есть в netstandard2 будут?
[10:17:27] <gsomix> ForNeVeR, постоянно в ожидании чего-то (F# vnext, netstandard20, портирование библиотек под dnc)...
[10:17:39] <gsomix> Должны быть.
[10:17:42] <ForNeVeR> gsomix: мне надоело ждать, я разделяю на подзадачи и делаю сам.
[10:18:15] <ForNeVeR> gsomix: ок, тогда пока делай под полный фреймворк.
[10:18:23] <ForNeVeR> Потом придумаем, как портировать :)
[10:18:57] <gsomix> Ладно, когда все-все-все доделают будет хорошо.
[10:19:09] <gsomix> s/се/сё/
[10:21:11] <ForNeVeR> Ну конечно!
[10:21:46] <gsomix> ForNeVeR, если я работаю с полным фреймворком, то я делаю fsproj и спокойно подключаю paket?
[10:26:27] <ForNeVeR> gsomix: можно paket.
[10:26:32] <ForNeVeR> Можно и нугет, хули :)
[10:26:48] <ForNeVeR> С ним первичная настройка проще (если ты студией пользуешься).
[10:27:39] <ForNeVeR> gsomix: на самом деле, это всё детали. Делай как тебе максимально проще, а о портабельности потом подумаем. Навскидку мне не кажется, что там там можешь чего-то особо нахуевертить, чтоб осложнить дальнейшее развитие программы.
[10:28:58] dzhon вышел из конференции
[10:29:09] dzhon зашёл в конференцию
[10:32:00] Graf зашёл в конференцию
[10:32:01] Graf вышел из конференции
[10:50:32] dzhon вышел из конференции
[10:50:46] dzhon зашёл в конференцию
[10:56:08] ɹǝɟılʍǝu зашёл в конференцию
[10:56:38] <rexim> ɹǝɟılʍǝu, нялайферберг!
[10:56:49] <ɹǝɟılʍǝu> rexim, утра!
[11:17:53] <m4n71k0r> гудцукернялайфербергберг
[11:19:33] <rexim> ForNeVeR, https://elpa.gnu.org/packages/el-search.html
[11:19:47] <ɹǝɟılʍǝu> Блять.
[11:19:52] <rexim> ForNeVeR, инкрементальный поиск по AST
[11:19:56] <ɹǝɟılʍǝu> Решил посмотреть лог изменений?
[11:19:59] <ɹǝɟılʍǝu> Хуй тебе!
[11:20:03] <ForNeVeR> rexim: надо же!
[11:20:07] <ForNeVeR> ɹǝɟılʍǝu: это мне?!
[11:20:13] <ɹǝɟılʍǝu> 20 коммитов-слияний подряд!
[11:20:18] <rexim> "Я так польщен!" :D
[11:20:19] <ForNeVeR> Нехорошо.
[11:20:26] <ForNeVeR> rexim: да, я хотел это сказать :)
[11:20:43] <ɹǝɟılʍǝu> ForNeVeR, а нада?
[11:20:49] <ɹǝɟılʍǝu> При ребейзе нет такой хуйни, правда?
[11:21:03] <ForNeVeR> Смотря как ребейзишь и вообще
[11:21:19] <ForNeVeR> Моя стратегия ребейза в целом не предполагает полного отказа от мержей.
[11:23:45] <gsomix> Пойду лабы принимать.
[11:24:24] <ForNeVeR> gsomix: ути-пути!
[11:24:39] <gsomix> ForNeVeR, а?
[11:24:45] <ForNeVeR> Лабы принимать :3
[11:24:48] <gsomix> Обычно ты так пишешь, когда кто-то троллит.
[11:24:53] <ForNeVeR> Да!
[11:24:58] <gsomix> Н-но...
[11:25:00] <gsomix> Ааа.
[11:25:01] <ForNeVeR> Так ты ведь и будешь троллить, правильно?
[11:25:02] <gsomix> :(
[11:25:08] <gsomix> Их? Да.
[11:25:11] <ForNeVeR> Ну вот!
[11:25:17] <ForNeVeR> Я заранее и написал.
[11:25:19] <gsomix> Они смешные.
[11:25:23] <ForNeVeR> Конечно!
[11:25:32] <gsomix> Могут изменить задание и вместо бинарной сериализации прикрутить JSON.
[11:25:38] <ForNeVeR> Славно!
[11:25:46] <gsomix> Но не могут с первого раза написать перемножение матриц правильно.
[11:25:53] <ForNeVeR> Это и я не смогу.
[11:26:26] <ForNeVeR> Ну, хотя, если б была лаба, и у меня было больше пяти минут на подготовку — то, пожалуй, смог бы :)
[11:26:48] <gsomix> Они дома пишут.
[11:27:02] <ForNeVeR> Ну уж, поди, не все совсем дубовые.
[11:27:17] <ForNeVeR> А отстающие — они всегда есть, их надо подтягивать помаленьку.
[11:27:26] <gsomix> Да я говорю.
[11:27:30] <gsomix> Они хорошие.
[11:27:38] <ɹǝɟılʍǝu> Осилил git log --graph --oneline
[11:27:40] <ɹǝɟılʍǝu> Охуенна
[11:28:31] <ForNeVeR> ɹǝɟılʍǝu: осиль ещё и tig!
[11:28:37] <ɹǝɟılʍǝu> А что это?
[11:28:48] <ɹǝɟılʍǝu> Сварка?
[11:28:54] <ForNeVeR> Это консольный git-клиент для просмотра логов.
[11:28:59] <ForNeVeR> Типа твоего git log --graph --oneline, но посимпатичней.
[11:29:01] <rexim> magit
[11:29:54] <gsomix> ma git, bigger than a bridge, yo git look like a little kid's
[11:30:00] <ɹǝɟılʍǝu> ForNeVeR, ох, цигвин(
[11:30:13] <ɹǝɟılʍǝu> Нада перелезать на линуху уже.
[11:30:19] <ForNeVeR> ɹǝɟılʍǝu: в WSL работает :)
[11:30:27] Kerrigаn вышел из конференции
[11:30:38] <gsomix> kinder cygwin я люблю, kinder cygwin я люблю...
[11:30:41] <ɹǝɟılʍǝu> Всё меньшими тулзами для винды пользуюсь, всё больше линуховыми. Костыли — плоха.
[11:30:48] <ɹǝɟılʍǝu> ForNeVeR, что такое WSL?
[11:30:52] <ForNeVeR> А я пользуюсь кроссплатформенными!
[11:30:56] <ForNeVeR> Например, повер шелл!
[11:31:06] <ForNeVeR> ɹǝɟılʍǝu: Windows Subsystem for Linux.
[11:31:15] <ɹǝɟılʍǝu> ForNeVeR, на семёрке нет(
[11:31:22] <ForNeVeR> Ну что ж теперь поделать.
[11:31:30] <ForNeVeR> gsomix: ,3
[11:38:15] <gsomix> .ping
[11:38:17] <DeadBot> gsomix: понг от тебя 0.50 секунды
[11:38:20] <gsomix> Ок, я на парах.
[11:38:31] <gsomix> Чот нет никого. :(
[11:38:57] gsomix вышел из конференции
[11:38:59] gsomix зашёл в конференцию
[11:39:12] gsomix вышел из конференции
[11:39:26] gsomix зашёл в конференцию
[11:39:56] <ForNeVeR> gsomix: а ты расписание не перепутал?
[11:40:03] <gsomix> Нет.
[11:40:22] <ForNeVeR> Может, сегодня субботник?
[11:40:39] dzhon вышел из конференции
[11:40:44] <gsomix> Может решили не сдавать ничего.
[11:40:46] dzhon зашёл в конференцию
[11:41:07] <ForNeVeR> Лалки!
[11:41:07] <ForNeVeR> Но так быть не должно, что за фигня.
[11:41:10] <ForNeVeR> Хотя бы один бы точно кто-нибудь пришёл.
[11:41:20] <gsomix> Подождем.
[11:41:23] <gsomix> Может кушают.
[11:41:41] <ForNeVeR> Дак а пара-то уже началась?
[11:42:28] <gsomix> Да.
[11:42:45] <ɹǝɟılʍǝu> gsomix, позвони старосте?
[11:42:51] <gsomix> Зачем?
[11:42:56] <gsomix> В свободной стране живем.
[11:43:12] <ForNeVeR> Я бы позвонил, если контакты есть.
[11:43:19] <gsomix> Я никого не обязываю ходить на лабораторные.
[11:43:23] <ForNeVeR> gsomix: это нарушение дисциплины.
[11:43:27] <gsomix> Сдавать -- обязываю.
[11:43:30] <gsomix> Ходить? Нет.
[11:43:36] <ForNeVeR> Вуз вполне может проверить явку тебя и студентов на занятия.
[11:43:42] <ForNeVeR> Я так один раз профессора подставил :(
[11:44:04] <ForNeVeR> Я со второй пары чаще всего студентов отпускал, потому что мы за одну выполняли все работы.
[11:44:13] <ForNeVeR> А на вторую пару взяла и припёрлась проверка.
[11:44:29] <ForNeVeR> А по расписанию там профессор числится. И вот, ему выговор написали.
[11:44:35] <gsomix> Строго.
[11:44:45] <ForNeVeR> Он, конечно, это всё со смехом мне пересказывал, но мне всё равно было неприятно.
[11:44:48] <gsomix> Ну,я отвечаю только за себя.
[11:45:12] <ForNeVeR> gsomix: если у тебя есть контакты старосты или кого-то из группы — то ты, как добросовестный преподаватель, обязан с ними связаться.
[11:45:18] <ForNeVeR> Я так считаю.
[11:45:33] <ForNeVeR> Может, они тебя в другом кабинете ждут, или мало ли чего!
[11:46:01] <ForNeVeR> А вот в деканат или ещё куда-то я бы не стал формально сообщать.
[11:46:11] <gsomix> Ну, пойду выгляну.
[11:46:14] <gsomix> Может кто ждет.
[11:47:04] <gsomix> ForNeVeR, я не считаю правильным заставлять людей ходить на лабораторные занятия, когда им нечего сдавать.
[11:47:14] <ForNeVeR> gsomix: да как так нечего сдавать-то!
[11:47:23] <gsomix> Ну, не написали еще.
[11:47:23] <ForNeVeR> Неужто две матрицы не смогли перемножить!
[11:47:37] <gsomix> Эй, там еще сокеты! :)
[11:47:48] <ɹǝɟılʍǝu> О БОЖЕЧКИ_КОШЕЧКИ.
[11:47:49] <ForNeVeR> Ну тогда могли бы прийти и вопросы задать.
[11:48:00] <ForNeVeR> Глупо вообще не приходить, неправильно.
[11:48:22] <ForNeVeR> Ну придите, блин, и скажите честно — сдавать нечего. Адекватный препод отпустит, а не будет держать.
[11:48:28] <gsomix> Ну, это они не пользуются уникальной возможность послушать мои ответы.
[11:48:42] <gsomix> Не мои проблемы, короче. Ну, то есть станут моими, когда они начнут в декабре ходить за мной.
[11:48:56] <ForNeVeR> Да ну, не станут.
[11:49:06] <ForNeVeR> Я думаю, что ты у них успеешь вовремя принять.
[11:49:13] <gsomix> Я тоже на это надеюсь.
[11:49:13] <ForNeVeR> Я всегда успевал вот.
[11:49:21] <ForNeVeR> Даже у всяких двоешников.
[11:49:28] <gsomix> Я там какие-то сроки установил.
[11:49:38] <ForNeVeR> А что будет за нарушение сроков?
[11:49:43] <gsomix> Потом будут оплачивать занятия.
[11:49:49] <gsomix> Ну, и баллы буду снижать.
[11:49:53] <gsomix> У них там рейтинговая система.
[11:49:55] <gsomix> И все такое.
[11:49:57] <ForNeVeR> Это как — оплачивать?
[11:50:03] <ForNeVeR> Такое разве бывает?
[11:50:05] <gsomix> ForNeVeR, приходишь в кассу и оплачиваешь.
[11:50:09] <ForNeVeR> О_О
[11:50:12] <ɹǝɟılʍǝu> Што.
[11:50:18] <ForNeVeR> Интересно у них там.
[11:50:28] <ɹǝɟılʍǝu> Они на платном шо ли?
[11:50:31] <gsomix> Ну, сколько я учусь всегда так было.
[11:50:32] <gsomix> Бюджет.
[11:51:02] <ForNeVeR> У нас просто у преподавателей были консультации (видимо, предоплаченные заранее). В конце семестра каждый вывешивает свой график, и туда можно ходить и сдавать хвосты.
[11:51:09] <gsomix> На 16 неделе, кажется, все обучение заканчивается.
[11:51:12] <gsomix> Начинаются зачеты.
[11:51:29] <gsomix> В это время всякие дополнительные заняти по лабораторным оплачиваются.
[11:51:32] <ForNeVeR> График дурацкий, конечно, всегда, но и ходить необязательно — только если тебе что-то досдать надо.
[11:51:37] <gsomix> Ну, не оплачиваются, если преподаватель добрый.
[11:51:48] <ForNeVeR> gsomix: но ты будешь злой! >_<
[11:52:10] <ForNeVeR> (я бы тоже был злой, если б ко мне на занятия никто не пришёл)
[11:52:27] <gsomix> ForNeVeR, я вот не могу выбрать профиль для portable library. :)
[11:52:31] <ForNeVeR> gsomix: вот правда, поговори потом со студентами. Пускай тебя предупреждают, чтоб ты тоже не приходил.
[11:52:47] <gsomix> Да, это обязательно.
[11:52:56] <ForNeVeR> А что такое "профиль", где его выбирают?
[11:53:00] <ForNeVeR> В студии?
[11:53:04] <gsomix> Да.
[11:53:12] <ForNeVeR> И какой там бывает профиль?
[11:53:33] <gsomix> Зависит от набора платформ.
[11:53:42] <gsomix> Ксамарины всякие, виндовсфоны.
[11:53:47] <ForNeVeR> А.
[11:53:54] <gsomix> Выберу тот, где поменьше всего.
[11:53:58] <ForNeVeR> А почему выбрать не можешь? Как это выглядит?
[11:54:01] <ForNeVeR> А, блин, понял.
[11:54:03] <gsomix> .NET45 и Xamarin.
[11:54:11] <ForNeVeR> Ты просто не мог решить, какой выбрать :)
[11:54:14] <gsomix> ForNeVeR, ага.
[11:54:27] <ForNeVeR> Ок, Xamarin — почти то же самое, что Mono.
[11:56:01] <ɹǝɟılʍǝu> ForNeVeR, Dominatus Xamarini.
[11:56:12] <gsomix> Ладно.
[11:56:16] <gsomix> На самом деле это не мои студенты.
[11:56:18] <gsomix> А жены.
[11:56:24] <ɹǝɟılʍǝu> gsomix, привет ей!
[11:56:25] <gsomix> Я ее подменяю сегодня.
[11:56:41] <gsomix> Надеюсь, мои-то будут сегодня!
[11:56:48] <gsomix> ɹǝɟılʍǝu, ок.
[11:56:54] <ɹǝɟılʍǝu> gsomix, и потискай!
[11:57:19] <ForNeVeR> gsomix: лол :)
[11:58:06] <ForNeVeR> gsomix: а чего к жене студенты не ходят?
[11:58:19] <ForNeVeR> Да и она-то к ним тоже не пошла!
[11:58:39] <ForNeVeR> Но она хотя бы прислала замену, а студенты не прислали.
[11:58:42] <gsomix> Ну, у нее студенты лучше остальных групп сдают все.
[11:58:50] <gsomix> Некоторые уже 3/4 сдали.
[11:58:55] <ForNeVeR> А, то есть у них всё сдано? Тогда ладно
[11:58:55] <gsomix> У меня 1/4. .__.
[11:59:05] <ForNeVeR> А я уже расстроился!
[11:59:15] <ForNeVeR> Заплакал ,_,
[11:59:31] <ForNeVeR> Но ты меня успокоил.
[12:00:05] dzhon вышел из конференции
[12:00:17] <ɹǝɟılʍǝu> ForNeVeR, тише-тише.
[12:00:21] <ɹǝɟılʍǝu> ForNeVeR, хочешь чаю?
[12:00:27] <ForNeVeR> Хочу машинного масла!
[12:00:38] dzhon зашёл в конференцию
[12:00:58] <ɹǝɟılʍǝu> ForNeVeR, а я чаю!
[12:00:58] <ɹǝɟılʍǝu> Аж кончаю!
[12:08:31] <m4n71k0r> ɹǝɟılʍǝu: фу, быдло
[12:09:13] <ɹǝɟılʍǝu> m4n71k0r, сам такой!
[12:12:14] grouzen зашёл в конференцию
[12:14:17] <gsomix> ForNeVeR, правильно понимаю, что если я ориентируюсь в фп дизайн, то мне нужно избегать исключений?
[12:16:13] <ɹǝɟılʍǝu> gsomix, не обязательно.
[12:16:35] <ɹǝɟılʍǝu> Исключения можно продолжать использовать для ИСКЛЮЧИТЕЛЬНЫХ ситуаций.
[12:17:06] <ɹǝɟılʍǝu> Ну, когда сервак горит, на небе рвуться ядерные бомбы.
[12:17:13] <gsomix> Ну, вот если у меня размеры матриц не совпадают при сложении, то мне лучше исключение бросать?
[12:19:13] <ɹǝɟılʍǝu> А это не лучше проверять в компил-тайме?
[12:19:24] <gsomix> Пока такой возможности нет.
[12:19:28] <gsomix> Но, конечно, лучше!
[12:19:51] <gsomix> Ну, и не все можно проверить в компилтайме.
[12:20:08] <ForNeVeR> gsomix: дваждую, необязательно избегать исключений.
[12:20:53] <ForNeVeR> gsomix: если матрицы не совпадают в размере — вполне логично выбросить исключение. Я не считаю, что стоит это заворачивать в монады типа Result. На мой взгляд, это просто засорит интерфейс.
[12:21:14] dzhon вышел из конференции
[12:21:15] dzhon зашёл в конференцию
[12:21:35] <ɹǝɟılʍǝu> Эффекты тут, кстати, были бы кстати.
[12:21:35] <ɹǝɟılʍǝu> Надо раскурить эту тему наконец.
[12:21:53] <ForNeVeR> gsomix: потому что в данном случае в ошибке виноват именно программист. Программа написана неправильно. Она не будет работать; ошибку невозможно обработать адекватным способом
[12:22:27] <ɹǝɟılʍǝu> А если ошибка во входных данных?
[12:22:43] <ForNeVeR> Значит, виноват тот, кто дал такие данные на вход.
[12:22:54] <ɹǝɟılʍǝu> ForNeVeR, кстати, эту проблему решила бы зависимая типизация. Если я правильно понял.
[12:23:03] <ForNeVeR> Для функции вполне логично ожидать, что ей на вход дают правильные данные, валидные.
[12:23:13] <ForNeVeR> Контракт она должна в явном виде где-то указывать, конечно.
[12:23:19] <ɹǝɟılʍǝu> ForNeVeR, нет, виноват всё равно программист: данные не должны влиять на поведение программы в известном понимании.
[12:23:24] <ɹǝɟılʍǝu> Как бы верней выразиться...
[12:23:33] <ForNeVeR> Если возможно — то в системе типов, а если нет — то в комментариях, документации, ну хоть где-то :)
[12:23:35] <ɹǝɟılʍǝu> Данные не должны «программировать» программу, что ли.
[12:23:37] newlifer вышел из конференции
[12:24:08] <ForNeVeR> ɹǝɟılʍǝu: да, зависимые типы бы решили проблему, как и другие формы метапрограммирования. Но, видишь Гсомикс озабочен пока что портабельностью решения.
[12:24:23] <ForNeVeR> Всего-то полгодика подождать — и нужные фичи появятся в языке и экосистеме :)
[12:24:38] <gsomix> .ping
[12:24:39] <DeadBot> gsomix: понг от тебя 0.55 секунды
[12:27:22] <ɹǝɟılʍǝu> ForNeVeR, славно!
[12:27:31] <ForNeVeR> Йо-хо-хо!
[12:27:53] <ɹǝɟılʍǝu> Так гсомяка пишет либу для линала на F#?
[12:31:44] <gsomix> ɹǝɟılʍǝu, экспериментирую.
[12:32:07] <ɹǝɟılʍǝu> gsomix, славно!
[12:32:20] <gsomix> Пытаюсь понять, пригодно ли вообще.
[12:32:26] <gsomix> Но если уже на питоне люди пишут.
[12:32:55] <ForNeVeR> Если уж люди даже на питоне пишут, то на F# сам бог велел!
[12:34:48] <ɹǝɟılʍǝu> Сам Император!
[12:37:15] rexim вышел из конференции
[12:37:57] <ɹǝɟılʍǝu> send/rexim/УНЯНЯ!/
[12:38:12] dzhon вышел из конференции
[12:39:18] dzhon зашёл в конференцию
[12:50:32] <gsomix> ForNeVeR, мои студенты тоже не придут.
[12:50:38] <gsomix> Но они написали об этом на почту.
[12:52:34] <ForNeVeR> Гы.
[12:52:51] <ForNeVeR> Очень странно у вас проходит обучение, надо заметить.
[12:53:11] <ForNeVeR> Студенты на занятия в течение семестра не ходят, а после его окончания — платят в кассу и ходят ._.
[12:53:37] <ForNeVeR> Ну то есть это и нормально, может быть. Но для меня удивительно.
[12:53:54] <ForNeVeR> gsomix: а преподавателю бонус из этих денег за дополнительные занятия выплачивают?
[12:54:09] <gsomix> ForNeVeR, да.
[12:54:14] <ForNeVeR> Ок.
[12:54:36] <ForNeVeR> То есть ему выгодно в течение семестра всех задрочить, и заставить ходить потом на все дополнительные пары ,3
[12:54:51] <ForNeVeR> gsomix: ты будешь успешен!
[12:56:00] <ɹǝɟılʍǝu> https://www.youtube.com/watch?v=75aUjcYr6vE
[12:56:09] <ForNeVeR> ɹǝɟılʍǝu: гля чо в плюсах творится
[12:56:18] <ɹǝɟılʍǝu> ForNeVeR, угу.
[12:59:47] dzhon вышел из конференции
[13:00:07] dzhon зашёл в конференцию
[13:08:51] <gsomix> ForNeVeR, SRTP придется подробнее раскурить.
[13:08:58] <gsomix> А документации почти нет.
[13:11:38] <ForNeVeR> gsomix: дак а это чо такое? Это фича F#?
[13:11:46] <gsomix> ForNeVeR, да.
[13:12:00] <ForNeVeR> Я про такую даже не слышал!
[13:12:07] <gsomix> https://docs.microsoft.com/en-us/dotnet/articles/fsharp/language-reference/generics/statically-resolved-type-parameters
[13:12:10] <gsomix> ForNeVeR, ^
[13:12:23] <gsomix> На это, например, у тебя в коде арифметика работает нормально.
[13:12:28] <ForNeVeR> gsomix: а, это для инлайна!
[13:12:28] <gsomix> А не как в OCaml. :)
[13:12:50] <ForNeVeR> Про инлайн я знаю, да. Я его даже юзал.
[13:13:07] <gsomix> ForNeVeR, я пока что-то в нем запутался.
[13:13:20] <gsomix> Когда я перегружаю у своих матриц (+), то я делаю его инлайн.
[13:13:28] <gsomix> И у меня он автомагически работает.
[13:13:51] <ForNeVeR> gsomix: https://github.com/ForNeVeR/Tesla.Csxcad/blob/develop/Tesla.Csxcad/Utils.fs#L15-L22
[13:14:11] <gsomix> Но что делать, если у меня много операций, а я не хочу дублировать код?
[13:14:15] <ForNeVeR> Удивительная функция, которая принимает строку, а возвращает нужный enum!
[13:14:27] <gsomix> Тогда я делаю что-то типа map2. И тоже хочу инлайн.
[13:14:31] <ForNeVeR> С констрейнтом на энумы :3
[13:14:41] <ForNeVeR> (что в C# невозможно сделать, например)
[13:14:46] <ForNeVeR> gsomix: покажи код.
[13:14:49] <gsomix> ForNeVeR, няшно.
[13:15:06] <ForNeVeR> gsomix: вот у меня там на самом деле ^TEnum — это SRTP.
[13:15:18] <ForNeVeR> Просто по какой-то причине это можно не указывать :D
[13:16:56] <gsomix> ForNeVeR, http://pastebin.com/Prp7bfKM
[13:17:07] <gsomix> Хочу инлайн в инлайне с инлайновой функцией.
[13:17:12] <gsomix> Видимо, ограничение компилятора.
[13:18:30] <gsomix> Хотя казалось бы.
[13:19:35] <ForNeVeR> gsomix: я бы попробовал все типы явно указать.
[13:19:40] <ForNeVeR> Ну, через крышечку.
[13:20:27] <gsomix> ForNeVeR, решил.
[13:20:28] <gsomix> .__.
[13:20:37] <gsomix> > It seems to be that the F# compiler can't do inlining with unordered code.
[13:21:11] <gsomix> Правильное расположение всего в F# -- основа хорошего настроения компилятора.
[13:21:42] dzhon вышел из конференции
[13:21:42] dzhon зашёл в конференцию
[13:22:03] <ForNeVeR> XD
[13:22:29] <ForNeVeR> gsomix: ну, у тебя там слишком хитро — инлайн мемберы какие-то. Я вот даже не знал, что так можно.
[13:22:47] <ForNeVeR> gsomix: а с обычными функциями тебя бы компилятор заставил их правильно расположить.
[13:23:17] <gsomix> Ну, я пока не привык еще.
[13:23:21] <ForNeVeR> gsomix: кстати, да, а не хуйнуть ли map2 просто функцией в модуле? Зачем это статический метод какого-то вложенного класса?
[13:23:46] <ForNeVeR> Вот с оператором такое не прокатит, я думаю — его обязательно надо делать мембером.
[13:24:02] <gsomix> Да, можно.
[13:24:51] <ForNeVeR> gsomix: ; пострипай!
[13:24:59] <ForNeVeR> Они у тебя там лишние.
[13:25:08] <ForNeVeR> Везде, кажется.
[13:25:28] <gsomix> В records?
[13:25:33] <gsomix> Ааа, без них можно.
[13:25:35] <gsomix> Ок.
[13:25:37] <ForNeVeR> Да.
[13:25:42] <ForNeVeR> В списках тоже можно.
[13:25:47] <gsomix> Няшно.
[13:25:50] <ForNeVeR> Почти везде можно ; заменять переносом строки.
[13:29:43] <gsomix> ForNeVeR, понять бы только, как до этой простой функции достучаться.
[13:31:53] <ForNeVeR> gsomix: дак это же, DenseMatrix.map2
[13:32:25] <gsomix> ForNeVeR, не угадал. :(
[13:32:33] <ForNeVeR> Да как так-то!
[13:32:33] <gsomix> Ну, то есть.
[13:32:49] <gsomix> У меня тип DenseMatrix лежит в модуле DenseMatrix.
[13:32:59] <gsomix> Гм.
[13:33:00] <ForNeVeR> А я тебе и говорю — положь функцию в модуль!
[13:33:02] <ForNeVeR> Не в тип!
[13:33:05] <gsomix> Положил.
[13:33:07] <gsomix> После типа.
[13:33:21] <ForNeVeR> А надо было перед! :D
[13:33:30] <ForNeVeR> Хотя, хм. Эта функция же на типе работает?
[13:33:40] <gsomix> Перед не могу.
[13:33:47] <gsomix> Там еще тип не определен.
[13:33:51] <ForNeVeR> Мде.
[13:33:54] <ForNeVeR> И после не можешь!
[13:33:56] <gsomix> :)
[13:33:58] <ForNeVeR> Потому что она нужна в типе.
[13:34:09] <ForNeVeR> Ну тогда хрен с ним, дефайни прямо в типе.
[13:35:30] <gsomix> ForNeVeR, https://github.com/fsharp/FSharpLangDesign/blob/master/RFCs/FS-1009-mutually-referential-types-and-modules-single-scope.md
[13:35:40] <gsomix> Ух, я уже жду F# 4.1
[13:36:30] <ForNeVeR> gsomix: там токо types and modules. Я не уверен, чо бы получилось с функцией и типом.
[13:36:50] <gsomix> ForNeVeR, я бы вынес тип из модуля.
[13:37:02] <gsomix> Я читал, люди так делают.
[13:37:08] <ForNeVeR> А я бы дак наоборот, внёс функцию во вложенный модуль.
[13:37:19] <ForNeVeR> И модуль с типом бы сделал mutually referential.
[13:37:30] <gsomix> Вложенный модуль -- плохо, как мне кажется.
[13:37:40] <gsomix> Дольше лезть, если map2 понадобится просто в коде.
[13:37:54] <ForNeVeR> gsomix: а потом бы я её наружу вынес в теле основного модуля!
[13:37:56] <ForNeVeR> Му ха ха!
[13:38:05] <gsomix> Брр.
[13:40:32] <m4n71k0r> товарищи-подельники, у нас на работе наконец-то хоть какой-то матан https://en.wikipedia.org/wiki/Black%E2%80%93Scholes_model
[13:41:00] <ForNeVeR> Модель чорных дыр!
[13:41:03] <ɹǝɟılʍǝu> m4n71k0r, ого!
[13:41:29] <gsomix> ForNeVeR, счорных.
[13:41:37] <ForNeVeR> Да.
[13:41:45] <m4n71k0r> хоть какая-то модель этого говна
[13:41:50] <m4n71k0r> ой, простите
[13:41:52] <m4n71k0r> слово на Г
[13:41:57] <gsomix> Гсомикс?
[13:42:09] <ForNeVeR> о_О
[13:42:36] <m4n71k0r> ну да, в азбуке Г - гсомикс
[13:42:49] <gsomix> Ф - форнёвер.
[13:42:53] <ForNeVeR> А на М — мультикор!
[13:42:59] <ɹǝɟılʍǝu> Модули от нигера https://www.youtube.com/watch?v=IA14LXnBcJg
[13:43:07] <gsomix> Ъ - миксер.
[13:43:11] <ForNeVeR> XD
[13:43:41] <gsomix> ɹǝɟılʍǝu, ебать, ковбой!
[13:44:22] dzhon вышел из конференции
[13:44:42] dzhon зашёл в конференцию
[13:44:42] <ForNeVeR> Хуясе, и правда ковбой :)
[13:55:39] rexim зашёл в конференцию
[14:04:59] <rexim> $send Minoru https://www.youtube.com/watch?v=C4Pdv2KqNnM
[14:05:04] <gsomix> ForNeVeR, ну, чего-то там закоммитил.
[14:05:04] <rexim> :(
[14:05:07] <gsomix> Можно будет дальше работать.
[14:05:14] <ForNeVeR> gsomix: куда?
[14:05:27] <gsomix> ForNeVeR, себе в репу.
[14:05:35] <gsomix> https://github.com/gsomix/skalarprodukt
[14:05:44] <gsomix> Ставьте звездочки, рассказывайте друзья.
[14:05:51] <gsomix> *друзьям
[14:07:49] dzhon вышел из конференции
[14:07:53] dzhon зашёл в конференцию
[14:08:13] * ForNeVeR настряпал ишуёв!
[14:08:13] <ɹǝɟılʍǝu> gsomix, ах ты гсомяка!
[14:10:02] <gsomix> Пойду шаурму куплю и работать буду.
[14:11:29] <ForNeVeR> https://github.com/gsomix/skalarprodukt/issues
[14:11:37] <gsomix> ForNeVeR, спасибо!
[14:13:09] <ForNeVeR> gsomix: и ты сам себе составь ишуй, в котором перечисли, что ещё хочешь запилить!
[14:13:20] <ForNeVeR> Ну или что изучить на предмет потенциального запиливания, например.
[14:17:56] matraskin вышел из конференции
[14:28:14] gsomix вышел из конференции
[14:28:37] gsomix зашёл в конференцию
[14:28:48] <ForNeVeR> gsomix: у тебя опять GUID!
[14:29:00] <gsomix> Я такой, да.
[14:30:58] dzhon вышел из конференции
[14:30:58] dzhon зашёл в конференцию
[14:48:18] <gsomix> https://github.com/mathnet/mathnet-numerics/issues/438
[14:48:20] <gsomix> ForNeVeR, ^
[14:48:54] <ForNeVeR> Пятилетний ребёнок пишет на C#?
[14:49:06] <gsomix> ForNeVeR, .__.
[14:49:32] <gsomix> ForNeVeR, я хотел спросить, почему работа с jagged arrays может быть быстрее, чем с одномерны.
[14:49:38] <ForNeVeR> > jagged arrays is faster on dot net than multidimensional arrays
Я в этом не уверен; надо смотреть, что он с ними делает.
[14:50:19] <ForNeVeR> gsomix: предлагаю для начала посмотреть на то, как такой массив располагается в памяти.
[14:50:42] <ForNeVeR> C# interactive умеет в unsafe? :)
[14:51:00] <gsomix> ForNeVeR, я вполне подозреваю, что у чувака проблемы с обходом памяти.
[14:51:16] <gsomix> Ну, у Math.Net, например, все по столбцам хранится, а в него -- по строкам.
[14:51:17] <gsomix> Но хз.
[14:51:31] <ForNeVeR> Да, я тоже так полагаю.
[14:51:49] <ForNeVeR> gsomix: http://stackoverflow.com/questions/468832/why-are-multi-dimensional-arrays-in-net-slower-than-normal-arrays
[14:52:38] dzhon вышел из конференции
[14:52:39] dzhon зашёл в конференцию
[14:53:00] <ForNeVeR> Ответ хорош!
[14:53:22] <ForNeVeR> gsomix: http://stackoverflow.com/users/22656/jon-skeet — смотри как мило, Скит поставил себе аватарку из того комикса :)
[14:53:25] <sleepyvenom> https://www.gravatar.com/avatar/6d8ebb117e8d83d74ea95fbdd0f87e13?s=328&d=identicon&r=PG
Ох, лол!
[14:53:36] <sleepyvenom> Да!
[14:53:37] <gsomix> Ыы.
[14:54:13] <gsomix> А я его даже читал немного.
[14:54:16] <gsomix> Но что-то бросил.
[14:55:50] <gsomix> ForNeVeR, ну, ок. Я спокойно, значит, буду хранить матрицы в одномерном массиве.
[14:55:57] <gsomix> И следить на правильностью его обхода.
[14:56:00] <gsomix> *за
[14:56:05] <ForNeVeR> Ок, дозволяю.
[15:08:34] Minoru зашёл в конференцию
[15:09:16] <rexim> Minoru, https://www.youtube.com/watch?v=C4Pdv2KqNnM
[15:10:20] dzhon вышел из конференции
[15:10:34] dzhon зашёл в конференцию
[15:12:53] <Minoru> rexim: новая нарезка из стрима тоже идеальна. Ну, в смысле, нет ничего, что лично мне хотелось бы поменять. Можешь расслабиться и начать экспериментировать с мелочами
[15:13:24] <Minoru> олсо что мне сделать, чтобы у тебя появилось время развить те 20 секунд мелодии в полноценный трек? ._.
[15:16:07] <Minoru> а попугай интересный, да. Я не ожидал, что он так спокойно будет реагировать на переворачивания туда-сюда, это же неестественное для него состояние
[15:19:00] <rexim> Minoru, про новую нарезку, спасибо! ^_^ Правда мне она так себе. Я ее, кстати, за 2 часа сделал (таки надрочился) тяп-ляп. Использовал все старые трюки и ничего нового не привнес. :(
[15:19:17] <rexim> Плюс материал не очень. Надо работать еще в сторону улучшения качества самих стримов.
[15:20:08] <rexim> По поводу трека, мне тоже самом хочется его довести до ума. Я могу себе долгоиграющую таску сделать и по минут 10 в день над этим работать. Но это будет очень долго. Минимум месяц
[15:20:58] <rexim> По поводу попугая, на этом же канале чувак где-то именно про это рассказывал, что даже просто гладить для них неестественно. А уж на спину переворачивать нужно с самого детства учить.
[15:21:22] <rexim> Это у них потому, что в природе для них любое прикосновение к спине - признак атаки хищника.
[15:23:04] ckorzhik зашёл в конференцию
[15:25:59] <Minoru> rexim: «минимум месяц» — это в ∞ раз быстрее, чем «никогда» ;)
[15:29:04] <Minoru> а как вы считаете, это ок, что я самостоятельно охраняю свой ишшуй от людей, которые приходят и пытаются раздуть scope? https://github.com/vimperator/vimperator-labs/issues/538
[15:29:19] <Minoru> проект, естественно, не мой, я просто пользователь, нашедший баг и зарепортивший ишшуй
[15:29:25] <Minoru> разраб там отписался и пропал куда-то
[15:29:47] <Minoru> и теперь приходят пользователи и пишут о похожих (но совершенно других) проблемах
[15:29:48] gsomix вышел из конференции
[15:30:12] <Minoru> и я, увидев, куда это катиться, начал им отвечать, чтобы они делали свои ишшуи, а не засирали мой
[15:32:18] <m4n71k0r> на работе переехали с жаббера/слэка/хипчата на https://github.com/RocketChat/Rocket.Chat хм...
[15:33:44] <Minoru> > The Ultimate … WebChat Platform
Лет пять продержиться хоть? :)
[15:34:17] <Minoru> первый коммит в середине 2015. Фига вы там рисковые ребята!
[15:35:38] <m4n71k0r> ты видел какой у них размах)
[15:36:11] <m4n71k0r> ставится на бабушкину швейную машинку даже
[15:36:23] <m4n71k0r> p2p шаринг файлов в проекте
[15:39:39] <ɹǝɟılʍǝu> rexim, фыр-фыр-фыр?
[15:39:55] <m4n71k0r> охм https://www.nuget.org/packages/Rocket.Chat.Net/0.0.12-pre
[15:46:44] dzhon вышел из конференции
[15:46:48] sss|zombie вышел из конференции
[15:47:13] dzhon зашёл в конференцию
[15:50:32] <rexim> ɹǝɟılʍǝu, да
[15:51:23] <Minoru> m4n71k0r: ты намекаешь, что за отведённые им пять лет они даже из беты не выберутся? :)
[15:51:39] <rexim> Minoru, это имеет смысл если ты сам собираешься в конечном счете над ишуем работать.
[15:53:32] <Minoru> пока что не собираюсь, но как знать, как жизнь сложится
[15:53:58] <rexim> Ага
[15:55:22] <ForNeVeR> m4n71k0r: нихуясе!
[16:01:17] <m4n71k0r> жаль, что на монге
[16:04:05] <ForNeVeR> Метеор всё на монге.
[16:05:21] dzhon вышел из конференции
[16:05:34] dzhon зашёл в конференцию
[16:05:54] <ForNeVeR> rexim: https://dl.dropboxusercontent.com/u/36383162/14751763099572.jpg
[16:10:50] <rexim> ForNeVeR, лол
[16:28:11] <rexim> m4n71k0r, го на русте хрустеть?
[16:28:32] * rexim .oO( что я сейчас сказал? )
[16:28:39] <m4n71k0r> rexim: бессмыслица какая-то
[16:28:48] <m4n71k0r> Go на Rust
[16:28:55] <rexim> Гонаруст!
[16:29:07] <rexim> m4n71k0r, у тебя гонаруст соскочил!
[16:29:55] <rexim> Хм...
[16:30:02] <rexim> Может сегодня rust@ на стрим позвать?
[16:30:26] <rexim> Там один цодингтим ._.
[16:30:27] <rexim> Ладно
[16:36:52] dzhon вышел из конференции
[16:36:53] dzhon зашёл в конференцию
[16:39:19] <ɹǝɟılʍǝu> Корутинки https://www.youtube.com/watch?v=bzAbe1VzhKk
[16:39:20] unclechu зашёл в конференцию
[16:45:55] <rexim> Гор?!
[16:47:14] <rexim> Горутины!
[16:54:03] <ɹǝɟılʍǝu> https://www.youtube.com/watch?v=EkdfiHs78DY
[16:54:05] <ɹǝɟılʍǝu> rexim, https://www.youtube.com/watch?v=EkdfiHs78DY
[16:55:18] <rexim> ɹǝɟılʍǝu, https://github.com/rexim/beatwave/blob/master/src/core/openlineartransition.hpp#L7
[16:56:09] <rexim> Я теперь тебе буду в качестве ответов рандомные куски говна из бетвейв кидать. :)
[16:56:10] Kerrigаn зашёл в конференцию
[16:56:12] <rexim> У меня их там много!
[16:56:16] <Kerrigаn> ааааа
[16:56:21] <Kerrigаn> каждый день готовит новые открытия
[16:56:28] <ForNeVeR> rexim: у меня их там монго!
[16:56:33] <rexim> xD
[16:56:35] <ɹǝɟılʍǝu> rexim, ого!
[16:56:35] dzhon вышел из конференции
[16:56:44] dzhon зашёл в конференцию
[16:57:04] <Kerrigаn> сегодня я узнаю, что в андроиде 3 метода, чтобы указать элементу UI его вертикальную координату
[16:57:04] <ForNeVeR> ich tum mongo
[16:57:04] <rexim> xDDD
[16:57:08] <rexim> STAAHPP11
[16:57:16] * rexim скатывается под стод
[16:57:27] <ForNeVeR> POD STOD
[16:57:36] <Kerrigаn> какой из них юзать, чтобы всё ставилось в нужные места
[16:57:46] <Kerrigаn> и не уезжало непонятно куда
[16:58:05] <Kerrigаn> и СТАВИЛОСЬ, а не "ну ты типа сказал поставить, а я вот не буду"
[16:58:11] <Kerrigаn> непонятно
[16:59:07] <rexim> ForNeVeR, спасибо. Я только сейчас сумел остановиться ._.
[16:59:13] <rexim> Чот меня порвало
[16:59:17] <ForNeVeR> :)
[16:59:36] <Kerrigаn> GONNA RUST
[16:59:50] <rexim> NOOOooo....
[17:01:10] nable зашёл в конференцию
[17:02:38] <rexim> Minoru, сеня, кстати, димуперо стрим. Заходи, твою любимую сыграю. :)
[17:05:56] <rexim> ForNeVeR, it's a pretty rough time http://i.imgur.com/HcK25jC.png
[17:06:19] <ForNeVeR> rexim: YOU SHALL NOT PERFORM
[17:06:28] <rexim> Я так и не понял, что там у них произошло. :)
[17:06:46] <rexim> Какое-то видимо дефолтное сообщение на какой-нибудь catch(Throwable e)
[17:06:55] <rexim> Как обычно
[17:07:41] <rexim> Под catch(Throwable e) я имеел ввиду скорее концепцию, чем конкретный язык или платформу
[17:08:37] <ForNeVeR> rexim: On Error Resume Next
[17:08:51] <ForNeVeR> Вот это была православная платформа!
[17:09:08] <ForNeVeR> rexim: слушай! Слушай!
[17:09:10] <rexim> А вы знали, что моим первым языком программирования был VB6?
[17:09:15] <ForNeVeR> rexim: Томас пишет на бейсике!
[17:09:21] <rexim> ForNeVeR, точно!
[17:09:28] <ForNeVeR> Прямо в комментарии!
[17:09:32] <rexim> !!1
[17:09:56] <rexim> До VB6 у меня был очень странный язык, но игрушечный.
[17:10:06] <ForNeVeR> Моргани?
[17:10:10] <rexim> -_-
[17:10:16] <ɹǝɟılʍǝu> Лол
[17:10:17] <rexim> Ага, а я сам себе дедушка.
[17:10:26] <ForNeVeR> Я знал!
[17:10:47] <ForNeVeR> rexim: говорят, ты хотел научиться писать на C++ за 21 день, но промахнулся на пару десятков лет!
[17:11:02] <rexim> Блин
[17:11:05] <rexim> Все разболтали...
[17:11:50] <ForNeVeR> А в хоумстаке был и подобный сюжет тоже ,P
[17:11:51] <rexim> Моим самым-самым первым языком был скриптовый язык для карт Warcraft III
[17:12:00] <ForNeVeR> JASS!
[17:12:12] <ForNeVeR> Для него нынче есть IDE даже.
[17:12:22] <rexim> ForNeVeR, это жопа для JVM?
[17:12:25] <rexim> jAss
[17:12:31] <ForNeVeR> rexim: нет же ._.
[17:12:41] <rexim> А, ну ладно
[17:12:45] <ForNeVeR> rexim: JASS — это скриптовый язык для карт WarCraft III.
[17:12:49] <rexim> Да?
[17:12:53] <ForNeVeR> Да!
[17:12:58] <rexim> Пиздец. Я только сейчас его название узнал. :)
[17:13:00] <rexim> Столько лет прошло.
[17:13:07] <rexim> ForNeVeR, спасибо.
[17:13:25] <ForNeVeR> rexim: а я не смог в редакторе найти, где ж там писать код :)
[17:13:32] <rexim> ForNeVeR, в стандартном редакторе карт можно было на уровне AST прогать.
[17:13:43] <ForNeVeR> Я там токо триггеры видал.
[17:13:57] <ForNeVeR> Ну, они были достаточно комплексные, там можно было циклы и всё такое.
[17:13:58] <rexim> Так в этих триггерах были все основные конструкции.
[17:14:01] <ForNeVeR> Но кода не было видно.
[17:14:11] <rexim> А, ну вот я на вот этом программировал.
[17:14:15] <ForNeVeR> Однако это компилировалось в код (+ метаданные, наверное)
[17:14:19] <rexim> Ого!
[17:14:24] <rexim> Круто.
[17:14:30] <ForNeVeR> И код можно было редактировать в модифицированном редакторе.
[17:14:45] <ForNeVeR> Первую Доту писали уже на этом языке.
[17:15:10] <rexim> Збс.
[17:17:56] <ɹǝɟılʍǝu> Есть такое.
[17:18:21] <ForNeVeR> rexim: код выглядит вот так: https://gist.github.com/ForNeVeR/7b69aec97ec2d12ac844eee18041016a
[17:18:43] <ForNeVeR> Я где-то нарыл исходники опенсорсного (!) Advanced Melee AI.
[17:18:55] <Kerrigаn> ForNeVeR: выглядит как паскаль
[17:19:02] <Kerrigаn> почему-то
[17:19:11] <ForNeVeR> Мне чото больше Lua напомнил.
[17:19:31] <rexim> ForNeVeR, норм
[17:19:50] <rexim> Хуячить можно
[17:19:56] <ForNeVeR> https://en.wikipedia.org/wiki/JASS
[17:20:20] dzhon вышел из конференции
[17:20:21] dzhon зашёл в конференцию
[17:20:41] <rexim> Под Светочку бы.
[17:20:41] <rexim> К языку.
[17:20:41] dzhon вышел из конференции
[17:20:46] <rexim> Надо мод для емакса написать
[17:20:54] <Kerrigаn> galaxy как си выглядит
[17:20:56] <Kerrigаn> норм
[17:21:07] <Kerrigаn> http://starcraft-2-galaxy-editor-tutorials.thehelper.net/tutorials.php?view=155112
[17:22:58] <ForNeVeR> Был какой-то cJASS с изменённым синтаксисом.
[17:37:53] dzhon зашёл в конференцию
[17:46:45] rexim вышел из конференции
[17:49:08] gsomix зашёл в конференцию
[17:49:16] <gsomix> Утро?
[17:49:39] <ForNeVeR> Так точно!
[17:49:44] <ForNeVeR> Надо за Томасом поревьюить :)
[17:55:38] dzhon вышел из конференции
[17:55:39] dzhon зашёл в конференцию
[17:56:42] <gsomix> ForNeVeR, я, кажется, придумал, как в типе матрцы закодировать размеры.
[17:56:52] <gsomix> Но не знаю, как это будет выглядет точно.
[17:56:56] <gsomix> Надо проверить будет.
[17:58:35] <ForNeVeR> type Nat : Zero | (Succ : Nat → Nat)
[17:58:38] <ForNeVeR> Вот как :)
[17:59:18] <gsomix> ,__,
[17:59:20] <ForNeVeR> Ну, в смысле, как всегда во введении в зависимую типизацию натуральные числа определяют.
[17:59:43] <ForNeVeR> Правда, у них там сходу уже есть функция Succ, которая принимает тип и возвращает тип.
[17:59:53] <ForNeVeR> Но ты умный, ты что-нибудь придумаешь. Да? :)
[18:00:02] <gsomix> T__T
[18:08:01] Славный капитан зашёл в конференцию
[18:13:24] dzhon вышел из конференции
[18:20:11] dzhon зашёл в конференцию
[18:22:53] m4n71k0r вышел из конференции
[18:26:37] rexim зашёл в конференцию
[18:27:11] <rexim> gsomix: тыж экзорцыст!
[18:34:37] nightmare зашёл в конференцию
[18:34:51] nightmare вышел из конференции
[18:38:49] dzhon вышел из конференции
[18:39:09] dzhon зашёл в конференцию
[18:39:09] ckorzhik вышел из конференции
[18:43:52] rexim вышел из конференции
[19:02:36] dzhon вышел из конференции
[19:02:37] dzhon зашёл в конференцию
[19:08:17] portnov зашёл в конференцию
[19:08:35] <unclechu> у меня одного гитхаб откликается о-о-очень медленно?
[19:09:38] <ForNeVeR> У меня тоже сегодня тормозит. Миксер жаловался.
[19:10:04] <unclechu> может лёгкой руки роскомнадзора подсунули свою миддлварь чтобы парсить шифрованный трафик и блокировать репы, в которых есть файл suicide.txt? и эта их миддлварь не держит нагрузку?
[19:11:05] <ForNeVeR> Пока считаю это сомнительным.
[19:11:29] <ForNeVeR> Не думаю, что они могут дешифровать весь трафик. Не думаю, что они будут пытаться.
[19:11:42] <unclechu> через тор более-менее нормально гоняется
[19:12:06] <unclechu> ForNeVeR, я не очень разбираюсь как это делается, но есть же такое явление как подмена сертификата провайдером?
[19:12:09] <ForNeVeR> Как будто твой тор по какой-то причине избегает привилегии быть расшифрованным :)
[19:12:21] <ForNeVeR> unclechu: тут интересно, на самом деле.
[19:12:35] <ForNeVeR> unclechu: дело в том, что тогда твоя машина должна доверять сертификату провайдера.
[19:12:48] <unclechu> ForNeVeR, нет, просто открытие гитхаба через тор, не прогоняется через духовно-скреплённые сервера
[19:13:14] <ForNeVeR> Причём не просто так, абстрактно доверять, а прямым текстом верить в то, что для домена github.com сертификат может быть выписан в CA Roskomnadzor.
[19:13:33] <ForNeVeR> По идее, у тебя на машине такой CA в списке доверенных значиться из коробки не должен.
[19:13:50] a1batross зашёл в конференцию
[19:14:00] <ForNeVeR> Кто-то из существующих и уже доверенных CA _может_ выписать такой сертификат для гитхаба и подарить его РКН.
[19:15:00] <ForNeVeR> Но
1) есть certificate pinning, который сразу позволит добрым людям заметить подмену
2) этот CA сразу, моментально перестанет быть доверенным для крупных игроков (google, mozilla, да даже oracle / microsoft). С ближайшим обновлением сертификат стухнет, а с ним и полностью весь CA.
[19:15:13] <unclechu> ForNeVeR, у меня кстати такое продолжается дня 3 наверное где-то, я сначала грешил на гугловские DNS-ы, но гипотеза оказалась неверное
[19:15:43] <ForNeVeR> unclechu: в общем, старина, не паникуй. Моё мнение — на современном технологическом уровне рано паниковать ещё.
[19:16:36] <ForNeVeR> Если какие-то злодеи (неважно, афилированные с властью или просто бандиты) будут пытаться дешифровать наш трафик тем или иным способом — мы с ними ещё поборемся, и всыпем перцу.
[19:16:49] <unclechu> ForNeVeR, да не то чтобы я паниковал, я просто раза с 5-ого только могу нормально коммент в ишшуй запостить, а через тор кажется всё ок, загадочность
[19:17:02] <unclechu> где-то трафик зажёвывается
[19:17:13] <ForNeVeR> В интернете такое случается.
[19:17:40] <ForNeVeR> Попробуй потрейсить пакеты — может, сможешь как-нибудь определить, где они теряются.
[19:18:05] <unclechu> да они вроде не теряются, просто пинг очень жирный
[19:18:41] <ForNeVeR> А трейс же позволит и разницу пингов между узлами увидеть?
[19:18:54] <ForNeVeR> Узнаешь, кто добавляет больше всех
[19:19:06] <ForNeVeR> rkn.nsa.gov :)
[19:19:16] <uggur> XD
[19:20:40] <unclechu> мой трафик до гитхаба зачем-то ходит через татарстан
[19:22:32] <Kerrigаn> еее, починил заголовки для хабра
[19:22:40] <a1batross> Читаю вот лог чата.
[19:22:52] <a1batross> Мне кажется, что тут уже такое обсуждали.
[19:23:00] <ForNeVeR> Какое?
[19:23:16] <gsomix> ForNeVeR, drunkvs упала.
[19:23:28] <ForNeVeR> gsomix: это норма!
[19:23:36] <ForNeVeR> У меня падает по три раза на дню :)
[19:24:29] <ForNeVeR> У меня tracert github.com вообще не вывел ни одного узла.
[19:24:37] <a1batross> ForNeVeR: да просто дежавю.
[19:24:57] dzhon вышел из конференции
[19:24:59] <ForNeVeR> a1batross: в логах много чего пишут. По поводу какого разговора-то?
[19:25:19] <a1batross> ForNeVeR: про СА минут 10 назад.
[19:25:24] <ForNeVeR> А.
[19:25:31] <ForNeVeR> Ну да, не первый раз уже обсуждаем.
[19:25:36] dzhon зашёл в конференцию
[19:25:57] <ForNeVeR> Тема-то важная, и при этом злободневная. Неудивительно.
[19:26:45] <ɹǝɟılʍǝu> > 741 additions and 1619 deletions
[19:26:47] <ɹǝɟılʍǝu> Ух нахуячил!
[19:27:15] <ForNeVeR> ɹǝɟılʍǝu: хорошо!
[19:27:33] <ForNeVeR> Пустые строки чтоли удалил? :D
[19:27:48] <ɹǝɟılʍǝu> ForNeVeR, нет.
[19:28:38] <portnov> http://psilonsk.livejournal.com/478817.html и вам тоже.
[19:29:28] <Kerrigаn> ненавижу опенспейсы
[19:37:46] Graf зашёл в конференцию
[19:39:41] <ɹǝɟılʍǝu> Что ж.
[19:39:45] <ɹǝɟılʍǝu> Время учится ребейзу.
[19:39:56] <ɹǝɟılʍǝu> Нужно соскошить всю эту ораву коммитов в один.
[19:39:58] <gsomix> ForNeVeR, тайппровайдеры -- это непросто.
[19:40:16] <ForNeVeR> gsomix: дык кто бы сомневался!
[19:40:33] <ForNeVeR> ɹǝɟılʍǝu: squash и rebase — совсем разное.
[19:40:38] ckorzhik зашёл в конференцию
[19:40:57] <ɹǝɟılʍǝu> ForNeVeR, ну я вот тут разбираю https://ariejan.net/2011/07/05/git-squash-your-latests-commits-into-one/
[19:41:36] <ForNeVeR> А, сквошить можно ребейзом? Ок.
[19:41:55] <ForNeVeR> Если честно, я это делал с помощью git reset :)
[19:42:07] <ɹǝɟılʍǝu> омг)
[19:42:19] <ForNeVeR> Там был какой-то режим (mixed, кажется), после которого можно сделать commit, и всё становится как надо :)
[19:50:22] <gsomix> ForNeVeR, Minoru, ɹǝɟılʍǝu, http://pastebin.com/PvvYmBfF
[19:50:39] <gsomix> Ну, размер в тип закодировал.
[19:50:49] <gsomix> Теперь нужно еще функционал привязать к размеру.
[19:51:58] <ForNeVeR> gsomix: а как ты это сделал?
[19:52:04] <ForNeVeR> Это очень интересно!
[19:52:32] <ForNeVeR> Size — это тайп-провайдер?
[19:52:41] <gsomix> ForNeVeR, Size -- это тайппровайдер с двумя статическими параметрами.
[19:52:50] <ForNeVeR> Ага, отлично"
[19:53:09] dzhon вышел из конференции
[19:53:10] dzhon зашёл в конференцию
[19:53:48] <gsomix> ForNeVeR, ну, мне надо поэкспериментировать с этим.
[19:53:55] <gsomix> Чтобы выглядело симпатично.
[19:53:57] <gsomix> Кстати.
[19:54:04] <gsomix> Ошибки при несовпадении типов.
[19:54:09] <gsomix> http://pastebin.com/5xC1RtVg
[19:54:21] <Minoru> ForNeVeR: O_O
[19:54:24] <ForNeVeR> Хорошие ошибки.
[19:54:29] <ForNeVeR> Minoru: что?
[19:54:30] <Minoru> это реакция на squash с помощью reset
[19:54:39] <ForNeVeR> А что такого-то? :)
[19:55:03] <Minoru> мне просто интересно, как так вышло, что ты именно так научился
[19:55:39] <Minoru> про саму возможность сделать сквош, вроде, обычно именно в контексте rebase рассказывают, потому что это одна из опций для rebase -i
[19:55:53] <Minoru> а в commit та же концепция называется amend
[19:56:05] <Minoru> т.е. даже сам интерфейс одну и ту же вещь в разных случаях по-разному называет
[19:57:10] <gsomix> ForNeVeR, дальше хотелось бы, чтобы эти типы реализовывали определенный интерфейс, а я бы в DenseMatrix к этому интерфейсу привязался.
[19:58:07] <Minoru> gsomix: красивенько, мне нравится!
[19:59:38] <ForNeVeR> Minoru: чота я вообще не вижу связи между этими вещами, если честно.
[19:59:46] <ForNeVeR> Между всеми четырьмя!
[20:00:06] <ForNeVeR> rebase, squash, amend и reset в моём представлении четыре разных операции :)
[20:00:40] <ForNeVeR> gsomix: а зачем этот интерфейс?
[20:00:59] <ForNeVeR> А, шоб матрица знала свой размер.
[20:01:13] <ForNeVeR> Да, интересно, как это можно сделать.
[20:01:26] <gsomix> ForNeVeR, да, чтобы можно из типа было вытащить размеры.
[20:01:33] <gsomix> Сейчас посмотрю!
[20:02:22] <Minoru> ForNeVeR: «git commit --amend» делает то же самое, что и «git commit && git rebase --interactive "HEAD~2" и в открывшемся редакторе во второй строке написать «squash», чтобы последний коммит слился с предпоследним». С этим тезисом согласен?
[20:02:36] <ForNeVeR> Ад кокой-то.
[20:02:38] <ForNeVeR> Не согласен!
[20:02:42] <ForNeVeR> Чото писать в редакторах
[20:02:45] <ForNeVeR> НЪТ!
[20:03:04] <ForNeVeR> Я вообще, если честно, интерактивным режимом в гите не пользуюсь.
[20:03:05] <Minoru> но ведь… вот этот «ад» — это и есть squash!
[20:03:16] <ForNeVeR> И сообщения коммитов пишу через -m "xxx: yyy"
[20:03:32] <ForNeVeR> То есть даже и редактором не пользуюсь при работе с гитом.
[20:03:35] <uggur> ForNeVeR: а мержишь как? :)
[20:03:42] <ForNeVeR> TortoiseMerge!
[20:03:52] <ForNeVeR> Она у меня как мержтул прописана.
[20:04:13] <uggur> "ForNeVeR: TortoiseMerge!" Тото..ро? %)
[20:04:20] <ForNeVeR> Чо?
[20:04:31] <uggur> ForNeVeR: а если автоматически мержится?
[20:04:33] <uggur> автомерж
[20:04:39] <uggur> без конфликтов
[20:04:44] <ForNeVeR> uggur: но тогда-то мне точно не нужен редактор, верно?
[20:04:49] <uggur> нууу...
[20:04:54] <uggur> у меня порой спрашивает
[20:05:05] <ForNeVeR> Чото у меня не спрашивал.
[20:05:10] <uggur> после gut pull
[20:05:23] <uggur> я замечу, когда конкретно спрашивает, и напишу тебе :)
[20:05:24] <ForNeVeR> А чего спрашивает-то?
[20:05:51] <uggur> Открывает интерактивный режим с редактором и скопипащенным текстом "merged from..." и т.п.
[20:06:04] <uggur> и диффом закомментированным
[20:06:21] <ForNeVeR> ._
[20:06:42] <ForNeVeR> Я не очень много пуляюсь консольным гитом, если честно.
[20:06:48] <ForNeVeR> И ни разу такого поведения не видал.
[20:07:09] <Minoru> это стандартное поведение
[20:07:19] <Minoru> git pull — это git fetch && git merge
[20:07:30] <Minoru> вот при мерже-то и выскакивает редактор с просьбой написать сообщение
[20:07:37] <ForNeVeR> А разве нельзя было его настроить, шоб он делал rebase?
[20:07:46] <Minoru> есть ещё git pull --rebase, он делает git fetch && git rebase, там ничего не выскакивает
[20:07:48] <Minoru> ForNeVeR: можно
[20:07:54] <ForNeVeR> Ну и вообще, я обычно делаю форспуш, а потом пул :)
[20:08:08] <uggur> XD
[20:08:10] <ForNeVeR> >,]
[20:08:11] <Minoru> ForNeVeR: Миксера на тебя нет!
[20:08:20] <Minoru> так-с, вернёмся к нашим баранам
[20:08:25] <ForNeVeR> Minoru: конечно нет, я же его форспушнул!
[20:08:35] <Minoru> ForNeVeR: сообщения к коммитам я тоже обычно пишу через -m, но это к делу не относится
[20:08:38] <uggur> ForNeVeR: а что ты в него зафорспушил?
[20:09:03] <ForNeVeR> Minoru: твои описания "последний коммит слился с предпоследним" выглядят очень душно. А если мне сто коммитов надо засквошить?
[20:09:18] <ForNeVeR> Надо девяносто девять раз писать squash-squash-squash?
[20:09:38] <Minoru> ForNeVeR: то ты выделяешь всю колонку и заменяешь там «pick» на «squash», да. Ну, я так делаю.
[20:09:50] <ForNeVeR> В то же время резетом можно мгновенно переключиться куда надо, не выделяя никаких колонок!
[20:09:52] <portnov> :%s/^pick/s
[20:09:57] <ForNeVeR> Всё, что нужно знать — это хэш коммита!
[20:09:57] <Minoru> но твой способ с git reset для такой ситуации и правда лучше
[20:11:25] <Minoru> portnov: пруф или :2,$s/^pick/s
[20:12:19] dzhon вышел из конференции
[20:13:21] <Minoru> ForNeVeR: я к чему веду: концептуально и git commit --amend, и вот этот ад с rebase --interactive и squash, и git reset --soft 'HEAD~чототам' && git commit --all — это всё одна и та же операция, которую мне кажется правильным называть squash
[20:13:25] dzhon зашёл в конференцию
[20:13:47] <Minoru> только вот во втором случае, с commit, она в интерфейсе называется amend, а в третьем она вообще явно не называется
[20:13:55] <ForNeVeR> Minoru: ну да, с этим я согласен.
[20:14:35] <Minoru> а, ок, значит, мы с тобой изначально были одного мнения!
[20:16:22] <ForNeVeR> Minoru: более того, можно просто резетнуться на нужный коммит и переписать / заменить весь код нужным.
[20:16:36] <ForNeVeR> Это и делает резет, но можно и сторонними средствами этого же добиться.
[20:16:42] <ForNeVeR> И получится ровно то же самое.
[20:17:03] <Minoru> ForNeVeR: да, но потом тебе придётся всё остальное руками на новый коммит ребейзить
[20:17:16] <ForNeVeR> Так ведь нету же остального.
[20:17:34] <ForNeVeR> Ты руками взял содержимое самого последнего коммита, и заменил им содержимое первого.
[20:17:41] <ForNeVeR> "Сквош"
[20:17:58] <Minoru> а зачем тогда куда-то резетиться? Если остального нет, то ты на последнем коммите ветки, и ничего делать не надо
[20:18:08] <ForNeVeR> Но ведь оно есть
[20:18:15] <ForNeVeR> Я имел в виду, что его концептуально нет.
[20:18:26] <Minoru> я уже запутался :(
[20:18:27] <ForNeVeR> В смысле, что оно не нужно, его не надо ребейзить или типа того.
[20:18:31] <ForNeVeR> Резет-коммит-форс пуш!
[20:18:33] <Minoru> ты можешь нарисовать ASCII-артом историю?
[20:18:37] <ForNeVeR> Это путь коммуниста!
[20:18:51] <Minoru> ну, чтобы понятно было, что у тебя было, потом какие ты команды выполнил и что у тебя стало
[20:19:22] <ForNeVeR> Было а (1)->б->в (2)
Ветка 1 на коммите а, ветка 2 на коммите в
[20:19:30] <ForNeVeR> Хочу иметь а->в(1)
[20:20:55] <ForNeVeR> Копирую "в" куда-то, резетаюсь на "а" (ну или пофиг, чекаутю ветку 1), копирую "в" обратно с заменой (и удалением лишнего), делаю коммит и пуш (форс, если оставался в ветке 2; не форс, если переключился на 1).
[20:20:59] <ForNeVeR> Ветку 2 удоляю.
[20:21:43] <Minoru> «копирую»? :(
[20:22:03] <ForNeVeR> cp
[20:22:06] <ForNeVeR> Знаешь, есть такая цоманда
[20:22:10] <ForNeVeR> Она цопирует файлы.
[20:22:19] <Minoru> ты, может, ещё и перед пуллом свой клон куда-то в сторонку копируешь на случай, если там мерж понадобится?
[20:22:25] <ForNeVeR> Конечно!
[20:22:33] <ForNeVeR> А ещё я делаю cd .git; git init
[20:22:41] <Minoru> лол
[20:23:15] <Minoru> короче, я считаю, что Git уже достаточно взрослая тулза, чтобы при его использовании не нужно было для операций на историей использовать посторонние команды
[20:23:26] <ForNeVeR> Помимо форс пуша я ещё делаю форс пулл!
[20:23:52] <ForNeVeR> Это когда кто-то другой форспушнул, и, чтоб ничо не испортить, тебе надо резетнуться на последний коммит из ориджина, а не смержить его
[20:26:16] <gsomix> ForNeVeR, такое ощущение, будто я на плюсах пишу.
[20:26:40] <Minoru> твой юз-кейс отлично покрывается git rebase --interactive: ты делаешь git rebase --interactive "а..в", открывается редактор, ты в нём выполняешь команду, которую показал Портнов, закрываешь редактор и оказываешься в a'(2), после чего делаешь git checkout 1 && git reset 2, чтобы перенести ветку 1 на a'
[20:26:41] <ForNeVeR> gsomix: это же круто!
[20:26:57] <ForNeVeR> Minoru: только между а и в у меня обычно коммитов триста
[20:27:09] <ForNeVeR> Триста строчек ни в какой редактор не влезут!
[20:27:41] <ForNeVeR> Потому что разрешение экрана — 320 x 240
[20:27:48] <ForNeVeR> Хотя... если поставить его вертикально...
[20:28:24] <ForNeVeR> То можно иметь по 1.0(6) пиксела на каждую строчку!
[20:28:52] <Minoru> ForNeVeR: команда Порнова работает для любого количества строчек
[20:29:08] <ForNeVeR> Minoru: редактор мне покажи с расширителем монитора!
[20:29:15] <ForNeVeR> Или он что, не в экранном буфере текст хранит?
[20:29:18] * ForNeVeR озадачен
[20:29:43] <Minoru> оно заменяет на всех строчках, независимо от того, помещаются они к тебе на экран или нет
[20:29:49] <ForNeVeR> Minoru: ну и я (уже без шуток) не пользуюсь такими редакторами, так что эта команда мне ничего не говорит.
[20:30:22] <ForNeVeR> И я не вижу смысла запускать какой-то редактор, если он мне не нужен. Я ж не собираюсь ничего редактировать.
[20:30:37] <Minoru> ты собираешься редактировать историю
[20:30:40] <ForNeVeR> Вариант с ребейзом лаконичнее, не зависит от редактора, и легко превращается в скрипт
[20:30:47] <ForNeVeR> Неа, я ничего не собираюсь редактировать.
[20:30:53] <ForNeVeR> Я собираюсь создать новую историю!
[20:31:06] <ForNeVeR> Хочу ли я затирать при этом старую — под вопросом.
[20:31:08] dzhon вышел из конференции
[20:31:37] <ForNeVeR> Ну вот в моём кейсе ветка 2 мне просто больше не нужна. Могу её удалить, а могу оставить, это неважно.
[20:32:08] <Minoru> не хочешь затирать старую — сделай *сначала* git checkout 1 && git reset 2, а уже потом rebase
[20:32:25] <ForNeVeR> Я не понимаю, зачем тут rebase.
[20:32:40] <ForNeVeR> Я делаю git checkout 1; git reset 2; git commit; git push
[20:33:16] <ForNeVeR> А ребейз зачем? Какого результата достичь?
[20:33:16] <Minoru> да не может быть!
[20:33:34] <Minoru> делал бы ты так, у тебя было бы a -> б -> в (1)(2)
[20:33:42] <ForNeVeR> Э
[20:33:43] <ForNeVeR> Эээ
[20:33:46] <ForNeVeR> Нет?
[20:34:47] <Minoru> git reset 2 передвинет тебе текущую ветку (т.е. 1) на указанный коммит (т.е. туда, куда указывает 2, т.е на в)
[20:34:57] <Minoru> при этом никаких сквошей не происходит
[20:35:03] <ForNeVeR> Дак ты это
[20:35:09] <ForNeVeR> Аргумент ему укажи :)
[20:35:38] <Minoru> но ты же не написал, какой! Вот как с тобой разговаривать, когда ты аргументы сразу не приводишь? :)
[20:35:40] <ForNeVeR> У него есть аргумент --сделать-как-надо-дяде-фон-нёверу
[20:35:57] <ForNeVeR> Minoru: по-моему, очевидно, что я все команды запускаю с этим аргументом
[20:36:13] <ForNeVeR> А на самом деле я просто забыл, какой аргумент это делает — не то --soft, не то --mixed.
[20:36:24] <ForNeVeR> Так уж и быть, я щас вспомню.
[20:41:35] <ForNeVeR> Minoru: короче, инструкция такая:
- git checkout 2
- git reset 1 --soft
- git add -A; git commit -m в # имеем а(1) → в(2)
[20:41:49] <ForNeVeR> Не совсем то, что надо, но мне лень писать щас инструкции для того, чтоб поменять ветки местами.
[20:42:21] <ForNeVeR> Ну то есть оригинальным намерением было получить цепочку коммитов а→в в какой-либо ветке.
[20:42:43] <ForNeVeR> И вот она!
[20:42:52] <Minoru> > -A
Люблю гит за его охуительный UX.
[20:43:36] <ForNeVeR> Ну, вот этой опцией я совсем редко пользуюсь. Обычно я в гуе расставляю галочки и перечитываю диффы перед тем, как что угодно коммитить :)
[20:43:49] <Minoru> но да, идею я понял. Для такой ситуации тебе действительно удобней сделать reset
[20:44:03] <ForNeVeR> Но опцию запомнил. Экономит время после git status, если ты уверен, что у тебя только нужные файлы изменены
[20:44:24] <ForNeVeR> А дальше git diff --staged, если угодно оставаться в терминале.
[20:44:35] <Minoru> я вместо git add -A && git commit -m делаю просто git commit -am
[20:44:53] <Minoru> я потому и говорю, что UX охуительный — -A в git-add это то же самое, что -a в git-commit
[20:45:09] <ForNeVeR> Minoru: знаешь, что самое смешное?
[20:45:14] <ForNeVeR> Я это почти сейчас вспомнил :)
[20:45:26] <ForNeVeR> Я попытался было сделать git commit -A -m c
[20:45:36] <ForNeVeR> Но забыл, что там -a вместо -A :)
[20:46:31] <Minoru> computers are the worst!
[20:47:32] <ForNeVeR> Не согласен.
[20:47:39] <ForNeVeR> Люди просто не сделаны для компьютеров.
[20:47:46] <ForNeVeR> Нужно переделать, только и всего!
[20:47:53] <ForNeVeR> Работать над собою и другими.
[20:48:18] <ForNeVeR> http://files.school-collection.edu.ru/dlrstore/30f5ee66-75a9-4148-b5a7-757bd344490b/%5BIS9IR_3-26%5D_%5BTS_04%5D.html
[20:48:21] <ForNeVeR> Так-то!
[20:50:22] <ForNeVeR> https://ru.wikisource.org/wiki/%D0%A0%D0%B0%D0%B7%D0%B3%D0%BE%D0%B2%D0%BE%D1%80_%D1%81_%D1%82%D0%BE%D0%B2%D0%B0%D1%80%D0%B8%D1%89%D0%B5%D0%BC_%D0%9B%D0%B5%D0%BD%D0%B8%D0%BD%D1%8B%D0%BC_(%D0%9C%D0%B0%D1%8F%D0%BA%D0%BE%D0%B2%D1%81%D0%BA%D0%B8%D0%B9) — а вот тут форматирование лучше.
[20:50:33] <ForNeVeR> Маяковский любил отступы пробелами!
[20:51:00] <ForNeVeR> Наверняка ещё и шрифтом моноширинным писал.
[21:00:14] <gsomix> ForNeVeR, сделал.
[21:00:30] <gsomix> Ну, не совсем то, что планировал.
[21:00:41] <gsomix> Но я теперь умею получать размеры из типа.
[21:06:33] <ForNeVeR> Цодингтим, дискач! https://github.com/morganey-lang/morganey-vscode-extension/issues/1
[21:11:51] <ForNeVeR> gsomix: ты это всё коммитишь там?
[21:12:01] <gsomix> ForNeVeR, нет, сейчас коммит сделаю.
[21:12:14] <gsomix> И закончу на этом сегодня.
[21:14:30] <ɹǝɟılʍǝu> ForNeVeR, попробовал заскошить.
[21:14:34] <ɹǝɟılʍǝu> Мне понравилось, слушай!
[21:14:48] <ɹǝɟılʍǝu> PR из одного коммита это круть.
[21:14:54] <ForNeVeR> ɹǝɟılʍǝu: а мне нет. Теряется история изменений, метаний, получаются более крупные коммиты.
[21:14:59] <gsomix> ForNeVeR, готово.
[21:15:11] <ForNeVeR> Получается, что при разработке мы стараемся делать коммиты атомарными, а при мерже выбрасываем все эти старания?
[21:15:14] <gsomix> Пришлось проект поменять.
[21:15:14] <ForNeVeR> Нехорошо.
[21:15:23] <ForNeVeR> gsomix: я завтра посмотрю, ок.
[21:18:17] <gsomix> ForNeVeR, на деле, кстати, тайппровайдеры -- не так уж и сложно.
[21:18:20] <gsomix> Даже я справился.
[21:20:03] <ForNeVeR> gsomix: порт под дотнеткорку накрывается :(
[21:20:20] <gsomix> Да.
[21:20:33] <ForNeVeR> Ну, _пока что_.
[21:20:36] <gsomix> Зато компилтайм гарантии.
[21:21:05] <ForNeVeR> Да, ок, я согласен, что это ортогональные вещи, и сделать штуку с компил-тайм гарантиями нам пока важнее.
[21:21:14] <gsomix> Интереснее.
[21:21:15] <gsomix> :)
[21:21:22] <ForNeVeR> gsomix: надо бенчмарки!
[21:21:25] <gsomix> Надо.
[21:21:39] <gsomix> И проперти бейзд тестирование.
[21:21:46] <ForNeVeR> Я умею в BenchmarkDotNet и лично знаком с автором.
[21:21:49] <ForNeVeR> (с одним из)
[21:22:18] <ForNeVeR> Я готов забенчмаркизировать и предоставлять свежие достоверные результаты, если ты мне предоставишь сэмплы кода.
[21:22:37] <ForNeVeR> Ну, ты-то лучше знаешь, как принято работать с матрицами. Я не знаю ни одной библиотеки.
[21:22:37] <gsomix> ForNeVeR, я и сам хотел разобраться.
[21:22:49] <ForNeVeR> Ну, там ракетной-то науки нету никакой.
[21:24:05] <ForNeVeR> gsomix: я запилил ишуй. Может, в свободное время (оно у меня вообще бывает?) я начну их запиливать.
[21:24:13] <ForNeVeR> Их = ишуи, которые насоздавал.
[21:24:26] <gsomix> ForNeVeR, ух!
[21:24:28] <gsomix> Спасибо.
[21:24:42] <ForNeVeR> Ну а чего, я человек простой. Вижу код — пилю код.
[21:31:02] a1batross вышел из конференции
[21:31:05] rexim зашёл в конференцию
[21:32:16] <rexim> Блядь
[21:32:18] <ForNeVeR> А если не вижу код, тогда пишу его, а потом пилю!
[21:32:21] <rexim> Написал юнит тестик.
[21:32:24] <rexim> Пол проекта перехуячил
[21:32:32] <ForNeVeR> Отлично!
[21:32:35] <rexim> Да ваще
[21:33:03] <rexim> При чем юнит тестик для фикса в одну строчку.
[21:33:14] <rexim> Пришло перехоячить т.к. модель было сложно мокапить
[21:33:15] * ForNeVeR просто проходил мимо ишуя в BenchmarkDotNet, и решил рассказать людям, чо такое first-chance exception: https://github.com/PerfDotNet/BenchmarkDotNet/issues/276
[21:33:22] <ForNeVeR> Наверное, я слишком назойливый, да? :(
[21:33:43] <rexim> ForNeVeR, да ладно тебе! Ты самый обычный зануда.
[21:33:47] <rexim> Как и все мы
[21:33:56] <ForNeVeR> А, фух, ну ладно тогда.
[21:34:40] <rexim> ForNeVeR, вы там чо за наркоманию удумали с TypeScript и Scala.js. %)
[21:35:10] <rexim> Стори я не против выделить. Но чот заниматься мне этим как-то влом.
[21:35:46] <rexim> ForNeVeR, но я рад буду поревьютиь ваши реквесты!
[21:35:54] <rexim> Ревесты Том не очень рад, но все равно поревьюю.
[21:36:28] <rexim> ForNeVeR, вы там пропозалы создавайте какие надо, не стесняйтесь.
[21:37:07] <gsomix> ForNeVeR, я сейчас понял, что все бесполезно.
[21:37:21] <gsomix> И бессмысленно.
[21:37:55] <gsomix> ForNeVeR, как тип-размер менять-то? .___.
[21:38:55] dzhon зашёл в конференцию
[21:45:09] <gsomix> Хм
[21:45:17] <gsomix> type t1 = Size<2, 3>
type t2 = Size<3, 2>
type t3 = Size<t1.NumRows, t2.NumCols>
[21:45:21] <gsomix> Удивительно, но это работает.
[21:45:47] <gsomix> Как минимум умножение у меня будет.
[21:48:18] xmi вышел из конференции
[21:48:19] xmi зашёл в конференцию
[21:50:51] <Minoru> в nethack@ пишут, что у GitHub заблокировали один из серверов CDN: https://tproger.ru/news/github-was-blocked-2016/
[21:52:08] <rexim> Minoru, аоылва
[21:53:36] <Minoru> rexim: ага, я уже заварил и пью
[21:56:58] a1batross зашёл в конференцию
[21:57:03] <rexim> Minoru, молодец!
[21:57:06] <rexim> Мо-ло-дец!
[21:58:36] <rexim> Minoru, https://www.youtube.com/watch?v=k8Rxep2Mkp8
[21:58:38] <unclechu> Minoru, ну эт ещё в июле было
[21:58:58] <Minoru> unclechu: а, лол
[21:59:00] <Minoru> и правда
[21:59:05] <Minoru> я что-то даже на дату не глянул ._.
[22:00:44] <Minoru> rexim: чото я после пяти секунд уже не уверен, что мне сто́ит это смотреть
[22:00:46] <unclechu> Minoru, да и раньше гитхаб вообще роскомнадзор целиком блокировал
[22:01:15] <rexim> Minoru, обычное видео про топологию ._.
[22:02:56] <Minoru> rexim: уи-и-и, как раз одно из тех, что я стремаюсь смотреть!
[22:03:18] <Minoru> вообще меня что-то в сон клонит, поэтому я тут занимаюсь штуками, не требующими размышлений
[22:12:27] rafaelrs вышел из конференции
[22:12:41] kpecmuk зашёл в конференцию
[22:14:41] Ender зашёл в конференцию
[22:14:45] <Ender> You have compiled in FREE mode.
Using Omnicient Code Generation that is available in PRO mode,
you could have produced up to 60% smaller and 400% faster code.
See http://www.microchip.com/MPLABXCcompilers for more information.

Compiled successfully.
[22:15:46] <Ender> Я чёт в голос проигрываю с такой-то рекламы в конпелляторе
[22:16:02] <Ender> А ещё я научился как IDE использовать протик
[22:16:06] <Ender> охуенно удобно
[22:16:16] <Ender> хотя это ECAD
[22:26:04] <rexim> Minoru, а у меня молочко есть!1
[22:26:06] <rexim> аыоывла
[22:26:15] <rexim> > error while sending алпо ( Traffic rate limit is exceeded )
[22:30:10] <Ender> А я под пивас погроммирую
[22:30:11] <Ender> мне норм
[22:31:13] <Ender> nable, чувак, бротан, скажи в easyelectronics, чтобы octocat дали мембера. Говорят хороший посан, проверенный.
[22:43:16] <gsomix> Что-то мне уже не кажутся веселыми мои попытки выжать сложное поведение от не самой мощной системы типов F#.
[22:43:18] <gsomix> Хм.
[22:43:55] <gsomix> Все-таки тайппровайдеры придумали для доступа к данным.
[22:44:40] <Minoru> Данные провайдеры провайдят данные!
[22:44:57] <Minoru> но почему тогда они называются «тайп-провайдерами»? Загадка…
[22:45:36] <gsomix> Minoru, потому что они делают типы по данным.
[22:46:42] <nable> Ender: а меня не забанят? Впрочем, сказать-то не жалко.
[22:48:09] <gsomix> Minoru, в общем, плюсов пока из F# не получатся.
[22:48:13] <gsomix> Чутка не хватает.
[22:48:21] <nable> Мда, а я там сам без мембера.
[22:48:23] <Minoru> gsomix: да я словами балуюсь, не обращай внимания
[22:49:41] <gsomix> constexpr не хватает.
[22:53:07] <ɹǝɟılʍǝu> Чпоки.
[23:00:22] <Ender> лол
[23:12:02] eaeee зашёл в конференцию
[23:20:59] rexim вышел из конференции
[23:24:04] <Minoru> https://pbs.twimg.com/media/CuFl1L3WIAAJ46R.jpg
[23:26:06] <Minoru> https://blog.bitbucket.org/2016/10/06/safer-branching/
[23:26:27] <Minoru> (там офигенный комикс, читайте, даже если вам плевать на БитБакет)
[23:27:07] eaeee вышел из конференции
[23:27:08] eaeee зашёл в конференцию
[23:30:53] portnov вышел из конференции
[23:32:11] Славный капитан вышел из конференции
Powered by freQ Powered by Python Valid XHTML 1.0 Transitional Valid CSS!