Обновить
467.7

Веб-разработка *

Делаем веб лучше

Сначала показывать
Порог рейтинга
Уровень сложности

Eclipse + QT: установка и настройка

Время на прочтение3 мин
Охват и читатели54K
Достаточно давно стал присматриваться к кроссплатформенному С++ программированию. Не то, чтобы это было мне необходимо, но так для общего развития. И вот что я могу отметить: самая большая вещь, которая доставляет проблемы на этом пути — достаточно высокий порог вхождения в эту область именно по причине инструментария.

Если не рассматривать случай программирования в Emacs, что лично мне кажется пока неким толи анахронизмом, толи экстримом, постоянно сравнивая различные IDE с Visual Studio зачастую приходилось просто ужасаться. И главная проблема этих систем была в том, что за редким исключением они не работали из коробки без напильника.

Вторая проблема — юзабилити. Зачастую ниже среднего. Ранние версии KDevelop оставляли достаточно неоднозначное впечатление.

Третье, чего бы хотелось — интегрированного дизайнера интерфейсов. Его не было практически нигде, если не считать NetBeans (но только для Java), да MonoDevelop (GTK#). И хотя эти IDE весьма достойны, хотелось найти легкий способ программировать именно на C++ с минимальным количеством граблей.

В этой статье я хочу привести пошаговое руководство, что называется «для чайников», по установке на платформу Windows работоспособной конфигурации хорошей IDE Eclipse и хорошей библиотеки QT. Стартовую площадку, так сказать.

UPD: Что касается именно программирования в QT, то могу порекомендовать просто шикарную книжку на эту тему:
Jasmin Blanchette, Mark Summerfield: Разработка графического интерфейса с помощью QT3 (перевод Андрей Киселёв)

UDP2: Ещё литература:
Русский перевод документации из QAssistant
Qt4. Профессиональное программирование на C++
Jasmin Blanchette, Mark Summerfield: Qt 4. Программирование GUI на C++
Foundations of QT Development

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

Полнотекстовый поиск в веб-проектах: Sphinx, Apache Lucene, Xapian

Время на прочтение15 мин
Охват и читатели56K
Полная авторская верcия из моего блога. Оригинал материала написан специально для Developers.org.ua

Наверное любой современный веб-проект сложно себе представить без… без контента! Да, именно контент в разных его проявлениях сегодня «правит бал» в различных веб-проектах. Не так важно — создаваемый пользователями или получаемый из других источников автоматически — информация является основной любого (ну, или почти любого) проекта. А раз так — то вопрос поиска необходимой информации стоит очень остро. И острее с каждым днем, ввиду стремительного расширения количества этого самого контента, в основном за счёт создаваемого пользователями (это и форумы, и блоги и модные нынче сообщества, вроде Habrahabr.ru). Таким образом, любой разработчик, реализующий сегодня какой-либо проект, сталкивается с потребностью реализовать поиск в своём веб-приложении. При этом требования к такому поиску уже намного сложнее и шире, чем даже год-два назад. Конечно, для каких-то проектов вполне подойдёт и простое решение, к примеру, вполне можно использовать Custom Google Search. Но чем более сложное приложение, и чем сложнее структура контента, если требуются особые виды поиска и обработки результата, или же просто количество или формат данных в вашем проекте особый, вам потребуется собственная поисковая система. Именно своя система, собственный поисковый сервер или сервис, а не сторонний, пусть даже гибкий и настраиваемый. Но что же выбрать, и вообще — какие сейчас на рынке есть поисковые проекты, которые готовы для использования в реальных проектах, не исследовательских или научных, а реальных бизнес-приложениях? Далее мы кратко рассмотрим различные варианты поисковых решений, пригодных для встраивания в ваше веб-приложение или развёртывания на собственном сервере.
Читать дальше →

Облако тегов: линейная зависимость vs логарифмическая

Время на прочтение2 мин
Охват и читатели3.7K
Этот пост меня сподвигли написать две вещи. Автокадабра и некто под ником napisal, кто активно не соглашался с моим постом

Дело было так: я зашёл в карту клубов Автокадабры и понял что она мне ни о чём не говорит. Создавалось впечатление, что пишут всего в трёх клубах. После изучения облака я пришёл к выводу что линейная зависимость размера тега (в данном случае блога) от количества публикаций совершенно не информативна. Клубы с одной публикацией выглядят так же как и с 15-ю.
далее с картинками

Опера 9.51 не кэширует ajax?

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

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

Как сделать двигающийся аплоадер минимального размера и красиво

Время на прочтение1 мин
Охват и читатели945
Хочу поделиться небольшим трюком для создания анимированной полосы загрузки как в флеш проигрывателях или в операционной системе.
Имеем в наличии просто картинку:


Как заставить её двигаться? А очень просто! Нужно двигать бекграунд в интервале попиксельно.
Смотрим демо

немного кода

Интерфейсы vs. классы

Время на прочтение4 мин
Охват и читатели291K
Обсуждая с различными людьми — в большинстве своём опытными разработчиками — классический труд «Приёмы объектно-ориентированного проектирования. Паттерны проектирования» Гаммы, Хелма и др., я с изумлением встретил полное непонимание одного из базовых подходов ООП — различия классов и интерфейсов.

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

Фотобанки, фотобанки…

Время на прочтение1 мин
Охват и читатели5.7K
Открываем новый новостной проект, идея вроде интересная, движок уже готов, тех. дизайн тоже. Осталось дело за малым — подпилить напильником, добавить картинок к дизайну, и счастливого плавания!

И вот тут, на последнем этапе, появляется проблемка, с которой раньше не встречались — картинки и иллюстрации. Где их брать? Данный дизайн требует массу иллюстраций (фото). Сама концепция проекта так же — иллюстрации к новостям. Конечно, нарушением авторских прав у нас в стране уже давно ни кто не занимается. Поэтому начали выбирать фотобанки. Вот, что мы нашли:
Читать дальше →

Actis куплен группой WPP! Подробности.

Время на прочтение1 мин
Охват и читатели1.4K
Сегодня состоялась беспрецендентная для Рунета сделка — компания Actis Systems (вторая по оборотам на рынке разработки сайтов, а по мнению многих — первая), куплена рекламной группой WPP и объединена с агентством Wunderman.

Максимально оперативно на событие отреагировали в экспертной группе Тэглайн — на сайте выложено интервью с Анной Свердловой, а также официальный пресс-релиз компании.

Краткие выдержки:

>> Планируются ли изменения в структуре руководства компании? Ожидается ли реструктуризация?

В менеджменте компании изменений не предполагается. Небольшая реструктуризация произойдет в связи с «прибавлением» к нашему штату российской команды Wunderman и в связи со значительным расширением бизнеса. Более подробная информация в нашем пресс-релизе.

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

:: Базар на тему «как найти челов для верстки сайта и как с ними работать» ::

Время на прочтение2 мин
Охват и читатели1.1K
Когда вы обращаетесь в «шарашкину контору», чтобы вам сверстали сайт, поставили на движок и прикрутили на ваш хостинг/домен — вы обрекаете себя на жуткую нервотрепку с длительным сроком. Для заказчика сайта это как… это как этап жизни6 через который просто надо пройти. В данном базаре вынужден слегка утрировать, дабы показать проблему.



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

ТЗ: макеты или текст?

Время на прочтение3 мин
Охват и читатели11K
В заметке ТЗ для web-разработчика автор пишет:
считаю что одно из самых правильных способов подачи информации есть графический, т.е. лучше один раз увидеть, чем сто раз услышать.

Никак не комментируя заметку в целом, хотелось бы сделать несколько замечаний по поводу разных способов представления информации в ТЗ и не только в нём.

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

ТЗ для web-разработчика

Время на прочтение4 мин
Охват и читатели22K

Написание хорошего ТЗ для разработки сайта еще та проблема, и я поделюсь своим опытом по созданию «человеко-понятного» описания для заказчика для разработчика.
Читать дальше →

SSL из PHP: socket и cURL

Время на прочтение3 мин
Охват и читатели54K
Сегодня, этим сонным летним утром, я расскажу вам про SSL соединение из PHP скрипта. Расскажу исходя не только лишь из теории, а ещё и решая вполне себе практическую задачу — логин на гугловский блогосервис blogger.com.

поехали

Идеальная голосовалка

Время на прочтение3 мин
Охват и читатели7.7K
Часто на разнообразных сайтах пользователям предлагают оценить (проголосовать за) тот или иной объект — анекдот, цитату, пост, автора, человека и т. д. При этом, к сожалению, почти всегда совершается одна или несколько ошибок.

Я буду говорить только о тех случаях, когда пользователям предлагают оценить объект положительно или отрицательно. Голосования с выбором одного из нескольких вариантов ответа здесь не рассматриваются.

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

Ближайшие события

О том, как гипербола помогла придумать новую систему рейтингов

Время на прочтение2 мин
Охват и читатели1.3K

Здравствуй.

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

Последние несколько постов я рассуждал о системах рейтингов и в первой заметке на эту тему была система +1/-1. Очень простая для понимания, от того любимая многими. Я хочу улучшить ее, а точнее улучшить алгоритм подсчета. Визуально для пользователя ничего не изменится, он по прежнему будет иметь на выбор два варианта «+» либо «-».

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

Итак пусть в нашей системе абсолютный плюс это «+100», а абсолютный минус это «-50».
Читать дальше →

rdTree — DHTML-дерево на MooTools

Время на прочтение3 мин
Охват и читатели2.7K

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

Это может быть help, справочная информация, быстрая навигация по админ-панели, древовидное меню и т.д. Пользователю такая организация навигации понятна, так как она реализивана во всех операционных системах.

Поиск хороших решений неприменно приводил к красиво оформленным и хорошо документированыи коммерческим библиотекам, например Zapatec Tree. За unlimited версию там просит 799$.

Дорого! Будем поддерживать разработчиков свободного ПО и искать хорошо написанное дерево на JavaScript.


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

Оптимальный код?

Время на прочтение2 мин
Охват и читатели2.2K
Уже несколько лет я веду работу над одним очень интересным прибором. За это время из 40 расчетных показателей система выросла до примерно 300, а мои взгляды на «правильный» код сильно изменились.

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

Но со временем уточнялась теория и возникала необходимость изменять не только нормы, коэффициенты и формулы вычисления показателей, но и алгоритмы получения значений вообще. В итоге постепенно скорость разменивалась на понятные глазу алгоритмы вычислений. Когда же количество входных показателей выросло с 30 до 80, а расчетных до 300, код уже был очень далек о оптимального по скорости. Вычисляемые показатели ссылались на другие, другие — на третьи, и так несколько уровней вложенности, на каждом из которых повторно производились вычисления одних и тех же значений.
Читать дальше →

39-й способ скругления блока. Один тэг, одна картинка.

Время на прочтение2 мин
Охват и читатели1.3K
Пару дней назад наткнулся на статью про 38 способов скругления блоков. Очень понравилось. Однако там я не встретил способа, которым пользуюсь уже около года. Он не требует лишних тэгов и требует загрузки только одной картинки (спрайт). Работает во всех современных баузерах и IE6+
Читать дальше →

Google Suggest – взгляд изнутри…

Время на прочтение3 мин
Охват и читатели2.9K
Разные люди немного разбирались в принципе работы Google Suggest, но я переписал сжатый javascript код так, чтобы каждый обычный разработчик мог подробно узнать, как эта система работает. Моя финальная переписанная версия скрипта доступна здесь.
Я увидел самую крутую штуку, которую я видел с тех пор как обнаружил SOAP-клиент с поддержкой WSDL в браузере Mozilla. Технология предсказания запросов Google Suggest работает в реальном режиме времени. С вводом каждой новой буквы список вариантов обновляется. Скрипт технически восхитителен как минимум по двум причинам:
Читать дальше →

pChart — строим графики и диаграммы на PHP

Время на прочтение1 мин
Охват и читатели65K
pChart — это PHP-библиотека для создания графиков, гистограмм и диаграмм. В отличие от большинства схожих библиотек, pChart бесплатна (распространяется под GPL лицензией). Из бесплатных главный соперник — Google Chart API.

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

Несколько примеров работы pChart

Объединение JS-файлов 2.0 (2/2)

Время на прочтение3 мин
Охват и читатели1K
Часть 1.

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

Доблестно решаем созданную нами проблему

Вклад авторов