Pull to refresh
35
0
hedin @hedin

User

Send message

Делаем страницу 404-й ошибки разумной с помощью Google

Reading time2 min
Views6.4K
Вот я прошёлся по блогам и сайтам, которые висят у меня в подписках, и понял, что всё печально. Если намеренно вызвать страницу 404-й ошибки, то можно напороться на все возможные отмазки, пустую страницу, либо на страницу, которую генерит сервер. Ну или на крайний случай — sitemap. Часто любят выкладывать туда смешную картинку.
Читать дальше →
Total votes 116: ↑108 and ↓8+100
Comments45

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

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

В этой статье хотелось бы привести примеры того, как НЕ надо писать запросы.
Читать дальше →
Total votes 143: ↑132 and ↓11+121
Comments142

20 полезных дополнений FF, которых у вас нет

Reading time5 min
Views8.3K
Последние два месяца мое увлечение плагинами FF переросло в настоящую страсть. С приходом третьей версии «лиса» стало возможным устанавливать несколько десятков дополнений без нагрузки на систему.
Сейчас в моем арсенале более 50-ти дополнений при растратах памяти всего в 110 Mb.
Прежде чем постоянно использовать плагин, я тщательно тестирую его на предмет проф-пригодности, нахожу аналоги, взвешиваю альтернативы. Вам предлагаю самые сливки для удобного веб-серфинга в сети. Итак, начнем…
Читать дальше →
Total votes 131: ↑82.5 and ↓48.5+34
Comments62

Установка SVN+Trac+TracWebAdmin

Reading time3 min
Views18K
Привет всем!
Сегодня я расскажу как правильно и без гемора установить связку SVN + Trac + TracWebAdmin.

Для чего все это...?

Представьте себе ситуацию: у вас есть проект, который находится на стадии разработки. Скрипты содержат тысячи строк кода. Постоянное сохранение, бэкап файлов, удаление фрагментов кода, вставка новых вынуждают вести точный контроль над исходным кодом проекта, чтобы не потерять уже существующее и проверенное. Вам приходится записывать в текстовом файле или на бумаге этапы разработки и тестирования отдельных частей системы, возможно даже записывать версии файлов. Возможно это удобно… но не надолго — насутпают моменты, когда контролировать код вручную становится физически невозможным из-за его размера. Здесь на помощь приходит система контроля за версиями SVN. Начать ознакомление можно осюда: ru.wikipedia.org/wiki/SVN. А Trac — это всего лишь удобный веб-интерфейс для еще более удобного контроля за своим проектом. Рассмотрение Trac'а можно начать отсюда: ru.wikipedia.org/wiki/Trac
Читать дальше →
Total votes 44: ↑38 and ↓6+32
Comments65

Встраивание и кодирование в JavaScript

Reading time1 min
Views1.8K
Примечание: ниже находится перевод статьи «Embedding and Encoding in JavaScript», в которой автор (JavaScript-евангелист в Mozilla и автор библиотеки jQuery по совместительству) рассматривает способы сжатия информации и ее объединения при помощи JavaScript и некоторых других методов. Мои комментарии далее курсивом.

Грубая реализация на JavaScript (заметка на Хабре, ссылка blog.nihilogic.dk/2008/04/super-mario-in-14kb-javascript.html) первого уровня Super Mario Brothers буквально на днях обошла весь Интернет. В нее, в общем, можно играть, хотя упущены многие ключевые аспекты (нет грибов, нет флага, нет повышающих очков и т.д.). Однако, это, на самом деле, не самый интересный аспект в этой игре.

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

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

читать дальше на webo.in →.
Total votes 33: ↑29 and ↓4+25
Comments16

Распределённая система кеша ehcache для приложений любого уровня

Reading time3 min
Views28K
Сегодня я хотел бы рассказать об одном интересном проекте, который вам пригодится при проектировании и реализации сложных веб-приложений на платформе Java. Речь идёт о ehcache — универсальной системе распределённого кеширования для Java приложений и сервлетов. Это необычно небольшое приложение (честно, такого уровня системы, размером в несколько сотен Кб это редкость, при этом высокого качества), которое реализует кеш как динамический (в оперативной памяти), так и дисковый кеш, причём изначально спроектированное для работы с кешами большого объёма (порядка гигабайтов) и в распределённых системах.

Читать дальше →
Total votes 25: ↑23 and ↓2+21
Comments8

Для начинающих убунтуводов. Моё мини FAQ

