Pull to refresh
0
0
Павел Галета @super_p

User

Send message

Пишем Facebook приложение

Reading time4 min
Views1K
Facebook — популярная социальная сеть где можно написать своё приложение. Не люблю толочь воду в ступе, поэтому сразу к делу. Встраивать можно двумя направлениями: внешнее приложение в Facebook или Facebook-данные во внешнее приложение (aka Facebook Connect). Тут я буду говорить о первом, что в принципе более трудоёмко и интересно. Как правило смысл facebook-приложение несёт две функциональности — взаимодействие с друзьями и информативное интегрирование в профиль пользователя.

Основы


Встраивать приложение можно в следующие места..
  • Canvas — собственно страница с приложением. Доступна по ссылке apps.facebook.com/НАЗВАНИЕ_ПРОГРАММЫ
  • Profile box — маленький бокс внутри самого профиля пользователя
  • Profile tab — новый таб в профиле
  • Boxes tab — небольшой блок в табе boxes
  • News feed — доступ к потоку обновлений
  • Requests box — интерактивные сообщения другим пользователям

Интеграция производится смешанными возможностями..
  • REST API (http://api.new.facebook.com/restserver.php) который даёт «тяжёлый» доступ для backend-а с возможностями загрузки фото, видео, получении списков друзей, событий, комментариев и тп.
  • FQL — способ запрашивать данные по REST не просто через параметры метода, а уже через SQL-подобный синтаксис
  • FBML — урезанный HTML + свои тэги которые Facebook интерпретирует в окне в своём стиле и дизайне и кэширует при инлайновом показе. Куча заморочек с встроенным валидатором тэгов
  • xFBML — FBML-тэги используемые в своём приложении
  • FBJS — урезанный JS

Два пути


Теперь когда основные термины понятны перейдём к самому приложению которое размещается в Canvas. После создания нового приложения через developer app, скачивания REST-библиотеки для php, выкладывании приложения на свой сайт и установки в настройках URL для Canvas становится видно что доступно два способа запуска — через iframe (+XFBML) либо чистый FBML который будет храниться на facebook. Понятное дело первый вариант самый простой. После создания программы и добавления/подтверждения в своём профиле, показ Canvas'а будет сопровождаться обычным iframe + GET-параметрами с префиксом fb_sig_, из которых самый важный это fb_sig_canvas_user. Второй вариант более муторный, но более тесно связан с FB.



Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments4

Mobii NB9010 – мини-ноут для студентов

Reading time1 min
Views747
image

Point of View – соратник nVidia по выпуску видеокарт, продолжает развивать свой ноутбучный бизнес. На днях компания показала модель NB9010 – поколение компакт-Mobii. Предполагается, что машинка будет ориентирована на школьников и студентов. Как у почти всех современных мини-ноутов в груди Mobii NB9010 бьется «атомное» сердце. Машина построена на базе процессора Intel Atom N270, комплектуется 1 гигабайтом ОЗУ и 160-ГБ жестким диском. По заявлению производителя, 6-ячеечной батареей ёмкостью 4400 мАч должно хватать на 4 часа автономной работы (врут, наверное).
Читать дальше →
Total votes 30: ↑26 and ↓4+22
Comments58

Разработка Flex приложений в Linux (Ubuntu 8.10)

Reading time2 min
Views8.1K
Хочу поделиться опытом. Перешел на Ubuntu с Windows, установил Eclipse и различные плагины. Раньше пользовался Flex Builder под виндой и тут встал вопрос установки FlexSDK и Flex Builder для Linux. Собственно речь пойдет о том, как настроить Eclipse+FlexSDK+FlexBuilderLinux для разработки MXML и Air приложений под Linux…
Читать дальше →
Total votes 53: ↑51 and ↓2+49
Comments40

Лучший способ изучить Rails

Reading time5 min
Views200K
Доброго времени суток!

Предисловие


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

Введение


У меня за спиной огромный опыт работы с PHP, но сейчас я работаю Rails разработчиком. Огромную сложность для большинства людей, которые пытаются освоить что-то новое — это сам процесс обучения. Когда вы владеете каким-либо языком или фреймворком и знаете его вдоль и поперёк, переход на что-то новое не представляется необходимым.

Однако, изучение Ruby on Rails является достаточно простым занятием. Это невероятно мощный фреймворк, который имеет огромное сообщество, продвигающее его вперёд. Итак, у нас возникает вопрос: какой способ изучить Rails является лучшим? Вот он — план занятий.
Читать дальше →
Total votes 83: ↑69 and ↓14+55
Comments118

NoName Podcast S04E03

Reading time1 min
Views382

Новости


Вышел Draper 1.1
Factory Girl 2.4
Вышла Juvia — открытый Disqus
Travis CI собирает пожертвования
Mechanize 2.1.1
Для начинающих и конченных программеров шпаргалочка о том, как не надо делать.
7 февраля вышел Sidekiq — библиотека для обработки фоновых событий
12 февраля вышел Split 0.3.2 библиотека для A/B тестирования

Обсуждение


Ruboto
Rails or Sinatra
Heroku
Пока мы писались, коммитов у Алексея Вахова стало 37, прямо как количество сигналов у одной известной компании
Total votes 19: ↑19 and ↓0+19
Comments5

Поём вместе с Sinatra. Часть первая. Первое знакомство

Reading time3 min
Views19K
Доброго времени суток!

Что такое Sinatra


Sinatra — маленький, но довольно интересный DSL (Domain-specific language) фреймворк, написанный на Ruby. В отличие от Ruby on Rails он не следует типичному паттерну MVC (Model — View — Controlller). Sinatra создавался для того, чтобы «программист смог быстро создать веб приложение, написанное на Ruby с минимальными усилиями.

Для того, чтобы воспользоваться Sinatra нам неорбходимо его установить. Сделать это можно следующей командой в RubyGems:

gem install sinatra

Также нам понадобится гем под названием Shotgun. Нужен он нам для того, чтобы лишний раз не перезагружать сервер вручную. Shotgun сделает это за нас. Давайте установим его:

gem install shotgun

Ну вот и всё! Всё необходимое для работы у нас есть. Настал момент для творчества. Приступим…
Читать дальше →
Total votes 36: ↑31 and ↓5+26
Comments46

NoName Podcast S04E02

Reading time1 min
Views178

Новости


20 января вышел Rails 3.2
26 января вышел Rails 3.2.1
5 незаметных изменений в Rails 3.2 от Джозе Валима
Bundler and public applications
Steve Klabnik: Introducing Metadown — внедрение произвольных YAML-метаданных в Markdown-документы. Полезно для самодельных нанодвижочков.
Вышел devise-2.0
Patch ruby 1.9.3-p0 for 30% faster rails boot (one-liner!)
Bitmap Marking GC for Ruby Improves Memory Usage
RiteVM
.toster {ruby} в Москве

Обсуждение


Отладка утечек памяти в Rubinius
Total votes 30: ↑25 and ↓5+20
Comments12

Когда нужен RVM, а когда достаточно rbenv

Reading time2 min
Views17K
В данной статье я не буду вдаваться в подробности работы RVM и rbenv. Информации по данным штуковинам хватает на просторах интернета. Здесь же я хочу попытаться раскрыть вопрос: когда стоит использовать rbenv, а когда нет?

Цель


Для этого давайте для начала разберемся для чего же создавался RVM, а для чего rbenv. Для этого достаточно взглянуть на возможности обоих систем.
Читать дальше →
Total votes 26: ↑21 and ↓5+16
Comments29

Редакторы контента, использующие contenteditable

Reading time2 min
Views7.1K
На последнем Web Standards Days, проходившем в Москве, Антон Немцев рассказывал про идею редактирования контента непосредственно на странице с этим самым контентом, используя атрибут contenteditable.

Спросив google, я нашел два вполне уже рабочих редактора, которые можно попробовать применить в одном из проектов.
Читать дальше →
Total votes 39: ↑33 and ↓6+27
Comments23

jQuery Mobile 1.0

Reading time2 min
Views4.5K


После более года разработки увидел свет финальный релиз jQuery Mobile 1.0 на базе jQuery 1.6.4 (поддержка jQuery 1.7 появится с версии jQuery Mobile 1.1). Этот фреймворк создан для разработки сайтов с тач-интерфейсом при помощи привычных HTML, CSS и JavaScript. Инструменты вроде PhoneGap позволяют легко трансформировать сайт HTML5 в мобильное приложение и распространять его через магазины приложений.
Читать дальше →
Total votes 74: ↑70 and ↓4+66
Comments17

Переводчик на язык программиста

Reading time1 min
Views35K
С добрым утром, хабражители!

Хочу немного дополнить неделю brainfuck до того, как она закончится.

Говорят, что программисты общаются на своем, никому не понятном языке. Что ж, порой именно так и бывает. Поэтому однажды у меня родилась идея сделать сервис, который позволял бы наладить общение между программистами и остальным миром. Или же наоборот — усложнить его: все в ваших руках. В любом случае больше не нужно набирать сообщение в двоичном или brainfuck коде, чтобы признаться в любви девушке — достаточно зайти на сайт и он сделает это за вас! ;)

