Как стать автором
Обновить
2
0
amosk @amosk

Пользователь

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

Управление потоком в CSS: создаём контекст форматирования

Время на прочтение4 мин
Количество просмотров5.3K
Управлять потоком можно не только свойствами clear или overflow. Возможно, вы найдёте полезным для себя использование display:inline-block или display:table-cell, способных полностью заменить вам упомянутый overflow, избавляя вас от опасности указания размеров элемента, а также предоставляя дополнительные возможности.

Статья не содержит универсальных решений, но открывает вашему взору дополнительный инструментарий для управления потоком.
Читать дальше →
Всего голосов 66: ↑63 и ↓3+60
Комментарии34

Как быстро начать и эффективно продолжить писать расширение для лисы

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

Обычно цикл разработки таков:


1) вносим изменение в исходники,
2) перепаковываем исходники в *.xpi (скриптами),
3) переключаемся на лису,
4) Ctrl+O, выбираем полученный выше *.xpi,
5) появляется диалог установки, ждём 4 секунды,
6) жмём «Install»,
7) потом «Restart Firefox» и смотрим что изменилось.

Стало страшно? Тогда…
дальше про то как userChrome.js позволяет обойтись без перезагрузки и сократить количество шагов до двух
Всего голосов 48: ↑43 и ↓5+38
Комментарии17

Безразмерная разметка с помощью relative (без float)

Время на прочтение2 мин
Количество просмотров4.1K
Навеянно этой темой.
Пример, как это работает.

1. Введение


Представим, мы имеем класс relative, внутри которого имеется текст, и не задаём ему width:
#bar{
position:relative;
border:5px solid #00FFFF;
padding:10px;
height:200px;
}
мы получим резиновый блок:
<div id="bar">
text
</div>


При этом, блок обладает неизменными padding+border и резиновым width, таким, что width_px+padding_px+border_px = 100%.
Для absolute блоков, такой трюк не прокатывает.
Читать дальше →
Всего голосов 74: ↑62 и ↓12+50
Комментарии77

Делаем Liquid Resize своими руками

Время на прочтение12 мин
Количество просмотров16K
Вы наверное уже слышали о технологии масштабирования Liquid Resize, которая учитывает содержимое изображения. Если вам интересно как оно все работает и как можно реализовать все это самому, то читайте далее (осторожно, много рисунков).


(НЛО прилетело и растянуло этот рисунок здесь)
Читать дальше →
Всего голосов 230: ↑227 и ↓3+224
Комментарии125

jQuery Alert Dialogs — замена стандартным функциям Alert(), Confirm() и Prompt()

Время на прочтение2 мин
Количество просмотров38K
image
Плагин jQuery Alert Dialogs призван заменить основную функциональность стандартных предупреждений JavaScript, alert(), confirm(), и prompt() функций. Они полностью настраиваются с помощью CSS (это позволит выглядеть вашему сайту гораздо более привлекательно). И вы также можете настроить пользовательский заголовок для каждого диалогового окна.

Эти методы моделируют обычные модальные диалоговые окна. Они автоматически изменяют свое положение при изменении окна браузера. Если включить jQuery UI Draggable плагин, то окна можно перемещать, перетаскивая их за заголовки. В отличие от стандартных JavaScript функций, вы можете использовать HTML в сообщении. Например, чтобы задать переход на новую строку, вы можете использовать либо \n, либо < br / >.
Читать дальше →
Всего голосов 59: ↑52 и ↓7+45
Комментарии46

Clear или overflow:hidden — очистка всего потока или создание контекста форматирования?

Время на прочтение2 мин
Количество просмотров35K
clear и overflowСвойство clear со значениями left, right, both действительно очищает поток в отличие от overflow со значеним hidden, которое создаёт отдельный контекст форматирования для выбранного элемента, тем самым локализуя действие свойства float внутри элемента к которому применён.

