Some Comments on the Five Fallacies of Cloud Computing

February 5th, 2010 1 comment

When searching for the five fallacies of network programming, I came across the Five Fallacies of Cloud Computing. A short digression on search. Search engines are contributing to the “Distraction factor”, you look for x and are shown y and you spend time on it. I wonder how much time Google and Bing actually cost us with irrelevant hints that we have to filter. The fact is they are still better than going to the library or looking it up in a book. Back to the five fallacies of cloud computing. I found that only one of them had strong scientific merit and that was number 5, the cloud is secure. Cloud security is only as good as your service provider –  there are no solutions at the current time that allow you to perform remote secure distributed computation, see previous post on Homomorphic Computing.  If I put an ICE unit on any processing unit I can extract clear text with current technologies. Homomorphic Computing would survive that type probe. Recent advances in Quantum computing may provide an alternate path. for secure remote computing.  Quantum computing would also survive the ICE probe due to the Heisenberg uncertainty principle. The article makes some fine points about that basically are about.

  • New technologies almost never totally replace old technologies, what is important is the percentages not that some data centers will remain.
  • IT has many applications that are too complicated to unwind, that doesn’t mean that it can’t be done and is not cheaper in some cases.  Kind of like the issue with energy inefficient homes, costs to much to fix them with the current costs. If I were a CIO or CFO and I was told that my app is too complicated to move, I would be very concerned about how that app is implemented. Perhaps the apps need to be looked at more carefully.
  • I am always amused with the difference between coming up with an idea and actually making it work, two totally different things. Engineering is about ideas that can be realized and made reliable in some limited time frame.
  • Often new technologies don’t succeed immediately but experience an S type curve of adoption, Kurzweill has an interesting argument, Kurzweil’s Law (aka “the law of accelerating returns”) attempting to technology adoption is actually a bunch of stacked S curves moving forward in time on the x-axis  and adoption and capability on the y-axis
  • Nothing is really new, I find this to be a lack of appreciation for incremental progress and features. Products often improve and in many cases are better than the previous version. This is one of the reason why I like  marketing people and college professors, they often appreciate the subtle differences that are actually improvements. This is similar to the generational thing when some don’t get it quickly and adopt it later, but fail to provide those that do get it the benefit of the doubt.

IMO the fundamental challenge for  Cloud Computing is security and bandwidth to and from Public Clouds, this is not as important  in Private Clouds.  Perhaps Homomorphic Computing and Quantum computing will provide implementation approaches. I don’t know enough about Quantum computing to understand how it could help with the Bandwidth issue. In the short term, I will keep working with all the current useful tools and approaches to efficiently managing a bunch of resources.

A similar movement NO SQL has an analogous problem with failing to appreciate and truly understand classical Computer Science  facts like ACID.  Another movement had a similar issue, The Semantic Web. The Semantic Web movement is just recently realizing that NLP and Reasoning Systems are extremely difficult challenging Computer Science problems. I applaud and participate in many of the above efforts and think it would be better if  there was more honesty in explaining the limitations of each of the technologies at the current time.

Java Environment nice to have Features #1

February 5th, 2010 No comments

I haven’t been able to find a logging framework that allows you to pick method invocations with various levels of printing and sampling so that you can get text output from your running program. Should be very doable using introspection. Performance impact is acceptable in many cases.

Why do I get 2 tabs and a new window for live chat

February 5th, 2010 No comments

I used Live Chat from a major company; they create a new browser window that is not sized properly and the app flashes and opens two additional tabs. Really poor application, I wonder why they produced such a poor application.

Simple easy to use Transparent proxy for debugging

December 29th, 2009 No comments

During developments I am am always looking for easy to use proxies that allow me to record or view the communication between two applications, services and computers.  Naws provides this ability and it is really simple to use. The following config file is all that you need to get an easy to read stream of  say your browser and the web server. Firefox and IE may have plugins but these plugins don’t let you build on the output and develop complex recording applications that are easy to deploy.

Download naws from here to a directory of your choice, and create a file called config with the data below.

log=0
port=9001
handler=log
defaultUrlPrefix=
log.class=sunlabs.brazil.handler.LogHandler
log.handler=sunlabs.brazil.proxy.ProxyHandler
log.logFile=proxy.log

log.format={{%m} {%s} {%b} {%d} {%t} {%C} {%u}}

Start naws with something like this:

java -cp naws.jar sunlabs.brazil.server.Main config

Configure your proxy connection to use localhost:9001 and you will get a file called proxy.log in the directory in which you  started naws.

Several enhancements one can easily make, subclass either of the classes below to say count the requests, or put them directly into a database. Check out the source code for naws at kenai. Additional docs can be found here

  1. sunlabs.brazil.handler.LogHandler
  2. sunlabs.brazil.proxy.ProxyHandler

Solaris users can modify the following smf script.

<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<!--
    ident       "@(#)sw.xml      1.2     04/11/11 SMI"
-->
<service_bundle type="manifest" name="sw">
  <service name="sro/sw" type="service" version="1">
    <instance name="default" enabled="false">
      <dependency name="loopback" grouping="require_all" restart_on="error" type="service">
        <service_fmri value="svc:/network/loopback:default"/>
      </dependency>
      <dependency name="physical" grouping="optional_all" restart_on="error" type="service">
        <service_fmri value="svc:/network/physical:default"/>
      </dependency>
      <exec_method type="method" name="start" exec="/opt/websites/sw/run %m" timeout_seconds="30"/>
      <exec_method type="method" name="stop" exec=":kill" timeout_seconds="30"/>
      <property_group name="startd" type="framework">
        <!-- sub-process core dumps shouldn't restart session -->
        <propval name="ignore_error" type="astring" value="core,signal"/>
      </property_group>
    </instance>
    <stability value="Stable"/>
    <template>
      <common_name>
        <loctext xml:lang="C">
                                        sw server
                </loctext>
      </common_name>
    </template>
  </service>