Читать дальше →
Total votes 76: ↑60 and ↓16+44
Comments54

Настройки в Android-приложениях

Reading time6 min
Views72K
Интересуюсь темой разработки под Android. Пишу небольшое приложение. Столкнулся с тем, что не до конца понимаю как правильно делать настройки для приложения. Немного погуглил, нашел статью, которая помогла разобраться. Решил перевести статью для русскоязычного сообщества, включив некоторые комментарии к оригиналу.

Настройки являются важной частью приложений на Android (и не только на Android — здесь и далее примечание переводчика). Это очень важно — позволять пользователям изменять настройки приложения, в зависимости от их предпочтений.

Существует два пути работы с настройками в Android — можно создать файл preferences.xml в директории res/xml, либо работать с настройками из кода. В данной статье я покажу как работать с настройками, используя preferences.xml файл.

Читать дальше →
Total votes 43: ↑38 and ↓5+33
Comments61

Rails: Хватит отмазываться, начинаем BDD-ить!

Reading time9 min
Views32K

Кто здесь?


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

11:24:21 PM Michael: ну хз, надо пробовать
11:24:24 PM Michael: наверное так лучше
11:24:27 PM Michael: даже я думаю наверняка
11:24:36 PM Michael: но пока меня че-то останавливает
11:24:38 PM Michael: лень наверное :)

