Меня зовут Андрей Комягин, я СТО компании STM Labs. Мы занимаемся разработкой очень больших распределённых высоконагруженных систем для различных отраслей и в своей работе широко используем open-source решения, в том числе СУБД Redis. Недавно я подробно рассказывал об этой системе на конференции Saint HighLoad++, а теперь с удовольствием поделюсь основной информацией с читателями Хабра. Итак, поехали.
Пользователь
Почти все, что вы хотели бы знать про Docker
В этой статье мы расскажем про базовые техники работы с Docker, а также погрузим читателя в основы докеризации приложений.
Предполагается, что читатель что-то слышал про Docker и хотел бы начать знакомство с технологией. Мы постараемся упростить этот процесс.
«Космический сбой» во Вселенной заставляет астрономов переосмыслить теорию относительности Эйнштейна
За последние 100 лет бесчисленные исследования доказали, что величайшая теория Альберта Эйнштейна — его общая теория относительности — практически пуленепробиваема и способна на всё: от предсказания поведения чёрных дыр до управления GPS-технологией.
Однако по мере того, как учёные вооружаются все более мощными и сложными технологиями, способными заглянуть в космос в беспрецедентных деталях, они наблюдают явления, которые не могут объяснить с помощью теории Эйнштейна.
Общая теория относительности Эйнштейна гласит, что искривление пространства-времени вызывает гравитацию. Но при увеличении масштабов, например, скоплений галактик, протянувшихся на миллиарды световых лет, законы теории гравитации меняются.
Как обхитрить мозг и заставить его полюбить сложные задачи [Дофаминовый детокс]
Как часто вы ловили себя на мысли «Вот, блин, весь выходной прозалипал в бесконечных лентах, а ничего полезного так и не сделал»? Не спешите себя винить! Скорее всего, все дело в вашем мозге, который привык баловаться дофамином. Увы, с этой проблемой сталкиваются большинство современных людей (и мы в beeline cloud — не исключение). Хорошая новость: ее можно решить!
Почему некоторых людей гораздо сильнее мотивируют именно сложные задачи? И есть ли способ превратить трудные дела в легкие?
Скорее всего, вы можете играть в видеоигры хоть каждый день. Или, например, листать социальные сети. Не сомневаюсь также, что вы без труда сможете просидеть целый день перед экраном монитора.
А теперь попробуйте целый час посвятить учебе... Звучит очень утомительно. А что, если вместо этого часок-другой поработать над своим сайд-проектом? Хм. Всё равно скукотища.
На гребне гравитационной волны: космический детектор LISA
Один парень изучал физику и пытался опровергнуть выводы Теории Относительности. Он даже пытался опубликовать свои изыскания в престижном журнале Physical Review Letters. Его заслуженно отбрили рецензенты и развернул редактор журнала - статья была ошибочной. И хорошо, потому что было бы, мягко говоря, неловко. Этим парнем был Альберт Эйнштейн, а ошибался он в своих выводах о гравитационных волнах.
Через 10 лет будет запущен новый детектор гравитационных волн — в космосе! Самое время о нем поговорить подробнее.
Основы обработки асинхронных событий с помощью Rx в C#
Привет, Хабр!
Reactive Extensions, известные также как Rx.NET, представляют собой библиотеку для .NET, предназначенную для композиции асинхронных и событийно-ориентированных программ с помощью наблюдаемых последовательностей и операторов запросов в стиле LINQ.
Основная фича Rx заключается в управлении асинхронными данными так, как если бы они были синхронными коллекциями.
В этой статье мы рассмотрми, как работать с Rx в C#.
Сказка про For vs Foreach
Ходят слухи, что foreach быстрее for. А ещё ходят слухи, что for быстрее foreach. Пора разобраться, что быстрее!
Почему в Grand Theft Auto: San Andreas самолёты падают с неба
Оббе Вермей [Obbe Vermeij] — один из программистов GTA 3, Vice City и San Andreas. Оббе ушёл из Rockstar после GTA IV и давно занимается другими проектами. В последние месяцы он начал вести блог insiderockstarnorth.blogspot.com, но в ноябре прошлого года закрыл его, поскольку бывшим коллегам мемуары не понравились. Тем не менее в личном микроблоге Оббе иногда делится байками про разработку игр из своей карьеры.
На этот раз Вермей рассказал, почему так часто падают самолёты в San Andreas.
В момент смерти с мозгом человека происходит что-то странное
Пациентке #1 было 24 года, и она была беременна третьим ребёнком, когда её отключили от системы жизнеобеспечения. Это случилось в 2014-м. За несколько лет до этого у неё было диагностировано заболевание, вызывающее нерегулярное сердцебиение, а во время двух предыдущих беременностей она страдала от припадков и обмороков. На четвёртой неделе третьей беременности она упала на пол в своём доме. Её мать, которая была с ней, позвонила в службу 911. К моменту прибытия скорой помощи пациентка №1 находилась без сознания более 10 минут. Парамедики обнаружили, что её сердце остановилось.
После того как пациентку отвезли в больницу, где ей не смогли оказать помощь, её доставили в отделение неотложной помощи Мичиганского университета. Там медицинскому персоналу пришлось трижды применить дефибриллятор, прежде чем удалось запустить сердце. Пациентку подключили к аппарату внешней вентиляции лёгких и кардиостимулятору и перевели в отделение нейроинтенсивной терапии, где врачи следили за её мозговой активностью. Она не реагировала на внешние раздражители, и у неё был сильный отёк мозга. После того как она пролежала в глубокой коме три дня, её семья решила, что лучше отключить её от системы жизнеобеспечения. Именно в этот момент — после того как ей отключили кислород и медсёстры вытащили дыхательную трубку из её горла — пациентка №1 стала одним из самых интригующих научных объектов в новейшей истории.
Дружба, благодаря которой Google вырос до огромных размеров
Однажды в марте 2000 года шесть лучших инженеров Google собрались в импровизированном конференц-зале. Произошло ЧП: с октября 1999 года остановились краулеры. Хотя пользователям ещё выдавали поисковые результаты, но они устарели на пять месяцев. На карту было поставлено больше, чем предполагали инженеры. В данный момент Ларри Пейдж и Сергей Брин вели переговоры о поставке поиска Google на крупнейший в интернете портал Yahoo и обещали увеличить поисковый индекс в десять раз, чтобы идти в ногу со Всемирной паутиной, которая за предыдущий год удвоилась в размере. Если краулеры не починят, google.com застрянет в прошлом, сделка с Yahoo может провалиться, а компания рискует сжечь полученные инвестиции и кануть в небытие.
Самое понятное объяснение Специальной теории относительности
Специальная теория относительности - удивительная теория, которая опровергла многие представления о мире, в которых человечество не сомневалось всю историю своего существования.
Многие слышали про волшебства вроде замедления времени, сокращения длины, относительности одновременности, парадокса близнецов и т.д., но мало кто понимает почему так происходит.
В этой статье я хочу наглядно показать, что все это проще, чем кажется на первый взгляд.
Для иллюстраций я написал интерактивный визуализатор СТО, работающий в браузере. Ссылка на него и исходники проекта в конце статьи.
Динамические методы в .NET
На сегодняшний день в.NET существует несколько видов кодогенерации: новомодные Source Generators, компилируемые Expression Trees, динамические сборки и динамические методы. Каждый способ имеет свои области применения, плюсы и минусы.
В этой статье я хочу рассказать про динамические методы. Мы разберёмся как создавать их, как работает стековая машина и рассмотрим некоторые базовые операции Common Intermediate Language: работу с константами, математические и битовые операции, а также работу с аргументами методов и локальными переменными.
Сразу хочу сказать, что статья не содержит какого‑то хардкора и написана в большей степени для новичков. Если к теме будет интерес, постараюсь в следующей статье рассмотреть более сложные примеры (эта и так получилась достаточно длинной).
Как работает хэширование
Если вы программист, то пользуетесь хэш-функциями каждый день. Они применяются в базах данных для оптимизации запросов, в структурах данных для ускорения работы, в безопасности для защиты данных. Почти каждое ваше взаимодействие с технологией тем или иным образом включает в себя хэш-функции.
Хэш-функции фундаментальны и используются повсюду.
Но что же такое хэш-функции и как они работают?
В этом посте я собираюсь развенчать мифы вокруг этих функций. Мы начнём с простой хэш-функции, узнаем, как проверить, хороша ли хэш-функция, а затем рассмотрим реальный пример применения хэш-функции: хэш-таблицу.
15 игр, которые прокачивают логику, алгоритмы, ассемблер и силу земли
Есть «Super Mario», признанная классика видео игр. Есть «Doom», который запускают на чайниках и тестах на беременность. Есть супер-популярные по статистике twitch.tv игры («League of Legends», «GTA V», «Fortnite», «Apex Legends») которые стримят пятая часть всех стриммеров.
А есть игры, на которые очень мало обзоров, но они супер крутые — игры про алгоритмы. Игры, в которых можно кодить на ретро-компьютере; игры, которые надо взламывать; игры, где можно программировать контроллеры или поведение персонажей; игры, где можно создавать свою игру внутри игры.
Под катом подборка классных игр про алгоритмы за последние 10 лет. Если что-то упустила — буду рада дополнениям.
Еще я создала канал в Telegram: GameDEVils, буду делиться там клевыми материалами (про геймдизайн, разработку и историю игр).
7 платформ для подготовки к техническому интервью на английском языке
Компания Geekfactor cовместно с Getmentor.dev проводит программу подготовки к трудоустройству в зарубежные стартапы (бесплатно помогаем подготовиться к интервью и показываем резюме классным компаниям) — почитать о ней подробней и зарегистрироваться можно тут.
Требования к соискателям на должности разработчиков ПО быстро меняются. Если раньше достаточно было разбираться в структурах данных и основных алгоритмах, чтобы успешно пройти собеседование и получить работу, то сегодня компании ищут кандидатов с практическим опытом и навыками.
Именно поэтому многие интервьюеры и не задают вопросы о структуре данных и алгоритмах. Их интересует умение работать с разными технологиями и взаимодействовать с другими.
Чтобы подготовиться к поиску работы, соискателям будет полезно попрактиковаться в написании кода и в прохождении тренировочных собеседований. Сегодня доступно множество книг и ресурсов, например Cracking The Coding Interview и популярные сайты с заданиями по программированию.
Ниже я представляю список лучших, на мой взгляд, платформ по подготовке разработчиков к собеседованиям.
Разработка системы тестирования SQL-запросов. Часть 2
Несколько лет назад, на проекте по разработке внутреннего портала для учебных заведений, занимающем практически весь датский рынок, я разработал прототип системы тестирования слоя данных, внедрил его в процесс разработки и обучил использованию две проектных команды. В данном посте я подведу итоги и расскажу об основных изменениях.
Протокол безопасности транспортного уровня (TLS), версия 1.2 (RFC 5246) (Часть 3.1)
В статье приводится продолжение перевода на русский язык стандарта IETF - RFC 5246, описывающего работу протокола безопасности транспортного уровня TLS версии 1.2. Данная часть перевода охватывает первую половину описания работы протокола рукопожатия TLS 1.2.
Дорожная карта по изучению C++
Привет!
Представляем вашему вниманию дорожную карту для изучения языка программирования C++. Идея дорожной карты возникла после проведения десятков собеседований молодых разработчиков, которые претендовали на роль Junior Developer C++, но обладали довольно слабой подготовкой по различным причинам.
Заинтересовавшихся приглашаем к прочтению статьи, а также ознакомиться с дорожной картой.
Анти–Тьюринг
Существующие распространенные парадигмы программирования, несмотря на прогресс в области разработки средств программирования, интуитивно недоступны специалистам предметных областей, охваченных автоматизацией, особенно в области управления технологическими процессами и механизмами. Налицо усиление проблемы семантического разрыва. Обосновывается и описывается альтернативная концепция распределенного программирования на основе потоков данных между узлами коллектива вычислителей. В предлагаемой парадигме можно описывать алгоритмы на уровне понятий предметной области и успешно решать задачи распределенного программирования.
Информация
- В рейтинге
- Не участвует
- Зарегистрирован
- Активность