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

User

Send message

Настройка маршрутизации по двум провайдерам

Reading time3 min
Views98K
Вчера столкнулся с небольшой проблемой — на машине с Win2k3 установлены 2 сетевых карты, 2 провайдера. Проблема оказалась следующая: подсети пересекаются (точнее — совпадают). Было решено использовать за основной шлюз 1го провайдера, а по внутрисетевым ресурсам гулять — через 2го. И всё бы ничего, но машина должна обслуживать входящие соединения с обоих интерфейсов. Но, благодаря статическим маршрутам, ответы на запросы из подсети 10.0.0.0/8, пришедшей со стороны первого провайдера уходили через канал второго провайдера, что было, мягко говоря, не тем, что нужно. Как решить эту проблему под линухом — я знал (и тоже поведаю в этой заметке). Немного погуглив был найден вариант решения (в msdn'e наткнулись на управления приоритетами соединений). Коллега (WAJIM, привет) подумал — и нашёл 2й вариант. Потом немного (совсем немного) подумал я — и по аналогии появился 2й вариант решения для линуха :)
Итого, под катом вас ожидает 4 варианта решения задачи маршрутизации по 2м провайдерам — 2 под виндовс и 2 под линукс.
понеслась

Заключаем договор на создание технического задания

Reading time6 min
Views40K
Кому интересен договор на сайт, смотрим тут: Договор навороченный, Договор простой (удален автором).

Этот топик про более редкую ситуацию, когда перед собственно проектом нужно сделать ТЗ, а это большая и серьезная работа. На нее нужен договор и цена.
Читать дальше →

Подсчет количества найденных записей в PostgreSQL

Reading time3 min
Views43K
На работе в новом проекте используется СУБД PostgreSQL. Так как до сих пор я работал с MySQL, сейчас приходится изучать и открывать для себя Постгри. Первая проблема, которая меня заинтересовала — замена мускулевского SQL_CALC_FOUND_ROWS. При использовании этой константы в MySQL можно получить количество всех найденных по запросу записей, даже если запрос с limit'ом — это незаменимо при постраничном выводе поисковых результатов, когда используются «тяжелые» запросы.
Сходу готового решения найти не удалось. На форумах просто констатировали, что SQL_CALC_FOUND_ROWS в Постгри нет. Некоторые писали, что надо юзать count(*). И больше никакой информации. Но еще из MySQL мне было известно, что поиск с count()-запросом работает почти в 2 раза медленнее, чем с SQL_CALC_FOUND_ROWS. Я консультировался у тех, кто пользуется PostgreSQL, день мучал google и в результате получил 4 варианта замены SQL_CALC_FOUND_ROWS в PostgreSQL, один из которых вполне приемлимый по скорости.
Читать дальше: какие запросы и какая разница в скорости

Прокрастинация с пользой, или «История о структурированном отлынивании»

Reading time5 min
Views9.2K
Этот текст — перевод старой, но по-прежнему актуальной статьи Джона Перри, посвященной организованному отлыниванию — способу сделать много за счёт того, что не делается что-то самое важное.

Возможно, кто-то сразу вспомнит другие способы снять это «напряжение старта», когда вместо того, чтобы начать то самое, Большое и Важное, берешься за другие, тоже полезные, но не такие срочные и важные дела, или просто дробишь большую задачу на несколько мелких и не страшных. Отлично! Теперь в вашем арсенале ещё на одно средство больше. Расскажите о своих впечатлениях в комментариях.

* * *

Я собирался написать эту статью несколько месяцев. Почему наконец собрался? Может, нашлось свободное время? Нет. Мне ещё надо просмотреть работы студентов и поставить оценки, заполнить бланки заказов на учебники, ответить на предложение Государственного научного фонда, почитать черновики диссертаций. И, чтобы не делать ничего из вышеперечисленного, я пишу эту статью.

В этом заключается суть того, что я называю «организованным отлыниванием». Удивительная стратегия, которую я недавно открыл. Она превращает злостных отлынивателей в эффективных людей, которых уважают и которыми восхищаются за то, что они способны сделать, за пользу, которую они умеют приносить.

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

Веб-типографика сегодня. Часть V

Reading time12 min
Views29K
Часть IЧасть IIЧасть IIIЧасть IVЧасть V — Часть VI

Часть V



Очевидно, что в сфере высоких технологий развитие зачастую происходит быстро и бурно. Так произошло и со средствами отображения информации. В течении каких-то двух-трёх лет обычные ЭЛТ-мониторы почти целиком и полностью были вытеснены стремительно дешевеющими ЖК-собратьями. Что позволило существенно улучшить как геометрию отображения, так и цветопередачу, а также снизить утомляемость глаз за счёт отсутствия вредного мерцания. И если несколько лет назад подобное утверждение в пользу TFT-панелей можно было бы оспорить, то теперь этот факт не вызывает ни у кого сомнений: ЖК-дисплеи намного лучше для повседневной работы рядового пользователя. В связи с этим фактором возникла необходимость поиска качественно новых алгоритмов отображения шрифтов. Одно из таких решений пусть не сразу, но всё же получило определённое признание в среде пользователей, и на сегодняшний день является чуть ли не самым популярным на современных платформах. Речь, конечно же, о технологии рендеринга ClearType, которая послужила причиной разработки новых веб-ориентированных шрифтов…

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

Успешный проект – проект, ориентированный на пользователя

Reading time12 min
Views2.7K
Ориентируя проект на цели пользователя, можно создать новые, удобные и востребованные сервисы. Более того, можно создавать социальные коммуникации вокруг товаров, и это успешно монетизируется! Вот только… Что поможет учесть цели ваших пользователей? Маркетинг? К сожалению, «лобовой» перенос в интернет практики обычного маркетинга не даёт результата.

Текст доклада Павла Коноплицкого на конференции SocialExperience 2008

Разные пользователи — разные потребности

порочное убеждение в том, что ресурс должен создаваться для всех

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

Меню «Гаражные двери»

Reading time3 min
Views1.3K
garagemenuexample
Очень красивое меню, реализованное при помощи Jquery, сравнимое только с меню реализованными на флеше.
Это меню работает за счет изменения background-position наложенных друг на друга слоями изображений.
Читать дальше

Основы Hibernate

Reading time17 min
Views438K


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

Долго думал, о чем же написать свой «первый» топик… Слово первый не зря взял в кавычки, так как первый топик на самом деле уже был, опыт был к сожалению неудачный — дело закончилось баном.  Решил больше не копипастить. Уверенности тому, что надо написать что-то свое, придал вот этот топик. Решил твердо — пусть это будет и редко, но буду писать сам.

Ну, едем дальше!

Совсем недавно, по роду свой деятельности, мне пришлось столкнуться с таким понятием как ORM — (англ. Object-relational mapping). В двух словах ORM — это отображение объектов какого-либо объектно-ориентированного языка в структуры реляционных баз данных. Именно объектов, таких, какие они есть, со всеми полями, значениями, отношениями м/у друг другом.
Читать дальше →

Церковники воссоздали шрифт Ostrog

Reading time1 min
Views2K
Сообщество славянской типографики создало и выложило в свободный доступ церковнославянский шрифт Ostrog. Его можно скачать в вариантах TrueType (TTF), «дольний» TrueType (TTF), Type1 и «дольний» Type1.



Шрифт разработан на основе старопечатных изданий г. Вильно и Острога второй половины XVI века. Создателем шрифта предположительно является Пётр Мстиславец, белорусский типограф, который приехал в Москву и помог российскому первопечатнику Ивану Фёдорову напечатать его первую книгу. Затем Мстиславец вернулся в Беларусь (ВКЛ) и соорудил там свою типографию. В Беларуси книгопечатание было известно за полвека до этого, так что типография стала далеко не первой.

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

Работаем с массивами в JavaScript без велосипедов

Reading time2 min
Views42K
Эту статью я хочу посвятить тонкостям работы с массивами в JavaScript.

Наверное, у каждого JavaScript-разработчика есть фунции (самописные или библиотечные) $ (выбор элемента по id) и $$ (выбор элементов по CSS-классу). Если мы выбираем несколько элементов по CSS-классу, то мы хотим произвести с ними определенные действия. Напрашивается цикл. А если нужна выборка среди них? Преобразования? Действия над нужными элементами? Непростой получается код.

JavaScript не стоит на месте, Mozilla неустанно улучшает JavaSript в своем движке Gecko и грех не пользоваться этими нововведениями. В JavaScript 1.6 добавлены новые полезные методы для упрощения кода, необходимого в вышеописанных ситуациях.
Читать дальше →

Презентация вашего стартапа

Reading time6 min
Views3.8K
Вот вы развили свою идею до рабочего прототипа. Вы и ваши со-основатели опытны и уверены в себе. Ваш ангельский инвестор помог открыть вам некоторые двери, дав пару впечатляющих партнёров. Вы только и думаете о том, как бы действительно начать зарабатывать и нанять сотрудников.

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

Так что вы открываете файл презентации вашей речи в Powerpoint.

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

Шпаргалки по jQuery

Reading time1 min
Views1.8K
В последнее время столкнулся с тем, что Prototype не такая уж клевая библиотека. Даже в компрессии напару с scriptaculous занимают много места да и синтаксис странный. Для меня загадка, почему в Rails включили именно его. jQuery по синтаксису намного больше похож на Ruby и более легковесная библиотека. Собственно немного порыскал и нашел неплохие шпаргалки на jQuery, чтоб освоение протекало несколько легче.
  1. jQuery Color Cheatsheet (PNG)



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

Фонетический поиск

Reading time4 min
Views16K
Пару лет назад была задача написать для одного из сайтов такой поиск, который бы распознавал опечатки и предлагал бы исправленные запросы. Было перепробовано несколько вариантов, об одном из которых я и хотел тут написать. Поиск на основе звучания слов может стирать языковые границы, поскольку имена собственные на разных языках созвучны. Например, ищешь «Арнольд Шварцнеггер» на русском — находишь «Arnold Schwarzenegger» на английском, или ищешь «Michael Jordan» — находишь «Майкл Джордан», или ищешь «Чак Норрис» — и вдруг он сам тебя находит. Помимо поиска созвучных слов этот метод нивелирует большое количество опечаток. А то че-то задолбала попса, надо больше про инсайд…

...больше про инсайд

Аморфное стадо на службе у своей лени

Reading time2 min
Views3K
Навеяно недавними постами «Вы готовы отлучить себя от Одноклассников, Вконтакте и прочих подобных соцсетей раз и навсегда?» и «Законно ли слежение за компьютером сотрудника?».

Откуда мысли.
Возвращаясь из соседнего здания в нашем бизнес-центре и проходя мимо панорамных окон первого этажа, кинул взгляд внутрь, дабы узнать — что твориться внутри и чем занимаются сотрудники. Был, мягко скажем, удивлен. 90% сотрудников были заняты явно не прямыми своими обязанностями — вконтакте, одноклассники, несколько игр, форумы, снова вконтакте, снова одноклассники, снова вконтакте и так почти на всех мониторах, которые попали в мое поле зрения.
Читать дальше →

Окна и буферы

Reading time2 min
Views46K
В vim 7 появились табы — привычный способ навигации по файлам. Когда я работал в eclipse я не раз замечал, что часто скакать между табами не удобно, а знакомство с буферами в emacs натолкнуло на прочтение документации по окнам/буферам в vim.

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

Законно ли слежение за компьютером сотрудника?

Reading time1 min
Views44K
Мы следим за Вами :)
Ситуация такова. В нашем офисе на каждый компьютер решили поставить систему наблюдения за действиями сотрудников. В целях «рекламы» название не скажу, но основные возможности перечислю:
  • Снятие скриншотов экрана
  • Мониторинг запущенных процессов
  • Мониторинг открытых веб-сайтов
  • Перехват сообщений ICQ и MSN Messenger
  • Мониторинг USB устройств
  • Запись времени начала и окончания работы
  • Мастер отчетов – анализ активности пользователей
  • Дистанционаая инсталляция и удаление агентов
  • Невидимый режим работы агента
