середу, 13 квітня 2011 р.

Авторизація ВКонтакте використовуючи OAuth 2.0 на прикладі Ruby і Sinatra

Віднедавна для авторизації додатків ВКонтакте використовується відкритий протокол OAuth 2.0. Тепер інтегрувати сайти і клієнтські програми з соціальною мережею стало значно простіше.
На сторінці з документацією нової системи авторизації написано, що підтримуються два типи авторизації: серверна і клієнтська.
У результаті проходження процесу авторизації вам видається ключ доступу access_token, з допомогою якого ви можете виконувати будь-які запити до API ВКонтакте від імені користувача або від імені додатку.
Не дивлячись на новизну протоколу OAuth 2.0, вже зараз на його сайті можна знайти бібліотеки для більшості популярних мов програмування, в тому числі і для Ruby
Крім появи підтримки OAuth у ВКонтакте змінився спосіб взаємодії з API. Тепер всі запити відправляються з безпечного протоколу HTTPS, в результаті чого зникла необхідність підписувати кожен запит.
Я не буду вдаватися у подробиці процесу авторизації. Про це можна почитати у документації ВКонтакте.
Нижченаведений код показує наскільки легко використовувати API ВКонтакте з OAuth2 gem в Ruby.

неділю, 3 квітня 2011 р.

Ruboto: Ruby на Android

Автор статті - Chris King, програміст, фрілансер.
Оригінал: http://www.ibm.com/developerworks/web/library/wa-ruby/

Вступ

Більшість цікавих робіт з розробки програмного забезпечення сьогодні відбуваються в одній із двох крайнощів: великі сервери хмарних обчислень і крихітні мобільні пристрої. Ці області вирішують значно несхожі проблеми, і, відповідно, мають різні засоби підтримки. Розробка для серверів часто використовує скриптові мови, щоб зв'язувати разом різні компоненти і виконувати складні автоматизовані завдання. В той час як розробка для мобільних пристроїв зосереджена на конкретних можливостях і потребах конкретного пристрою і користувача.

Однак, ці дві крайності об'єднує спільна мова: Java. Чи то мобільна платформа Android, чи фреймворк Spring, багатьма з найбільш популярних технологій сьогодні прийнято мову, яка здобула широке розповсюдження і підтримку в усьому світі. Ця спільна мова може призвести до деяких дивних взаємодії між областями, про які ви схильні думати як різні. Java відкриває двері для багатьох крос-платформових варіантів, таких як, легке портування коду сервера на пристрій Android або зв'язування у рідні здібності платформи з існуючих компонентів.

У цій статті розглядається Ruboto. Проект, який усуває розрив між скриптовими мовами і Android. Ви дізнаєтеся про Ruby і Android, як вони можуть разом прийти у віртуальну машину Dalvik, як створювати і розгортати власні скрипти, і чому ця технологія має потенціал для підвищення продуктивності праці програмістів і гнучкості застосування.