Pull to refresh
29
0
quard @quard

User

Send message

Делаем мэш-ап Twitter'а и Google Maps за 20 минут на Grails

Reading time14 min
Views3.4K

Введение


Для многих разработчиков Java часто является синонимом ужасно занудных корпоративных приложений. Она ассоциируется с многочисленными конфигурационными файлами формата XML, шаблонным кодом и т.д. Поэтому как правило вместо нее разработчики используют динамические языки (такие как Ruby, Python, PHP) для разработки своих проектов, особенно для простых утилит, мэш-апов и т.п.

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

В этом посте я раскажу, как сделать мэш-ап из Twitter'а и Google Maps в течении всего 20 минут. Конечный результат будет выглядеть примерно следующим образом:
Geo Twitter Complete

Читать дальше →
Total votes 47: ↑35 and ↓12+23
Comments44

syncTranslit плагин

Reading time2 min
Views5.3K
Во многих веб проектах используются friendly urls. Например, вместо id статьи в url испольуется его текстовый идентификатор (slug). Обычно slug генерируется автоматически на серверной стороне при создании статьи. Но если вы хотите иметь возможность задавать slug самостоятельно (через форму) — можете использовать мой плагин syncTranslit.

syncTranslit plugin
Читать дальше →
Total votes 28: ↑23 and ↓5+18
Comments41

DbOctopus — SQL редактор с поддержкой интелектуального завершения кода

Reading time2 min
Views3.2K
image Как-то в поисках бесплатного редактора для работы с SQL Server'ом наткнулся я на неплохую с моей точки зрения программу DBOctopus. Проект не так давно появился на свет, поэтому я не ожидал увидеть нечто сверхъестественное. Но надо сказать, я был приятно удивлен. Конечно многого еще не хватает, кое-что неудобно, но из плюсов значительных для меня могу отметить упомянутое в теме интелектуальное завершение кода. Посмотреть как это реализовано в программе. Надо сказать, что даже в SQL Server Management Studio 2005 от известной всем Майкрософт нет такого функционала. Возможен экспорт результатов выборки в такие тектовые форматы как xml, html, Excel, pdf и тектовый формат. Порадовал удобный экспорт в Excel. Программа очень неплохо оформляет результат в конечном файле xls с заголовками колонок.
Читать дальше →
Total votes 29: ↑23 and ↓6+17
Comments27

Сборка Zend Framework

Reading time5 min
Views1.8K
Для ускорения Zend Framework очень действенен такой финт: собираем все классы, которые нам нужны, в один фаил, а потом включаем eAccelerator и инклудим его в самом начале. Один фаил + еАкселератор круче, чем много фаилов.

Под катом — рассказ, как я это сделал. Это не самое умное, лучшее и красивое решение, поэтому я рад послушать ваши советы и замечания. В общем, топик этот — ради ваших советов и замечаний — тех, что по делу, а не по поводу всякой херни типа орфографических ошибок. Спасибо!

Читать дальше →
Total votes 34: ↑19 and ↓15+4
Comments41

Интересный подход для кэширования моделей

Reading time3 min
Views1.7K
На днях я получил задание реализовать кэширование в моделях. В обсуждениях с коллегами родилась довольно интересная, на мой взгляд, идея, которую я бы хотел выставить на ваш суд.
Читать дальше →
Total votes 41: ↑26 and ↓15+11
Comments55

jQuery плагин для обработки событий online/offline

Reading time2 min
Views2.1K
Итак, мне понадобилась поддержка событий online/offline в браузерах(напомню, что согласно черновику
html5 они возникают при появлении/исчезновении соединения соответственно). На данный момент Mozilla и
IE8 эти события поддерживают. А это уже немало.
что получилось
Total votes 47: ↑43 and ↓4+39
Comments30

Nginx + php-fpm на CentOS 5.3

Reading time6 min
Views24K
В этой статье я поделюсь собственным опытом построения веб-сервера, работающего на CentOS 5.3.

Что требовалось:
  • Полностью избавиться от Apache. Сервер должен был выдерживать хорошую нагрузку, распределяя статику и динамику.
  • Нужна была поддержка последней версии libxml, малейшее различие в версиях делало сайт абсолютно нерабочим.
  • Нужен был gzip
  • И еще некоторые особенности, о которых я расскажу в самой статье
Читать дальше →
Total votes 11: ↑6 and ↓5+1
Comments22

Это сделает вас мобильнее

Reading time2 min
Views3.2K
В этом кратком обзоре я рассмотрю несколько сайтов, которые помогут стать вам более мобильными и не зависит от компьютеров, десктопных приложений и различных носителей информации.

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

1. Remember The Milk


image
Читать дальше →
Total votes 91: ↑81 and ↓10+71
Comments125

Вахтёр: на страже системы

Reading time2 min
Views4.1K
«Однажды, в студёную зимнюю пору,
Залили на сервер бэкдорчиков гору...»


Народное админское творчество



Вобщем как то раз на одном из серверов обнаружился php-shell, через который злобные хакеры поломали уютный дневничок™ хорошего человека.
После двухчасового ковыряния в логах Апача нашлась дыра, через которую залили шелл.
Дыру прикрыли, дневничок вернули к жизни из бэкапов, и сели думу думать.
Ну, рассказывай уже, чего удумал...
Total votes 112: ↑107 and ↓5+102
Comments141

Найти соседей на Google Maps

Reading time2 min
Views3.4K
Посмотрел статистику посещения сайта Кафе Ульяновска и понял, что порядка 30% посетителей приходят к нам через поисковик на страницу с конкретным описанием кафешки, получают нужную информацию и уходят восвояси.
«Непорядок» решили мы и поставили новую задачу — отображать на странице кафешки ближайшие заведения.
Читать дальше →
Total votes 17: ↑10 and ↓7+3
Comments36

