Friday, July 27, 2012

How do you explain Platform as a Service to a 'Normal'?

Last night I received a letter via our Support page that forced me to think a bit. The summarized text read:  

"If I purchase your product do I solely own it . Is this a situation where I will need upgrades and add on's and you will be wanting personal information each time. I want to own my db software."

I think that the concept of Platform as a Service or Software as a Service is a bit befuddling for 'Normals'; those that use the web, but do not grasp the complexity of the environment.

My response (edited a bit) is below. How would you explain Cloud Software to a Normal?

"Maybe I can clarify your comment & questions a little. 

Younicycle (online) is similar to leasing an apartment in a large building. You don't 'own' the apartment, but essentially pay for someone else to make sure that the apartment and its contents are safe, the heat, electric and air conditioning work and that when you go to the apartment building, don't discover that the entire building has somehow gone missing.

We are the guys that make all of that work, with servers, applications code, database, etc. People work full time to keep everything in good shape. I guess you could say that we are working in the basement, doing code updates and we usually apply these Updates (upgrades) to ALL accounts 1x per week, but we do all of that work in the basement and ideally, you won't even know the mini-upgrade occurred. We couldn't do this work from inside an apartment because the code is in the basement. This is our 'working layer' and it is where WE live.

So you don't 'own' the apartment - but you do own all the Contents of that apartment. At least we hope you do. If someone (example) pirated a video and stored it inside their Younicycle Account, then they'd be 'storing stolen goods'. If the owner of the video was able to prove that it had been stolen, well, that wouldn't be good.

Now, if you don't like that, but still like the functionality, then you can buy your own Server (hardware) and you can install a 'small' version of Younicycle on your own box, but you'd better know how to do all the work in the basement - and I can tell you, it's very complicated. Debian Linux, Apache, PostgreSQL, Php + an enormous number of other types of files. All of them need to be maintained and updated. When even one of them requires an update, it can break 6 other items.

Also, though the distinction is a little muddy for most of us, no one 'owns' a database. Instead we license a database and there are many types of licenses. We use PostgreSQL for Younicycle, a powerful relational database system - but we don't own it. No one does because it is Open Source.

To reiterate, you own what you put into the account + the stuff you make within the Account, but we own the building. Hopefully that clarifies Younicycle, at least a bit."

How do you folks explain Platform as a Service? I'm listening ....

Thursday, July 26, 2012

Knowledge Management: Access Control List and Role Based Access Control (Part 2)

Made a video of using our Cloud Software to Administer users and their allowable actions. We're getting slightly more proficient at using Adobe Captivate 6 & by the time we get to video #99, we'll probably know what we're doing. The web interface draws on the built-in capabilities of PostgreSQL. This video covers:
  •  Creating a new Role
  • Assigning privileges for the Role
  • Creating a new user
  • Assigning the new user to the Role
  • Verifying that the User was assigned to the correct Role.
Everything is select, point or click.  No knowledge of SQL is required.

Get your popcorn.

Wednesday, July 25, 2012

Knowledge Management: Access Control List & Role Based Access Control

A long, long time ago, I was an Artillery Officer in the Marine Corps with one of my collateral duties being Security Officer for Nuclear weapons.  In order to get that classification, I needed to be:
  • Standing in the wrong place when the Commanding Officer assigned collateral duties
  • Be eligible for & receive a 'Top Secret' Security Clearance, which involved a 10 year Background Investigation.  Yes, guys actually went around and interviewed people that didn't know me very well.
  • Pass a written & physical 'do this' exam, though the details of that process are now muddy.
When all was done, I had my Top Secret Security clearance, but that was only part of the 'Knowledge Management' puzzleMy Access to documents and information was restricted based on my 'need to know'.  An Artillery Officer had no reason to know non-public details about ICBMs or under development weaponry.  Instead, there was a very specific list of items I would be allowed to see or act upon.  This list is similar to an Access Control List.  My position (Artillery Nuclear Security Officer) was my  Role.  Everyone in the USMC that was assigned that specific Role was also given the same Access Control List of actionable items.

Our Platform as a Service currently includes 345 Actionable items (Privileges), the sum of which comprise the Access Control List, control of which is usually reserved for the Account Admin.  In fact, even viewing the ACL requires specific Privileges.  These Privileges can be selected  in any combination and when Saved (as a group) are named.  That name is called a Role.  Users are assigned to a specific Role, usually done by the Account Admin.

A data entry operator would not need 'Objects->Checkout settings->Add Payment system' in order to do data entry nor would a CEO with the equivalent of a 'Top Secret Clearance' require 'Objects -> Solutions-> Delete SaaS Solution package'.  Most damage is unintentional and it is part of  the Account Admin's job to ensure that the CEO does not see a button, say "What does this do?" and potentially nuke 70 hours of work. (Account Admin forgot to schedule auto-backup).

