• Какие технологии выбрать для максимально быстрого создания элементарного сервера для мобильного приложения?

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    все просто:
    без тестировщика можно разработать продукт, а без разработчика нет.
    Ответ написан
  • Нужен ли монитор с млрд цветов?

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

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    возможно открою для вас Америку, но ни размеры весов, ни диапазон, ни нормализация этих весов не имеют абсолютно никакого значения.
    Имеет значение только решающая функция, которая подгоняет ЛЮБЫЕ значения весов на основе обратного распространения ошибки к таким значениям на которых решающая функция реагирует с наименьшим количеством ошибок. А какие именно значения весов - абсолютно без разницы, хоть от 0.01 до 0.02 (с шагом в 0.0000001), или например от -1000000000 до +10000000000, результат будет один и тот же (подстройка веса под требуемую реакцию решающей функции).
    Что касается нормализации - это вообще бессмысленная операция, например вы делите например значение "входящего сигнала" со всех нейронов на количество нейронов (и это значение всегда константа). И константа абсолютно никак не влияет на процесс подгонки коэффициента (просто сам коэффициент будет например больше или меньше на эту константу), но как я уже сказал, нас НЕ интересует абсолютное значение коэффициента, нас волнует взамодействие коэффициента и решающей функции.
    надеюсь мысль ясна.
    напишите свою нейросеть, попытайтесь в ручную коэффициенты посчитать, все сами уведите.
    Ответ написан
  • Классификация цифровых сигналов с помощью нейросетей?

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    цепи маркова всегда генерируют случайные данные (мусор), просто ограниченные определенными правилами (размерами вероятностей).
    поднять качество можно используя соревновательный подходы GAN (в области генерации такой подход сейчас на острие находится).
    подробнее тут:
    https://ru.wikipedia.org/wiki/%D0%93%D0%B5%D0%BD%D...
    Ответ написан
  • Высоконагруженное приложение?

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    >Условие: горизонтальная масштабируемость, работа с общей РСУБД.
    изначально противоречивые условия.
    ---
    не стоит вам на ноде воротить что-либо для управления серверами и на ее основе выстраивать микросервесную архитектуру.
    Посмотрите Kafka, Cassandra.
    Ответ написан
  • Как происходит класификация на Support Vector Machines?

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    Да это важно, нужно заполнять рассказывая о своем опыте работе. Не важно какая именно схема работы была.
    Ответ написан
  • Macbook pro с ебея?

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    Одного подхода нет, есть у вас конкретные задачи, под них подбераете решение (архитектуру), можно постоянно подготавливать фронтэнд на бэкенде, можно отдавать заранее подготовленный фронтэнд (в виде ХТМЛ или ЖС файлов пользователю) который потом будет собирать у себя в браузере более сложный вид продукта.
    ==
    Вам просто нужно определится как бы обмениваетесь данными между фронтэндом и бэкендом, обычно используют формат JSON (не обязательно).
    Сейчас часто распространена схема при которой - JS скрипты в браузере клиента грузят с бэкенда только JSON с данными и отображают эти данные в более сложных формах непосредственно в браузере.
    П. С.
    логику редиректов и всякого такого роутинга можно написать на самом фронтэнде, перехватывая запросы пользователя и специфичным образом их обрабатывая, запрашивая нужные данные с бэкенда через апи.
    Ответ написан
  • Кто подскажет ответ по ряду вопросов?

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    конечно можно/нужно идти на встречу клиенту, хотя также не понимаю какие проблемы договорится о небольшой доплате, обычное дело когда требуются доп работы по изменяемым требованиям.
    У вас самая плохая ситуация, когда требования меняются в процессе работы, вы понятное дело идете на встречу и берете доп работы, а потом вам выставляют претензию, что делали дольше или делали не то что оговорили в начале (подстава короче).
    На 5 часов работы можно и забить, удалите проект, отмените проект, верните деньги. Затем начните с ним переговоры со стартовой точки -> у клиента будет возможность заказать работы у более подходящего (на ее взгляд) подрядчика или у вас -> в любом случае клиент имеет выбор - он счастлив и доволен, а это главное)
    Вы работаете в долгую, вам от 5 часов работы не холодно не жарко. Пускай клиент сам выберет будет он вам доплачивать или закажет это у кого-то другого.
    Ответ написан
  • Вычисления с помощью Apachee Spark. Мощный сервер или такой же по мощности - кластер?

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    у тебя задача передать токен на сервер -> это можно сделать через использования куки, но так не делают. ТК куки тырят, куки не универсальны и привязанны к определенному браузеру (куки не могут использовать приложения), и куча других проблем, особенно связанных с масштабированием.
    Можно еще передавать токен вместе с каждым запросом в теле самого запроса ( пример: хттпс://адрес.ру/запрос?токен=токен)
    но тогда токен будет сохраняться в истории браузера, и это тоже может привести к некоторым проблемам с безопасностью (например если ты перешел по ссылке, и человек на другом сервисе видет вместе со ссылкой источника перехода токен пользователя, это будет гиганский фэил)
    вобщем наиболее подходящий способ -> передавать токен в каждом запросе вместе с хэдером, (тоесть передавать дополнительные параметры этого запроса минуя адресную строку)
    почитай подробнее про http headers например https://www.tutorialspoint.com/http/http_header_fi...
    Ответ написан
  • Какую БД использовать для мониторинга соц сетей?

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

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

    angrySCV
    @angrySCV
    machine learning, programming, startuping
    данные о пользователе передаются или в виде параметра в ссылке, либо в виде заголовка запроса
    поэтому можно GET, POST /course/:courseUuid

    П. С.
    ни что не мешает лесону иметь и ГЕТ /courses/:courseUuid/:lessonUuid
    и GET /lesson/:lessonUuid
    типовой подход иметь унифицированный апи, с одинаковыми ПОСТ и ГЕТ (и добавочные запросы с низкой иерархией типа /lesson/:lessonUuid)
    Ответ написан