Pull to refresh
1
0
Дмитрий Энтелис @DmitriyEntelis

User

Send message

Subversion: cлияние переименований файлов

Reading time3 min
Views3.5K
— Зачем ты, Белка, летишь за мной, Кабаном?
— Не знаю, Кабан! Приказ Хорька. Как понял? Приём.
— Ни хера не понял! Какого Хорька, Белка? Я Кабан. Кто такой Хорёк? Кто это? Приём.
— Кабан, ты дятел! Как понял? Приём.
— Понял тебя, Белка. Я — Дятел. Повторяю вопрос про хорька. Кто это?
— Кабан, сука, ты всех заманал, лети вперёд молча! Конец связи.
Виктор Шендерович

Как известно, Subversion не умеет отслеживать переименования файлов. Согласно документации, команда svn move равносильна svn copy с последующим svn delete. Такое поведение вызывает большие проблемы при слиянии веток. Рассмотрим способы их решения.
Читать дальше →

Формы для людей

Reading time6 min
Views3.6K
Сейчас мы с вами поговорим о веб-формах. Я с высоты собственного невысокого полета успел накопить кое-какой опыт и жажду непременно им поделится. Все о чем пойдет речь ниже не является черепахой на которой стоят слоны. Речь пойдет о скотче на котором держится черепаха.

Итак…

Первое – Откуда ноги?


Уважаемый друг, для начала, я бы посоветовал отложить средства для рисования и верстки форм. Начнем мы с белого листа. И первым, чем лучше всего руководствоваться, это ряд вопросов самому себе, менеджеру проекта, разработчикам и прочим людям, которые принимают участие в данном эпическом созидательном действии.
  • Для кого делается форма?
  • Какая информация нужна, что бы понять и заполнить форму?
  • Каков результат заполнения формы?
  • Какие у нас есть возможности?

Подробности небольшого расследования

Favicon для любого сайта в PNG

Reading time1 min
Views8.2K
Уже в нескольких проектах была необходимость показывать иконки для различных доменов (например, рядом с какой-нибудь ссылкой). Для этого был написан на PHP механизм, добывающий по требованию иконку со страницы по некоторому набору правил (так же, как её добывают браузеры), конвертирующий картинку в png и сохраняющий в специальном месте. Периодически эти иконки обновлялись.

После того, как я в третий раз скопировал этот механизм в очередной проект, я решил создать для себя (и других) сервис, который отдавал бы по запросу иконку в формате png для любого домена. Но ему не суждено было родиться, потому что я случайно наткнулся на аналогичную функциональность, реализованную гуглом. Достаточно набрать адрес www.google.com/s2/favicons?domain=habrahabr.ru и получишь сконверченую в PNG иконку этого домена. Решил, что многим это будет полезно — используйте :)

UPD: нашлись баги. конвертер не умеет работать с прозрачным фоном, а также грузит только те иконки, которые лежат в /favicon.ico, игнорируя мета-теги :( Так что мой сервис, видимо, появится :)

Файловый менеджер для FCKeditor — FCKfsys 2.0 (PHP)

Reading time2 min
Views2.7K
Эта статья продолжение первого варианта файлового менеджера.

FCKfsys — файловый менеджер для визуального редактора для web FCKeditor. Мне в FCKeditor все нравится, кроме файлового менеджера. Так что надо както исправлять это самому.
Подробная информация о плагине на моем сайте и там же можете посмотреть пример работы.

Выглядит файловый менеджер с превьюшками:

Вид FCKfsys 2.0

UPD: Доработки сделаны, теперь надо над интерфейсом поработать. По моему ориентир должен быть на Windows-проводник, чтобы было привычно. То есть немного причесать надо.
Читать дальше →

Тонкости свойства disable у кнопок формы, отправляемой на сервер (Как делать кнопки неактивными)

Reading time3 min
Views71K
Уже неоднократно на хабре (вот в этой публикации и в этой) ставился вопрос о том, что было бы хорошо кнопкам формы, отправляемой на сервер, ставить свойство disabled = "disabled".

