APIs for IoT
A couple weeks ago I wrote a post on Notion’s blog aboutAPIs for the Internet of Things – specifically, three major points I’m thinking about a lot as we design the API, iterate on it,and plan for scaling.
A lot has changed between my last post and now. The most obvious thing is that I’ve got a new look for this site. Thispast week I finally sat down and made the move to a Jekyll blog hosted on github pages.Really unoriginal for a developer, I know. But I had tried a more unique route – using Middlemanand hosting on Bluehost with some extra hosting credit I had leftover from a previous start-up venture.It was awful. I mean, I’m sure I could’ve figured out how to get some semi-automatic deployment going on with FTP or something,but who’s got time for that? It was such a hassle just getting a blog post up and running that I dreaded the thought – and,as a result, stopped posting.
SDKs suck, so why do they exist?
This past weekend, I was innocently attending RESTFest in Greenville, SC, along with some of the biggest API geeks and fanatics I’ve ever met.1 Things were going smoothly — people were arguing about The One HyperMedia Type To Rule Them All, some devs from Apigee did demos of their new ZettaJS with LEDs and arduinos, and “state machines” kept gaining momentum as the conference’s actual topic (um, move aside HTTP RFCs) — when someone innocuously mentioned in their talk a truth that I had yet to admit to myself: SDKs suck.
adapters & APIs
Last week, I was working on a new project that needed to use a MMS service provider to send bulk MMSes. A quick google search was all I needed to see that there were oodles of options, and to feel the accompanying apprehension of such a discovery. I knew that I could pick one now but in the future, with changing requirements or budget, or potentially even a partnership with a provider company, the service (and therefore API) we used could very easily, and very likely, change.
python to ruby translation no. 1
Yesterday, I was browsing through the Dropbox docs, developer forum and blog, trying to find a method or endpoint that returns multiple file results at once (not just the file path or name, but the actual file). I wasn't able to find what I was looking for, but in the process, I came across one of their dev blog posts about delta(). It contained a lot of information, some of it potentially useful to me, but at also had examples in Python.
I have a confession to make. I never typed “rails g scaffold” until I taught a RubyOnRails course.1 I knew what scaffolding was, of course, but it had never occurred to me to use it. I didn’t generate models or controllers either. This probably has a lot to do with the project I really learned Rails from — a large, already existing app that had no place for generating full scaffolds for any resource.
preparing for ruby
I've been getting some emails from students asking how they can prepare for my Ruby class starting in three weeks (three weeks?!), and it's definitely time to start talking about pre-work. It's an interesting topic because yes, it'd be ideal if every student came into the class with a strong foundation, but on the other hand, what pre-work will provide a solid preparation without being way over newbies' heads and without giving them the wrong ideas about the “right” ways to do things?
front-end or back-end? not that i'm biased or anything...
how my "impractical" humanities degree prepared me for a career in programming
When I tell people what I do, and then answer the inevitable “What was your major in college?” I'm usually faced with exclamations of surprise, bewilderment, or just plain confusion.1 My answer to the latter question usually garners some semblance of that response anyway, even though I always thought that Anglo-Saxon, Norse and Celtic was a totally normal university course that anyone in their right mind would elect to take.2 But what most people can't seem to piece together is how I went from a degree where I learned medieval Welsh, recited Latin and Irish poetry,3 and studied Anglo-Saxon kings,4 to a career that seems so deeply rooted in modern technological culture: programming.