Behavior, Content, Money – 3 Things you should never give away for free!!!

BCmoney MobileTV

Publishing an App to the Cloud – AWS .vs. AppEngine .vs. Azure .vs. Heroku .vs. OpenShift .vs. OpenStack

Posted by bcmoney on May 30, 2018 in Cloud Computing with No Comments


No Gravatar

Public Cloud

Also known as a shared cloud, such Public Cloud services are provided “as-a-service” over the Internet, with little or no control over the underlying technology infrastructure. This cloud setup is appealing to many decision-makers as it reduces complexity (server sprawl within each company/department/location) and also reduces long lead times in testing, deploying and distributing new products. It is generally cheaper than traditional IT infrastructure in terms of moving the costs/risks of equipment ownership to the Public Cloud company, and the commoditization of such infrastructure makes managing the day-to-day operations of applications more efficient as well.

Private Cloud

Also called an “internal cloud” or “enterprise cloud”, the Private Cloud can offer activities and functions “as-a-service” but is deployed within a company intranet or internally hosted & managed datacenter, offsite. This cloud setup is packaged as a private product for a company or organization to implement on their own resources, and offers advanced security and high availability or fault-tolerant solutions not typically possible in a Public Cloud setup. In this scenario, the Private Cloud owner shares few, if any, resources with other organizations. Hence, multi-tenancy is not an issue. Little or no control is usually permitted over the underlying technology infrastructure. This cloud is appealing to many decision-makers as it reduces complexity and long lead times in testing and deploying new products. It is generally cheaper, too.

Open Cloud

Open Cloud Computing services are defined as those which allow full not only read/write access to their paying users but also the ability to download the entire environment, as well as to customize which software and platforms are installed in the environment. In addition, the full source code for the Cloud platform is made available so that more advanced users could potentially run their own instances on their own commodity servers/hardware.

Closed Cloud

