Search
Write a publication
Pull to refresh
5
0
Подгорный Дмитрий @zimorodok

User

Send message

Стив Макконнелл

Reading time3 min
Views146K
Стив МакконеллВ прошлый раз мы познакомились с выдающимся человеком Пол Грэмом, который написал одни из лучших статей о стартапах, программировании и бизнесе. Сегодня я хочу рассказать вам о такой выдающейся личности, как Стив Макконнелл.

Интересно, что в далеком 1998 году читатели журнала «Software Development» признали Стива одним из трех наиболее влиятельных людей в отрасли разработки ПО наряду с Биллом Гейтсом и Линусом Торвальдсом.

Если говорить коротко, то Steven C. McConnell — программист и автор книг по разработке ПО.

Он написал книги «Rapid Development» (1996), «Software Project Survival Guide» (1998), «Professional Software Development» (2004). Журнал «Software Development», кстати, дважды удостоил его книги премии Jolt Excellence как лучшие книги года о разработке ПО.

Кстати, вы наверняка слышали фразу «Пишите код так, как будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете». Так вот, эту фразу приписывают именно Стиву.

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

Что почитать по веб-разработке

Reading time3 min
Views236K
Топик Много книг, хороших и разных навёл на мысль сделать похожий каталог наиболее удачных и интересных книг по веб разработке.

Поэтому предлагаю здесь собрать и структурировать такие книги с небольшим описанием, вашим рейтингом и просто пообсуждать их.

update: Теперь есть электронные версии книг!

Начнём…
Читать дальше →

Повышение качества javascript кода. JSLint

Reading time6 min
Views31K

Случилось так, что в последнее время мне пришлось читать и рефакторить очень много ужасного javascript-кода. Работа с таким кодом стоит очень многих нервов при сопровождении, да и писать/отлаживать такой код не приятно. Мысли о том, что заставляет людей писать плохой код и как с этим можно бороться заставили меня писать эту статью. Не претендую на сколь-нибудь полное раскрытие темы борьбы за качество кода, хочу рассмотреть лишь некоторые аспекты, доставляющие наибольшее количество проблем. В качестве основного инструмента оптимизации качества кода предлагаю использовать JSLint, который несмотря на все плюсы, не является панацеей и может служить лишь отправной точкой для дальнейшего улучшения кода.

Всех у кого хоть раз болела голова при написании/чтении javascript кода прошу под кат.
Читать дальше →

Способы сокрытия IP-адреса в сети Internet

Reading time7 min
Views162K
Прежде чем мы подробно рассмотрим известные технологии сокрытия своего настоящего IP-адреса, нам следует узнать свой IP-адрес и выяснить некоторые вещи, обличающие наш компьютер в сети, например адрес DNS-сервера. Для этого достаточно зайти на любой сервис проверки анонимности, например www.whoer.net, главное чтобы он обладал интерактивной проверкой вашего компьютера с помощью Java, ActiveX, Flash и Javascipt. Изменить свой IP-адрес, например с помощью Socks или VPN, недостаточно, т.к. существует множество технологий, позволяющих его выявить, которые нужно либо отключить на своем компьютере, либо обмануть. Также не лишним будет изменить передаваемые НТТР-заголовки, это позволит «сбить» определение установленного ПО и географическое место расположения компьютера. Более детально проверить свой компьютер можно в расширенной версии www.whoer.net/ext.

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

10 полезных выводов и принципов юзабилити

Reading time8 min
Views23K
Каждый согласится, что юзабилити является важным аспектом веб-дизайна. Несмотря на то, работаете ли вы над дизайном сайта портфолио, над он-лайн магазином или веб-приложением, важно сделать страницы удобными и простыми для пользователей. В протяжении последних лет было сделано много исследований о разных аспектах веб-дизайна и дизайна интерфейсов. Результаты этих исследований весьма значимы и помогают нам улучшить качество наших работ. Данная статья содержит 10 полезных выводов и принципов юзабилити, которые помогут вам улучшить впечатления пользователей от ваших сайтов.
Идем дальше...

Избавляемся от дополнительных настроек jabber-клиента в Google apps

Reading time2 min
Views7.1K
Судя по количеству плюсов к посту про использование google apps в качестве сервера jabber эта тема волнует хабрапользователей. Поэтому я решил внести свои пять копеек.

В документации гугла сказано, что при настройке кастомного клиента нужно вводить в свойствах соединения сервер talk.google.com и порт. Это очень не удобно, так как надо всё время помнить эти настройки, да и затрудняет настройку клиента вашими родственниками/знакомыми, которых пугает только одно слово порт :) Почему-то в документации к google apps этого не сказано, но прописать адрес и порт, которые должны быть использовать при подключении, можно в srv записях dns, да именно там, где вы указаывали адреса для федеративных сетей.

Добавляем запись типа:

_xmpp-client._tcp.yourdomain.com. IN SRV 5 0 5222 talk.google.com.


И вауля, клиент коннектится безо всяких танцев и дополнительных настроек.
некоторые технические замечания под катом

Алгоритмы на графах — Часть 0: Базовые понятия

Reading time5 min
Views264K

Вступление


Как оказалось тема алгоритмов интересна Хабра-сообществу. Поэтому я как и обещал, начну серию обзоров «классических» алгоритмов на графах.
Так как публика на Хабре разная, а тема интересна многим, я должен начать с нулевой части. В этой части я расскажу что такое граф, как он представлен в компьютере и зачем он используется. Заранее прошу прощения у тех кто это все уже прекрасно знает, но для того чтобы объяснять алгоритмы на графах, нужно сначала объяснить что такое граф. Без этого никак.

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

