The first place I had ever seen an API actually at work was as part of an operating system. It was a strange OS at that, a permutation of CP/M that used a graphical front end called GEM, which would later be ported to the Atari ST. The definition was explained to me like this: An "interface," as everyone knows, is a specification for how electrical components interconnect. Well, now it's possible for an application program - the part that does what users need - to interconnect with the operating system, which does what the computer needs. This way the operating functions don't have to be built into every program, they can just be handed off to the OS and the connection will look seamless. The principle was called a layer of abstraction. It was 1984, and it was the first time I'd heard the term.
It would be wrong to call the concept "revolutionary," unless you measure time in units of eons. Nearly three decades after its introduction, only recently have businesses come to realize how widely this architectural principle could be applied. No longer do complex processes have to be bound to precise, policy-intrinsic procedures. If teams can work independently, and computer resources devised to suit each team individually, then all that needs to be specified is the exchange of information between them.
Udemy has put together an infographic that compares Ruby, PHP and Python. This looks (briefly) at the history, popularity, ease of use, demand for programmers, benchmarks and more for each language. If you're job-hunting, Udemy says that you probably want to know PHP above Ruby or Python.
According to Udemy, Python is the "most-discussed" language, followed by PHP and Ruby. The rankings come from IEEE Spectrum's analysis of IRC discussions. Udemy also looks at the TIOBE Index, where PHP outranks Ruby and Python.
Looking for innovative ways to use R, the Big Data open source analytics language? Then take a gander at the two top winners of the first of a series of contests that R's corporate caretaker Revolution Analytics has produced. The winners, announced today, receive prizes that range from $1,000 to $10,000 for their submissions. It is an interesting collection and shows off the power of the language itself.
Google has some ideas how to make the Transmission Control Protocol (TCP) a little bit faster. Earlier this week, Google's Yuchung Cheng wrote about some of Google's research and ways that the "make the web faster" team suggests improving TCP. This includes things like increasing the initial congestion window, reducing the initial timeout for TCP, and using a new algorithm for loss recovery. According to Gooogle, this would decrease network congestion and boost page load speed significantly.
Canonical and the Ubuntu folks have taken a lot of risks in the Unity interface that ships with Ubuntu Linux. One of the things that the company has been leading towards is the Head-Up Display (HUD), a new tool for controlling applications that moves away from the traditional menu interface that debuted decades ago with the Xerox PARC GUI.
Canonical's Mark Shuttleworth blogged about the new interface design today, with a description, screenshot and a video demonstrating the use of HUD.
Two years ago, the U.S. Dept. of Homeland Security firmly decided (again) that a policy of responding to vulnerabilities in the nation's cybersecurity when they happen, is insufficient. The National Institute of Standards and Technology set about on a plan to model a 21st century perpetual vulnerability mitigation scheme - a continuous monitoring (CM) framework that attempts to model security procedures not in terms of crisis and response, but instead as a perpetual cycle of monitoring and engagement that stays basically the same whether or not there's a crisis.
In other words, if you "keep doing this all the time," then whatever happens won't destroy the network. Late last week, NIST produced its first series of drafts for how government information services could look, perhaps later this decade. It's so radically different from anything seen thus far, that NIST acknowledges that no one in the commercial sector has even come up with the language to describe it.
British software vendor Sazneo has launched a version of their chat software that you can now embed in any Web service or application. We last wrote about Sazneo about a year ago. "Sazneo Embed is ideal for companies that love the idea but are reluctant to introduce a new application onto busy desktops that already have email, instant messaging or social media tools." said Brett Davis, CEO. "Many of our clients have already started putting Sazneo into their internal applications and a number of SaaS businesses are now embedding it into their own products to offer a group messaging capability to their clients."
Over the last year, a firm called Usergrid has been building an open source tool for leading mobile app developers through the process of creating back-end services for managing users. The Usergrid philosophy is contrary to quite a lot of the cloud-centered design methodology promoted by SaaS - the idea that the server can do everything, and a thin device can serve as the portal. Instead, Usergrid has promoted the idea of richer mobile apps that use Web services and APIs in a more passive, RESTful manner.
Late last year on its company blog, Usergrid stated its intent to build out to a cloud-delivered service - essentially, transferring its intelligence to the cloud to help devs build intelligence on client devices. This morning, the firm got its wish, though maybe in a way not everyone expected: Usergrid has been acquired by cloud-based API modeling tool provider Apigee. And as both companies' CEOs tell ReadWriteWeb, the fruit of their new relationship is a little ways down the road.
Sometimes, you need to see what a technology can do before you can fully appreciate it. Take, for instance, CSS 3D and Three.js. It's one thing to hear about doing 3D elements for Web sites, and another to see them integrated into a well-designed site. Take, for example, Steven Wittens' Acko.net redesign.
Visit Acko.net using a current release of Firefox, and you'll see a nice clean site with a nice header image that demonstrates two-point perspective nicely. But hit the site using a WebKit browser, and you're in for a real treat.
The short answer might be no, as a number of website developers are beginning to think in terms of extending the core web apps to better handle mobile devices, such as iPads and other tablets. This flies in the face of current trends, so let's consider the pros and cons.
"We deal with all sorts of customers," says Amir Shah, the CEO of St. Louis-based Web developer AgilitySpeaks.com. "I find that when we introduce them to 'mobile' the first thing they think about, and usually the only thing they think about, is an app." But developing an app dedicated to tablets means forking into two or more different processes, and that can be complex and costly.