Знакомо? «Не хочется разбираться? Нет времени?» Тогда читаем дальше. В статье расскажу, как настроить свое любимое рельсовое окружении на разработку с подходом BDD и начать новую жизнь (опционально).
Поехали!
Total votes 88: ↑77 and ↓11+66
Comments38

Перехват cookie в реальном времени в открытых WiFi-сетях

Reading time1 min
Views64K


На видео показан угон сессии вконтакте.ру, который почему-то до сих пор не использует авторизацию с https и передает пароли открытым текстом.
Дамп трафика собирается программой kismac в формате libpcap и параллельно парсится grep-ом с использованием регулярных выражений, что позволяет в реальном времени выводить на экран все интересующие куки и пароли. При этом не используется никаких анализаторов пакетов.

regexp для перехвата вконтакте.ру:

tail -F pcap.файл | cat | grep -aEo «remixsid=[0-9a-f]+|l=[0-9]{3,12}|p=[0-9a-f]{36}|email=[^&]+&pass=[^ ]+»

для фейсбука:

c_user=[0-9]+|sid=[0-9]{1,5}|xs=[0-9a-f]{32}

Аналогичная конструкция будет работать и с дампом собранным с помощью airdump-ng.
Total votes 173: ↑158 and ↓15+143
Comments162

Qt + Ruby = настройка в Linux и Windows

Reading time3 min
Views11K
Привет всему сообществу. Сегодня напишу как настроить привязку qt и ruby в Linux и Windows.
Ruby — интерпретируемый язык высокого уровня для быстрого и удобного объектно-ориентированного программирования. Язык обладает независимой от операционной системы реализацией многопоточности, строгой динамической типизацией, «сборщиком мусора» и многими другими возможностями. Ruby близок по особенностям синтаксиса к языкам Перл и Эйфель, по объектно-ориентированному подходу к Smalltalk. Также некоторые черты языка взяты из Python, Лисп, Dylan и CLU. Подробнее тут

Trolltech Qt (произносится «кьют») — кросс-платформенный инструментарий разработки ПО на языке программирования C++.Подробнее тут
Читать дальше →
Total votes 1: ↑1 and ↓0+1
Comments14

Information

Rating
Does not participate
Location
Киев, Киевская обл., Украина
Date of birth
Registered
Activity