Говорящий 2 (0:00) Немножко погружаться в техническую сторону вопроса. (0:04) Мы начали делать, а, макеты примерно, которые могут ожидать раны браузерного фонта, и, б, чтобы понимать, что у нас вообще происходит с данными, мы сделали модель данных. (0:17) Давайте, наверное, начнем с модели данных, как мы их видим в данный момент.

Говорящий 1 (0:23) А как у вас организована группа? (0:27) Роли? (0:27) Ну, роли, да.

Говорящий 2 (0:30) Мы, после того, как все вот эти вещи в драфтовом виде сделали, мы распредели роли так, что я буду заниматься бэклендом, Тимур Харин будет заниматься браузерным фронтом.

Говорящий 3 (0:44) Карим тестированием.

Говорящий 2 (0:45) Да. (0:46) Кто там у нас еще?

Говорящий 3 (0:47) Айзад Фиграмбота разрабатывать. (0:50) А я менеджерскими заполнять.

Говорящий 2 (0:55) Менеджерские дела?

Говорящий 3 (0:56) Да, заполнять всякие.

Говорящий 1 (1:00) Хотел бы прокомментировать насчет ролей. (1:06) Хорошо, когда есть дефинишн самих ролей, то есть, что у вас есть. (1:11) Какие люди там уже будут? (1:12) Ну, это уже второй вопрос. (1:13) То есть, могут и две роли брать и так далее. (1:19) Можно написать?

Говорящий 3 (1:20) Давай пишу.

Говорящий 1 (1:21) Еще один момент, чтобы я обратил внимание. (1:25) Есть очень классная такая фраза у Navy Seals. (1:33) На английском она звучит Two is one and one is none. (1:41) На каждую роль желательно, чтобы было два человека. (1:47) Просто если кто-то там заболел или еще что-то, не отвечает или уволился, или еще что-то с университета, то человек этот мог подхватить. (1:57) Это первое. (1:58) А второе, если каждый человек делает только свою работу и никого у него, ревьюера, нету, то у вас качество всего этого будет намного хуже. (2:11) То есть, обычно как это делается? (2:13) То есть, у вас есть роль, например, администратор. (2:19) Нет, у меня нет роли. (2:23) Ну, менеджер, да? (2:25) То есть, ты как лид-менеджер, твои решения, это вот так и будет. (2:31) Но есть второй человек, который помогает, смотрит, спрашивает, задает тебе вопросы, почему так, почему не по-другому, а что если мы сделаем еще что-то, то есть как бы на вспомогательных ролях. (2:45) То же самое и для девелопмента. (2:48) Если у вас есть бэкэнд, то нужен человек, не один человек, который там делает весь бэкэнд, а который еще как-то в этом участвует, ревью делает и так далее. (2:59) То есть, я бы на вашем месте задумался о том, чтобы сделать такие роли, прописать роль, обязанности этой роли, а потом добавить людей, которые бы делали. (3:11) Это не обязательно, что один человек стал менеджером и все, где-то можно ротацию делать, второй помогает с менеджментным таском. (3:26) И это не будет так обидно, я часто слышу такие, я все презентации делал, я все сдавал, а вы там какой-то код писали, не работают у вас, вообще непонятно, что он делает. (3:42) А я сдавал за всех. (3:45) А те ребята такие, а мы вот код писали, что ты там презентацию, фигня какая. (3:53) И это не, ну тогда такого, если вот эти вот кроссы будут, что ты там где-то в коде позанимался, они где-то помогли тебе с какими-то административными задачами, которых будет очень много на самом деле, то это вот будет прям полегче вам самим, даже эмоционально. (4:17) Окей. (4:18) Окей, да, дальше давай.

