Pull to refresh
8
0
crazyprog @crazyprog

User

Send message

MySQL: Хранимые процедуры и динамический SQL

Reading time1 min
Views51K
Если кто-либо из вас пытался сделать вроде бы очевидную вещь, а именно, создать sql запрос внутри процедуры передав ей имя таблицы, пользователя и т.п., то скорее всего натыкались на ошибку, о том, что нельзя использовать динамический sql.

SET @mytable='users';
SELECT * FROM @mytable;

Такая конструкция работать не будет. А что же делать, чтобы она заработала?
Читать дальше →

LDAP для интернет-проекта

Reading time5 min
Views18K
Ссылки на остальные части: вторая, третья, четвертая, пятая

Наверное все согласятся с тем, что для начинающего интернет-проекта необходима централизованная система AAA (Authentication, Authorization, Accounting): множество пользователей, куча боевых серверов, чуть поменьше серверов разработки, svn, админки, etc…
Передо мной тоже встала такая необходимость и я хочу рассказать о том что у меня получилось.
Итак, что нам потребуется установить и настроить:
  1. OpenLDAP, естественно с репликацией
  2. Бэкап LDAP'а — именно вторым пунктом, можно первым (-;
  3. phpldapadmin, планирование групп и шаблонов
  4. авторизация для админок — Apache HTTPD mod_ldap
  5. авторизация для svn (+sasl)
  6. авторизация для доступа по ssh — pam_ldap

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

Автоматическая загрузка библиотеки ExtJS по требованию.

Reading time5 min
Views2.2K
Сегодня мы поговорим о возможности динамической предзагрузки библиотеки по требованию. Изначально, для использования фреймворка, Вам надо на странице подключать сначала стилевой файл, потом адаптер, которые реализует основной функционал, а в случае использования другой AJAX-библиотеки в качестве основы, сначала и ее дистрибутив. И только потом уже основной файл ExtJS, либо его debug-версию на этапе разработки. Конечно, сократить время загрузки поможет объединение всех файлов в один, сжатие gzip и другие методики. Но…

Но что, если задача достаточно узкая, например, я столкнулся с ней, когда некоторый веб-сайт использует ExtJS для предоставления формы добавления и редактирования материалов. При этом процесс редактирования он достаточно редкий, в смысле что не каждый пользователь постоянно будет им пользоваться, кроме этого, работа с сайтом в режиме без регистрации отличается только отсутствием возможности редактирования. Загружать же сразу все файлы, а это почти 600 Кб, пусть даже тщательно собранной версии специально под проект, с учетом его потребностей, это достаточно накладно, и не хотелось бы грузить их всем пользователям.
Читать дальше →

Основы BASH. Часть 2

Reading time6 min
Views373K
Основы BASH. Часть 2.
Извиняюсь за такую большую задержку между статьями, но сессия дает о себе знать в самый неподходящий момент :)
Всем спасибо за замечания, критику и дополнения, которые были озвучены в комментариях к прошлой статье.
Эта часть, как и обещал, будет посвящена циклам, математическим операциям и использованию внешних команд.
Начнем.
Читать дальше →

Реально работающие ресурсы, доступные софтверным предпринимателям в России

Reading time4 min
Views986
Часто приходится слышать, что, мол, если предпринимателю нужна поддержка, это значит, что он плохой предприниматель.
Работая в российском Майкрософт и занимаясь проектами по поддержке технологического предпринимательства, я общаюсь со многими предпринимателями, в том числе с теми, кто многого добился и получил всеобщее признание. И четко вижу, что их отличает в первую очередь то, что они никогда не упускают ни единого шанса получить все, что может помочь их бизнесу.
Поэтому я решил опубликовать топик, посвященный тому, какие ресурсы/программы, имеющиеся сейчас на российском рынке, могут _реально_ облегчить жизнь софтверному стартапу. Опишу те, что известны мне (как предоставляемые Майкрософт и нашими партнерами, так и не имеющие отношения к Майкрософт). А сообщество, надеюсь, дополнит.
Читать дальше →

Представляем десятое измерение

Reading time1 min
Views6.3K
imageЛюбители квантовой физики и сайта TED.com наверняка слушали доклад Брайна Грина про теорию суперструн, в котором упоминалось, что данная теория будет работать только при наличии целых 11 измерений!

Эх… А ведь нам даже четвертое-то измерение представить довольно трудно, а вы про какие-то десять говорите… Но, несмотря на это, мы попытались перевести и переозвучить видеоролик, который интересно и доходчиво объясняет, как же можно представить себе аж десятое измерение!

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

Ищу идею: Готовы вложить $10 000 на preseed

