"APIs" entries

Four short links: 4 June 2014

Four short links: 4 June 2014

Swift on GitHub, HTTP APIs, PGP in Gmail, and Comments vs Community

  1. Swift on GitHub — watch a thousand projects launch.
  2. HTTP API Design Guideextracted from work on the Heroku Platform API.
  3. End-to-End PGP in Gmail — Google releases an open source Chrome extension to enable end-to-end OpenPGP on top of gmail. This is a good thing. As noted FSF developer Ben Franklin wrote: Those who would give up awkward key signing parties to purchase temporary convenience deserve neither.
  4. Close Your Comments; Build Your Community (Annemarie Dooling) — I am rarely sad when a commenting platform collapses, because it usually means the community dissolved long before.
Comment
Four short links: 28 April 2014

Four short links: 28 April 2014

Retail Student Data, Hacking Hospitals, Testing APIs, and Becoming Superhuman

  1. UK Government to Sell Its Students’ Data (Wired UK) — The National Pupil Database (NPD) contains detailed information about pupils in schools and colleges in England, including test and exam results, progression at each key stage, gender, ethnicity, pupil absence and exclusions, special educational needs, first language. The UK is becoming patient zero for national data self-harm.
  2. It’s Insanely Easy to Hack Hospital Equipment (Wired) — Erven won’t identify specific product brands that are vulnerable because he’s still trying to get some of the problems fixed. But he said a wide cross-section of devices shared a handful of common security holes, including lack of authentication to access or manipulate the equipment; weak passwords or default and hardcoded vendor passwords like “admin” or “1234″; and embedded web servers and administrative interfaces that make it easy to identify and manipulate devices once an attacker finds them on a network.
  3. Postman — API testing tool.
  4. App Controlled Hearing Aid Improves Even Normal Hearing (NYTimes) — It’s only a slight exaggeration to say that the latest crop of advanced hearing aids are better than the ears most of us were born with. Human augmentation with software and hardware.
Comment

Searching for the software stack for the physical world

Very much a work in progress, the stack for IoT will require rethinking every layer of the protocol stack.

When I flip through a book on networking, one of the first things I look for is the protocol stack diagram. An elegant representation of the protocol stack can help you make sense of where to put things, separate out important mental concepts, and help explain how a technology is organized.

I’m no stranger to the idea of trying to diagram out a protocol space; I had a successful effort back when the second edition of my book on 802.11 was published. I’ve been a party to several awesome conversations recently about how to organize the broad space that’s referred to as the “Internet of Things.”IoT Stack

Let’s start at the bottom, with the hardware layer, which is labeled Things. These are devices that aren’t typically thought of as computers. Sure, they wind up using a computing ecosystem, but they are not really general-purpose computers. These devices are embedded devices that interact with the physical world, such as sensors and motors. Primarily, they will either be the eyes and ears of the overall system, or the channel for actions on the physical world. They will be designed around low power consumption, and therefore will use a low throughput communication channel. If they communicate with a network, it will typically be through a radio interface, but the tyranny of limited power consumption means that the network interface will usually be limited in some way.

Things provide their information or are instructed to act on the world by connecting through a Network Transport layer. Networking allows reports from devices to be received and acted on. In this model, the network transport consists of a set of technologies that move data around, and is a combination of the OSI data link, networking, and transport layers. Mapping into technologies that we use, it would be TCP/IP on Wi-Fi for packet transport, with data carried over a protocol like REST. Read more…

Comments: 2
Four short links: 5 September 2013

Four short links: 5 September 2013

Bezos on Business, CS Ratios, Easier Hadoopery, and AWS CLI

  1. Bezos at the Post (Washington Post) — “All businesses need to be young forever. If your customer base ages with you, you’re Woolworth’s,” added Bezos.[…] “The number one rule has to be: Don’t be boring.” (via Julie Starr)
  2. How Carnegie-Mellon Increased Women in Computer Science to 42% — outreach, admissions based on potential not existing advantage, making CS classes practical from the start, and peer support.
  3. Summingbird (Github) — Twitter open-sourced library that lets you write streaming MapReduce programs that look like native Scala or Java collection transformations and execute them on a number of well-known distributed MapReduce platforms like Storm and Scalding.
  4. aws-cli (Github) — commandline for Amazon Web Services. (via AWS Blog)
Comment

Upward Mobility: Overly Defensive Programmer

Sometimes, the best defense is a good offensive core dump

By now, most meme-aware internet surfers have encountered Overly Attached Girlfriend  (and the Rule 63 counterpart, Overly Attached Boyfriend.) What isn’t as well known is that they have a brother, Overly Defensive Programmer (ODP, for short.)

ODP is a mobile developer who lives in the constant fear that the server-side folks are going to subtly change an API out from under him, making his app crash. To avoid this, he puts in code like this:

We’ve all seen code like this. The developer didn’t want to accidentally cause a fatal error by trying to get the objectId parameter if the payload was missing, or to try accessing the objectId if it was missing. And if objectId is an optional field, this is totally the way to go.

The thing is, objectId sounds like it is probably a critical piece of data, without which the application will fail to operate properly. You want the application to crash if it goes missing, because that means it will crash during QA testing, rather than silently ignoring the problem and possibly malfunctioning in a way that QA misses.
Read more…

Comment
Four short links: 11 July 2013

Four short links: 11 July 2013