Говорящий 2 (4:20) Да, вот это design.dd, (4:22) это то, что я писал руками сам, (4:24) дальше мы это на листе перевели, (4:26) в github завели, (4:28) вот чуть заберет вперед, (4:29) у нас появилась организация в github, (4:32) которую там можно будет потом сохранить, (4:34) если еще там, если github аккаунты удалятся, (4:36) ничего с репой не случится, (4:38) вот у нас есть отдельная репа для дорсов, (4:40) вот мы потом покажем, (4:42) вот и туда у нас заехал design.dd, (4:44) вот, (4:46) исходя из чего мы его проектировали, (4:49) в первую очередь, (4:50) что мы делаем, (4:51) мы делаем Telegram вот, (4:53) или просто какое-то веб-приложение, (4:54) где врач может потренироваться на клинических случаях, (4:56) вот это у нас такой код, (4:59) дальше начинаем думать, (5:01) а кто у нас вообще присутствует в системе, (5:03) у нас есть врач, (5:05) у нас есть и пациент, (5:07) такая виртуальная роль, (5:08) для которой не нужен аккаунт, (5:10) и у нас на будущее может быть администратор, (5:13) это человек, который может добавлять (5:16) клинические случаи, (5:18) то есть он может зайти, (5:20) через там фронт, (5:21) или каким-то образом подредачить случаи, (5:24) вот, (5:25) окей, это вот пока три роли, (5:27) которые у нас присутствуют, (5:29) дальше мы начали думать о том, (5:31) какие у нас есть use cases, (5:33) вот, ну вот те use cases, (5:35) о которых мы говорили с Ильей, (5:36) это получается врач работает по этому кейсу, (5:39) врач может общаться с этим new клиентом, (5:41) он может начинать кейс, (5:42) заканчивать кейс, (5:43) и в общем суть приложения в этом. (5:47) Дальше исходя из всего того, (5:49) что вот мы сейчас проговорили, (5:50) мы начали думать о том, (5:52) как мы можем примерно хранить данные, (5:55) вот, мы начинаем с пользователя, (5:57) чтобы пользователь мог логиниться, (5:59) вот, (6:00) какое-то стороннее решение, (6:03) я не вижу смысла заводить, (6:04) просто потому что, а зачем, (6:07) вот, дальше мы думаем, (6:09) что возможно это будет (6:10) р-бак, почему, (6:13) потому что возможно администратор, (6:15) он еще и врач, (6:17) ну там главврач медбольницы.

Говорящий 1 (6:18) Смотри, что я бы хотел поправить здесь, (6:21) у вас, (6:24) вы же тренируете врачей, (6:26) да, (6:28) то есть у вас точно, (6:31) скорее всего, (6:32) будет кто-то, (6:34) кто назначает, (6:37) ну или как минимум следит (6:40) за результатами, (6:41) что у этого тренирующего все получилось, (6:44) да, он зашел, поговорил, (6:48) вынес какой-то вердикт, (6:50) сделал какие-то записки, (6:52) и это кто-то должен будет (6:54) тоже проверять, (6:55) то есть у вас, да, скорее всего, (6:57) будет администратор, но скорее всего, (6:59) еще будет какой-то ревьюер, (7:04) которому отчет (7:04) о том, что произошло, (7:06) это по сути как (7:08) экзамен для врача, что ли. (7:11) Как мы можем его назвать? (7:13) Не знаю. (7:14) Лучше у Иры уточнить, наверное. (7:16) Можно у него уточнить, наверное, даже лучше.

Говорящий 3 (7:19) Ревьюеру приходит этот отчет, или он сам может?

Говорящий 1 (7:22) Ну вот это интересно, да, этот вопрос. (7:26) Это или приходит ему отчет, тогда он должен там задать какие-то кейсы, может быть, он может ограничивать, что можно только такие кейсы. (7:36) И кто-то, кто получает, ну по сути это как тренировка, и кто-то должен сказать, вот ты прошел там 10 кейсов таких, и вот у него должен быть какой-то отчет, доступ к этому отчету. (7:51) То есть это, скорее всего, какая-то будет отдельная роль, мне так кажется. (7:56) То есть администратор, наверное, тут, наверное, врач, как там было у врачей, они подмастерья, как они там назывались раньше?

Говорящий 3 (8:05) Медсестры, медбратья?

Говорящий 1 (8:06) Не-не-не. (8:08) Ассистенты. (8:10) Ну понятно. (8:11) Ну что-то типа ученика, но только как-то красивее его назвать.

Говорящий 2 (8:16) Ну мы поняли, короче.

Говорящий 1 (8:18) Да-да-да. (8:19) Наверное, Илья нам ответит. (8:21) Да, есть какая-то врачебная практика, который там, практикант, например.

Говорящий 3 (8:26) Интерн.

Говорящий 1 (8:27) О, интерн. (8:29) Или вот, интерн. (8:30) То есть врач, врач это тот, который проверяет, то есть хорошо, плохо. (8:35) А интерн это вот, который проходит этот весь кейс.