Reading time1 min
Views1K
Бизнес-инкубатор “Полигон”, в духе “гаражных” бизнес-ангелов, готов выделить от 100 до 350 т.р. на посевное финансирование вашей идеи. Заодно посмотрим, действительно ли аудитория Хабра настолько серьезна, насколько выглядит.

Что нужно сделать:
1) скачать и заполнить “резюме идеи”: http://inklab.ru/idea_resume.doc
2) выслать по адресу idea@inklab.ru
3) 2-3 дня подождать ответа
4) если ответа нет — гневно его потребовать

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

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

Удачи. Мы в вас верим.

PS. Все вопросы — в комментарии, я отвечу. На мыло высылайте только резюме.

UPD. В принципе, можно задать некоторые условия. Не максимум, не минимум, а просто некоторые нерушимые условия:
1. Автор должен иметь понимание, КАК его идея будет приносить деньги.
2. Автор работает в поте лица, как и мы. Он — основной двигатель. Модель, где нужно «просто нанять 5 человек» — не подходит.
3. Никакого МЛМ, социальных сетей «как одноклассники, только другие», сайтов по перепродаже товаров. Идеальный проект — новая технология, алгоритм, реализуемая в онлайн и оффлайн вариантах.
4. Никаких нелегальных схем. Все по-белому, все расчеты — с налогами, весь доход — проводимый по бухгалтерии.

jQuery: Вставляем Twitter куда угодно — 2

Reading time1 min
Views1.3K
Так как хабрасообщество заинтересовалось вставлянием твиттера куда угодно, хочу предложить еще более гибкий и универсальный способ. Конечно, для форумов и last.fm :) он не подойдет, но зато для блогов и персональных страничек — самое оно.
Итак, tweet.seaofclouds.com — плагин для jQuery, который выводит любое количество любой учетной записи твиттера в любом виде.

Возможности:

* маленький размер, быстрая скорость загрузки
* совершенно не препятствует скорости загрузки страницы
* можно отобразить даже 100 твиттов, т.к. используется twitter search api
* аватарки есть, да
* можно даже выводить твитты с нескольких учетных записей
* автоматически подставляются ссылки типа @replies to users’ twitter page
* кликабельные URLы тоже автоматически
* кликабельные теги #hashtags
* полный контроль над визуальной составляющей с помощью css

Пример можно посмотреть на странице разработчиков или у меня в блоге.

Google AdSense for Domains — теперь и в России!

Reading time1 min
Views2.2K
В декабре прошлого года компания Google анонсировала расширение сервиса AdSense for Domains — способа монетизации доменных имен на основе AdSense. До этого данный сервис был доступен только узкому кругу партнеров с очень высокими показателями трафика. С декабря 2008 года сервис был предоставлен всем желающим, но временно ограничен географически (им могли воспользоваться Веб-издатели только из Северной Америки).

На днях сервис AdSense for Domains стал доступен в России (полагаю, что и во многих других странах за пределами Северной Америки).
Читать дальше →

ExtJS, Adobe AIR и технология PixelBender — красиво, ничего не скажешь!

Reading time3 min
Views1.4K
animsДавно не появлялось чего-то новенького об ExtJS, видимо все готовятся к анонсированной конференции (я уже писал об этом), а те, что останется в уютных домашний креслах — к анонсу ExtJS 3.0. Но сегодня заглянув в официальный блог компании, я нашел интереснейшую заметку. Как уже известно, в последние версии ExtJS начали активно внедрять поддержку платформы Adobe AIR, что не может не радовать, ведь именно симбиоз этих двух потрясающих инструментов может дать, в умелых руках, конечно, просто отличные результаты.

В Flash 10, а значит и в Adobe AIR 1.5 в его именно флешевую часть была внедрена интересная технология, по сути, полного управления всем отображаемым на экране — PixelBender. При помощи специального языка программирования GLSL (OpenGL Shading Language) разработчик может описывать операции над пикселями, при этом программа может быть применена не только к картинке, а к любому флеш-объекту, в том числе и целому окну или веб-странице. Кстати да, вы не ослышались, речь идет именно об OpenGL, а это нас приближает вплотную к возможности создать серьезные графические приложения, оперируя только обычными для веб-разработки инструментами. Если кто разбирается в 3D, то эта технология очень близка к пиксельным шейдерам, которые также программируются на своих языках.
Читать дальше →

Zend выпустила бета-версию собственной серверной сборки

Reading time1 min
Views1K
imageКомпания Zend пополнила свой список коммерческих продуктов для php-девелоперов.
Zend Server — это серверная сборка, включающая в себя веб-сервер, собственно php, несколько инструментов от Zend (Optimizer, Debugger и т.д.), Zend Framework, средства для мониторинга и различные СУБД.

Проект находится в стадии бета-версии, доступен для Windows и Linux. Есть бесплатная версия Community Edition.

