Statistics

Total Posts: 15
This Year: 4
This Month: 0
This Week: 0
Comments: 4


RSS 2.0

Admin

Sign In

Navigation


Recent Posts


On this page....

The Race to the Super-Phone
The Year 2000 & Robotron the Roomba
Where have all the postings gone - Blogger's Block?
Death of the PC - The Big Switch Part 1
PowerGUI Script Editor - Hurray for a simple Powershell development environment
Cloud Computing with .NET
S+S and the Architecture Journal Reader
WiMAX Application Classes
Levels of Abstraction - "Secrets of Great Architects"

Archives

 Full Archives By Category
 2007 Calendar View
<November 2008>
SunMonTueWedThuFriSat
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

Categories

Architecture (4) Books (2) Coding (5) Networking (3) Other (2) Scripting (4) Security (1) Systems (3)

Blogroll - Fav Blogs


Acknowledgments

DasBlog Theme Design by: Tom Watts
E-mail: Send mail to the author(s)
Theme Image by: dreamLogic

Disclaimer

The opinions expressed herein are my own personal opinions and do not represent my employer's view in anyway. Pick a theme:

observations from a life beside the machine

 Tuesday, May 06, 2008
I traveled to the Dallas area on business last week.  I was in town for just a couple of days.  A rather common business trip, except for one simple thing...  I never booted up my corporate laptop.  Never logged in, connected with a VPN and launched Outlook to get corporate mail.  Instead, I only used my BlackJack smart-phone with Windows Mobile 6.  The BlackJack has a tiny screen, a tiny keyboard and barely lets me view PowerPoint.  It does however always live in my pocket and always offer ready access to email, feeds, web browsing (sort of and mostly), note taking, weather, directions, traffic, restaurant information, contacts and so forth.

Mobile Internet Devices (MIDs) are a new market segment being promoted to live between the current smart phone and the super small notebook systems.  The idea behind these devices, what I call super-phones for fun, is to offer the real Internet on a ultra mobile device.  I'm reminded here of those ultra snazzy iPhone commercials.  Intel has recently released the Atom processor targeting these devices.  The Atom is much less power hungry than a standard notebook processor, though more than current smart-phones.  And on the smart-phone side, the ARM processor folks are growing phones into this same segment.  PCs and phones are merging into the ultimate mobile hand-held computer.

A few weeks back the Economist had a wonderful feature on mobility, specifically the article "Nomad At Last" shows a chart of PC-based Internet users vs mobile phone users.  An idea presented is that someday nearly everyone in the world will have a hand-held computer accessing the Internet.  Perhaps we can view the laptop incarnation of the PC as the "luggable " computer of the first wave of the Mobile Internet.  The next step with a super-phone is to address the physical limitations of small form factors and such work is progressing with composable computing.  These systems will eventually dynamically connect to resources near-by and auto-magically offer such things as inputs via a wireless keyboard and mouse and outputs to larger screens or sound systems.

The super-phone is the disruptive computer of the mobile Internet. It is simpler to operate, cheaper to own, easier to move around and always present.  Advantages traditional PCs have in legacy applications are already eroding with Web 2.0 and cloud computing.  Advantages in hardware will disappear with composable computing.  Disruptive technologies don't offer the same features at first of the older system they replace, they just offer the right features in a more compelling way.  The race to the super-phone is on.  I welcome the smaller carry-ons.

Tuesday, May 06, 2008 7:18:53 PM UTC
 Saturday, April 19, 2008
I was a child in the early eighties.  I remember giggling and dreaming about the future, which was of course, "the year 2000".  The year 2000 is nearly a decade ago now, but it was today that the feeling of these childhood fantasies came back - as I watched my new Roomba 550 clean the bedroom.  He beeps when he's happy, he beeps (and talks sometimes) when he sad, but what really gets me is when he cleans under the bed.

I have a magic wireless book reader (Kindle) on the way (this is Star Trek).  I have access to a massive electronic encyclopedia (Wikipedia) and many technology books (Safari Books) that I can read anytime from anywhere with a computer.  On that computer I have a thousand or maybe a million newspapers I can read and maybe a billion other things.  I have hundreds of documents, spreadsheets and presentations stored auto-magically in a cloud (Google Docs).  I have a radio phone (BlackJack) I can also use to look up news, weather, messages, book reviews and read (some of) those same newspapers on the train.  I have a freakin' robot that cleans my house and another (Mindstorms NXT) that I can program just for fun.  This is sweet.  This really is the year 2000.

Saturday, April 19, 2008 10:20:13 PM UTC

Not really.  The Big Switch Part 2 (future post) set me off thinking about downsides to the future disruptive cloud computing.  Then I moved to the city and a condo with a river view...