Filmic Photogrammetry, Car APIs, Takedowns, and OpenCV for Processing

  1. Sifted — 7 minute animation set in a point cloud world, using photogrammetry in film-making. My brilliant cousin Ben wrote the software behind it. See this newspaper article and tv report for more.
  2. Vehicle Tech Out of Sync with Drivers’ DevicesFord Motor Co. has its own system. Apple Inc. is working with one set of automakers to design an interface that works better with its iPhone line. Some of the same car companies and others have joined the Car Connectivity Consortium, which is working with the major Android phone brands to develop a different interface. FFS. “… you are changing your phone every other year, and the top-of-mind apps are continuously changing.” That’s why Chevrolet, Mini and some other automakers are starting to offer screens that mirror apps from a smartphone.
  3. Incentives in Notice and Takedown (PDF) — findings summarised in Blocking and Removing Illegal Child Sexual Content: Analysis from a Technical and Legal Perspective: financial institutions seemed to be relatively successful at removing phishing websites while it took on average 150 times longer to remove child pornography.
  4. OpenCV for Processing (Github) — OpenCV for Processing is based on the official OpenCV Java bindings. Therefore, in addition to a suite of friendly functions for all the basics, you can also do anything that OpenCV can do. And a book from O’Reilly, and it’ll be CC-licensed. All is win. (via Greg Borenstein)
Comment
Four short links: 25 April 2013

Four short links: 25 April 2013

iOS Package Manager, Designed Satire, API Fragility, and Retweeting WWI

  1. Alcatraz — package manager for iOS. (via Hacker News)
  2. Scarfolk Council — clever satire, the concept being a UK town stuck in 1979. Tupperware urns, “put old people down at birth”. The 1979 look is gorgeous. (via BoingBoing)
  3. Stop Designing Fragile Web APIsIt is possible to design your API in a manner that reduces its fragility and increases its resilience to change. The key is to design your API around its intent. In the SOA world, this is also referred to as business-orientation.
  4. @life100yearsago (Twitter) — account that tweets out fragments of New Zealand journals and newspapers and similar historic documents, as part of celebrating the surprising and the commonplace during WWI. My favourite so far: “Wizard” stones aeroplane. (via NDF)
Comment

Making government health data personal again

An interview with Fred Smith of the CDC on their open content APIs.

Health care data liquidity (the ability of data to move freely and securely through the system) is an increasingly crucial topic in the era of big data. Most conversations about data liquidity focus on patient data, but other kinds of information need to be able to move freely and securely, too. Enter several government initiatives, including efforts at agencies within the Department of Health and Human Services (HHS) to make their content more easily available.

Fred Smith is team lead for the Interactive Media Technology Team in the Division of News and Electronic Media in the Office of the Associate Director for Communication for the U.S. Centers for Disease Control and Prevention (CDC) in Atlanta. We recently spoke by phone to discuss ways in which the CDC is working to make their information more “liquid”: easier to access, easier to repurpose, and easier to combine with other data sources.

Which data is available from the CDC APIs?

Fred Smith, CDC

Fred Smith, CDC

Fred Smith: In essence, what we’re doing is taking our unstructured web content and turning it into a structured database, so we can call an API into it for reuse. It’s making our content available for our partners to build into their websites or applications or whatever they’re building.

Todd Park likes to talk about “liberating data” — well, this is liberating content. What is a more high-value dataset than our own public health messaging? It incorporates not only HTML-based text, but also we’re building this to include multimedia — whether it’s podcasts, images, web badges, or other content — and have all that content be aware of other content based on category or taxonomy. So it will be easy to query, for example: “What content does the CDC have on smoking prevention?”

Read more…

Comment

Masking the complexity of the machine

The industrial Internet will bring abstraction and modularity to the physical world.

The Internet has thrived on abstraction and modularity. Web services hide their complexity behind APIs and standardized protocols, and these clean interfaces make it easy to turn them into modules of larger systems that can take advantage of the most intelligent solution to each of many problems.

The Internet revolutionized the software-software interface; the industrial Internet will revolutionize the software-machine interface and, in doing so, will make machines more accessible. I’m using “access” very broadly here — interfaces will make machines accessible to innovators who aren’t necessarily experts in physical machinery, in the same way that the Google Maps API makes interactive mapping an accessible feature to developers who aren’t expert cartographers and front-end developers. And better access for people who write software means wider applications for those machines.

I’ve recently encountered a couple of widely different examples that illustrate this idea. These come from very different places — an aerospace manufacturer that has built strong linkages between airplanes and software, and an advanced enthusiast who has built new controllers for a pair of industrial robots — but they both involve the development of interfaces that make machines accessible. Read more…

Comment: 1
Four short links: 18 September 2012

Four short links: 18 September 2012

Rapture of the Nerds, Amazon Maps API, 3D Printer Queues, and the New Aesthetic

  1. The Rapture of the Nerds (Charlie Stoss, Cory Doctorow) — available for download and purchase under a CC-A-NC-ND license.
  2. Amazon Maps API — if there is an API layer of general use to developers, Amazon will build it. They want to be the infrastructure for the web. Tim identified “the Internet Operating System”, and Amazon figured out how to put a pricetag on every syscall.
  3. Hoektronics — open source 3d printer queue management. (via Daniel Suarez)
  4. The Machine Gaze (Will Wiles) — Converging, leapfrogging technologies evoke new emotional responses within us, responses that do not yet have names. (via James Bridle)
Comment: 1