Reading time4 min
Views2.5K
Не беспокойтесь: это не очередной «мануал для начинающих», в котором описаны базовые принципы работы с Ubuntu и ее настройки. Нет, я вовсе не хочу повторяться, а поэтому писать буду о разного рода мелочах и вопросах, которые могут интересовать «Неофита культа Убунту» :)

Читать дальше →
Total votes 51: ↑41 and ↓10+31
Comments45

Изучаем потоки, чанки и ищем конец

Reading time1 min
Views13K
Примечание: ниже перевод статьи «On Streaming, Chunking, and Finding the End», в которой авторы рассматривают процесс передачи информации по HTTP-соединению и возможности для ускорения этого процесса. Мои комментарии далее курсивом.

Два способа передачи



Как и в большинстве механизмов передачи данных, в HTTP существует два основных способа отправить сообщение: «все и сразу» или «по частям». Другими словами, в HTTP есть возможность отправлять данные до тех пор, пока еще есть хотя бы что-то, что можно отправить, либо отправить все данные как одну логическую единицу, указав предварительно ее размер.

Если вы занимаетесь веб-разработками достаточно продолжительное время, скорее всего, вы уже знаете, как работает сброс буфера (flush) на стороне сервера. Этот метод позволяет начать отправку части данных пользователю, в то время как скрипт может продолжать выполнять некоторые, достаточно медленные, действия (скажем, ресурсоемкий запрос к базе данных). Если вы уже применяли эту возможность, тогда вы, вероятно, использовали преимущества потокового (streaming) механизма, хотя могли и не знать всех деталей работы HTTP-протокола.

читать дальше на webo.in →
Total votes 36: ↑33 and ↓3+30
Comments24

Моя Убунта — II

Reading time4 min
Views1.1K
Ну что ж, раз пошло такое дело — значит, пришло время поговорить и нам — о башмаках, кораблях, сургучных печатях, королях и капусте, а также легкой доработке напильником дистрибутива Ubuntu, дабы получить внешний вид, описанный в этом посте — по многочисленным просьбам телезрителей, рассказав о том, что и как я делал.


Сразу скажу, что любителям поорать в коментах прошу не читать — там много графики, объяснения для новичков, вам это все равно будет неинтересно. В любом случае, я вас предупредил ;-)
Итак, чуть меньше лирики — чуть больше дела. С чего начать? Начать нужно с инвентаря. Нужно-то нам совсем ничего! Сегодня нам потребуются:
  1. Компьютер с установленным Ubuntu 7.10/8.04. На самом-то деле, почти наверняка пойдет любой другой дистрибутив с GNOME в качестве менеджера окон рабочего стола (desktop environment manager) и ...
  2. Compiz — установленный и стабильно работающий. Это важно — без него всей этой красоты не получится
  3. Третьим, фактически же — последним пунктом программы — выступает фон рабочего стола. Открою страшный секрет… хотя нет, открою его потом :-) Так вот, как именно найти этот фон я рассказывать не буду, поскольку с негодованием отметаю все претензии в лицензионной нечистоплотности, оставляю это в качестве домашнего задания (искать по слову leopard wallpaper, размер — extra large, первая картинка). Я взял ее с домашнего компьютера (так как в рабочее время им никто не пользуется, я имею полное право любоваться на картинку на работе :-) )
Господа, хватит тупо и молча миносовать и срать в карму! Будьте добры объясниться — или хотя бы прочитать дисклеймер в конце поста — и спасибо хорошим людям, которые сперва читают, потом комментируют, и только потом плюсуют или минусуют

Собственно, настройка
Total votes 80: ↑67 and ↓13+54
Comments79

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

Reading time3 min
Views78K
Ни для кого не секрет, что работа с базой данных занимает большую часть работы практически любого сайта. И именно работа с БД чаще всего является узким местом веб-приложений.
В этой статье хотелось бы дать практические советы использования MySQL.
Сразу оговорюсь:
  • данная статья написана про MySQL, хотя общие вещи скорее всего справедливы для любой СУБД.
  • все написанное в статье является моей личной точкой зрения, и не является истиной в последней инстанции.
  • советы не претендуют на новизну и являются результатом обобщения прочтенной литературы и личного опыта.
  • в рамках данной статьи я не буду касаться вопросов конфигурирования MySQL.

Проблемы при использовании MySQL можно разделить на следующие три группы(в порядке значимости):
  1. Неиспользование или неправильное использование индексов.
  2. Неправильная структура БД.
  3. Неправильные \ неоптимальные SQL запросы.

