Category Archives: Software Development

Bookmarks and URI based versioning

Threads about how to version hypermedia (or REST) APIs are multitude. I certainly have made my opinion known in the past. That being said, the most common approach being used in the wild is putting a version number in the URI of the resources which are part of the API. For example, http://api.example.com/v1/products/42. That approach [...]

And a lot of that performance, Prasad said, came from removing unnecessary design wankery (our verbiage, not his) — the rounded corners, the omnipresent gradients. By making things simple, clean, modern, flat, and even print magazine-like, the LinkedIn app only got faster and better on the performance side, as well. — Venture Beat

My “cloud” tool chain

Recently Mike Amundsen posted a list of the tools he uses for developing cloud applications. He also asked for others to provide their lists. So here goes: Emacs The one true development environment that all others aspire to be like when they grow up. Mike has been using Cloud9 and really seems to like it. [...]

Developing software as if quality matters

When we started developing CloudSwing we decided to develop CloudSwing as if quality actually matters. By quality i don’t just mean that the code functions as designed. High quality products also meet the needs of the business and customers. In the past there has been a sense of disconnection between the business, QA and development [...]

RDF vocabulary design issues — checksums

The SPDX technical team recently encountered and interesting situation while developing our RDF vocabulary. The exact scenario was as follows, the information we store about a file is potentially invalidated with every change to the contents of that file. For example, some code might be added that has different licensing requirements. Or all the code [...]

RDFa as interchange format

The tension between human and machine readability is never greater than when developing interchange formats. Formats that are easy and efficient for computers to read tend to be rather difficult for people to understand. When developing an interchange format you know that there will be few tools supporting it when it is released tools so [...]

Javascript

From the coffeescript homepage: Underneath all of those embarrassing braces and semicolons, JavaScript has always had a gorgeous object model at its heart. That sums up my feelings about javascript almost exactly.

Saml SP announce

Saml-sp provides support for being a SAML 2.0 service provider in an HTTP artifact binding SSO conversation. Synopsis This library provides parsing of SAML 2.0 artifacts. For example. artifact = Saml2::Type4Artifact.new_from_string(params['SAMLart']) # => #<Saml2::Type4Artifact …> artifact.source_id # => 'a314Xc8KaSd4fEJAd8R' artifact.type_code # => 4 Once you have an artifact you can resolve it into it’s associated [...]

Resque-multi-step

I’ve been developing using asynchronous jobs quite a bit lately.1 There is only one reason to do work asynchronous. It takes too long to do it synchronously. Fortunately, it turns out that many of these very large work loads are embarrassingly parallel problems. And look, you have several (dozen) workers just waiting to do your [...]

resque-fairly

I have been using Resque quite a bit recently. It is a really nice asynchronous job system based on Redis. Resque checks the queues for jobs to process in a fixed order. (In alphabetic order, to be precise.) This turns out to be a problem is you want predictable handling time for jobs. For example, [...]