Задать вопрос
  • Отпечаток компьютера или что можно узнать о пользователе?

    Exploding
    @Exploding
    wtf?
    console.log(window);
    Ответ написан
    Комментировать
  • Как организовать процесса веб-разработки с технологической точки зрения?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    раньше прочтешь, меньше набьешь, хотя и Git - уже серьезный шаг

    по самому же вопросу - привыкайте к REST API, тогда фронт не парится беком, а бек не парится фронтом
    Ответ написан
    Комментировать
  • Какой алгоритм подойдет для описания полета насекомого?

    sergiks
    @sergiks Куратор тега Алгоритмы
    ♬♬
    Можно сделать цепочку преследования: к случайной точке тянется одна, к ней другая, и т.д., а последняя – муха.

    Очередную точку ставить на плоскости случайно, в любом месте внутри допустимой области. Эта точка – цель, к которой стремится следующая, невидимая точка: каждый следующий кадр её координаты изменяются на k * векторИзТекущегоПоложения-в-Цель:
    x = x + k * (xTarget - x);
    y = y + k * (yTarget - y);

    Так «преследователь» замедляется, по мере приближения к цели, никогда её не достигая.

    Эта невидимая точка – не одна. К ней, как к цели, стремится следующая. К той ещё одна. Наконец, сама муха по этому закону стремится к хвосту этой цепи - очередной точке.

    Чем больше звеньев в такой цепи, тем плавнее получается кривая. При приближении мухи к цели ближе, чем на D, генерится следующая случайная цель.

    Сделал рабочий пример.

    Можно поменять алгоритм и сделать, скажем, линейную скорость постоянной. Или случайно варьировать параметры k и D – от этого поменяется скорость и траектория от плавной ближе к ломаной.
    Ответ написан
    Комментировать
  • Как делать сайт вдвоем и более?

    Для масштабирования проектов в рамках команды была придумата методология БЕМ, советую про нее почитать.
    Для того, чтобы изменения не конфликтовали, нужно делить разработку на "фичи" над одной фичей работает один человек, перед началом работы делаете отдельный бранч для фичи, когда фича готова, делаете ребейс мастер бранча на свой фичебранч (чтобы втянуть изменения, которые другие работники влили до вас) и мержите фиче бранч в мастер. В одно время над одним файлом работать не желательно, собранный проект из гита исключите.

    Битбакет позволяет мержить фиче бранчи в мастер используя пул реквесты и позволяет провести кодревью всеми участниками перед тем как вливать изменения, весьма полезно для наработки общего стиля в коде.
    Ответ написан
    5 комментариев
  • Сломался телефон с google authenticator, как восстановить доступ к сайтам?

    @zapara
    Отказался от Google Aauthenticator в пользу Authy. Authy позволяет не зависеть от одного телефона, можно подключить много других устройств, которые прекрасно между собой будут синхронизироваться, вплоть до расширения в браузере.

    Вы, как человек, утративший важную для вас информацию, должны оценить такое решение, как и я в своё время.

    А что касается сабжа, то телефон на какой платформе вы используете (iOS или Android)? Если используете устройство на базе iOS, то я бы рекомендовал в будущем делать резервные копии с паролем, т. к. такие копии умеют хранить даже данные в приложении Google Aauthenticator, ну и других приложений это касается.
    Ответ написан
    2 комментария
  • Какие книги стоит почитать по SSL шифрованию данных?

    Так вам шифрование и криптографические протоколы или только SSL?

    По первому: Брюс Шнайер - Прикладная криптография. Если вообще интересоваться шифрованием, то это главная книга, которую необходимо прочитать. Лучше в оригинале, перевод сделан не специалистами в области с рядом ошибок.

    Дальше опционально уже смотреть что именно интересно. Криптология очень обширная наука, на самом деле, и одним шифрованием не ограничивается.
    Ответ написан
    Комментировать
  • Можете посоветовать как быть дальше?

    @frozen_coder
    Java-developer
    "Хочу сделать основным Java" - очень расплывчато. Java - это инструмент для разных сфер: android, desktop, web. Я бы советовал в web - наиболее распространенная сфера; ванги говорят, что android-приложения уступят когда-нибудь своё место web. Ну это всё дело вкуса и чего ВЫ хотите. Итак, например, хотим в Java-web:
    1) А Вы уверены, что знаете Java? Может есть нюансы и маленькие пробелы? (пробежаться по Эккелю и Блоху, можно посмотреть статейки о подготовке к сертификации - много мелочей, неочевидностей раскрыто) Разобрать Java 8, особое внимание stream.
    2) Ок, Java SE знаете, а Java EE? Тут можно очень досконально не вникать на первых порах - фреймоворки нам помогут.
    3) Пошли Фреймворки и библиотеки - Семейство Spring: Core, MVC, Boot, Data, Security. Для ORM - Hibernate (можно вместе с Spring Data, можно вместо, посмотреть нужно). Для уменьшения болерплейта - Lombok.
    4) Для тестирования JUnit, потом посмотрите Spock Framework (тут мы знакомимся еще и с Groovy).
    5) Плавно переходим к клиенту. Тут нам Java становится мало. Вспоминаем html и css. Если не знаете JS - узнать. Дальше дело вкуса. Выбираем(пишем своё) библиотеку или модный фреймворк, изучаем пилим клиентскую часть. На этапе разбирательств с клиентом познакомиться(если вдруг чего не знали) с REST, http, https, http 2.0, webSockets, json, ajax что такое DTO.
    6) Для UI тестирования попробуйте Geb.
    7) WebServices! SOAP, Jaxb, SOAP MTOM.
    8) Можете попутно расширить кругозор по БД - попробовать вместо mysql postgres или NoSql базы.
    Вот это был примерный набор инструментов.
    Но главное - практика. Нужен свой учебный проект. Начинаете его делать - появляются проблемы - смотрите как такое можно решить существующими инструментами - тут же применяете теорию на практике.
    Предлагаю писать какой-нибудь корпоративный портал с каким-нибудь реестром, справочником и т.д. Включаем фантазию.
    Начните с малого - сам справочник-реестр с функциями CRUD - создать, прочитать, редактировать, удалить запись. Далее прикрутите систему прав и ролей пользователей(не все могут создавать, редактировать и тем более удалять). Добавьте работу с файлами - скачать, загрузить, экспорт в pdf и exel. Продолжайте накручивать своё приложение функционалом - личка и чат, доска объявлений, имитация отношений начальник - подчиненный (тайм-менеджмент, таск-менеджмент, сбор отчетов каких-нибудь по работе), уведомления (в почту, в системе, м.б. попробовать с смс), напишите другую маленькую систему и заобщайте их между собой по SOAP(например, другая система может читать из справочника и что-нибудь туда писать). Берите какое-нибудь гипотетическое предприятие (склад, магазин, автосервис, школа, больница, завод и т.д.) и представьте, что ему надо свой документооборот перевести в электронный вид и максимально автоматизировать бизнес-процессы.
    Короче, набирайтесь опыта и учитесь через практику, ставьте сами себе задачи и ищите пути их решения. Стажировка и работа вообще на первых порах дают мощный толчок в развитии. Не можете найти стажировку? Идите на собеседования, делайте тестовые задания - тут сразу все пробелы всплывут.
    Ответ написан
    3 комментария
  • Как ускорить работу кода NodeJS?

    Sanasol
    @Sanasol Куратор тега JavaScript
    нельзя просто так взять и загуглить ошибку
    Для перебора хешей есть отличное решение: https://hashcat.net/hashcat/

    Вопрос только написать какую-то оболочку если надо.

    NodeJS работает в один поток - одно ядро использует.
    Для использования нескольких надо приделывать кластер, чтобы запускать несколько процессов и загружать несколько ядер.
    Ответ написан
    Комментировать
  • Где пройти обучение Android разработке?

    GTRxShock
    @GTRxShock
    SA
    Подписался, в надежде увидеть что-нибудь интересное, но похоже придется самому поделиться ресурсами :)

    Русский быстрый старт по основам вы найдете в курсе Start Android
    startandroid.ru/ru/uroki.html
    https://www.youtube.com/playlist?list=PLyfVjOYzuju...

    Следом, довольно интересный материал есть у ребят из Devcolibri
    https://www.youtube.com/playlist?list=PLIU76b8Cjem...

    А если с английским не проблема, пройдите курс старого доброго Адама Портера :)
    https://www.coursera.org/learn/android-programming (там 2 части)

    p.s. Если еще что-то толковое вспомню - потом дополню)
    Ответ написан
    Комментировать
  • Как сделать такие анимационные эффекты?

    На этом сайте используется PixiJS (www.pixijs.com).
    Для начала, посмотрите примеры -- pixijs.github.io/examples/#/basics/basic.js
    Потом изучайте туториал (www.pixijs.com/tutorials) + почитывая документацию (pixijs.github.io/docs).
    В качестве альтернативы можете посмотреть GSAP (https://greensock.com/gsap)
    Ответ написан
    Комментировать
  • Какие технологии вы используете для лендингов?

    Nikolay12
    @Nikolay12
    Верстальщик
    Если без фреймворка, а просто верстка по макету, то:
    • Emmet - быстрый кодинг html и сss
    • less - переменные для шрифтов, вложенность селекторов или бэм-нейминг.
    • flexbox - для сетки, расположения элементов и респонсива.
    • autoprefixer - добавление css-префиксов
    • Imagemin-pngquant - для сжатия картинок
    • gulp - для сборки вышеперечисленного
    • slick - карусели и слайдеры
    • remodal - модалки


    Если использовать фреймворк, например, bootstrap, то быстрее будет работать с исходниками бутстрапа и потом собрать их:
    • переопределить переменные
    • подключить нужные js-скипты из коробки
    • подключить нужные less-стили
    • собрать это всё галпом
    Ответ написан
    1 комментарий
  • Как классифицировать текст с помощью нейронной сети?

    2ord
    @2ord
    Если знаний в компьютерной лингвистке чуть больше чем ноль, то задачу решить получится не скоро ...
    Почему-то поголовное большинство разработчиков тешутся надеждой, что нейронные сети магическим образом решат любую задачу в области искусственного интеллекта.

    А какими примерами обучать нейросеть? Ведь не голым текстом... Типа, говоришь нейросети: "глянь, тут человека упомянули". Так что-ли? Для компьютера текст - это лишь последовательность байтов, поэтому он не может понять что для нас-людей представляет интерес. Компьютеру нужно всё разжевать и объяснить на языке цифер.
    Ведь как носители языка понимают, что в тексте речь о людях? Есть набор запомненных слов (словарь), которые человек прочтя или услышав, сравнивает со своим словарным запасом и тогда решает, к какой категории относится слово в данном контексте.

    Чтобы, проанализировав текст, понять, что "ищут ли какого то человека, мастера", необходимо вычленить некоторые ключевые слова, взятые из словаря: "ищу", "помогите", "подскажите", "посоветуйте", "требуется" и т.д., в сочетании с упоминанием людей (синонимы) и профессий (словарь профессий).
    Нейронная сеть на этом этапе не нужна. Она поможет в классификации при работе с цифрами, фактами (булева логика). Так что перед анализом текста нужно извлечь факты и связи из текста и затем скармливать ими классификатор. Помимо нейронных сетей есть другие виды классификаторов, более простых и лёгких в использовании, такие как байесовский классификатор. Нейросети могут быть как с обучением, так и без.

    В качестве вводной части имеет смысл начать с лекции Яндекс - Малый ШАД - Лингвистика в поиске.pdf
    По практической части: Что такое Томита-парсер, как Яндекс с его помощью ...

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

    @nehrung
    Не забывайте кликать кнопку "Отметить решением"!
    Уже доводилось отвечать здесь на подобный вопрос. Но раз он возник заново, повторю свой тогдашний ответ.
    Да, использовал когда-то Hiren's BootCD. Но вот уже несколько лет применяю сборку Multiboot, существующую в форме как LiveDVD, так и LiveUSB, и имеющую следующие фишки:
    1. Не один, а аж целых 4 разных WinPE - на базе WinXP, Serwer 2008, Win7 и Win8.1. Выбор - в стартовом меню grub4dos. Если на данном железе не заводится одна - пробуем вторую, какая-нибудь да заведётся!
    2. В каждую WinPE интегрирован пакет 2k10 из пары сотен утилит на все случаи жизни.
    3. Есть и внесистемные утилиты и тесты с доступом сразу из grub4dos.
    4. И наконец, на борту присутствуют чистые дистрибутивы Windows - XP, 7, 8.1. "Семерка" и "Восьмерка" - во всех вариантах (выбор при старте установки), всегда можно подобрать "родной" для данного аппарата, если ключ зашит в BIOS.
    Для компьютерной "скорой помощи" более чем достаточно!

    UPD. Обнаружил, что существует ещё более современная инструментально-восстановительная сборка LiveUSB - это Jinn'sLiveUSB x86/x64 UEFI [Ru] (текущая версия 5.2). В ней добавлена инструментальная сборка Линукс PE Parted Magic, новая версия пакета 2k10, содержащая вместо двухсот более 400 утилит, а дистрибутивы Windows дополнены Win10. Требуемый объём флэшки - 16 ГБ или более. К сожалению, запускается только через UEFI, на привычной MBR не работает. Всё это я выяснил из её описания, и поскольку на практике ещё не пробовал эту сборку, безошибочности этой информации не гарантирую.
    UPD2: Опробование сборки Jinn'sLiveUSB показало, что включённые в её состав дистрибутивы Винды - не чистые, автор сборки загрязнил их многочисленными добавками и активаторами.
    Ответ написан
    4 комментария
  • Как защитить свою верстку от рипа?

    m77x
    @m77x
    Консультант
    Я уже писал на подобный вопрос - использую свой сервер и работаю только на нем, а клиенту ставлю такой скрипт: help.lioo.ru/info/bablo.zip (делает зеркалку другого сайта). Если клиент доволен после оплаты заливаю бекап со своего, если клиент кидает - ставлю порно ))
    Ответ написан
    8 комментариев
  • Как подключить репозиторий Bitbucket к TFS?

    @Oxoron
    Шарпер
    Тут возникает вопрос: зачем 2 сервера систем контроля версий? Путаница же будет.

    Если есть желание просто перенести репу с BitBucket на TFS - создайте командный проект, Git в качестве контроля версий, в свежесозданный локальный репозиторий закиньте уже существующий проект, первый коммит закинет репу в ТФС.
    Ответ написан
    Комментировать
  • Какую среду выбрать Matlab vs Mathematica vs Maple vs python?

    @potan
    Функциональный программист
    Mathematica - удобный и мощный язык, огромная стандартная библиотека, замечательный интерфейс. Минусы - цена и сложность начального вхождения. Для моделирования динамических систем есть отдельная реализация языка Modelica (SystemModeler), но только под винду и я не слышал что бы ей кто-то пользовался.

    Matlab - хорош для численных вычислений, в символьных слабоват. Для моделирования есть пакет Simulink, который знакомые очень хвалили. То же стоит денег.

    Python - популярный и простой, много готовых пакетов, хороший интерфейс ipython (сдутый с Mathematica). Но как язык слабоват - обобщенные алгоритмы на нем тяжело пишутся, высокая эффективность обеспечивается только с помощью библиотек на C.

    Octave: бесплатный относительно приличный клон Matlab. Про системы моделирования к нему не слышал.

    SciLab: бесплатный, но кривоватый и недоделанный клон Matlab. За то к нему относительно приличная система моделирования Xcos.

    R: удобный язык для обработки данных и статистики. Огромная и хорошо организованная внешняя библиотека.

    Julia: Объединяет лучшие черты Matlab, R и python (а так же кое что из Lisp). Но разработчики пока не заявили о стабильной версии. Если стабильность Вам не критична, очень рекомендую.

    Про остальное ни чего не знаю.
    Ответ написан
    Комментировать