• Можно ли слишком широким функционалом проекта отпугнуть пользователей?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    Запутанное описание, надо что-то понятное и простое показать для начала пользователю, что его привлечет.
    А сложный функционал он уже постепенно сам вырастит (если это будет нужно пользователям).
    Ответ написан
  • Как узнать кей-коды клавишь нестандартной клавиатуры?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    я поражаюсь, как ты решил настроить через AutoHotKeys, если ты его даже не запускал и описания функционала не читал?
    AutoHotKeys - предоставляет полный набор инструментов для сканирования и записи нажатий с устройств, как внутри самого AutoHotKeys - через дебаг, так и через дополнительное приложение, для записи макросов.
    П. С.
    больше похоже не на вопрос, а на рекламу очередной ненужной параши
    Ответ написан
  • Можно ли доплатить за проект после закрытия контракта?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    >Ответил что попробует решить этот вопрос. Несколько дней нет онлайн.
    ты не фрилансер, если тебя еще ни разу не кидали, поздравляем с боевым крещением.
    Ответ написан
  • Что такое вектор слова (как его вычислить), word embedding и как работает word2vec?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    вектор - это отрезок в пространстве (определенная величина которой мы что-то измеряем в пространстве).
    Если это 3х мерное пространство то это соответственно набор параметров длина, ширина, высота объекта которого мы измеряем.
    Многообразие слов может быть представлено очень большим "пространством" (условно можно назвать "смысл"), и вордТуВек - работает измеряя параметры определенного слова в этом пространстве.
    Для примера можно рассмотреть например - если мы ограничим пространство всех слов (смыслов), только словами с цветом - тогда у каждого нашего слова зеленый, красный, черный, синий и тд, будет размер в пространстве который бы соответствовал цветовой характеристике (например RGB, типа там [0, 0, 0] - для черного), однако пространство у нас куда более большое, чем только характеристики цвета, такое пространство может иметь тысячимерную размерность "смыслов".
    самое главное что мы в итоге переводя слова в такие вектора, можем их сравнивать. находить близкие по смыслу слова и сравнивать составленные из этих слов "фигуры" в пространстве
    Ответ написан
  • Нужно ли привязываться к однотипным серверам при создании кластера?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    если у вас задача не распилить бюджет, то по максимуму следует избигать любых локов
    сейчас все упаковывают в виртуальные контейнеры, поэтому вендоры не имеют принципиального значения.
    Ответ написан
  • Что требует от меня клиент?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    он тебе предлагает сначала описать все задачи необходимые для разработки прототипа, а потом по ним сделать ему "коммерческое предложение" (ну или заявку на самой бирже, где вы там переговариваетесь).
    П. С.
    если человек не может сам сформулировать какие ему задачи нужны, то с ним ни в коем случае работать по фикспрайсу нельзя. Иначе начнется, я думал одно, а оказывается другое и тд. . . в итоге заканчивается это тем, что за цену 1 недели работы, можно работать хоть месяц хоть пол года, а он будет говорить что "я думал это входит в стоимость первичного предложения (я думал все включено)".
    Опять же нужно понимать что такая форма оплаты подразумевает что пока ты ему не сдашь весь проект, то никакой оплаты ты не увидешь (в зависимости от сложности проекта, такая разработка может занимать от месяца до года). Для тебя как для новичка это самая плохая схема работы, ты ее гарантированно провалишь, тк врядли умеешь адекватно оценивать стоимость работ, при почасовой оплате, ты можешь просто работать и работать, сколько надо столько и делать, получая адекватную оплату.
    Ответ написан
  • Каким должен быть сайт веб-разработчика?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    я на сайте стараюсь просто дать общую информацию о себе если кому-то интересно.
    многие там еще какие-то свои заметки размещают, обычно пишут что-то для себя, тк не разу не слышал чтоб заказчики искали какую-то информацию о программировании)
    да и вобще через сайт врядли найдешь заказчиков, очень большая конкуренция в выдаче
    Ответ написан
  • Какая связь между следующими терминами: Машинное обучение, Deep learning, Искусственный интеллект?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    машинное обучение - так называется схема благодаря которой алгоритм может подстраиваться под требуемый результат (грубо говоря самоулучшаться), дип лернинг - это машинное обучение на большом объеме данных, искусственный интеллект - изначально под этим подразумевали искусственный разум (такойже как у тебя например, только искусственно созданный), но сейчас все больше просто подразумевают хоть какие-то признаки самостоятельного принятия решений (уже якобы интеллект), вобщем это уже категории из философии, а не программирования. Предполагается что машинное обучение - одна из основ для искусственного интеллекта.
    Ответ написан
  • Какая сейчас ставка у верстальщиков?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    не знаю что это за зарплата для программиста/верстальщика - 200 долларов.
    в нормальных компаниях даже студентам-стажерам которые нихрена не умеют и ничего не делают в районе 1000 платят (я про москву/питер конечно говорю), просто не работайте с нищебродами, вас же никто не заставляет кому-то бесплатно сайты верстать.
    не стоит соглашаться на первое встречное предложение, учитесь продавать свои навыки, иначе никогда ничего не заработаете.
    Ответ написан
  • Верно ли, что Scala -- это для промышленного стат. анализа?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    Scala язык общего назначения.
    Каким образом формируется популярность языков в определенных сферах, сложно сказать, ну вот так сложилось исторически что именно в обработке данных он нашел наибольшую популярность, но это никак не ограничевает его область приминения.
    Я например активно scala код компилирую под браузер, и много чего под браузер разрабатываю.
    Одно из преимуществ Scala, что он позволяет свои решения переносить на разные сферы и платформы, например один и тотже код можно запустить как на JVM, так в Браузере, так и нативно скомпилировать без JVM.
    Можно быстро прототипировать из готовых блоков как на питоне, но в отличии например от питона, этот код потом можно легко масштабировать, запуская на многопоточных системах и кластерах, при этом сразу получая высокую эффективность статически типизированного кода.
    Ответ написан
  • Не-python для машинного обучения/AI/нейронных сетей/etc?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    Стоящие фреймворки имеют интерфейс практически для любого популярного языка.
    Поэтому при желании можешь использовать любой язык, какой тебе больше нравиться.
    Как правило для разработки эффективно работающего кода используют компилируемые языки, а для наброска быстрого прототипа, когда эффективность не важна, используют скриптовые языки (типа питона).
    Питон просто попроще и зарубежом активно используется для простого обучения не программистов (экономистов, статистиков) программированию, а они в свою очередь много исследовательских и обучающих материалов создают, что в свою очередь уже популяризирует язык.
    Ответ написан
  • Как вы находите идеи домашних проектов?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    >сделать что-то полезное
    для этого нужно иметь широкий кругозор и видеть проблемы людей - такое приходит только с годами и то не каждому.
    Если своих идей нет, советую просто участвовать в чужих опенсорс проектах, либо участвовать в соревнованиях по программированию.
    Ответ написан
  • Кто такой продукт дизайнер?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    ну это типа новое модное понимание того каким должен быть руководиль разработки (проджект менеджер).
    хотя они могут работать и в паре.
    В стартапе он формулирует то каким должен быть продукт на основе анализа и исследования целевой аудитории.
    он немного дизайнер, программист, но по большей части маркетолог, менеджер, аналитик.
    его задача именно понять куда и как развивать продукт, каким он должен быть, на основе своих исследований, а не просто заявить что я вот хочу это делать вот так. . .
    Ответ написан
  • Проверка гипотезы на случайных (или неизвестного источника) числовых данных в виде ряда. Вопрос организации?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    можно написать простейший генератор случайных чисел от 0 до 100, и добавить к нему случайно "вверх" и "вниз", а потом на последовательности этих данных построить график, то вы его не отличите от текущего торгового графика.
    Советую вам не просирать свою жизнь на поиски того чего нет.
    Ответ написан
  • Возможно ли за 1 год изучить один ЯП и выйти на работу?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    выучить можно и быстрее, но нужно понимать для работы разработчиком, язык программирование это примерно 10% от того что требуется знать.
    Ответ написан
  • Как разбить транзакцию по микросервисам сохранив консистентность данных?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    то что вы описали называется двухФазным комитом, раньше очень часто использовался.
    сейчас активнее используют похожий но немного другой подход, тоже связанный с тем что резервируют определенные ресурсы (например деньги на счету, и товар на складе) потом проверяют промежуточный статус операции, и потом проводят и подтверждают операцию - разница в том что ничего не перезаписывается а непрерывно все запросы логируется, и любые откаты операции идут через добавление новых записей-запросов в лог (он же и очередь сообщений)
    ----
    там много тонкостей, например вы говорили про время-метки, в целом метки времени добавляют - если нужно контролировать очередность промежуточных шагов (но обычно это не так важно, поэтому метку времени не всегда добавляют), но добавляют уникальный айди операции, тк в случае сбоя запроса (при например длительном ожидания ответа), может произойти "переотправка" запроса, и нам эта метка с уникальным айди позволяет не дублировать одну и туже операцию.
    =====
    есть тонкости например с тем, каким образом разделены эти микросервисы, может это просто дублирование одного и того же сервиса но например каждый из них обрабатывает запросы от разных сегментов пользователей, поэтому не требуется согласовывать какие-то операции между этими микросервисами.
    ====
    на мой взгляд - это вобще разводные вопросы не имеющие правильного ответа, схемы подбираются конкретно под проект и задачи, тем более если вы не разрабатывали какую-нибудь платежную систему, типа яндекс.денег то вообще бесполезно что-то обсуждать.
    это не камень в ваш огород, этим вообще обычно мало кто реально занимается, уверен те кто у вас это спрашивал сами мало что в этом понимают, а спрашивают такие вещи чтоб вас слить.
    Ответ написан
  • Как правильно распределить задачи в зависимости от нагрузки?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    если нет никаких особых свойств и закономерностей, а вся нагрузка распределена случайно по группам то уверен можно по порядку распределять, раздавая по порядку каждому серверу свою задачу. Все равно в среднем будет средняя нагрузка.
    Ответ написан
  • Подкиньте идею языка программирования, не похожего на семейство Си и Java?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    Scala, Rust, Swift - очень похожие друг на друга языки, базируются на современных представлениях о том как следует работать с возрастающей сложностью в разработке программного обеспечения.
    С одним из них обязательно стоит познакомится для развития кругозора + они активно используются в продакшене.
    Ответ написан
  • Как отфильтровать данные за определенный период в Spark?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    можно просто попытаться как вы пишете отфильтровать, для этого в начале получить определенную структуру и тип данных:

    источникДанных
      .мап(созданиеСтруктуры)
      .фильтр(текущаяЗапись => СписокТребуемыхНомеров.содержит(текущаяЗапись.телефон) 
        && текущаяЗапись.дата<>требуемыйИнтервал)


    так будет работать, но очень долго, медленно и сожрет кучу ресурсов на одной машине - это не то ради чего спарк используют, спарк - это движек для распределенных вычислений. А чтоб запустить распределенные вычисления, нужно в начале создать пару "ключ"->"значение" (где ключ номер телефона, а значение все остальные данные), эти пары распределятся по узлам, где будут параллельно обрабатываться, а потом результат паралельной обработки агрегировать в один общий результат, и для этого не фильтр использовать а reduceByKey с aggregate, для паралельного сбора ключей и значений для этих ключей.
    Ответ написан
  • Для выполнения каких задач какой язык программирования подходит?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    bash, sql, html, mathLab - языки заточенные под определенные задачи, мало подходящие для других задач.
    Популярные языки типа python, js, java, scala, с++ -> подходят для любых задач (но с определенными сложностями, необходимы библиотеки, обертки, нужно писать много лишнего кода)

    вот например в баше чтоб получить список файлов - нужно ввести ls
    чтоб сделать тоже самое на JAVA - необходимо целую программу написать, строк на 10), потом ее скомпилировать, а потом запусить джава машину и передать ей этот код. Довольно геморройное занятие для такой задачи.
    ----
    но нужно понимать что в томже баше простота для простых задач (типа обработки файлов и текстов), выливается чудовищную сложность для более сложных задач.
    П. С.
    если работаешь только с одним типом задач - то тебе выгодно использовать заточенный под эту задачу язык.
    Если работаешь большим количеством разнообразных задач в разных сферах, то лучше освоить и использовать один инструмент (язык) общего назначения но на высоком уровне - чем 10 специализированных инструментов на посредственном уровне.
    Я например на scala - пишу фронтэнд, бэкенд, работаю с БД, пишу скрипты вместо баша, создаю быстрые наброски прототипы (вместо питона), и запускаю теже самые прототипы в продакшен где требуется высокая производительность и многопоточная обработка данных.
    Нигде не касаюсь вообще никаких других языков.
    Ответ написан