Читать дальше →
Всего голосов 130: ↑120 и ↓10+110
Комментарии75

Терминальный офис: Linux vs Windows — holy war: Part I

Время на прочтение3 мин
Количество просмотров17K
Преамбула: Есть типичные офис, на 15 локальных пользователей + 5 удалённых, круг задач прост: 1С + Офис + Интернет + Почта + Печать. Задача сделать устойчивое и недорогое (т.к. Кризис на дворе) решение.

Собственно решений-то всего 2: Терминальный сервер на Windows || Терминальный сервер на Linux. Standalone PC мы не рассматриваем, т.к. это не решение, а гемморой сплошной.

Сразу определимся с железом для терминального сервера: CPU 2 Quad Xeon 5405, 6Gb RAM, RAID 1 SATA 1 Tb (знаю, что плохо, но на SAS денег нет, тем боллее, что БД это отдельный сервер). Почему такое железо — задача хорошо параллелиться, чем больше ядер, тем лучше. Памяти 20 юзеров * 200-250 Мб (1С и офис её любят) + система. Договоримя, что и настройка/поддержка Windows и Linux — стоит одинаково

Читать дальше →
Всего голосов 115: ↑92 и ↓23+69
Комментарии188

Частые ошибки программирования на Bash (продолжение)

Время на прочтение6 мин
Количество просмотров39K
Продолжаю знакомить сообщество с переводом Bash Pitfalls.
Часть первая.
Первоначальная публикация перевода.

11. cat file | sed s/foo/bar/ > file


Нельзя читать из файла и писать в него в одном и том же конвейере. В зависимости от того, как построен конвейер, файл может обнулиться (или оказаться усечённым до размера, равному объёму буфера, выделяемого операционной системой для конвейера), или неограниченно увеличиваться до тех пор, пока он не займёт всё доступное пространство на диске, или не достигнет ограничения на размер файла, заданного операционной системой или квотой, и т.д.
Что же делать?
Всего голосов 74: ↑70 и ↓4+66
Комментарии19

Частые ошибки программирования на Bash

Время на прочтение9 мин
Количество просмотров96K
Качество скриптов, используемых для автоматизации и оптимизации работы системы, является залогом ее стабильности и долголетия, а также сохраняет время и нервы администратора этой системы. Несмотря на кажущуюся примитивность bash как языка программирования, он полон подводных камней и хитрых течений, способных значительно подпортить настроение как разработчику, так и администратору.

Большинство имеющихся руководств посвящено тому, как надо писать. Я же расскажу о том, как писать НЕ надо :-)

Данный текст является вольным переводом вики-страницы «Bash pitfalls» по состоянию на 13 декабря 2008 года. В силу викиобразности исходника, этот перевод может отличаться от оригинала. Поскольку объем текста слишком велик для публикации целиком, он будет публиковаться частями.

Поехали!
Всего голосов 79: ↑76 и ↓3+73
Комментарии25

VirtualBox 2.1.0 и трансляция OpenGL вызовов

Время на прочтение2 мин
Количество просмотров7.7K
На прошлой неделе произошло событие, которое в принципе может быть затерто в истории софтостроения, но мне оно показалось интересным. Сейчас системы виртуализации развиваются маленькими, осторожными шажками, поэтому найти что-то интересное, или хотя бы значимое, отличие между версиями 2.х и 3.х или даже 4.х не всегда возможно.

Поэтому release notes на версию VirtualBox 2.1.0 я листал без особого интереса. Но за что зацепился глаз и заставил почитать повнимательнее, так это «Трансляцию OpenGL вызовов прямо в драйвер host машины».

А под катом как я тестировал эту функциональность
Всего голосов 45: ↑38 и ↓7+31
Комментарии29

Про правильную посадку в кресле

