Как стать автором
Обновить

Все потоки

Сначала показывать
  • Новые
  • Лучшие
Порог рейтинга
  • Все
  • ≥0
  • ≥10
  • ≥25
  • ≥50
  • ≥100

Mongoose + Redis. Автоматизация кэширования за 5 минут

JavaScript *Node.JS *MongoDB *
Tutorial

Mongoose представляет специальную ODM-библиотеку (Object Data Modelling) для работы с MongoDB, которая позволяет сопоставлять объекты классов и документы коллекций из базы данных. 

Redis (Remote Dictionary Server)- это быстрое хранилище данных типа «ключ‑значение» в памяти, активно используемое в разработке с целью повышения производительности сервисов

В рамках данного гайда мы рассмотрим связку Mongoose + Redis и посмотрим, как обеспечить максимально удобное взаимодействие между ними

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Просмотры 118
Комментарии 0

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

Блог компании GlobalSign Информационная безопасность *Мессенджеры *Криптография *Смартфоны


Самый популярный мессенджер в мире реализовал функцию сквозного шифрования бэкапов. Она станет доступна всем пользователям iOS и Android «в ближайшие недели».

Это действительно большая победа для приватности и безопасности двух миллиардов пользователей WhatsApp. Незащищённые копии в облаке — огромная уязвимость WhatsApp и других мессенджеров, которые заявляют о сквозном шифровании коммуникаций.
Читать дальше →
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 378
Комментарии 0

Фреймворки для тестирования: личный опыт и новые методы

Тестирование IT-систем *Python *Тестирование веб-сервисов *Тестирование мобильных приложений *Тестирование игр *
Из песочницы

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

Читать далее
Всего голосов 3: ↑3 и ↓0 +3
Просмотры 204
Комментарии 0

Linux Page Cache для SRE: основные файловые операции и syscall'ы (часть 1)

Высокая производительность *Системное администрирование *Системное программирование *Разработка под Linux *DevOps *
Перевод

В этой серии постов я хотел бы поговорить о Linux Page Cache. Я считаю, что данные знания теори и инструментов жизненно необходимы и важны для каждого SRE. Общее понимание как работает Page Cache помогает и в рутинных повседневных задачах, и в экстренной отладке на продакшене. При этом Page Cache часто оставляют без внимания, а ведь его лучшее понимание. как правило, приводит к:

- более точному планированию емкости системы и лимитов сервисов и контейнеров;
- улучшенным навыкам отладки приложений, интенсивно использующих память и диски (СУБД и храанилища данных);
- созданию безопасных и предсказуемых сред выполнения специальных задач, связанных с памятью и/или вводом-выводом (например: сценарии резервного копирования и восстановления, rsyncоднострочники и т.д.).

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

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 270
Комментарии 1

О размерах

Блог компании OTUS Программирование *C++ *
Перевод

Если бы я составлял викторину на тему ”размеры типов данных в C++”, большинство разработчиков C++ не справились бы с ней (я уверен, что я бы тоже ее завалил), потому что размеры в C++ немного сложнее, чем кажутся.

Размер каждого базового типа данных не является фиксированным, они всегда зависят от реализации.

Читать далее
Всего голосов 5: ↑2 и ↓3 -1
Просмотры 1.1K
Комментарии 6

Наиболее частые исключения Java

Блог компании OTUS Программирование *Java *
Перевод

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

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Просмотры 713
Комментарии 1

Нужно больше ядер: новые чипы разных компаний с десятками и сотнями ядер для высокопроизводительных систем

Блог компании Selectel Высокая производительность *IT-инфраструктура *Компьютерное железо Процессоры

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

Сейчас мы решили собрать вместе информацию о чипах с десятками и сотнями ядер, чтобы эти данные были в одном месте. В подборке — только информация о чипах, которые либо уже выпущены, либо близки к началу производства. Есть и другие проекты, но некоторые из них пока под большим вопросом — о них известно лишь со слов глав компаний, никто их не видел, не трогал и не тестировал.
Читать дальше →
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 999
Комментарии 0

Добавления к истории телевизора

Читальный зал Производство и разработка электроники *Компьютерное железо История IT
image
(источник)

