• Всё что вам нужно знать о Node.js

    Привет, Хабр! Представляю вашему вниманию перевод статьи "Everything you need to know about Node.js" автора Jorge Ramón.



    В наши дни платформа Node.js является одной из самых популярных платформ для построения эффективных и масштабируемых REST API's. Она так же подходит для построения гибридных мобильных приложений, десктопных программ и даже для IoT.


    Я работаю с платформой Node.js более 6 лет и я на самом деле люблю её. Этот пост главным образом пытается быть путеводителем по тому, как Node.js работает на самом деле.

    Читать дальше →
  • Вирус Lurk взламывал банки, пока его писали обычные удаленщики по найму

      Отрывок из книги «Вторжение. Краткая история русских хакеров»


      image

      В мае этого года в издательстве Individuum вышла книга журналиста Даниила Туровского «Вторжение. Краткая история русских хакеров». В ней собраны истории с темной стороны российской IT-индустрии — о ребятах, которые полюбив компьютеры, научились не просто программировать, а грабить людей. Книга развивается, как и самое явление — от подростковых хулиганств и форумных тусовок до силовых операций и международных скандалов.

      Материалы Даниил собирал несколько лет, некоторые истории выходили на «Медузе», за пересказы статей Даниила Эндрю Крамер из New York Times в 2017 году получил Пулитцеровскую премию.

      Но хакерство — как и любая преступность — слишком закрытая тема. Настоящие истории передаются только из уст в уста между своими. И книга оставляет впечатление безумно разжигающей любопытство неполноты — как будто о каждом ее герое можно сложить трехтомник того «как было на самом деле».

      С разрешения издательства, мы публикуем небольшой отрывок о группировке Lurk, которая грабила российские банки в 2015-16 годах.
      Читать дальше →
    • Что на самом деле случилось с исчезнувшим малайзийским Боингом (часть 3/3)

      • Translation
      Не претендую на лавры товарища five, но мне кажется, что цикл статей прервался на самом интересном месте, и позволю себе восполнить этот пробел.

      1. Исчезновение
      2. Прибрежный бродяга
      3. Золотая жила
      4. Заговоры
      5. Возможный сценарий
      6. Капитан
      7. Истина
      Читать дальше →
    • Я нашёл отличного программиста по имени Стив Возняк

      • Translation
      Давным-давно, когда компьютеры были большими, а бизнес скучным, произошло нечто неожиданное. Молодые хакеры нашли способ собрать персональные компьютеры на дешёвых микропроцессорах от телетайпов и светофоров. Одним из них был Стив Возняк. Эти ребята восприняли ограничения своих компьютеров как вызов, сели и заставили эти крошечные чипы делать удивительные вещи. Вот что публиковал Dr Dobb's Journal в августе 1976 года:



      Это набор арифметических процедур на действительных числах. Микропроцессор (6502, такой же, как в Apple I и II) мог работать только с байтами, то есть целыми числами между 0 и 255. Хуже того, он мог только складывать и вычитать их. Но с помощью этой библиотеки вы можете вычислить $1.2627-1099.56$, или даже взять квадратный корень из пи. Удивительно, но автор программы по имени Стив Возняк уместил основные функции (сложение, вычитание, умножение и деление) в 239 байт, используя всего 127 инструкций.
      Читать дальше →
    • Советские мечты о будущем



        Помните очаровательного котика, которые чихал в заставке советского мультфильма? Мы помним, и нашли его — вместе с ворохом другой рисованной фантастики. В детстве она пугала и обескураживала, поскольку поднимала серьезные, взрослые темы. Настала пора пересмотреть старые мультфильмы, чтобы узнать, о каком будущем мечтали в той стране.
        Читать дальше →
      • «Умный дом» — переосмысление

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

          Хочу поделиться своим опытом («тестовый проект»).

          Постройка собственного дома (особенно, если еще и своими силами) — крайне объемный кусок информации, поэтому я свое повествование буду вести больше про ИТ-системы (мы же все-таки сейчас на Хабре, а не на ФХ, хотя там тема тоже есть).
          Читать дальше →
        • Лучший способ начать изучать современную генетику, молекулярную биологию, генную инженерию и геномику

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

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

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


            Читать дальше →
          • Шпаргалка по шаблонам проектирования


              Перевод pdf файла с сайта http://www.mcdonaldland.info/ с описанием 23-х шаблонов проектирования GOF. Каждый пункт содержит [очень] короткое описание паттерна и UML-диаграмму. Сама шпаргалка доступна в pdf, в виде двух png файлов (как в оригинале), и в виде 23-х отдельных частей изображений. Для самых нетерпеливых — все файлы в конце статьи.

              Под катом — много картинок.

              Читать дальше →
            • Кодек нового поколения AV1: корректирующий направленный фильтр CDEF

              • Translation


              Автор: Monty (monty@xiph.org, cmontgomery@mozilla.com). Опубликовано 28 июня 2018 года.

              Если кто не читал предыдущую статью… AV1 — это новый универсальный видеокодек, разработанный Альянсом за открытые медиа (Alliance for Open Media). Альянс взял за основу кодек VPX от Google, Thor от Cisco и Daala от Mozilla/Xiph.Org. Кодек AV1 превосходит по производительности VP9 и HEVC, что делает его кодеком не завтрашнего, а послезавтрашнего дня. Формат AV1 свободен от любых роялти и навсегда останется таковым с разрешительной лицензией.

              Эта статья задумывалась как вторая в серии статей, которые подробно описывают функциональность AV1 и новых технологий, которые лежат в его основе и впервые используются в продакшне. Предыдущая статья на Xiph.org объясняла функцию прогнозирования яркости Chroma from Luma (CfL). Сегодня мы расскажем об ограниченном направленном корректирующем фильтр (Constrained Directional Enhancement Filter). Если вы всегда задавались вопросом, что нужно для написания кодека, пристегните ремни и приготовьтесь к образованию!
              Читать дальше →
              • +14
              • 5.8k
              • 3
            • Некоторые замечания по вопросу сбора требований при разработке программного обеспечения

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

                В русском языке осталась небольшая область, где требуется его доведение до современных реалий. Это касается западных практик в области управления людьми и коллективами. Они слабо изучались советской наукой, при этом в 90-х началось их ускоренное внедрение людьми, которые совсем недавно считали их идеологически неверными. Так было с экономикой и в более специфических областях, например, касающихся производства программного обеспечения.
                Писать отменный программный код у нас умели всегда. Но бизнес в сфере ПО шире простого наемного программирования — это торговля знаниями. А раз так, то требуется производство и его организация. Здесь ключевую роль играют системы управления сбором требований, где производственный процесс приходится выстраивать, опираясь на западный опыт.

                Далее в статье разбираются типичные ошибки заимствования на примерах из перевода книги Карла И. Вигерса «Разработка требований к программному обеспечению». В конце обсуждаемый материал обобщается с помощью V-модели жизненного цикла проектных требований к ПО.
                Читать дальше →
              • 8 учебных проектов

                • Translation
                «Мастер совершает больше ошибок, чем новичок — попыток»

                Предлагаем 8 вариантов проектов, которые можно сделать «по фану», дабы получить реальный опыт разработки.

                Проект 1. Клон Trello


                image


                Клон Trello от Indrek Lasn .

                Что вы освоите:

                • Организация маршрутов обработки запросов (Routing).
                • Drag and drop.
                • Как создавать новые объекты (доски, списки, карточки).
                • Обработка и проверка входных данных.
                • Со стороны клиента: как использовать локальное хранилище, как сохранять данные в локальном хранилище, как читать данные из локального хранилища.
                • Со стороны сервера: как использовать базы данных, как сохранять данных в базе, как читать данные из базы.

                Тут пример репозитория, сделанного на React+Redux.
                Читать дальше →
              • Исследуем базы данных с помощью T-SQL

                • Translation
                Как dba и консультант по оптимизации производительности SQL Server в Ambient Consulting, я часто сталкиваюсь с необходимостью анализа узких мест производительности на экземплярах SQL Server, которые вижу первый раз в жизни. Это может быть сложной задачей. Как правило, у большинства компаний нет документации по их базам данных. А если есть, то она устарела, или же её поиск занимает несколько дней.

                В этой статье я поделюсь базовым набором скриптов, раскапывающим информацию о метаданных с помощью системных функций, хранимых процедур, таблиц, dmv. Вместе они раскрывают все секреты баз данных на нужном экземпляре – их размер, расположение файлов, их дизайн, включая столбцы, типы данных, значения по умолчанию, ключи и индексы.

                Если вы когда-нибудь пытались получить часть этой информации, с помощью GUI, я думаю вы будете приятно удивлены количеством той информации, которая, с помощью этих скриптов, получается мнгновенно.

                Как и с любыми скриптами, сначала проверьте их в тестовом окружении, прежде чем запускать в продакшене. Я бы рекомендовал вам погонять их на тестовых базах MS, таких как AdventureWorks или pubs.

                Ну, хватит слов, давайте я покажу скрипты!
                Читать дальше →
              • Практика формирования требований в ИТ проектах от А до Я. Часть 1. Вводная

                • Tutorial

                Пролог


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

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

                Теперь я хочу рассказать, как можно качественно сформировать сами требования, ведя Заказчика от его «хотелок», к его счастливому и плодотворному сожительству с программным продуктом, его мечты.
                Читать дальше →
                • +7
                • 17.5k
                • 5
              • 1 сентября – день знаний. Узнайте всё необходимое про нейронные сети

                  Друзья!

                  Мы поздравляем всех наших подписчиков с днем знаний и желаем, чтобы знаний было больше, их приобретение – интересным, а сами знания – более полезными.

                  Чтобы воплотить эти пожелания в жизнь, мы предлагаем вашему вниманию видеозапись курса «Однодневное погружение в нейронные сети», который мы провели летом в рамках закрытой школы DevCon. Этот курс позволит за несколько часов погрузиться в тему нейронных сетей и «с нуля» научиться использовать их для распознавания изображений, синтеза речи и других интересных задач. Для успешного освоения курса будут полезны умение программировать на Python и базовые знания математики. Материалы курса и заготовки для практических заданий доступны на GitHub.


                  Предуведомление: Данные видео представляют собой запись интенсива, рассчитанного в основном на аудиторию, присутствующую в зале. Поэтому видео несколько менее динамичные, чем в онлайн-курсах, и более длинные, не нарезанные на тематические фрагменты. Тем не менее, многие зрители сочли их для себя весьма полезными, поэтому мы и решили поделиться с широкой аудиторией. Надеюсь, возможность узнать что-то новое вызывает у вас такую же неподдельную радость, как у моей дочери на фотографии.
                  Читать дальше →
                • Как обеспечить производительность баз данных Microsoft SQL Server, размещаемых в облаке


                    Источник


                    Всем привет! Сегодня хотим поговорить об облачных базах данных, а точнее о тех проактивных и разовых мероприятиях, которые непосредственно обеспечивают их производительность.


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


                    Мы проделали большую работу, запуская и оптимизируя свою новую услугу облачной базы данных на собственной платформе Техносерв Cloud и, конечно же, столкнулись с рядом проблем и выработали свои подходы к их решению. Сейчас, когда сервис протестирован и работает, мы хотим поделиться с вами своим опытом – уверены, что прочитав этот материал, вы сможете избежать повторения чужих ошибок или откроете для себя что-то новое.

                    Читать дальше →
                  • Big Data от А до Я. Часть 1: Принципы работы с большими данными, парадигма MapReduce

                    • Tutorial

                    Привет, Хабр! Этой статьёй я открываю цикл материалов, посвящённых работе с большими данными. Зачем? Хочется сохранить накопленный опыт, свой и команды, так скажем, в энциклопедическом формате – наверняка кому-то он будет полезен.



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



                    Начинать надо от простого к сложному, поэтому первая статья – о принципах работы с большими данными и парадигме MapReduce.


                    Читать дальше →
                  • Просто и доступно о аналитических БД

                      Интерес к технологиям Big Data постоянно растет, а сам термин приобретает все большую популярность, многие люди хотят поговорить об этом, обсудить перспективы и возможности в этой области. Однако немногие конкретизируют — какие компании представлены на этом рынке, не описывают решения этих компаний, а также не рассказывают про методы, лежащие в основе решений Big Data. Область информационных технологий, относящихся к хранению и обработке данных, претерпела существенные изменения к настоящему моменту и представляет собой стремительно растущий рынок, а значит лакомый кусок для многих всемирно известных и небольших, только начинающих, компаний в этой сфере. У типичной крупной компании имеется несколько десятков оперативных баз данных, хранящих данные об оперативной деятельности компании (о сделках, запасах, остатках и т.п.), которые необходимы аналитикам для бизнес-анализа. Так как сложные, непредвиденные запросы могут привести к непредсказуемой нагрузке на оперативные базы данных, то запросы аналитиков к таким базам данных стараются ограничить. Кроме того, аналитикам необходимы исторические данные, а также данные из нескольких источников. Для того чтобы обеспечить аналитикам доступ к данным, компании создают и поддерживают так называемые хранилища данных, представляющие собой информационные корпоративные базы данных, предназначенные для подготовки отчетов, анализа бизнес-процессов и поддержки системы принятия решений. Хранилища данных служат также источником для оценки эффективности маркетинговых кампаний, прогнозированию, поиску новых возможных рынков и аудиторий для продажи, всевозможному анализу предыдущих периодов деятельности компаний. Как правило, хранилище данных – это предметно-ориентированная БД, строящаяся на временной основе, т.е. все изменения данных отслеживаются и регистрируются по времени, что позволяет проследить динамику событий. Также хранилища данных хранят долговременные данные — это означает, что они никогда не удаляются и не переписываются – вносятся только новые данные, это необходимо для изучения динамики изменения данных во времени. И последнее, хранилища данных, в большинстве случае, консолидированы с несколькими источниками, т.е. данные попадают в хранилище данных из нескольких источников, причем, прежде чем попасть в хранилище данных, эти данные проходят проверку на непротиворечивость и достоверность.
                      Читать дальше →
                    • SQL Server Integration Services (SSIS) для начинающих – часть 1

                      • Tutorial

                      Часть 2
                      Часть 3

                      SSIS – это инструмент, который позволяет в удобном виде реализовать интеграцию, т.е. реализовать процесс переноса данных из одного источника в другой. Этот процесс иногда называют ETL (от англ. Extract, Transform, Load – дословно «извлечение, преобразование, загрузка»).

                      Думаю, данный практический курс будет полезен тем, кто хочет изучить SSIS и не знает с чего начать. Здесь в режиме Step By Step мы начнем с самого начала, т.е. установки всего необходимого.

                      Дальше будет очень много картинок!
                      Читать дальше →
                      • +9
                      • 67.6k
                      • 6
                    • Классические и новые пособия по интернет-маркетингу, которые стоит увидеть

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



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