Как стать автором
Обновить
357
1.1
Alex Efros @powerman

Software Architect, Team Lead, Lead Go Developer

Отправить сообщение

Map/Reduce своими руками — Apache CouchDb

Время на прочтение5 мин
Количество просмотров6.2K
Логотип CouchDb Предупреждаю — мой взгляд совершенно не претендует на какую бы то ни было объективность. Но реляционные базы данных меня никогда, мягко говоря, не вдохновляли.

Нет, я вполне понимаю когда у вас действительно приложение ориентировано на обработку и хранение больших массивов данных. Ну, ERP-системы, всякие хранилища, статистика там, «в прошлом месяце продали сто тыщ карандашей, в этом двести».

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

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

Основы мастерства

Время на прочтение6 мин
Количество просмотров1.7K

Боритесь со сложностью


Как известно, мозг человека может одновременно рассматривать 7±2 элемента. Поэтому очень важно стремиться к снижению сложности ПО. Вот некоторые конкретные рекомендации:
  • Разделите систему на подсистемы на уровне архитектуры, чтобы концентрироваться в каждый конкретный момент времени на меньшей части системы.
  • Тщательно определяйте интерфейсы классов, чтобы можно было игнорировать
    внутреннее устройство классов.
  • Поддерживайте абстракцию, формируемую интерфейсом класса, чтобы не
    запоминать ненужных деталей.
  • Избегайте глобальных данных, потому что их использование значительно увеличивает процент кода, который нужно удерживать в уме в любой момент
    времени.
  • Избегайте глубоких иерархий наследования, потому что они предъявляют
    высокие требования к интеллекту.

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

Компиляция Cheat Sheet

Время на прочтение1 мин
Количество просмотров2.1K
Изначально искал маленькую ёмкую шпаргалку по FreeBSD, которую в итоге и нашёл, но через пару минут перед моими глазами предстало

НЕЧТО

БОЛЬШЕЕ И

ВСЕОБЪЕМЛЮЩЕЕ


P.S. pdf inside
P.P.S. и не только по FreeBSD…

Когда деревья были большими или о том, с чего все начинали

Время на прочтение4 мин
Количество просмотров2K
Мне часто задают вопрос о том, с чего начать молодому frontend-разработчику? Дабы облегчить свою участь и не перечислять каждый раз множество ресурсов сети, печатных и зданий и общих тезисов, я и написал этот материал.

В первую очередь следует знать, что кроссбраузерная верстка сродни магии. Объясняется это все банальной вещью, которую я озвучу так: ”Все мы ненавидим Internet Explorer!” Таким образом, 90% всей магии сводится к тому, чтобы заставить правильно сверстанный макет корректно отображаться в браузере Internet Explorer всех актуальных версий.

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

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

Забыть о target

Время на прочтение1 мин
Количество просмотров2.5K
Гениальный в своей простоте способ заставить ссылку открыться в новом табе/окне, не используя нежелательный по рекомендации W3C в XHTML, атрибут target:

<a onclick=«return !window.open(this.href)» hrеf=«www.google.com»>

Преимущества этого способа перед обычным open.window(url) в том, что если javascript отключен, то ссылка все равно сработает. Кроме того, ссылка будет проиндексирована поисковиками.

Проверено в FF2, IE6/7, Opera 9.20, Safari/Win.

<update>

Поведение браузеров при нажатии Ctrl+Click / Shift+Click:


В IE6 — в обоих случаях новое окно.
В IE7 — в обоих случаях новый таб (подозреваю что зависит от настроек браузера)
В FF2 — неадекват. ctrl+click открывает две вкладки, shift+click вкладку и окно
Opera — в обоих случаях новый таб
Safari/Win — в обоих случаях новое окно

При нажатии колесиком мышки ссылка срабатывает как обычно везде, кроме IE6, естественно.
</update>

В общем и целом, не стоит принуждать посетителей к чему-либо, предпочтительнее дать посетителю знать какого рода сама ссылка (файл [включая тип], внешняя/окно) с помощью иконок, которые можно легко прикрутить с помощью CSS, на пример вот так, тем самым давая ему возможность выбрать самому, где ее открыть.

Изучаем наличие layout

Время на прочтение1 мин
Количество просмотров6.2K
Примечание: ниже представлен официальный перевод статьи «On having Layout» на русский язык. Статья не является окончательной. Этот перевод отражает 9 версию от 23.10.2007.

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

«Пакет дня Debian»

Время на прочтение1 мин
Количество просмотров1.3K
По адресу http://beshenov.ru/debaday/ опубликованы переводы всех публикаций известного блога «Debian Package of the Day». Регулярно появляются новые статьи на русском.

На родственном сайте http://beshenov.ru/potd/ с таким же названием — «Пакет дня Debian» — находится русская версия http://potd.redsymbol.net/ Аарона Максвелла. Здесь в RSS-поток регулярно отправляется описание пакета Debian GNU/Linux. Выписывайте ленту, и читайте каждый день о новом пакете.

Ресурсы оценят пользователи не только Debian, но и, конечно, Ubuntu, Kubuntu, Edubuntu (хотя, в принципе, подробные рассказы о программном обеспечении можно читать, не отвлекаясь на систему управления пакетами именно Debian и родственных систем).

Рецепт вашего поисковика на примере ТехОбзора

Время на прочтение4 мин
Количество просмотров976
Так как Хабр я люблю и уважаю, решил проанонсировать наш новый нишевой поисковик здесь, а заодно и попросить помощи у сообщества.

Итак, ТехОбзор — это новый поисковик, который поможет вам легко найти тесты, обзоры и отзывы пользователей современной бытовой и потребительской техники.

Пару слов о нем, и подробный рецепт создания вашего собственного поисковика:
Читать дальше →
12 ...
9

Информация

В рейтинге
1 404-й
Откуда
Харьков, Харьковская обл., Украина
Дата рождения
Зарегистрирован
Активность

Специализация

Backend Developer, Software Architect
Lead
От 10 000 $
Designing application architecture
Golang
Linux
Docker
Network security
Modular testing
Mentoring
Development of tech specifications
Software development
High-loaded systems