Однако, до сих пор так и не разобрались, зачем это нужно и как все-таки это делать. Казалось бы, что может быть проще и о чем здесь вообще можно разговаривать, ан нет — на поверку все оказалось не так тривиально. Сразу замечу, что нижеследующие рассуждения применимы к обеим типам форм: как отправляемым через обычный SUBMIT, так и с помощью AJAX.
Читать дальше →

jQuery Alert Dialogs — замена стандартным функциям Alert(), Confirm() и Prompt()

Reading time2 min
Views39K
image
Плагин jQuery Alert Dialogs призван заменить основную функциональность стандартных предупреждений JavaScript, alert(), confirm(), и prompt() функций. Они полностью настраиваются с помощью CSS (это позволит выглядеть вашему сайту гораздо более привлекательно). И вы также можете настроить пользовательский заголовок для каждого диалогового окна.

Эти методы моделируют обычные модальные диалоговые окна. Они автоматически изменяют свое положение при изменении окна браузера. Если включить jQuery UI Draggable плагин, то окна можно перемещать, перетаскивая их за заголовки. В отличие от стандартных JavaScript функций, вы можете использовать HTML в сообщении. Например, чтобы задать переход на новую строку, вы можете использовать либо \n, либо < br / >.
Читать дальше →

Через год

Reading time1 min
Views1.1K
Может это и правильно, но как-то неожиданно.

select
'2008-02-27' + INTERVAL 1 YEAR, -- 2009-02-27
'2008-02-28' + INTERVAL 1 YEAR, -- 2009-02-28
'2008-02-29' + INTERVAL 1 YEAR, -- 2009-02-28
'2008-03-01' + INTERVAL 1 YEAR; -- 2009-03-01


UPD По результатам обсуждения резюмирую:
а) это стандартное поведение и других СУБД и более того
б) данный способ расчета годового периода узаконен и применяется в офлайн.

Скрипты Python против Bash

Reading time4 min
Views120K
Не секрет, что в плане автоматизации каких-либо простых действий и тот, и другой вариант скриптов — мощное орудие. Прочел я эту статейку, и подумал — а чем мы хуже? Возьму, да и опишу, как автоматизировать простые консольные действия с помощью python-скриптов, даром что это тема довольно широкая.
Интересно?

Русские имена приложений в Django

Reading time2 min
Views2.7K
Сия заметка, плод трудов хабра-человека sevenov, ему и почёт, дабы в будущем ему хватило кармы оставить свой след на хабре самому ;)

~~~~

Сегодня возник вопрос о том, как сделать вот так:

Django App Names

После получасового гугления наткнулся на несколько тикетов на code.djangoproject.com (ссылок сейчас не подкину, в истории искать лень). В общем, суть их в том, что нужно переписать чуть ли не половину Django. Немного подумав, я реализовал по своему. Возможно это кто-то уже делал, но на решение я не наткнулся.
Читать дальше →

Видимо django-оттепель началась

Reading time1 min
Views1.8K
Неплохая а совсем даже хорошая новость для отечественных джангистов.
В рассылке джанги это я упомянул, стоит выложить для всех и на Хабр, поскольку у нас тема django-хостингов актуальна.
Недавно по различным вопросам переписывался с суппортом хостинга РУ-центра (hosting.nic.ru) и узнал, что на тарифах 201, 301 уже установлен django, текущая установленная версия 0.96
Пока никаких анонсов данного факта не производилось, так что вы получаете свеженькую инфу :)

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

Предлагаю выкладывать в блог для общественности подобные факты о «скрытой» поддержке джанги, с тем чтобы можно было ориентироваться.

ExtJS и хостинг базовых файлов в CDN

