Search
Write a publication
Pull to refresh
6
0
Алексей Басс @alexbig

User

Send message

Отрицательная сторона передачи значений по ссылкам

Reading time3 min
Views12K
Без всякой лирики, прямо: использование ссылок для передачи значений снижает производительность. Мы думаем, что вместо того что бы передавать копию переменной, сценарий передает саму переменную, исходя из чего делаем вывод, что это должно работать быстрее. Увы, это заблуждение. Что бы понять почему давайте разберёмся с тем, как процессор Zend Engine обрабатывает значения.
Читать дальше →

Сборник хаков

Reading time4 min
Views6.5K
В этом посте я постарался собрать все известные мне хаки для css. Многие могут усомниться в их надобности для нормальных современных браузеров, потому как большинство хаков всегда применялись только для IE, но этот пост скорее для любознательных :), в верстке хаки вообще лучше не использовать. Но так или иначе, раз они есть, грех о них не знать.

В отличие от многих хаков для той же Opera, которые также будут обработаны и Safari, я немного изменил код и Opera 9.2, Opera 9.5 и Safari 3 увидят каждый свой css.
Читать дальше →

JavaScript библиотека «Raphaël» — SVG расцветает, SVG и iPhone

Reading time1 min
Views3.2K
Raphaël — это небольшая JavaScript библиотека с простым синтаксисом для работы с векторными форматами: SVG и VML (для IE). Впрочем, как я успел заметить у разработчика возникают проблемы с VML (когда многие вещи в SVG делаются очень просто в VML не всегда есть простая альтернатива)

часы
Читать дальше →

Кластеризация memcached и выбор ключа кэширования

Reading time4 min
Views24K
Серия постов под общим заглавием “Web, кэширование и memcached” продолжается. В первом мы поговорили о memcached, его архитектуре и возможном применении.

Сегодня речь пойдет о:
  • выборе ключа кэширования;
  • кластеризации memcached и алгоритмах распределения ключей.

Следующий пост будет посвящен атомарности операций и счетчикам в memcached.

Итак, поехали!

Средства для визуального проектирования

Reading time2 min
Views63K
Всем известно, что для успешной разработки веб-сайта/веб-сервиса/программы (нужное подчеркнуть) очень важен этап проектирования. Грамотный план разработки — это половина всего проекта. Понятно, что прежде всего необходимо техническое задание, в котором будут описаны требования, сроки, и т.п. Но еще большее значение имеет визуальное проектирование, а именно: UML-схемы, схемы БД, пользовательские интерфейсы, эскизы страниц…
Читать дальше →

120 dpi и шрифты в em

Reading time8 min
Views12K
шрифт в em

Шрифты в Em/% хороши всем — возможностью пользователей IE увеличивать кегль, заботой о пользователях, что предпочитают увеличивать размер шрифта браузера по-умолчанию, чтоб лучше видеть текст, да и просто являются нормой для профессиональных верстальщиков.

Минусы: … их вроде как нет, но!
А что если у пользователя разрешение экрана выставлено не в стандартное 96 dpi, а в 120?
Сайт с увеличенными шрифтами смотрится уже не так красиво, как нарисовал дизайнер — ведь масштабируются только шрифты, а не весь сайт! А разрешение 120dpi становится всё популярней, особенно на ноутбуках! Что же делать? Возвращаться к px?

Нет!
как сделать сайт одинаковым на 96 dpi и 120

Кэширование и memcached

Reading time7 min
Views88K

Этим постом хочу открыть небольшую серию постов по материалам доклада на HighLoad++-2008. Впоследствии весь текст будет опубликован в виде одной большой PDF-ки.



Введение


Для начала, о названии серии постов: посты будут и о кэшировании в Web’е (в высоконагруженных Web-проектах), и о применении memcached для кэширования, и о других применениях memcached в Web-проектах. То есть все три составляющие названия в различных комбинациях будут освещены в этой серии постов.
Читать дальше →

Загрузка Linux за пять секунд

Reading time1 min
Views5.2K
На конференции Linux Plumbers Conference двое хакеров Арьян ван де Вен (Arjan van de Ven) и Оук Кок (Auke Kok) провели демонстрацию сразу двух систем Linux, каждая из которых загружалась быстрее пяти секунд. В первом варианте использовался модифицированный вариант дистрибутива Fedora, а во втором — модифицированный Moblin. В обоих случаях хакеры оптимизировали работу ядра (по вышеуказанной ссылке, а также в этом интервью можно узнать все подробности, что они сделали).

Разработчики уверяют, что результат показан без каких-либо трюков: окончание загрузки регистрируется только тогда, как CPU освобождается и прекращаются операции чтения с диска. Сама загрузка не включает в себя время входа в сеть, но включает загрузку NetworkManager.

Асинхронная инициализация железа позволила ускорить загрузку ядра до 1,02 с (на ядре 2.6.28 они уменьшат время до 0,5 с). Дальше загрузка шла параллельными потоками.


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

time management и bash

Reading time1 min
Views3K
Иногда весьма мелкие мелочи дают весьма ощутимый эффект. Настолько ощутимые, что ощущения заставили установить Firefox и поделится этим с общественностью. С недавних пор начал использовать такой PS1:

PS1='\D{%H.%M} \u@\h \w\n\$ '

Или с раскраской:

PS1='\[\033[02;34m\]\D{%H.%M} \u@\h\[\033[00m\] \w\n\$ '