Говорящий 2 (8:39) Наверное, интерн это не совсем правильно. (8:41) Вдруг, реально, там уже действующие врачи захотят поиграться.

Говорящий 1 (8:44) Но он все равно, он интерн будет, да. (8:47) То есть ты можешь, скорее всего. (8:49) Роль, это же не так, что ты вот врача, ты превратился и все, больше никогда. (8:55) Ну надо спросить, может быть они как-то по-другому их назовут.

Говорящий 2 (8:59) То есть получается, что у нас будет еще один доступ, это ревью прошедших кейсов.

Говорящий 1 (9:05) Да-да-да. (9:06) Кто-то должен сказать, что, в общем, у тебя пациент умер. (9:10) Ну или хотя бы даже если мы сказали, что у вас пациент умер, кто-то должен это прочитать. (9:15) Да, кроме того, кому.

Говорящий 2 (9:17) Окей, это сделано. (9:19) Вот, так. (9:21) Дальше, ну вот здесь получается связующая таблица, какая роль, что он может. (9:25) Вот, и у какого пользователя какая назначена роль. (9:30) Вот, так, пока есть вопросы?

Говорящий 1 (9:33) Ну окей, с таблицами скорее всего это будет много меняться. (9:39) Ну да, у кого какая роль, да. (9:41) В принципе, здесь пока никаких.

Говорящий 2 (9:43) Так, окей, дальше у нас есть кейс. (9:50) здесь вот, кстати, что я не учел, это то, что у нас есть кейсы как предзарядовки для кейсов. (9:55) То есть там, допустим, Constraint Reload, GERP и там дальше описание кейса. (10:01) Вот есть кейс, который прям человек создал и по нему работает. (10:04) Вот это можешь, пожалуйста, записать? (10:08) Вот, и у нас есть кейс, есть детали кейса отдельно. (10:13) Здесь мы решили отделить их по техническим причинам, потому что если мы постоянно будем фетчить именно вот все вот эти данные, то у нас, возможно, приложение будет работать медленнее и нам проще отделить эти данные, чтобы работа с базой шла быстрее. (10:28) Вот, и детали кейсов, такие как характер боли, силы боли и так далее, мы отделили в отдельную таблицу.

Говорящий 1 (10:35) Здесь бы я пометил вот что. (10:37) Когда у вас будет доступ к клиенту, это очень хорошее место, где можно попрактиковать Domain Driven Design. (10:47) Вот именно прям, как они это называют? (10:50) То есть как хранят врачи эту всю систему? (10:56) Потому что они уже хранят, у них уже есть кейсы, у них, скорее всего, есть название этого всего. (11:02) Прям спросить, вот к вам приходит пациент, что вы делаете? (11:07) На него заводится карточка. (11:09) Как там карточка? (11:10) Дальше у него болезнь такая, третья, десятая, как отдельные главы, или что это у вас называется? (11:18) Он каждый раз пришел, вы записываете этот визит или под какой-то этой самой… (11:24) Узнать, как у них это хранится. (11:27) И тогда сделать ваш код и базу. (11:35) Именно подойти все названия. (11:37) Потому что они уже тысячу лет об этом думали, называли, и у них большая практика этого знания. (11:48) Оптимизировать, возможно, потом без проблем. (11:52) Лучше всего сделать это как можно ближе к уже существующей системе того, как они ведут пациента.

Говорящий 2 (12:04) Дальше у нас есть сообщение, потому что у нас есть чат. (12:10) Здесь у нас есть сообщение, которое будет скорее всего назначено… (12:15) Да, тут должна быть ссылка на сам кейс, чтобы сообщения не были какими-то рандомными, а чтобы у сообщения был хозяин кейса. (12:25) И получается в сообщении у нас всегда, точнее в чате у нас есть всегда только два участника, это врач и пациент. (12:31) Соответственно, можно просто разделить, кто отправил сообщение, и пациент или врач. (12:36) Вот таким образом там можно будет на фронте разделять эти сущности.

Говорящий 1 (12:42) У тебя там в форме просто лого будет, скорее всего у тебя будет сессия сообщений, потом у тебя будет текст сообщения, ну и кто. (12:57) Ну да, две сущности. (13:00) Одна сущность, кто это может быть, или врач написал что-то.