A lot has happened this year.  For the moment I will only comment on one thing I find amusing at this very moment.  I'm studying for the Microsoft .NET developer certification for ASP.NET.  I have been a user of Google Documents for quite awhile and decided to use Microsoft's Office Live as a document repository for my developer certification training notes.  I started a workspace, basically a non-nestable folder with pre-populated items from certain templates, for these presentations.  As Office Live uses the Software + Services model for the workspace PowerPoint file the documents live on the site and I access them there, select Edit and then they open locally and I occasionally hit Save.  This seems to be a public implementation of the SharePoint features many of us are familiar with on corporate servers.

Now the problem is that simple statement, 'occasionally hit Save'.  In the last couple of weeks on one machine and then another I have encountered an error where on the first attempt to save I get an error.  The content actually does save to the site but the presentation kicks into read-only mode.  I then must exit PowerPoint, open the site again and then select Edit again and start over.  I did this for a couple weeks and submitted feedback on the bug.  I've yet to get a response from anyone about it.

Well yesterday I worked for a bit on ten or fifteen slides.  I had just gotten into the habit of condensing any code samples I write up by removing the C-style braces and semicolons.  At first this struck me as making it look a bit like pseudo-code and then I realized perhaps it looks more like the Python scripting language (spiritual heir to Perl).  As I consider this, I hit Save and realize I'm in read-only mode already.  What do I do with these slides?  How can I merge the two PowerPoint documents (my local copy and the Office Live version)?  I'm sure it's rather easy to do and I just don't spend enough time in Office and don't know.  Instead, I just opened Google Docs and imported the file into a Google Presentation.  Then I imported every PowerPoint I had on Office Live to Google.  I decided then to give up on Office Live for the moment.  Google Documents has a brain-dead web interface that I like.  More and more I like brain-dead and simple when it comes to computing - this is the true power of a disruptive technology... its just simpler to use.  And it automatically saves.

Google announced Application Engine.  It uses Python and hosts web applications in the cloud for you.  Python looks like my pseudo-code in my ASP.NET certification presentations.  I find it amusing that studying ASP.NET got me thinking so much about the Google Cloud and Python.  Very amusing.  Maybe I'll look at the Programming Collective Intelligence book some more, it uses Python...

Friday, April 11, 2008 11:45:16 PM UTC
 Tuesday, January 15, 2008

I just finished part 1 of The Big Switch, by Nicholas Carr.  Carr is the guy everyone in IT hates, he told us we are basically irrelevant to a business as every company has the same types of employees deploying the types of software, e.g. no competitive advantage.  Everyone in IT just might hate this guy, but he's basically right.

I LOVE this new book.  He compares the coming network/cloud/utility computing revolution to the early electrification of the world.  I enjoy the history and I enjoy the comparison.

Basic summary:  Fiber optic Internet connectivity will finally unleash the utility computing revolution many, including Google CEO Eric Schmidt since 1992 (as the CTO of Sun) , have been discussed.  The era of the PC is dead.  The vast overhead of IT will be removed from businesses and computing , like electric power generation, will be consolidated into large centers with grand economies of scale.

Favorite quote from the book so far: "20 years from now PCs will likely be a museum piece, a reminder of a curious time when we were all forced to be amateur computer technicians."

Anyone who has used Google Apps or Office Live Workspace can get the feeling.  Maintaining PC operating systems, applications, backing up files and moving them between systems just seem so archaic now.  As an interim solution for items not supported in the online office applications, I store my data in a folder named FolderShare (that replicates the Documents folder structure), named after the (Microsoft acquired) Windows Live service that replicates files between systems.  To move all my PC data onto a new system, I simply install the FolderShare client and add it to the replication.  If a partner is on the same LAN I get the files very fast, if over the Internet (it auto-magically NAT-busts) it will take a bit longer.  It is beautiful.  They may have something for applications too at this point, I see the idea with the corporate (software vitalization) SoftGrid, but I haven't tried anything yet for end users.  I think I saw an application migration wizard somewhere.  This gets back to the point of the post though, why should I have to do anything of this anymore?

 

Tuesday, January 15, 2008 7:31:11 AM UTC

I was recently working through some Algorithm examples written in pseudocode and wanted a simple language to write and compare two functions for efficiency.  As I am an advocate for the super-coolness of Powershell, I naturally opened up the Powershell Window.  After screwing up various commands and generally forgetting syntax I became quite weary of using command histories alone to enter 10 line functions.  Where is Vi?  Well, I am using Windows...

PowerGUI provides the PowerGUI Script Editor, which is a basic IDE for working in Powershell.  The PowerGUI script editor has bookmarks, local variables, an output window, debugging and breakpoints and block commenting buttons.  I love this thing.  I save the best for last, Intellisense-like completions.

So I will harp on the Powershell thing one more time.  If you use Windows and you are technical, install Powershell and PowerGUI right away and play with it.  It's a highly productive scripting language with a .NET object pipeline.  And you can write silly little scripts with an IDE that is simple, free and easy to use.  If you are a developer try it for a Perl-like Windows script-ability and if you're a systems guy try it as it is the foundation of all the new management interfaces to just about every Microsoft Server System.

Saturday, January 12, 2008 12:29:36 AM UTC
 Monday, December 17, 2007

First off, in case anyone misses it, the front cover of BusinessWeek right now is an interesting article on clouding computing and a guy at Google who is working with IBM to bring cloud capabilities to universities to get computer science students thinking about and playing with these systems as well as thinking about really large amounts of data.

Earlier this month Microsoft introduced Volta, a project to extend .NET into the cloud.  I haven't played with it yet, but the blog mentions the development process as enabled through tier splitting.  Basically a developer creates the application, such as an old fashioned WinForm and then Volta automagically tier-splits it into a multi-tiered systems, automatically Marshalling data and so forth.  To quote the Volta blog:

You can target either web browsers or the CLR as clients and Volta handles the complexities of tier-splitting. The compiler creates cross-browser JavaScript for the client tier, web services for the server tier, and all communication, serialization, synchronization, security, and other boilerplate code to tie the tiers together.

Monday, December 17, 2007 4:28:10 AM UTC
 Thursday, December 06, 2007

The Architecture Journal introduced an interesting reader last month.  It is a natural dog-fooding measure for the 13th Journal that focuses on Software + Services.  My initial impressions of the reader are good, it gives me ready access to all the journals at once in a single view.  No more navigating a file system for various PDFs.  Integrated search for all the journals.  Scrolling with the keyboard is nice, though a wheel slide sends me to a different article and not the next page of the one I'm reading it seems.  The reader adds a nice level of browsability beyond PDF to the inherent benefits of a digital format.  The question is up in the air now whether I prefer the nice color printed copy Microsoft mailed me ($1.31 postage on them) or the reader for this type of in-depth-whole-article-that-really-makes-me-think-reading at this point.  Pardon the near German there.

That out of the way, I really recommend the article "Implications of Software + Services Consumption for Enterprise IT" for systems engineering minded folks.  Specific recommendations are provided for the questions to ask in a Software + Services business application evaluation.    Figure 1 presents a nice software/service continuum diagram putting differing levels of software systems for IT in a nice perspective based upon the level of cloud integration.  The infrastructure and business integration requirements for even a fully outsourced SaaS solution are concisely desribed... for example if end users are going to use the application, the Help Desk still needs to be trained right?  The in-house network, dns, proxy and other infrastructure systems still need to be operational and part of the troubleshooting tree... and then we get to how users authenticate to the service and is the service even up... do we need an lightweight in-house service monitoring system?

 

Thursday, December 06, 2007 8:49:05 PM UTC
 Thursday, November 22, 2007

The WiMAX Forum Application Working Group has defined five application class types by the network characteristics of bandwidth, latency and jitter.  I find these classes a good model to use for evaluating perceived network performance.  These classes are:

  1. Interactive Gaming
    • low bandwidth
    • latency sensitive (< 80 ms)
    • not jitter sensitive
  2. VOIP and Video Conferencing
    • low and moderate bandwidth
    • low latency
    • jitter sensitive (requires a typical < 50 ms)
  3. Streaming Media
    • moderate to high bandwidth
    • not latency sensitive
    • jitter sensitive (< 100 ms)
  4. IM/Web Browsing
    • moderate bandwidth
    • not latency sensitive (a satellite access web user might not agree!)
    • not jitter sensitive
  5. Media Content Download
    • high bandwidth
    • not latency sensitive
    • not jitter sensitive

The converged networks we're building now require nearly opposite capabilities.  Traditional traffic is just bandwidth hungry, while VOIP and other real time traffic only require a timely and consistent delivery (low jitter) of rather small packets.  This leads to the consideration of 'smarter' networks and features such as QoS.  e911 services for VOIP, including emergency location determination, add another level of reliability and feature requirements to the network.  This really is a fun time to be involved in networking.

WiMAX Forum presentation detailing the application classes (pages 5-8): http://www.wimaxforum.org/news/downloads/supercomm_2005/WF_Day_in_a_Life_with_WiMAX_Final.pdf

Thursday, November 22, 2007 5:41:43 AM UTC

One of my favorite articles in the great Architecture Journal from Microsoft is the Secrets of Great Architects.

Without a doubt, one of the most important points made in the article is that "all great architects have mastered the ability to conceptualize a solution at distinct levels of abstraction".  These levels of abstractions are then maintained over time and kept consistent.  Changes are evaluated through these levels and change requirement evaluations will be more accurate. 

A formal structure defining these layers helps to maintain consistently.  The article presents a simple four layer framework:

  •    Domain defines the business as a black box and focuses on the customer 
  •    Business Process defines the systems and employees that collaborate to perform business transactions 
  •    Logical defines the high level design of the system including technology recommendations 
  •    Physical defines the code and relational tables used to actually implement the system

Each level is detailed in multiple views including:

  • Dynamic view modeling the interactions between actors in the level
  • Static view modeling the class structure of objects in use in the level

If you find yourself in a confusing mess of class diagrams and object interactions that suddenly make no sense, stop and re-evaluate the other levels of abstraction.  You may be missing or forgetting something in a higher level model.

Thursday, November 22, 2007 4:01:34 AM UTC