Closed Cloud Computing services are defined as those which allow only partial (or possibly full) read/write access to their paying users but differ drastically from Open Clouds in that they do not provide the capability to download the entire environment, and the options for customizzation are limited to preset options for which software and platforms are installed in the environment (in particular, that company’s own technology would likely feature prominently; as in the case of Windows Azure which only runs Microsoft technologies such as C# and ASP.net on a Windows Server and/or IIS, or, Oracle MyCloud which runs only Java-based technologies on Solaris and/or Glassfish). In addition, the source code for the Cloud platform itself is not available thus customers typically do not have the option of running an instance of the cloud platform on their own commodity servers/hardware.

Hybrid Cloud

The Hybrid Cloud is an integrated approach, combining the power of both public and private clouds. Customized rules and policies govern areas such as security and the underlying infrastructure. In this scenario, activities and tasks are allocated to internal or external clouds as required.

 

Summary of Cloud Offerings

  Open Closed Public Private Hybrid Data Cost AWS AppEngine Azure OpenShift OpenStack

IFTTT finally releases its own API, sort of, with “Maker channel” triggers

Posted by bcmoney on October 30, 2015 in Cloud Computing, JSON, Web Services with No Comments


No Gravatar

Pwn the internet

Pwn the internet (Photo credit: Wikipedia)

IFTTT finally just released its own API (sort of) when it announced the introduction of its new “Maker” Channel which may very well be the closest we ever get to a true API. It offers HTTP-based activation of Actions to carry our when invoked or Triggers which can be combined with another service.

The Maker Channel extends the power of IFTTT to any DIY project, big or small,” said the company in a recent blog post. “You can now build and connect Recipes to any device or service that can make or receive a web request.”

Since launching nearly four years ago, If This Then That (IFTTT) has provided a web-based platform for “thing” integration towards realizing the promise of the Internet Of Things (IoT) helping to make our lives simpler rather than more complicated as it often does as new technologies continue to be introduced.

For a quick refresher from my previous post on IFTTT’s role within the Internet of Things, it enables its users to authenticate/authorize and inter-connect a variety of tools, devices/sensors, applications and web services through unique “recipes” that are based on an “if this happens, then do that” formula. These could accomplish anything from the serious (such as automatically receiving a text message if suspicious activity is picked up by your home surveillance system), to the fickle but convenient (for instance backing up photos uploaded to Facebook which have a particular tag to a dedicated Dropbox folder). Recipes like these have all been created by the community and are free to use (unless you wish to mark your recipe private, and either way the data you enter into your recipe of course stays private and only a template of it is shared)

Read the rest of this entry »

The Internet of Things – If this then what?

Posted by bcmoney on January 10, 2015 in Cloud Computing, Mobile, Web Services with No Comments


No Gravatar

English: A technology roadmap of the Internet ...

English: A technology roadmap of the Internet of Things. (Photo credit: Wikipedia)

The “Internet of Things” (or IoT) is an evolution of microprocessor engineering, sensor innovations, wireless communications technologies, and of course the Internet itself. An IoT “thing” could be any natural or man-made object that can be assigned an IP address and provided with the ability to transfer data over a network. For example, inanimate objects (i.e. many cars have more built-in sensors than early NASA shuttles for doing everything from alerting the driver when tire pressure is low to regulating anti-lock breaking systems or airbag deployments during emergencies), animals (i.e. a wild animal tagged with biochip transponder to track position/population size or migration patterns) or people (i.e. an elderly person with a heart monitor device or any other implant or device which tracks health data). In all of the previous examples, “things” are provided with unique identifiers and the ability to transfer data over a network without requiring human-to-human, human-to-animal, or human-to-computer interaction. A major question of this Internet of Things is now what the “killer applications” will be. As in, what real-world problems will be solved, what efficiency improvements can be gained or which tangible benefits can be realized for the end user? By connecting more and more devices (thanks to the proliferation of IPv6 addresses, enough to give every atom on Earth’s surface a dedicated IP), we are of course creating more and more usage data,  observational data and metadata about the interactions of these devices and users within the rest of the world, which has also placed even more importance on BigData. Certainly, a big part of IoT will be task automation (the absence of a user during operation of devices and their software),  enabling devices to function more and more autonomously and theoretically freeing up users from manually entering commands via a command-line or clicking/tapping on controls within a user interface. Enter the service If This Then That (IFTTT), which enables you to “wire together” the capabilities of or otherwise integrate data from two disparate sources to accomplish a particular goal. Read the rest of this entry »

LayerPlayer released for SkipSearch

Posted by bcmoney on December 21, 2014 in AJAX, Cloud Computing, HTML, JavaScript, Semantic Web, TV with No Comments


No GravatarAnnouncing the availability of SkipSearch’s new Layer Player ALPHA version. This is still early days even though its a multi-year project for me, as I continue to work on this in my very rare spare time. This new feature will much more readily bring to light the capabilities of the recommendation engine built under the hood of SkipSearch (powered by OpenRecommender). With this release, SkipSearch is effectively moving from Alpha to Beta in 2015 and getting further and further from vaporware and inching slightly closer to being a legitimate full-blown, widely usable (and hopefully well-used) Web 3.0 application. Please take a moment to check it out, and sign up for the BETA if you haven’t already:

131818816_80_80

 

For comparison’s sake, here’s the architecture of a typical Web Crawler that powers most Search Engines:

Read the rest of this entry »

Working with LimeSurvey’s RemoteControl2 JSON-RPC API in PHP

Posted by bcmoney on April 17, 2014 in Cloud Computing, JavaScript, Mobile, PHP, Semantic Web with 2 Comments


No Gravatar

Hideous LimeSurvey shirt

Hideous LimeSurvey shirt (Photo credit: juhansonin)

Recently, I needed to switch away from SurveyMonkey, which, while still a useful free service for quickly collecting some basic Survey results, leaves much to be desired in terms of what they offer in their basic version. Of course the fully paid versions offer significantly more functionality, but the upper-end of the pricing schemes that do everything I needed are just way out of my price range for small individually-funded and/or non-budget independent projects.

This lead me to LimeSurvey (formerly PHPsurveyor), the leading open source web-based Survey data collection software, with a back-end written entirely in PHP.

Getting LimeSurvey installed on my own server was incredibly easy, just download the latest release version and upload the files via FTP. Then load the installation script and it will guide you through the remaining install steps (which are basically just setting a username/password for the administrator account, as well as database configurations such as connection info, table naming, etc). Pretty standard fare for a long-running open source PHP project with a solid development community in place.

What really set LimeSurvey apart from the alternatives though, was the extensibility offered by its API, dubbed RemoteControl2 (with support for both XML-RPC and JSON-RPC).

I had initially started out with XML-RPC since I’m kind of a nerdcore “semantics” guy, and favour XML over JSON for most server-side integration use cases (unless I’m publishing data for client-side consumption, then I almost always favour JSON). The reason, well there simply are way more tools and methodologies already in place for XML than JSON and the reliability mechanisms built into XML such as well-defined schemas (DTD/XSD) which provide data validation, namespsaces (ns) which prevent conflicts in name/value label namings and help ensure you get the right values when parsing, stylesheets (XSL/XSLT)  which allow for on-the-fly transformations, query languages (XPath and XQuery) which simplify data filtering and extraction tasks, and XML security mechanisms such as Digital Signatures which enable better security. However that’s all sure to start a debate on here.

The point is, I wanted to go XML-RPC, I really did! However I have to say, the simplicity of their JSON-RPC API which seems particularly well-implemented won me over.

So here’s what I made, a simple Survey response submission script that I call “limesurvey.collector.php“:
Read the rest of this entry »

BC$ = Behavior, Content, Money

The goal of the BC$ project is to raise awareness and make changes with respect to the three pillars of information freedom - Behavior (pursuit of interests and passions), Content (sharing/exchanging ideas in various formats), Money (fairness and accessibility) - bringing to light the fact that:

1. We regularly hand over our browser histories, search histories and daily online activities to companies that want our money, or, to benefit from our use of their services with lucrative ad deals or sales of personal information.

2. We create and/or consume interesting content on their services, but we aren't adequately rewarded for our creative efforts or loyalty.

3. We pay money to be connected online (and possibly also over mobile), yet we lose both time and money by allowing companies to market to us with unsolicited advertisements, irrelevant product offers and unfairly structured service pricing plans.

  • Archives