Время на прочтение5 мин
Количество просмотров72K
Навеяно постами про подлокотники. Это сборник разных советов, которые я потихонечку собирал в записную книжку, когда впервые столкнулся с проблемами, которые может вызвать неправильная посадка в компьютерном/водительском кресле и дополнял собственным опытом и знаниями.

Что есть правильная посадка в кресле?

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

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

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

Решение — правильная поза. Как ее достичь? Причем совершенно штатными средствами, без адских подлокотников или кресел за полторы тысячи евро?

Читать дальше →
Всего голосов 119: ↑112 и ↓7+105
Комментарии89

Издержки больших проектов или взгляд на программирование в команде изнутри

Время на прочтение1 мин
Количество просмотров3.8K
Ни для кого не секрет, что разработка больших программных продуктов требует не только эффективного руководства, но и эффективных процессов, которым следуют все разработчики. На примере своей компании я постараюсь описать жизненный цикл проекта и цену его разработки и поддержки. Те, кто работает в небольших командах из нескольких человек, смогут сравнить и представить, что их ждет при увеличении штата или же чего они избежали, если расширяться не планируют. А в комментариях можно покритиковать, указать на ошибки и предложить альтернативы.

Итак, собственно, к делу.

Мы занимаемся системами электронной биржевой торговли, аналитикой рынка и поставкой маркет-данных в реальном времени. К таким системам предъявляются повышенные требования по надежности — каждая ошибка может привести к потере больших денег.
Читать дальше →
Всего голосов 82: ↑76 и ↓6+70
Комментарии112

Установка Linux из виртуальной машины на съемный диск

Время на прочтение2 мин
Количество просмотров4K
Прочитал статью Оживление легенды: ставим ОС на Libretto 50 CT
в которой описывается способ №3 установки ОС Linux на HDD из виртуальной машины. И решил предложить другой вариант, как мне кажется более правильный, чем тот, который изложен в статье. Во всяком случае автору статьи, smashrod, советую попробовать. Может быть этот вариант окажется рабочим.
Читать дальше →
Всего голосов 25: ↑22 и ↓3+19
Комментарии15

Тестирование ПО: как объяснить руководителю, что 2 х 2=4?

Время на прочтение2 мин
Количество просмотров11K
Простой, но внезапный вопрос чуть не поставил в тупик: «Почему тестировать должны тестировщики, а не аналитики, разработчики или пользователи?» Попытаюсь быстренько обосновать, но, скорее всего, потребуется помощь со стороны, такие формулировки требуют многостороннего анализа и освещения, и, несмотря на многолетнее владение темой, может потребоваться время на обдумывание.

Читать дальше →
Всего голосов 50: ↑48 и ↓2+46
Комментарии59

Манипуляции с аудио, как с MIDI

Время на прочтение2 мин
Количество просмотров6.7K
На Хабре проскакивали упоминания про новые интересные возможности обработки фото или видео, но тоже самое происходит и в аудио-среде. Не заметили, что наши «звезды» в последние годы стали лучше попадать в ноты? :)

Суть технологии: даже многоголосое аудио уже можно редактировать как MIDI — изменять высоту, длительность, время начала, громкость. Смотрите видео.



В чем прелесть и как этим воспользоваться?
Всего голосов 67: ↑64 и ↓3+61
Комментарии75

Споры о шаблонизаторах: троллинг или умные мысли?

Время на прочтение3 мин
Количество просмотров1.7K
причины родились в том, что в топах посвященных обзорам конкретных шаблонизаторов спорят на обобщенную тему:
Обзор шаблонизатора Quicky: Производительность и Гибкость.
MACRO — гибкий PHP шаблонизатор, с человеческим «лицом»
раследование проведено на основе данных, полученных в топе:
HolyWar: Шаблонизаторы. Нужны ли они? состоятельны ли они? Форум.
результаты расследования под катом
Читать дальше →
Всего голосов 68: ↑55 и ↓13+42
Комментарии76

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