Capifony. Или деплоим symfony проект через Capistrano

Reading time4 min
Views7.8K
Я уже год программирую на PHP с использованием symfony framework и нахожу в этом истинное удовольствие. Однако, есть некоторые процессы разработки сайта, которые данный фрэймворк не полностью покрывает, да и не обязан =)
Одним из таких процессов является деплоймент или разворачивание и обновление проекта на рабочем сервере. Для выполнения подобной рутинной операции было написано множество скриптов и одним из самых популярных является Capistrano. Он чрезвычайно прост в освоении, совершенен функционально и крайне гибок в настройке, однако, из коробки заточен под деплой RoR приложений, для чего собственно и создавался.
Сегодня я постараюсь вам рассказать как использовать Capistrano для деплоймента symfony проектов.
поехали
Total votes 11: ↑9 and ↓2+7
Comments13

Установка для «чайников»: nginx + php-cgi + mysql + eaccelerator + memcache на Debian 5.0 «lenny»

Reading time7 min
Views78K
Данная заметка является шпаргалкой для новичков в установке нормально работающего комплекса, описанного в заголовке. Все пункты установки протестированы несколько раз на разных vds, поэтому проблем с нехваткой чего-то быть не должно, как это обычно бывает, когда ставишь что-то по мануалам, надерганных из разных источников. Подробно описания настроек и «тюнинга» в заметке нет, т.к. это всё очень индивидуально и требует понимания что, как и зачем делается, а это невозможно охватить в одной даже очень большой шпоре.
Читать дальше →
Total votes 76: ↑56 and ↓20+36
Comments78

В поисках альтернативы Basecamp: обзор PBworks Project Edition

Reading time4 min
Views13K
image
Basecamp не стоит называть инструментом для управления проектами. Даже его создатели это понимают. Basecamp is the leading web-based project collaboration tool — написано большими буквами на официальном сайте этого заслуженного продукта. Basecamp — это инструмент для общения. Вместо электронной почты. Basecamp не измерит рабочую нагрузку на будущую неделю по команде в целом и для каждого работника в частности, и не оценит реальность поставленных сроков. Вместо этого он просто помогает нам обмениваться нужной информацией внутри команды и с нашими клиентами. Поэтому нелепо сравнивать Basecamp, например, с Microsoft Project, или, если говорить об онлайновых решениях, с Copper Project. Эти замечательные продукты решают совсем разные задачи.

К чему эти пространные рассуждения? К тому, что искать альтернативы Basecamp’у следует не в разделе Инструменты для управления проектами, а в разделе Инструменты для совместной работы.

Там нам открывается увлекательный мир вики-движков, в разной степени приспособленных для нужд малого бизнеса. Обычно они весьма страшны на вид и с первого взгляда сложно разобраться, как всё это работает и на какую кнопку первым делом нажать. Внедрение таких вики — дело энтузиастов, свято верящих в силу вики-среды и умеющих заразить этой верой окружающих. Но, к счастью, встречаются и движки с человеческим лицом, доступные для понимания простым людям, вроде нас с вами: Jive SBS, Socialtext, Confluence, PBworks. Вот о последнем продукте и пойдет речь в сегодняшней заметке. А точнее, о PBworks Project Edition. Как нетрудно догадаться по названию, это решение как раз метит в нишу Basecamp’а: организация совместной работы над проектами.

Читать дальше →
Total votes 62: ↑53 and ↓9+44
Comments26

Выравнивание полей формы с помощью CSS

Reading time2 min
Views165K

Задача


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

forms_1

Читать дальше →
Total votes 230: ↑203 and ↓27+176
Comments241

Бэкапим без расходов

Reading time9 min
Views4.5K
image
Бэкапы — это вечная проблема: то объемы данных сумасшедшие, то вообще забываешь про них. В своем предыдущем проекте dvice.ru (он пока закрыт, так что без ссылки) я допустил досадную ошибку в самом начале его запуска. Я написал небольшой крон, который в 12 часов ночи удалял всех неактивированных пользователей, зарегистрировавшихся больше 24 часов назад. Но я ошибся в запросе и потерял данные пользователей, которые зарегистрировались до первого запуска этого запроса. Слава Богу, у меня были все данные в сессиях, поэтому я восстановил всех тех, кто логинился и ставил галку на чекбоксе — запомнить меня. Обидно и глупо, но на ошибках учатся. Поэтому перед запуском своего крайнего проекта — inwhite.ru, я сделал систему бэкапов.

Бэкапы делались и копились, старые удалялись, и все было отлично. Пока внезапно я не понял, что страдаю полной фигней. Бэкапы-то я делаю, а вот забирать — не забираю. Объемы данных, лежащих на моем VPS, не такие большие, но по почте тоже особо не наотправляешься. Покупать еще один VPS и складывать туда все по FTP/SVN/CVS/SSH не особо хочется, хотя тоже вариант интересный.

До вчерашнего дня я был озадачен мыслью: а как все же забирать эти данные? И вот вечером меня осенило.
Читать дальше →
Total votes 101: ↑88 and ↓13+75
Comments41

Личный тайм-менеджмент

Reading time9 min
Views93K
Почитав недавний топик про лягушек я понял, что Хабрасообщество не очень хорошо ориентируется в вопросах тайм-менеджмента и многие никогда не занимались построением своей тайм-системы.

Поэтому я попробую исправить этот недочёт.

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

Welcome!

Читать дальше →
Total votes 194: ↑177 and ↓17+160
Comments155

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity