Jan 10

Friday Post: Django, AWS, and oAuth

Hey All,

So the semester begins on Monday, meaning this whole week our department has been dealing with semester startup.  Making sure all our apps are tested, available, and production ready.  One of my apps has become the guinea pig for moving our infrastructure into the cloud.  This has been a really fun experience like rewriting parts to save to S3 instead of the filesystem, etc.  Except when it hasn’t been fun.  Like dealing with oAuth behind a load balancer.

Long story short, if you use Django, AWS, and oAuth or LTIs (and SSL), add this to your config file:

USE_X_FORWARDED_HOST = True
SECURE_PROXY_SSL_HEADER = ('HTTP_X_FORWARDED_PROTO', 'https')

Basically, we have our website serving HTTPS through a load balancer, and due to some other infrastructure setup, our oAuth URL was being changed during the signature check.  This caused it to become invalid.  Adding the two lines above fix the whole issue.

Have a good weekend!

-Shea

Dec 21

Sunday Post (Can I pretend it’s still Friday?): Pycon 2015

Hey All,

I can’t believe it’s getting to the end of 2014. What an amazing year this has been!

I just found out that my coworker and I have had our poster submission accepted into Pycon 2015’s poster presentation session.

I’m really excited that I get to again showcase my work in front of the Python community.

I hope everyone has a really great holiday! I look forward to writing my last blog post of 2014 next Friday.

Enjoy!

-Shea

Dec 12

Friday Post: Time Drift Sucks

Hey All,

I’ve been plagued by a bug at work for the past 6 months. Every so often, my oAuth library would fail out of the blue, causing some of my apps to die. It never occurred in production, only in our development environments. If I made the oAuth token by hand, or used the console, it worked fine. If I waited a few minutes, it would authenticate, and everything worked. Totally random, no rhyme or reason.

It wasn’t until this week when I was trying to use a library and upload some test files to an AWS S3 bucket that I got an error. My request time signature was 19 minutes behind the Amazon server. AWS (and my oAuth lib) have a 15 minute time window. But why was this happening? My clock was synced using NTP. I went to check my app and it had also failed. Then it hit me. I hadn’t rebooted my machine in a week. Our dev environments use vagrant, which runs a small virtual machine that containerizes our software. The virtual machine has its own clock, which gets synced on reboot. Over the week, it’s clock slowly drifted just enough that my timestamps failed for Amazon, and then for oAuth. Every so often it will resync, but not fast enough.

In 2014, I thought Time Drift was a thing of past, a relic of dying CMOS batteries, but it still exists today. So if you are ever using vagrant to develop your applications, setup an NTP daemon on the virtual machine, or just vagrant halt / vagrant up every so often 🙂

Happy Friday!

Oct 04

Friday Post: EDUCAUSE

Hey All,

This week I was at the EDUCAUSE educational conference which took place locally in Orlando.  I was speaking on my work with the LTI standard and the applications I have created for UCF.  My first talk was amazing.  It went as perfect as a presentation could go.  My second talk though….it was my first time doing a moderated panel session.  It was awesome.  I loved it….until the fire alarm went off mid sentence and the entire convention center started to evacuate!

I also got some coverage on the IMS Global blog (they are the ones who created the LTI standard): http://www.imsglobal.org/blog/?p=372

All in all, its been a great week, but I haven’t been this exhausted since PyCon.

On the PiPlay side, we are getting some bug reports in, and working on squashing a bunch of them.  The updater has been re-factored to now take into account version numbers, so you shouldn’t have to wait as long for updates.

The latest version of Raspbian with the new Epiphany browser is amazing.  It makes using the web on a Pi a decent experience, and not a chore like before.

You should try it out.

Have a good weekend all!

-Shea

 

Jun 20

Friday Post: Snow In June?!?

Hey All,

For those who don’t know, my day job involves creating tools and apps that help students and faculty at my university have a greater learning experience online.

This week I was in Utah for an educational conference where I got to present on those tools. It was a very rewarding experience.

It also snowed!

 

Work on PiPlay has been going REALLY well.  We are close to finishing, and it feels like right now we are just putting on the polish.  You can see all the updates at https://github.com/ssilverm