Reading time2 min
Views1.9K
Если вы разрабатываете проекты на ExtJS, то наверняка в вашем дереве исходных кодов есть сам дистрибутив библиотеки и вы его подключаете на всех страницах, где используются ее возможности. И храните саму библиотеку также у себя на хостинге. Это, конечно, правильный и простой подход, но имеет свои ограничения. Во-первых, в большинстве случаев именно ExtJS будет самым большим компонентом страницы, ведь его общий объем около 1 Мб, а значит и будет тормозить страницу, пока браузер не загрузит всю библиотеку. Как выход, все рекомендуют настраивать сжатие (например, mod_deflate, хорошо, что браузеров, которые не понимают сжатый контент, теперь почти нет, а у кого есть, тот, как говорится, сам себе злобный буратино), теги кеширования и т.п. Ну и на крайний случай — собирать под свой проект, или даже под каждую страницу, свою версию библиотеки, включая туда необходимые компоненты. Я уже писал о структуре фреймворка и расположенном на сайте конструкторе, который сможет автоматически сформировать вам ваш личный дистрибутив.
Читать дальше →

Методичка по работе с клиентами. Для начинающих менеджеров веб-студий

Reading time6 min
Views25K
(2008 год, письмо старшего менеджера веб-студии — младшему)
( профи вряд ли найдут что-то новое, молодым будет интересно)
Привет. Вот краткая инструкция, основанная на личном опыте. Так сказать, курс молодого бойца.
наша задача — заработать как можно больше денег, при минимальных телодвижениях.

Итак, получили письмо от клиента


обычно есть следующие варианты
  1. клиент явно перспективный и обратился «выборочно» именно к нам — есть большая вероятность, что переговоры будут удачными — тогда лучше сразу набивать стрелку и устанавливать личный контакт и все выяснять на месте. Хотя, границы бюджета лучше выяснить в любом случае.
  2. клиент интересный, но многое неясно из его письма ( нет ТЗ, нет бюджета, он написал в несколько студий, сайт потенциально сложный, сайт неинтересный и тд. ). Тут важно прислать ему БРИФ на заполнение, выяснить сроки и бюджет. Согласовать бюджет сроки — уже потом встречаться в случае, если все устраивает.
  3. Письмо подозрительно короткое и не «пахнет интересом». Например, «нужен обувной интернет-магазин, сколько стоит? Как быстро сделаете? Виталий» — тут вряд-ли чтото выгорит + вероятно это пробивон по ценам от конкурентов.
    В этом случае — цену говорим в полтора раза дето дороже, интересуемся «укладываемся ли мы в их бюджет» в положительном случае — можно встречаться. Иначе — скорее всего трата времени.

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

Веб-формы «Светофор». Вариант реализации

Reading time1 min
Views2.5K
Не так давно Gunger представил вариант раскрашивания элементов ввода текста на форме. Мне этот вариант, несмотря на критику некоторых юзеров, очень понравился и я решил что со временем сделаю свою реализацию.

Время пришло и я рад представить свой вариант реализации написанный в виде JQuery-плагина. Я назвал плагин semaphore, по моему вполне удачное название. Плагин работает с регулярными выражениями для проверки валидности ввода.
Читать дальше →

Как зарегистрировать домен бесплатно

Reading time2 min
Views150K
image
На удивление оказывается, что многие незнают о существовании зон, свободных для регистрации. Более того, многие платят за регистрацию доменов в этой зоне деньги — стандартная цена у известных регистраторов от 5 до 15 у.е. за то, что можно сделать самому бесплатно.

Вот какие домены можно зарегистрировать абсолютно бесплатно:
Украина
.net.ua, .od.ua, .org.ua, и множество вида регион.ua
Россия
.com.ru, .net.ru, org.ru, pp.ru, .msk.ru, spb.ru и множество остальных типа регион.ru

Ниже инструкция типа «домен бесплатно для чайников»

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

Каптча 3d

Reading time7 min
Views6.3K
Прочитав топик «RapidShare — новые каптчи», я вспомнил как слушал доклад создателя каптчи на UaВебе.



Зайдя на сайт, желая посмотреть код, я увидел:
Q: Is it opensource?
A: No, sorry. Maybe later.

Я удивился! Мне казалось что любой маломальски образованный хороший программист сделает такую каптчу.
Погуглив и нашел пару интересных линков: 1, 2 и не получил кода, решил написать сам.
Читать дальше →
12 ...
8

Information

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