Pull to refresh
0
Колешко Андрей @ka8725read⁠-⁠only

User

Send message

Нестандартное применение браузера, или спасибо, Mozilla, за 3d-будущее

Reading time2 min
Views10K
Многие наверняка знают, что в последней стабильной версии Firefox обзавелся собственным веб-инспектором. Его появление было делом времени, он потенциально очень интересен, однако сейчас речь не конкретно о нем. В 11-ой версии браузера этот инспектор получит интересный апгрейд — 3d DOM Inspector — режим, который ранее можно было увидеть, установив аддон Tilt. Если в двух словах, эта штука может не только визуализировать компоненты сайта, но и взглянуть на них под разным углом, при чем в прямом смысле этого выражения. Примерно так:



Читать дальше →
Total votes 105: ↑85 and ↓20+65
Comments53

Создание расширений в PostgreSQL

Reading time20 min
Views22K

Здравствуйте, хабрачеловеки! Темой этой статьи будет создание расширений для PostgreSQL. В качестве примера, мы реализуем небольшую библиотеку для работы с 3D векторами. Параллельно будут рассмотрены пользовательские типы, операторы и приведения типов. Не будет лишним ознакомися с этим материалом, так как реализация хранимых функций будет на языке C. Надеюсь, друзья слонов помогут скрасить серый технический текст статьи.
Подробней
Total votes 22: ↑21 and ↓1+20
Comments0

Хинты планера в PostgreSQL

Reading time8 min
Views50K
Известно, что SQL — декларативный язык, который указывает, «что» мы хотим выбрать из базы, а «как» это сделать — СУБД решает сама. Задачу выбора для SQL-запроса конкретного способа его выполнения(плана) решает планировщик запросов, который есть практически в любой СУБД. Но иногда он выбирает не самый лучший план. Многие коммерческие СУБД предоставляют на этот случай «хинты», которые позволяют в ручном режиме подсказывать базе, как лучше выполнить запрос. В Open Source СУБД PostgreSQL такого механизма не было.

И вот, наконец, случилось то, о чем многие мечтали и чего уже устали ждать, а другие боялись. Японские разработчики из NTT реализовали хинты планера PostgreSQL. Причем, им удалось это сделать, не меняя ядро, в виде отдельного модуля pg_hint_plan, поддерживающего версии PostgreSQL 9.1 и 9.2. Модуль реализует хинты, позволяющие устанавливать методы сканирования и соединения таблиц, установку значений GUC. За деталями установки и использования добро пожаловать под кат.

Читать дальше →
Total votes 41: ↑39 and ↓2+37
Comments28

HINT.css — всплывающие подсказки средствами CSS

Reading time1 min
Views32K

Что


Hint.css — библиотека, реализующая всплывающие подсказки, средствами CSS3 без применения JavaScript.

Библиотека использует атрибут data-*, псевдоэлементы, свойство content и CSS3 transitions для вывода всплывающих подсказок.
Читать дальше →
Total votes 41: ↑36 and ↓5+31
Comments32

Тестирование в стиле TSA

Reading time3 min
Views13K


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

Если новичку можно и не заботиться о том что не стоит тестировать в первый день, то на второй день ему бы лучше начать вникать в это. Люди — создания привычки, поэтому если вы начнете формировать плохую привычку избыточного тестирования с самого начала, то вам будет гораздо труднее избавиться от нее потом. А избавиться от этой привычки вы должны.
Читать дальше →
Total votes 47: ↑41 and ↓6+35
Comments32

«Я не понимаю»

Reading time2 min
Views91K
Я заметил, что самые взрослые и опытные разработчики, с которыми мне доводилось работать, входят в число тех, кто чаще всего говорит «Я не понимаю», когда они выслушивают техническое объяснение. Так бывало с коллегами в Fog Creek и Khan Academy.

С одной стороны, это противоречит здравому смыслу. Разве не должны «сеньоры» уже знать всё? Но это вполне логично. Те, кто больше других уверены в своих способностях, являются также людьми, способными признать, что не вникли полностью в суть чего-либо. Молодые разработчики допускают, что их непонимание — их же собственная вина. Они не хотят отвлекать остальных из-за своих воображаемых промашек.

