Thursday, June 30, 2011

FYI: Email Sucks! -enoch

E-Mail: A Write It Well GuideHave you ever forwarded an email with the following message from you, "FYI..."?  This morning I talked to my colleague, Jonathan Beams, about our over reliance on email.  Imagine a world where employees didn't spend a significant amount of time typing emails. ... Ahhh...Doesn't that feel nice.

We could actually be more productive.  Unfortunately communications is such a big part of our day-to-day lives that folks cannot imagine a world without email. Jonathan stated this morning that the benefits of email are:
  • Documented conversation for traceability and commitment
  • A great way of sending documents
  • and others
I still think it is a waste.  The CIO in the organization I work for gets around 1000 emails a day.  This is frankly ridiculous. Social media and information management are trying to address this problem but I think we should get rid of it.

Here is a challenge to Google, Micrsoft, IBM and others.  Give me an alternative to email.  I know social media, cloud computing and mobile computing are here to stay but I think it is time to call email legacy. 

Wednesday, June 29, 2011

Big data and the sampling approach

Big data: The next frontier for innovation, competition, and productivityAfter my two hour commute from home, I stopped at Giant in Urbana, MD and bought flowers and chocolate for my wonderful wife.  During this process, I scanned my Giant card and go my rebate of couple of dollars.  While I was walking back to my car, I remembered one of the workshop I attended at last year's Gartner Symposium ITXPO.  The workshop was about visual analytics.  During the workshop I met an enterprise architect from a loyalty card company.  The company produces business intelligence by ingesting grocery stores chain's loyalty card data.  I then thought about the issue of big data.  This is hottest topics right now in the realm of information technology.

What is big data?  According to Wikipedia, "Big data are datasets that grow so large that they become awkward to work with using on-hand database management tools."  It is wonderful that we have technologies which can store large data sets and run complex algorithms on fast computers to produce views in the data sets.  This approach, however, differs the traditional statistical approach like sampling.  As a trained chemist, I was raised in the sampling approach.  The number experiments I did in physical and analytical chemistry labs which relied heavily on the sampling approach.

This leads to the next question.  Which way is better?  This depends on several factors.  For example:
  • Data capturing methodology - If it is takes a few minutes to assess and capture data then sampling may be a way to go.  If all of the data points cannot be captured during the process then sampling approach may be the way to go.  For example the Census Bureau cannot do it's job if it took the big data approach to create its census.  It would take a long time and there is no guarantee that they would interview every single individual process.  The data points (people) are also changing by individuals dying and being born. 
  • Scalability - The Big Data approach is not a scalable approach. Yeah, the big data store vendors like Oracle, SAP, Micrsoft and Google will try to sell you more computing but capturing all of the data points and running algorithms can be a cost and resource prohibitive.  I believe sampling is the way to go if you want to do a scale the model.
  • Multiple views into a finite data set - If the data set is a finite number then I believe going the Big Data way is the right way since the computers will provide some unique views into the data. 
