Tuesday
02Feb2010

Apple's New Product - Why it may be a great idea

One of the most talked about side discussions I have had with many executives, colleagues and friends has been the Apple iPad. Most people I have spoken with agree that overall their expectations were sorely let down. They had very high hopes of Apple coming out with a real game changer.

In my opinion Apple has introduced more an evolutionary device based on a more revolutionary and very quiet success - the Apple iPod Touch. As a recent item illustrates the iPod Touch has been doing fairly well. Almost as well as the Apple iPhone. Some have commented that it is a market of one product with no real competitors nor going after any existing device currently in the market. Interestingly, in spite of many questions about it the iPod Touch has quite the following.

It is not too much of a stretch of the imagination to see how the iPad concept could be a success based on the iPod touch. There are some questionable items missing such as a camera among many other items which could be more of a negative than a positive. However it is entirely possible that the same consumers that liked the iPod Touch may in fact really like the iPad as well. Heck even some iPhone users may move over. 

It is also possible that maybe the iPad is just a big Kindle competitor and Apple wants a slice of that pie as well.

Yet one could see a lot of really good potential in a device that has a good display, long battery life, somewhat portable, in settings such as hospitals, schools, manufacturing, chemicals, etc. If it had a camera, throw in augmented reality applications to overlay real time information for such things as a patient condition or damaged shipping box and the iPad could in a generation or two be far more useful than anything Apple has made to date.

In the end I see a lot of potential in the iPad even if I personally think there are a lot of shortcomings in the current generation that leave me wanting. It is the promise of the future that makes this device more appealing. After all, the iPhone had taken 2 generations to get what was called "an absolute necessity" of cut-and-paste. That was 2 years of consumers supposedly "not accepting" the iPhone because of that and many other flaws. However iPhone did quite well. I expect the iPad will too.

 

Friday
29Jan2010

Interviewing Questions - Memorization vs. Problem Solving

I am typically asked to interview very senior candidates. Mostly due to my experience, but also because I tend to be more honest about the challenges being faced in an organization and the delicate balance between technical, management, and leadership skills and personality that will be necessary for a great organization fit.

When interviewing candidates for positions I look at it as an investment. Firstly I am spending a lot of time and consequently money in the process, and the person will be with the organization for a long period of time, potentially up to 5 years if the match is good, longer if the match is great.

Personally and professionally I find very little value in what I call "memorization" questions for technical professionals. Most of the management I meet ask for a basic set of questions for vetting purposes. However I see these questions more ineffective and wasteful than anything else. I care less for someone who has memorized every buzzword or specific syntax for languages or commands; this is what things like Unix man pages and Google searches are for. Just because someone is good at memorizing things does not make them a good fit for creating solutions.

When interviewing I look for the following:

  • Are they leaders? Senior positions are not followers but rather leaders in their own right. So I ask questions about initiative taking, risk management, and investments.
  • Can they think outside of the box? In almost all of my situations the initiatives being undertaken have not really been done before. As a result, there is no "best practice" solution that someone can look up and solve it. The senior positions have to have the ability to see this situation and move ahead, figuring things out along the way. This includes new approaches, new viewpoints, new technical implementations, etc. It can be even a new way to do something on older approaches.
  • Do they ask for permission rather than for forgiveness? In many cases what I am looking for are the necessary leaders and initiative takers that will sometimes bend rules. Not important ones mind you such as regulatory compliance, but rather set-in-stone mind sets that need to be challenged. I want the person to be independent so the questions along this line are what I am looking for.
  • Can they play well with others? Regardless of how stellar an individual is, they are still working on a team. From a 2 person startup to 300,000 person fortune 50 company the needs are the same. This is very important to determine since prima donnas often derail efforts rather than build them.
  • Do they have what I call "I am a hammer, everything is a nail" perspective? In my experience specialists are needed for certain specific tasks but leaders need to be demonstratively better cutting across boundaries than specialists. Especially in technical professional ranks, I often come across people that are very good at a certain set of technologies: all Java, all C, all Python, all systems, all Oracle, etc. The questions that I ask determine whether or not they can cross multiple specialities and using generalist thinking quickly understand, grasp and apply what they have learned to the problems at hand.