На данный момент Zend Server включает в себя:
  • Apache 2.2.8 (либо использует предустановленный IIS)
  • PHP 5.2.8 и пачку расширений для него
  • Zend Optimizer+
  • Zend Guard Loader
  • Zend Debugger
  • Zend Cache
  • Zend Java Bridge
  • Zend Monitor
  • Zend Data & Page Cache
  • Zend Download Server
  • Oracle OCI Driver
  • Zend Framework 1.7.4
И в качестве дополнительных опций инсталлятор скачивает:
  • phpMyAdmin
  • IBM DB2 RTCL
  • MySQL Server
  • MS SQL Native Client

Регистрация в качестве Индивидуального предпринимателя для freelance'ера: Зачем и как?

Reading time3 min
Views17K
После моей статьи «Freelance: ожидания, реальность, признание» сразу несколько человек обратилось ко мне с вопросом о юридических проблемах в работе freelance'ра. Скажу сразу, я далеко не юрист, но в свое время оформлял себе ИП, именно для freelance'а, а потому имею опыт, и некоторые знания в этой сфере, и могу ими поделиться. Хотя конечно мои выводы могут быть ошибочны, и у юристов эта статья наверняка вызовет легкую улыбку (или приступ раздражения), скажу еще раз, я просто хочу поделиться опытом, и рассказать как я регистрировался в качестве предпринимателя, и что мне дала эта бумажка.
Читать дальше →

Аренда сервера для стартапа

Reading time2 min
Views26K
Недавно озадачился вопросом поиска выделенного сервера для своего стартапа. После просмотра российского рынка пришел в ужас и перевел взгляд на зарубежный, парой интересных предложений которого и хочу поделиться.

К примеру аренда четырехядерного AMD Opteron 2344 HE (1.7 GHz), 4Gb RAM, 2x250GB HDD обойдется в $100, что сравнимо с арендой порта и места в стойке под сервер у нас в стране.
Читать дальше →

Регистрация ООО — «одно окно». Нюансы

Reading time5 min
Views1.1K
Итак, разберем по частям регистрацию компании на примере общества с ограниченной ответственностью (ООО) на упрощенной системе налогообложения. В подробности вдаваться не буду, описания этого процесса можно найти, а вот некоторые нюансы можно узнать только из своего, блин, жизненного опыта. Подробнее:
Нужно подать документы в ФНС № 46 (список документов в яндексе). Мой совет — запишитесь на подачу, узнайте телефон (www.n46.ru) и запишитесь. Вы сэкономите кучу времени и нервов.
Через неделю вам отдадут документы в составе: 2 свидетельства, копии устава и учредительного договора, что-то еще и вот тут начинается самое интересное.

Поехали!

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

Закрепляем jQuery — 25 отличных советов

Reading time19 min
Views168K
Перевод отличной статейки. Думаю, будет полезна как новичкам, которые только приступили к использованию jQuery, так и тем, кто уже какое-то время с ним работает. А кого-то, возможно, заставит глянуть эту чудесную библиотечку. Многие советы имеют отношение не только к jQuery, но и к JavaScript в целом. Лично для меня была весьма и весьма познавательной, посему и захотелось донести это «до масс». Перевод не дословный, но передающий смысл и максимально адаптированный к русскому языку.

Далее все написано от имени автора оригинальной статьи.

Введение


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

Я не эксперт в jQuery. И даже не претендую, поэтому, если встретите ошибки, смело поправляйте меня и вносите предложения по улучшению (поправлять и присылать поправки нужно автору статьи, а не перевода — зам. пер.).

Я называю себя «среднестатистическим» пользователем jQuery и я думаю, что всем остальным будет интересно почитать и что-нибудь почерпнуть из «фишек», «трюков» и техник, которые я освоил за последний год. Статья получилась куда длиннее, чем я предполагал изначально, так что в самом начале я привел «содержание» для более удобной навигации и возможности при желании пропустить не интересующие моменты.

Содержание


  1. Загружайте фреймворк с Google Code
  2. Используйте «шпаргалку» (cheat sheet)
  3. Соединяйте все ваши скрипты и уменьшайте размер файла
  4. Используйте возможности Firebug для ведения логов
  5. Минимизируйте операции выборки в пользу кэширования
  6. Сводите манипуляции с DOM-деревом к минимуму
  7. Оборачивайте все в единый элемент, когда речь идет о любой вставке в DOM
  8. Используйте «id» вместо классов, где это возможно
  9. Задайте контекст своим селекторам
  10. Используйте последовательности вызовов методов с умом
  11. Научитесь правильно использовать анимацию
  12. Научитесь назначать и делегировать события
  13. Используйте классы для сохранения состояния
  14. Еще лучше — используйте встроенный в jQuery метод data() для сохранения состояния
  15. Пишите собственные селекторы
  16. Подготавливайте HTML и модифицируйте его, когда страница загружена
  17. Используйте «отложенную загрузку» (lazy loading) для определенного контента для выигрыша в общей скорости и преимуществ для SEO
  18. Используйте служебные функции jQuery
  19. Используйте «noconflict» для переименования глобального объекта «jquery», когда используете его с другими фреймворками
  20. Как узнать что картинки загружены?
  21. Всегда используйте последнюю версию
  22. Как проверить, что элемент существует?
  23. Добавляйте класс «JS» в элемент «html»
  24. Возвращайте «false» для отмены поведения по-умолчанию
  25. Короткая запись для события готовности документа