Younicycle's ACL and Roles are based on PostgreSQL, but the basic concept of Knowledge Management predates any database or computer system.

My next post will include a video that shows how to use the built-in Access Control List to build a Role and assign Users to the Role.  Knowledge of SQL is not required as it is a simple select and click web interface.

Double-thanks for reading.  Boring but important.

Tuesday, July 24, 2012

Google Provides Taxi Service (Part 2)

We bought Adobe Captivate 6 last week for Mac & PC and are still familiarizing ourselves with the menus, options and properties, so the first few vids we put out will look like a Novice is at work.  It looks like a duck and in this case, it is a duck.

We split it into 2 parts and found that the iframe html code to embed in blogger html can be generated at youtube.  Until I did that, it was distressing ugly, even by my less than lofty standards.

Part 1 shows working with Pixlr (a SaaS) from within Younicycle (a Platform as a Service (PaaS) that creates SaaS) and pushing the image to Picasa.  Part 2 shows pulling the image from Picasa into Younicycle, then viewing the image and including within a Print Design.  The use of the Print Design Tool within Younicycle will be covered in much greater detail in future posts. Once again, we are using Google as a taxi service and data-bridge for the file.

Managed to become barely competent with Blogger, YouTube + Adobe Captivate 6 within 1 week.  If there is a lesson to be learned here, it is that even older folks can learn new quasi-skills.  I'm 60 and have never had a bit of IT training or courses, anywhere.

If I can begin to learn new cloud software skills while still maintaining my normal day to day functions, believe me, anyone can.  Labeling yourself as 'too old to learn' is, in the current vernacular, lame.

Part 1:

Part 2:

Friday, July 20, 2012

Google Provides Free Taxi Service

As I was about to finish up on yesterday's post and explain how the combination of Younicycle - Pixlr - Google can lead to unexpected integration, I bumped into this post from Loraine Lawson at ITBusinessEdge (excerpt);

"Cloud integration is going to require planning, some serious investigation into your options, and a hard look at how integration will impact your total cost of ownership for any SaaS solution."

We didn't plan the partial, younicycle <-> pixlr SaaS integration as I discovered it by accident (aka, messing around), but it wouldn't work if Google did not taxi the data.

Pixlr can push and pull images to and from Picasa.  Younicycle can push and pull images to and from Picasa, with a kicker - it can be automated as one part of our Google integrated backup serviceThis taxi service and data bridge should allow us to create a wide range of relationships and productivity for those SaaS that have adopted OAuth 2.0 + additional, required Google code.  
Tomorrow I'll write a short post on how to pull that simple image created at Pixlr from Google and into Younicycle, all done from within a Younicycle, PaaS Account.

Have a good Friday night and if you need a taxi, Google only transports data, not humans.

Wednesday, July 18, 2012

Cloud IDE. Simple can be Good.

 If you make it through the first four paragraphs of this PaaS post, you'll find an interesting idea.

The web interface displayed below is one page of the Administrative web front-end within an Account.  Within this web interface are 'read-only' items, combination lists, input text fields, buttons, a checkbox and labels with the data being stored and retrieved from PostgreSQL tables.  The web interface was designed by an Application Developer and intended to be used by a Content Developer. 

Big deal, so what, not impressed?

What if we provided all of the internal Tools to create a similar web form?  Younicycle does provide all of the tools necessary to build this form, store, retrieve and manipulate the data.  So, the two of you (Content + Application Developer) will be able to create your own complete SaaS and you'll be able to do it online.
To us, that's the point of a Cloud IDE. Develop online, collaborate, save money, be more efficient.

On a scale of 0 to 10, I personally rate the difficulty of Settings ... Manage Account ... Details
as a 0.  It's simple and in this case,  simple is good.  Although this Account set-up form is simple, it applies default values to other aspects of your Platform as a Service Account.  Within this set up form is one hidden Gem that I find particularly useful (Add new link (18 -> 29).

New, vertical SaaS are popping up every hour, but there is one that I find particularly useful; Pixlr.  
Pixlr enables you to create and edit images online and like Younicycle, supports GoogleID, OpenID and integrates with other Google services.

From their Blog: "both Pixlr Editor and Pixlr Express now work with Google Drive."  Well, we do too.  

