Задать вопрос
  • Где можно найти задачи для практики ООП?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Самое лучшее - это влиться в какой-то проект. Добровольцем.

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

    В протвном случае Питонщики выглядят круче ибо они код педалят быстро и эффет на выходе - тот-же.
    Ответ написан
    Комментировать
  • Как перенести EAV на jsonb в postgres?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если ты говоришь о нормализации - то никак. JSON не предполагает никаких ссылочных связей внутрь документа. Считай что JSON - это денормализованная копия БД. Как с этим жить - большой вопрос. И его надо обсуждать поняв что тебе на самом деле нужно. Потому что конвертация EAV в JSON это какая-то странная очень узкая задача. Может тебе на самом деле это и не надо.
    Ответ написан
  • Подскажете по архитектуре "мультисервисного" приложения?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Это значит, мне надо сделать 1000 репозиториев, в каждом Х методов (получение по ID, получение по значению поля, одного объекта, коллекции...). И ещё 1000*Х методов в контроллерах....

    Зачем такой ужас. Делай только те репозитарии которые реально задействованы в бизнес-задачах.
    Из личного опыта могу сказать что если приложение спроектировано по умному - то ему не нужно
    выделять каждую таблицу в Entity.
    Ответ написан
    3 комментария
  • Какие есть альтернативы базам данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Альтернатив - миллионы. Есть библиотеки которые предоставляют доступ к файлам наподобие баз данных. Это LevelDb например.

    Но обсуждать этот вопрос глубоко - нет смысла т.к. неясны требования к твоей системе хранения.

    Если тебе достаточно файлов (csv, json, xml) то ради бога! Храни в файлах. Это будет очень даже
    экономно с точки зрения TCO и никакой админ не нужен. А вот когда ты будешь гонять запросы
    по файлам и тебе понадобится индексирование, транзакции и изоляция - вот с этого момента
    можно обуждать всякие dbms или системы на файлах.
    Ответ написан
    4 комментария
  • Зачем нужен WebFlux?

    mayton2019
    @mayton2019 Куратор тега Java
    Bigdata Engineer
    Мне кажется что внедрение WebFlux идет от "реактивного манифеста". Вообще классические сервлетные серваки которые раньше поддерживались Tomcat/Jetty сегодня могут быть прозрачно подменены на netty, на уровне конфигураций бута, что как-бы приближает нас к асинхронщине. И современному бизнес-разработчику практически будет безразлично, написан ли его контроллер на блокирующем IO или на каком-то другом. По сути речь идет о диспетчеризации ресурсов. Где создавать поток. А где и хватит единого потока диспетчера на всех.

    По поводу WebFlux, я видел один проект по обработке web-messages и это было удобно. Но только если мы на уровне алгоритма гарантируем что хендлер месседжа не будет занимать много времени.
    Ответ написан
    Комментировать
  • Какое должно быть время выполнение, чтобы его оптимизировать?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Да нет такой метрики. В bigdata запросы могут по несколько часов или несколько суток работать.

    Во всем что работает с вебом - надо выйти на быструю отрисовку landing page. TTFB. Не более 3х секунд желательно.
    Ответ написан
    Комментировать
  • Можно ли на всеросе по информатике использовать import?

    mayton2019
    @mayton2019
    Bigdata Engineer
    На олимпиадах обычно подбирают такие задачи где вам не понадобятся ни http клиент ни json парсер.

    Вам понадобится знание алгоритмов и способность быстро синтезировать новые. Для этого уровня разработки будет достаточно самых базовых сущностей языка.
    Ответ написан
    Комментировать
  • Что должно в себя включать приложение по аренде авто?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Всем привет, я часто спрашивал "какую программу можно написать что бы отточить навыки ООП и немного JAVA FX?" И мне часто отвечали написать приложение по аренде/прокату автомобилей.

    Непонятно какое отношение имеет JavaFX к аренде автомобилей.

    Вообще чем короче постановка - тем меньше стоит на нее смотреть. Вот кто может написать аксептанс критерии на аренду. Где она вообще заканчивается? Какой объем фичей надо реализовать чтобы покрыть основные кейсы аренды? Это все - очень важные вопросы. И люди которые кидают вам в лицо такие задания - сами ничего в этом не понимают. А тоже могу миллиард таких заданий придумать. Техническая фантазия - богатая. Но я не смогу грамотно описать кейсы. Для этого нужно хотя-бы в этой аренде поработать. Бизнес - это ни хрен собачий.

    А так ... хочешь ООП - пиши любую безсмыслицу с классами.
    Ответ написан
    6 комментариев
  • Стоит ли делать проект специально для гитхаба?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Его никто не будет смотреть скорее всего.
    Просто формат такого общения как кидание ссылками предполагает что вы совсем не цените собеседника.
    Мне вот вообще не интересно смотреть никакие гитхабы без наличия автора рядом. Чтобы он дал
    поясняющие комметарии по каждой строчке кода. В противном случае я подумаю ... нет я побоюсь
    такое подумать что меня просто обманывают и подсовывают чуждой код.

    Код как и курсовой требует защиты. А также вступительной речи на тему зачем это вообще нужно и какова
    мотивация.
    Ответ написан
    Комментировать
  • В чём смысл такого вывода Char'ов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Список символов - это строка в Haskell.

    Просто так договорились. Это как договорились в С++ что строка ASCIZ это вектор символов который всегда завершается нулевы байтом. Этот факт никого не смущает? Все нормально сглотнули и пошли кодить. Верно?

    А по поводу прочих синтаксических конфет - все в правовом поле. Все логично. Haskell - вообще один из самых строгих и логичных языков. В нем даже change-requests происходят не просто как в других языках. Не просто хотелки. Там - любое изменение - это через paper. Через какой-то документ имеющий научный смысл.
    Ответ написан
    Комментировать
  • Собственная функция возведения в степень Си?

    mayton2019
    @mayton2019
    Bigdata Engineer
    У тебя - рекурсия. Попробуй расчитать какой она глубины.
    Ответ написан
  • Сколько запросов в секунду выдержить PostgreSQL?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Сколько запросов в секунду - наперед никто не знает.

    Для оценки обычно берут аналогичную систему и пытаются как-то экстраполировать.

    В любом случае, если вы создаёте что-то новое - от вас требуется POC и бенчмарк. Без этого вы будете неубедительны.
    Ответ написан
    Комментировать
  • Какой приоритет у OR?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если не знаете приоритет - то всегда можно поставить скобки. Это решает проблемы и не несет накладных расходов.
    Просто код становится на 2 символа длиннее.

    SELECT ..... FROM .... WHERE (CODE: `id` = value OR `code` = value) .... other predicates....


    Update:

    Если тебе надо гарантировать что поле не пустое - то добавь еще один предикат IS NOT NULL.
    Ответ написан
    9 комментариев
  • С помощью какой нейросети можно нагенерировать множество различных камуфляжных узоров на штанах?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Несколько лет назад один господин, известный в кругу дизайнеров хвастался тем что создал ИИ который рисует логотипы. Я смотрел портфолио этих работ. Не впечатлило. Скорее всего имел место генератор случайных цветов и шрифтов и оформлений для букв логотипа.

    Так вот. Для генерации цветных штанов - никакие сети не нужны. Более того. Если вычеркнуть слово нейросеть из технического задания - то тогда и цена разработки будет ниже. А эффект - тот-же самый. Набор штанов. Но без пафосных слов.

    Вобщем думайте что вам на самом деле надо. Сделать штаны. Или распилить бюджет на разработку.
    Ответ написан
    Комментировать
  • Какая нужна модель для описания каждой конкретной монеты на счету?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Проще всего вести лог транзакций монет по всем пользователям. В сущности User можно оставить только баланс.
    А если кто-то захочет посмотреть какие есть монеты - то можно проверить лог по пользователю и собрать отчет.

    Вобщем надо исходить из предположения что такой запрос будет не очень частым.
    Ответ написан
  • С чего начать изучение программирования?

    mayton2019
    @mayton2019
    Bigdata Engineer
    C++ не самый - лучший старт для начинающего. Можно выгореть на самом начале при работе со строками и адресной арифметикой. Тем паче, что C#/Delphi например, предлагая аналогичные возможности языка с типизацией, страхуют от такого выгорания.
    Ответ написан
    1 комментарий
  • Как работать с огромными массивами данных?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В этой операции мало смысла. Расскажи что будешь дальше делать - и я подскажу как. Возможно тебе нужен Pandas.
    Ответ написан
    Комментировать
  • Нужно ли под каждую мелкую задачу создавать отдельную ветку?

    mayton2019
    @mayton2019
    Bigdata Engineer
    На текущем проекте требуют, что бы под каждое, даже небольшое изменение, баг (заменить цвет уведомления) создавать отдельную ветку

    Да. С точки зрения современных технологий управления исходным кодом - это нормально. Это выглядит бюрократично - но это защита, когда что-то пошло не так. Всегда можно без участия автора взять и откатить назад точечно именно то изменение которое привело к ошибкам за 1 день до релиза.

    И сложно себе представить что нужно откатить если ты ушел в отпуск и в 1 мердж реквест положил штук 5 своих задач.

    Вобщем не нужно боятся бюрократии. Нужно ее умело использовать и поворачивать эти техники так чтобы всей команде было комфорто и спокойно. И не нужно бояться за перформанс при выполеннии операций. Этот перформанс вообще не имеет значения с точки зрения ентерпрайза. Ты логаешь общее время разработки куда входит и работа с кодом и работа с репозитарием.
    Ответ написан
    Комментировать
  • Как добить проект?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Квотировал не только с вопроса но и с ответов автора.
    когда я хочу показать его действия, то проект не работает, и так всегда.

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

    Судя по общему тону сообщений - есть некая проблема в стабилизации релиза.
    Тоесть он, будучи разработанным год назад, тем не менее не может гарантировать что
    не будет чего-то сломано. В этом есть проблема тестирования.

    Надо посмотреть покрыты ли основные бизнес-кейсы авто-тестами. Самый простой пример.
    Берете и ломаете свой исходник в одном месте. И тесты должны это заметить. Если не замечают
    - это проблема.
    Ответ написан
    Комментировать
  • Как начать заниматься "серьезной" разработкой?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Владею стеком HTML/CSS/JS, Python+django/fastApi, java(для математики всякой)


    Также хоббийно занимаюсь микроэлектроникой(avr/nrf/stm)

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

    Я не хочу говорить что ты распыляешся, но резюме выглядит как, как будто ты еще находишся в творческом поиске и давать тебе какие-то проекты еще рано. Может тебе имеет смысл еще погулять пару лет и после этого просто "зачистить" свою анкету от посторонних мешающих хеш-тегов.

    Я сам так сделал и не жалею. Всякие Photoshop/3DMax/радио-и-связь/игра на трубе/вязание крючком - заказчика не интересуют а вобщем даже и раздражают. Под позицию нужен профессионал а не разно-рабочий.

    UPD:
    Ответ написан
    Комментировать