Pull to refresh
12
0
Igor Polyakov @ihoru

Python/Django Developer

Send message

Особенности условных конструкции со строками в PHP

Reading time3 min
Views3.6K
На Хабре часто обсуждается какой язык лучше для написания безопасных приложений. При этом часто отмечается, что PHP спроектирован таким образом, что начинающий разработчик будет допускать ошибки, приводящие к дырам безопасности. В этом хабрапосте я хочу рассказать о, на мой взгляд, нелогичном поведении операций сравнения, операторов if и switch при работе со строками. Опытным разработчикам данные особенности известны, но решил все же собрать их в одном месте. Думаю пост будет полезен начинающим разработчикам и тем, кто работает в PHP, имея опыт программирования на других языках.

Что есть истина?

Какие строки истинны? Рассмотрим пример:
Читать дальше →

Менеджер паролей в Firefox. Синхронизация на нескольких компьютерах

Reading time2 min
Views7.2K
Задача:
Есть добрая сотня аккаунтов на разных сайтах. Требуется свести к минимуму введения логина/пароля (одним кликом), при этом:
— предусмотреть способ для синхронизации данных с аккаунтов между рабочим и домашним компьютером
— соблюсти все меры безопасности, во избежании кражи паролей
— решение должно быть кроссплатформенным
Итак, моё решение этой задачи.

Ubuntu+Aptana=… Установка Aptana в картинках

Reading time3 min
Views11K
Здравствуйте.
Исполняю обещаное, описываю установку Aptana на Kubuntu 8.04.
Что такое Aptana?
На официальном сайте разработчики заявляют:
«Aptana Studio — это мощная среда разработки веб-страниц и веб-приложений. Присутствует поддержка для разработки JavaScript, Ruby on Rails, PHP с использованием Ajax, DOM, HTML, CSS. Кроме того, предоставляются плагины, позволяющие разрабатывать приложения для Adobe AIR и Apple iPhone.
Для искушенных веб-разработчиков пакет Aptana Studio Pro предоставляет дополнительные преимущества производства продуктов, а также превосходную поддержку.
Aptana Studio 1.1 также имеет встроенную версию сервера Ajax от Aptana — Aptana Jaxer.»
Вкусно?
Устанавливаем

Как повысить свою продуктивность в несколько раз?

Reading time1 min
Views6.1K
Вероятно каждый из нас сталкивался с тем, что проходят дни, недели, а проект не продвигается, нарушаются сроки, коллеги начинают проявлять недовольство, появляется постоянный стресс.

Хочу поделиться эффективным способом резко повысить свою продуктивность.
Читать дальше →

Подборка образовательных слайдов

Reading time2 min
Views1.3K
Мне было интересно почитать, наверняка кому-то тоже пригодится.
Дальше больше

Linux help

Reading time1 min
Views743
А куда вы обращаетесь за помощью когда заходите в тупик?
Лично я знаю про lafox.net и ru_root в ЖЖ

Сейчас вот зашел в тупик с DVB под Gentoo и ни там, ни там помочь не могут.

Делимся ссылками.

upd: это может быть даже сервис в котором помогут за деньги
upd2: свою проблему я решил :)

Ajax на мобильном браузере или мобильный Ajax (с примерами)

Reading time5 min
Views5.7K
Ajax, судя по тенденциям, всё больше овладевает умами девелоперов. Особенно активно сейчас начинает развиваться Ajax для мобильных браузеров. Об этом собственно и поговорим.

Технология Ajax очень востребована пользователями мобильных устройств. Причина в общем-то на поверхности. Снижается потребление трафика и трата времени. Ведь подгружаются всего некоторые части страницы, а не она вся (если не в теме, что такое Ajax — рекомендую посетить Wikipedia — Ajax). Соответственно серфинг сети с мобильного устройства становиться более качественным, быстрым и менее раздражающим. Более того, он обходиться дешевле.
Читать дальше →

Заворачиваем Amarok на MySQL

Reading time4 min
Views1.8K
Или софтверная зоофилия


Amarok — на мой, взгляд — гениайнельший из всех ныне существующих аудиоплееров, снабжён не менее гениальной музыкальной библиотекой.(Именно переход на линукс и амарок приучил меня пользоваться этим инструментом музыкоорганизации, винамповская и вин-медиаплеерская либари просто таки пугали своей непонятностью и несуразностью.) Как известно, вся эта музыкальная библиотека крутится на определённой базе данных. В стандартной конфигурации, это SqlLite. Такая чудненькая легковесная БД, не требующая ни пользователе-паролей, ни каких-либо настроек, просто включил и оно себе работает. Но, у нее есть один серьёзный недостаток: она медленная, нет-нет, не то слово, просто таки тормозная!
Так как же нам быть, и что с этим делать?

Верстка без float'ов

Reading time2 min
Views8.8K
Существует много разных способов css разметки. Некоторые базируются на абсолютном позиционировании, другие используют float'ы. Первый метод плохо поддерживает «резиновость» макета, тогда как второй это неплохой способ разметки.

Но, как и многие мощные инструменты, float'ы имеют свои изъяны. Для начала, верстка на основе float'ов не такая простая к пониманию, а также float'ы есть источником многих багов (в основном в ИЕ), что делает их не идеальным вариантом в погоне за кроссбраузерностью.

Итак, речь далее пойдет о
семантически корректном методе верстки

Linux на ладони