A very good friend of mine Charlie (http://charliesamways.carbonmade.com/)  designed the new graphics for the controller setup program.  If you need any awesome work done, I highly recommend him.

 

 Have a great weekend!

Apr 25

Friday Post: TechTime and things…

Hey All,

Just got back from a neat tech talk that was put on buy a bunch of alumni/coworkers.  Some very cool things were shown, like Google Glass and Wearscript.

Kickstarter & PiPlay

11 days to go, and I’m at 298% funded.  This is crazy!  PiPlay 0.8 Beta 3 was release to positive results, and Beta 4 is being worked on as I type this.  A lot of enhancements, fixes, and some new emulators are being added to the distro.

I’ve ordered a few encoders which should be arriving by next week, and I can start implementing those into the software.

I was sent this link (http://iambuildingapicade.tumblr.com/) a few days ago, which chronicles the building of a Raspberry Pi arcade cabinet.  It’s really well written and highly detailed.

I’ve also started a mini cabinet build.  I purchased this kit and I’m looking forward to building it ( with all the extra time I have… /sarcasm )

Exciting times 🙂

-Shea

Nov 08

Friday Post: Things to come!

Hey All,

Happy Friday!

I just got back from our second tech time conference that I coordinated.  It was awesome.  Exhausting, but so darn worth it.

Anyways,  a coworker and I are working on a new PiMAME menu system, and I thought you all should see a sneak peek of the design work!

Screen Shot 2013-11-06 at 5.25.35 PM

 

I’m really excited!

Stay tuned!

-Shea

Sep 20

Friday Post: Editing

Hello All,

This has been a fun week.  Trying to fight of the germs going around now that everyone is settled into classes.  This is usually when the colds start going around.  A few coworkers are already coughing.  I may need to put up a fort around my desk. On the plus side I am seeing Yellowcard this weekend!!!

The PyCon call for proposals deadline passed.  I put in 2 talks and a poster session.  I am volunteering this year as part of the program committee, and I am really excited about going.  I hope one of my proposals makes it.

I caught all of the Pokemon NFC figures.  Yeah, I have a problem.  The Gamestop near me allowed me to bring in my Wii U and scan the Pokeballs before buying them so I could pick out the ones I needed to complete my collection.  Some Gamestops really are awesome.

In exciting news,  I saw the final pdf of my book, and it is being sent to the printer now!!!  In a few days I’ll have the Amazon link to post.

The laser cutter at FamiLAB bit the dust.  The controller board’s heatsink fell off causing a short and frying the board.  I had some prototypes I wanted to cut so I ended up uploading my SVGs to Ponoko.com and getting them cut there.  They quoted me $18 to print out a prototype DeskCade, which isn’t bad considering the amount of space I had left free on the material.  I could probably have printed two for the same price if I spent more time rearranging the parts.  On the plus side, they said it would take 10 days for cutting and 5 days for shipping.  I ordered it on Thursday and it was shipping by Wednesday, so I’m really happy about that.

I can’t wait to see the quality of the parts!

PiMAME update should be soon.  This will be include a custom kernel for the Xin-Mo controller.

That’s it for now.  Have a great weekend!

Sep 13

Friday Post: Raspberry Pi Happenings

Hey All,

Happy Friday!  Long week.  This week at work I learned how to deploy a Django app to an old Solaris server (Read: spent way too much time reading the error log because of incompatible SPARC modules).  It was good though, because now I know of some really good debugging methods and have more Apache experience.

Xin-Mo Dual Controller and PiMAME

One of the louder feature requests for PiMAME is getting the Xin-Mo Arcade Encoder modules working.  A link to a guide on how to patch the kernel and making a new module for the Xin-Mo was posted to the PiMAME forums.  My Pi has spent the last night compiling the new kernel, and it seems to have worked.  I will be posting a beta version of PiMAME for users to test with this new kernel and that should get these Xin-Mo encoders working right!

Raspberry Pi Hub

Pimoroni is introducing a new powered hub for the Raspberry Pi.  They are a good company, and do a LOT for the Raspberry Pi foundation, so when these get a US release, I’ll be picking one up.

Raspberry Pi Geek Magazine

A few posts ago I mentioned that Linux New Media had published a Raspberry Pi Handbook and included a little blurb about PiMAME (yay!).  They just announced that they are publishing a bimonthly magazine dedicated solely to the Raspberry Pi.  The name could use some work, but I’m going to give it a chance.  It’s called the Raspberry Pi Geek.  Use code RPGOTHR10 to get 10% off.

rpg_us_01-2013_1

I don’t have a problem, I can stop collecting these any time…

photo (10)

Have a good weekend all!

-Shea

 

Jun 21

Friday Post: Telepresence Robots!

Hey All,

First off, no PiMAME this week.  Still working out bugs.  It’ll be soon I promise 🙂

I’m 99% done with my book.  Content is all done!! Woo!  Now I’m just working on the preface.  I’m really excited to get back the edited version and do the final touches 😀 😀

Mike Dicillo created a really Arcade cabinet for PiMAME made entirely out of Lego.  It is freaking awesome!  http://www.mikedicillo.com/legocade/#

10

 

Onto the topic, my department got a cool new member this week.  A telepresence robot!  Specifically a Double Robotics unit.

It’s an iPad on a Segway, thats connected to the internet, and allows you to connect to it from anywhere in the world.  It was awesome to test it out and attend a conference in another building.  We had a coworker who is currently in another state connect to it and pilot it around the office.

998369_10151557098728451_741128030_n 1016210_10151692225521335_499341428_n

We live in the future!

More PiMAME news soon 🙂

 

-Shea