Pull to refresh
0
@AndriyPread⁠-⁠only

User

Send message

Cassandra для хранения метаданных: успехи и провалы

Reading time31 min
Reach and readers23K
Каким требованиям должно удовлетворять хранилище метаданных для облачного сервиса? Да не самого обычного, а для enterprise с поддержкой географически распределенных датацентров и Active-Active. Очевидно, система должна хорошо масштабироваться, быть отказоустойчивой и хотелось бы, чтобы было возможно реализовать настраиваемую консистентность операций.

Под все эти требования подходит только Cassandra, а ничто другое не подходит. Надо заметить, Cassandra действительно классная, но работа с ней напоминает американские горки.


В докладе на Highload++ 2017 Андрей Смирнов (smira) решил, что о хорошем говорить неинтересно, зато подробно рассказал, про каждую проблему, с которой пришлось столкнуться: про потерю и порчу данных, про зомби и потерю производительности. Эти истории и вправду напоминают катание на горках, но на все проблемы находится решение, за которым добро пожаловать под кат.

О спикере: Андрей Смирнов работает в компании Virtustream, реализующей облачное хранилище для enterprise. Идея состоит в том, что условно Amazon делает облако для всех, а Virtustream делает специфические вещи, которые необходимы большой компании.

Книга «Внутреннее устройство Windows. 7-е изд»

Reading time8 min
Reach and readers38K
image С момента выхода предыдущего издания этой книги операционная система Windows прошла длинный путь обновлений и концептуальных изменений, результатом которых стала новая стабильная архитектура ядра Windows 10.

Книга «Внутреннее устройство Windows» создана для профессионалов, желающих разобраться во внутренней жизни основных компонентов Windows 10. Опираясь на эту информацию, разработчикам будет проще находить правильные проектные решения, создавая приложения для платформы Windows, и решать сложные проблемы, связанные с их эксплуатацией. Системные администраторы, зная, что находится у операционной системы «под капотом», смогут разобраться с поведением системы и быстрее решать задачи повышения производительности и диагностики сбоев. Специалистам по безопасности пригодится информация о борьбе с уязвимостями операционной системы.
Читать дальше →

Самые маленькие Linux-компьютеры

Reading time3 min
Reach and readers45K


Несколько дней назад активисты движения за свободное аппаратное обеспечение выпустили вторую версию крошечного Linux-компьютера VoCore2 размером 25,6×25,6×3,0 мм, то есть с крупную монету (почти вписались по площади в квадратный дюйм). В спичечный коробок поместится примерно восемь таких компьютеров.

Это потомок того самого VoCore, на который собирали деньги через Indiegogo. Всё-таки собрали, и проект живёт. Это абсолютно открытый компьютер, который кто угодно может собрать из указанных комплектующих (или купить плату в сборе за $17,99). Компьютер работает на прошивке OpenWrt/LEDE, то есть идеально подходит на роль портативного маршрутизатора.
Читать дальше →

Мнимые проблемы — причина плохого софта

Reading time8 min
Reach and readers19K

То, что их интересно решать, не означает, что они кому-то нужны




«Группа людей проводит мозговой штурм над ноутбуком и листом бумаги», фото Стефана Стефанчика с Unspalsh

Есть много факторов, которые приводят к созданию плохого ПО: выбор инструментов, общение в команде, личная незаинтересованность разработчиков в успехе, методология тестирования. Мне кажется, у всего этого есть главная первопричина: это воображаемые проблемы.

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

Два пробела лучше, чем один? Отзыв на новое исследование

Reading time12 min
Reach and readers17K
Несколько человек попросили меня прокомментировать новое научное исследование под названием «Два пробела лучше, чем один? Воздействие интервалов после точек и запятых в процессе чтения», проведённое Ребеккой Джонсон, Бекки Буй и Линдсей Шмитт.

С очевидным противоречием правилу Беттериджа исследование утверждает, что два пробела после точки упрощают чтение. Оно также противоречит моему давнему совету использовать только один пробел между предложениями.

Поскольку исследование стоит $39,95 за PDF, я уверен, что скептики из социальных сетей поспешили объявить победу двух пробелов, не купив и не прочитав саму работу. Но я сделал и то, и другое.

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

