• Как в 20 17 учить node.js?

    OlegOleg1980
    @OlegOleg1980
    программист
    Есть мнение, что мода на NodeJS уже уходит.
    Прошла эйфория по поводу универсальности данного продукта, и, много думать надо, где вы будете применять его. Разве что в качестве платформы для сборки проекта...
    P.S. Чтобы не закидали камнями, добавлю, что любой продукт также нужно оценивать с точки зрения его производительности, а у вышеуказанного в этом плане есть ряд неустранимых пока недостатков.
    Ответ написан
  • Webpack? Но зачем?

    maxfarseer
    @maxfarseer
    https://maxpfrontend.ru, обучаю реакту и компании
    Для одностраничников (да еще и без реакта, хотя собственно кому в голову придет делать LP на реакте :) ) - конечно, webpack вообще ни к чему. Вам же достаточно gulp + browserSync для комфортной разработки?

    ---
    Когда ваш "инструментарий" отлично справляется с работой - используйте его.
    Когда у ваших инструментов есть какой-то раздражающий момент - ищите варианты решения проблемы. Может быть что-то заменить?
    Когда просто "хочется" чего-нибудь новенького - посмотрите по сторонам, лишним не будет.
    Ответ написан
    2 комментария
  • Как сделать AJAX запрос безопасным?

    @dady_KK
    PM
    CSRF - почитайте про это, именно этот тип атак Вы описали в вопросе, для защиты используют обычно уникальные токены, которые рандомно меняются при каждом посещении (каждом просмотре страницы) и проверяются бекендом (совпал токен или нет). Таким образом чтобы запрос был успешно обработан в форме должен быть правильный токен для этого конкретного посещения
    Ответ написан
    4 комментария
  • Локальная разработка и Docker?

    @micronull
    Я использую для локальной разработки docker. Это значительно удобнее, чем держать полноценное окружение из зоопарка разных версий php и прочих штук.
    Если сайт старый, под какие-нибудь древние версии apache, php и mysql. Не проблема, - смотрю на hub, если нет, то собираю свой.
    При этом спокойно можно переключить на другой проект, более современный. Например с nginx, php7 и postgresql. Предварительно выключив предыдущий контейнер.

    Далее в перспективе можно спокойно кинуть контейнер на сервер и за пару минут развернуть сервис.

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

    DarrellStanding
    @DarrellStanding
    Учусь Front-end разработке
    Я делал так
    @font-face
        font-family: "RobotoRegular"
        src : url("../fonts/RobotoRegular/RobotoRegular.ttf")


    В отдельном файле fonts.sass , a затем подключал к основному файлу main.sass вот так
    @import "app/sass/fonts.sass"
    Ответ написан
    1 комментарий
  • Какой нужен сервер(ы) для сайта-миллионника?

    @HakerPolza
    если просто сайт "картинка"
    с базой пользователей
    сам сайт писался с нуля в в блокноте, то он не будет весомым и загружать сильно сервер при обращении к нему. если это не торент трекер, на него капитальная нагрузка идет при обработке данных, про него я говорить не буду, сейчас это под запретом.
    Скажу про банальный сайт база, включает авторизацию + база на добавление ответа текстовый + максимум графический по тегу, и только из интернета. То впринципи одним сервером ожно обойтись. Если уже надо загружать с компьютера изобрадение должен быть сервер, хотя, можно и на одном, но при такой нагрузке нужно уже два, да вообще как минимум две железки надо будет, самый минимум это роутер, который будет вести клиента к серверу, ты же не будешь на прямую на сервер пускать клиентов. я работал с откртым, статика была на сервере под виндой, т.е. сразу на сервер идут клиенты, это для тебя будет сложно, понимаю что ты не понятно откуда взял эти данные.
    тебе главное защитить сервер. если про это идет разговор что "при сильной нагрузке" сайт ложится, так это банальная атака, как от нё избавиться читай, не все так просто. Можно перед сервером поставить железяку которая будет препятствовать заливке, распознает трафик, такая тебе полюбому нужна будет, называется фаервол, выбираешь с захитой от флуда (DDoS) атак.
    для тебя идеально, скажу на стороне брать сервер, так нет, они не отвечают за этьо, наверное лучше у себя ставить, и анализ делать.
    Смотри есть есть куда ввести данные, хотьь одна строчка, то сервер можно взомать проникнуть на сервер, вот это тебя должно будешь напрягать. Ты не описал что у тебя будет на сайте.
    К примеру могу сказать ставь 64 гб озу - это в твоем случаи, т.к. в первую нагрузка идет при флуд атаке на оперативную память, а там уже как атака напрявлена, если мощные камни, то их будет тяжелее загрузить при большом озу. минимум плата на 2 камня.

    по поводу скорости давай прикиним сколько у тебя страница весит - 1 мегабайт, это максимум - больше не советую делать, картинки все сжимаешь, если что на новую страницу выводишь в полный объем откртие страницы, плюс это доп просмотры.

    для дома более 40 мегабит врятле получится получить исходим из этого + провайдер режит скорость до 35 делим / на 8 = 4,375 у тебя исходящий канал получится дома в МБ (мегабайтах)
    если для работы то могут дать по оптике к примеру денег хватит у тебя на 100 мегабит это равно при учете после прохождения железки фаервола если денег не так много это будет 50 мегабит, ну допустим у фирмы при таких объямах есть деньги и они купили тебе циску или делинк нормальный у тебя после прохождения его выйдит скорость 85 мегабит делим / на 8 = 10.625 МБ (мегабайт на выходе) - всегда оталиваемся от этого какую страницу пишем весом. и здесь уже встает вопрос сколько должна весить страница для просмотра для просмотра одновременого из расчета хорошего пинга, идейка пришла, покупаем мамку с оптикой внутри, считай сам, потери будут меньше.
    посчитаю по бьджетному варианту, т.к. на такой сайт может хватит сервера одногопроцесорного и 16 гб озу даже 8 гб, при грамотной настройке.
    10.625 делю на милион, но не сразу на него делю, у меня есть + ну к примеру человек что бы не сильно утуждал (первую старницу вообще легкой делай, кантакты и т п)
    человек будет жадть бех затруднения к примеру 5 секунт вообще без напряга, не поймет 10 тоже. берем среднее 5+10=15/2=7 с копейками получается это среднее время ожидания человека при открытии новой страницы или открытия сайта. я дам пример с этим временем, можешь просчитать весомые страницы до 25 секунд, при условии что человек уже вошел на сайт, если выгрузка данных можно делать до нескольких минут, анимацию ставь главное что что то происходит.
    умножаем 10.625 мегабайт на 7,5 секунт ожидаения которую мы вычислили выше у нас получается вес трафика может быть 79,6875 мегабайт за секунду.
    теперь самое интересное мы переводим эту сумму в КБ для вычисления страницы.
    дял этого мы делаем 79,6875 мегабайт * на 1024 (как нам известно что в одном мегабайте 1024 КБ)= 81600 килобайт
    81600 килобайт - это сесионое разовое значение для миллионного входа
    теперь переводим в байты для такого ко-ва людей легче считать будет в байтах
    81600 килобайт * 1024 = 83558400 байт за обращение
    наконец мы пришли к делению получению 1 страницы для сайта которую тебе нужно придерживаться
    83558400 байт мы делим на 1 000 000 человек = это у нас получается страница должна быть 83,5584 байт
    вот такие расчеты для тебя мой друг

    вот смотри какой канал тебе нужен оптика к примеру 100 мегабит стоит 7 - 10 000 рублей в месяц

    смотри что мы пришли что даже 1 гигабит будет скорость маленькая если ляжет такая нагрузка
    надо ставить 10 гигабитный канал тогда для 1 милиона сайт можно делать, следовательно ниже не как
    миллион людей :) это я разово сказал, на сайте среднее количиство в день было 500 человек в день на 2008 год это было очень хорошо сайт был на первом месте по топ запросу однословному, потом забил на сайт.
    для 1,5 миллиона людей на сутки смело можешь писать страницы велечиной до 10 мегабайт при условии что твоя скорость интернета 10 Гб
    попутных ветров
    Ответ написан
    Комментировать
  • Как сотрудничать с постоянными клиентами?

    @jkotkot
    режим сарказма
    Больше всего интересует политика оплаты услуг. Я, например, занимаюсь веб разработкой.. Как мне сделать такое ценообразование, чтобы и мне хорошо было и заказчика устраивало?

    Нужно выбирать такие цены чтобы они в первую очередь устраивали тебя, и потом уже заказчика.
    Нужно искать баланс ценой заказов и временем, которое ты тратишь на работу. Если клиентов слишком много - повышай. Сначала для новых, потом для старых.
    Как повышать цены старым клиентам это отдельный интересный вопрос. Можете создать новое обсуждение, если хотите обсудить.)))

    Также очень интересует, как быть в случае появления каких то багов..

    Если почасовка, то очевижно, что оплата почасовая.
    Если фикс, то мы обычно закладываем последний этап на примерно 20% времени проекта на конечный багфикс. И обязательно закладываем это в цену. Потом у клиента есть пара недель чтобы найти новые баги после этого. Но это должны быть именно баги в функционале, который очевидно должен работать, но не работает. После двух недель берем деньги за все типы багов. Т.е не нашел за 2 недели - твои проблемы, плати. Мы не благотворительная организация, баги являются частью работы. Т.е изначальная стоимость работ включает тот факт, что какие-то баги будут... а на функционал совсем без багов как в НАСА ни у кого все равно денег нету.

    И вообще, расскажите детали оплаты, у кого опыт есть хороший.


    С новых клиентов берешь 50%-100% предоплаты за первый этап работа. Далее по завершению этапа клиент принимает, оплачивает остаток, получает код. Ну потом с постоянными можно и без предоплаты, если они не косячили с оплатой, хотя можно и не расхолаживать их... тут личный выбор.

    Делаете ли вы какие то скидки может или акции для заказчиков и т.д.

    Какие еще скидки?))) Мы ждем бонусов и новых заказов за хорошую работу.
    Но вообще тут чисто рыночные отношения. Цена определяется балансом спроса и предлоджения. Нет заказов - снижай цену. Есть заказы, клиенты просят доработок и рекомендуют друзьям - повышай пока не уравняется. Вот и вся логика.
    Ответ написан
    8 комментариев
  • Как сотрудничать с постоянными клиентами?

    apavlyut
    @apavlyut
    www.pavlyut.ru
    У меня есть ценообразование которое работает так как вы описали, и клиенты за это платят.

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

    UPD: Подробно об этом я рассказал на спарке https://spark.ru/startup/mjolnir/blog/32675/pravil...
    Ответ написан
    4 комментария
  • Как сотрудничать с постоянными клиентами?

    vicodin
    @vicodin
    Имею некоторый опыт
    Как мне сделать такое ценообразование, чтобы и мне хорошо было и заказчика устраивало?

    Какую бы цену вы не поставили, она не будет устраивать всех в мире клиентов. Фокусируйтесь на такой, чтобы она вас устраивала, а при должном уровне работы, будут находиться клиенты на любую цену.

    Также очень интересует, как быть в случае появления каких то багов..

    Брать деньги за их исправление, разработки без исправления багов/рефакторинга не бывает.

    Делаете ли вы какие то скидки может или акции для заказчиков и т.д.

    Это не рынок, какие скидки? Наоборот, постоянные клиенты должны регулярно повышать оплату или накидывать бонусы, если вы хороший разработчик конечно же. Иначе уйдете, а ему потом опять среди индусов и школьников искать толкового чувака месяцами.

    Вообще не парьтесь об этом. Если клиент настроен на короткое сотрудничество, никакими гипнозами не заставите его стать постоянным. Если качество вашей работы будет соответствовать или превосходить его требования, ему незачем будет искать другого исполнителя на возникшие в будущем подобного рода задачи. В конце проекта, можете сказать ему что-то типа: "Обращайтесь, если понадобится помощь, да и ещё я умею то-то и то-то".
    Ответ написан
  • С чего нужно начать изучать программирование нейронных сетей?

    @micr0
    Только учусь...
    Почему именно нейронные сети? Анекдот в тему:
    — А почему у вас деревня называется Астафьево?
    — Рассказывают, что у нас однажды Петр Первый со свитой останавливался, и ночью один солдат заснул в карауле. Утром начальник караула спросил царя, как его наказать. Но царь был в хорошем настроении и сказал: "Оставь его! ". С тех пор село называется Астафьево.
    — А-а, я теперь понял, почему соседнее село называется Ипатьево.

    А по делу:
    1. Выучить язык программирования Python или R (или оба)
    2. Вспомнить школьную математику
    3. Изучить линейную алгебру, статистику, комбинаторику и теорию вероятностей
    4. Наконец, начать читать про машинное обучение и data science. Можно по книгам учиться, а можно и в интернете материал брать - тут от вас зависит, как вам удобнее.
    Ответ написан
    6 комментариев
  • В чем разница между --save-dev и --save?

    k12th
    @k12th
    console.log(`You're pulling my leg, right?`);
    devDependencies — пакеты, которые нужны для разработки. Всякие галпы-гранты и плагины к ним обычно подпадают в эту категорию.
    dependencies — пакеты, от которых ваш пакет зависит непосредственно: как правило — библиотеки.
    Ставятся они все в node_modules.
    Тут подробнее: https://toster.ru/answer?answer_id=559717#comments...

    Если кто-то делает npm install вашему пакету, то npm подсосет те пакеты, которые указаны у него в dependencies, но не в devDependencies.
    Если сделать npm install внутри папки, в которой есть package.json, то установятся и те, и другие.
    Ответ написан
    3 комментария
  • Как научиться учить программирование?

    @seamen
    программист любитель
    Без мотивации, о которой говоришь ты, живут процентов процентов 80-90 людей в мире. Не парься особо. Что естественно - то не безобразно))
    Ответ написан
    1 комментарий
  • Как научиться учить программирование?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Бывало проснешься как птица -
    Крылатой пружиной на взводе,
    И хочется жить и трудиться....
    Но к завтраку это проходит.
    (с) Губерман

    Просто догнала усталость от однотипности, отдых сменой сферы деятельности сильно помогает, потом просто прет как хочется снова сесть за проект. Вопрос только в промежутке времени необходимом на отходняк, тут сроки варьируются от пары часов до пары месяцев. Зависит от фазы луны и погоды на марсе.
    Ответ написан
    Комментировать
  • Как писать тесты?

    lxsmkv
    @lxsmkv
    Test automation engineer
    Тесты нужны для автоматического получения информации о состоянии продукта. Если у вас нет вопросов, т.е. вы во всем уверены, то и тесты как бы не нужны (ирония). Вы ведь каждый день перед тем как сесть за руль смотрите не сдулись ли колеса? Смотрите на уровень бензина. Слушаете как работает мотор на холостом ходу. Проверять работают ли светофоры не нужно, вы на них не можете повлиять. Проверять есть ли пробки на дорогах нет смысла, вы на них не можете повлиять. А вот состояние вашего автомобиля, да. Так же и с ПО. А с чего начать - логично, с самых критичных вещей. Чем виднее и центральнее функция, тем важнее ее покрыть тестами.
    Ответ написан
    4 комментария
  • Стоит ли использовать Docker на продакшене?

    kumaxim
    @kumaxim
    Web-программист
    Если у Вас один-три сервера, скорей всего, Docker Вам не нужен. В этом случае для управления конфигурацией лучше используйте ansible.

    Потребность в Docker возникает либо в случае когда нужно расшарать одно окружение на множество машин, например, у меня и моих коллег сейчас девелоперское окружение(php + apache + mysql + redis) крутиться на контейнерах. Второй пример - нужно настроить динамическое горизонтальное масштабирование. Этот вариант Вам нужно рассматривать, только если Вы используйте AWS или что-то подобное.

    В целом, docker / ansible / chef / puppet и т.п. Вам нужны только в случае, если нужно шарить одно окружение на разные машины, причем часто, с уверенностью что оно везде одно. Другого примера использования придумать не могу.
    Ответ написан
    1 комментарий
  • Какие инструменты использовать Веб-разработчику для создания сайта на заказ?

    @ZZahar
    Если решил проблему - нажми "отметить решением"
    Слабо понимаю, что вы хотите, но как я понял вам нужны все инструменты для создания сайта.
    IDE: WebStorm(PhpStorm, etc)
    Программа где будете смотреть PSD макет: тут есть 2 варианта, PhotoShop или Adobe Creative Cloud. В первом вы смотрите все ручками, а в другом вы загружаете макет в сайт и тоже смотрите все ручками как в Фотошопе. Если знакомы с Фотошопом берите его.
    Локальный хостинг: Open Server, Apache, MySQL. Тут выберете, то что вам нужно.
    По желанию: Git(SVN, Mercurial ), FileZilla.
    Вроде все. Опять же много зависит какой сайт вы хотите сделать, интернет-магазин, лендинг, etc.
    U.P.D Если у вас only-верстка, то можете взять Brackets вместо WebStorm'а, или прикрутить к нему(WebStorm'у) LivePrewiew.
    Ответ написан
  • Как мотивировать школьников учиться?

    sajgak
    @sajgak
    Только увлекательное изложение материала преподователем с максимальным вовлечением аудитории. Все остальные попытки либо не будут иметь никакого эффекта, либо исключительно отрицательный.
    Ответ написан
    8 комментариев
  • Как создать тестовое окружение в линуксе?

    Docker. Если у Вас есть VPS (отдельно для каждого проекта), то можете использовать Ansible.
    Ответ написан
    2 комментария
  • Как вы деплоите django приложение на сервер?

    @artinnok
    бекенд-программист
    Исходя из вашего вопроса - "деплой" это разворот сервера с нуля до рабочего состояния.

    Все зависит от количества деплоев:
    1. Если вам достаточно задеплоить 1 сервак и забыть про него - проще поднять руками.
    2. Если вы постоянно разворачиваете > 2 серваков - однозначно надо использовать автоматизированные инструменты.

    Рассмотрим несколько популярных инструментов:
    1. Ansible - на мой взгляд самый удобный инструмент для быстрой и удобноый работы с парком серверов, устанавливает весь софт и настройки на вашей VPS.
    2. Docker - позволяет создать на вашей VPS еще одну виртуальную машину с заранее прописанными настройками и софтом, также его иногда используют для параллельного запуска нескольких БД / веб - серверов и т.д.
    3. Также есть Puppet, Chef, Salt - ими не пользовался.

    Рассмотрим другое толкование слова "деплой" - заливка изменений проекта на сервер, который находится в рабочем состоянии (т.е. имеется уже рабочий проект)

    Тут все зависит от размеров проекта:
    1. Если проект маленький / средний fabric вполне справляется с такими задачами, как подтянуть изменения из репозитория / собрать статику / перезагрузить nginx и т.д., но использовать его для разворота сервера - это тяжелая работа, которую проще делать с помощью других инструментов (описано выше). Сам я тоже использую fabric для обновления прода.
    2. Если проект большой и приближается к хайлоаду - то надо использовать Continuous Integration, это позволит вам сделать автоматизированную выкладку кода на боевой сервер - к примеру, пушите коммиты в репозиторий на github, срабатывает хук, начинает работать Jenkins, идет прогон тестов, при успехе тестов обновляется прод.

    Инструментов для CI много:
    1. Jenkins - простой и бесплатный, с кучей расширений и прочих плюшек.
    2. Travis-CI - бесплатный для опен сорс, платный для приватных проектов (69$ минимальный план).
    3. Buildbot, tox - не использовал.

    P.S. Я думаю, что понятие "деплой" - это выкладка изменений на боевой сервер. То, что делаете вы - создаете новый сервер, разворачиваете окружение - ближе к развороту сервера. Если так делается каждый раз, когда льются изменения на боевой сервак - надо менять workflow.
    Ответ написан
    13 комментариев
  • Как правильно работать с REST API?

    Ну вообще днище какое-то.
    Для добавления таких привязанных к объекту сущностей обычно делают PATCH/PUT запрос с урлом типа /:resource_name/:resource_id/:entity_name.
    В вашем случае что-то типа PUT /clients/:id/stocks
    Ответ написан
    6 комментариев