Rock'n'Roll!

Социальные аспекты руководства, или как же всё таки «пинать» сотрудников. 2 года спустя.

Reading time6 min
Views6.9K
Статья про «пинание», «закручивание гаек» и контроль задач, разные стили общения и руководства, про сложности делегирования, самомотивацию сотрудников.

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

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

99.77 КБ

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

Симптомы: падение дисциплины, низкая скорость разработки, потеря энтузиазма.
Свой же стиль руководства я бы теперь назвал «попустительским».

И вот, как только мое терпение кончилось, и я собрался на следующий день «закрутить как можно туже гайки», я натыкаюсь на вашу статью. Это было как бальзам на больное сердце. Я сразу с великим облегчением отказался от идеи пинания, но понимаю, что делать все равно что-то надо, а с чего начать не знаю? Хотелось бы вашего совета.

Ответ: В 2 словах это,
— Вносите элементарную организованность в процесс. Это не «пинание» — это ваша работа.
— Разный стиль. С крутыми – искренне, с молодежью – дружелюбно, с «примадоннами» – сухо
— Используйте эмоции для «поджигания» людей. Прочитайте Возьмите эмоции с собой
— Используйте 4 модели руководства исходя из задачи и человека. Это вопросы — Может? Возьмет?
— Готовьтесь к тому, что у вас будут проблемы с Директивным стилем и Делегированием.
— Стремитесь к тому, чтобы у вас в команде были только люди с сильной самомотивацией, для которых ваша работа это хобби, страсть, любимое дело. Помогите разобраться в себе другим людям.
— Сплачивайте команду: cобирайте в одной комнате, проводите общие собрания, ставьте общие достойные цели.

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

Организация видеотрансляции на сайте

Reading time4 min
Views20K
Всем привет.

Боремся с пробками вместе


В рамках этого проекта в г. Красногорск, мы решили установить пару сетевых камер и сделать удобным просмотр потокового видео. Забегая вперед, результат можно посмотреть на нашем сайте или с мобильного телефона по wap www.ventumnet.ru/camera


Читать далее

Загрузка последнего сообщения из Twitter-блога определенного пользователя

Reading time2 min
Views747
Написал небольшой скрипт, который получает последнее сообщение из Twitter-блога указанного пользователя. Имеет функцию кеширования — сохраняет сообщение в текстовом файле, что позволяет избежать необходимости каждый раз загружать и обрабатывать RSS-ленту микроблога. Через определенный промежуток времени кеш обновляется из web.
Читать дальше →

Бесплатные лицензии. Не хватает рук.

Reading time2 min
Views1.1K
Доброго времени суток, уважаемые хабролюди.

Позвольте представить хабросообществу наболевшую идею. Выкладываю «as is», не претендуя на оригинальность. Нахожусь в поиске людей, готовых подхватить идею и довести до ума.

Предыстория. Бесплатные лицензии

Думаю, многие из Вас хотя бы раз получали (или знают / слышали о схемах получения) бесплатную лицензию на ПО (shareware). Кто-то слал отчеты об ошибках, предложения и пожелания, действительно креативные мысли и получал милость разработчиков, кто-то участвовал в каких-то кампаниях (начиная от улучшения качества ПО, заканчивая конкурсами на лучший промо-стих). Часто из «просто интересно», иногда потому что софт действительно хорош, нужен, но на данный момент нет денег на его приобретение — почему бы не поработать тестером в надежде на легальный ключ?

Идея пришла ко мне, когда в очередной раз обратил внимание, как знакомый новосибирец (привет, Новосибирск!) постоянно входит в контакт с разработчиками ПО по всему миру, действительно вносит вклад в развитие продукта и получает заветный ключ (либо не получает). Каждый раз он налаживал контакт (иногда ожидание полноценного воссоединения разумов длилось полгода, иногда несколько суток), сам решал с какой стороны зайти (разработчики не маркетологи, не всегда видят бонусы), окучивал, добивался своего.

Итак...

Information

Rating
Does not participate
Location
Зеленоград, Москва и Московская обл., Россия
Registered
Activity