Время на прочтение7 мин
Количество просмотров2.4K
Это вторая часть перевода интересного исследования, которое проводили авторы популярного интернет сайта Smashing Magazine. Первую часть вы пожете прочитать здесь. В этот раз авторы затрагивают вопросы капчи, сообщения «Спасибо за регистрацию», кнопки «Отмена» на формах и некоторые другие интересные вопросы.


3. Функциональность форм


В первой части нашего исследования мы рассмотрели как расположение ссылок на подписку и форм регистрации, так и их внешний вид. Те не менее, не имеет значения, как привлекательно выглядит дизайн, если формы не работают как надо, число заполненных форм будет невелико. Давайте рассмотрим теперь как функционал форм подписки, так и связанные с ними типичные проблемы, паттерны и решения, применяемые в дизайне таких форм.
Читать дальше →
Всего голосов 53: ↑48 и ↓5+43
Комментарии26

CorePy: программирование на ассемблере в Python

Время на прочтение1 мин
Количество просмотров5.8K
CorePy является библиотекой для разработки на уровне ассемблера для процессоров x86, Cell BE и PowerPC. Простой API позволяет разрабатывать сложные высокопроизводительные приложения, использующие особенности процессора, включая многоядерность и потоковые расширения, такие как SSE, VMX и SPU, обычно недоступные из языков высокого уровня.

Основанный на передовой среде выполнения, CorePy позволяет разработчикам писать и выполнять низкоуровневые приложения непосредственно в коммандной строке или встраивать в Python приложения. За счет сокращения времени разработки низкоуровневых приложений CorePy значительно уменьшает существующий барьер при разработке низкоуровневых приложений.

CorePy является инструментом общего назначения, который можно применять при разработке широкого спектра приложений, включая разработку игр, мультимедийных систем, научных и высокопроизводительных приложений а также встраиваемых приложений. Эта библиотека использовалась для оптимизации приложений под процессоры x86, систем на PowerPC 970 и Cell BE и регулярно являлась более производительнее компилируемых языков для вычислительных задач (как обычное кодирование на asm :))

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

«CorePy опять сделал программирование на ассемблере интересным занятием!» (Alex Breuer)

CorePy был разработан Крисом Мюллером (Chris Mueller), Эндрю Фридли (Andrew Friedley) и Беном Мартином (Ben Martin). Значительный вклад внес Эндрю Ламсдейн (Andrew Lumsdaine) из Open Systems Lab университета Индианы.

CorePy это open source проект, доступный по лицензии BSD.
Всего голосов 48: ↑44 и ↓4+40
Комментарии25

TeamCity 4.0 released

Время на прочтение2 мин
Количество просмотров11K
Что такое TeamCity? TeamCity — это, говоря научно-занудным языком, интегрированная среда, которая повышает эффективность групповой разработки, беря на себя такие рутинные действия как сборка билдов, запуск и анализ тестов, а так же анализ исходного кода (инспекции, поиск дубликатов и т.д.) Посмотрев на картинку многое станет понятным:
image
Читать дальше →
Всего голосов 42: ↑38 и ↓4+34
Комментарии37

Разработка макетов: а давайте в этот раз не будем спрашивать уборщицу?

Время на прочтение4 мин
Количество просмотров4.3K
Мало кому приходит в голову указывать программистам, как писать код (хотя некоторые умудряются указывать даже проектировщикам баз данных), но уж показать дизайнеру как нужно рисовать — прямо очередь выстраивается.

Это происходит потому, что все «специалисты» знают: дизайн — это красивая картинка.

Дизайн лишь на 20% искусство, на 80% — это точная наука. И вы будете удивлены, когда узнаете, из чего на самом деле состоит каждая картинка.

Читать дальше →
Всего голосов 178: ↑150 и ↓28+122
Комментарии166

Информация

В рейтинге
Не участвует
Откуда
Одесса, Одесская обл., Украина
Зарегистрирован
Активность