• Как реализовать свой протокол?

    @AlexVWill
    переходит по моей ссылке вида: custom-protocol://mysite.com,

    вопрос не в сервере, а в клиенте, обработка URL, т.е. открытие соответствующего приложения является локальной задачей, а дальше уже локальное приложение отвечает за то, куда направляется запрос, на какой адрес по какому порту, и что на том конце на сервере на этот запрос отвечает... web сервер работает только с HTTP(S), на то он и web, чтобы был реализован ответ на какой то кастомный протокол, надо чтобы на удаленной стороне соответствующий порт слушал кастомный сервер
    Ответ написан
    Комментировать
  • Почему при клике на ссылку выбрасывает на верх экрана?

    PavelMonro
    @PavelMonro
    Потому что href="#" ведет в начало документа. Сделайте href="javascript:void(0)"
    Ответ написан
    Комментировать
  • Безопасно ли использовать API-сервис сторонних разработчиков для интеграции с WhatsApp?

    ArtemG
    @ArtemG Автор вопроса
    Metabot, платформа для создания роботов
    Отвечаю на вопрос тому себе год назад. Может кому-то пригодится.

    Фейсбук запустил официальный API для WhatsApp, но он актуален только крупному бизнесу. Подключение от 50 до 150 тыс рублей в зависимости от провайдера. Также около 30 тыс в месяц абонплата на определенный пакет адресатов. Сообщения в течении 24 часов с того момента как написал пользователь бесплатны, а за пределами 24 часов за каждое надо платить 3-4 рубля.
    Все это дорогая история и Фейсбук хорошо монетизирует крупный бизнес.

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

    С рассылками и ботами в WhatsApp лучше не шутить и придерживаться правила 24часов.

    Кому интересно чем закончилась история. В итоге мы интегрировались с сервисом Umnico.com, у которых несколько интеграций сразу, а также интегрируемся с Открытыми Линиями Битрикс24.
    Наши эксперименты переросли в стартап в теме чат-ботов и собственную платформу.
    Кому интересно, чекайте https://metabot24.com
    Ответ написан
    Комментировать
  • Как правильно настроить таргетинг на Москву в Adwords?

    DeoZ
    @DeoZ
    Веб-разработка и Реклама
    С таким таргетингом Вы вряд ли что-то получите в Google Adwords.
    Во-первых, смените геотаргетинг на Москву и Московскую область (или просто Москву). Использование радиуса на целые города смысла не имеет.
    Во-вторых, на поиске таргетинг по демографии лучше не использовать, максимум можно ввести корректирующие ставки в дополнение к основной. В новом интерфейсе это вариант "Наблюдение", в старом "Только назначение ставок".
    В-третьих, не имеют ли Ваши низкочастотные запросы в Google Adwords статус "мало запросов"? При таком статусе показов по ним не будет.
    Ответ написан
    3 комментария
  • Корректно ли размещение статьи и на сайте и на Яндекс.Дзен?

    grandma_killa
    @grandma_killa
    Монетизация и прокрастинация
    Если размещать уже опубликованные статьи с сайта, могу забанить аккаунт Дзена на копипаст, поэтому надо размещать одновременно на сайте и на канале.
    Саппорт Дзена рекомендовал поставить на сайте ссылку на Дзен, а с Дзена на сайт.
    Ответ написан
    Комментировать
  • Альтернатива Singleton?

    ivanvorobei
    @ivanvorobei
    iOS разработчик, канал https://t.me/sparrowcode
    То, что Singleton - антипаттерн, всем известно

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

    Все смогут рассказать про его отрицательные стороны.

    Как и про любой другой паттер / инструмент.
    Ответ написан
  • Можно ли заворачивать button в href?

    MTonly
    @MTonly
    Веб-разработчик с 2002 года
    Согласно HTML5 помещать кнопку внутрь ссылки является синтаксически некорректным («невалидным»).

    Кроме того, в IE ниже 9-й версии такая ссылка не реагирует на щелчок.

    Чтобы сделать «ссылкой» кнопку, следует обернуть её простейшей GET-формой:

    <form action="/some/example.htm">
        <button type="submit">Ссылка-кнопка</button>
    </form>

    Некоторые подробности — в моей заметке «Правильный способ сделать кнопку ссылкой».
    Ответ написан
    4 комментария
  • Что может еще сканер отпечатков пальцев для ноутбука, кроме как LogIn в систему Windows?

    deepblack
    @deepblack
    Как альтернативу отпечаткам, можно использовать YubiKey или любое другое устройство поддерживающее FIDO U2F

    Здесь подборка ресурсов поддерживающих различные виды аутентификации:
    https://twofactorauth.org/
    https://github.com/2factorauth/twofactorauth

    Тут краткие обзоры на различные токены:
    https://github.com/hillbrad/U2FReviews

    Ответ написан
    2 комментария
  • Как оформить ИП в России, работая на зарубежных заказчиков и получая оплату на PayPal счет?

    @daddy1971
    Для работы с пейпал в качестве ИП вам потребуется зарегистрировать корпоративный кошелек. (Обратите внимание, на корпоративный кошелек вы не сможете получать платежи от компаний в силу особенностей законодательства РФ.)
    Кроме корпоративного кошелька вам понадобится:
    - онлайн-касса;
    - фискальный накопитель (для УСН - на 36 месяцев);
    - договор с оператором фискальных данных.

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

    Для передачи данных о получении оплаты на пейпал вам потребуется сервис rocketr - он осуществляет корректную передачу необходимых данных на кассу. На главной странице их сайта есть ссылки на всех производителей касс, с которыми они работают. Поэтому, можете выбрать из них то предложение, которое вам покажется наиболее подходящим.

    Для учета всех транзакций следует вести книгу учета доходов и расходов, которую может потребовать налоговая для проверки. Также следует быть готовым к тому, что налоговая задаст вопросы о несоответствии сумм прошедших через расчетный счет и через кассу. Разница образуется за счет разницы в внутреннего курса пейпал и курса ЦБ, а также взиманием комиссий самим пейпалом за обслуживание.
    Ответ написан
    3 комментария
  • Определить тип трафика на сайте, 3G или WI-FI?

    vvpoloskin
    @vvpoloskin
    Инженер связи
    Через js получить локальный IP-адрес пользовательского устройства (сценарии есть в интернете), если он из 100.64.0.0/12 - мобильный оператор, из других частных диапазонов - фиксированный. Не поможет, если абонент подключен через wifi, у которого аплинк 3G/LTE.

    Если есть возможность выполнить http-запрос на клиентском устройстве, попробовать открыть личный кабинет четырёх операторов (типа lk.megafon.ru), если открывает без логина - вы нашли своего провайдера.
    Ответ написан
    2 комментария
  • Браузер OPERA удалили с App Store?

    Avg00r
    @Avg00r
    DevOps Engineer
    Ограничение, судя по всему, по географии.
    В Бразильском сторе скачать можно.
    В Российском и US, судя по топику на офф сайте, нельзя, а почему - нет реакции.
    Ответ написан
    4 комментария
  • Есть ли разница между горутинами и await в C#?

    @SZolotov
    Asp.net core, MAUI,WPF,Qt, Avalonia
    После вызова горутины выполнение немедленно перейдет к следующей строке, не дожидаясь, пока вызываемая функция завершится. Ключевое слово await указывает на то что нужно ждать пока вызываемая функция вернет результат и только потом переходить к выполнению следующей строки.
    Ответ написан
    1 комментарий
  • Есть ли разница между горутинами и await в C#?

    Tyranron
    @Tyranron
    Несмотря на то, что эти инструменты созданы для решения одних и тех же проблем, делают они это по-разному, как под капотом, так и в плане предлагаемых абстракций. Потому нельзя сказать что async/await в C# - это "просто обертка над горутинами".

    Горутины в Go - это концепция stackful coroutines (под капотом) + CSP (в абстракциях). Каждый раз, когда мы создаём горутину, под неё выделяется отдельный стек вызовов для её собственных нужд. При этом, когда происходит паника, то stack unwinding (размотка стека вызовов) происходит только в пределах этой горутины и не покидает границ её стека. Стек горутины полностью отвязан от стека её создания/вызова, потому горутина не может возвращать результат. Любое общение между горутинами выполняется либо посредством каналов, либо какой-то общей памяти.

    async/await в C# (то есть, Task'и) - это концепция stackless coroutines (под капотом) + futures (в абстракциях). Код с async/await'ами компилятор превращает в определенную стэйт-машину с yield point'ами. У них нет отдельного стека, они выполняются в том же стеке что и вызывающий их код. Соотвественно, есть возможность словить exception'ы (аналог panic'и) возникающие внутри асинхронного Task'а прямо в запускающем его коде. Так как выполнение идёт на том же стеке - Task нормально может возвращать результат и мы его можем считать в вызывающем коде без дополнительных примитивов/инструментов.

    При этом, если мы запустим Go с GOMAXPROCS=1, то мы получим однопоточный асинхронный код в Go (по умолчанию он многопоточный). Также и в C# мы можем выполнять Task'и как на одном потоке, так и на thread pool, получая аналогичные Go гарантии рантайма.

    С точки зрения абстракций/использования - это уже вкусовщина. Кому как больше нравится. У futures лучше дизайн в плане composability (их эргономичнее join'ить и select'ить), но они вынуждают писать везде async и await. У горутин надо постоянно городить чехарду с синхронизацией (попробуйте сделать аналог await для произвольной горутины), но если эту чехарду прятать под капот (как обычно и делают), то код вообще выглядит полностью синхронным и программисты радуются.
    Ответ написан
    4 комментария
  • Есть ли список "стоп" увлечений для программиста при найме?

    vt4a2h
    @vt4a2h
    Senior software engineer (C++/Qt/boost)
    На самом деле, это ваше личное дело, чем вы занимаетесь в свободное время. Вы можете хоть домики из спичек клеить.

    HR в 90% случаев некомпетентны в России. Некоторые людей по гороскопу подбирают. По крайней мере я сужу по своему опыту (а я в России очень много собеседований прошёл) и опыту моих знакомых. В принципе, в том виде, в котором сейчас есть HR -- это рудимент. Ни в коем случае не стоит подстраиваться под HR.

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

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

    Zettabyte
    @Zettabyte
    Проф. восстановление данных ▪ Вопрос? См. профиль
    Я так понимаю если я его форматирую то смогу вытащить файлы
    Объясните пожалуйста, логику этого предположения. Кроме шуток - правда очень интересно (пока в жизнь только его не воплощайте).

    Какова вероятность что я смогу её сохранить
    С имеющейся сейчас информацией - от 0 до 99%.

    Я пока оставил всё как есть.
    Это, в сочетании с консультацией здесь - разумное решение.

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

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

    Из домашних вариантов неплохим был бы gddrescue (GNU ddrescue), если вы дружите с Линуксом. Если нет, то используйте hex-редакторы, например WinHex или CI Hex Viewer.

    После этого образ надо проанализировать на предмет содержащихся там файлов. Для этого скачайте старую версию R.saver (она умеет работать с образами), откройте образ и запустите полный анализ.

    Кроме того, вы можете продиагностировать диск с помощью R.tester'а, но я бы не рекомендовал делать любую диагностику "ради интереса". Гораздо полезнее будет держать диск выключенным, тем более, что в чём проблема вы в целом уже представляете.
    Ответ написан
    2 комментария
  • Реально ли на сегодняшний день восстановить данные с жёсткого диска?

    @Paradise-R
    Уважаемый Сергей Александрович!
    Я, руководитель Лаборатории «Paradise-R» Казейкин НиколайВладимирович , прочитал Ваш отзыв о нашей компании и был неприятно удивлен тому, что Вы лично ко мне не обратились с претензией на работу специалистов, а сразу написали негативный отзыв о работе «Paradise-R» .Удивление моё было вызвано ещё и тем, что Вы подписали акт, в котором указывается, что претензий от Вас нет, а также ничего нам не сказали о своих переживаниях по поводу Вашего диска и о работе специалистов.
    Я сразу после прочтения Вашего отзыва решил сам лично разобраться в сложившейся ситуации. Собрал совещание, на котором специалист, работающий с Вашим диском отчитался о проделанной работе. Он предоставил от Вас подписанный акт и записи телефонных разговоров с Вами ( от 03.10.2018 г. 242 сек., начало разговора 13 ч.09 мин. и от 04.10.2018 г.207 сек., начало разговора 13 ч.28 мин. ) Я всё это внимательно изучил.
    В записях телефонных разговоров четко и конкретно специалист Вас проинформировал о том, какую работу он провел:
    Вычитал программное обеспечение с пластин и увидел структуру, не всю, а частично: документы, заметки, фотошоп, фотографии, видео, аудиозаписи и т.д.Сказал о том, что будем пытаться по структуре вычитывать понемногу. Обратил внимание на то, что диск читается очень медленно и его приходится каждый раз перезапускать. Объяснил ещё почему Вам не помогли в предыдущем месте, куда Вы обратились сначала, потому что на диске есть повреждения в Программном обеспечении, а также повреждения на пластинах. Вы ответили, что Вам всё понятно. Специалист Вам изложил все варианты:
    1-в идеальном состоянии вычитается 90 % диска и получаем все данные.
    2-самый плохой вариант, если диск наткнется на одно из повреждений, у него головки сломаются, плюс дополнительные повреждения могут быть при касании, тогда всё - мы ничего не достанем.
    3-промежуточный вариант. Вычитаем, но не весь диск. Достаем только часть данных. Будете смотреть по результатам - нужна Вам эта информация или нет.
    Вы сказали, что поняли.
    Специалист еще уведомил Вас в том, что по срокам работ очень сложно определиться, так как диск может очень долго читаться: 1-2 недели(медленно читается). А может быть и такое, что завтра- послезавтра он сломается.
    Сейчас ушла неделя на прочтение, если будет какая- то непредвиденная ситуация, то он( специалист) позвонит Вам. А также может Вам выслать скрин по электронной почте, чтобы визуально заранее было видно, и Вы по приоритетам будете выбирать, куда дальше углубляться по структуре. Вы сказали, что хорошо, я понял. Скрин Вам выслали, и Вы всё видели.
    Во втором телефонном разговоре специалист сообщил Вам о том, что диск, к сожалению, сломался. Шанс не очень большой на то,что мы поменяем механику и вычитаем диск. Здесь два варианта: либо мы с Вами останавливаемся и ничего не будем предпринимать, либо положим диск на полку и вернёмся к нему через 2-3 года. Вы поинтересовались, а что может измениться через 2- 3 года. Специалист Вам объяснил, что с каждым годом появляются новые технологии по восстановлению данных, которые возможно позволят вычитать информацию с вашего диска. А сейчас либо смириться, что ничего не достать и не пытаться, куда либо обращаться, либо положить его на полку. Вы сказали, что всё поняли.Хорошо. Спасибо.Приду, заберу диск. Специалист ещё раз напомнил Вам, что всё хорошо обдумайте и приезжайте -забирайте либо можете написать письмо на электронную почту,и мы его утилизируем с Вашего согласия. Вы ответили, что поняли и приедете заберёте диск.
    Сейчас, хочу пояснить, что обычно мы не беремся за работу, когда к нам приходят клиенты со вскрытыми дисками, так как очень мало шансов на восстановление данных. Но так как Вы пришли к нам после известной компании в Санкт- Петербурге, где есть лаборатория и там работают уважаемые нами специалисты, то мы решили Вам помочь. Всего в нашем городе на сегодняшний день две сильных Лаборатории по восстановлению данных. Остальные - это сервисные центры, в которых нет лабораторий. Поэтому, Вам менеджер сказал, что Вам в других местах не помогут. Нет у них лабораторий. И это важно понимать, когда отдаёте свою ценную информацию в сервисные центры. У нас получилось даже увидеть структуру папок и что там находится, Вам отправили скрин. Но, к сожалению, такое бывает, что диск ломается. Вы были конкретно проинформированы , ознакомлены с разными вариантами дальнейших событий по работе с Вашим диском, и осознанно дали согласие на работу с ним. У наших специалистов, конечно, была вера в хороший исход событий, так как у нас очень мощная современная Лаборатория восстановления данных , в которой есть современное новейшее оборудование от немецких, сербских, китайских и российских производителей. Имеется ламинарный бокс, в котором производятся самые сложные работы в чистых условиях. И всё это нам позволяет восстанавливать утерянную информацию с любых накопителей. На сегодняшний день за одиннадцать лет работы нашей Лаборатории мы восстанавливаем 80 % заказов от клиентов из Санкт- Петербурга, области и других регионов России. Нам даже присылают посылки с дисками из-за границы.
    Мы всегда стараемся помочь всем клиентам, попавшим в трудную ситуацию со своими накопителями. И мы всегда будем рады видеть всех, кто придет к нам за помощью в нашу Лабораторию восстановления данных «Paradise-R».
    С уважением, Казейкин Н.В.
    Ответ написан
    2 комментария
  • Реально ли на сегодняшний день восстановить данные с жёсткого диска?

    opium
    @opium
    Просто люблю качественно работать
    Была аналогичная ситуация по фото у друга, правда упал он во включенном состоянии, он отдал мне я по оказии ехал в мск и отдал им
    https://storelab-rc.ru
    Восстановили большую часть данных заплатил около 25 тысяч, с учётом переносного диска на который они восстановили данные
    Ответ написан
    1 комментарий
  • Error_reporting(E_ALL & ~E_NOTICE) или error_reporting(E_ALL)?

    abler98
    @abler98
    Software Engineer
    1. error_reporting(E_ALL & ~E_NOTICE); // включается вывод всех ошибок, кроме E_NOTICE
    Использовать ini_set('display_errors', 1); // включает показ ошибок
    2. Да, только так вы еще ошибки E_NOTICE будете получать
    3. Одно из преимуществ mysqli в том, что в нем есть ООП стиль (инетерейс) + он работает быстрее mysql
    4. mysql_fetch_array при указании второго параметра может возвращать ассоциативный или численный массив, без него - объединенный
    mysql_fetch_assoc и mysql_fetch_num возвращает только один тип массива
    5. echo '', print_r($res_arr,true), ''; - это вообще ГК, можно просто print_r($res_arr); - выводит массив в виде строки, но если указать второй паремтр true - функция вернет результат, а не выведет.
    Ответ написан
    Комментировать
  • Как при всплытии окна сделать затемнение заднего фона?

    Amirez
    @Amirez
    В чем секрет кота Бориса?
    <div class="modal-wrapper">
          <div class="modal-window">
            .........
          </div>
         <div class="overlay"></div>
    </div>
    
    <style>
    .modal-wrapper {
        position:fixed;
        display:flex;
        width:100%;
        height:100%;
        justify-content:center;
        align-items:center;
        background:rgba(0,0,0,.7);
        z-index:100;
    }
    
    .overlay {
        position:absolute;
        width:100%;
        height:100%;
        z-index:1;
    }
    
    .modal-window {
       width:300px;
       height:500px;
       z-index:2;
    }
    </style>


    ну и дальше JS)
    Чтоб при клике на .overlay закрывалось окно
    Ответ написан
    Комментировать