• Поиск и устранение неисправностей Node.js-приложений под капотом

      С момента появления Node.js диагностика совершенствовалась в несколько этапов, от отладки приложений до глубокого анализа производительности. В этот раз речь пойдет о стратегиях использования таких инструментов, как core dump debuggers, flame graphs, ошибках в production и утечке памяти.


      В основе материала — расшифровка доклада Николая Матвиенко из Grid Dynamics с нашей декабрьской конференции HolyJS 2017 Moscow.
      Читать дальше →
      • +42
      • 9.7k
      • 1
    • Извлечение упоминаний сущностей и поиск в Textocat API

        Textocat API — это облачный SaaS анализа текстов. Качественное извлечение полезной информации из текстов — сложная задача и требует серьезной экспертизы. Миссия команды Textocat — сделать процесс обработки текстов настолько легким для использования, чтобы его мог включить в свой арсенал любой современный разработчик. Используя Textocat API, вы можете быстро прототипировать приложения на основе текстовой аналитики и превращать их в свой бизнес. В данной публикации мы покажем, насколько легко интегрировать в любое приложение возможности Textocat API по распознаванию упоминаний сущностей (объектов) и поиску документов на русском языке.

        Возможности Textocat API Beta


        В начале апреля мы запустили бета-тестирование Textocat API. В этой версии мы предлагаем разработчикам бесплатно использовать часть функционала сервиса со следующими возможностями:
        • распознавание упоминаний сущностей (entity recognition) в коллекциях документов на русском языке;
        • хранение обработанных коллекций;
        • полнотекстовый поиск с учетом выделенных типов сущностей.


        пример распознавания упоминаний сущностей

        Читать дальше →
      • Web PUSH Notifications быстро и просто

        • Tutorial

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


        Информации по этой теме в интернете полно, но она фрагментирована, разбросана по разным ресурсам и перемешена с уведомлениями для мобильных устройств с примерами на Java, C++ и Python. Нас же, как веб-разработчиков, интересует JavaScript. В этой статье я постараюсь саккумулировать всю необходимую и полезную информацию.


        Web PUSH Notifications


        Я думаю, вы уже знаете что такое push-уведомления, но я всё же напишу коротко о главном.


        Пользователь, заходя на сайт, вытягивает (pull) с него данные. Это удобно и безопасно, но с развитием интернет ресурсов, появилась необходимость оперативно доставлять информацию пользователям не дожидаясь пока те сами сделают запрос. Так и появилась технология принудительной доставки (push) данных с сервера клиенту.

        Читать дальше →
      • Другая сторона ИТ: 15 полезных книг и руководств по маркетингу и управлению проектами



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

          В моем списке чтения накопилось немало интересных ресурсов (какие-то из них более известны, какие-то нет), так что я решил поделиться им с аудиторией Хабра.
          Читать дальше →
        • Классификация русского текста с помощью библиотеки Natural на NodeJS

            Преамбула


            Я никого не удивлю, если скажу, что современный человек, а, в особенности, программист, каждый день получает огромное информации. К примеру, мой RSS-клиент выдает мне в неделю около 500 статей. И, конечно же, это далеко не единственный источник информации.

            Я задумался над тем, чтобы сделать для себя RSS-клиент с обучаемым фильтром статей на NodeJS. В принципе, под ноду есть готовые RSS ридеры, есть готовые нейронные сети с классификаторами, так что написать какой-то прототип мне показалось не особенно сложной задачей.

            Я решил начать с тестирования подвернувшихся под руку нейронных сетей. Я взял небольшое количество входных данных. Позитивные данные я скопировал из статей по nodejs с хабра. Негативные данные я нашел на «ленте.ру». Задача классификатора заключалась в том, чтобы отсортировать статьи о программировании и nodejs от обычных, безынтересных для моего развития, новостей.

            Результаты работы с Brain и Fann я показывать не хочу — я не считаю, что я обладаю достаточной экспертизой для того, чтобы судить о них. Скажу только что из коробки они меня не устроили совершенно — на моих входных данных они не давали адекватного количества правильных ответов. А вот библиотека Natural меня очень впечатлила.

            Далее я покажу как я обучал классификатор, проверял его работу и заставлял понимать русский язык.

            Читать дальше →
            • +17
            • 14.6k
            • 7
          • Вещь в себе

              Есть такая поговорка: «Айтишник-экстраверт — это тот, кто во время разговора смотрит не на свои ботинки, а на ботинки собеседника». Истинная правда! Мы в массе своей глубокие интроверты, с навыками общения существенно ниже среднечеловеческих. А наша профессиональная деятельность еще сильнее развивает эту склонность. Те из нас, у кого общение не так затруднено, кому удается часть пара «пустить в гудок», довольно быстро выбиваются в начальство. Это и есть наш интерфейс с внешним миром.
              Читать дальше →
            • С аниме дорога летит незаметно или что посмотреть по дороге в отпуск



                Август — закат лета и последняя возможность вырваться в отпуск (кстати, в августе особенно хороша Карелия). Самое время определяться с видом отдыха — в отеле, палатке или на даче — и собирать вещи, загружать полезные приложения, покупать всякие гаджеты. И чтобы не скучать в дороге, нужно озаботиться каким-то развлечением и пищей для ума. Например, взять с собой интересную книгу. Но иногда хочется отдохнуть от чтения и дать отдых мозгам. Обычно здесь рука тянется запустить очередной сериал или полнометражку, но всё же не торопитесь: на кинематографе свет клином не сошёлся. Есть ещё один жанр, который может подарить не меньше удовольствия — аниме.

                Поклонникам не надо объяснять, что это такое. Но если вы сейчас скривились и вспомнили «Сейлор Мун» и «Покемона», то не торопитесь осуждать: аниме столь же разнообразно, как и кинематограф. В этом жанре есть как очень глубокие и серьёзные полнометражные фильмы, и сериалы, так и совершенно бестолковые и проходные поделки. Просто по ТВ почти невозможно посмотреть хорошее и качественное аниме, поэтому у многих сформировалось предубеждение относительно японской мультипликации. И всё же мы рекомендуем поближе познакомиться с этим жанром по пути в жаркие страны, в горы или в деревню.
                Читать дальше →
              • Разработка кроссплатформенного приложения с помощью Ionic Framework

                • Tutorial
                image

                Всем привет! Не так давно в одном из комментариев я пообещал написать вводную статью для быстрого знакомства с возможностями Ionic Framework (далее IF). Стараюсь сдерживать свои обещания. Для начала мне хотелось бы выложить список ссылок, которыми часто пользуюсь при разработке с помощью IF:


                Читать дальше →
              • Пара новых фитнес-трекеров от Jawbone: продвинутый Up3 и недорогой Up Move

                  Jawbone — это однозначный лидер на рынке фитнес-трекеров. Чтобы не сдавать позиции, сегодня они представили две новинки: продвинутые Jawbone Up3 за $179 и модель для новичков Up Move за $49.99.



                  Новый Jawbone Up3 обладает огромным количеством датчиков: кроме акселерометра для отслеживания движений, в нем присутствует сенсоры температуры тела и окружающей среды, а также серия датчиков для биоимпедансного анализа (анализа состава тела человека). С помощью микротоков браслет сможет определить частоту сердечных сокращений и уровень гидротации. Такое разнообразие собранной информации открывает уникальные возможности для предоставления индивидуальных советов по улучшению состояния организма.
                  Читать дальше →
                • Работаем с EMS по нарушению сроков доставки посылок — инструкция

                    Недавний пост в «Я негодую» о работе EMS в нашей стране и полном пофигизме почтовых работников выявил потребность в инструкции о том, что можно сделать, чтобы когда-нибудь проблемы с посылками у EMS прекратились.

                    Сходу расстрою — посылкой управлять никак нельзя. Если она долго не «прилетает» в Россию (т.е. статус Экспорт стоит, а Импорт — нет) — тут вряд ли что-то поможет. Однако страхуемся, делаем по шагам, описанным ниже.
                    Порадовать тоже могу: процентов 95 посылок все-таки доходят. Объем для сравнений — порядка 10 посылок в месяц из США и Европы.
                    Обращаю внимание, что многие посылки (процентов 60 всех отправлений) я получаю «от себя», используя сервисе вроде Шипито. В некоторых случаях это означает, что почта не может отказать в претензиях по причине того, что они представляются «не отправителем». Однако во многих случаях рекомендую идти и биться за свою посылку при помощи процессов и документов, представленных ниже.
                    Читать дальше →
                  • Часть 2. Сколько мегабит/с можно пропустить через зрительный нерв и какое разрешение у сетчатки? Немного теории



                      Другие публикации из этой серии


                      Часть 1. Unboxing VisuMax — фемто-лазера для коррекции зрения
                      Часть 3. Знакомьтесь — лазер по имени Amaris. Переезды и первое пробуждение VisuMax
                      Часть 4.1 Возвращаем зрение. От очков до эксимерного лазера
                      Часть 4.2 Возвращаем зрение. От очков до эксимерного лазера

                      Предыдущая публикация, посвященная технологиям лазерной коррекции зрения была встречена с интересом, которого я, если честно, даже не ожидал. Именно поэтому я решил продолжить статью в виде целого цикла, в рамках которого мы рассмотрим подробнее технологии лежащие в основе лазерной офтальмохирургии. Если вы ожидали увидеть непосредственно сами лазеры в этой статье — я вас немного разочарую. Я долго пытался обойти биологическую тематику, но в итоге понял, что не смогу рассказать о лазерной коррекции зрения, не раскрыв основы строения и функционирования нашего зрения.

                      Я постараюсь рассмотреть человеческое зрение через призму IT. Если кому-то не слишком интересно читать часть, посвященную биологическим аспектам зрения — ничего страшного. Просто пропустите разделы, начиная с оптической системы глаза, и сразу переходите к традиционному конкурсу от наших девушек. Однако, я все же рекомендовал бы ознакомиться с этим материалом, чтобы лучше понять следующую статью, в которой мы будем рассматривать LASIK, Femto-LASIK, ReLEx SMILE и другие методы лазерной офтальмохирургии.

                      Есть настроение разобраться, что именно говорят эти непонятные люди в белых халатах, задумчиво глядя на результаты вашего обследования? Вы хотите узнать немного нового об уникальном природном даре — зрении? Тогда добро пожаловать под habracut. Как обычно — много иллюстраций и трафика (≈5 MB).
                      Читать дальше →
                    • Федеральный закон № 243, или Тихая пенсионная реформа

                        счастливая старость

                        Началось все с того, что мне пришло письмо от знакомого. Я усомнился и пошел проверять. Уж больно неправдоподобным показалось написанное в нем.

                        Однако факт остается фактом: «… с 1 января 2014 г. будет осуществлен т. н. страховой маневр — сокращены с 6 до 2% отчисления на формирование накопительной части пенсии. Высвободившиеся 4% пойдут на финансирование страховой части.»

                        UPDATE! Весьма вероятно, что скоро сокращение будет не до двух процентов, а до нуля — смотрите обновление №3 в конце поста.

                        Ну, кто там спрашивал, от чего отвлекают наше внимание?! Здесь был горький смайлик с кривой ухмылкой.

                        Кому интересно / небезразлично, добро пожаловать под кат!
                        Читать дальше →
                      • Что делать, если «кина не будет» или как обойти блокировку сайта провайдером

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

                          блокировка

                          «Вот те раз!» — подумал я. Ни в одном реестре запрещенных сайтов данный ресурс не присутствовал и, с чего билайн его заблокировал — непонятно. Естественно после таких вот «заявочек» в голову полезли страшные мысли: «а что если завтра любимого „кина“ не будет!». Данные мысли тут же подвигли меня начать искать способы борьбы с данной ситуацией, и написать, для тех кому будет интересно, маленький обзор нескольких решений по обходу блокировки сайтов. (под катом скрины)
                          Читать дальше →
                        • О Почте России замолвите слово…

                            Сразу скажу, я к Почте России не имею отношения. Точнее имею, но как постоянный клиент. У меня интернет магазин и я лично раз-два в неделю превращаю свое отделение в филиал ада на земле в частном порядке сгружаю в ее чрево по паре десятков посылок на протяжении вот уже 4 лет. Эпично закладывая окошко почты своими коробками как кирпичной кладкой :) И посему у меня есть ряд наблюдений и некоторая статистика за последние четыре года.

                            Я конечно понимаю, что 99% процентов возмущений приходится на долю интернет шоперов ждущих посылки из всяких ебаев-китаев, и проблемы там действительно есть. Но моя цель не дать несчастной почте еще одного пинка, а все же сказать что-то позитивное. Дать пару советов по правильному обращению с почтой и зажечь тусклый светодиодик в конце тоннеля. Потому я буду рассказывать только про хождения отправлений внутри страны и из России в дикие земли :) И речь пойдет, по большей части, про так называемый «Первый класс». Т.к. я пользуюсь преимущественно им.
                            Читать дальше →
                          • Разоблачение 12 юридических заблуждений о программах для ЭВМ



                            Заблуждение / опасная привычка На самом деле … Наш совет прост:
                            1. Мы создали программу и автоматически стали ее авторами и правообладателями. Для охраны и продажи программы никаких документов оформлять не нужно, ведь она охраняется авторским правом — ©! Действительно: программа для ЭВМ охраняется авторским правом как литературное произведение (п.1 ст. 1259, ст. 1261 ГК РФ).

                            Но то, что для возникновения авторских прав не требуется регистрация или соблюдение каких-либо иных формальностей (п.4 ст. 1259 ГК РФ), ни в коем случае не освобождает:
                            − от соблюдения набора критериев, установленных законом;
                            − от необходимости документально доказать факт создания программы и свои права на них.

                            Неоформленный SOFT закон не охраняет.

                            Всё просто: если у вас спор о правах на программу, то без документов вы не сможете доказать, что (1) у вас были права и (2) ваши права нарушены, (3) что сама эта совокупность данных и команд на языке программирования является интеллектуальной собственностью (ведь различные версии и релизы никакой новой интеллектуальной собственности не создают).
                            То же самое – при постановке на бухгалтерский учёт и оформлении бухгалтерских проводок.

                            Коротко говоря: нет документов = нет интеллектуальной собственности = нет нарушений прав = нет компенсации за нарушение прав.
                            Оформляйте много хороших и разных документов при создании программ для ЭВМ:
                            — договоры с авторами;
                            — договоры с подрядчиками;
                            — технические задания;
                            — протоколы совещаний и тестов;
                            — соглашения между соавторами;
                            — авторское свидетельство;
                            — сертификат признания интеллектуальной собственности;
                            — спецификация РИД;
                            — свидетельство о регистрации программы для ЭВМ (Роспатент).
                            Читать дальше →
                          • Мой опыт: Российские интернет банки и карты

                              Привет всем! Если вы фрилансер, то наверняка имели дело с банковскими картами. Сейчас на Российском рынке огромное предложение карт, начиная от банковских премиальных, заканчивая скидочными и бонусными от кафе до авиакомпаний.
                              Сразу хочу сказать, что пост никаким образом не является рекламным. Тут только мое мнение и мой опыт по отношению к Российским банкам и их картам. В обзоре я использовал только те банки, с которыми работал лично.


                              Читать дальше →
                            • Определяем количество срабатываний затвора на Canon 400D или сколько наснимал фотоаппарат

                                В сети существует огромнейшее количество программ, которые обещают показать количество срабатываний затвора на фотоаппарате. Часть из них не работают вообще, часть из них работают просто не корректно, показывая, что фотоаппарат за 4 года сделал 9 снимков. Итог один — Canon 400D не пронять ни одной из найденных утилит.

                                Однако выход все же нашелся. Спустя 2 часа поисков и попыток, старичок Canon сдался, и показал свой главный секрет!

                                image


                                Читать дальше →
                              • Все ходы записаны

                                     Я считаю, что одним из главных устройств, которое должно быть в любом автомобиле, является видеорегистратор. Что это такое и для чего он нужен? По большому счету, это небольшая штука, основная задача которой – записывать всё то, что видит водитель в лобовое стекло своего автомобиля. За этот «бесполезный» кусок китайской пластмассы иной раз хотят очень много денег, поэтому многие считают его покупку нецелесообразной, предпочитая купить какой-нибудь сабвуфер. Однако в жизни любого водителя может случиться (тьфу-тьфу-тьфу) такой момент, когда подобное устройство может оказаться единственным спасением – пройдет всего какой-то миг, а видеорегистратор, в отличие от того же сабвуфера, успеет многократно окупиться. От приключений на дороге никто не застрахован, просто одни вздохнут с облегчением, а к другим моментально придет понимание, что регистратор все-таки нужен. Был.

                                  image

                                  Сегодня под катом – подробный обзор интересной новинки, некоторые рассуждения и немного советов. Ну так, чтобы знать, на что обращать внимание при выборе и чтобы окончательно понять, нужное это приобретение или нет.

                                  Читать дальше →
                                • Dr.Web и ESET запустили разблокираторы Trojan.Winlock

                                    Антивирусные компании ведут активную борьбу с Trojan.Winlock. Сначала «Лаборатория Касперского» представила свой разблокиратор. Теперь же подоспели ESET и Dr.Web. Причем ссылку от Dr.Web можно сохранить на мобильнике и при надобности использовать.
                                  • Алгоритмы поиска путей на JavaScript



                                      Поиск оптимального маршрута юнита к цели на неизвестной карте — одна из самых сложных задач при разработке игры. К счастью, существует некоторое количество алгоритмов, которые решают эту задачу. Есть и отличная библиотека PathFinding.js с поддержкой 11 таких алгоритмов.
                                      Читать дальше →