APIs

Google's Cloud Vision API Can Search Individual Video Frames

8 Mar , 2017  

Google’s new Cloud Video Intelligence API makes it possible to scan and search videos for nearly anything thanks to machine learning. Google says the tool relies on a simple REST API that can peek at every single frame in videos hosted in Google Cloud Storage. 

, , ,

APIs

An Authoritative Guide to CORS (Cross-Origin Resource Sharing) for REST APIs

8 Mar , 2017  

Many modern Web applications (and their developers) depend on nearly frictionless and simultaneous access to Web APIs from multiple API providers. But like a firewall that closes off access to untrusted parties in the name of security, the Web’s default is to prevent such “loose” behavior. Thankfully, that default can be securely overridden.

,

AWS

Create New Voice-Driven Capabilities for Alexa with AWS Lambda

25 Giu , 2015  

Alexa is the cloud-based voice service that powers Amazon Echo, a new category of device designed around your voice. AWS Lambda is now integrated with the Alexa Skills Kit, a collection of self-service APIs, tools, documentation and code samples that make it fast and easy for you to create new voice-driven capabilities (or “skills”) for Alexa. You simply upload the Lambda function code for the new Alexa skill you are creating, and AWS Lambda does the rest, executing the code in response to Alexa voice interactions and automatically managing the compute resources on your behalf. No prior experience with speech recognition or natural language understanding is required—Amazon does all the work to hear, understand, and process the voice interactions.

Read the Alexa Skills Kit documentation for more details. Visit our console to get started with our Alexa Skills template.

, , ,

APIs

WP REST API Transforms WordPress Into Full Application Framework

27 Feb , 2015  

WordPress continues to move towards delivering a full fledged application framework. To complete its goal, API access to full WordPress functionality is a must. WordPress originally launched the WP REST API as a project aimed to deliver WordPress functionality without WordPress running as the front end or backend.

APIs

WaveMaker Announces API Gateway for Legacy SOAP-Based to REST-Based App Conversion

27 Feb , 2015  

This article is a company-provided press release and ProgrammableWeb cannot vouch for the accuracy of the statements within. If you have questions regarding the information below, please contact the company that issued the press release.

CloudFoundry

Continuous Delivery Among the Donkeys

26 Feb , 2015  

I was recently asked to give a brief overview of the mainstream market for continuous integration and continuous deployment and how companies are using it. The audience was a mixture of HeavyBit portfolio companies and their customers. So, it provided a nice mix of sellers and buyers. Since this topic comes up all the time in Pivotal conversations, I thought it’d be worth going over here as well.

Carrots on Heads, Please

