• В поисках идеального файлового хранилища


      Ранее мы рассматривали прототип масштабируемой read-only файловой системы. Удалось показать, что, используя предложенную архитектуру, можно построить файловую систему любой емкости, с гарантированным временем доступа, соизмеримым с таковым для доступа к файлу в пределах одного физического диска.
      Далее постараемся разобраться, может ли подобный подход принести пользу при построении файловой системы общего назначения.
      Читать дальше →
      • +14
      • 22.2k
      • 4
    • Бесплатный Cryptic Disk 4 с поддержкой TrueCrypt

        Выпуск бесплатной версии Cryptic Disk Free — первый шаг навстречу пользователям.
        Второй шаг — встроенная поддержка контейнеров умирающего TrueCrypt.
        Ждём ещё один, последний шажок — открытые исходники.

        image

        Скачать бесплатную версию
        История версий
        Официальная новость
      • Жонглирование. Теория. Практика

          Настороженно отношусь к непрофильным топикам, но решил написать этот по следующим причинам:
          • У жонглирования есть своя теория — стройная и математически привлекательная!
          • Мы живем не только работой. Жонглирование — отличное развлечение и разминка после долгого сидения за компом.
          • В пятницу приятно немного расслабиться и почитать не очень серьезные статьи. К тому же, будет чем заняться на выходные, особенно если у вас не было определенных планов.

          Теория


          Утверждать, что жонглирование — это последовательность бросков, все равно, что сказать, что музыка — это просто последовательность нот. Нельзя назвать это неправдой, но любой, хоть немного знакомый с музыкальной теорией, возмутится последним определением — столь поверхностным и недалеким.
          Читать дальше →
        • Асинхронность 2: телепортация сквозь порталы



            Не прошло и года, как я добрался до продолжения статьи про асинхронность. Эта статья развивает идеи той, самой первой статьи про асинхронность [1]. В ней обсуждается достаточно сложная задача, на примере которой будет раскрыта мощь и гибкость использования сопрограмм в различных нетривиальных сценариях. В заключение будут рассмотрены две задачи на состояние гонки (race-condition), а также небольшой, но очень приятный бонус.
            Читать дальше →
          • DEF CON CTF 22 Final

              С 7 по 10 августа в Лас-Вегасе (США) прошла крупнейшая конференция по информационной безопасности — DEF CON. Мероприятие проходит уже 22 год. Мы принимали участие в финальном этапе DEF CON CTF. На самой конференции народу очень много. Сначала я слышал что-то про 6 тысяч человек, потом — про 15. Переходы между залами для докладов днем были похожи на переходы в московском метро. Но обо всем по порядку.


              Коридор за час до начала конференции
              Читать дальше →
            • Вероятностные модели: LDA, часть 2

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

                Читать дальше →
                • +23
                • 17.3k
                • 7
              • Как стать переговорщиком — интервью с Дмитрием Коткиным

                  Два наших недавних видео-ролика про переговоры набрали 40,000 просмотров за два дня.


                  Тема оказалось интересной. И это не удивительно, мы ведем переговоры каждый день. Увидев такой интерес к теме, мы уговорили Дмитрия Коткина, автора этих видео-роликов и по совместительству руководителя питерской школы переговорщиков ШиП, сделать интервью про то, как стать переговорщиком.

                  О чем поговорили:
                  • Как Дмитрий Коткин попал в тематику переговоров?
                  • Какие были переговорные неудачи?
                  • О работе в политике
                  • В чем специфика IT-специалистов и IT-компаний в плане переговоров
                  • 4 главных принципа любых торгов
                  • С чего начать, когда стартуешь проект с новым заказчиком
                  • Что делать, когда заказчик пропихивает новые требования
                  • Главная вещь в обучении переговорам
                  • 6 лучших книг по переговорам


                  Читать дальше →
                  • +18
                  • 25.7k
                  • 7
                • Как устроена инфраструктура обработки данных Sports.ru и Tribuna.com?

                    В первом посте об аналитической системе Sports.ru и Tribuna.com мы рассказали о том, как используем нашу инфраструктуру в повседневной жизни: наполняем контентом рекомендательную систему, наблюдаем за бизнес-метриками, ищем среди пользовательского контента бриллианты, находим ответы на вопросы “Как работает лучше?” и “Почему?”, нарезаем пользователей для почтовых рассылок и строим красивые отчеты о деятельности компании. Всю техническую часть повествования мы скромно спрятали за этой схемой:

                    Бирюзовым обозначены компоненты в нашей собственной ИТ-инфраструктуре, оранжевым - все то, что мы используем как внешний сервис

                    Читатели законно потребовали продолжить повествование со смешными котиками, а olegbunin пригласил рассказать о всем, что было скрыто, на РИТ++. Что ж, изложим некоторые технические детали – в продолжении веселого поста.
                    Читать дальше →
                    • +42
                    • 19.2k
                    • 3
                  • Едем в Кремниевую Долину — самостоятельный тур по знаковым местам Долины

                      Кремниевая Долина — это легенда. Те, кто никогда не был в Долине, возможно представляют себе знак «Silicon Valley», а там — сказка.

                      Что же на самом деле из себя представляет Долина? Куда стоит пойти? Что стоит посмотреть?

                      Итак:

                      image

                      Вот тут собраны основные места Долины, где стоит побывать.
                      Читать дальше →
                    • 3 года «Черной книге менеджера»: что изменилось в индустрии? Интервью со Славой Панкратовым

                        За те 6 лет, что я занимаюсь образовательными проектами по управлению людьми, довелось сделать интервью с десятками менеджеров и директоров. У нас были ТОР-менеджеры Лаборатории Касперского, Oracle, EPAM, Global Logic и других компаний — самые разные люди. И я понял, что до сих пор не сделал интервью с тем, с кем давно нужно было сделать — с моим коллегой SlavaPankratov.

                        А тут как раз и повод подоспел — три года с выхода “Черной книги менеджера” (18+, требуется регистрация), вероятно самой популярной и скандальной книги по менеджменту. Ровно три года назад Слава ее как раз и написал.

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

                        image

                        Читать дальше →
                      • Управленческие инструменты: 4-фазный алгоритм решения проблем с людьми или «А чего ты хочешь, если ты такой хреновый менеджер?»

                          На одном из давних тренингов мы отрабатывали кейс “Сотрудник не присылает вовремя отчеты”. Кейс абсолютно не привязанный к реальной жизни — ведь такого же не бывает, чтобы люди не присылали вовремя отчеты, верно?

                          И вот одному менеджеру не досталось пары, и я встал играть роль сотрудника. До этого всем пар хватало, поэтому к роли сотрудника я был не очень готов…

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

                          Цель кейса — донести до сотрудника обратную связь, что отчеты надо присылать вовремя. Егор начал сразу с места в карьер:

                          — Александр, как же так, почему Вы не присылаете мне отчеты?

                          Я стоял, думал-думал, чего сказать. И потом ляпнул первое, что пришло в голову:

                          — Егор, а чего ты хочешь, если ты такой хреновый менеджер?!

                          Каюсь, я тогда был не в курсе про тяжелые манипуляции. Зато их влияние смог ощутить на себе в полной мере. Егор покраснел, потом пошел пятнами:

                          — Что значит “хреновый менеджер”?!!! Это недопустимо — так разговаривать с руководством…

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

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

                            На понимание факта, что юнит тесты это не только инструмент борьбы с регрессией в коде, но также и отличная инвестиция в качественную архитектуру меня натолкнул топик, посвященный модульному тестированию в одном англоязычном .net сообществе. Автора топика звали Джонни и он описывал свой первый (и последний) день в компании, занимавшейся разработкой программного обеспечения для предприятий финансового сектора. Джонни претендовал на вакансию разработчика модульных тестов и был расстроен низким качеством кода, который ему вменялось тестировать. Он сравнил увиденный им код со свалкой, набитой объектами, бесконтрольно создающими друг друга в любых непригодных для этого местах. Также он писал, что ему так и не удалось найти в репозитории абстрактные типы данных, код состоял исключительно из туго переплетенных в один клубок реализаций, перекрестно вызывающих друг друга. Джонни, понимая всю бесполезность применения практики модульного тестирования в этой компании, обрисовал ситуацию нанявшему его менеджеру и, отказавшись от дальнейшего сотрудничества, дал напоследок ценный, с его точки зрения, совет. Он посоветовал отправить команду разработчиков на курсы, где бы их смогли научить правильно инстанцировать объекты и пользоваться преимуществами абстрактных типов данных. Я не знаю, последовал ли менеджер совету (думаю, что нет), но если вам интересно, что имел в виду Джонни и как использование практик модульного тестирования может повлиять на качество вашей архитектуры, добро пожаловать под кат, будем разбираться вместе.
                            Читать дальше →
                          • Книга «How Google Tests Software» теперь на русском!

                              Полтора года назад, когда вышла книга «How Google Tests Software», я загорелась перевести ее на русский язык. Я давно восхищаюсь Уиттакером, я переводила его статьи, слушала мастер-классы и считаю его самым крутым чуваком в тестировании. Тогда я еще работала руководителем отдела тестирования в «Иннове», и компания поддержала мой проект.

                              С тех пор многое поменялось: я перестала заниматься тестированием, выпускала приложения для iOS, сейчас работаю продакт-менеджером большого веб-проекта. Уиттакер же еще в 2012 году ушел из Google в Microsoft, громко хлопнув дверью.

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

                              И вот, в январе издательство «Питер» выпустило книгу на русском языке с нашим переводом и дизайном:

                              Читать дальше →
                            • Что такое теория и причем тут научный метод

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


                                Теория (греч. θεωρία — рассмотрение, исследование) — учение, система идей или принципов (вики). Именно в таком, самом широком смысле в обычно речи мы употребляем слово «теория» в каждодневной речи. Например, у меня есть теория почему машина не заводится — некоторый набор идей и выводов, объясняющий поломку. Однако, в научном мире теория имеет достаточно строгое и формальное значение и обязательно удовлетворяет определенному набору важных критериев.

                                Под катом много картинок и примеров, и совсем нет формул.

                                Читать дальше →
                              • Слово малое об обратимых вычислениях

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

                                Дальнейшее изложение будет проводиться с использованием многочисленных примеров на языке программирования Haskell. Дело в том, что по моему сугубому мнению, функциональное программирование находится намного ближе к модели квантовых вычислений, чем любой иной тип. Обосновывать эту точку зрения я сейчас не буду. Но суть в ином — для постижения модели квантовых вычислений нужен намного более суровый сдвиг парадигмы, чем, к примеру, такой сдвиг от структурного программирования к объектно-ориентированному и тем более к функциональному. Здесь нет ни слова о том, что кто-то из программистов находится выше или ниже, но лишь о том, что освоение новой модели — это реальный переворот в мозгах и способе алгоритмического мышления.

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

                                Читать дальше →
                              • Как математика помогает Яндексу зарабатывать?

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



                                  Конспект лекции
                                • Неподтвержденная транзакция, или Возвращаем криптовалюту из небытия

                                    Волею судеб довелось мне иметь дело с криптовалютами. Не то что бы плотно работаю с ними, но иногда то отправлю монетки, то получу. Скажем так, понемногу прощупываю новую сферу изнутри.

                                    И вот однажды беда приключилась. Отослал я криптомонетки, а до получателя они не дошли. Собственно, пост о том, как средства возвращались. Ну и размышления и советы по сложившейся ситуации на десерт. Сразу отмечу, что нижесказанное применимо не к какой-то конкретной валюте, а к большинству форков (если не ко всем).
                                    Читать дальше →
                                  • Масштабировать просто. Часть третья — стратегии

                                      В предыдущих частях (тут и тут) мы говорили об основных архитектурных принципах построения масштабируемых порталов. Сегодня продолжим разговор об оптимизации правильно построенного портала. Итак, стратегии масштабирования.
                                      Читать дальше →
                                      • +26
                                      • 12.6k
                                      • 3