История телевизора отлично описана в недавней статье. Я только хочу сделать небольшие дополнения по своим детским воспоминаниям и по рассказам более старших товарищей. Надеюсь, что это будет интересно в плане истории техники. Во всяких воспоминаниях возможны неточности, поэтому, заранее приношу за них свои извинения.
Читать дальше →
Всего голосов 13: ↑13 и ↓0 +13
Просмотры 2.2K
Комментарии 49

Почему лучше НЕ использовать CSV с Apache Spark

Блог компании OTUS Data Engineering *
Перевод

Недавно я в очередной раз услышал:

“CSV — это популярный формат хранения данных, имеющий встроенную поддержку в Apache Spark…”

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

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 701
Комментарии 0

Математики решили проблему классификации тридцатилетней давности

Блог компании SkillFactory Занимательные задачки Математика *Читальный зал Научно-популярное
Перевод

Как сравнить «яблоки» в «апельсины» математически? Ответив на этот вопрос, исследователи показали, что классификация группы чисел, называемых «абелевыми группами без кручения» — это предельно сложная задача. Подробностями о доказательстве делимся к старту флагманского курса по Data Science.

Читать далее
Всего голосов 8: ↑6 и ↓2 +4
Просмотры 2.6K
Комментарии 6

10 самых популярных докладов за всю историю 404fest

Блог компании Фестиваль 404 Разработка веб-сайтов *Usability *Конференции Дизайн

Юбилейная подборка видео топовых докладов Фестиваля 404. Пока мы готовимся к эпичнейшей айти-тусовке эвер, самое время вспомнить доклады, которые больше всего цепляли публику. Располагайтесь поудобнее 🍿

Читать далее
Всего голосов 13: ↑11 и ↓2 +9
Просмотры 874
Комментарии 0

Облачный крестоносец: графический интерфейс Яндекс.Диска в GNU/Linux через Krusader

Настройка Linux *Графические оболочки *Облачные сервисы
Из песочницы

Яндекс.Диск в графике в GNU/Linux? Легко и просто.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 1.5K
Комментарии 0

Получаем посты из своего аккаунта Instagram посредством нового API Instagram Basic Display

PHP *Программирование *API *
Из песочницы
Для многих уже не секрет, что в конце 2019 года Instagram API изменилось. При этом старое API все еще поддерживается — отключение изначально планировалось в начале весны 2020, но позже было отложено на 29 июня 2020. После этой даты все приложения, использующие устаревшее API, перестанут работать. В этом небольшом туториале мы разберем как можно вывести на странице ленту из своего аккаунта с учетом текущих изменений. Материал рассчитан на новичков в подобного рода интеграциях.
Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 808
Комментарии 4

Катастрофическое путешествие «Сатоши» – первого в мире круизного крипто-лайнера

Управление сообществом *Читальный зал Криптовалюты
Перевод

В прошлом году трое обладателей криптовалюты купили круизное судно, назвали его «Сатоши» и попытались основать плавучую либертарианскую утопию. Но из этого ничего не вышло. Автор: Софи Элмхирст

Как-то вечером 7 декабря 2010 года на одной из лекций в Сан-Франциско бывший инженер Google, Пэтри Фридман, представлял слушателям наброски будущего, которое по его мнению могло бы ожидать человечество. Мероприятие было организовано фондом «Thiel Foundation», который четырьмя годами ранее основал владелец PayPal Питер Тиль для «защиты и поощрения свободы во всех ее проявлениях». Пэтри Фридман (внук Милтона Фридмана - одного из самых влиятельных экономистов прошлого века) рассказывал о полном изменении привычного всем стиля существования, заключавшегося в отказе от жизни на суше, всех представлений о природе человечества и строительстве нового города посреди океана.

Фридман назвал свою идею «seastading», то есть «освоение открытого моря». Автором этого слова был Уэйн Грамлих, инженер-программист – сооснователь Института «Seasteading» в 2008 году, открытию которого способствовал Питер Тиль суммой в 500 000 долларов. Фридман объяснял свое видение так: «почему в одной из самых развитых стран мира до сих пор используются государственные системы 1787 года? Проводя параллель - если бы мы водили машину 1787 года, то это была бы обыкновенная лошадь». Правительство, по его мнению, нуждалось в обновлении, аналогично тому, как смартфоны нуждаются в обновлении программного обеспечения. «Нам следует думать о правительстве как об отрасли, в которой страны являются фирмами, а граждане-клиентами!» – заявлял он. «Трудность в создании новой формы правления заключается в банальной нехватке места, вся земля на планете кому-то принадлежит, поэтому необходима новая граница. Этой границей может стать океан, и пусть множество наций расцветает в открытом море».