Безбраузерные приложения на Javascript (HTA)

Reading time3 min
Views40K
Одна из мощнейших средств Ослика (начиная с пятой (!) версии) — HTA или HTML Application (безбраузерные приложения), позволяет создавать Windows-приложения используя HTML, CSS и Javascript/VBscript. Сразу хочу заметить, что в этой статье используется исключительно Javascript.

С точки зрения пользователя, созданная «программа» ничем, кроме расширения (*.hta), не отличается от любой другой программы: заголовок окна, иконка, отображение на панели задач, а самое главное никаких предупреждений при доступе к файлам компьютера. При всем этом вам не придется устанавливать никаких отдельных приложений или плагинов, достаточно Internet Explorer-а!

Мусолить не буду, сразу приступим к делу

Компьютерная фирма: «за кулисами»

Reading time11 min
Views3K
После вчерашнего топика про комп. фирму много читателей заинтересовалось проблемами, с которыми мы столкнулись на своём пути, и причиной «падения» нашего детища.
Также многим полюбилась фраза «про грабли» — так что о них собственно речь и пойдёт.
Читать дальше →

Еженедельный чеклист руководителя проекта

Reading time2 min
Views40K
Вот такой список обнаружил когда-то в одном давно заброшенном блоге англоязычного менеджера проекта. Адрес блога к сожалению давно потерялся, но сами список с небольшими исправлениями оказался очень полезным в работе — еженедельно просматриваю его. Очень помогает приводить мысли и информацию по проекту в порядок.
Читать дальше →

Прогрессивные технологии, как способ выжать из сервера максимум

Reading time5 min
Views12K

Вступление


Просто красивый rrdtool =)
Забавно, но когда программист разрабатывает какой-либо продукт, он редко задумывается над вопросом могут ли на одну кнопку в один момент времени нажать одновременно 2000 человек. А зря. Оказывается могут. Как ни странно но большинство движков, написанных такими программистами, очень плохо ведут себя под большими нагрузками. Кто бы подумал, а всего один лишний INSERT, не проставленный index, или кривая рекурсивная функция могут поднять load averages чуть ли не на порядок.

В этой статье я опишу как мы, разработчики проекта, сумели выжать из одного сервера с Pentium 4 HT / 512Mb RAM, максимум, держа одновременно 700+ пользователей на форуме и 120,000 на трекере. Да, проект этот — торрент трекер. Предлагаю сразу оставить в стороне разговоры о копирайтах и правах, мне это не интересно, что действительно интересно — это HighLoad.
читать дальше

Персональный зоопарк или немного о Pygame — Часть 1

Reading time7 min
Views40K
image
Для тех, кто не в курсе: Pygame — это очень и очень неплохой фреймворк для разработки игр на языке Python. Причем поддерживается не только работа с 2D и 3D, но и при желании можно установить биндинги ко многим популярным графическим и физическим движкам. Кстати, Pygame вовсе необязательно использовать именно для игр, можно также создавать и программы с необычным интерфейсом, например, какой-нибудь трехмерный фронтенд к базе данных.
Вот мне, собственно, и захотелось рассказать об основных принципах работы с этим фреймворком, мало ли, может, пригодится кому :)
Ну что, погнали?

Рецепты хорошей типографики

Reading time7 min
Views57K
Судя по результатам голосования, которое я проводил в своём блоге, большинство пользователей никак не типографируют тексты перед публикациями (НЛО не считается). Те, кто работают над текстами, в большинстве своём делают это вручную, поэтому я решил попробовать собрать воедино рецепты экранной типографики, дабы не забывать самому и напомнить другим. Не думаю, что статья будет чем‐то новым для опытных верстальщиков. Новички узнают, профи исправят :)

Содержание

  1. Дефисы, тире, минусы и другие палочки
  2. Кавычки и чёрточки
  3. Скобки
  4. Многоточие
  5. Заголовки, списки

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

Оптимизация изображений, часть 4: последовательные JPEG — быть или не быть?

Reading time1 min
Views6.2K
Примечание: ниже перевод заметки «Image Optimization, Part 4: Progressive JPEG…Hot or Not?» из блога YUI. В ней уже известный по прошлым статьям Stoyan Stefanov рассматривает использование последовательных (progressive) JPEG с точки зрения клиентской оптимизации. Мои комментарии далее курсивом.

В своей предыдущей статье «Оптимизация изображений, часть 3: 4 шага для уменьшения размера файлов» последовательные JPEG-файлы были вскользь упомянуты как одна из возможностей для оптимизации JPEG. Эта статья рассматривает данный вопрос более глубоко, включая результаты проведенного эксперимента над 10000 изображений.

Базовые (baseline) и последовательные JPEG



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

Загрузка базовых JPEG

Загрузка базового JPEG-файла в браузере. По нажатию откроется полная версия.

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

Загрузка последовательных JPEG

Загрузка последовательных JPEG. По нажатию откроется полная версия.

Читать дальше на webo.in →

Построение графики на javascript

Reading time1 min
Views12K
dg
Raphaël — небольшая библиотека(20 килобайт) для построения векторной графики на веб-сайтах.

Она использует SVG и VML в качестве базы для создания графики. Учитывая то, что каждый созданный объект — DOM объект, то при помощи JavaScript обработчиков можно легко изменять их свойства и действия.
Читать дальше

Information

Rating
Does not participate
Location
Украина
Registered
Activity