If anyone out there is working on both approaches then please comment on this entry.

    Tuesday, June 21, 2011

    Buddy it ain't dream computing. It's reality!

    A few days ago, I had an interesting conversation with my co-worker Bill about modeling to a specific project or program or should we model with the enterprise in mind.  I then asked the question.  Does it make sense to model data, business processes, or an software modules like the federate query for the enterprise?  The answer is No!  This is because the enterprise is an ambiguous area.  Nothing is clearly defined however every business and every person recognizes that there is a bigger universe than their specific project and program.  IT personnel will throw everything in the enterprise bucket if it is ambiguous, idealist or flat out dreamy. Architecting for the enterprise without requirements, constraints, road maps or even goals is what I call dream computing.  It is only possible in dreams.    If you want to argue with me or just disagree, I suggest that you hit the pillow and just dream about your reality.  Frankly in my reality, everything is driven by financial figures and what makes business sense.

    So getting back to the discussion with Bill, if your organization wants to push enterprise level thinking, modeling, design and development capabilities at the enterprise level then your organization should have a strategy.  You can then validate the strategy by picking an architectural framework which meets the organization requirements.  The strategy should also be defined by the organization requirements.  The organization requirements can captured as quarterly goals and have an  idea how they want to achieve the goals.

    After you pick the framework then you need to decompose the framework to understand how you can use it to meet your organization's requirements.  For example Department of Homeland Security  (DHS), Federal Aviation Administration (FAA), and other US government agencies use the Federal Enterprise Architecture Framework (FEAF).  The FEAF was developed by Office of Management and Budget(OMB) and it meets their requirements.  Unfortunately agencies like the DHS and FAA use FEAF to do data calls and develop roadmaps (40K foot view is an understatement).  This however leads to major heart burn among the agency's management community see FEAF doesn't meet any of their requirements.  The management community subscribes to Gartner and Forrester and these publications which state that EA is better than sliced bread (okay I am overusing the"sliced bread" phrase).  The management community then wonders why is our EA team so horrible.  They pester us with data calls and develop academic road maps using FEAF and they have no value to the agency.  This blog can go back about talking about the importance of communications from a EA program however I have blogged about this issue enough for the last couple of years now.  I am now going to talk about the individual agencies failing to develop a EA program with their ability to capture oranizational requirements.   If your government agency's EA program is done well then the data calls to OMB  should be a cinch. Usually EA programs complain about that they don't have any sponsorship.  In highly bureaucratic organization where you have to pick your battles, would you give sponsorship to an OMB centric program.  I don't think so.  This is also because the organization in general has not done its due diligence in defining their strategy.  The government agencies wait for answers from the top and are extremely reactionary.

    Back to Bill's conversation.  I told him that you cannot  do anything in the Enterprise without requirements.  You can model the enterprise to n-level granularity or the n-level sub processes.  In the end it is a wasted exercise because businesses are not going to pay how many rodents get stuck in a plane. If management is forcing you to go the enterprise level then identify the framework and work with the approach I proposed.
    Where is my pillow again?  I need to dream about new blog entry ideas.

    Saturday, June 18, 2011

    gCrack vs iCrack (Satire)

    I don't know if you heard but Google and Apple are announcing couple of new products which are aimed specifically at the "partying" group.  Google's version is called gCrack and it will be in Beta release mode.  gCrack will only be given out by existing gCrack users.  The product is a graduate of Google Labs; and is manufactured in south america.  It is then distributed via its new partners in Mexico called gNarcos. According to the Google CEO, this is the best thing since sliced bread and Google is excited about it.  Other neat incentives with respect to gCrack are:
    Meanwhile in Cupertino, CA, it is rumored that Apple has been working with its partners in developing iCrack.  It is a similiar product to gCrack.  Talking to unnamed sources within Apple, iCrack is far more expensive than gCrack since there is a Service Level Agreement (SLA) between iCrack users and Apple on the quality of iCrack.  Apple will back its iCrack product and guarantees that the users will be "high" when they use it.  Unlike gCrack, which does not guarantee the quality, iCrack is five times more expensive than gCrack.  Apple is also going to promise the following things with iCrack:
    • Create and track orders on iTunes
    • Purchase iCrack using Apple's exclusive iCrack app for its iPad and iPhone
    • Meet the iCartel (iCrack manufacturers) on iCrack using FaceTime.  
    Interpol is concerned about this development since they claim gCrack and iCrack is nothing more than crack cocaine.  According to the Republicans, these crack products will help the US economy and bring jobs.  The Democrats say that these type of policies will increase the need for standardized health care and pump money in Medicare.  It looks like gCrack and iCrack are here to stay.  The real winner will be Google and Apple shareholders. It should also be noted that both companies see the crack addict will be ultimately the real winner because it will bring prices downs and the quality up.  The next big question is what will Facebook, Microsoft, IBM and Oracle do?  Are they going to get into the crack cocaine business?  

    Friday, June 17, 2011

    Marketing and Technical refresh

    What happens when a services oriented company tries to get into a product business? It's not a great model. When I was employed by Northrop Grumman, I worked on the Grants.gov project.
    This eGov program enabled grant seekers to fill out an XML based form and then submit it via the grants.gov website. The XML form in-turn was transformed to an XML instance and then processed through a propitiatory Northrop Grumman XML transformation engine.

    Have you ever heard of this product? I don't even remember the product's name! This was in 2004. The product was a suite of open source java packages which were cobbled together to be a backend engine for a major eGov program.



    I left Northrop Grumman to work as a J2EE programmer for a company called Conquest Systems. I worked on a great team with sharp engineers and a great a project manager. We built a resource management web application using Struts and Hibernate with an Oracle database in the backend. This application for was the US military with a small development and support team. Meanwhile the company spent a lot of time developing a visual analytics tool for another US Government agency. The agency allowed Conquest Systems to take the rights of the products. Unfortunately, the company is still struggling to make it big with this product. The product uses EJBs. I also heard rumors that the app server ran on vacuum tubes.



    Now at my current employer, I see every small and big company trying to sell COTS product. Half of them are useless since it doesn't meet our requirements while the others are not enterprise enough.



    What seems to be the underlying problem? The problem is that service companies, especially public sector centric companies, tend to spend more time creating the product for a client and are not geared to market the product or give it enhancements to keep it technically fresh. This was recognized by my esteemed colleague Gene Gotimer a few years ago.



    The other major problem I see is that companies that want to build cool products rely on open source products. The initial cost is minimal, however a great price is paid to have smaller iterations of technology upgrade. How many products that you know of, which are built on Microsoft, IBM, SAP or a major vendor's infrastructure, have disappeared from the face of the earth? Not many, but you have to upgrade your product technology stack, otherwise you may end up with a robust Microsoft Visual FoxPro application. How many of you have worked on FoxPro? If you did then you must have had a mullet in the 80's.



    The beauty of the cloud technology is that it will force companies to keep up with the technology upgrade otherwise the cloud provider may not support that old FoxPro app. Does Amazon EC2 support FoxPro? I didn't think so. Back to the mullet issue, just kidding. The cloud computing technology model may actually assist the services centric vendor to build boutique products. If it becomes a popular product then the cloud vendor may buy it from you. If that happens then you can be proud that you are now trading your keyboard for some car keys. Car keys to your brand new Ferrari. At least that is what every caffeinated developer dreams about. ;-)

    Wednesday, June 15, 2011

    No Topic: Vent Blog

    I still remember the time I took my career assessment test in eighth grade @ Stillwater Junior High School, Stillwater OK. I took the test on an old PC with a green screen. To my disappointment, I was assessed to be a school teacher. WHAT!!! I wanted to be an archaeologist like Indiana Jones (in my case Indian Jones).

    Looking back at that time, which was twenty plus years ago, I never thought I would be working in computer nirvana. Okay that is a stretch. FAA is not really a computer nirvana but it can be fun. What is the point of this blog entry you wonder. Well the purpose of this blog entry is to gripe about my seven year old daughter wants a MacBook Pro but she is now settling for a Barnes & Noble Nook. A seven year old! My seven year old wants to read books online and yes drag her fingers across to play Angry Birds. She and her siblings love to watch Netflix on the WII, PS3 and now the iPad. When I was growing up, I thought a Super Nintendo was the coolest thing but now I talk to high schoolers who have never even heard of Walkmans.

    Okay I lied. The point of this blog entry is to describe how generations are becoming more digital. Teachers are trying encourage to participate in discussions using twitter and Facebook which are going IPO. What's next?! Classroom sessions via Apple's Facetime.

    Lastly I leave you by asking you to read this article [http://bit.ly/mNg1pl] and then please ask yourself (if you an IT professional) if your son or daughter follow your footsteps. Would a son of Oracle DBA be an Oracle DBA or would a Java programmer's son be a Java programmer? Hence our profession can be described as evolution on steroids!

    Sunday, June 12, 2011

    Need to have an exit strategy

    I believe it is time for me to get out of the business of IT. Here are the reasons:





    • Deer in headlights: I talk to some of my senior managers and they look at me as a deer in the headlights when I tell them about the innovations of Ruby on Rails or noSQL databases. On the other hand, if I was tell them about client server technologies of the late 1990s then we have a conversation. I see myself going down the same path in the next twenty years unless technology is outsourced.


    • Outsource IT: This brings me to the second point. IT is so commoditized. Within a couple of years, I won't need to worry about the operations part since most of this will be outsourced. I heard of government agencies outsourcing the whole Blackberry program to a third party vendor. WHAT?!!! All those jobs! I know this is a big part of the whole world we live in. Do I want my job outsourced in the next five years? I don't think so.



    • Open Source - innovating out of existence: As open source technologies rapidly evolve, more businesses are relying on market analysis and large vendors to recommend what their IT strategy should be. Should a CIO look at open source technologies to enable their IT strategy or look to proven technologies which could be legacy in the next five years? I would guess the latter. As Oracle, IBM, Microsoft and Google start putting cloud services, they are going to bring down costs and at the same time bring down the IT salaries. I believe the days of an Oracle DBA making a decent living are history. An Oracle DBA will make a similar salary as a typical engineer, which is 20% - 25% less then a typical IT staffer. These companies will also start filtering the Open Source technologies and the open source world will become an R&D lab. This is the best bet for any business since businesses don't have the time to update infrastructure every quarter.



    What should I do then? I need to refine my customer relationship skills well enough to say, "Would you like fries with that?" ;-)