• Где лучше реализовать нейронную сеть?

    evgeniy8705
    @evgeniy8705
    Повелитель вселенной
    Если бы вы умели хотя бы создать один нейрон, не говоря уже о сети, вы бы не задавались бы такими вопросами.
    Я больше чем уверен что "Знаю C# и немного html,css mysql", это не тот уровень разработчика, на котором он сможет написать нейронную сеть. Думаю вы переоцениваете свои скиллы.
    Ответ написан
    Комментировать
  • Что на сайте нужно обязательно кэшировать?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Обязательно - не надо ничего кэшировать.
    Дополнение от dimasmagadan : Не забываем про настройку сервера для того, чтобы браузер клиента мог сам кэшировать страницы.

    В идеале, кэшировать надо данные ВСЕХ функциональных блоков, зависящих от входных параметров.
    К ним относятся:
    1. SQL-запросы и ответы
    2. поиск по любой структуре данных и результат этого поиска
    3. файловая структура, находящаяся по определённому пути
    4. данные, полученные для каждого из блоков представления ("список", "выборка", "статистика" и т.д.)
    5. сформированный шаблонизатором контент на основе GET-параметров

    Всегда кэшируйте первым тот блок, который занимает больше времени при обработке данных и т.д. по нисходящей.
    Первые претенденты на кэширование, как правило: блоки с пунктами 2, 3 и 5.

    Дополнение от Алексей Уколов :
    Кеширование - это большая боль для разработчика, на самом деле. И "не надо кешировать" - это именно с этой точки зрения. Любой кеш усложняет приложение в разы, потому что его нужно инвалидировать, обрабатывать ошибки и т.п. Но часто без него не обойтись, это факт.
    Ответ написан
    7 комментариев
  • Как организовать "архитектуру" верстки проекта (верстать модульно)?

    @sgnatyuk
    Web Developer
    Прежде чем использовать какую-либо «архитектуру» проекта, нужно задаться вопросами: зачем мне это надо? какие проблемы этим я смогу решить?
    Поучаствовав в работе над несколькими проектами можно прийти к общему пониманию оптимальной структуры нужной вам.
    На этом этапе нужно понимать, что не бывает идеальной архитектуры, все зависит от ваших предпочтений, инструментов, которые вы используете, команды в которой вы работаете и вашего текущего уровня знаний.
    Если нет понимания зачем это нужно, не стоит так усложнять архитектуру проекта, конечно можно использовать пресловутый БЭМ, который как бы уже является для многих стандартом (либо SMACSS, либо еще что-то), но опять же, не все может быть там полезно. В том же БЭМе много условностей актуальных только для очень крупных проектов.
    Поэтому решением вашей проблемы будет искать и строить архитектуру проекта конкретно под себя, тогда вопрос о непонимании уйдет сам собой.
    Конечно если вы работаете в команде у вас может и не быть таких возможностей, ну и тогда архитектура проекта будет строиться уже относительно интересов команды.
    Ответ написан
    Комментировать
  • Как хранить интервальное расписание в БД?

    @alex_ak1
    Простой способ это линуксовый крон, в нем с помощью достаточно простой грамматики можно задать интервалы в достаточно широких правилах. Там задается все так:
    минута час день_недели день_месяца месяц команда
    Каждое из чисел это или (*), или число (5) или несколько чисел (2,3,5, 7-10), либо пропуск (что_то/интервал).
    Поэтому можно легко задавать события типо каждый второй вторник
    * * 2/2 * * команда
    или первое число мая
    0 0 * 1 4 команда 2
    На основании этого можно строить регулярные события. На них накладывать расписание праздников (и то не всегда, к примеру оплата домашних счетов не зависит от праздников). Как вариант - можно сдвигать событие, если оно попало на праздник.
    Ответ написан
    6 комментариев
  • Meteor.js расцветает или чахнет?

    PQR
    @PQR
    Не согласен с предыдущим оратором (@geeek), в частности с утверждением
    В общем если хочешь быть в тренде - бери
    - Meteor совсем не в тренде.

    Если дать краткий и резкий ответ на вопрос "расцветает или чахнет?" - отвечу: интерес к Meteor чахнет, не смотря на все усилия команды разработки.

    Компания MDG (Meteor Development Group) подняла $31M инвестиций (https://www.crunchbase.com/organization/meteor) и хотела всё сделать круто, стать мейнстримом, а потом зарабатывать на хостинге Meteor проектов - такой план монетизации. Хостинг они, кстати, сделали. И в какой-то момент было много хайпа вокруг Meteor, казалось, что всё идёт по плану. Полтора года назад вышел Meteor 1.0 (октябрь 2014), потом была пара хороших релизов, которые убрали всю "сырость": Meteor 1.1 и 1.2.

    Но в середине 2015 стало понятно, что никаким мейнстримом они не стали, мейнстрим нынче React!
    Не смотря на простоту старта и скорость разработки с Meteor, были очевидны следующие минусы:

    1. Собственная система пакетов со своим центральным репозиторием https://atmospherejs.com - посмотрите на счётчики скачивания пакетов, это крохи по сравнению с npm. Посмотрите на активность разработки основных пакетов - всё очень тухленько.

    2. Собственная система сборки. С одной стороны всё работает из коробки, с другой стороны в неё не вклинишься (это сложно). Плюс всякие странные условности, что всё в глобальном пространстве имён и ваши js файлы загружаются в алфавитном порядке. В Meteor 1.3 частично решили проблему, ходят слухи, что в будущем будут использовать webpack.

    3. Собственный шаблонизатор blaze (похож на handlebars). В начале blaze выглядел хорошо, но теперь все внезапно пишут на React и многие потирают руки в ожидании Angular 2, в итоге blaze оказался ещё один велосипедом, с которым не понятно что делать.

    4. На бекенде всё ещё Node 0.10. Даже с Node 0.12 Meteor уже не работает из-за некоторых бинарных зависимостей! Обещали в будущих версиях обновиться с поддержкой Node 4.

    5. Метеор сильно завязан на MongoDb. Чтобы реактивно доставлять новые/изменившиеся данные от сервера в бразуер они парсят логи Mongo. Были попытки сделать аналогичное для SQL баз, но не увенчались успехом. В итоге встречайте их новый проект Apollo, который поверх GraphQL и не привязан к конкретной реализации бекенда www.apollostack.com А что теперь будет со старым добрым DDP?

    6. Ваше Meteor приложение одной командой можно упаковать в мобильное приложение Cordova - выглядит круто, но сейчас время ReactNative и вот мы читаем обсуждения на форумах, что возможно, они таки интегрируются с ReactNative, но когда?

    Подводя итог: ребята из MDG подняли кучу денег и хотели сделать всё сами: свои пакеты, свою сборку, свой шаблонизатор, свой реактивный протокол (DDP) и чтобы всё работало из коробки. И они сделали это!

    Только это оказалось никому не нужно, т.к. для пакетов все сидят на npm, сборка должна быть гибкой (и поэтому у нас есть gulp и webpack), самый модный шаблонизатор нынче - это React, реактивный протокол GraphQL и базы на сервере люди любят разные, а не только MongoDb. А Meteor, по сути, остался на обочине всей экосистемы и движухи вокруг JavaScript. Поняв это, MDG начали двигаться в сторону JS комьюнити и первый шаг сделан: Meteor 1.3 поддерживает нормальные модули ES2015, npm пакеты, рендринг через React и Angular. Но Meteor 1.3 - это куча костылей поверх старого велосипедного Meteor. Почитайте их планы на будущее в официальном блоге, хотя бы в этом посте: info.meteor.com/blog/announcing-meteor-1.3 - им по сути предстоит переписать всё заново! И первые ласточки такого "переписывания" - это выделение проекта Apollo.

    Возможно, со второй попытки они всё сделают правильно и Meteor 2.0 действительно выстрелит. Если только у них деньги не закончатся раньше.

    Сейчас можно взять Meteor и эффективно зарабатывать на маленьких/средних фриланс проектах, когда нужно сделать быстро и не думать о долгосрочной поддержке.
    Если же вы делаете большой продукт, то вас ждут большие потрясения и изменения в экосистеме Meteor.
    Ответ написан
    4 комментария
  • Что нужно для анонимности в сети? Какие средства для этого имеются? Как скрыть своё местонахождение и действия с финансовыми операциями?

    @lakegull
    1. Скрывает IP, трафик не шифруется, соответственно провайдер всё про вас знает.
    2. Логи, мозги, наводки.
    3.Да, сведение фактов воедино, может способствовать разорению уютного гнёздышка.
    4. и 5. Воспользуйтесь услугами VPN-провайдеров, которые не ведут логи. Весь трафик будет зашифрован и со стороны провайдера невозможно будет определить что вы делали и куда заходили. Желательно, чтобы сервера VPN-провайдера находились в стране, где его законодательно невозможно обязать раскрыть логи ( при условии, что они всё таки ведутся).
    Становлению качественной анонимности предшествует процесс подготовки. Я очень надеюсь, что все ваши действия с финансовыми операциями легальны, поскольку мои советы предназначены для сохранения коммерческой тайны организации.

    Техническая сторона: если вы кому-то будете очень интересны, то успешность выхода на вас это в основном просто вопрос денег. К примеру заставить VPN-сервис раскрыть свои логи будешь стоить недёшево, а заставить сразу двух провайдеров в разных странах открыть свои карты будете стоить 10х недёшево, и не факт, что получится.
    Во этому поэтому есть смысл шифровать трафик последовательно, через 2 VPN-сервиса.

    "Социал-инженеринговая" сторона:
    На вас можно выйти по косвенным признакам: вдруг на пару часов шифранулись, чего обычно не делаете. Сообщение вроде безобидное отправили человеку, сразу образуется ненужная связь с вами, а те, кому надо, просто начинают копать дальше. А вы в курсе, что более половины аккаунтов в разных социальных сетях СНГ и почтовых ящиков взламывается за считанные часы и эти услуги стоят копейки - менее 15000 рублей?
    Советы следующие:
    Полностью прекращайте общение по бизнесу через социальные сети. Бизнес-партнёров в друзья не добавляете (даже в FB) и сообщения им не пишете, любые. Рабочую почту желательно завести у зарубежных сервисов, обычно они платные, но это всего то около 30$ в год. Покупаете VPN и шифрует весь свой трафик всегда, а не только когда проводите операции.

    UPD

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

    Если это смартфон с сим-картой внутри, то тут всё сложнее. Дело в том, что оператор связи может определить местонахождение любого абонента с точностью в несколько десятков метров (в городе). Но на смартфоне так-же можно настроить VPN (OpenVPN) и работать анонимно. GSM-анонимность - это отдельная тема, слишком большая, чтобы раскрывать её здесь. Многие прошаренные бизнесмены общаются по бизнесу только с отдельного аппарата, сим-карта которого зарегистрирована на кого-нибудь из своих охранников. В РФ пробивается любая информация, даже просушка телефонных разговоров, это лишь вопрос цены.
    И если я правильно понимаю, то трафик - это поток информации и деятельности в сети?
    Это те самые мегабайты и гигабайты информации, которую вы скачиваете с сети или наоборот отправляете в сеть. Информация разбивается на небольшие "пакеты", и они гуляют от сервера к серверу.
    И и очень важное что такое ЛОГИ?
    Это журнал протоколирования, который находится на каком-либо сервере, в нём ведётся учёт того, с какого сервера и во сколько пришёл пакет с данными и на какой сервер он был переадресован впоследствии. Это цепочка, следы на снегу, которые могут в итоге привести к вашему реальному местоположению. Эта цепочка обрывается на том месте, где сервер (в данном случае VPN-провайдер), не ведёт логи.
    Насчет по социал-инжиниринговой стороне мало понял, если есть время, то можете раскрыть?
    Социальная инженерия, это способ с помощью которого можно обойти технические средства защиты информации и получить желаемую информацию, опираясь на человеческий фактор и человеческие слабости. Если по простому - это развод кого-либо из ваших знакомых, с целью получить какую-либо информацию о вас. Если это делает профессионал, который предварительно собрал о вас информацию из открытых источников, то скорее всего вы даже не заметите, когда у вас из под носа уведут конфиденциальные данные. Эта тема ещё более огромная, чем GSM-анонимность.
    И насколько я знаю, то сторонние интерне-ресурсы обязаны по закону держать сервера с информацией на территории России. "Закон о персональных данных" который обязывает интернет-компании хранить личные данные российских пользователей внутри страны.
    VPN-провайдеры, у которых вы шифруете свой трафик, не хранят у себя на серверах скаченные вами данные. Они лишь обеспечивают транзитный трафик + его шифрование, ну и смену IP, конечно. Соответственно по действие закона о персональных данных не попадают.

    VPN работает, как показано на схеме:
    78d40072cea44952aa92a74e31288455.JPG

    По данной схеме ваш IP-адрес будет заменён на IP-адрес сервера в Нидерландах. То есть для владельца сайта, который вы посещаете, вы будите определяться как посетитель из Нидерландов.

    При VPN-соединении, провайдер, который предоставляет вам доступ в интернет может лишь посчитать объём скаченных вам данных, но не может определить их содержимое. Так-же не может определить происхождение этих данных.

    Напоследок.
    У любой анонимности есть две фазы:
    1) до того момента, как вашу личность начали ассоциировать с определённым событием
    2) после этого момента.

    В первом случае вам будет достаточно просто шифрования с последовательным соединением через двух VPN- провайдеров.
    Во втором случае риск утечки конфиденциальных данных многократно увеличивается. Если есть возможность не делиться конфиденциальной информацией с партнёрами по бизнесу, то не делитесь ею. Большинство людей взламывается на на раз-два.

    UPD2
    еще тут человек выше вашего комментария пишет, что провайдер и так знает, где пользователь находится, если пользоваться вашими советами, то можно этого же избежать.?То вроде всё понятно с ваших слов, но встречаются некоторые разноглася между комментаторами.


    Видимо человек подразумевает что для провайдера вы не являетесь анонимным пользователем. Это верно, поскольку он вам предоставляет доступ в интернет по договору, оформленному на паспортные данные реального человека. На ваш или нет - это не важно. Физический доступ к ПК может быть у нескольких людей, но спрашивать прежде всего будут с того, чья фамилия в договоре. Разумеется это случиться только при условии что логи приведут к вам. Если всё сделать грамотно, то это не произойдёт никогда. А пока нету прецедента - никто никого искать не будет. Я повторюсь - попытка найти хвосты из IP-адресов, выстроить всю цепочку и выйти на реального человека, это очень недешёвое занятие и не факт, что будет хоть какой-нибудь результат. Браться за это дело заинтересованные лица будут только в том случае, если есть хоть какие-то гарантии, что результат покроет потраченные ресурсы. А пока вы не долларовый миллионер - никто такой марш бросок ради вас делать не будет.

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

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

    AMar4enko
    @AMar4enko
    Днище, само собой. Вон ребята взяли да за день в конструкторе сайтов soundcloud склепали!
    Ответ написан
    1 комментарий
  • Есть отзывы о ucancode.ru?

    imperiumcat
    @imperiumcat
    моё твердое убеждение в том, что самое эффективное это занятие с репетитором
    Ответ написан
    Комментировать
  • Чем пользоваться на mac os el capitan для веб разработки?

    @maxloyko
    Попробуйте Vagrant. И система чище, и нативный воркфлов
    Ответ написан
    1 комментарий
  • Как защититься от Ddos атаки на JavaScript?

    0x9d8e
    @0x9d8e
    Велосипедостроитель в терминальной стадии
    setInterval(function()
        You.head.setPosition(Wall.getPosition());
    }, 1000);

    А если серьёзно, тостер не место для глупых шуток, тут люди реальные проблемы решают.
    Ответ написан
    1 комментарий
  • Как объяснить девушке что такое "некрасивый" код?

    Объясните, что написание кода - изложение идей и мыслей программиста, его видения предметной области и алгоритмов (собсно, это так и есть). Красивый код - это внятно изложенные, четкие и незамутненые мысли, код-спагетти - это такое же спагетти в голове этот код писавшего. Объясните, что приведение кода в порядок приводит в порядок мысли пишущего, и не позволит лопнуть мозгу читающего.

    Вообще, расскажите о том, что деятельность программиста - это постоянная работа и со своим разумом, не только с предметной областью. Это умение построить систему в голове, и потом изложить эту систему и взаимосвязи в ней как машине, так и другим программистам.

    Молодые люди с ясными и последовательными мыслями, насколько мне известно, пользуются успехом у девушек.
    Ответ написан
    2 комментария
  • Как сделать такое всплывающее окно?

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

    @aqwAntonio
    не хочу занудствовать, но еще не рассмотрен вопрос защиты от фиксирования идентификатора сеанса, в этом случае функция session_regenerate_id() генерирует новый идентификатор сессии текущего посетителя. само же значение идентификатора сессии в куки устанавливается функцией session_start(), а вам ее в любом случае надо вызвать, иначе сессии не будут работать

    т.е. я хочу сказать, что пытаясь придумать какое то собственное решение вместо использования системных решений, вы рискуете в будущем что то забыть или не учесть по незнанию и необходимость использования такой функции как, например, session_regenerate_id() , вызовет у вас потом головную боль

    поэтому по порядку:
    1.1 Что писать в куки/сессию?
    ничего вручную в куки писать не нужно, вызываете session_start().
    в сессию можете записать значение is_auth = true после того, как проверите, что логин и пароль верные

    1.2 Как на каждой странице организовать проверку авторизован пользователь или нет?
    ну это впрос больше архитектуры приложения, чем вопрос только авторизации. для пары страниц можно сделать общий подключаемый файл проверки авторизации, а для среднего проекта лучше сразу использовать фреймворк, но тогда вопросы об авторизации у вас вероятно изменятся, т.к. во фреймворках обычно уже заложен базовый функционал авторизации. в самом простом случае проверяете что значение сессии is_auth === true

    1.3 Если нужно, чтобы у пользователя был только одновременный доступ с одного устройства - как быть?
    ну это довольно сложно но попробую объяснить вкратце
    - во первых, нужно хранить актуальный идентификатор сессии пользователя в постоянном хранилище, БД или еще где либо (т.е. на каждой странице после проверки авторизации обновляете идентификатор сессии в БД)
    - во вторых, вам нужно хранить сессии авторизации в определенной папке, заданной функцией session_save_path($dir). смысл в том, что папка $dir должна быть доступна вам для записи чтения (изучите вопрос безопасности отдельно)
    - в третьих, после успешной авторизации вы извлекаете из БД идентификатор сессии данного пользователя (см п. 1) и удаляете эту сессию из директории (см п. 2), и только потом записываете новый идентификатор сессии пользователя в БД (снова см. 1)

    1.4 А если с нескольких?
    тоже самое что в 1.3, только раньше у вас была структура таблицы допустим user_id, session_id, а в данном случае будет user_id,session_id, device_id т.е. смысл в том, что это не таблица пользователей а таблица сессий пользователей

    Тажк рекомендую прочитать книгу "PHP. Рецепты программирования" от издательства O'Reilly, второе издание или более позднее

    По второму вопрос в сущности ничего не меняется, кроме того, что дополняется функционалом инициализации и обработки ответов от vk.com. об этом можете почитать на странице https://vk.com/dev/auth_sites
    Ответ написан
    Комментировать
  • Как правильно написать авторизацию/аутентификацию?

    deemytch
    @deemytch
    linux root, ruby/perl programmer, sql, backend.
    Если совсем коротко, то суть авторизации заключается в том, что пользователь взамен своего пароля и логина получает какую-то длинную малопредсказуемую строку, которую хранит все время сессии на своей стороне и предъявляет серверу на каждый чих. И кроме сервера эту строку никому-никому.

    А сервер хранит эту строку у себя, с привязкой к записи пользователя.

    Дополнительные детали - это хранение этой строки с ограничением по времени, с привязкой к IP адресу, версии браузера и другим деталям, с тем, чтобы можно было регулировать количество одновременных сессий, время сессии, и пытаться обнаружить воровство этой строки. Строка обычно называется хэш, хотя не факт. Строку можно не хранить, а сверять с другим хэшои, получаемым из первого. И так далее по мере роста фантазии и извращённости мыслей.
    Ответ написан
    Комментировать
  • Авторизация Instagram без API?

    @slavabars
    Веб программист
    Отправляешь пост запрос вида username=ИМЯ&password=ПАРОЛЬ на https://instagram.com/accounts/login/ajax/ и сохраняешь куки. С этими куками ходишь по сайту.

    function curl_file($url, $cookie = 'coockie', $post = '', $xhr = '') {
    	$ch = curl_init();
    	curl_setopt($ch, CURLOPT_URL, $url);
    	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    	curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    	curl_setopt($ch, CURLOPT_HEADER, true);
    	curl_setopt($ch, CURLOPT_TIMEOUT, 60);
    	curl_setopt($ch, CURLOPT_COOKIEFILE, $cookie);
    	curl_setopt($ch, CURLOPT_COOKIEJAR, $cookie);
    	curl_setopt($ch, CURLOPT_REFERER, $url);
    	curl_setopt($ch, CURLOPT_AUTOREFERER, true);
    	if ($post) {
    		curl_setopt($ch, CURLOPT_POST, true);
    		curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
    	}
    	if ($xhr) {
    		preg_match('|csrftoken(.*)|', file_get_contents('coockie'), $csrf);
    		curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-CSRFToken:' . trim($csrf[1]), 'X-Instagram-AJAX:1', 'X-Requested-With:XMLHttpRequest'));
    	}
    	$file = curl_exec($ch);
    	curl_close($ch);
    	return $file;
    }
    
    curl_file('https://instagram.com/accounts/login/ajax/', 'coockie', 'username=Имя&password=Пароль', 1);
    echo curl_file('https://instagram.com/', 'coockie', 0, 1); //Выйдет твоя страничка


    Ну а далее гуляем с куками по сайту
    Ответ написан
    6 комментариев
  • Как оплачивать фрилансеров с расчётного счёта компании?

    bigvasya
    @bigvasya
    Маркетолог аналитик
    Хм мы услугами вот этих ребят пользуемся flservice.ru
    Через них можно оплачивать фрилансера прямо с расчётного счёта и фрилансер может получать деньги куда ему удобно.
    Ответ написан
  • Как часто нужно проверять форму?

    @kirill-93
    Все эти методы не подходят, если при нажатии на кнопку "сохранить", вы редиректите на другую страницу. Самый правильный вариант - отправлять запрос не сразу после нажатия клавиши, а спустя какое-то время. Некий таймер, который обнуляется, если пользователь продолжает вводить текст. Обычно такой метод называется "debounce", и уже реализован в разных библиотеках, например в underscrore
    Если подключать библиотеку не хочется, то можно написать самому, примерно так:

    function debounce(method, timeout) {
            clearTimeout(method._tId);
            method._tId = setTimeout(function(){
                method();
            }, timeout);
        }       }, timeout);
    }


    Описываем нужный метод:
    function checkTitle() {
     //Код проверки
    }


    И вешаем его на событие:

    $('input').on('keyup', function() {
       debounce(checkTitle, 1000);
    });


    В итоге, если после ввода последнего символа прошла секунда и пользователь больше ничего не ввел, вызовется метод checkTitle()
    Ответ написан
    1 комментарий