Действительно, авторы обнаружили, что два пробела после точки дают «небольшое», но «статистически… значимое» улучшение скорости чтения — примерно на 3% — но любопытно, что только у тех читателей, которые уже сами используют два пробела после точки при печати. Для обычных «однопробельников» никакого улучшения не замечено.
Читать дальше →

Твой софт никому не нужен. Или почему разработка ПО требует свежего подхода

Reading time3 min
Reach and readers33K
image

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

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

Читать дальше →

Crashplan закрывает сервис для частных лиц

Reading time1 min
Reach and readers10K
crashplan Прислали уведомление, что производят закрытие Personal плана в течении 14 месяцев. Добавили 60 дней к текущей подписке и предложили переход на Бизнес план или Carbonite сервис.
Бизнес план примерно в два раза дороже и отсутвует вариант бакап на свой сервер.
Альтернативы:
Читать дальше →

Основы Angular: HttpClient

Reading time6 min
Reach and readers79K

Самый распространенный способ получить данные из web служб — это через Http. И в этой статье мы посмотрим как это можно сделать Http-запрос в Angular 4.3 через новый HttpClient.


Начиная с версии Angular 4.3 появился новый HttpClient. В этой статье описывается только новый клиент.

Читать дальше →

Базовая фортификация Linux: выбираем ежи и учимся рыть траншеи

Reading time10 min
Reach and readers28K


Несмотря на то, что Linux по праву считается более защищенной системой, чем MS Windows, самого по себе этого факта мало.


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

Читать дальше →

MVC на чистом JavaScript

Reading time13 min
Reach and readers84K
Шаблоны проектирования часто встраивают в популярные фреймворки. Например, шаблон MVC (Model-View-Controller, Модель-Представление-Контроллер) можно встретить буквально повсюду. В JavaScript трудно отделить фреймворк от реализованного в нём шаблона проектирования, причём, часто авторы фреймворков интерпретируют MVC по-своему и навязывают программистам своё видение вопроса.



То, как именно будет выглядеть конкретная реализация MVC, полностью зависит от фреймворка. В результате мы получаем массу разных реализаций, что сбивает с толку и ведёт к беспорядку. Особенно это заметно, когда в одном проекте используется несколько фреймворков. Эта ситуация заставила меня задаться вопросом: «А есть ли способ лучше?».
Читать дальше →

Правда ли, что люди пишут безумный код с перекрывающимися побочными эффектами, сохраняя при этом невозмутимость?

Reading time3 min
Reach and readers37K
Вашему вниманию предлагается перевод статьи Рэймонда Чена из блога The Old New Thing, посвященной проблемам кода, полагающегося на порядок вычисления выражений — и всем тем, кто пишет foo(i++, a[i]);
Порядок вычисления выражений определяется конкретной реализацией, за исключением случаев, когда язык гарантирует определенный порядок вычислений. Если же в дополнение к результату вычисление выражения вызывает изменения в среде выполнения, то говорят, что данное выражение имеет побочные эффекты.
MSDN
В нашей внутренней рассылке про C# регулярно возникает дискуссионный вопрос, который касается корректной интерпретации подобных конструкций:

a -= a *= a;
p[x++] = ++x;

В ответ я спрашиваю:
Да кто вообще пишет такой код с невозмутимым видом? Одно дело, когда такое пишешь, пытаясь победить в «Международном Конкурсе запутывания кода на Си» (IOCCC, International Obfuscated C Code Contest), или если хочешь написать головоломку — но в обоих случаях понимаешь, что ты занимаешься чем-то нестандартным. Что, реально есть кто-то, кто пишет a -= a *= a и p[x++] = ++x; и думает про себя «Чёрт возьми, да я пишу действительно классный код!»
Читать дальше →

Почему мы выбрали TypeScript: история разработчиков из Reddit

Reading time7 min
Reach and readers18K
image Примерно полгода назад CEO Reddit Стив сообщил о том, что мы перепроектируем сайт. Главный вопрос тут — как именно мы этим занимаемся. В наше время фронтенд-разработка очень сильно отличается от того, что было во времена, когда Reddit появился на свет. Сейчас имеется огромный выбор вариантов для каждой подсистемы веб-приложения. Как рендерить страницы? Как стилизовать контент? Как хранить и обслуживать картинки и видеофайлы? Как писать код? В современных условиях ни на один из этих вопросов нет готового ответа.

