• Готовая CMS или самописная?

    @kirsan_vlz
    Используйте готовую, для блогов давно уже всё написано. Практичнее недостающий функционал дописать в случае чего. Livestreet со своими плагинами очень многое может.
    Своё стоит писать либо в целях обучения (велосипеды полезны начинающим разработчикам), либо если создаёте что-то нестандартное.
    Ответ написан
    Комментировать
  • Математика для программиста

    @kirsan_vlz
    Я самоучка, ещё и в инсте дискретной математики не было. Сейчас почувствовал, что просто необходимо подтянуть знания по математике, купил учебник, вникаю.
    Если есть хорошая мотивация, то можно довольно быстро самостоятельно разобраться, главное понимать где, что и как применяется на практике.
    Могу посоветовать вот эту книгу www.ozon.ru/context/detail/id/3510820/.Написана относительно доступно, но нет теории алгоритмов, теории автоматов (лекции по ним найти не проблема). Если не подойдёт, посмотрите тут habrahabr.ru/qa/1856/
    Ответ написан
    Комментировать
  • Ищу сервис для прототипирования интерфейса сайта

    @kirsan_vlz
    Посмотрите эту статью habrahabr.ru/blogs/ui_design_and_usability/70001/
    Из того, что пробовал, могу посоветовать это habrahabr.ru/blogs/ui_design_and_usability/36670/
    Работает под линуксом, но продукт платный.
    Ответ написан
    Комментировать
  • Может ли компьютер распознавать ноты в звуках?

    @kirsan_vlz
    Насчёт конкретного названия программы не знаю, но для вокала есть хорошие механизмы определения.
    Для виртуальной студии Cubase есть плагин Vari Audio, в его основе как раз лежит распознавание нот в звуке.
    Вот демо ролик www.youtube.com/watch?v=fkvGsyyrqNY
    Попробуйте поискать подобные standalone приложения. Они должны быть.
    Ответ написан
    Комментировать
  • Slim или Classic клавиатура?

    @kirsan_vlz
    Всегда пользовался classic клавиатурой. Потом на какое-то время с десктопа пересел на ноут. Понравилось. Сейчас на десктопе пользуюсь вот этой клавиатурой:
    www.oklick.ru/products/catalog/keyboards/small/555s/
    Полноразмерный num-блок и почти стандартное расположение Ins и Del. При этом клавиатура компактная, тихая и невероятно удобная. Лично мне малый ход клавиш более удобен, чем на классических клавиатурах.
    Ответ написан
    3 комментария
  • Вывод электронных денег

    @kirsan_vlz
    У меня была студенческая Maestro карта сбербанка. На неё и вывожу через сервисы вебмани.
    Обходится в 0.8%+15р, идёт, правда, долго. 2-3 будних дня.
    Ответ написан
    Комментировать
  • PHP библия

    @kirsan_vlz
    Вообще, обычно php.net выручает. Там и полные описания, и «похожие» функции, и разбивка по категориям.
    Вряд ли в книге можно найти что-то более полное.
    Или вам именно оффлайновый источник нужен?
    Ответ написан
    2 комментария
  • Хочу изучить MVC в PHP, с чего начать? Какой фреймворк выбрать для проекта?

    @kirsan_vlz
    Скорее всего вызову много возражений, но если вам позволяет время, для понимания MVC я бы посоветовал начать писать проект без фреймворка.
    Объясню почему.
    Когда я начинал разбираться с PHP, фреймворки почти не были развиты, тема не имела большой популярности. Да и уровень у меня был не тот, чтобы понять такую конструкцию. И, как и большинство начинающих программистов, я начал изобретать велосипеды. Сделал один сайт. При расширении оказалось, что некоторые места расширять категорически неудобно. Подумал, посмотрел исходники других проектов (тогда это был форум IPB 2), какие-то архитектурные решения позаимствовал, но без понимания их сути. Потом впервые услышал про фреймворки, увидел, что какие-то готовые части моего кода можно оформить и выделить в свою собственную платформу. Тогда я уже примерно понимал ООП, начал читать паттерны большой четвёрки. По ходу разработки часто наступал на грабли, переписывал целые подсистемы, какие-то моменты смотрел в существующих фреймворках, с каждой ошибкой приходило понимание того, почему в серьёзных платформах сделано «так, а не иначе». Со временем дошёл до того момента, когда мой «фреймворк» нужно было перепроектировать с нуля и тогда бы он стал очень удобным, очень расширяемым и вообще… И на этапе проектирования пришло понимание, что всё это уже написано до меня и мне писать ничего смысла уже нет. Только к этому моменту я прекрасно понимал, именно понимал, а не знал, многие приёмы, используемые в MVC-фреймворках. А так как общая суть у них похожа, то сроки изучения новых фреймворков значительно сократились за счёт понимания принципов их работы. Многие моменты понятны просто по исходникам и примерам использования, без документации.
    Да, это займёт много времени, но зато не будет проблем со сменой фреймворка. Да даже и языка. Своё первое приложение на Rails после знакомства с ним (до этого с ruby вообще дела не имел) я написал за три дня начиная с «как установить Ruby». Это был интерфейс inbox-почтового ящика с кучей аякса и всяческими плюшками вроде поиска, фильтров и прочего.
    Так что, если конечно же позволяет время и есть желание, рекомендую либо попробовать написать свой велосипед, либо до полного понимания разобрать какой-либо готовый фреймворк, тут уже не важно какой.
    Ответ написан
    1 комментарий
  • Выбрать значения которых нет в таблице

    @kirsan_vlz
    Ещё можно так:
    SET @var = '{2}{3}{5}';
    SELECT 
    SUBSTRING
    (
        @var := REPLACE
        (
            (	
                SELECT @var := REPLACE(@var, concat('{', `item_id`, '}'), '') AS `ids`
                FROM `table` 
                ORDER BY `ids` DESC 
                LIMIT 0,1
            ),
            '}{', 
            ','
        ), 
        2, 
        length(@var) - 2
    )
    

    Строку '{2}{3}{5}', скриптом формируете.
    Для одной записи запрос вернёт '5', для нескольких, например '5,6,7'.
    В MySQL у меня работает.
    Ответ написан
    Комментировать
  • Выбрать значения которых нет в таблице

    @kirsan_vlz
    эээ…
    SELECT * 
    FROM table 
    WHERE 
        item_id IN (2, 3, 5) 
    AND 
        item_id NOT IN (SELECT item_id FROM table);
    
    Ответ написан
    2 комментария
  • Ruby on Rails: render - отображение меню, корзины на каждой странице сайта?

    @kirsan_vlz
    Если вы не можете достать корзину из сессии, то посмотрите внимательнее в книге, откуда брали корзину, метод find_cart:
    def find_cart
        session[:cart] ||= Cart.new
    end
    

    Если просто проблема в том, чтобы объект корзины назначался в переменную @cart во всех шаблонах, то вынесите метод find_cart в файл application_controller.rb и в этом же файле включите этот метод в before_filter. Тогда у вас корзина будет выгружаться из сессии в переменную @cart во всех контроллерах.
    p.s. Не копируйте HTML код напрямую, половину кода съел парсер.
    Ответ написан
    Комментировать
  • Ruby on Rails 3 validation model

    @kirsan_vlz
    Если я правильно понял ваш алгоритм, то сначала у вас создаётся запись с first_name и last_name, а потом уже в существующей записи обновляется поле email.
    Тогда попробуйте
    validates :first_name, :presence => true
    validates :last_name, :presence => true
    validates :email, :presence => true :on => :update
    И при добавлении поля email загружать уже существующий объект.
    Тогда на первой форме у вас будет будут проверяться первые два поля, вы сохраните объект.
    Потом, на второй форме, вы загрузите объект с уже заполненными полями first_name и last_name, и обновите его. А при обновлении сработает валидация на поле email.
    Ответ написан
    2 комментария
  • Как работать с постоянно изменяющейся базой в системе контроля версий?

    @kirsan_vlz
    В Rails подобная проблема решается при помощи механизма миграций. Каждое изменение БД описывается через DSL, а не применяется напрямую к базе. Получается, что миграции — это обычные файлы с исходным кодом, которые легко вносятся в ту же svn. Для PHP (если разработка на нём) можно либо поискать подходящую библиотеку, которая будет транслировать php-код в sql запросы, либо написать самостоятельно. Сложного там ничего нет.
    Ответ написан