tag:blogger.com,1999:blog-42172449549738251902024-02-07T11:46:42.492+02:00Thoughts about software, technology and business in generalJRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.comBlogger15125tag:blogger.com,1999:blog-4217244954973825190.post-22634951812881935952016-10-18T15:19:00.002+03:002016-10-18T15:19:54.773+03:00MISSING IN IT: Personality before skills<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBjhhNri_2M4RHmCkNrDTgGxhdHSImj6_zZOEBn0BLqhQ-GnXoze2_0dC9NdGg8f7Am6xQ__CYT6D6r_B3m1f1U4KSmVNB3hxJ4nm0UILTL7dqKzpSY10wJNZJhV5BKp2J8KgM8WB0_G4/s1600/personality_vs_tech.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="140" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBjhhNri_2M4RHmCkNrDTgGxhdHSImj6_zZOEBn0BLqhQ-GnXoze2_0dC9NdGg8f7Am6xQ__CYT6D6r_B3m1f1U4KSmVNB3hxJ4nm0UILTL7dqKzpSY10wJNZJhV5BKp2J8KgM8WB0_G4/s400/personality_vs_tech.png" width="400" /></a></div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
When one looks to advertisement of open positions or CVs of applicants in the IT-industry, what one usually finds is that they are heavily populated by list of programming languages and libraries to software products from databases to application servers. This doesn’t change much in job interviews, in worst case interviewers rely on short interview with formal test to find out applicants’ level of remember even smallest details of selected technologies while in best case they discuss on what is applicants opinion and specific experience of certain technology in question. Technical skills are important, no question about it, but there is something much more important than that, the question of how well does the job match the personality of the applicant.</div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
Now what do I mean when I say personality of the applicant? Let me address this the other way, let me ask you, what kind of personality a person should have if his or her task would be to…</div>
<ol style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; list-style-image: initial; list-style-position: initial; margin: 3.2rem 0px; outline: 0px; padding: 0px; vertical-align: baseline;">
<li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 2.4rem 0px 2.4rem 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;"><em style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: Georgia, "Source Serif Pro", serif; font-size: 0.975em; font-stretch: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><strong style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: inherit; font-size: 20.475px; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Develop a new software system,</strong> or</em></li>
<li style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 2.4rem 0px 2.4rem 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;"><em style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: Georgia, "Source Serif Pro", serif; font-size: 0.975em; font-stretch: inherit; font-variant: inherit; font-weight: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;"><strong style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: inherit; font-size: 20.475px; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">Maintain and redevelop a software system</strong></em></li>
</ol>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
Are there any personality straits that would be more suited for one task instead of another? In my opinion a person who develops a new system should be stronger at<strong style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">ideation</strong> while person maintaining and redeveloping should be more <strong style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">analytical</strong>. Maybe also a person developing new software should also be more <strong style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">positive</strong> as developing something new always includes a lot of unknown questions and risks that the developer just has to trust that he or she can overcome them. Also maybe a person maintaining software should be more <strong style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; outline: 0px; padding: 0px; vertical-align: baseline;">context aware</strong> as any change to the function of system can start multiple cause-effect cycles that need to be understood very well to prevent any unwanted side-effects appearing and possibly causing major harm.</div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
Of course a skilled developer can both develop a new software system and maintain an old one, however when one’s personal straits match with demands of the task in hand, then we right person for the right job leading to higher work motivation, higher work moral and enhanced work satisfaction, this in return leads to better results. From my own personal experience both as developer and as team lead, I have noted the importance of matching work with personality. For example before I understood the importance of matching work with personal tasks, I thought that generally maintenance and bug hunting work is tedious and dull, and that only interesting and fun work involves new development. I was completely wrong about this! For me maintenance work was tedious, but some of my colleagues shined and enjoyed maintaining systems, vice versa I also noted that for some people innovating and generating new code was the most horrifying task that they could ever think of.</div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
What we in the IT-industry should start to focus more is to ask what type of persons we are, what kind of personal straits we have, and what kind of work we are best suited for. If we keep just matching work and people based on solely on technical skills, then we will keep wondering why we sometimes people become dissatisfied and lose their work morale. The way for better future is with valuing personal straights and trying to understand what works suites best different persons.</div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
P.S. I am not in business of advertising throe my writings, there are many ways to try and evaluate one’s personal straits and strengths. One of the best ways that I know is using self-evaluation test from Gallup called <a href="http://strengths.gallup.com/default.aspx" rel="nofollow noopener" style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: #8c68cb; cursor: pointer; font-family: inherit; font-stretch: inherit; font-style: inherit; font-variant: inherit; line-height: inherit; margin: 0px; outline: none; padding: 0px; text-decoration: none; vertical-align: baseline; word-wrap: break-word;" target="_blank">Strengths Finder 2.0</a>. I and many of my friends and colleagues have used it successfully on finding the words describe who they are and by doing so have succeeded on better understanding to what they are suited and where their strengths lie. No matter how people evaluate what are their personal strengths, the most important idea to remember is to take count of personality and personal strengths when matching people with work.</div>
JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-30991162147948554772016-10-12T09:38:00.001+03:002016-10-12T09:38:54.021+03:00Hardware is cheap, people are not<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
Have you ever struggled with an IT-system that is operating at the limit of its capacity? I have. Have you ever noted that people instead of asking how to raise capacity, try to squeeze out everything they can from the current system? I have. I don't know exactly why we do so. Maybe people fear asking or making decision to invest into new equipment. Maybe people feel that enough is enough, that the system should work with the equipment it has. I don't know exactly what is the reason for us trying to save up, but what I know from my experience is that trying to squeeze up usually ends up costing more.</div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
Let me give some examples. I was once working with an telecom system that was very database intensive. We tried to optimize the database, we fixed bugs that were causing reruns, we rewrote parts of the software, but at the end of the day after months of man power was used, the final fix was to replace systems hard drives with SSD drives, and like magic, our problems were over. Another time I was leading re-development of an retail system that was suffering of horrible slowness, while at the end of day the software had to be rewritten completely, we gave artificial breath to the system by just upgrading hardware, which made the system actually be usable again for users.</div>
<div style="background-attachment: initial; background-clip: initial; background-image: initial; background-origin: initial; background-position: initial; background-repeat: initial; background-size: initial; border: 0px; color: rgba(0, 0, 0, 0.701961); font-family: "Source Serif Pro", serif; font-size: 21px; font-stretch: inherit; font-variant-numeric: inherit; line-height: 32px; margin-bottom: 3.2rem; margin-top: 3.2rem; outline: 0px; padding: 0px; vertical-align: baseline;">
Of course not always problems can be solved by just investing into hardware. Many times especially with large scale systems it is very important to keep the code clean and optimized. However many enterprise systems that we rely our business are of limited use, in those cases people should not automatically go and try to save up, but they should approach the problem holistically and look on different ways to get to the point where they want to be.</div>
JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-59267113665352662752016-06-27T13:35:00.000+03:002016-06-27T13:40:39.218+03:00Brexit is symptom of lack of vision and leadership since 1992<div class="MsoNormal">
Last Friday morning Britain and Europe were shocked by the
result of the British EU referendum. As the British vote to leave started to
sink in, feeling of shock quickly changed to uncertainty about the future,
about the British place in Europe and the world, about the structure and future
of the European Union itself. As the day went on politicians, business leaders,
media commentators, etc. all gave their responses and tried to assess the
future. Few people regretted David Cameron’s election pledge on having a
referendum on remaining in the EU. Some commentators blamed British media and
politicians on their long history of Euroscepticism and outright lies. What
people haven’t really asked is how things even got to this point. I believe
that the referendum and its result were the only logical out turn of decade’s
long lack of vision and leadership in Britain.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
It all started in 1992 when members of the European Economic
Community were negotiating new treaty to advance European co-operation into a
new level. With Maastricht treaty EEC member states created an entity with its
own internal market, with its own currency, with its own foreign- and security
policy, with definition of its own citizenship, etc. were all about creating European
federal state in all but in name. The writing was in the wall for everyone to
see. The British leaders at the time clearly understood the situation and opted
out from the last chain that would lead their country into a federation without
no easy way out, they opted out from the single currency.<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
Since 1992 the British political establishment has been
turning from side to side on what their relation to EU should be and are they
on in its development or not. When in other countries such as Finland joining
the EU and single currency was seen not only as economic question but a
question of security and politics, British establishment continued to pretend
that everything was just about economics and trade. When Euro as currency finally
saw its daylight, Britain joining it or not was seen as only as economic question.
Most famous example of this thinking are Gordon Browns, then Chancellor of the
Exchequer, five economic tests that were designed to give any answer that Brown
and then Prime Minister Tony Blair wanted them to give. This indecisiveness can
be best underlined from Tony Blair’s interview in Newsnight in May 2002 where
he said…<o:p></o:p></div>
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal" style="margin-left: 36.0pt;">
<i>“Should we stand apart from
the alliance right on our doorstep as a country? It would be crazy to do that.”<o:p></o:p></i></div>
<div class="MsoNormal" style="margin-left: 36.0pt;">
<i> </i>vs. <i><o:p></o:p></i></div>
<div class="MsoNormal" style="margin-left: 36.0pt;">
<i>"It is an economic union.
We shouldn't, for political reasons, stand aside. I don't believe that would be
a fulfilment of our national interest. I believe it would be a betrayal of our
national interest."<o:p></o:p></i></div>
<div class="MsoNormal" style="margin-left: 36.0pt;">
<i><br /></i></div>
<div class="MsoNormal">
This is an excellent example of the British establishment’s
double think on understanding fully well that EU isn’t just about trade and
economics while pretending that is all about economics and trade. Politics of
pretending reached their ultimate height in signing of the Lisbon Treaty that
the then Prime Minister Gordon Brown signed hours after others alone in a back
room. <o:p></o:p></div>
<br />
<div class="MsoNormal">
<br /></div>
<div class="MsoNormal">
The British EU referendum result is a wakeup call for the political
establishment in the UK. They have to accept that EU is not anymore just a free
trade area, but a de-facto federation that will keep advancing on future
integration. They and especially British Eurosceptics also have to accept that
EU is not going to collapse, they have been predicting imminent collapse of the
Euro since 1999 and been wrong every time. The question that British need to ask
is do they want to be part of possible European super state and if not then
what will their relationship be with it. There was time and maybe there is
still to negotiate for creating truly multispeed Europe with Britain being part
of it, but the time will run out if British political establishment isn’t truthful
to their people. What Britain needs is vision and leadership to implement it,
be it vision of Britain in or out of the European Union.<o:p></o:p></div>
JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-1926854012527149012016-06-22T11:01:00.001+03:002016-06-22T11:01:25.921+03:00Finnish smart watch makers at a crossroadsEver since Apple introduced iWatch in 2014, market for smart watches has been under great amount of change and turmoil. Virtually all smart phone makers have pushed their own smart watches and smart bands to the market. Traditional watch manufacturers have also reacted, Tag Heuer publishing their Connected smart watch running Android wear. Companies from other industries have also shown interest on the nascent market, for example Nokia, manufacturer of mobile networks, acquired French connected health appliances maker as part of their Internet-Of-Things strategy. Fast change and evolution of the market with introduction of new competitors have put Finnish sport watch makers Suunto and Polar at crossroads.<br />
<br />
<div class="separator" style="clear: both; text-align: center;">
<a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNUXzcAN07GTMVtuTYg7IyMgLDGjVoiUGsUmm7hIkP8Dce3fJIP26salKF_8GOulZnoTDpKfid5BAs4zUx1iXgknyue_A0J2QsTztZp7FeCCoDgbVaLncyCGlJhWhO695J201jCjU45-Y/s1600/suunto_polar.jpg" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"><img border="0" height="182" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhNUXzcAN07GTMVtuTYg7IyMgLDGjVoiUGsUmm7hIkP8Dce3fJIP26salKF_8GOulZnoTDpKfid5BAs4zUx1iXgknyue_A0J2QsTztZp7FeCCoDgbVaLncyCGlJhWhO695J201jCjU45-Y/s320/suunto_polar.jpg" width="320" /></a></div>
<br />
<br />
Suunto and Polar both have shared history on being specialists on heart rate monitoring. Polar received its first patent on wireless heart rate monitoring in 1979 while Suunto expanded from being a compass maker to manufacturer of wrist computers with build-in navigation and instrumentation capabilities. They both have expanded and moved to become specialists of sports and health’s instruments with sport watches being at the core of their offering. While concentrating to serve a special niche market have allowed them to grow and show profit, it has also left them to be small companies. In 2015 Suunto reported total revenue of 63 million euro while Polar in 2014 reported revenue of around 203 million euro. Suunto is owned by Amer Sports, of sports equipment conglomerate, with yearly revenue over 2.5 billion euro and EBIT of 212 million euro. Polar on the other hand is family owned business.<br />
<br />
The key problem that both of these companies share is that they are too small and have very limited resources compared to their competition. Big technology giants such as Apple, Samsung and Microsoft have more or less unlimited money to spend. Even smaller competitors such as Garmin has yearly revenue of over 2.8 billion USD with fitness products counting for 662 million USD. Both companies have responded to the changing market structure with different strategies. Polar has chosen to seek revenue growth by introducing multitude of different products such as activity and fitness trackers in lower price points. This strategy has enabled the company to keep up with the overall growth of the market. Suunto on the other hand has chosen to concentrate on higher end of the market with mix of design and usage of premium materials. This can be best seen in the new Spartan collection where the all titanium model retails at around 749 euro. This strategy of concentrating to a niche has caused company revenue growth to halt.<br />
<br />
When looking at the future, what can be seen is that the sports and smart watch market is moving from being appliance centric to being application and service centric. When Apple first introduced iWatch, applications running in the watch were dependent of the phone. With Apple watchOS 2 and Android Wear 2, applications now run independently in the watch itself. What this means is that device functionality and offered value is not anymore tied to the manufacturer, but is largely created by independent third parties. While Suunto and Polar have resources to create few supporting services to their devices like polarpersonaltrainer.com, they don’t have enough resources to serve the whole wider market and even if they would, they would be playing catchup all the time. The question isn’t will there be a killer application for smart watcher or not, the question is when that application and service will come out.<br />
<br />
What currently protects both companies is slow progress of battery technology and computing power requirements of both watchOS and Android Wear. While Suunto sport watches have battery life of weeks, smart watches running watchOS or Android Wear have in best day scenario battery life of 1-2 days. As technology develops this will change. The big question that both of these companies need to ask, how are they going to respond to technological change and how will that impact their overall strategy. There are three options for these companies to take: 1) develop offering based on Android Wear; 2) develop offering based on fork of Android or Linux; 3) continue using and developing in-house operating system.<br />
<br />
In my honest opinion the most difficult option for these companies to take would be option number 2: to develop offering based on their own fork of Android or Linux. The reason is that keeping internal version of Android or Linux active and update needs lots of developer resources, not to forget the need to create their application stores and keep up connections to developer community. Clearly this option is too expensive and offers too little return of investment. Unfortunately other options are not much better. The biggest problem of using Android Wear is that Google doesn’t allow individual manufacturers to customize it and thus prevent creation of unique user experiences and offerings. With Android Wear manufacturers can only compete with hardware which essentially will lead into commoditization of the Android watch market where low cost and scale of economies only dictate winners. Finally the third option is to continue developing in-house operating systems which suffer from missing out the application market.<br />
<br />
So what should Suunto and Polar do? Whatever the technical solution will be, as small companies they should target higher price segments and compete with specialization and quality. Suunto has already geared its strategy towards this and Polar should do the same. In case of technical solution, be it creating a new version of Android or Linux, or further developing their in-house operating systems, it is necessary to move away from developing closed source software and instead move on to develop open source platforms and components as group of companies with same interests. If Suunto or Polar would take the lead and create an open source project with a small dedicated team for creating either operating system or application runtime for future wearable devices, they could make big impact on how the market will develop.<br />
<br />
Personally I see application runtime environment as the key ingredient that will make or break any future wearable project as there is no benefit with the project if it doesn’t achieve more applications to be available for the platform. Instead of inventing the wheel again, I would instead choose to copy an already popular platform like Google’s Java-language based runtime environment. The good thing about this is that there are already lots of available tools and companies specialized on enabling Java based programs to run both on embedded Linux and on real time OS’s. Whatever the specific solution will be, time is of the essence as it is easier to develop solutions for a market that is just about to bloom than to a market that has already formed. I believe Suunto and Polar can response to the challenge that Apple and Google have created, but they have to move very quickly.JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-9191100408464499932012-03-05T21:34:00.001+02:002012-03-05T21:34:08.413+02:00Will Windows 8 enter the living room? - Part ILately one of the most talked new software projects in works has been the new Windows 8, and specifically its new Metro UI. Some people like it, some people hate it. However all the people I know think that it is mainly designed for tablets and other portable devices, aiming to compete with Apple of the hearts and minds of home users. This is certainly not a wrong view, but I myself think that Microsoft has even more ambitious goal: to take over the living room, to replace traditional television and peripheral devices connected to it with Windows. Even Steven Ballmer, the CEO of Microsoft, hinted about it in his CES 2012 keynote.<br />
<br />
Before going further, let us remind our-self of the importance of the living room and the television. The television has been and is an inseparable part of the modern way of living, it is a centrepiece of home where individuals and families come to share time and experiences together. Such is an importance of the television and its place in our life that it annually generates nearly 50 billion dollars in advertising revenue alone in the US. That is the market where Microsoft is aiming at, and incidentally a market that Google is trying to erase. <br />
<br />
Now many companies have tried to take over the living room from the television, however all of these attempts have more or less failed. The reason for their failure has been simple, offerings to replace or amend the television have been too complex, needing either set-up-boxes, peripherals or too complicated to use remotes. The only new technologies and services that have been successfully introduced and become ubiquitous have been those embedded into television itself like the EPG which came with the DVB standard. So how can Microsoft think that they can succeed where other have failed?!<br />
<br />
The answer to why Microsoft can take the television is because they have the technology and vision to make using of Windows driven televisions as simple and easy and intuitive as using our current televisions. The two key things that Microsoft have are the Metro UI and Kinect motion capture technology. By combining these two and embedding them into an Internet enabled television, they can create a market proposition for consumers that offers more with simpler terms. What Windows driven television means is no more hassle with remotes, no more usage of incoherent OEM UIs and added services, instead there will be one coherent and intuitive user experience that combines all services together.<br />
<br />
However the television market is too big and established for Microsoft to take it alone, the change has to come and supported from industries tied to television, from device manufacturers to cable operators and from broadcaster to advertisers. Microsoft has to offer more than just renewed consumer proposition, they also have to create new value for all current stakeholders to succeed in their quest of conquering the living room. I will continue with this subject in my next blog post.JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-50588670196148907202012-01-02T22:42:00.002+02:002012-01-02T22:43:45.332+02:00We are at the end of the road for home computerDuring the last year, I have wanted to write about multitude of changes that are happening and are going to happen in the PC industry. Topics that I would have liked to discuss were the upcoming Windows 8, emergence of endless stream of Android tablets, wireless technologies, mobile optimized chips from Intel and AMD, etc.. However I had a writers block, I couldn't write about these topics because I had not made my mind on what the bigger picture was. Now I know. The bigger picture is that we are at the end of the road for home computer, and that is a major cause of change in the computer industry.<br />
<br />
<b>Why is it happening?</b> There is basically two reasons for it, one being driven by technological development, and the second on being changing usage patterns of people. In the past home computers were used as productive tools, then as a way to access information and the Internet, and now they are used mainly for consuming media and engaging entertainment. Home computers, be it desktops or laptops, can fulfill these needs, but not optimally, and certainly not with ease of usage. Instead of a home computer, a better way to fulfill these needs is to use range of different devices like gaming consoles, Internet enabled TVs and tablets linked to each other and other peripherals via wireless connection.<br />
<br />
One might ask why is the change coming now and not before, the reason is that technology is becoming ready, it is powerful enough and more importantly easy enough to use. For example you can stream music from your phone or tablet to your stereo system; you can print to wireless printer; etc... In short, your devices are talking to each other, thus you don't need one uber device to do everything.<br />
<br />
<b>When will it happen? </b>This is a tricky question to answer, but essentially it is all about consumer perceptions on what is needed to fulfill their needs. The day when your average Joe says to himself that instead of getting a new computer to use Facebook and YouTube, he will instead buy a new tablet with a wireless keyboard and printer if needed. This change can happen very rapidly, maybe even a time frame of just few years. However to speak frankly, we are not there yet. The technology isn't powerful enough, when we have for example AMD Fusion or upcoming Intel Ivy Bridge processors with 4 gigabytes of memory packed inside a tablet or other media device, then the technology will be ready. This would more or less put the time frame from end of 2012 to 2014.<br />
<br />
<b>What does it mean?</b> End of Windows monopoly in the home market if Microsoft doesn't successfully retake markets from Apple and Google Android with Windows 8. End of open access and free usability of various devices for the majority of users, in short everything will be locked, users download their software and content from their designated shops or use Internet delivered applications and services to fulfill their needs.<br />
<br />
From a point of view of a professional working in the software industry, this upcoming change will create both opportunities to be taken and dangers that need to be counteracted. One pit fall that I see is that companies will be spending too much time and money on tailoring applications for different platforms, a dangerous trend that we are already seeing with smart phones. Instead companies should use this opportunity to get rid of all native applications and technologies, moving to pure web based technologies that can be offered to all platforms. It may not be optimal, but cost effective flexibility is something that will be needed in the coming years.JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-75241671379788869282011-12-10T13:38:00.000+02:002011-12-10T13:38:21.188+02:00Creating business around of the next billionOne of the strategic goals of Nokia is to bring out mobile phones and devices to the next billion people in the developing world, namely in Africa, India and Asia Pacific. To this day reaching out this goal has only seemed to provide value and opportunities for phone vendors, network manufacturers and mobile operators. However this perception is going to change due to evolution of affordable mobile devices. Just few years ago an affordable handset in the developing world had only basic phone functions, now new devices like the<a href="http://conversations.nokia.com/2011/10/26/nokia%E2%80%99s-new-series-40-asha-range/"> Nokia Asha series</a> handsets offer specifications that are enough to enable functioning of wide array of software applications and services in these phones. This creates an opportunity for third parties to reach out the next billion and create business around them.<br />
<br />
Now many people are probably wondering what kind of business can be created. When answering this question it is important to remind us on how market in the developing world differs from the market in the developed world, and what consequences and opportunities it has...<br />
<br />
<b>Computers aren't ubiquitous</b>, in fact they are very rare in the
developing world. For example in the United States there were 762.152
computers
per 1000 people in 2004, in India the figure was 15.531
per 1000, and in Niger the figure was as low as 0.716
per 1000. What this means is that people aren't using software and
services that people in the developed world have accustomed to use with
their computers, software like spreadsheet and word processing are
virtually unknown for the most people in the developing world. This is a
clear market opportunity to offer already invented and tested software
products to new markets.<br />
<br />
<b>Information is expensive</b>. In the developed world we have gotten
used to buying books from the Internet or from our local bookshop
without giving a notice on the price of the book. We also have gotten
used to looking up information from the web or streaming it over the
network. Things change much in the developing world: books are expensive
even if you discount the cost of content, this is due to both people
having much lower incomes, but also due to smaller scale of operations
increasing costs such as logistics. The same is true with electronic distribution, electronic distribution that relies on data connectivity is out of question as the cost of connectivity if available is out of reach of regular consumers, and distribution based on tangible goods such as Compact Discs suffers from small scale of operations and everything that comes with it.<br />
<br />
The opportunity here is in making the information and distribution of it inexpensive. This can actually be done by creating a peer-to-peer distribution framework where people can swap content between their phones with Bluetooth connectivity. With this method we can minimize costs by a large degree and as an added benefit marketing and advertising can take advantage from natural social networks of people. The challenge in this method is how to ensure digital rights management and compensating content authors. Other opportunity for content distribution is by binding affordable service offer like the <a href="http://www.aircel.com/AircelWar/appmanager/aircel/delhi?_nfpb=true&_pageLabel=VAS_aircelPocketInternet_page">Aircel Pocket Internet</a> with a walled garden content delivery platform.<br />
<br />
<b>External entities can also be customers.</b> In developing countries there are multitude of external entities ranging from non-governmental to governmental and intergovernmental organizations working in multitude of different projects. These organizations are potential customers with some having quite deep pockets, even better is that these organizations can be easily approached as their administrative functions are usually located in the developed world. Potential projects to offer can range from digitization of information into mobile form to different kind of educational applications that can either assist learning or help in some other way. <br />
<br />
Overall I deeply believe that reaching the next billion can create business opportunities for a large number of parties. However to reach this goal, software companies need to be brave and open minded, things work differently in the developing world, but that doesn't mean that they work poorly, they work differently and one who masters taking advantage of this difference can create value if not in large scale then at least in adequate numbers.JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-67259233767251310542011-10-13T21:31:00.000+03:002011-10-13T21:31:41.281+03:00Why my startup failed...Today is the National Fail Day in Finland. It is celebrated because the Finnish culture is very risk averse and failure is seen as not being an option - if you fail, you are a failure. This part in our culture has to be changed as if we don't allow ourselves to fail, then we never get courage to try out anything new or risky, but we also don't make the best of our eventual fail. To advantage this cause, people are encouraged to share their failures to get the message through that failing is not a sin. That is why I now share the story of my startup and why it failed...<br />
<br />
<b>The startup</b><br />
In March 2006, I and my friend started a software company specialized on survey research software. I had started the project at the end of 2004 when I wrote first lines of code to test out some ideas that I had. Fast forward the little software project matures and my friend joins the project as a business lead. More time goes on and finally as our software matures and starts to look as real enterprise software, we decide to try out and found a company.<br />
<br />
The software itself that we planned to run and sell as a service was pretty impressive. It had a modern styled web UI with everything rounded and shaded as was the custom. It had more features and functionality than any other competing service had. And it was fast and lean piece of software. It was written completely with J2EE, used MySQL as its database, supported Active Directory and many enterprise features. But the best thing was that the database code that was hand written had built-in sharding implemented. Sharding is horizontal partitioning of the database. In our case every survey had its own shard, its own tables that insured that our database didn't wasn't slowed down by having too many surveys or too much data in it. The code was so good that when we started our company, we didn't buy our own server nor did we rent one, we rented a cheap Linux virtual server that did the deal. Everything looked good, we had our software in order, we had our service running in lower costs than our competitors, and we thought that nothing could go wrong...<br />
<br />
<table align="center" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td><table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeFHP0QDYueX_fPFWn82LXFbt68CNwlVGgNd4leK2FFEeLbRR0EfPvViEWST6MX3Lzq7K_8RyFAsgvXNvYjEJAU6f1IUqu8TNGQYG1JkcG6jjMddZklohiTLL0i7XJZEdhBDDlIvYWImc/s1600/kysymyksen+teko+ja+muokkaaminen.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="115" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjeFHP0QDYueX_fPFWn82LXFbt68CNwlVGgNd4leK2FFEeLbRR0EfPvViEWST6MX3Lzq7K_8RyFAsgvXNvYjEJAU6f1IUqu8TNGQYG1JkcG6jjMddZklohiTLL0i7XJZEdhBDDlIvYWImc/s200/kysymyksen+teko+ja+muokkaaminen.jpg" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Screen capture - Making a question</td></tr>
</tbody></table>
</td>
<td><table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSMW4anYeS64H6Oggvku_m0avz85snRjrPB_wJQF_xvKWJINybY7S95uFdZD0S9pfXu2zoVRTM_9ULfRO-mDfMnfo9z3F4s4dwnLD25ex64lAUJL0lJiKwiw1dtqSdb7waTgQlJfrfTF4/s1600/tulosten+tarkastelu.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="115" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjSMW4anYeS64H6Oggvku_m0avz85snRjrPB_wJQF_xvKWJINybY7S95uFdZD0S9pfXu2zoVRTM_9ULfRO-mDfMnfo9z3F4s4dwnLD25ex64lAUJL0lJiKwiw1dtqSdb7waTgQlJfrfTF4/s200/tulosten+tarkastelu.jpg" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Screen capture - Reporting results</td></tr>
</tbody></table>
</td>
</tr>
</tbody></table>
<br />
Time flies and soon it is 2008. Our company had signed customers. We had sold and delivered our software both as a product and as a service to number of customers. However the number of customers and the money we were making was abysmal. Our company and our software seemed to have failed in the market. We make the only rational decision that we can and put our company into end-of-life care - continuing delivering service to our paid customers, but not signing or seeking any new ones.<br />
<br />
<b>The failure</b><br />
So what had happened? Why did our startup failed? Well there was large number of different reasons, but in the end the fatal mistake and failure that much contributed to our other failures was the failure of understanding how our customers experienced value.<br />
<br />
We as a couple of university students had thought that what customers wanted was a versatile tool with multiple question types and options and various optimized schemes to enhance information gathering from surveys. We thought that the more features and advantaged features we would have the more value customers would experience. We were wrong! We were biased, we were power users, not irregular users of survey tools that most of our potential customers were!<br />
<br />
Our potential customers did want a versatile tool, but their experience of value didn't follow our pattern. Instead they got most value from the single function of just having a simple form to gather answers. Of course additional features did add value, but in a diminishing manner. At the end we estimated that at some point more features in our software would actually lower customer experienced value than increase it. This was because more features essentially meant more complex user interface and software, making customers unable to use the tools power.<br />
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: center;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG3Q9rITQMrbDj1YWfqVXoJY35fGlF7LNYo6qYHMAlTxWJMJ1TBxfFM3OvzM0n9ANbtE-KlPWkhdc-KuNoksLBQWXH9zWeEv8GFh_k3mRo0nvmroLHdXMFygdIRichKy3kcDLHNU3OdGg/s1600/experienced_value.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="193" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEiG3Q9rITQMrbDj1YWfqVXoJY35fGlF7LNYo6qYHMAlTxWJMJ1TBxfFM3OvzM0n9ANbtE-KlPWkhdc-KuNoksLBQWXH9zWeEv8GFh_k3mRo0nvmroLHdXMFygdIRichKy3kcDLHNU3OdGg/s400/experienced_value.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Experienced value / number of features</td></tr>
</tbody></table>
<div class="separator" style="clear: both; text-align: center;">
</div>
Of course one mistake doesn't mean a total failure, but it can help you to make other mistakes that will in time cause the eventual fail of the service and firm. In our case because we burned more time and money to build our product, and when we went to the market and failed to reach our potential customer base, we were already in a thigh financial position. We understood that we need to angle for professional users, but they were both hesitant to try a new product from a startup and wanted additional features, and because we were in too thigh spot to negotiate good enough deals, we took in deals that involved too much work for too little money. We were essentially living from month to month being unable to really break from that death spiral. It was too much and we had to just confess that our startup had failed.<br />
<br />
<b>Lessons learned</b><br />
There were many lessons learned during our startup. I for one don't regret at all that we started the company. If I hadn't been there and done that, I still would be asking myself on if I could have done it, could I have started a company and what would have come from that. Now I know the answer to that and it brings me great satisfaction that I tried. I failed, but I tried and learned some lessons and that is what is important to me. <br />
<br />
And when I look back our company, there were some innovations that came from our customers that were actually very good ideas and our implementations of them worked quite nicely. One could build a successful startup based on one of them, however the business model would be completely different than the one we had. I don't know what the future brings, but maybe I will try entrepreneurship someday, after all it was very fun and exciting time. :-)JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-72756763568338528952011-09-16T17:29:00.002+03:002011-09-17T17:33:43.709+03:00Nokia N9 is a strong sign of revival<table cellpadding="0" cellspacing="0" class="tr-caption-container" style="float: right; text-align: right;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilfI6pxLahyphenhyphenWhFlrpdiL4P2kVvUos2Ytfrj8fnZdQmUU6H9Dz2E1Reds_ocyN1VEz0uESNe7D9pyHt2jDYCcKyV1DgW6UBBjA6613nAXygYk6hYhMZeHbMvwOg_B9Ae7feVcYQLwvkD2w/s1600/NokiaN9inHand.jpg" imageanchor="1" style="clear: right; margin-bottom: 1em; margin-left: auto; margin-right: auto;"><img border="0" height="160" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEilfI6pxLahyphenhyphenWhFlrpdiL4P2kVvUos2Ytfrj8fnZdQmUU6H9Dz2E1Reds_ocyN1VEz0uESNe7D9pyHt2jDYCcKyV1DgW6UBBjA6613nAXygYk6hYhMZeHbMvwOg_B9Ae7feVcYQLwvkD2w/s200/NokiaN9inHand.jpg" width="200" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Testing the new Nokia N9 </td></tr>
</tbody></table>
Few days ago I visited the Helsinki Nokia store to try out the new Nokia N9, the long awaited Meego handset. As I had expected, the N9 was a smooth and pleasure experience, proving that Nokia can really deliver a world class smartphone with an operating system and user interface that not only compares well with the iPhone 4, but goes in certain areas over the benchmark and delivers a better user experience and more functionality than the model of the industry. However the N9 isn't the handset that is going to allow Nokia to make a comeback and put it back to being the leading smartphone vendor. What the N9 provides is a taste of future of what is coming from the company.<br />
<br />
You probably have already figured out that I'm not talking about the operating system or the user interface of the device, as Nokia has aligned itself with Microsoft and committed to use only Windows Phone operating system in its upcoming smartphones. The thing that I'm talking about, and what sets the N9 apart from other handsets is the hardware. The hardware is the real star of the N9. When I first picked up the handset, I couldn't believe how good it felt in my hands. In the same time it feels both very light and very hardy, much thanks to the unibody construction of the device. The surface of the device also feels very smooth in hands, but in the same time not slippery at all, there is absolutely no feeling at all that the device would slip out of my hands. The display is also beautiful with its curved glass that makes the icons and user interface to float over the handset. The design and hardware are very innovative.<br />
<br />
The reason why I put so much importance to the design and hardware of the N9 is because these innovations are likely going to appear in the first Windows Phone handset that the company is going to deliver to the market. In the leaked internal video of Nokia, Stephen Elop, the CEO of the company, demonstrated a Windows Phone handset that looked much like the N9. This is important because I believe that the reason why handsets with Windows Phone haven't sold well is because of two reasons: A) they haven't offered quality design and hardware; and B) their overall delivery of value to the customer has been at best average. In case of Nokia, from the get go of the Microsoft alliance, it was clear that Nokia could deliver more value to the customer, Nokia Maps with offline navigation being one of the best examples of unique selling points. With the introduction of the N9, Nokia has demonstrated that it can offer the best design and hardware, thus enabling the company to cover the two falling points that have plagued other manufacturers of Windows Phone devices. This why I think that the Nokia N9 is a strong sign of revival, it offers a glimpse of what is coming to storm the market.JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-6322387317462875672011-09-11T21:31:00.000+03:002011-09-11T21:33:01.756+03:00Google+ UI is the future of event driven software<div style="text-align: justify;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span lang="EN-US" style="font-family: "Times New Roman","serif"; font-size: 12pt;">Everybody following up the exciting world of Internet services and Social
media industries has probably heard about Google+, the new social networking
service that Google has created to challenge Facebook, the current leader of
social networking services. In their quest to challenge Facebook, Google has
made tremendous amount of work to invent and innovate new features and new ways
to interact for their service, many of which we in the software industry should
take a note from and learn, one of these things being the user interface.</span></div>
<div class="MsoNormal" style="line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span lang="EN-US" style="font-family: "Times New Roman","serif"; font-size: 12pt;">One particular innovation that I have especially been impressed is Circles.
Circles is a logical innovation to the Facebook innovated event based user
interface. In Facebook the centerpiece of the user interface is the personal
event queue which consists from incoming notifications that have been generated
by our friend and from an outgoing event queue where we push our new
notifications. This is brilliantly simple and allows us easily to connect and
share events with friends. The problem in this arrangement however is that as
the amount of our friends grow, we start to drown to new notifications and
start missing relevant events, we also start to become more hesitant on sharing
new events because we don't want to bother friends with updates to them that
useless and because we want to keep something inside a smaller circle. </span><span style="font-family: "Times New Roman","serif"; font-size: 12pt;">This is the stepping point for
Circles.</span></div>
<div style="text-align: left;">
<br /></div>
<table align="center" cellpadding="0" cellspacing="0" class="tr-caption-container" style="margin-left: auto; margin-right: auto; text-align: left;"><tbody>
<tr><td style="text-align: center;"><a href="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivBHqRYEpRfAb0N-IhSH4vH9L-93iepKMKlhCASfkXiwUv1smt7WqE19F1OTKZyJ-Jmix3miEI2YbZhERZn1NVI3OKAf1smEYspgwceXW0EB-q439Tro2_dJ-_M_veINZIp8gyOJJErvA/s1600/facebook_vs_google_circles.jpg" imageanchor="1" style="margin-left: auto; margin-right: auto;"><img border="0" height="180" src="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEivBHqRYEpRfAb0N-IhSH4vH9L-93iepKMKlhCASfkXiwUv1smt7WqE19F1OTKZyJ-Jmix3miEI2YbZhERZn1NVI3OKAf1smEYspgwceXW0EB-q439Tro2_dJ-_M_veINZIp8gyOJJErvA/s400/facebook_vs_google_circles.jpg" width="400" /></a></td></tr>
<tr><td class="tr-caption" style="text-align: center;">Facebook - Single queue vs. Google+ - multiple queue</td></tr>
</tbody></table>
<div class="MsoNormal" style="line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span lang="EN-US" style="font-family: "Times New Roman","serif"; font-size: 12pt;">In Circles you have multiple event queues for different people. You can
have an Circle for friends, family, work colleagues, etc... You can also group
one person to multiple Circles, for example a work colleague can also belong to
friends circle. This way you can easily share updates with the right kind of
people, but also quickly see what different groups of people are doing. This is
of course goes both ways, people belonging to your circles can also freely
decide on which circle you belong. This simple idea makes it easy again to
share and receive events. This is the idea that should be copied to any
software that deals with peoples and events that they generate.</span></div>
<div class="MsoNormal" style="line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<br /></div>
<div class="MsoNormal" style="line-height: normal; mso-margin-bottom-alt: auto; mso-margin-top-alt: auto;">
<span lang="EN-US" style="font-family: "Times New Roman","serif"; font-size: 12pt;">Many different kinds of software and services could benefit from
implementing Google+ Circles type of multiple event queues driven user
interface. For a example CRM software could instead of concentrating to display
information about overall sales or about a customer in hand, the main interface
to the software would be an list of events to which the specific user is tied.
These events could be automatically lifted from email or from calendar or from
phone, they could also be generated from external sources such as customers RSS
feed or picked from web sites or magazines. Events themselves could be grouped
by either customer or customer types. However the key to deliver added value
would be the ability to share events with the internal organizations, allowing
rapid communication and sharing of relevant information in timely manner. One
example of CRM software that has tried to go this way is the </span><a href="http://www.youtube.com/watch?v=puydh-ey_2k"><span style="font-family: "Times New Roman","serif"; font-size: 12pt;"></span></a><span style="font-family: "Times New Roman","serif"; font-size: 12pt;"><a href="http://www.youtube.com/watch?v=puydh-ey_2k">Salesforce Chatter</a></span><span lang="EN-US" style="font-family: "Times New Roman","serif"; font-size: 12pt;">, in my opinion Salesforce could have went farther in their
implementation, but it anyway demonstrates many of the strengths of being event centric. Countless other types of software could also be made event
centric, for example why not plug-in version control software and JIRA to
multiple event queues, allowing developers to note changes more quickly, enable
sharing of thoughts and useful resources. In my honest opinion many software
firms would do themselves a favor on investigating if they could transform
their software to be event centric. </span></div>
JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-45201143432331476472011-08-21T23:12:00.000+03:002011-08-21T23:12:17.332+03:00Meego is the strategic choice for mobile vendors<!--[if gte mso 9]><xml> <o:OfficeDocumentSettings> <o:AllowPNG/> </o:OfficeDocumentSettings> </xml><![endif]--><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:TrackMoves/> <w:TrackFormatting/> <w:HyphenationZone>21</w:HyphenationZone> <w:PunctuationKerning/> <w:ValidateAgainstSchemas/> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:DoNotPromoteQF/> <w:LidThemeOther>FI</w:LidThemeOther> <w:LidThemeAsian>X-NONE</w:LidThemeAsian> <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript> <w:Compatibility> <w:BreakWrappedTables/> <w:SnapToGridInCell/> <w:WrapTextWithPunct/> <w:UseAsianBreakRules/> <w:DontGrowAutofit/> <w:SplitPgBreakAndParaMark/> <w:EnableOpenTypeKerning/> <w:DontFlipMirrorIndents/> <w:OverrideTableStyleHps/> </w:Compatibility> <m:mathPr> <m:mathFont m:val="Cambria Math"/> <m:brkBin m:val="before"/> <m:brkBinSub m:val="--"/> <m:smallFrac m:val="off"/> <m:dispDef/> <m:lMargin m:val="0"/> <m:rMargin m:val="0"/> <m:defJc m:val="centerGroup"/> <m:wrapIndent m:val="1440"/> <m:intLim m:val="subSup"/> <m:naryLim m:val="undOvr"/> </m:mathPr></w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"
DefSemiHidden="true" DefQFormat="false" DefPriority="99"
LatentStyleCount="267"> <w:LsdException Locked="false" Priority="0" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Normal"/> <w:LsdException Locked="false" Priority="9" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="heading 1"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/> <w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/> <w:LsdException Locked="false" Priority="39" Name="toc 1"/> <w:LsdException Locked="false" Priority="39" Name="toc 2"/> <w:LsdException Locked="false" Priority="39" Name="toc 3"/> <w:LsdException Locked="false" Priority="39" Name="toc 4"/> <w:LsdException Locked="false" Priority="39" Name="toc 5"/> <w:LsdException Locked="false" Priority="39" Name="toc 6"/> <w:LsdException Locked="false" Priority="39" Name="toc 7"/> <w:LsdException Locked="false" Priority="39" Name="toc 8"/> <w:LsdException Locked="false" Priority="39" Name="toc 9"/> <w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/> <w:LsdException Locked="false" Priority="10" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Title"/> <w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/> <w:LsdException Locked="false" Priority="11" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/> <w:LsdException Locked="false" Priority="22" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Strong"/> <w:LsdException Locked="false" Priority="20" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/> <w:LsdException Locked="false" Priority="59" SemiHidden="false"
UnhideWhenUsed="false" Name="Table Grid"/> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/> <w:LsdException Locked="false" Priority="1" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 1"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 1"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 1"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/> <w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/> <w:LsdException Locked="false" Priority="34" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/> <w:LsdException Locked="false" Priority="29" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Quote"/> <w:LsdException Locked="false" Priority="30" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 1"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 1"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 2"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 2"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 2"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 2"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 2"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 3"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 3"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 3"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 3"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 3"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 4"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 4"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 4"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 4"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 4"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 5"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 5"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 5"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 5"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 5"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/> <w:LsdException Locked="false" Priority="60" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Shading Accent 6"/> <w:LsdException Locked="false" Priority="61" SemiHidden="false"
UnhideWhenUsed="false" Name="Light List Accent 6"/> <w:LsdException Locked="false" Priority="62" SemiHidden="false"
UnhideWhenUsed="false" Name="Light Grid Accent 6"/> <w:LsdException Locked="false" Priority="63" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/> <w:LsdException Locked="false" Priority="64" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/> <w:LsdException Locked="false" Priority="65" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/> <w:LsdException Locked="false" Priority="66" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/> <w:LsdException Locked="false" Priority="67" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/> <w:LsdException Locked="false" Priority="68" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/> <w:LsdException Locked="false" Priority="69" SemiHidden="false"
UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/> <w:LsdException Locked="false" Priority="70" SemiHidden="false"
UnhideWhenUsed="false" Name="Dark List Accent 6"/> <w:LsdException Locked="false" Priority="71" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/> <w:LsdException Locked="false" Priority="72" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful List Accent 6"/> <w:LsdException Locked="false" Priority="73" SemiHidden="false"
UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/> <w:LsdException Locked="false" Priority="19" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/> <w:LsdException Locked="false" Priority="21" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/> <w:LsdException Locked="false" Priority="31" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/> <w:LsdException Locked="false" Priority="32" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/> <w:LsdException Locked="false" Priority="33" SemiHidden="false"
UnhideWhenUsed="false" QFormat="true" Name="Book Title"/> <w:LsdException Locked="false" Priority="37" Name="Bibliography"/> <w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/> </w:LatentStyles> </xml><![endif]--><!--[if gte mso 10]> <style>
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin-top:0cm;
mso-para-margin-right:0cm;
mso-para-margin-bottom:10.0pt;
mso-para-margin-left:0cm;
line-height:115%;
mso-pagination:widow-orphan;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-bidi-font-family:"Times New Roman";
mso-bidi-theme-font:minor-bidi;
mso-fareast-language:EN-US;}
</style> <![endif]--> <span lang="EN-US" style="mso-ansi-language: EN-US;">In the past half a year mobile industry has experienced turbulent time of great market changes. When the year started Nokia was still committed to developing Qt-based Symbian and Meego ecosystem, Google backed Android was the preferred choice for the market challengers, and the Apple iPhone was unchallenged industry benchmark. The era of change started when Nokia abandoned its own development efforts and made a deep alliance with Microsoft to adopt Windows Phone as its sole smartphone platform, leaving both Symbian and Meego dead in the water. At the same time Android manufacturers gained momentum while Apple stalled and Nokia lost ground, making it seem that in the near future smartphone market was going to be divided in three camps: Apple iPhone, Google lead Android group, and Microsoft-Nokia. This all changed when Google acquired Motorola Mobility.</span><br />
<br />
<span lang="EN-US" style="mso-ansi-language: EN-US;">While Google informed the public that its acquisition of Motorola Mobility was defensive, that its intention was to obtain patents to defend the Android ecosystem, that it would retain Motorola Mobility as independent subsidiary, that it would treat equally all Android vendors, it is hard to believe that this state of affairs would continue for long. Google made a massive investment and its investors will sooner or later demand results from the management, and from the management the only way to obtain them is to become a vertically integrated company, imitating Apple. Not to mention that in large organizations there is always massive inertia to favor home grown solutions, even if the upper management tries to maintain neutrality with users of Android, the human factor, middle managers and developers inside Google-Motorola will pull and give flavors to each other’s. The simple fact at the end of the day is that due to acquisition of Motorola Mobility, the playground isn't level anymore and by time it will become even less so.</span><br />
<br />
<span lang="EN-US" style="mso-ansi-language: EN-US;">So what is next? Apple doesn't license IOS and with Microsoft the playground isn't even due to Microsoft working closely in deep partnership with Nokia. Fortunately there is a choice that mobile vendors can and should take, that choice is Meego. While Nokia did more or less abandon Meego, Intel continued to push forward and invest into it. It is a production ready mobile OS that is thoroughly modern, easy to develop and adopt. By adopting Meego as one of the used smartphone platforms in their offerings, device manufactures gain by..</span><br />
<br />
<b><span lang="EN-US" style="mso-ansi-language: EN-US;">..Having leverage against Google and Microsoft. </span></b><span lang="EN-US" style="mso-ansi-language: EN-US;">Leverage is needed because<b> </b>both Google and Microsoft have in the past made it clear that they are in charge of their platforms, dictating more or less the terms of usage to manufacturers. They also have taken the freedom of favoring one device manufacturer to further their own goals. To ensure more fair and equal treatment, vendors need to have the nuclear option to threaten abandoning both platforms if needed, this threat should allow manufacturers to gain concessions to modify platforms, but also gain more favorable financial terms to license Android or Windows Phone.</span><br />
<br />
<b><span lang="EN-US" style="mso-ansi-language: EN-US;">..Allowing deep alliance with network service operators.</span></b><span lang="EN-US" style="mso-ansi-language: EN-US;"> Since the dawn of mobile networks, service operators have had one single goal, to be something more than just a pipe of bytes. They want their customers to select them not because of their pipes, but because of the unique features and services that they offer as part of their larger customer experience. With Apple, Microsoft and Google the problem is that they offer their own standardized customer experience, leaving operators to be commoditized pipe providers. This creates tremendous opportunities for device manufacturers to ally with service operators to create unique customer experiences, for example operator specific user interfaces that interwove services into tightly packed offering. In case where this co-operation leads to a hit product, benefits are more than clear. It should also again be mentioned that operators to need and want leverage against Google, Apple and Microsoft, which itself makes the business case worthwhile enough.</span><br />
<br />
<b><span lang="EN-US" style="mso-ansi-language: EN-US;">..Enabling product and brand differentiation via software.</span></b><span lang="EN-US" style="mso-ansi-language: EN-US;"> The big problem that all major phone manufacturers of today are trying to solve is to how to be different and how to maintain that difference once it is found. Designs can be easily copied or imitated. User interface is the same across the multiple vendors who use the same operating system. Hardware components and technology are the same and used by multiple vendors, buzz words changing from Retina Display and Super AMOLED to Clear Black Display, for the customer it is more or less the same, better than normal displays. The only way to clearly obtain differentiation is via creation of unique software offerings. The only platform that in the future offers this is Meego.</span><br />
<br />
<span lang="EN-US" style="mso-ansi-language: EN-US;">In my honest opinion, there is a very strong case for mobile device manufacturers to make use of Meego. While I don't think that any device manufacturer at this point should commit them solely to it, they should take the option for obvious strategic reasons, as a life insurance, but also as a way to move forward in the ever changing mobile market.</span><br />
JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-7528896065427127132011-08-15T22:23:00.000+03:002011-08-15T22:23:12.724+03:00Retailing 101: How not to deliver serviceLast week I ordered an soda maker from a web-store of an large and established Finnish home appliance and electronics retail chain. The web shopping experience was pleasant and I was delighted that I could select my order to be delivered to an near by shop of theirs. I was even more delighted when they e-mailed to me and told explicitly that my order was ready to be collected after two working days. However as I had worked in retailing before, I knew that their information and logistical system just couldn't be this good and up to the job, and I was right.<br />
<br />
Today I went to the store to pick up my soda maker. When I approached the salesperson and told that I had come to get my delivery, he was surprised, told me that they didn't have the machine, that they didn't usually sell it in their store, that to his knowledge even supplier had difficulties on delivering them. He then went on and started browse some papers on his desk, he found my order notification from the papers, but there was no machine. As I knew that the local shop wasn't at fault, I just left the shop, feeling little bit blue that I had just wasted my time and effort, not to mention that I hadn't got what I had been promised. But lets think on why this did happen, why did they fail their service promise. In my opinion they failed because they...<br />
<br />
<b>..made the service promise too early</b><br />
When they sent me the email that my order could be retrieved in two business days, they probably hadn't even shipped the product. Their promise solely leaned on their belief that they had the product available in their or suppliers warehouse, and that their logistics could deliver it just in time. This is just plain stupid. The only time when you make an explicit promise on when you deliver a product is when you have shipped the product, and even then you add few days extra to be sure that you can keep the promise. In this instance making a promise that they will deliver in two days was just madness.<br />
<br />
<b>..made an unnecessary service promise</b><br />
I as an web consumer am not time constrained, I order from the web because it is convenient for me and because I have the time to wait, if I need a product right now, I walk into a brick and mortar store and buy it from there. For me as an consumer loving convenience, it would have been much better if they had send A) notification that they had received the order; B) notification that they had shipped the product, or that they have difficulties on shipping it; C) notification that the product has been delivered to a store and I can pick it up from there.<br />
<br />
Now somebody working in retail and knowing department store systems, could probably say that it just costs too much and is too complicated to network systems that date to end of 80s or beginning of 00s to do what I suggest. Well I disagree with that strongly. If modifying the department store system and ERP would cost too much, then they could have just build an extra interface to the web store where they could have stores to receipt incoming deliveries and launch delivery notifications based on that. Coupled with an increased time frame for the delivery they could have provided a better customer response and a promise that they actually could have fulfilled.JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-40505430520444226332011-08-04T20:06:00.007+03:002011-08-04T21:29:17.394+03:00Are we going to have a double dip?The question on everybody's lips is are we going to have a double dip recession or not? Many people from common persons to market watchers are predicting that we are going to have another recession. Stock markets certainly have taken the hint and taken a deep hit down, at the moment of writing the OMX Helsinki has plunged over 5% and major stock exchanges around the world have seen prices going down. The media while still not preaching doom and gloom is constantly speculating on the issue. On this climate it is hard not to be pessimistic about the future, it is easier to say that things are going down hill than say that they aren't. However, I myself think that we are not going to have another recession, we simply don't have enough reason for it.<br /><br /><span style="font-weight: bold;">Recessions happen for a reason</span><br />They happen because the market has had long enough digression that finally runs out, leaving the market and the market actors paralysed by both their past misinvestment and invisibility of the future. The financial crisis that started in 2008 was largely caused by housing and commodity bubbles around the world. In the USA investors, banks and lenders had for too long thought that property values can go only up, leading everybody and their dog to take advantage of the market. The same was happening in Europe where endless amounts of leisure and holiday apartments where mushrooming here and there, for example at the peak of the Spanish property bubble, over half of the cement used in Europe was used in Spain. The belief that the market can go only up was the market delusion that finally lead into recession.<br /><br /><span style="font-weight: bold;">Do we have a good enough reason for another recession?</span><br />This is the question that we should be thinking about, is there a good enough reason for a recession. I don't think so. We do have big problems in the world economy that need fixing sooner or later, for example the increasing debt of US government, continuing crisis in the Eurozone, doubts about continuing growth in China, etc.. However if we look at the real economy, on what people and companies are actually doing, there is a lot less to be worried about. People and companies haven't over extended themselves, quite the contrary: people have been investing carefully especially to real estate markets; and companies have restructured themselves during the recession and are now more efficient and enjoying healthy profits.<br /><br />In my honest opinion, we don't have good enough reason to have the economy go back into the recession. However we neither have good enough reasons for the economy to boom, like I said before, there are many troubling things that make the market uncertain about the future, but that doesn't lead into a recession, it leads into an era of slow growth until the major causes of this market nervousness are corrected.<br /><br /><span style="color: rgb(255, 255, 255);">CQMMYKQVNPDW </span>JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-80288377436695751112011-07-31T21:48:00.004+03:002011-08-04T21:38:33.352+03:00To be run only in a single server instance<style type="text/css"> <!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } --> </style> <p style="margin-bottom: 0cm">One day when I was talking with my colleague about the past software development projects, it occurred me to ask, why isn't it ever specified that the software to be developed only needs to be run in a single server instance? The reason for my thought is that it would remove unneeded complexity from the application, allowing more straight forward solutions and optimisations that couldn't otherwise be done. In essence it would save both development and maintenance time, thus saving money.<br /><br />Of course it isn't possible or sensible in all situations to make this specification, but there are cases where it could and should be done. For example SMEs many times have simple applications that just take input from users and other systems, do simple processing and then save it, serving the end result to other users and systems. These kind of CRUD -applications really don't need to be clustered. The reasons why they are specified to be run in a cluster have usually more to do with beliefs or with ignorance about what kind of systems we have to day. For example reason given on why the applications has to be have multiple could be...<br /><br /><i><b>"We have too many users, we need to have multiple servers"</b></i><br />No. The servers we have today have amble of power, memory and storage. You can easily rent a server with 2 x 2,5GHz Quad Core, 8GB of memory and hundreds of gigabytes of storage with less than few hundred Euro per month. This setup should be more than enough for your average run-of-the-mill business application and it should be able to handle hundreds of simultaneous users easily.<br /><br /><i><b>"It needs to be fail safe, we need to have multiple servers"</b></i><br />No. The server where the application is deployed is probably either an virtual server or an card server attached to a NAS that has RAID enabled and timely backups done. In case of a hardware failure, the virtual server instance is deployed to a new server, and the card server is replaced with a new blade. Depending on the service and automation level, a server failure will cost us a downtime ranging from minutes to hours.<br /><br />Now to be on the safe side, there are applications and usage situations where what I suggest can't simply be done, and even when we have a suitable case it doesn't mean that we have to throw good engineering practices away. No. If and when we have a case where we know that we aren't going to need multiple servers, let us give the developers the added guidance of not needing to have the application to be clusterable, and let them produce a better application with less unneeded complexity.</p>JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0tag:blogger.com,1999:blog-4217244954973825190.post-40784930967444509022011-07-29T17:18:00.012+03:002011-08-04T21:37:41.187+03:00Welcome to my blog<style type="text/css"> <!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } </style>As you can read, I'm starting a new blog. The reason for this is very simple, I have noticed that in my daily life from work to private life I tend to get many ideas and questions that I sometime share and deliberate with my work colleagues and friends for a small time, the problem is that all these thoughts just dissolve into air. And that is a problem, my thoughts aren't creating any additional value than being just musings. Thus I have decided that it is better to share some of my thoughts in a hope that I can not only give something out but hopefully get something back in someway or another.<br /><p style="margin-bottom: 0cm">So cheers, and welcome to my blog! :-)</p>JRhttp://www.blogger.com/profile/05038348753061815446noreply@blogger.com0