Source: (PBF Comics)[http://www.pbfcomics.com/253/]

Source: (PBF Comics)[http://www.pbfcomics.com/253/]

I’m often fascinated—if agog in wonderment—at what the “elite” of the tech world are doing, those “unicorns.” There’s even “horses” out there—high performing organizations that are keeping up with those unicorns. But, I’m most interested in the normal folks, “donkeys,” as I like to think of them. I like seeing how the donkeys are doing when they strap a carrot to their head and try to keep up with the unicorns.

If you’re the type of person who wants the benefits of Cloud Foundry (making sure you’re shaving the right yak, focusing on application development instead of infrastructure development), you’ll want the benefits of continuous delivery, namely, speeding up your software delivery pipeline by automating as much as possible from builds, to tests, and even promoting builds to production.

These are outcomes of doing CD. The overarching goal is to reduce the cycle time to get new features into production, helping you establish a feedback loop that you then use to guide the perfection of your software. That last part is key, and often “money left on the table” when organizations stop short of changing their process.

So, let’s take a look at a quick survey of studies on how CD is doing out there in donkey-land.

Yeah. Everyone Wants a Pony. Astute Question, Boss

When I was at 451 Research, we did two studies of the DevOps market, from a donkey perspective. The first study had 201 participants, the second 300. We achieved a good cross-industry mix, not just people in the technology world. There were plenty of horses and donkeys in there. One of the first questions we asked was around each company’s desires to speed up software deployment. That is a core benefit of DevOps (perhaps the core benefit), and certainly a core benefit of continuous delivery.

In aggregate, the answer was painfully obvious—of course people wanted to go faster. Everyone wants a pony! Sliced up by industry, things got a little more interesting:

There are obvious ones who want to speed up like retail, entertainment, and SaaS companies. Industries like transportation can seem weird until you realize that IT-driven companies like Fedex, UPS, or even Uber are in that category (which is to say, there’s tremendous competitive pressure for IT to move faster). On the low-end, it’s sort of depressing that health care is less interested (I know I’d certainly like more, interesting uses of software when I visit the doctor), and perhaps things like construction are not so surprising.

When I look at this chart it helps me triangulate what types of industries are most interested in using software to change how they do their business. Those industries on the left side are certainly high on the list of people who’d be interested in continuous delivery, one would assume.

The Job To Be Done: A Platform for Speedy Software Delivery

With the desire to speed up software delivery frequency, we’ve found the job to be done. Now, a job to be done is a fun way of describing the problem a product or service solves—what “job” does a customer “hire” a business to do? I hire a hamburger to (a.) fill me up, and, (b.) make me happy. In contrast, when I’m on a long road-trip, I might just “hire” a gas station hot dog drowning in pump-chilli to fill me up, but not really make me happy.

In the realm of continuous integration and continuous delivery, there’s a clear job to be done—creating the “pipeline” for packaging up, verifying, and then deploying software into production. That is, everything between writing code and operating it. Someone once suggested to me that DevOps was simply the evolution of continuous delivery, which, while not entirely accurate, is useful framing. In that sense, I think it’s good to use one of the older but still useful process studies from the DevOps world, the software delivery platform:

Originally published in 2012, it’s stood the test of time and even popped up in one of the more useful cloud books of last year, The Practice of Cloud System Administration. CI/CD plays a huge, if not necessary, role in this process. One key point is to think of structured platform—moving code through this “pipeline” requires a lot of standardization and discipline. The alternative of re-inventing the packaging and infrastructure layers each time is the wrong kind of chaos.

There’s another vital part missing from the diagram, though, usually not from the conversation around it—a feedback loop. In addition to just getting software out the door more frequently, the primary business benefit of continuous delivery and DevOps (you see how those two so neatly dance around with each other?) is access to oodles of feedback about how customers are using your software.  This is used to hone and modify your software to better fit what your customers want, and one presumes <hopes>, that it leads to making more money from them.

Adapting to this feedback loop is the “money on the table” when it comes to process. I see very few donkeys taking advantage of those feedback loops, and the horses and unicorns even struggle with changing their process. Surveys and anecdotes alike show that people feel like things are often going wrong with their modern IT projects and often blame doing too little when it comes to change.

Speaking of Failure: CI/CD Use is Low in Donkey-land

Getting down to actual tool-usage, surveys from 451 and others, show a consistently lower use of CI/CD tools than you’d expect:

Here, you see the sad donut and some confirming, but encouraging survey data from DZone.

The sad donut shows that somewhere between 25–30% of the respondents are using CD tools like Jenkins, Bamboo, or hosted CI/CD services. There is a seemingly positive 35%, let’s call it, who are creating their own CD platforms. In past years, “rolling your own” when it came to service delivery platforms was needed and there was no other option. But, the technology is mature at this point, calling into question the strategic worth of DIY’ing your continious delivery platform. Effort spent creating your own CD tool is probably better spent on, you know, the actual software your customers use. The most distressing part of the donut is the near 30% of respondents who are doing nothing. I call this “distressing,” because, one, I like to be hyperbolic to keep myself awake, and, two, because CD as an idea and technology has been around a long time, well over five years. It is hard for me to imagine a software development team that wouldn’t benefit from it.

Now that I don’t work at an analyst shop, I can freely mix and match research data. So, I wanted to pull in some additional survey results on CD. On the right, you can see a year over year comparison of a DZone study, first listing companies who believed they did CD and then, according to a pretty good criteria based on orginization indicators laid out by Martin Fowler, judging which of those respondents are actually doing CD. Again, the results are somewhat shocking, but help triangulate the sad donut.

The Pipeline Is Your Platform, Perfect It!

For ease-of-thinking and strategic application, I wanted to simplify the software delivery platform diagram a bit. So, here it is with Pivotal colors!

There are a few things to think about:

  1. The most valuable part of this process is actually a handful of pixels—the first few steps where you’re creating the software used to help run your business. The feedback loop is clearly key to getting the right specifications in place and making sure you’re writing software that is actually effective. I believe these first two boxes are where most companies—most donkeys to be sure—should spend the majority of their effort (and yes, one should bundle test/verify in there, that’s always nice…).
  2. Over recent years, we’ve spent most of our time as an industry focused on the rest of the boxes, especially the infrastructure platform and production concerns boxes. Topics like cloud, OpenStack, and containers have made this area a churning pool of excitement. When I was an analyst and doing cloud strategy, I came across enterprises all the time who wanted to build their own platforms out of piece parts. For some—often the unicorns—it makes sense, or at least it used to. For others, it’s probably gold-plating and a mis-application of time and money. Unlike in recent years, there’s are so many “off the web” (to morph the old OTC idea) infrastructure parts that you’re likely better just using one of those rather than letting your people go crazy with the always entertaining task of building a platform.
  3. You also need to be on the look-out for fat boy scouts in this pipeline. If you lead an exciting enough life that you’ve read The Goal (a “business novel”), you’ll hopefully recall the lesson of the fat boy scout—your line of marching boy scouts will only be as fast as the slowest marcher. It follows that optimizing anything else before addressing bottlenecks is a waste of time. Focus on analyzing the whole process (i.e., the pipeline) and ruthlessly remove the bottlenecks. If you want an IT nerd version of The Goal, check out the more recent The Phoenix Project.

All of this raises a larger point. While we might think of all of this as Agile and the sort of cowboy codery that’s often associated with it…there’s actually a tremendous amount of discipline, process, and careful work involved in running a business with a continuous delivery engine. It’s much more than just using a tool. It relies on building out and perfecting the entire pipeline. The rewards are high, though—getting software out the door faster, making customers happier, which hopefully leads to more profits.

Let’s Fix the Sad Donut

From the anemic, but slowly beefing up, usage of CD we’re seeing out there it’s clear that we can do better as an industry. Almost five years after the publication of the Continuous Delivery book, there’s a lot of that half full glass to fill. In the meantime, the growing interest in developing mobile applications, cloud native applications,12 factor style applications, DevOps, and cloud in general has sparked a renewed interest in the otherwise sleepy,but always valuable, corner of the IT world, software development. Software development is suddenly very interesting and the focus of lots of great work and innovation from companies large and small. Indeed, HeavyBit’s investment thesis is that development tools as a market is fast becoming a big deal again; a strategic point that Pivotal obviously believes as well. Part of the goal of Pivotal Cloud Foundry is to provide as much as possible in the nature of structured platforms to slim up all those fat boy scouts in the pipeline. While the label “Platform-as-a-Service” has been and is certainly one that applies, we prefer to think of what we offer as a set of tools that helps our customer perfect the software delivery pipeline, that is: a platform.

Recommended Reading:

, , , , , , , , , ,

PaaS

AppFog Web Console UI Updates

23 Feb , 2015  

As with most teams, we have different people working on different things. When I joined AppFog in August 2013, I was part of the Support Team. However, during the last eight months I’ve shifted to a Front-end Web Developer role, while still handling some support responsibilities as well. One of my first projects was to redesign our Zendesk Help Center to better serve our users. (Learn more about the redesign here.)

Since then, I’ve mainly focused on improvements to the AppFog website and Web Console. In this blog post I’m going to share more details about the enhancements we’ve added over the past few months.

Jumpstarts

Over the last several months we’ve updated (or added) eight different Jumpstarts and Runtimes to make it easier for our users to quickly get started and launch their preferred development stack. We added banners indicating whether a Jumpstart or Runtime is in Beta, recently Updated or brand New. If you have suggestions for more Jumpstarts, please vote for them on our uservoice feedback page.

appfog-jumpstart-page

Jumpstarts Page with Status Banners

Managing Teams

We’ve improved the team member management functionality on the Teams page (https://console.appfog.com/#teams). Previously, the “Accept” or “Decline” buttons would only become visible if you moused-over the Member Invite box. This was not intuitive for new users, so we dropped the “slide up” animation in favor of clearly displaying the buttons. We also updated the text to more clearly communicate which teams you belong to and who is on your team.

teams-functionality

Updated Member Boxes on Teams Management Page

Selecting a Plan

On our Plans page (https://console.appfog.com/#plans), we’ve replaced the table layout design with a box-style layout which more closely matches the rest of the web console. Each box still lists the plan’s features, but we think in a bit more eye-pleasing detail.

plans-page-update

Old vs New Plans page in the AppFog Web Console.

We’ve also made some updates to the buttons — the button states and labels has been modified slightly to give more information about your subscription plan and your options.

  1. New subscriptions: For new users who have just signed up and need to choose a new trial plan, the buttons are orange with the label: “30-Day Trial”.
    acct-btn-new

    30-Day Trial button

  2. Trial subscriptions: Once you have selected a trial plan, the chosen plan will have a gray button labeled “Current”, while all other plans will have an orange button that reads “Continue Trial”. This reminds users that they can switch between plans anytime during the trial period.
    acct-btn-trial

    “Continue Trial” and” Current” plan buttons

  3. Existing active subscriptions: For accounts with an active subscription, the buttons are blue and gray. The box displaying a gray button is your “Current” plan, while the remaining blue “Select” buttons give users the option to upgrade or downgrade at anytime. (Note: Any changes are pro-rated, and will either charge your card for the difference from your current plan, or result in an account credit).
    acct-btn-existing1

    “Select” plan and “Current” plan buttons on an existing account.

Checking Subscription Status

We’ve added a subscription status message to the top of the Web Console. We added this so you can easily see the status of your trial or subscription without having to go to the Account page. Below is list of the most common subscriptions details.

  1. Trial subscription: If you have just created an account on AppFog and are in your trial period, the subscription status message displays your plan name, the number of days left in your trial, your subscription status, and a link to the plans page.
    status-trial

    Trial subscription status showing the plan type (Dev), days left in the trial (17), subscription status (Canceled), and a link to the plans page for users who want to trial a different plan.

  2. Existing active subscription: The subscription status message will display your plan name, next invoice date, and subscription status.
    status-with-sub

    Existing subscription status message showing the plan type (Basic), the next invoice date (March 2nd, 2015), and the subscription status (Active).

Add-Ons:

We’ve updated our Add-on Partner catalog on both the website and the Web Console to reflect name changes, new logos, and partner updates.

add-ons

Add-Ons Catalog

We hope these updates help make our Web Console more useable. If you have additional suggestions or ideas for how we can improve our user interface, please share them with us at http://feedback.appfog.com. And if you spot any UI anomalies or glitches, please let us know so we can get it resolved: support@appfog.com.

The post AppFog Web Console UI Updates appeared first on Platform as a Service Magazine.

, ,

APIs

Oracle Puts REST APIs at Core of Big Data Strategy

20 Feb , 2015  

Oracle this week at the Strata + Hadoop 2015 conference announced a significant expansion of its big data strategy that includes support for and access to the Oracle NoSQL database using a RESTful API.

, , ,

APIs

Paxata Leverages REST API to Automate Loading and Manipulation of Big Data

18 Feb , 2015  

Rather than continuing to rely on traditional extract, transform, and load (ETL) tools to get data into Big Data applications running on Hadoop, Paxata at the Strata + Hadoop 2015 conference today unfurled an update to its software that lets organizations use a REST API to load data.

, ,

PaaS

Custom Error Pages for the Win!

1 Feb , 2015  

As a developer, using a Platform-as-a-Service (PaaS) to host your web app or service really simplifies your life. But despite the error handling you’ve embedded into your code :-), your web app or service can still crash or become unresponsive. (Note: Whether you’re running a web site, web application, RESTful API application, SOAP-based web service, or something else, for the rest of this article I’ll just call it an “application”).

As you probably already know, one of the big advantages to using AppFog is that your application will be automatically restarted if it crashes… however, there are also times when your app may not be  responsive. There are several reasons this can happen:

  • Your app has crashed and is unable to restart due to buggy code or a misconfiguration: Bugs, bugs, bugs. It can be really hard to verify your code is bug free — still, some researchers have tackled this challenge.
  • Your app has crashed and is unable to restart due to lack of memory: If your app doesn’t have enough memory to start up, after 10 tries, AppFog will stop trying to re-start it.
  • Excessive inbound requests or slow responses: If your app can’t respond quickly enough to the inbound requests coming in, the AppFog platform will return an error page. This could be due to not having enough app instances to handle the request volume, or perhaps slow database calls are impairing your app performance.
  • Your app is offline: If you stop your app to do maintenance, such as pushing new code or updating your database, it will not be able to respond to inbound requests. Although we recommend using a blue-green deployment approach to ensure your app is available  during updates, not everyone uses this approach.

Whatever the reason, if your app is not responsive, the AppFog platform will return an error page:

Today we are launching a new capability: Custom Error Pages. Although the default error page is unbranded, using a custom error page allows you to return an error page styled to match your application’s look-and-feel.

To set up a Custom Error Page for your application, login to the Web Console, open your app’s mission control page, and select the Custom Error Pages option from the left nav menu to edit the HTML directly. After applying the changes, click the preview link above the editor text box to see how your edits will appear to your users. (Note: The “Apply Changes” button only activates after you’ve made changes)

 

Alternatively, you can use the Custom Error Page Generator at the bottom of the page to customize your error message. We store the HTML for your Custom Error page, but to use a different CSS or image assets, you’ll need to embed the links to these resources in your HTML. For our default error page, we used Amazon’s S3 service for its simplicity and reliability. To learn more, please see the Custom Error Page doc.

The post Custom Error Pages for the Win! appeared first on Platform as a Service Magazine.

, , , ,