Говорящий 2 (13:08) Дальше у нас есть лабораторный тест. (13:11) У нас по требованиям можно назначить какой-то тест человеку, чтобы он его прошел. (13:16) И тут как раз то, что я забыл сделать с кейсом, это то, что у нас есть примеры каких-то лабораторных тестов, которые возможно даже администратор будет заводить. (13:26) И можно в конкретном кейсе использовать какие-то лабораторные тесты. (13:32) И у нас тоже под это будет связана таблица. (13:35) И еще есть результат этого самого лабораторного теста, то есть человек со своими данными сходил на этот лабораторный тест, у него получились какие-то данные, и вот у нас тут хранятся результаты.

Говорящий 1 (13:48) Ну да, но у тебя это будет намного сложнее, скорее всего. (13:52) То есть это просто набросок, потому что у тебя этих лабораторных тестов будет на разные кейсы, на одну и ту же болезнь, целая куча разных. (14:02) И у тебя там будет скорее всего рандомные значения, в пределах которых ты будешь выбирать. (14:09) Там не четкое будет значение, а скорее всего будет от такого до такого, в зависимости от возраста, в зависимости еще целая куча факторов. (14:22) Так что там вот эта штука будет намного сложнее. (14:25) Но пока что нормально. (14:26) Пусть будет.

Говорящий 3 (14:28) Обычно референсные значения они общие для всех, не зависят от возраста. (14:34) Обычно дают когда лист анализами, там пишут от 0 до 35 лет, то есть просто выдают какой-то дефолтный листочек, и ты сравниваешь уже сам.

Говорящий 1 (14:45) Это надо сравнивать с нормальными, как ведет себя болезнь в разном возрасте, все-таки разная. (14:58) Ну я не знаю, я не врач, но мне так кажется, потому что в зависимости от молодого человека он вообще может перенести без проблем. (15:10) То, что референсные значения, ну да, наверное, может быть это будет такой вопрос. (15:18) Вот прикольно было бы в этом отношении, если бы с ними можно было пообщаться, это вот прям поспрашивать их, как сейчас это ведется. (15:28) Может быть у них уже есть подход к этому всему. (15:35) То есть есть карточка, как они это называют, какие визиты они визит, группируют ли они визиты, не группируют. (15:48) В лабораторных исследованиях тоже хорошо было узнать, это будет одно значение у них, или у них будет зависимость от того, какой кейс. (16:00) Может быть это будет все в кейсе прописано и все. (16:05) Будет одна и та же болезнь и просто разные разные кейсы в зависимости от возраста или еще каких-то этих самых. (16:17) Человек принимает еще какие-то лекарства, у него две болезни. (16:22) Они ведут себя по-разному и может быть это просто они сделают как один набор кейсов, это тоже мне непонятно. (16:30) Интересно было бы узнать. (16:32) Но еще такой момент насчет подписания этих не ждите, что это будет очень быстро, что-то мне кажется что это может дотянуться на супер длинное время. (16:48) Так что давайте мы пока начнем в этом. (16:53) Вот то, что вы сделали, давайте чтобы фронтен был, можно было окошечко что-то с ним написать. (17:03) И уже можно было это презентовать на этой самой. (17:09) Вопросы, если они не будут, не подпишут еще через месяц, то придется вот эти вопросы, которые задавался, спрашивать у Sberbank как он там это все называется, спрашивает. (17:30) Может он расскажет, как врачи ведут составить это все. (17:38) Но пока что хорошо, на следующей неделе что вы планируете, чтобы у вас уже было?

Говорящий 2 (17:48) Мы хотели обсудить в целом roadmap до августа примерно, какие у нас есть мейлстоуны. (17:55) К апрелю должно быть то-то, к лету должно быть это. (17:59) Ну и так же можем обсудить. (18:03) Можно сначала показать, что у нас есть и дальше на основе этого, я еще не все показал, на основе этого придумать, что мы принесем вам через неделю.

Говорящий 1 (18:11) Я предлагаю насчет roadmap, хорошая мысль, это взять до конца, до августа по-моему у нас и поставить все даты, которые вам известны в презентации, какие там у вас экзамены будут. (18:31) Взять, все это написать, не связанное с проектом, что у вас может кто-то будет уезжать куда-то. (18:37) Вот это все поставить и уже вокруг этого мы сможем задизайнить что-то, чтобы какая-то рабочая часть. (18:50) Можно, например, в идеале было бы классно, как я вижу этот продукт, я захожу, у меня там окошечко есть, и я как врач добрый день, я такой-то Николай Петрович, здравствуйте, как у вас дела? (19:15) Ну я ему отвечаю. (19:19) И вот этот можно спрашивать какие-то части и так далее. (19:30) И назначить эти самые. (19:31) Ну был бы прикольно, если бы мы успели эту часть. (19:34) В принципе, это не так на самом деле. (19:37) Это сложно. (19:40) Окей, тут case library.