Молодым разработчикам стоит попробовать осознать, насколько часты непонимания вопроса. В большинстве стеков технологий уже пройдена черта, после которой удержать в голове весь код невозможно, особенно, в компаниях, которые набирают сотрудников. И если эта граница пересечена, всё чаще можно слышать о новом фреймворке рендеринга Javascript, или последнем конвейере MapReduce, или баге в скрипте развертывания, или плане нового шаблона кэширования, а тихий голосочек в вашей голове уже хочет сказать: «Постойте… мне это не понятно.»
Читать дальше →
Total votes 143: ↑118 and ↓25+93
Comments59

2013: Обратный отсчет до Rails 4

Reading time1 min
Views12K
Все ближе тот момент, когда выйдет четвертый порядковый релиз фреймворка Ruby on Rails. Доступно уже довольно много информации, и большой частью нового функционала можно начать пользоваться уже сейчас, чтобы массовый исход на новую версию не стал слишком болезненным (хотя политика версионности рельсы делает все, чтобы этот процесс был максимально гладким).

Самое время пробовать новинку на вкус. Ребята из Remarkable Labs пообещали выпускать для Вас по статье в день до самого нового года, освещая различные аспекты желанной четвертой рельсы.
Читать дальше →
Total votes 29: ↑25 and ↓4+21
Comments31

Простая техника Parallax Scrolling

Reading time2 min
Views125K
Доброго времени суток уважаемые хабраюзеры. На сегодняшний день Parallax Scrolling является неким трендом и я хочу рассказать о простой реализации данного эффекта. Техника основана на скорости изменения свойства background-position. Эффект Parallax Scrolling заключается в том, что фон движется медленнее чем содержимое

HTML разметка


Создаем два блока с атрибутами "data-type" и "data-speed":
<section id="home" data-type="background" data-speed="10" class="pages">
         <article>Простая техника Parallax Scrolling</article>
</section>
<section id="about" data-type="background" data-speed="10" class="pages">
         <article>Простая техника Parallax Scrolling</article>
</section>

Для управления значениями скорости и позиции в JavaScript, data-type используются как ключевые атрибуты при передачи необходимых параметров.

Читать дальше →
Total votes 44: ↑34 and ↓10+24
Comments39

Git Rebase: руководство по использованию

Reading time8 min
Views796K
Rebase — один из двух способов объединить изменения, сделанные в одной ветке, с другой веткой. Начинающие и даже опытные пользователи git иногда испытывают нежелание пользоваться ей, так как не видят смысла осваивать еще один способ объединять изменения, когда уже и так прекрасно владеют операцией merge. В этой статье я бы хотел подробно разобрать теорию и практику использования rebase.

Теория


Итак, освежим теоретические знания о том, что же такое rebase. Для начала вкратце — у вас есть две ветки — master и feature, обе локальные, feature была создана от master в состоянии A и содержит в себе коммиты C, D и E. В ветку master после отделения от нее ветки feature был сделан 1 коммит B.


Читать дальше →
Total votes 122: ↑121 and ↓1+120
Comments169

Свежая подборка jQuery плагинов

Reading time2 min
Views15K
Для меня jQuery ассоциируется с мощной и главное кросс-браузерной JavaScript библиотекой. Можно долго перечислять ее достоинства, холиварить по поводу и без, но думаю, никто не будет против посмотреть подборку интересных плагинов и уроков:
для удобства – каждая картинка ведет на демо

Hover Slide Effect



Демо | Урок
Галерея состоит из нескольких картинок, при наведении на одну из них она эффектно меняется на другую, а при клике на любую картинку — меняются все одновременно.

Остальные плагины
Total votes 151: ↑136 and ↓15+121
Comments27

Свое облачное хранилище на основе ownCloud

Reading time3 min
Views245K

ownCloud — система для организации хранения, синхронизации и обмена данными, размещенными на внешних серверах.
В отличии от Dropbox и ему подобных, ownCloud отличается предоставлением пользователю полного контроля над своими данными — информация размещается на подконтрольных пользователю системах. Доступ к данным в ownCloud может осуществляться при помощи web-интерфейса или протокола WebDAV.