Читать дальше →

Разница между разметкой и представлением

Reading time4 min
Views1.4K
Прочитав комментарии к заметке Firefox 3: * {display: block } bug, понял что заметная часть читателей Хабра, в том числе серьёзно занимающиеся веб-разработкой, не совсем верно представляют себе что-то же такое HTML, и почему теги отображаются так, а не иначе.

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

Ресурсы по Silverlight и Expression на русском

Reading time2 min
Views1.9K
Один из самых часто задаваемых вопросов — где же можно научиться Silverlight и Expression. И желательно на русском. Что ж, попробую ответить на этот вопрос и продолжать информировать о новинках в дальнейшем.
Читать дальше →

www.contextfreeart.org — программирование на службе искусства

Reading time2 min
Views1.7K
Пост тем, кто хочет немножко отвлечься от работы и поразвлекаться с умом.

Сегодня наткнулся на интересный проект: contextfree

Все помнят курс теории компиляторов с университета? contextfree — генератор изображений на основе контекстно-свободных грамматик. Терминалами выступают простые графические примитивы (CIRCLE, SQUARE, TRIANGLE и т.д.). Нетерминалы задаем мы. Правила вывода могут включать в себя так называемые преобразования (повернуть, отразить, сдвинуть, поменять цвет). На основе этой простой модели можно получать очень интересные вещи… буквально несколькими строчками кода.

Начнем с простого примера:
startshape JustASquare //Начальный символ грамматики

background { b -1 } //Здесь мы задаем фон. b -1 - означает преобразование
//По умолчанию фон белый (brightness = 1), мы изменяем brightness до 0.

rule JustASquare { // Здесь мы задаем простое правило.
SQUARE { b 1 r 45 } // Белый квадрат, повернутый на 45 градусов.
}



Дальше сложнее...

Information

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