Reading time3 min
Views3.8K
Давным-давно линукс для обычного пользователя windows был чем-то заоблачным и непонятным, а уж линукс на мобильных устройствах тем более. Конечно, многие продвинутые помнят о Sharp Zaurus, но основная масса округляет глаза и думает что это консоль аля дос и все. Увы, это не все :) Когда я случайно забрел на сайт, посвященный портированию линукса на различные платформы наладонников, то решил попробовать «поженить» свой кпк и один из дистрибутивов мобильной ос. Надо же как-то использовать пылящееся на полке барахло :)
И вот что получилось

Установка и настройка VPN сервера с биллинговой системой AbillS на Ubuntu 7.10

Reading time7 min
Views18K
Наверно всем известно, что ситуация с ценами на интернет в Москве и по России разительно отличается.
Для сравнения в Тольятти (Самарская область) безлимитный доступ на скорости 512кбит/с на месяц обходится в сумму 2300р.
В столице за эту же сумму можно наверно взять уже 20Мбит.

Так вот, как бы это дико не звучало, но я собираюсь, для уменьшения расходов, делиться этим каналом (512кбит/с) еще с несколькими людьми в локальной домовой сети =)

Провайдер дает доступ к интернету через свой VPN сервер.

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

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

Конфигурация сервера: Pentium III 1000MHz, SDRAM 512Mb

Для уменьшения нагрузки на серве, было решено не использовать сжатие и шифрование, в связи с этим в клиентах требуется дополнительно снять галочку «требовать шифрование» в настройках VPN в Windows

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

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

Будущее CSS

Reading time3 min
Views1.8K

В связи с участившимися сообщениями о том, что в CSS хотят добавить переменные, анимацию, трансформацию и прочая, хотелось бы немного отстраненно порассуждать на эту тему.
CSS, которому уже 12 лет, изначально был задуман и разрабатывался как средство для описания внешнего вида документа. С тех пор утекло много воды и технология претерпела значительные изменения и дополнения. На данный момент, рабочая версия по стандарту W3C, принятая в 2006 году — Уровень 2.1. Уровень 3 находится в состоянии разработки (есть черновик), и ожидается с нетерпением многими разработчиками.
Вокруг будущего CSS ходит много слухов и предположений, коротые муссируются и множатся, выливаются в дискуссии и споры. Ведь по сути, если хотя бы половина предлагаемых изменений будет осуществлена, то CSS превратится в (полноценный?) язык программирования визуальной составляющей веб-документов.
Читать дальше →

Одна голова хорошо, а десять лучше? ч.2

Reading time3 min
Views1.6K

Методы выработки коллективных решений


Первая часть

«Дельфи»- метод или метод «дельфийского оракула»


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

Новое в CSS 3: анимация, трансформация, переменные.

Reading time2 min
Views6.1K
Что-то мне кажется, что в этот раз с идеями внедерения новых правил разработчики перестарались…
Dave Hyatt, Dean Jackson и Chris Marrin (все трое работают в Apple) предложили внедрить в CSS 3 поддержку создания анимации, трансформацию объектов, их изменение с  течением времени и ввести css-переменные.
Читать дальше →

А так ли нужен static?

Reading time3 min
Views20K
Довольно часто в последнее время читал разные статьи на тему оптимизации, во многих из них писалось о том, что если функция используется как статическая, то с точки зрения оптимизации лучше перед ее объявлением написать модификатор static.
Читать дальше →

Одна голова хорошо, а десять лучше?

Reading time3 min
Views1.9K

Методы выработки коллективных решений


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

Кастомайзим INPUT FILE.

Reading time3 min
Views68
Когда-то давно видел подобное действо на хабре ( спасибо elfiki за линк habrahabr.ru/blog/la_france/24341.html ), но, недавно, пришлось столкнуться с этим самому. Старое решение мне не понравилось количеством javascript, решил попробовать реализовать, по возможности, с минимальным JS. Пара просмотренных воркэраундов не подошла, так как задать размер в пикселях для input file мне не удалось (если это вообще реально), а даже при фиксированном шрифте в разных браузерах «пиксели», почему-то, «разные» получились. Особенно ИЕ удивил, уместив в DIV размером 400px два дива размером по 200 и еще половину третьего.

в итоге получилось примерно такое решение:



Итого, мое доработанное, может кому пригодится.

продолжение дальше

40 советов по оптимизации вашего PHP-кода

Reading time4 min
Views57K
Всем доброго времени суток.

Перевод заметки "40 Tips for optimizing your php code". Автор — Reinhold Weber.

  1. Если метод может быть статическим, объявляйте его статическим.
  2. echo быстрее, чем print.
  3. Передавайте в echo несколько параметров, вместо того, чтобы использовать конкатенацию строк.
  4. Устанавливайте максимальное количество проходов ваших циклов for до цикла, а не во время его выполнения.
  5. Удаляйте свои переменные для освобождения памяти, тем более, если это большие массивы.
  6. Остерегайтесь магических методов, таких как __set, __get, __autoload.
  7. require_once дорого обходится.
  8. Указывайте полные пути в конструкциях include/require, меньше времени будет тратится на поиск файла.
  9. Если вам необходимо определить время, когда скрипт был запущен, используйте $_SERVER[’REQUEST_TIME’] вместо time().
  10. Старайтесь использовать strncasecmp, strpbrk и stripos вместо регулярных выражений.

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

Конвертируем видео для iPod из-под Linux

Reading time1 min
Views897
Многие пользователи iPod под Linux рано или поздно сталкиваются с проблемой конвертирования видео под этот замечательный девайс. Стандартных средств для этого нет.
Здесь я решил поделиться своим полуночным опытом

Information

Rating
Does not participate
Location
Таиланд
Works in
Date of birth
Registered
Activity