• Babel vs Autopolyfiller. Может babel уже и не нужен?

    Я прошу прощения, а причем тут babel? Autopolyfiller создаёт полифиллы какого-то функционала, тем временем, babel — транспайлер кода. Никто не запрещает их использовать вместе. Какое-то сравнение тёплого с мягким.
    Ответ написан
    2 комментария
  • Как вычесть/приплюсовать процент от числа?

    Sanasol
    @Sanasol Куратор тега JavaScript
    нельзя просто так взять и загуглить ошибку
    такой вариант еще не писали :)

    temp400 = parseInt($(".pascal").val()) * 0.9;
    Ответ написан
    Комментировать
  • Можно ли онлайн обучиться на HR-специалиста?

    dimonchik2013
    @dimonchik2013
    non progredi est regredi
    www.ozon.ru/context/detail/id/137522540

    но с практикой гораздо сложнее
    Ответ написан
    Комментировать
  • Можно ли онлайн обучиться на HR-специалиста?

    sfi0zy
    @sfi0zy
    Creative frontend developer
    Можно ли онлайн обучиться на HR-специалиста?

    HR - это не профессия, это призвание (и чем больше вы общаетесь с различными hr`ами, тем сильнее это понимаете).

    А вообще все, что нужно знать HR, описала Виктория Придатко в своих выступлениях. Посмотрите на презентации и все поймете:
    IT рекрутинг без факапов
    HR Bullshit в IT
    Собеседование как секс. Удовольствие должны получи...
    Ответ написан
    Комментировать
  • Как повысить уровень программирования?

    tiabc
    @tiabc
    Бизнес-партнер и консультант по технологиям
    Хорошие разработчики постоянно развиваются и никогда не стоят на месте. Любое развитие состоит в делании дел, в решении конкретных задач и в обратной связи, которую ты получаешь от других или в результате рефлексии.

    TL;DR: Читайте книжки, делайте дела, читайте чужой код.

    Что можно начать делать прямо сейчас, чтобы стать программистом лучше?

    1. Изучайте базу. Алгоритмы, сети, криптографию, архитектуру, ос, устройство браузеров, компиляторы и т.д. Изучение подобных вещей дает понимание какие задачи бывают в реальном мире и как "большие дядьки" решают возникающие проблемы. Это кладезь инсайтов.

    2. Устройтесь на фултайм-работу с сильной командой даже если джуниором. Я считаю, что есть только один способ расти как разработчик: работать фултайм над одним бизнес-продуктом. Такой подход учит решать проблемы масштабируемости, думать заранее, работать над процессом, которому вы следуете в разработке, решать задачи, возникающие с длительной эксплуатацией, решать проблемы с удобными окружениями и вообще учиться планировать свою работу в связи с нуждами бизнеса.

    3. Написание кода - не самая большая часть работы сеньор-девелоперов, я бы сказал. Но когда речь заходит о самом коде, нужно понимать что ты пишешь и зачем. Есть классические книжки, которые можно найти, например, в матрице компетентности программиста, есть современные, но полезные типа The Art of Readable Code, которую я очень рекомендую. Нужно читать книжки. На собеседовании я всегда спрашиваю какие книжки читал или читает соискатель и если ответ отрицательный, то это большой минус.

    4. Участвуйте в опенсорс. Там вам всегда приходится сталкиваться с образом мысли самых разных людей и кодом, который они пишут. Это учит вас читать чужой код, находить в нем ошибки и критически и аргументированно к нему относиться, предлагая свои решения. Опенсорс-разработка, так же как и книжки, дает вам тот чужой опыт, который бы вы никогда сами не получили от людей, которые часто умнее или опытнее вас в чем-то. В опенсорсе, кстати, в отличие от бизнесовой разработки, есть шанс в удовольствие писать очень качественный код, в котором в бизнесе далеко не всегда есть необходимость.

    5. Наберитесь терпения. Это не случится за один день. Думайте над именованием, разделяйте обязанности, изучайте алгоритмы и экосистему, оптимизируйте ваше рабочее место, изучайте новые технологии, читайте статьи и в течение ближайших лет регулярных усилий вы обретете новый способ мышления и будете разрабатывать поддерживаемое и надежное ПО. Легкого пути, к сожалению, нет.
    Ответ написан
    2 комментария
  • Есть ли смысл хешировать уже захешированные пароли?

    Да, есть смысл для bcrypt как минимум. Задача bcrypt в том, чтобы замедлить процесс брутфорса и сделать его ресурсоемким и сложно реализуемым на специализированном оборудовании / GPU / ботнетах и т.п. (см. например openwall.info/wiki/john/GPU/bcrypt). Это сильно замедляет возможности подбора даже относительно слабых паролей.
    Есть еще более интересные алгоритмы, например Argon2 и yescrypt.

    Вводить разные хэши для разных пользователей не стоит, решение с "перехэшированием" старых хэшей вполне безопасно.
    Ответ написан
  • Каков принцип работы укоротителя ссылок?

    Denormalization
    @Denormalization
    Все просто:
    - Генерируем уникальный ID для ссылки
    - Сохраняем этот ID в базе вместе с ссылкой
    - Когда кто-то запрашивает http://вашсайт.ру/[ID] достаем из базы ссылку которая привязанна к этом ID и редиректим.
    Ответ написан
    Комментировать
  • Какова область применения Lisp/Clojure/Scheme?

    Какова область применения Lisp/Clojure/Scheme?

    В общем-то это всё языки общего назначения, которые могут использоваться там же где и Python или Java, например. Единственное, что я бы выделил — написание EDSL (встраиваемых предметно-специфичных языков). Пример: https://github.com/tonsky/datascript.

    В чем их преимущества над ООП языками?

    Лиспы поддерживают ООП, вопрос некорректный.

    все объекты в функциональных языках передаются по значению

    Кто Вам такую чушь сказал? И да, лиспы не более функциональны, чем какой-нибудь JavaScript.

    В каких случаях лучше не использовать ФП?

    Смотря что понимать под ФП. Лямбды, ФВП, чистые функции стоит использовать всегда. Рекурсивные функции — нежелательно, если язык не поддерживает TCO (хотя некоторые скажут что преждевременная оптимизация — корень всех зол). Всякие монады и функторы — по ситуации, только не говорите никому что это монады. Вон Promise всё JS-сообщество использует, а было бы написано в доке, что Promise — монада, никто бы и смотреть не стал :)
    Ответ написан
    2 комментария
  • Зачем в Angular есть Jsonp?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    1) Jsonp был с самых ранних версий angular
    2) angular на момент выхода версии 1.0 имел поддержку ie8 как минимум
    3) поскольку angular 1.x не может иметь значительных нарушений обратной совместимости - нельзя просто так удалять jsonp.
    Ответ написан
    2 комментария
  • Как открыть порт на DD-wrt?

    fox_12
    @fox_12
    Расставляю биты, управляю заряженными частицами
    Вот пример проброса с наружного 8000 порта на 80 порт на хост локальной сети:

    # iptables -t nat -I PREROUTING -p tcp --dport 8000 -j DNAT --to 192.168.1.40:80
    # iptables -I FORWARD -p tcp -d 192.168.1.40 --dport 80 -j ACCEPT
    Ответ написан
    6 комментариев
  • Как открыть порт на DD-wrt?

    @serkamikadze
    Если через веб интерфейс раздел "NAT / QoS" вкладка "Port Forwarding"
    Application-любое название
    Protocol-для веба tcp
    Source Net-оставь пустым
    Port from-80
    IP Address-твой
    Port to-80
    Также для 443 порта
    Такойже роутер и прошивка все работает
    Ответ написан
  • С чего начать обучение машинному обучению / deep learning / data mining?

    @SolidMinus
    Т. Сегаран - программируем коллективный разум. Там есть некоторые методы машинного обучения. Сама книжка смесь вэба и Data Mining. Python

    В этих двух книгах теория:

    Питер Норвиг. Искусственный интеллект: современный подход
    Книга П.С. Романов. Основы искусственного интеллекта

    Библиотека scikit-learn с реализованными алгоритмами из книг выше. Python

    Статья по ней на хабре: Введение в машинное обучение с помощью Python и Sc...

    А также пригодится ( на более поздних этапах )
    Козлов М.В., Прохоров А.В. Введение в математическую статистику. — М.: Изд-во МГУ, 1987.
    Боровков А.А. Математическая статистика. Оценка параметров, проверка гипотез. — М.: Наука, 1984
    Боровков А.А. Математическая статистика. Дополнительные главы. — М.: Наука, 1984.

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

    P.S. Я сам пока учусь, список от человека, который занимается AI уже давно
    Ответ написан
    Комментировать
  • Как обрезать изображение в PHP задав размеры через Javscript для миниатюры?

    2(4 числа) вершины и вырезаем,гуглим клиентскую часть и серверную
    Ответ написан
    2 комментария
  • Есть ли автозагрузчик для node.js как у php?

    bingo347
    @bingo347 Куратор тега Node.js
    Crazy on performance...
    Вы кажется не понимаете архитектуру node
    В php автозагрузка модулей используется, что бы ускорить загрузку, так как процесс скрипта живет в течении запроса и умирает по его завершении
    В node процесс живет вечно (не умирает между запросами) и обрабатывает множество запросов, при каждом запросе модули не подключаются снова, они уже подключены. Более того, при подключении модуль кэшируется в памяти, подключив его еще раз в другом месте, Вы не выполняете его снова, а используете уже выполненный модуль.
    Так что что-то Вы делаете не так, если у Вас возникает такой вопрос
    Ответ написан
    9 комментариев
  • Почему Nginx отдает Header'ы в нижнем регистре?

    Всё нормально, исправлять это не нужно.
    Nginx при включение HTTP/2 (h2) реализует спецификацию протокола:

    RFC 7540 (HTTP Header Fields)
    Just as in HTTP/1.x, header field names are strings of ASCII characters that are compared in a case-insensitive fashion. However, header field names MUST be converted to lowercase prior to their encoding in HTTP/2. A request or response containing uppercase header field names MUST be treated as malformed.

    SPDY Protocol (Name/Value Header Block)
    Header names... must be all lower case.
    Ответ написан
    Комментировать
  • Почему Nginx не подставляет переменную в proxy_pass?

    BuriK666
    @BuriK666 Куратор тега Nginx
    Компьютерный псих
    Смотрите error_log, что именно он там не нашел.
    И стоит обновиться до 1.9.13.
    nginx.org/en/CHANGES
    *) Bugfix: in the "proxy_pass", "fastcgi_pass", "scgi_pass", and
    "uwsgi_pass" directives when using variables.
    Ответ написан
    1 комментарий
  • Выбор базы данных для админки?

    sim3x
    @sim3x
    settings.json
    settings.yaml
    bash environment variables
    Ответ написан
    Комментировать
  • Правильно ли я понял философию Docker?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Контейнеры данных


    Они не нужны, используйте named volumes вместо этого (с версии 1.9 докера).

    Исходный код и локальные npm-модули (или лучше это в предыдущий контейнер, и при старте выполнять


    Нет, npm install надо выполнять ДО сборки образа. Когда контейнер стартует - внутри у него уже все должно быть. Опять же я лично против того, что бы выносить исходники проекта в отдельный контейнер-пустышку. У вас есть контейнер с нодой - исходники для ноды должны быть там. Есть некоторые нюансы связанные со сборкой контейнера но это так.

    На файловой системе хоста


    Ничего.

    Логи прокидываются в stdout/stderr контейнера и собираются на хосте через докер любым подходящим драйвером (читаем документацию).

    Конфигурация - все что в конфигах от окружения к окружению меняется - в ENV переменные. Все остальное - не меняется и потому просто вшито внутрь контейнера.
    Ответ написан
    21 комментарий
  • Кому лучше доверить обработку статики, expressJS или Nginx?

    @Nc_Soft
    Да никто никогда не оставляет express торчать голой жопой в веб. Всегда проксируют через nginx, а отдавать статику бекендом это вообще бред.
    Ответ написан
    5 комментариев
  • У кого лучше покупать SSL сертификат?

    bingo347
    @bingo347
    Crazy on performance...
    Использую Let'sEncrypt по причине его бесплатности, вполне доволен
    Правда некоторые мобильные браузеры пока ругаются на неподтвержденный сертификат, это связано с тем, что регистратор новый и они его еще не добавили в свою базу
    Ответ написан
    Комментировать