</service_bundle>
Categories: Brazil/Naws, Software Development Tags:

Connecting the dots

December 29th, 2009 No comments

Seems like the government has not made much progress on integrating Legacy systems with new systems. It is not as hard a problem as some make it out to be. Even a simple Google search of all the silos would be an improvement. There are much more advanced techniques than Google searches and I hope the issue is “legal” and not one of technology. I can imagine the following discussion, we get 50000 matches on the “current” terrorist, the list is too big.
Clear lack of application of technology or legal issues.

The lack of Business to Customer mashups/Websites

November 29th, 2009 No comments

NeatDesk reminded me of a patent application that was abandoned, where every receipt was scanned and input to create a more modern record keeping systems. Why do we even need devices like this? When I buy something like this please let me opt in and keep a web site of my relationship with you, not the wimpy bill review from Amex and Mastercard. Please show me everything I buy and the links to the actual product, warranties, recalls and blogs etc. I can’t believe that when I buy a car, I don’t get a personal website with the car and my history on it. This has been discussed for at least 10 years, sometimes progress is slow.

Cloud Computing and Security

November 29th, 2009 No comments

www.technologyreview.com/computing/23951/ Whitfield Diffie makes observations similar to those P. Dinda, Addressing the Trust Asymmetry Problem In Grid Computing With Encrypted Computation, Proceedings of the Seventh Workshop on Languages, Compilers and Run-time Support for Scalable Systems (LCR 2004).

Using Social Tools within “Rigid” Corporations

November 29th, 2009 No comments

There are two applications that I think corporations could benefit from if applied with restricted access controls. One is real time messaging something like twitter, the other is dynamic profiles something like FOAF.  I have installed and tried both of these in various  small groups but failed to achieve critical mass. I would like to see  my future “corporate” desktop have such applications when working on topics and issues that are not open to the entire world. Yes sometimes people work on things that are not to be shared and might actually have to be paid for.  I would like to be able to have per project twitter groups and feeds with sophisticated ACL and I would like to be able to find and interact with co workers using a modern personnel look up application based on something like FOAF. Recent articles like www.webpronews.com/topnews/2009/10/06/54-of-businesses-prohibit-employee-social-media-use discuss the growing interest.

It is common knowledge that Corporate IT is rarely leading the way forward with development tools, Many improvements to the corporate desktop come from outside the IT department.

  1. Unix was not accepted at first
  2. The PC was  major issue for IT, for many years the home environment users had was far superior to the corporate environment
  3. Email was not accepted by many corporations in the beginning
  4. Wikis were not accepted at first
  5. Blogging was slow to be accepted

Corporate IT did give us the 3270 which is a pattern that basically describes the current service provider to web browser popular in so many web applications.

US Constitution – Can it be improved?

November 29th, 2009 No comments

One of the goals of the writers of the Constitution was to establish representation by the people and for the people. Assuming that this is true and that we really want “the people” to vote on issues, I believe technology can be used to improve representation. I and many others are very disappointed with our representatives, they vote on party lines and not on issues. I would like to see the following changes to the constitution. Elected members of the House and Senate would still be elected but individual citizens would have the ability to vote on all items that come up for a vote on the floor, if they resort to other processes for preventing measures from arriving on the floor, then we would have to address that. There would be a new factor in each vote, what the people voted on this particular issue.  The vote of the people would only count if it was above some level and the vote of the people would override the Representative’s or Senator’s vote.   So here are the changes:

  1. Senators and Representatives vote on all issues
  2. Citizens can vote on same issues that Senator’s and Representative’s vote on
  3. Citizen votes over a certain level would override a Senator’s or Representative’s vote if necessary
  4. Citizens can use electronic proxies to represent their views
  5. There is a national id card
  6. FBI/Secret service like organization to detect voting fraud
  7. Voting  it is a federal crime for voting fraud
  8. Citizen’s votes are public or private, requires debate.
  9. Maybe some bills would be excluded to avoid Roman style crowds cheering for death, a potential outcome. Altough many government bills indirectly harm groups.

I would feel like it was a better government for the people and by the people, if  constitution was changed  or there is some change in the openness of elected officials, it is hard for me to vote for individuals that do not represent my views.  Clearly the constitution was designed before electronic technology existed and the rational for the senate and the house made sense. I think it still does but I think a small change to allow more participation would revive interest in government and remove the endless issue of representatives voting on what they think the people want. I have not seen much research on this issue other than the numerous articles on incompetent systems to improve electronic voting which all avoid the central issue, the need for strong authentication.

Smart Grid technology in the home

October 28th, 2009 1 comment

A few days ago President Obama signed an “Electric Bill“, releasing money for those attempting to move us forward in this area. Even if it fails, I think it is a good use of my tax dollars. An example of one of the projects:

Category 1: Advanced Metering Infrastructure
Installing digital utility meters.
Example: $95,900,000 to Central Maine Power Company in Augusta, Maine
“Install a smart meter network for all residential, commercial and industrial customers
in the utility’s service territory — approximately 650,000 meters.” (Coverage map)

I finally got around to adding a real time display of the energy being used at the location hosting this blog. The right column on this blog is displaying data from a TED 100.  It seems that this idea discussed previously in the following blog entries  is becoming more popular.

My local utility company, United Illuminating,  has some  information on Smart Systems. I wonder how many years before it is available to customers. Google has done some  work with PowerMeter and actually supports the TED 5000.