Говорящий 2 (19:43) Да, то есть мы заходим, смотрим, что нас интересует. (19:48) Здесь можно привести какую-то фильтрацию. (19:51) Мы можем начать кейс, мы можем прикипить кейсы. (19:56) До этого мы и начали, но еще не закончили. (19:58) И у нас есть какие-то законченные кейсы. (20:01) И вот эти, получается, начатые и законченные кейсы исходя из нашего разговора, должен быть какой-то суперврач, который должен быть способен посмотреть на результаты.

Говорящий 1 (20:12) Ну да, но видишь, здесь получается, тебе нельзя называть acute appendicitis. (20:20) К тебе пришел человек и говорит, у меня боль… (20:25) Если я этот кейс прохожу как интерн, то я не знаю, что у него appendicitis. (20:32) Он мне говорит, у меня боль в левом боку. (20:37) А, вот это ладно, кстати. (20:39) И я должен определить, что у него acute appendicitis.

Говорящий 2 (20:43) Вот тут написано, что у него какая-то уже болезнь, а на самом деле врач должен проанализировать и понять. (20:51) То есть у нас в кейсе есть уже изначально, что это там аппендицит, судя по всему.

Говорящий 1 (20:57) Ну да, название. (21:00) То есть при настройках, когда ты там заходишь, добавляешь новый кейс, да, это на все там детали, это вид администратора у вас, то, что вы сделали. (21:11) То есть там ревью может быть, а можно там старт кейс посмотреть, как он проходит. (21:18) А у вас должен быть view еще того, кто проходит этот самый. (21:23) У меня, например, у меня три приема. (21:27) Первый пациент. (21:29) Вот я с первым пациентом разговариваю, общаюсь там. (21:34) Потом второй пациент, третий пациент.

Говорящий 3 (21:37) Получается, должно быть описание и не должно быть болезни.

Говорящий 1 (21:42) Даже не описание, будет просто там Николай Иванович на три часа. (21:50) Ну вот и все. (21:52) Прием Николая Ивановича.

Говорящий 2 (21:55) Наверное, на три часа это уже не так важно.

Говорящий 1 (21:57) Не важно, я просто говорю, что там следующий, там Екатерина Петровна, например. (22:01) Лучше написать, что Екатерина Петровна.

Говорящий 3 (22:03) Ну короче, appointment.

Говорящий 1 (22:05) Ну да, да, да. (22:07) Прием. (22:08) Как по-русски? (22:09) Прием. (22:12) Да, прием. (22:14) Вот с Екатериной Петровной. (22:16) Ты открываешь этот кейс, а там у тебя уже там записано Екатерина Петровна, 25 лет. (22:24) Не знаю, ну важно, не важно. (22:25) Там замужем, не замужем. (22:27) Не, ну может быть не важно там для определения каких-то, я не знаю, каких-то деталей. (22:34) И это самое. (22:37) Или там поступил, или, может быть, какие-то у вас будут там омерзности. (22:43) Завезли на каталке.

Говорящий 3 (22:44) Когда время поступления?

Говорящий 2 (22:47) Ну может быть, да, да. (22:49) Наверное, не время поступления, а вот можно просто завести, вот у нас же есть в российских больницах. (22:55) Где там вся история человека за всю его жизнь. (22:59) Можно, наверное, примерно такую же штуку сделать. (23:03) Валерию Михайловичу 50 лет, когда ему было 5 лет, он там…

Говорящий 3 (23:06) История болезни.

Говорящий 1 (23:09) Ну опять же, кейс может содержать там детальную историю болезни, а может и не содержать, может быть, что мы ничего не знаем, он только поступил, первый раз его видим, и вот тебе нужно задать эти там вопросы, чтобы выяснить это все.

Говорящий 2 (23:24) Так, вот у нас, как мы думаем, будут выглядеть лабораторные тесты?