Одним из первых подобных вопросов, на который нам необходимо было найти ответ, звучал так: «Какой язык выбрать?».
Читать дальше →

Оптическое выравнивание и пользовательские интерфейсы

Reading time16 min
Reach and readers44K


Привет, меня зовут Иван Греков, я работаю во фронтенд-команде Badoo, занимаюсь вёрсткой пользовательских интерфейсов на проектах компании.


В работе с макетами интерфейсов я использую графические редакторы, такие как Adobe Photoshop и Sketch. В них все слои по умолчанию представляют собой прямоугольные контейнеры. Когда мы выравниванием один слой по центру относительно другого, то для выравнивания используются центры прямоугольных контейнеров. Такой подход крайне неудобен при работе с иконками, поскольку выравниваемые фигуры могут сильно отличаться от прямоугольных контейнеров. И чем больше несимметричная фигура отличается по площади и по точкам координат от прямоугольника, в границы которого она вписана, тем заметнее разница между центрами фигуры и её контейнера. Это приводит к дисбалансу композиции в интерфейсных иконках.


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

Читать дальше →

Повседневный C++: изолируем API в стиле C

Reading time8 min
Reach and readers26K

Мы все ценим C++ за лёгкую интеграцию с кодом на C. И всё же, это два разных языка.


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

Читать дальше →

Введение в криптографию и шифрование, часть первая. Лекция в Яндексе

Reading time20 min
Reach and readers292K
Чтобы сходу понимать материалы об инфраструктуре открытых ключей, сетевой безопасности и HTTPS, нужно знать основы криптографической теории. Один из самых быстрых способов изучить их — посмотреть или прочитать лекцию Владимира ivlad Иванова. Владимир — известный специалист по сетям и системам их защиты. Он долгое время работал в Яндексе, был одним из руководителей нашего департамента эксплуатации.


Мы впервые публикуем эту лекцию вместе с расшифровкой. Начнём с первой части. Под катом вы найдёте текст и часть слайдов.

Типографика: процесс выбора шрифта

Reading time5 min
Reach and readers26K
Один из самых ценных навыков, которые может освоить дизайнер — это умение подбирать шрифты. Это объясняется тем, что текст является одним из основных способов коммуникации дизайнера с пользователем. Типографика имеет решающее значение для дизайна.


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

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

Библиотека компонентов как инструмент поддержания целостности вебсайта

Reading time3 min
Reach and readers14K

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


Как следствие проблемы: на создание новых страниц тратится неоправданно много времени. Теряется целостность сайта. Растёт файл стилей и код.

Читать дальше →

Я провел 3 месяца, пытаясь устроиться на работу после лагеря программирования, и вот чему я научился

Reading time6 min
Reach and readers98K
image

Меньше всего говорят о том, что будет после того как ты окончишь лагерь по программированию — когда ты пытаешься занять позицию разработчика с шестизначным окладом.

image
< 3% заявлений становились предложениями

Я окончил Hack Reactor в июле 2016, и мне потребовалось почти 3 месяца, прежде чем я принял предложение от Radius Intelligence. Я подавал заявления в 291 компанию, прошел 32 собеседования по телефону и 16 обычных, а также выполнил 13 задач по программированию, 11 из них — в офисах. И получил в итоге 8 предложений. Мне предлагали 60-125 тысяч долларов в компаниях США. В общем 2.8% заявок обернулись для меня выгодными предложениями.

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

FreeNAS 10 — новое лицо старого хранилища

Reading time4 min
Reach and readers101K
Доброго времени суток, Хабр! Чуть больше года назад была анонсирована ALPHA версия популярной Open Source операционной системы для хранения данных FreeNAS.

На сегодняшний день вышеупомянутый продукт коллективного труда дорос аж до BETA2 и уже неспешно-стремительно движется к своему релизу. Если вам интересно, что же там «напридумывали» разработчики — добро пожаловать под кат.


Читать дальше →
1

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Registered
Activity