Особенности ownCloud


  • Open source;
  • Поддержка шифрования передачи данных;
  • Автоматическое резервное копирование;
  • Поддержка WebDAV позволяет организовать доступ к данным из любых операционных систем;
  • Поддержка синхронизации данных с другими web-приложениями, поддерживающими протокол remoteStorage;
  • Управление пользователями и группами;
  • В web-интерфейс встроены средства для работы с синхронизированной адресной книгой, календарем-планировщиком, коллекцией фотографий, архивом музыкальных произведений;
  • Для ownCloud подготовлен сервер Ampache, что позволяет организовать потоковое вещание музыки;

Читать дальше →
Total votes 42: ↑34 and ↓8+26
Comments35

Методы монетизации интернет проектов

Reading time7 min
Views135K
Поговорим о важном аспекте существования любого сайта, о существующих методах монетизации и их применении в реальных проектах. От этой кажется, совсем небольшой вещи зависит будущее проекта и его перспективы на рынке.

Подробности
Total votes 82: ↑72 and ↓10+62
Comments27

7 паттернов рефакторинга толстых моделей в Rails

Reading time6 min
Views29K
Толстые модели сложны в поддержке. Они, конечно, лучше, чем контроллеры, захламленные логикой предметной области, но, как правило, нарушают Single Responsibility Principle(SRP). “Всё, что делает пользователь” не является single responsibility.
В начале проекта SRP соблюдается легко. Но со временем модели становятся де-факто местом для бизнес-логики. И спустя два года у модели User больше 500 строчек кода и 50 методов в public.
Цель проектирования — раскладывать растущее приложение по маленьким инкапсулированным объектам и модулям. Fat models, skinny controllers — первый шаг в рефакторинге, так давайте сделаем и второй.
Второй шаг
Total votes 38: ↑35 and ↓3+32
Comments27

Пишем плагин для jQuery

Reading time8 min
Views247K
Эта статья призвана дать представление об основных правилах, подходах, дающих наилучшие результаты, и распространённых ошибках, на которые стоит обратить внимание при разработке плагинов для jQuery.
Читать дальше →
Total votes 171: ↑138 and ↓33+105
Comments67

Проксируем и спасаем

Reading time7 min
Views160K
1 ноября мир изменился и больше никогда не будет таким же как прежде. В российском интернете появилась цензура — общеизвестный уже список запрещенных сайтов. Для одних это важнейшая политическая тема, для других повод изучить технологии шифрования и защиты анонимности, для третьих просто очередной странный закон, который приходится исполнять на бегу. Мы же поговорим о технологическом аспекте.

В данном пособии мы узнаем как быстро и просто сделать рабочее зеркало любого сайта, что позволяет сменить IP и назначить любое доменное имя. Мы даже попробуем спрятать домен в url, после чего можно сохранить локально полную копию сайта. Все упражнения можно сделать на любом виртуальном сервере — лично я использую хостинг Хетцнер и OS Debian. И конечно мы будем использовать лучший веб-сервер всех времен и народов — NGINX!

К этому абзацу пытливый читатель уже приобрел и настроил какой нибудь выделенный сервер или просто запустил Linux на старом компьютере под столом, а так же запустил Nginx последней версии со страничкой «Save me now».
Cкорее кого-нибудь спасем
Total votes 73: ↑68 and ↓5+63
Comments25

Типы HTTP-запросов и философия REST

Reading time4 min
Views941K
Этот пост — ответ на вопрос, заданный в комментарии к одной из моих статей.

В статье я хочу рассказать, что же из себя представляют HTTP-методы GET/POST/PUT/DELETE и другие, для чего они были придуманы и как их использовать в соответствии с REST.
Читать дальше →
Total votes 84: ↑78 and ↓6+72
Comments111

Moqups — новый сервис для создания макетов UI

Reading time1 min
Views89K
Как характеризуют сервис сами разработчики, Moqups — это «изящное HTML5-приложение для создания макетов, концептов пользовательского интерфейса, прототипов, в зависимости от того, как вы сами это называете».



Для Chrome есть отдельное приложение.

На данный момент доступно более 60 шаблонов элементов, экспорт в PDF и PNG, клавиатурные шорткаты, группировка объектов, привязка к сетке и проч.

Проект находится в стадии активной разработки и открыт для критики, помощи и предложений.
Total votes 137: ↑130 and ↓7+123
Comments95

Information

Rating
Does not participate
Location
Минск, Минская обл., Беларусь
Registered
Activity