GTUG Stockholm 2015-10-08

The Google Technology User Group Stockholm is a nice tech meetup group in Stockholm hosted monthly (ish) by @psvensson . Although Google produces lots of interesting technology, the concept of GTUG Stockholm is much wider than that and focuses a lot on open source development stacks in general.

I've attended the GTUG meetings ever since I moved to Stockholm in 2012 and they've had lots of interesting talks on different applications and hints about software to keep in mind. For example, I was introduced to Finagle and Grafana by attending the GTUG Meetings.

Last Thursday eve the theme was Docker and Nordpol . Docker is a frontend for containerized application which is a interesting way to run applications. It's quite intuitive and fun, but it's not what really impressed me. The new-to-me and cool project from Fidesmo, Nordpol, sounded interesting. Nordpol is a library to work with Java cards in a modern way.

Java cards are really ubiquitous and are most often uesd as access cards or in credit cards. The Java card technology is widely spread and available for an almost unlimited array of low-energy microchips and Nordpol as a library makes communicating with them a much more using Android a less painful experience.

If you're an Android developer working with an application that could in any way benefit from physical accessories, Nordpol seems to be a really interesting tool for your toolkit.

Calligraphy Assembler for Your Enjoyment

A photo posted by Mike Estee (@mikeestee) on

Written 2015-10-14 by Emil Tullstedt

OAuth2

Last week I gave an introduction to OAuth2 (RFC6749) at Uppsala Tech Meetup. HamnCentralen was kind enough to host the event togheter with Johannes here at 46elks.

The topic of the talk was web development, and since I had already struggled quite a bit with OAuth, I sat down and properly read through RFC6749 to get a better understanding of the inner workings of OAuth2.

I made the decision to follow the basic "web application"-flow which allows developers of application to integrate their clients with OAuth2 so that they may either just make a simple "Sign-in with Google"-button or integrate their applications with thousands of APIs available with the OAuth2 flow.

My slides for the presentation may be downloaded below if you're speaking Swedish, or you can just go straight to the resources I used when I wrote my presentation.

Download slides (swedish)

OAuth2 Resources

Written 2015-09-28 12:00 by Emil Tullstedt

Texting, Tweeting

For a couple of days, I've sat down with the Twitter API and tried to integrate it with the 46elks API for a self-deployable solution to make a demo of how to make it possible for me to send SMS to Twitter[1]. The result is the Flask based microservice Passer .

DIY Install Passer on Heroku

Passer still contains quite a bit of rough edges[2] but deployment to Heroku is as simple as A-B-C[3]. You can clone Passer from github.com/46elks/passer and add it to your Heroku apps by executing the Heroku toolchain command heroku create within the repository.

After you've launched the Heroku instance, you'll need to configure a few environment variables for your application. First, head over to apps.twitter.com and create a new app. Within the app, access your consumer key and consumer secret and store them within your Heroku instance's environment variables using

heroku config:set PASSER_TWITTER_KEY=<consumer_key>\
PASSER_TWITTER_SECRET=<consumer_secret>

Next head to the 46elks dashboard where you'll configure a number[4] to have the sms_url https://<yourapp>.herokuapps.com/incoming_sms . While you're at the 46elks dashboard, also retrieve your API username and password and insert them into the environment variables with

heroku config:set PASSER_ELKS_KEY=<api_username>\
PASSER_ELKS_SECRET=<api_password>

Now it's just a matter of running git push heroku and voilá, you're up and running. Go to https://<yourapp>.herokuapps.com/authorize and follow the link to Twitter where you'll authorize the app and copy the digits Twitter instructs you to enter into Passer by running https://<yourapp>.herokuapps.com/authorize/<digits> .

Congratulations, you should now be able to send a text message to the number you configured and it'll magically appear on your Twitter wall.

What's next?

Wow, Passer is really not done. It's not even nearly done. I'd love to actually make this tech demo useful by allowing for persistent OAuth tokens one way or another, but also allowing for you to upload pictures and gifs through MMS. Maybe make it possible for you to get the replies to tweets you've made using Passer?

Have you got any good idea for Passer, feel free to contact me on Twitter, @sakjur or open a pull request/issue at github.com/46elks/passer .

Footnotes

[1] Twitter do provide Twitter over SMS but it's not available for customers in a lot of countries
[2] Passer doesn't persistently store OAuth tokens, so you'll have to re-authenticate on every restart of the application
[3] You can of course deploy Passer to your own server as well using for example uWSGI, but this is sadly not nearly as straight forward
[4] SE-numbers are €1 a month, but we have this amazing trial-thingy, so you can try Passer without having to spend a krona :D

Written 2015-09-18 12:00 by Emil Tullstedt