Говорящий 1 (23:35) Да, я бы, скорее всего, опять же, надо у кастомера узнать, как у них это уже есть. (23:48) Смотри, ты же общаешься, у тебя есть текст с этим самым. (23:52) Скорее всего, окошко с каким-то текстом. (23:54) И лабораторные тесты, которые ты ему означаешь, можно отметить или справа, я общаюсь, обычно как доктор, он там что-то пишет, там свои заметки. (24:10) Кстати, скорее всего, нужно будет то, что я спрашиваю у него, и какое-то место для заметок, наверное, для своих каких-то заметок. (24:23) И лабораторные тесты, он же мне пишет, что вы там пойдите, задайте направление туда-туда. (24:31) То есть отметил, и, скорее всего, или в истории болезни уже эти результаты тебе ждать не надо, ты поставил там complete blood test, и получил этот результат. (24:48) То есть тебе нужно, получается, как-то совместить окошко, где ты с ним разговариваешь, потом, где ты эти тесты назначаешь, а потом, где там результаты этих тестов. (25:04) То есть как ты это сделаешь? (25:05) Ты отметишь, у тебя будет клик-клик-клик назначить, потом это меняется, и ты получил результаты этого теста. (25:19) Ну да, тогда это может меняться. (25:21) Ну вот, скорее всего, здесь вот чего не хватает, я бы лучше вот это поменял на этот самый, ну не знаю, короче, нужно это, наверное, как-то совместить уже с общением с клиентом, и вот ты когда выбрал и назначил результаты, а вот у вас есть, да?

Говорящий 2 (25:57) Да, у нас selected test. (26:00) Ну короче, вы хотите, что вот у нас есть чатик, где мы там общаемся, и чтобы где-то рядом эту штуку можно было сделать?

Говорящий 1 (26:06) Ну да, да. (26:09) Вот, скорее всего, вот здесь есть эти самые какие-то там подсказки, вот прикольный summer, orders, вот это вот, наверное, вот это вот прикольная вещь, что вот есть общение, я здесь могу назначить эти самые submit, какие-то notes себе поставить, и, скорее всего, у вас еще будет tab results, результаты этих там анализов.

Говорящий 2 (26:33) Тебе понятно? (26:35) То есть у нас есть лабораторные тесты, вот, и вот эту штуку надо вот сюда засунуть.

Говорящий 3 (26:41) Ну да, написал.

Говорящий 2 (26:42) Нет, так. (26:44) Так, окей. (26:46) Сам чат мы еще, кстати, не смотрели, но чат как чат.

Говорящий 3 (26:51) Ну да.

Говорящий 2 (26:54) Вот. (26:56) Вот у нас результаты лабораторные, и, как я понимаю, вы хотите тоже их вот в чат куда-то…

Говорящий 1 (27:02) Ну это может быть отдельно останется, получается, что возможно сделать, знаешь, как вот, вот у тебя чат. (27:13) Чат помнишь? (27:14) Ну да, вот чат, вот здесь вот tabs, результаты, может быть, переключаешься между чатом и результатами, потому что обычно, когда ты смотришь на эти самые результаты, ты с клиентом не общаешься, тебе надо вникнуть в это все дело. (27:32) Ты раз открыл, посмотрел, ага. (27:36) Там какие-то эти самые, потом вернуться к чату, то есть вместо тут EKG.

Говорящий 3 (27:42) Вот такие переделать, короче, да?

Говорящий 1 (27:44) Да, переключалка именно вот, потому что у вас мод какой, у вас есть чат по общению, потом посмотреть результаты. (27:54) Ну, да. (27:57) Здесь notes, вот это прикольное, вот отдельно. (28:03) Patient summary тоже прикольное, потому что я бы хотел видеть, да, какие-то части, когда общаешься, что там известное. (28:13) Ну вот, да.

Говорящий 2 (28:20) Ну окей. (28:21) Ну опять же, хорошо бы спросить это кастомеру. (28:24) Ну мы вот кастомеру это и покажем.

Говорящий 1 (28:26) Окей, если он не проснется. (28:31) В прошлом мы просто… (28:32) О, кстати, мне надо бежать. (28:34) В прошлом семестре, там, по-моему, то ли два месяца, то ли три месяца подписывали этот самый NDA, и это была такая боль, и там на мид-семестр пришли, а мы еще NDA не подписали.

Говорящий 3 (28:51) Так, все?


This site uses Just the Docs, a documentation theme for Jekyll.