• PHP: Как разобрать сложный XML-файл и не утонуть в собственном коде

    Доброе время суток!

    Сфера применения XML-формата достаточно обширна. Наряду с CSV, JSON и другими, XML — один из самых распространенных способов представить данные для обмена между различными сервисами, программами и сайтами. В качестве примера можно привести формат CommerceML для обмена товарами и заказами между 1С «Управление торговлей» и интернет-магазином.

    Поэтому практически всем, кто занимается созданием веб-сервисов, время от времени приходится сталкиваться с необходимостью разбора XML-документов. В своем посте я предлагаю один из методов, как это сделать по возможности наглядно и прозрачно, используя XMLReader.
    Читать дальше →
  • Разработка чат-бота для Facebook Messenger

    • Tutorial
    В настоящее время наблюдается, действительно, бум чат-мессенджеров. Один за другим платформы для обмена мгновенными сообщениями объявляют о запуске платформы для разработки ботов.
    Не стал и исключением Facebook. 12 апреля на конференции F8 Facebook представила платформу для разработки ботов для своего мессенджера.
    В данной статье хочу поделиться опытом разработки чат-бота для Facebook на PHP.
    Читать дальше →
  • Кастомные социальные кнопки

    Недавно участвовал в разработке одного проекта — фото конкурса. По задумке, рейтинг фото альбомов должен формироваться из суммы всех публикаций в социальных сетях: Facebook, Вконтакте, Twitter. Т.е. общий рейтинг фотоальбома расчитывается:
    Рейтинг фотоальбома = кол-во «Share» в Facebook + кол-во «Сохранить» в Вконтакте + кол-во «Retweet» в Twitter

    На макетах, вид кнопок несколько отличался от предоставляемых социальными сетями плагинов, формируемых функциями api. В частности вид счетчиков:
    image
    Помимо несоответствий с дизайном, каждый плагин формирует излишний хтмл код, а хотелось бы лаконичный.

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

    Итак:
    • количество лайков будем получать от REST сервисов каждой социалки
    • кнопки рисуем свои и обрабатываем событие click

    Читать дальше →
  • Регистрируемся как частный предприниматель в Украине

      Осознав необходимость выхода из тени или же просто смены формы деятельности из наемного работника в самозанятого гражданина приходим к тому, что надо бы зарегистрироваться в качестве частного предпринимателя (ЧП, ИП, СПД ФОП). О том, как зарегистрироваться, какую форму налогообложения выбрать IT-шнику, сколько и куда платить читаем под катом. В конце так же приложен бонус «Как получить деньги под открытие от Центра занятости» (на оплату налогов на первое время), какие виды деятельности выбрать согласно КВЭДа, а так же несколько примеров типичных документов. Актуально только для Украины.
      Читать дальше →
    • Автоматическое оповещение читателей о новостях с помощью ВКонтакте. Часть 2

      • Tutorial
      Первая часть

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

      После первой части я получил большое количество сообщений, большая часть из которых посвящалась тому, что я продемонстрировал в статье возможность публикации на собственной стенке, а автоматическую публикацию на стене Группы или Официальной странице я не показал. Поэтому я начну с того, какие параметры нужно для этого передавать.
      Перейдем непосредственно к параметрам
    • Автоматическое оповещение читателей о новостях с помощью ВКонтакте

      Вторая часть

      Предисловие


      Те из вас, кто пользуется социальной сетью ВКонтакте и подписан на официальную страничку Хабры в ней, заметили, что все новые топики с главной появляются на страничке в виде сообщений-ссылок:
      vk

      Так вот, если у вас есть свой блог и вы хотите на своей личной страничке публиковать такие же сообщения-ссылки автоматически — топик может быть вам интересен. Сегодня мы попробуем публиковать простые сообщения ссылки, а далее добавлять к ним «превью»-картинки.
      Читать дальше →
    • «подкаст из PLAINtext!» — поможет БОТ! (ubot.ru)

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

        И был очень удивлен услышав этот чарующий женский электронный голос, читающий мои тексты

        http://podcasts.ubot.ru/31497/
      • Twitter на картинке

          twi-statusНа днях мне пришло в голову вставить на форум картинку, на которой бы «транслировалось» последнее моё сообщение в Twitter. После недолгих поисков наткнулся на этот сервис (спасибо Vass), мне он понравился. Но поскольку я большой любитель писать велосипеды, на этом я не успокоился :)
          Читать дальше →
        • Навигация с помощью стрелочек, Javascript

            Мой друг starfake попросил опубликовать его пост. Недавно он оставил один неосторожный комментарий, за что был жестоко наказан сообществом :) Если пост вам понравится или даже будет полезен, прошу поднять ему карму.

            Когда-то давно, прочитав в Лебедевском техногретте пост про навигацию стрелочками решил сделать такую же на форуме одного своего (с другом) проекта.
            Сказано — сделано. Навигация стрелочками заработала, чему я очень обрадовался, но спустя некоторое время выявился небольшой баг. Находясь на текстовом поле, редактируя запись, вместо перехода с Ctrl между словами получаешь переход на следующую или предыдущую страницу (и удаление записи). Меня пару раз отматерили, а скрипт убрали.
            Недавно мне нечего было делать на работе и я решил переписать его, учитывая фокус на форме.
            Читать дальше →
          • Монетизация PDF-контента через Scribd

              Известный сервис Scribd, позволяющий публиковать PDF-документы в Youtube-подобном интерфейсе, открыл магазин платного контента. Магазин предельно демократичен: добавить для продажи свой PDF-файл может любой желающий, а также установить на него любую цену. Защита DRM не обязательна, то есть можно продавать даже файлы, не защищённые от копирования.

              Это просто идеальный инструмент для продажи конспектов лекций своим сокурсникам, электронных версий журналов и газет, аналитических отчётов рынка, литературных произведений и прочего контента, который публикуется в формате PDF. Автор получает 80% отпускной цены, что гораздо выше обычного. Сейчас на сайте продаются документы стоимостью от $1 (маленький комикс) до $5000 (аналитический обзор по Китаю).

              В течение месяца выйдет Scribd-виджет для iPhone.

              via NY Times
            • Играем в «Ships» c помощью Google Earth

                PlanetInAction.com выпустила первую версию бесплатной игры-симулятора, которая использует в качестве движка не что иное, как Google Earth плагин. Игра «Ships» позволяет управлять разными типами кораблей. Игра трехмерная, вы можете путешествовать по всему миру, добавлены звуковые и визуальные эффекты.



                Ships изпользует Google Earth API, Flash 8.0, and Javascript.

                Поиграть можно тут — ships.planetinaction.com Все что вам нужно — это установить Google Earth плагин.

                По материалам www.gearthblog.com
              • Маленькая утилита для серьезных дел

                  Вы когда-нибудь теряли флешку? Много информации ушло вместе с ней? Буквально недавно нактнулся в Интернет на бесплатную простенькую утилиту SyncToy 2.0 от компании Microsoft. Функционал ее тоже предельно ясен и прост — задаем папку А, задаем папку Б, синхронизируем все содержимое папки А с папкой Б. Доступны три режима:
                  • Syncronize — изменения папки А передается в папку Б и наоборот.
                  • Echo — все изменения папки А передаются в папку Б.
                  • Contribute — Тоже что и Echo, но удаленные файлы в папке А не удаляются из папки Б.

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

                  SyncToy 2.0 доступна даже для х64 систем. Свое применение на сервере утилитка нашла в качестве средства копирования папки WSUSContent на резервный сервер, причем кто знаком с WSUS (System Center Essentials) знают, что периодически нужно выполнять очистку от ненужных более патчей и простое копирование папки WSUSContent приведет к ее сильному росту.

                  Взято из моего блога
                • Формирование Excel-документов средствами PHP

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

                    Ну, поехали...
                  • Google Scholar без платных ссылок

                      Сервис Google Scholar удобен для поиска научных статей на английском (и прочих) языках. Для полноценной научной работы просто необходим.
                      Но есть в нем небольшая особенность, которая в российских условиях становится серьезной помехой, это — выдача ссылок на платные ресурсы. Например, по запросу: suffix sorting вся верхушка — платная.
                      В европейских/американских университетах при наличии подписок проблемы нет. А для нас, увы.
                      На сайте «Хаос. Нелинейная динамика» сделан метапоисковик PDF Science Search, который фильтрует такие ссылки, а заодно и недействительные ссылки, а также гарантированно дает ссылки на полные документы, а не аннотации.
                      Да, еще этот метапоисковик ищет по Яндексу и Рамблеру.
                    • Экспериментируем с Google Latitude

                        image
                        Впечатлившись анонсом Google Latitude (ранее о нем уже была публикация на Хабре habrahabr.ru/blogs/google/51067 ), решил проверить его в работе.

                        Первое впечатление — похоже мобильная геосоциальная сеть обретает нормальный движок.
                        Google формирует новую среду, охватывающую широкую сферу интересов. При этом устанавливает свои правила и стандарты.

                        Latitude устанавливается не только на мобильные телефоны, но и на «нормальные» компьютеры со страницы m.google.com/latitude При этом результат установки выглядит как iGoogle гаджет. Никакого номера телефона при этом вводить не надо.
                        Читать дальше →
                      • Window Colorizer 0.8 beta

                          Выкладываю бету программы под Windows, позволяющей менять цвет активного окна в зависимости от текущей раскладки.
                          image
                          Цвета рамок задаются в настройках.
                          Работает под Windows XP и Виста (с установленной темой «стандартная», не под Aero), с «классическими» темами а-ля Windows 2000 не дружит.
                          Читать дальше →
                        • Google запускает софт слежения за пользователями мобилок

                            По сообщению агентства Рейтер, Гугл разработал и запустил программное обеспечение, которое позволяет пользователям мобильных устройств автоматически сообщать данные о своем местонахождении определенному кругу лиц. Сервис доступен в 27 странах, кстати есть и на русском языке — Google Latitude. Друзья и родственники смогут отслеживать местонахождения пользователей сервиса через Google Maps.
                            Читать дальше →
                          • API Playground

                              api playground

                              На прошлой неделе Google официально представил очередную разработку в рамках «20% личного времени» которая вышла за пределы компании. Инженер по разработке Бен Лисбаккен (Ben Lisbakken) создал API Playground, с которым изучение кода для Google Javascript API становится легким, как никогда ранее.

                              API Playground предоставляет простой и удобный интерфейс написания и тестирования javascript-кода для восьми сервисов Google, использующих API, это: Maps, Search, Feeds, Calendar, Visualization, Language, Blogger, Libraries и Earth. Кроме того новый API Playground скоро станет способом по умолчанию для демонстрации примеров JS-кода. Еще одна хорошая новость заключается в том, что гигант перевел часть исходных кодов под лицензию Apache 2.0 для использования в Playground.

                              На данный момент на «игровой площадке» (playground) доступно более 170 javascript-шаблонов, начиная от простых списков, слайдшоу основанных на медиа-RSS и заканчивая KML-файлами Google Earth.

                              Playground отлично подойдет новичкам, желающим узнать немного больше о Google API — кроме понятных примеров использования в API Playground присутствует так же поддержка специалистов.

                              Google Code Blog via ReadWriteWeb
                            • Philosopher — новый бесплатный шрифт

                                Мой знакомый делает бесплатные шрифты для дизайнеров, очень хочу показать вам последний из них:

                                image

                                Автор шрифта продвигает бесплатную типографику от дизайнеров для дизайнеров.

                                Прочитать подробнее о шрифте и пообщаться с автором можно у него в ЖЖ

                                Здесь можно бесплатно скачать сам шрифт
                              • Про два различных способа получать деньги

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

                                  Главный плюс постоянной работы — это, конечно же, стабильный доход. Второй важный плюс — возможность принять участие в больших проектах. Главный минус — величина собственного дохода прямо зависит от того, как хорошо работает твое начальство, и насколько у компании хорошее положение на рынке. Второй важный минус заключается в том, что твоя роль зачастую определена и неизменна, приходится следовать указаниям и инструкциям, выполнять должностные обязанности.
                                  Читать дальше →