Often times memorizers make very poor fits for effectively solving problems. They wait for requirements as opposed to going out at getting them, they are geniuses with certains sets of tools, but horrible when learning new ones, etc. In any organization that is looking to grow, they need to see and build towards the future, not what is front of them for the moment.

This process has worked out very well. I have had professionals who had done very poorly at the memorization and at my insistence have been brought back for another session. In many instances, these individuals that I have helped to hire turned into excellent and capable contributors and leaders, delivering outstanding values to the organizations that hired them.

 

 

Thursday
28Jan2010

Simply the Cloud - Best Description of Cloud Computing I Have Heard Yet

It is always asked in cloud computing circles. Heck even outside of these same circles. "What is cloud computing?". There are good definitions such as those on wikipedia and from standards bodies around the world. Yet many of these speak to the technical professionals and rely on these individuals to explain the concept to their customers resulting in very ambiguous and sometimes incorrect expectations.

One of the best explanations given for cloud computing happened to be at a recent local meet-up where it was described as "making infrastructure available to the masses". Regardless of whether or not cloud computing in it's current form is at the application level, infrastructure or platform, they are in essence doing just this.

As a result some of the promises of cloud computing are very apparent:



  • Data center/infrastructure resources can be dynamic; being allocated and de-allocated based on need

  • Speed in deploying what is needed, where it is needed

  • Simplified representations of complex resources and operations to make better decisions

  • On-demand resource ordering and provisioning for various customers


And the list goes on. Yet when looking at any typical business scenario or even personal ones, the questions about how to best use it are very apparent:



  • Do I put everything on someone else's solution? Public/vendor clouds.

  • Do I create my own solution? Private clouds.

  • Do I mix up the two? Hybrid clouds.

  • How can I use a portion of A, mix it with B and C without jumping through a lot of hoops? Cloud interoperability


Some of the challenges are also obvious such as security, integrity, availability and the like. After all everyone has experienced an outage like email or phone service and knows how inconvenient that can be, and know how potentially fatal it can be for a business.

Yet making the data center infrastructure more readily available has some challenges that are ages old. A classic one is monitoring. Everyone has seen the little monitoring widget that comes with their personal computers - CPU, memory, disk, network, processes, etc. Yet how many people actually use them aside from the technical personnel? Very few. Even for technical personnel interpreting this information in aggregate and mapping it against the business transactions is highly fluid. Let's say one is looking at 12 computers with 4 CPUs each. That is at least 48 CPU monitors, 12 memory monitors, 12 process monitors, 12 disk monitors, and 12 network monitors. This is pretty typical of a small computing environment. Now let's scale that up to a data center which has let's say 500 computers with the same 4 CPUs. 2,000 CPU monitors, 500 memory monitors, 500 disk monitors, 500 network monitors, 500 process monitors - that is a lot of monitors. That is for 1 data center, now do that for say 12 data centers. And you can see the issue.

Even armed with today's most complex and best tools from vendors and open source projects, interpreting this much data for various business applications has been very difficult for most organizations who have trained personnel. Imagine the cloud vendors or even your own cloud in trying to map tackle this challenge. Throw in the required dimension of determining meaning for varied usage patterns based on varying applications and this can be very difficult. Or even simple troubleshooting of a slowdown or similar issue for a single business activity. Many of the tools are not designed to deal with the size, speed or flexibility of clouds. They are too slow, too ponderous, or requirement too much manual intervention to be useful.

This is but one sort of challenge that is being addressed by the cloud community. As cloud move inexorably into being more mature, there is a lot of innovative thinking into tackling these and other challenges for consumers of clouds.

As the cloud computing landscape changes, it is important to come to a good understanding of what clouds can offers in their current state and adjust it as time goes on. And I like simple, easy-to-grasp definitions. It makes explaining things to customers a lot easier.