Остановимся на каждой из этих групп подробнее.
Читать дальше →
Total votes 54: ↑52 and ↓2+50
Comments107

Рисуем графику через ж… жаваскрипт

Reading time2 min
Views3K
Информация в принципе общеизвестная, но новичкам (вроде меня) может быть будет полезно.

Возникла тут недавно потребность рисовать чарты яваскриптом. В итоге была найден элемент canvas от WHATWG и его спецификация. Вещь в высшей степени привлекательная. Позволяет рисовать вот такие штуки:
штуки
Делается примерно так:
Читать дальше →
Total votes 60: ↑54 and ↓6+48
Comments47

Практический JS: разгоняем все, что движется

Reading time1 min
Views858
Примечание: ниже находится перевод статьи «Speed Up Your Javascript Load Time», в ней автор рассматривает некоторые наиболее эффективные техники и методы действия по уменьшению времени отработки JavaScript'а на клиенте. Большая часть из них общеизвестна, но в статье важно не просто их перечисление, а общий подход для решения задачи оптимизации времени загрузки. Далее мои комментарии курсивом.

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

Пользователи так ненавидят ждать: им подавай все и сразу. Давайте тогда рассмотрим несколько методов, которые помогут вам «причесать» ваш сайт. Здесь находятся все рабочие примеры, которые будут приведены далее.

читать дальше на webo.in →
Total votes 51: ↑49 and ↓2+47
Comments27

Советы и подсказки по bash

Reading time2 min
Views36K
Для непосвященных, bash — командная оболочка по умолчанию во многих Linux-дистрибутивах, включая Fedora, Ubuntu, Redhat и др. Используя операционную систему Linux-семейства, вы, вероятно, используете и bash. По этой причине ниже я собрал несколько часто возникающих проблем с bash и простые способы их решения.

1. Потеря истории команд

Если открыть окно терминала и ввести несколько команд, а после открыть второе окно, то история команд bash во втором окне не будет содержать команд из первого. К тому же, если закрыть первый терминал, а затем второй, то история команд из первого терминала будет перезаписана вторым. Вдвойне неприятно!

Так происходит из-за того, что история команд записывается только при закрытии терминала, а не после каждой команды. Это можно исправить.
Читать дальше →
Total votes 76: ↑75 and ↓1+74
Comments23

Как удачно расчитать цену и время проектов во фрилансе

Reading time2 min
Views8.3K
Одна из самых больших проблем начинающих фрилансеров — оценка стоимости задания.

На самом деле — оценка стоимости проектов — очень не простой момент и очень важно научится правильно оценивать стоимость проекта, что предлагается.

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

Так как же правильно оценить проект?

Читать дальше →
Total votes 36: ↑32 and ↓4+28
Comments32

Как JavaScript тормозит Веб (и что с этим делать)?

Reading time1 min
Views3.1K
Примечание: ниже перевод статьи «How JavaScript is Slowing Down the Web (And What To Do About It)», посвященной, в основном, работе с виджетами: характерные проблемы и методы их решения.

Одна строка JavаScript является основой большинства текущих технологий, которые используют авторы блогов. Виджеты, средства (фото-/видео-)обмена, отслеживание посетителей, рекламные объявления. Во многих случаях единственная строка JavaScript — это все, что нужно автору, чтобы добавить в своей блог что-то новенькое. Проблемы начинаются тогда, когда много-много этих самых строчек собирается вместе...

читать дальше на webo.in →
Total votes 40: ↑37 and ↓3+34
Comments52

Интервью с Линусом Торвальдсом

Reading time7 min
Views2.1K
Не могу не начать с этого вопроса: действительно ли исходный код ядра Линукса нарушает какие-либо патенты компании Майкрософт?

Насколько мне известно, нет, и этот шаг Майкрософт является всего лишь попыткой оклеветать своего соперника, в конкуренции с которым на техническом уровне у них появились некоторые проблемы.


По словам Марка Шаттлворта (Mark Shuttleworth), наиболее важной особенностью дистрибутивов Линукса является их бесплатность. Он говорил, что эта система погибнет, если весь мир перестанет покупать запакованную в подарочную упаковку Виндоуз и начнет покупать запакованный в точно такую же упаковку Линукс. Как вы можете прокомментировать данное высказывание?

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

Читать дальше →
Total votes 52: ↑48 and ↓4+44
Comments57
12 ...
9

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity