Applying Rubber Duck Debugging idea to Modeling Projects

In software development there is the idea of Rubber Duck Debugging.

Rubber duck debugging
From Wikipedia, the free encyclopedia
In software engineering, rubber duck debugging or rubber ducking is a method of debugging code. The name is a reference to a story in the book The Pragmatic Programmer in which a programmer would carry around a rubber duck and debug their code by forcing themselves to explain it, line-by-line, to the duck.[1] Many other terms exist for this technique, often involving different inanimate objects.

Many programmers have had the experience of explaining a problem to someone else, possibly even to someone who knows nothing about programming, and then hitting upon the solution in the process of explaining the problem. In describing what the code is supposed to do and observing what it actually does, any incongruity between these two becomes apparent.[2] More generally, teaching a subject forces its evaluation from different perspectives and can provide a deeper understanding.[3] By using an inanimate object, the programmer can try to accomplish this without having to interrupt anyone else.

I've been working on how to model projects and I have turtles in my model and I guess I could start talking to them to debug the process.

I started with the cubes. then added arrows and pawns on a dungeons and dragons grid. I am off to a data center next week to review the project ideas and I am ready for them to laugh at my turtles and modeling.

You are probably laughing, but the ideas I am coming up with are pretty good. The purple turtle frequently likes the ideas I tell him. :-)


Abstraction is the hidden technique of great solutions, not code

My degree is Industrial Engineering. I found the discipline when I was a freshman in high school sitting in the school library reading about different engineering degrees. My dad was a civil engineer for CalTrans and I was good at Math, Science, and Business. My computer skills were OK, but not as good as my other skills. It is easy to drill into the concrete specifics of Industrial Engineering discipline and I did this in the beginning working on logistics and distribution engineering. Luckily when I left HP to go to Apple is when I got my taste of working on working on software systems and creating new solutions which then let me address my weakness in computer science. This background also supported my moving to Micosoft for years and yeras on Windows.

With the popularity of learning coding skills, many think the key to build Internet Services is code. But when you dig into looking at where the great insights come from it is people who have top abstraction skills. 

A presentation that I found that illustrates the power of abstraction is Scott Shenker’s presentation on the Future of Networking (SDN).



It has taken my probability a dozen times looking at the slide deck to absorb the subtle details that Scott shares.  



The conclusion is  



iOS 11 the Mobile OS that can replace Desktop for more people

I have worked on OS, operating systems for a long time, working on System 6 & 7 at Apple, then Windows 3.1, 95, 98, NT3.1. NT3.5, NT4, Windows 2000, Windows XP and Windows Server 2003. Watching mobile OS efforts from Apple, Microsoft, Google, Palm and others has too many times been by a small team. I bet you the iOS team is bigger than the MacOS team, and it is more exciting and challenging to develop iOS features than MacOS. With all the new hardware showing up in iPhones and iPads there are more changes than any Desktop hardware. Who would build a better camera into a Laptop?

There are plenty of reviews out there on iOS 11 and many are saying how good it is and how it is a desktop replacement.

iOS has better multitasking, 64-bit only, File Manager, Multi-screen, drag and drop, and many other features you would expect from a modern operating system. 

I can now do something I always did on my Mac and screen grab and insert the image. Below is some research I am doing on the gray zone and found some good papers written by strategic analysts.


Can you see the Future of Data Centers? It's coming

I just spent the week at DatacenterDynamics Webscale in San Jose and had many, many conversations with lots of laughs. It's now Saturday morning and at 4:30a I started to think about what the future of data centers will look like. Many of the conversations came together.

Some announcements came this week can be used to show the changes that are coming.  One is Google's post on Deepmind with Jim Gao.

Major breakthroughs, however, are few and far between — which is why we are excited to share that by applying DeepMind’s machine learning to our own Google data centers, we’ve managed to reduce the amount of energy we use for cooling by up to 40 percent. In any large scale energy-consuming environment, this would be a huge improvement. Given how sophisticated Google’s data centers are already, it’s a phenomenal step forward.

Another is Coolan being acquired by Salesforce.

Coolan, was founded by Amir Michael, formerly a hardware engineer at Google GOOG 0.56% and Facebook FB 0.32% , two companies that know quite a bit about deploying massive amounts of computing hardware. Coolan, which has ten employees, has scored an unknown amount of venture funding from North Bridge Venture Capital and Social Capital.

Michael’s work at Facebook contributed to the launch of the Open Compute Project, an effort to make the design specifications for efficient and powerful data center hardware available to anyone.

I have had the pleasure of having awesome conversations with Jim and Amir where we can all geek out on challenges in the data center. Since none of these conversations were with intent of writing a blog post, there are details I can't share and quite frankly I can't remember the details. :-) But the high level concepts stick around in long term memory and repeat.

So what is the future of data centers? It is people like Jim, Amir, and a few others who see the changes that could be made. How data is the basis for insight and discovery. Amir writes in a blog post.

These last few years have been some of the most fulfilling of my career. Together with my brother and co-founder Yoni, we successfully launched a company that brought transparency to hardware operations. We hired a talented team of engineers who developed tools that empower our customers to track and analyze infrastructure reliability for increased uptime and optimized efficiency.

Building a startup is an awesome journey, and I’m incredibly proud of the work we’ve done. Once the transaction has closed, the Coolan team will help Salesforce optimize its infrastructure as it scales to support customer growth around the world.

If you want to know what the future data centers is going to look like you need to talk to people like Jim Gao, Amir Michael, and others who have a passion to make changes with data and transparency in operations.

Is Litbit Orchestration service like Biztalk Server and other Application Integration Suites?

Many of my data center friends ask have I heard anything what Litbit is doing.  No.

So I checked out the Litbit video that has been up since Nov 2014.

When I saw the video say it was about Orchestration it reminded me of Biztalk Server.

Extend your applications across enterprise and cloud
Keep your apps connected across private and public cloud environments. Deploy BizTalk Server on premises and leverage Microsoft Azure BizTalk Services and Service Bus in the cloud.

Provides Business-to-Business (B2B) and Enterprise Application Integration (EAI) capabilities for delivering cloud and hybrid integration solutions.

Service Bus is messaging infrastructure that sits between applications allowing them to exchange messages in a loosely coupled way for improved scale and resiliency.

Here is a Gartner Magic Quadrant on the Application Integration Suites.

Application integration is defined as making independently designed applications work together. In 2008, Gartner published a seminal paper (see "Understanding the Three Patterns of Application Integration") identifying three integration patterns:

Data consistency — The objective of application and data integration is making data across all applications consistent. For example, if a customer changes a billing address in a CRM application, that changed data is pushed out to other applications (such as accounting, billing and ERP) so those applications can update their databases with the new data.
Multistep process — This entails orchestrating the execution of a sequence of business process activities, regardless of whether these activities are performed by software (applications or services), humans or intelligent devices, such as a printer or a programmable logic controller. Comprehensive support for multistep process integration involves supporting multiple styles of business integration, including system-to-system, collaborative, document-centric and administrative.

Composite application — This creates what appears to be a single application, purpose-built from the ground up to address user requirements. When examining the deployment of the application, users will find components, both business logic and data, that are part of existing production applications.

We'll see what Litbit finally announces, but from the video Youtube it looks like LitBit is a data center use case of Biztalk Server.

Here is a Biztalk Orchestration demo.