В итоге, мозг начинает получать информацию о том, сколько времени и на какую именно активность тратится в ходе работы. Что очень помогает (imho, даже на чисто подсознательном уровне) более эффективно распределять своё время. И, что ценно при таком подходе к делу, отслеживание времени не отвлекает от производства. В отличии от специализированных решений в виде красивого web-2.0 или очаровательного GUI, где нужно своими же руками осознанно следить за собой. Кроме того, можно сразу видеть много строчек с информацией своей активности и вести журнал сессии без проблем. Вобщем вот.

P.S. Это, кстати, одна из тех фишечек, которая возможна только в command-line интерфейсе. И непонятно, почему сторонники WIMP и CL не соберутся как-нибудь и не выберут из обоих подходов всё самое лучше, и не смешают всё в удобных пропорциях?

P.P.S. Для новичков в bash: PS1 лучше всего задавать в $HOME/.bashrc

habracut с картинкой

Тормозной SQLite? Совсем нет!

Reading time2 min
Views30K
Как-то заинтересовавшись SQLite я решил проверить, а не будет ли оно быстрее MySQL, или хотя бы равным по скорости.
Я исходил из того, что SQLite скорее всего будет удобна для мелких таблиц, типа простых счетчиков посещений.
Поэтому провел тесты следующим способом: я пять раз мерял время по 100 циклов обновления записи в базе и пять раз по 100 чтения.
Код тут.
Читать дальше →

Оптимизация MySQL запросов

Reading time4 min
Views126K
В повседневной работе приходится сталкиваться с довольно однотипными ошибками при написании запросов.

В этой статье хотелось бы привести примеры того, как НЕ надо писать запросы.
Читать дальше →

Некоторые инженерные практики для улучшения качества web application на PHP

Reading time2 min
Views4.6K
Этот топик мой ответ на жалобу одного человека, что «баги достали».

Для начала, никакая методология положения не спасет. Начинать нужно с инженерных практик – внедрив их и почувствовав уверенность в своем коде можно внедрять любую методологию.

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

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

Компоненты Zend Framework отдельно

Reading time1 min
Views1.3K
Яни Хартикайнен практикуясь в использовании Tokenizer-а PHP написал очень полезную штуку, позволяющую скачать в ZIP отдельные части Zend Framework со всеми зависимостями. Например, для Zend_Acl скачаются

Zend/Acl.php
Zend/Acl/Resource/Interface.php
Zend/Acl/Role/Registry.php
Zend/Acl/Role/Interface.php
Zend/Acl/Role/Registry/Exception.php
Zend/Acl/Exception.php
Zend/Exception.php
Zend/Acl/Assert/Interface.php


Пользуемся

Hello, спамеры!

Reading time3 min
Views2.1K
Прочитав тему про веб-студию, которая неправильно выбрала способ рекламы, решил рассказать вам, как мне кажется, весьма забавную историю.

Сразу скажу — не люблю спам, он плох всем, и тем что людям приходится ворошить большие объемы ненужной им информации, и тем, что приходится настраивать спам-фильтры и тем, что вообще об этой проблеме приходится думать и говорить, вместо того, чтобы просто пользоваться почтой. И даже тем, что ведет нас, среди прочих факторов, к глобальному потеплению (энергия то тратится). Но с другой стороны я не считаю, что сильно пострадал от спама, так как не свечу свои ящики и в проектах по возможности перехожу на веб-сервисы вместо почты, чего и вам желаю.
Но тем не менее спам не обходит и меня стороной. Так случилось и в этот раз…

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

Windows 98 bug

Reading time1 min
Views2.5K
Незамысловатый обход Network Security в ранних версиях MS систем. Что называется дыркой в дизайне.
Увидел и вспомнил уроки информатики в школе, подобным занимались, вводив преподавателей в ступор.

JavaScript Cross Site (XSS) POST

Reading time4 min
Views13K
Недавно, в Dojo появилась возможность производить cross site POST запросы, т.е. отправка POST запросов на другие сайты, с другими доменными именами. Это событие осталось незамеченным в нашем сообществе JavaScript разработчиков. По крайней мере, никто и слова про это не сказал. А зря…

В один прекрасный момент
Читать дальше →

MySQL Query Cache

Reading time5 min
Views112K
В MySQL есть очень полезная функциональность — кеш запросов. Кеш запросов доступен в MySQL начиная с версии 4.0.
Многие СУБД имеют подобную функциональность, но в отличие от MySQL они кешируют планы выполнения запросов, тогда как MySQL кеширует результаты запросов.
Дальше о том, как работает кеш запросов, как его настраивать и оптимально использовать.
Читать дальше →

Обрати внимание

Reading time1 min
Views704
ui
Зачастую необходимо обратить внимание пользователя на какую-либо деталь интерфейса.

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

Я хочу Вам показать прием позволяющий обратить внимание пользователя, на мой взгляд, с большой точностью.
Читать дальше

Электрика в  малом и среднем офисе, часть  первая

Reading time7 min
Views11K
Если вы арендуете офис в большом центре, где есть СКС и все круто, то эта заметка не для вас. Но если вы переезжаете в помещение, переведенное из жилого фонда, то эта статья будет для вас полезна. Я расскажу о возможных проблемах с электрикой и о том, как их предотвратить.
Читать дальше →

Information

Rating
Does not participate
Location
Израиль
Registered
Activity