Читать далее
Всего голосов 9: ↑9 и ↓0 +9
Просмотры 4.1K
Комментарии 11

Serverless хранение файлов с AWS lambda

Python *Amazon Web Services *API *DevOps *
Tutorial

Добрый день, сегодня мы развернем serverless инфраструктуру на базе AWS lambda для загрузки изображений (или любых файлов) с хранением в приватном AWS S3 bucket. Использовать мы будем terraform скрипты, залитые и доступные в моем репозитории kompotkot/hatchery на GitHub.

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

В целях упрощения мы воспользуемся функционалом Bugout.dev Resources, в нашем примере выполняющий функцию удаленной базы данных для хранения записей о принадлежности файла к заметки.

Читать далее
Всего голосов 4: ↑3 и ↓1 +2
Просмотры 691
Комментарии 19

Security Week 38: кража данных из браузера с помощью Spectre v1

Блог компании «Лаборатория Касперского» Информационная безопасность *
10 сентября исследователи из США, Австралии и Израиля опубликовали научную работу, в которой показали реалистичную атаку Spook.js на пользователя при помощи уязвимости Spectre. В исследовании они задействовали уязвимость первого типа, обнаруженную в 2018 году. С тех пор Spectre несколько раз использовалась для демонстрационных атак, но все они ограничивались простой утечкой каких-либо данных (например, концепт leaky.page компании Google).



Spook.js, как и leaky.page, представляет собой атаку на браузер Google Chrome, но в отличие от PoC моделирует реальные сценарии: кражу пароля от сервиса Tumblr, хищение данных из расширения Lastpass. Хотя в Google Chrome именно для борьбы с уязвимостями Spectre была внедрена изоляция процессов для обработки отдельных веб-страниц, исследователи выяснили, что ее недостаточно. Открытые вкладки с одного домена группируются в общий процесс браузера, открывая возможность проведения атаки по модели Spectre v1 — путем тренировки системы предсказания ветвлений и последующего извлечения секретов из кэш-памяти процессора.
Читать дальше →
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 1.1K
Комментарии 6

О, игрушки! Давайте писать игрушки

Программирование *Разработка игр *Игры и игровые приставки

Интервью с разработчиками игр для компьютеров БК-0010 ASP Corp.

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

Читать далее
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 1.2K
Комментарии 1

30 сентября — MeetUp Backend Stories

Блог компании Альфа-Банк Java *Карьера в IT-индустрии Конференции

Привет!

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

Начало в 19:00 МСК, участие бесплатное, главное заранее зарегистрироваться, чтобы получить ссылку на трансляцию за час до её начала. Вести митап будет руководитель центра компетенций Java в Альфа-Банке — Павел Дерендяев.

А докладов будет три. Два от спикеров нашего банка, третий — от приглашённого эксперта из экосистемы недвижимости «Метр квадратный». Примерная продолжительность митапа — два часа.

Под катом — расписание и названия докладов.

Читать далее
Всего голосов 6: ↑4 и ↓2 +2
Просмотры 421
Комментарии 0

Кто такой техлид и как с ним обращаться

Блог компании OTUS Управление разработкой *

Всем привет! Сегодня в гостях у нас Олег Мельник — Technical Lead в компании Proxify, а также преподаватель в OTUS.

Поговорили с Олегом про такую роль у разработчиков как техлид.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 1.4K
Комментарии 0

Vulkan. Руководство разработчика. Загрузка данных через промежуточный буфер

Программирование *C++ *Работа с 3D-графикой *Разработка игр *CGI (графика) *
Перевод
Tutorial


Всем привет! Для тех, кто со мной не знаком, я переводчик в IT-компании CG Tribe в Ижевске. Здесь я делюсь переводами Vulkan Tutorial на русский язык.

Сегодняшняя публикация посвящена переводу статьи из раздела Vertex buffers, которая называется Staging buffer.

Читать дальше →
Всего голосов 2: ↑2 и ↓0 +2
Просмотры 608
Комментарии 1