Friday
22Jan2010

Being Mobile - Smartphone Reflections

For the past 3 years I have been using my iPhone alot and more recently my Android smartphone as well. I have pretty reached the point where my I carry only my laptop and my smartphone for work and travel.

The laptop has become my main computing platform for all but my heavy duty tasks. However my smartphone is my main workhorse. I check mail, status updates, send pictures, do documents, read news, listen to music, play games, share information, make calls, watch movies, and make blog posts among many other things. Having owned other smartphones I want to be clear that my iPhone has been hands done the most to change my portable computing habits. I like Android too but it's quite frankly not as slick nor easy to use yet. Both sets of devices are in my opinion far better overall than blackberry or Microsoft phones I have used.

I am amazed at how productive and plugged in I have become thanks to these new devices. They are very user friendly, powerful and flexible than prior generations. Their portability also makes them really attractive since they are lightweight and less bulky than either laptops or netbooks.

Personally and professiionally speaking I am looking forward to the future generations of these devices and how their innovations improve the quality of my professional career.

Thursday
21Jan2010

Keeping Up To Date - How To Adjust to Challenging Times

I read an article today from The Economist entitled "The Trap: The Curse of Long-Term Unemployment Will Bedevil the Economy". There are some very true and fascinating comments in this article which have been stated over and over again by other experts.

In today's workplace there are many observations about the changing landscape such as this one from Vocii which demonstrates how some CEOs are adjusting to the times. Yet for many professionals these concepts used by executives are elusive. One of the core principles I have attempted to pass along to other colleagues has been the concept of keeping current and competitive with ones skills. This is what CEOs and executives do, this is what all working professionals should do. This is especially true of technical professionals.

Technology changes rapidly creating a great number of challenges and opportunities at the same time. It creates more of a level playing field though it has it's extremes. Often times I come across numerous technical professionals that spend all their time working job searches and resume changes, yet totally ignoring the fact that their skills may in fact need ot be honed as well. Admittedly looking for the next opportunity is very important as is having a very good resume demonstrating your value. However, in the end you need to possess the skills that organizations want. Most have very good skills but need some refinement. Others need to learn whole new skill sets.

In my experience keeping abreast of technology is part of a technical professionals career. Admittedly indepth knowledge on the detailed technology may not be as pressing depending on your exact role, but one cannot be even a CTO or CIO without some passing knowledge of the latest approaches. I run into many technical professionals with very deep knowledge in a few skills or such a broad aptitude with little capability of applying modern solutions to significant problems.

I often use my own approach in keeping skills current as a means to inspire others. I mentor several startups in their business models and technical executions. I also mentor numerous working professionals by helping them deliver innovative solutions into their areas of responsibility which allows them to gain new skills while leveraging existing knowledge areas. I also help many technical implementers by assisting in their deployments, solutions or even at times their next generation solutions. All of these efforts allow me to stay in touch with various aspects of my industry that interest me, assist various levels of businesses to accomplish strategic goals, learn new, exciting and innovative ways to look at problems and solve them, and help with hands-on technology that I consider fun and intriguing.

Also in a prior post, I mentioned building my own personal technical environment with which to explore new technologies, build up my own knowledge, and not apply my own concepts to problems that may be of benefit to myself in my career but to others as well.

I look at things in terms of investments such as say learning Java. It is a pretty simple proposition to purchase a book, load the most popular software components such as the JVM, Maven, Eclipse, etc. and learn some of the concepts. Even purchasing a copy of VMware can help professionals gain a better understanding of virtualization. Using virtualized environments to help demonstrate how to spin up/spin down resources helps others to see practical benefits, considerations and how to apply that to their own environments. Ultimately what I attempt to do is motivate and inspire other professionals to do more with resources available to them. To think on their own and to grow on their own. Ultimately being able to rely on yourself, being active and focused, and learning new skills is a requirement in today's hyper-competitive landscape.