Now lets connect the dots.  You have logged into your PaaS account, you go to Settings ...Manage Account .... Details and add a link to Pixlr (# 19 through #22 in the image).  The link we added to pixlr is now available from the Tools menu so we can go directly to pixlr and, using GoogleID (which we also support), I can login to my pixlr account - and do it from within my Younicycle PaaS account.

Now I use pixlr as usual and either edit an existing image or create a new image.  When I Save I will be given an option of saving to my local PC, or to Google Picasa (+ other options).  Younicycle is ALSO integrated with Google Picasa so pulling that image into Younicycle from Google Picasa is a no-brainer.  

As a result, we now have integrated one SaaS (pixlr) into the Platform as a Service.  Thus, Younicycle also = an SaaS Aggregator.  

After log in to pixlr, I work, save to Picasa.  Next Blog, I'll show how to pull that image from Picasa into my Younicycle account.

Simple is good.  Cloud software.

Tuesday, July 17, 2012

The Right Tools for the Job at Hand

I recently did a tear down of the roof of my 80 year old 28' x 20' garage, just before nature (rain/snow/high winds) did  it for free.  Six layers of shingles, rotten rafters and leaks that allowed easy access & egress for squirrels indicated its life was complete.

I made my first trip up the ladder with a crowbar and a hammer, flailed for a couple of hours and decided it was time to revise my strategy.  A different set of tools were required or I'd be up there when the snow kicks in four months from now.  Eventually, I settled on a sledgehammer and a sabre saw.  I then learned another factoid; you can't load 80 lbs of shingles and rotten wood into a 3 mm thickness lawn and leaf bag, at least not if you want to get it to the trash without tearing & scattering all over your yard.  I filled 130 heavy duty contractor waste bags and began dragging them 1 x 1 the 40 yards to the front of my house and learned after trip #5 that a wheelbarrow was a real fine invention.  That wheel makes a difference.

Younicycle is a Platform as a Service, but also has 15 Major Tools and an additional 16 Admin/Helper Tools.  Each of these Tools were designed specifically to allow Developers work together within a Cloud IDE (Integrated Development Environment).  Several of the Cloud IDE Tools are better suited for Content Developers (WYSIWYG), while others enable Application Developers to fully utilize their expertise (Code), such as an integrated Php Editor with SVN - or PGSQL Editor for writing Trigger functions (example).

We supply the Tools, the safe coding environment, the server resources, the server Admin + on board Experts that will help a bit, but you'll still need to supply the effort.  

Next time, we'll cover Settings -> Manage Account -> Settings.  Thought it might be interesting to show how to use Younicycle as a SaaS Aggregator.

Account Details Platform as a Service

Friday, July 13, 2012

Let's start with my own fuzzy definitions of Application Developer and Content Developer.

An Application Developer writes the Code that 'makes things happen'.   The simplest analogy I can run with is a car.  Most of us want to get in, turn the key, put it in reverse, back out of the driveway, stop, shift to drive and be on our way.  If I put it in reverse, touched the accelerator and instead it went forward, rolled onto my wife's garden, then I'd be miffed.

An Application Developer may categorize this unexpected behavior as a bug and perhaps suggest a workaround, "When you want to back up, just put it in drive and vice versa.  You never explicitly stated that Drive meant Go Forward and Reverse meant Go Back."  Fixing the undesired behavior may only be a 2 minute Javascript edit or could be much more complex and require redesign and thorough testing of the entire transmission.  The Application Developer would likely be in over his head and need to report and document the transmission problem to the manufacturer,  as a bug.  The Application Developer's primary objective is a well-tuned car.

A Content Developer drives the car.  He/she knows the destination, the planned stops, the expenses to be incurred during travel, the route and most importantly; the purpose and goals of the trip. Typically, the Content Developer will have deep, vertical knowledge of a specific subject, but the underlying code is generally baffling, boring or both.  "I'm on my way to an important sales meeting and I just rolled over my wife's tomato plants.  Now I'm late for the meeting and as an extra, I'll catch an earful when I get back home."  The Content Developer's primary objective is a successful presentation or meeting.  The car is merely a Tool.

The Content Developer didn't fully describe the intended behavior and assumed the Application Developer was a mind-reader.  In addition, the Content Developer didn't test in a safe environment.  As a result, the meeting was missed, a sale lost and there will be no tomato pie for dinner.

The Application Developer failed to ask "What should happen when you put it in Reverse?" and also allowed the Content Developer to get in an unsafe vehicle, lose a sale and crush tomato plants.

They did not collaborate.

Next week I'll begin to post specifics about the Collaborative Tools that are the Core of the Younicycle Platform as a Service.

Postnote example:  I bought a Wordpress upgrade for this Blog and for reasons unknown, it removed the sidebar +  cropped the header image and resized the text.  That folks, is a double-bug.  Pay more, get less.
As a result, I just moved the Blog to Blogspot. Content Developers (such as myself), don't care for unpleasant surprises.
If there was a way to to create your own SaaS online, easily set up a user payment system, get listed on Google Apps Marketplace and even incorporate Amazon Cloud services, would you be interested?

That's what this Blog will address.