Techiteasy RSS widget with Dashcode

Couple of months after Vista was released, Jeremy showed how easy it was to make a wid… gadget. So, naturally now that Mac OS X Leopard has finally been released, it’s time to show how easy it is to develop a widget with Leopard. We’re going further than just displaying “Hello world!”, oh yes, it’s time to make Tech IT Easy RSS-feed reader… in Dashcode. For added difficulty, I promise I’ve not launched Dashcode before and I know next to nothing about Javascript.

And… 7 minutes later, I give you the semi-official Tech IT Easy RSS-reader-widget.

daschodescreenshot.jpg

Of course, this wasn’t entirely fair as Jeremy did all his magic from scratch with Notepad using only his HTML and XML skills. I used an IDE and a ready-made template. But, it’s the results that count. Jeremy’s “hello world” took 35 minutes and I bet he had used Notepad before…

Dashcode is pretty similar to the iWork/iLife software suite and, in a way, Automator. It’s extremely simple to make things, especially if you go with the Apple-provided templates (Countdown, Maps, RSS, Podcast, Photocast, Video Podcast, Gauge, Daily Feed and tech demo Quartz Composer). You can use them as a starting point and customize as much as you want.

dashcode.jpg

The only problem I see with Dashcode is that it has arrived too late, Dashboard and its gadgets were first introduced in Tiger over two years ago. Absolutely nothing has happened in these two years on this front. Even worse, pretty much all my installed widgets are from the built-in collection, as you can see. And even their usefulness is hard to justify. I mean, do I honestly need another clock on my desktop?

For those who see that widgets are making a come-back, remember to install Xcode Tools from your Leopard installation DVD (or go to ADC to download it) and go crazy.

Oh, by the way, the above widget is of course free to modify as you, dear reader see fit. It’s licensed under the permissive WTFPL-license.

The magic of technology !

Quiet week this week! Jeremy’s in the valley and I’m in the thesis. And god knows where the others are.

But to remind you that tech is indistinguishable from magic (or something), and that we are still alive… Here’s… Daniel Chesterfield !

[youtube=http://www.youtube.com/watch?v=ukPkBwYP5Po&rel=1&border=0]

(via Laughing Squid – more of David’s amazing magic there)

In Silicon Valley, enjoying

I’m exhausted and it’s only half of the study trip, but I enjoy SO MUCH going with a great bunch of cool guys to amazing companies like OQO, Netvibes, City Council of SF, l’Atelier US, eBay, Box.net, SRI, Stanford, Meetro and tomorrow Twitter, Neocase, Microsoft, Google, Plug & Play, the Churchill Club, XOBNI – & the day after Orb Networks, Orange, SAP, PodTech, Bizanga + great VCs like Jean-Louis Gassée, Vincent Worms from Partech, Matt Lecar from Partech, Sven Strohband from MDV & Jeff Clavier from SoftTech VC + Marylène Delbourg-Delphis, who actually recruited Guy Kawasaki out of Apple & François Laugier, a prominent lawyer in Silicon Valley….that I haven’t had the energy to blog recently. At night, after 7 visits during the day, all I think about is collapsing.

We’re only half way and here’s our program (below). I’ll make sure I blog extensively as soon as I find some time – although I’ll have to blog on TechEd in Barcelona first. I’m late, I know.

Microsoft's iPhone is upcoming…

…or is it ?

[youtube=http://youtube.com/watch?v=p1o1piRVsaE]

A few cool web services you maybe never heard of

The title of this post is pretty self-explanatory. No beating around the bush there, let’s go straight to the point.

1) Archive.org3.jpg

OK well you probably heard about this one actually. Archive.org, also known as The Internet Archive, has branded as “Wayback Machine” its Web-snapshot technology. Thanks to this technology you can browse archived versions of most of your favourite websites. Snapshots are taken every month or so, pictures won’t be captured most of the time, and more importantly you won’t be able to go deeply in the website hierarchy – you are limited to the links featured on the welcome page. It doesn’t work with Flash either.

So they are plenty of drawbacks…but then it is so cool if you want to feel a sense of nostalgy ….

2) Compete

Most of you would probably have heard about Alexa, a top-notch web traffic measurement tool. Despite having been heavily criticized by many pundits or bloggers (including TechCrunch’s Michael Arrington), Alexa is just unrivaled.

Or is it ?I have tried Compete, a similar Ajax-based service that features a more straightforward interface. And guess what: it is slightly quicker, results are as good if not better, and the neat, Google-like interface is a must. I mean – these traffic metering tools will always be partly useless because their data is just wrong. But website traffic comparison might eventually come close to the truth, and give you an idea of how a site competes with another. .. adopted as soon as tested !

3) Summize

Online reviews are cool. For example I am personnally interested by what other users think about a book I am planning to purchase (er, OK, right, I must confess I don’t read many books). The problem is that, if I can find most of the time plenty of point of views on Amazon, there are no clear equivalent for other products such as PCs, iPods, CDs, etc…There are some online vendors with a decent traffic, and probably the reviews are actually there – however they are scattered around various websites.

This was before Summize came. Summize is a “search engine for reviews”. Just type in the name of the product, and you’ll have a visually compelling display of the popularity of the product, indications about its price, and qualitative reviews from various sources. Of course Amazon is the main source but if the service manages to get other partners in it this might turn out to be an excellent service, much better than the usual shopping comparison websites. Although I doubt they can convince many sites to get in. Anyway, make your own opinion about this tool, which potential matters more than its actual possibilities.

Now…do you have your own suggestions ?

Could the Internet just…crash?

Interesting piece of information found on the BBC website (also quoted in Macworld and probably dozens of other sources): the current use of the Internet could overload the current capacity of the Internet and even result in …crashing the World Wide Web. To be more precise, let’s say that the explosion of the demand for video on the Internet implies a huge investment from the ISPs (Internet Service Providers). In fact they must spend up to US$137 billion in new capacity before 2010 to avoid the aformentioned troubles. So far so good. The only trouble is that, according to Nemertes Research Group – a modest analyst firm -, this is more than twice the amount that ISPs plan to invest. So…shall we really get scared ?

Let’s get into more detail.

1) There is unquestionably a growing demand for bandwidth consuming services (such as P2P, video and data download, streaming). However no one seems really able to forecast that demand.

2) When it comes to innovation, everybody thinks of YouTube, Skype, an iPod (@Jeremy: and Zune of course). But innovation also exists in the less glamorous field of high-speed telecommmunications and networks. Actually there is a fairly large deal of activity deployed there. For example, just a few days before that study came out, two groundbreaking annoucements were made.

- First, a young Aussie researcher from Melbourne University has demonstrated 2 algorithms that considerably speed up existing DSL broadband connections – maybe up to 100 times faster. For instance, it could raise the speed ceiling of traditional ADSL lines from 1 to 20Mbps to approximately 100Mbps. Commmercialization is upcoming.

- Second, Korean scientists announced a new technology called “New Nomadic Local Area Wireless Access” that allows users of mobile phones to download data at a stunning 3,6 Gb/s rate – much more than what the “4G” technologies actually in the pipeline can offer. In fact Korea seems to be heading the race for the definition of the future 4G standard. (BTW, there is a highly valuable, landmark post about these mobile phone generations on Tech IT Easy : have a look).

So…getting back to our study. Innovation on infrastructure and telecommunications technology has been anticipated indeed. Yet it has been approached through a sort of “Moore’s Law”, which doesn’t sound very much as a good idea. Just consider the two previous innovation examples, that haven’t been included, obviously, in this piece of research. And if average broadband capacity was doubling every 18 months or anything, we would have noticed this earlier for sure …

3) Final element: I am a staunch believer in the law of supply and demand (yes, and I am French). If there is a need for further investments, money will come in. Granted, there might be a huge need for network maintenance and upgrading but then there are many, many Internet users, including wealthy governments and corporations. $60 billion are missing, on a three year basis ? Well, that’s only $67 a year per American, which means 30 dollars per household. Almost 6 times smaller than the defence budget…

So, all in all, when an almost unkown research company publishes a report part-funded by the telco industry, which openly calls for universal broadband deployment (with public support, naturally), saying that “Such gridlock would drastically affect how people use the web and could mean the next Google or YouTube simply doesn’t get off the ground”, well, I just don’t buy it.

Samsung asked us to post this vid

Here you go, dancing people all over Europe.

[youtube=http://www.youtube.com/watch?v=o00xESxCWCo&rel=1]

Oh, and why did I post this vid? It’s because it’s easy, short, stupid. And I’m tired of investing my time and energy into posts that get no comments. So expect more of this type of content from me. Now… where’s my paycheque Samsung?

Take care,
Vincent

Amazon's Jeff Bezos on strategy & innovation (not Kindle-related!)

jeff bezos kindle amazon.jpgI’m writing this post for two reasons. One is that I am incredibly interested in the subject of leadership and try to learn about it in whatever way I can. A second reason is that, even though my main focus on my blog is food and retail, what Matthias calls “old economy” (thanks Matthias!), I try to also be very aware of “the past, present, and future of this industry,” and (internet-)technology plays very much a part in the future of retail.

In terms of leadership, Amazon’s Jeff Bezos is a good person to study—a man who created perhaps the most iconic garage-based venture since Apple, and who managed to not only take his company, Amazon, public, but also stay on as CEO until now, something that is rare amongst founders. In terms of retail, Amazon is itself great company to study. It has transformed the book-industry, and is doing amazing work in terms of providing infrastructure for web-based infrastructure. And, even though they are not as yet selling any books in the Netherlands. I’m hoping that SEPA, to be introduced next year, will change that.

Before I continue, this is not really a Kindle-related post. While we’re on the subject, however, let me say that I’m a big fan of ebook-readers. At the same time, there are certain advantages to paper-reading, which I’m especially experiencing since I started my own blog—namely that I can write on them. I know I can take notes on Kindle, but it’s not the same. And I think the price-point of either the device ($400), or the books (a $10 intro-price), or both, is just too high for something that can be produced in mass and has no printing-, and hardly any distribution-costs attached to it.

Speaking of notes, I took some while reading a nice HBR-interview with Jeff Bezos, in which he discusses his take on strategy, innovation, customers, … and not Kindle. I’ll share these, and my thoughts on them, with you now.

Innovation at Amazon

There are generally two types of innovation, the radical kind and the incremental (or process) kind. My general belief is that, while retail on the internet radically transformed the way we shop, and will continue to do so, ultimately it is an evolution in process. Instead of giving our credit-card to the clerk, we type in a number behind a screen, etc. etc. And, since the internet has taken off, this kind of process-innovation has become much more prevalent. Now, instead of clicking 5 times to buy a product, I can click once: yay! Before you ask, “so what is ‘radical’ innovation to you?” I’ll just say: “Space, flying car, people living under water, that kind of stuff. So get busy!”

Amazon has of course just announced the Kindle, which could be interpreted as an innovative move. But again, what will make this innovation shine, if it does, is Amazon’s incredible process-strength, namely that they can deliver the device to nearly every household in the Western world at beautiful economies of scale. For now, these are paying of for Amazon, but knowing their business-model, it’s pretty certain that this will pay off for consumer too… eventually.

What I like about Amazon (and got from the interview) are that they have an incredible experiment-based culture and generally take a long-term view—both rare with public companies. In terms of experiments, these are encouraged on a company-wide level, and due to the nature of experiments, are both had to predict and not unknown to fail. One example of an experiment which became an enormous, but unplanned, success, is the Amazon-associates program.

As far as time-frame is concerned, innovations at Amazon usually take 5-7 years before they make any meaningful impact on the company’s economic situation. This is a big risk and is offset in a number of ways. One is to minimise the costs of experiments. Amazon has a web lab just for that purpose, which undertakes these experiments on a massive scale, collects real usage data on what works best, and is constantly trying to push the costs of these experiments down. Again, taking a long-term view, it helps when building innovation on things that won’t change in the next 5-10 years. For Amazon, these are basic customer preferences, such as: choice, low prices, and fast delivery (hello Kindle?).

There are three more core-attitudes, which I think have a big impact on the way innovation takes shape at Amazon. One is, to always ask the question “why not?” According to Bezos, the biggest mistakes at Amazon come from not doing something, rather than taking the risk. And asking “why not?” instead of “why should we do it?” opens up a whole other universe of possibilities. Similarly, there are lot of difficult decisions that Amazon has had to make over the years, such as allowing reviews on their site. The vital question there was “what is better for the customer?” Last, but not least, I like this line in regards to making experiments a success: “Be stubborn on the vision, and flexible on the details.

Strategy at Amazon

The other part of innovation is execution, some of which was already discussed above. Much of decision-making comes out of the way a corporate culture is shaped. Some cultures are hierarchical, some are flat, some are individualistic, some are collective. From my understanding of things, Amazon has both a departmental structure (which would suggest some hierarchy) and takes decisions collectively. Both senior management and departmental management have mechanisms through which this collectivity manifests itself. Seniors meet once a week for four hours and once-twice a year for a two-day meeting. Homework is assigned before and the latter type of meeting deals mostly with long-term issues. Department-management has a similar system.

Some more general characteristics of corporate culture were mentioned in the interview, namely that they can be incredibly stable over time, and are self-perpetuating in the sense that they attract people who like that culture (and repel those that don’t). While a company’s corporate culture is probably the hardest to replicate, and can thus be a tremendous competitive advantage, the rigidity of the culture can both mean that there are limits to what it can do (and should do), and it can sometimes hamper innovation during turbulent times. At the same time, a culture can by nature be open to change, which should overcome some rigidity.

A few weeks ago, on my blog, I wrote a post on Porter’s five forces in which I outlined what I think matters in strategy, but also that it pays off to stay close to customers. Jeff Bezos shares a similar view-point, for a number of reasons. One, customer-needs change more slowly than a lot of other things, e.g. tech; and two, following the competition doesn’t work well in fast-changing environments, e.g. tech. A third point is that being too competitor-focussed can result in a passive attitude once a certain dominance has been reached in an industry. You can argue about this either way, but when you look at certain large companies (no names), this “hey, we won, so why innovate?”-attitude, is definitely one that is recognisable.

One way that Amazon tries to stay close to customer-needs is by enforcing rotation. Every new employee has to spend time in their fulfilment-centres with the first year, every two years, employees have to do two days of customer service, and everyone has to be able to work in a call-centre. That includes Jeff Bezos.

Finally, he also had some advice as how to survive the transition from the founder of a start-up, to the CEO of a multinational, public company. It’s simple (yeah right!). When you start, the main question is “How?”; as you grow, the question is “What?”; and when you’re huge, the question becomes “Who?” There you go, the secret to being the leader of a big company.

Final thoughts

One of the weaknesses of secondary information, such as what came from this interview, is that I (and you) have to trust everything that is in the article. I can’t ask follow-up questions and can’t tell, by body-language, tone, or otherwise, whether some points are more important than others, or more true than others. Therefore I try to be careful to treat each piece of information as part of a greater whole. In other words, I may come across information that conflicts with what Bezos said in the interview. If it’s noteworthy, I’ll write a new post about it. One piece of important data, released perhaps a month after the interview, is the release of Kindle, which, as mentioned, I am sceptical of.

Two things I learned from the interview is that innovation takes time, especially to make it economically viable, for both the business and the consumer. In my opinion Kindle, in order to fit the philosophy of Amazon (which is not Apple after-all), has to drop in price, as do the books. It’s a matter of ethics, of being customer-focussed, and of being a process-innovator. I can only assume, that over the next years, this is exactly what will happen.

The other thing I learned is to constantly be open to innovation that can benefit the customer. This point has been made many times in the words above, yet it bears repeating. A company can be incredibly rigid, the bigger it becomes. Competition can become incredibly threatening. Technology can change from one day to the next. But what doesn’t change is that customers will pay you for products that make them happy. And I fear that a lot, a lot of businesses have forgotten that as they became big, arrogant, and focussed on anything but what customers want.

Finally, while I may be focussed on “old economy” topics, I think Amazon teaches some interesting lessons on how to remain high-touch in a high-tech environment. As such, this certainly won’t be the last time I touch upon the topic of technology in retail.

Further reading

If you’re interested in the topic of leadership, you mean also want to check out a list of free podcast-interviews with a number of CEOs, ranging from Google’s Eric Schmidt to, indeed, Jeff Bezos, which I posted on Tech IT Easy a few months ago. Worth a listen. Oh, and don’t forget to check out the original article on HBR.

Vincent is a co-author on Tech IT Easy. You can find all of his posts here, or check out his food & retail blog, updated nearly every day, and where this article is mirror-posted.

Yo, ho! Lessons from Piracy for industry dynamics

pirateflag.jpg“Yo, ho, haul together,

hoist the Colors high.

Heave ho, thieves and beggars,

never shall we die.”

Let’s be clear from the start: piracy is a plague. The world would be better off without it, and I condemn it completely.

However! There are, to my mind, interesting lessons that can be learned from piracy, lessons that could change, in the long run, the panorama of music and video industries.

“Haul together, never shall we die”. Though, I admit, the reference to Pirates of the Caribbean is a bit dodgy, it nevertheless illustrates that piracy is a massive phenomenon that has always existed and will continue to exist. In response to this phenomenon, music and video industry majors have reacted, understandably, by raising barriers and making it harder to pirate material. Needless to say these efforts have always been followed by corresponding hacks allowing to overthrow protection. So on one side we have companies investing, often heavily, to try to protect material, and on the other side we have an unidentified mass of hackers working freely to allow an even broader mass of pirates to have access to music and video. It seems to be a lost battle for industry majors, but they really have no choice if they want to make at least some money.

But does someone have a choice?

The problem with digital media, the majors claim, is that it can be easily copied and distributed for free. It is certainly a problem for companies that actually make money by copying and distributing. However, companies are not alone, for we have not yet mentioned the central characters here.

The artists themselves. Yes, of course they suffer from piracy, but it seems to me that they suffer only because they rely too heavily on the industry as it is today –i.e. roughly as it already was before the digital era arrived. It is astonishing that such a dramatic technical revolution has had this little impact on the industry organisation. Artists now have technically all the necessary means to make their creations available to the entire planet without putting a single penny on the table –apart from the actual production costs.

A whole world of possibilities is open, for those who stop a minute to think out of the box (to name one, sellaband.com, for instance). Imagination has rarely been scarce for business models, and the spur of piracy should, well, spur the mutation of the music and video industries.

So artists, if you want to make a CD, go ahead, but you’re warned: it WILL be pirated. Industry majors, if you wish to continue making them, go ahead, but they WILL be pirated.

It’s high time to stop whining about the whole situation, and get a move on, create, make money in unexplored ways, and, since it cannot be eradicated by fighting it, keep Piracy to the 20th century by making it obsolete.

The Euro vs. Dollar double gambetto for high tech corporations

 In chess, a gambetto – say it with an Italian accent, consists in sacrificing a piece at the beginning of a game to gain a competitive position on the exchequer – for example through the control of the center of the chessboard or one of the long diagonals.

Getting back to business (we’ll get back to the gambetto later), it is very common to say that the state of an economy is reflected by the strength of its currency when the Euro currency is weak – and hence that the economy of the EU are in poor shape. However, when the Euro gets stronger, companies and officials claim that corporations are constrained in their efforts to export goods and services and that the situation should be reversed or the EU will soon enter an economic turmoil.

I think this is all too easy and bullshit.

God Dollar used to be the only viable currency in international trade, until the Euro came out of nowhere in January 2000 (2001 for actual pocket coins and bills). The European Union is the world’s largest consumer market, and a gateway to the Middle East and Africa for American companies. Although the Dollar still dominates international transactions of goods (slightly) and financial transactions (easily), the Euro has emerged as a tangible alternative considering the political stability of the region.

Consequently, the Euro vs. US Dollar exchange rate has kept growing insanely from 1 EUR = USD 0.85 in mid 2000 (1 EUR = 1.19 USD on January 1st 2000) to 1 EURO = USD 1.47 USD today. Althoug I acknowledge the trickiness of the situation for export businesses, high tech or not, I see very few corporations have implemented hedging strategies or make proper use of forward contracts – which is a shame. Still, instead of lamenting, I believe economic decision makers of both the US and the EU should roll up their sleeves and act in such a way (hell yeah I’m even givin’ lessons now, love blogging…):

For US High Tech companies: go for internationalization. Acquiring hardware, software, telco devices, consumer electronics and services labeled in USD has never been cheaper. So why wait? I’m pretty sure any potential buyer would understand this reasoning. A weak USD is a fantastic opportunity for American exporters to thrive abroad, and win strategic, long-term projects. It doesn’t matter whether the profitability of these projects is low: what matters is to build reputation on new markets, or to highlight your competitive advantage against local players. Remember, the gambetto? Be ready to sacrifice a few cents today (anyways, the dollar rates so low that it’s no big loss whatsoever) to be in the real race when that moment comes.

For European high tech ventures: shop for intellectual property and talents in the US since the Euro has never been so strong against the US Dollar – which will make acquiring quality companies cheap, and build production capability in China and India (or go and get cheap but excellent developers in Eastern Europe, before the Euro comes there, or Israel) to reduce the cost of goods sold, enhance their competitiveness and therefore be ready for a shift during harsher economic times or win back market share on their competitors’ behalf. EU corporations, especially the big ones, find it hard to tear the P&L from the balance sheet and should learn to make better investments. Remember when the VCs said that few large European high tech corporations had a real, sound external growth strategy? Even though making the quarter may seem tough because of a strong Euro, acquiring today technologies that will generate tomorrow’s revenues boils down to ’sacrificing’ a small slice of the pie to weaken the competition, and build a better product offer for tomorrow. Gambetto again.

Now waiting for the Chinese Yuan to offer a third way…

How the world looked like before the Internet

Thanks to Emmanuel, also a blogger on Tech IT Easy, for pointing this video to me. Have you ever tried to recall how the world went round before we had cell phones, laser printers, wireless and unlimited bandwidth at a fixed subscription price? Well if not, then this video might prove enlightening..& funny (I had AOL, a landline Internet connexion, & a matrix printer too). I’m pretty sure my youngest sister never used a public phone by the way. I should ask.

Anyways, I’m interested in your experience if you used to work in a world virgin of emails, search engines and cellphones.

[youtube=http://www.youtube.com/watch?v=BxxJJUXmo2o]

Guys, the video has been removed from YouTube, but you may find it here.

Week-end light reading

xkcd logoJust a bit of light reading for math, physics, computer science, and, more generally, geek centered humour.

High Availability Architectures (4/4) – Technology Trends

In the previous episodes of this serie, we’ve addressed the Availability, Scalability and Performances aspects of HA Architecture. In this one we’ll concentrate on the future of these architectures and the emerging technologies to tackle specific HA constraints.

Technology Trends

The future is a G word : GRID. Grid of memory, grid of CPU and Grid of disks. The main limitations today is to have this one to one relationship between the application and the physical server on which the former is deployed. Hence the main trend of the market today : to virtualize servers by using Network Access processing, memory and storage.Azul Systems

Network Accessed processing

This is the Grid of CPUs. Azul Systems offers some sort of Java mainframe, a box containing 768 CPUs and 700GO of memory. Applications are deployed on blades as usual but these blades contain a proxy to the Azul box : whenever CPU process is required, the blade proxy hands it over to the Azul box which is configured to allocate a certain number of CPUs for that very app.

Websphere XD also offers new possibility on CPU and servers virtualization.

Network Accessed Memory

Terracotta offers a solution for Network Accessed Memory. This is a server managing objects lying in network memory. Thus differents applications running on different JVMs and different servers can share the same instance of a given object. Client applications just need to import the terracotta client libs and define in a description XML file the objects and attributes to be shared and that’s it !

Main issue here with the open source version : 2mn start up time. This would then create a main Single Point Of Failure in the system.

Network Access Storage

SAN (Storage Access Network) offers a very robust and efficient solution for network repository. Communication are fiber channel based and therefore very performant .. but very expensive. This already is commonly used and it has paved the way for the above 2 other solutions of network access services.

High Availability Architectures (3/4) – Performances

In the previous posts of this serie we’ve addressed the availability and scalability aspects of high availability systems. In this (rather lengthy) one we’ll focus on the performance side of things.

Again, performance is something to be contextually defined quite early in the project. For instance a requirement such as “3s response time” is not precise enough. “3s response time with 200 simultaneous users” is a valid requirement.

History

Performance has been a common issue for the last decade or so with the emergence of multi-tier IT systems. It has not been such a problem in the past or rather it has been addressed as the core issue and fixed once for all during the mainframe years (65-89). It also has been skipped during the client-servers years (90’s) as no real software architecture was in place. Back then, no-one would react if SQL code was found in the presentation layer.

Nowadays, the standard 5 layer software architecture (Client, Application, Business, Integration and Resources) has naturally emerged as the de facto solution. The basic principle is to ensure for isolation between layers to provide the software architecture with a greater modularity and robustness. With the considerable litterature available, architecture software development constraints are much more pregnant – and that’s an excellent thing.

However, such complex software architecture requires to be extremely cautious from the very early stage of architecture and design as a laidback appoach can prove to be quite expensive in terms of performance.

Usual Suspects

From experience, when it comes to performance, the usual suspects in this 5 layers architecture are :

  1. Integration tier
  2. Database tier : Execution plans, indexes, table schemes, DBA early in the process
  3. Business and Application tier : Algorithm, transactions, resource connections and APIs

software layers performances

Integration tier

Java Enterprise frameworks (Hibernate, Entity Beans) have been developed to abstract data persistence from the application developer. On one hand that’s a good thing : application developers can then focus on their own business problems and forget about SQL.

As a result these frameworks usage may not optimised and it could happen that application developers lose control on what they actually do, the number of objects in memory etc … The solution is to keep a fine grained control on these frameworks and the SQL that is actually generated and executed behind the scene. A close collaboration with a experience DBA (Database Administrator) is strongly recommended here, from the early steps of design.

For information, it’s worth mentionning that big internet giant such as Amazon for instance just don’t use such frameworks in order not to lose control on piece of processing that actually is critical in terms of performance. Read this article on that very subject.

Databases tier

Another drawback is that SQL not being at the center of development concerns, we may end up with applications that are not really optimised from the database perspective : database schema and queries execution plans are inappropriate and inefficient.

Then again it is recommended to have a DBA involved from the very early stage of the project (architecture and design) to validate the database schema and suggest execution plan to optimise the database usage.

Stored Procedures

At first, stored procedures may be considered as antiquities inheritated from the client/server years, souding like heretic software components from the 5 layer perspective.

However, from a genuine performance perspective they still are top drawer solutions. Data handling on the server allow to save a lot of time for applications and on the network.

The aim here is obviously not to develop the whole business layer as sored procedures but, rather, to optimise a few heavy process. Besides it proves to be an excellent antidote to the “DB request machin-gun” anti-pattern.

Application and business tier

There are a few standards Java dos and don’t to improve algorithm path length and CPU/memory usage.

The most important ones though regard sessions, transactions, APIs and resource connection

  1. Avoid stateful component whenever possible (EJB Stateful sessions are performance killers). Whenever handling sessions (e.g HTTP Session) make sure they don’t contains too many objects.
  2. Transactions must be kept as short as possible.
  3. Resource connections are very precious asset. There use should be optimised to the actual need and kept as short as possible.
  4. Whenever developing services API, always develop both unitary treatment service (i.e perform one action for one given item) and multiple treatments interface (i.e execute multiple request with multiple inputs and return multiple replies). This basic principle allows to save a lot of time by avoiding machin-gun request to the service.

Lastly, whenever building a new enterprise system using platform such as JEE or .Net, we need to keep in mind that these were made for real time process, not for long process. So if the application you are developing takes times (i.e above 5 sec), this component must not be deployed on the application server : it will uses precious resources for long process that are not used in the meatime to serve real-time services. Such a component should be deployed as a stand-alone server instead.

The Asynchronous trick

This is a great tool to load balance. Whenever addressing long process issue, it always is worth considering deploying it as an asynchonous service. This is a very natural and elegant load balancer mechanism that does not impact real time service QOS.

The biggest problem here is to convinced the business to accept to implement some asynchronous solution for rather peripheral services (e.g Reporting).

JMS is the natural solution whenever developing asynchronous solution in the Java world. One has still to be careful when choosing a JMS implementation.

A basic rule of thumb is that whenever you’re dealing with transactional messages with high availability and robustness concerns, you should rule out JMS implementation without persistence mechanism. JBoss JMS for instance is not as mature as JBoss Servlet or EJB implementation. Today the best solution on the market for JMS is SonicMQ.

Some observations after a week on Mac OS X Leopard

Mac OSX leopard.pngTime for some trivia. I installed Leopard last week on my tiny iBook G4 (1,33 Ghz, 1 gig ram, new 160 GB 5400 rpm hard-drive), which is still happily churning away after two years. Here are some observations.

  • I first did an upgraded install, but Leopard changed something unix-based and didn’t like my separate partitions for swap, applications, and users. I then did a clean install, using only separate partitions for users (which is very easy) and Time Machine, and everything works great. Of course, I backed up first!
  • It runs just as fast as Tiger, some apps like Safari launch even faster. All effects are working on my humble G4, as far as I know.
  • All of my software works, except Skype, which doesn’t like the Firewall, and Last.fm, which works, but acts funny.
  • Not a minor update, Mail now supports setting different reply-to’s for different email-adresses. I don’t use its other new features, to-do’s, rss, ical-integration.
  • I got the right-click tap on my trackpad-mouse now (previously Intel-only), which I’m having enormous difficulty getting used to. I still prefer the ctrl-click. Not sure how you Intel-guys cope with it.
  • Spotlights is now enormously fast, and if it wasn’t for Quicksilver’s triggers, would be a great replacement for that.
  • The firewall supports per-app rules now, except that I never really felt unsafe on my Mac, but OK.
  • Grammar-check is not universally supported, only in Textedit, I think.
  • Spaces rocks, 4 spaces to which I assign applications to open. So I now have a space for web, one for work, one for multimedia, and one for maintenance. In other words, no more minimising… ever! Works great, except when I switch and switch back it has the tendency to select the background window instead of the one I was using before. Apart from that, no slow-downs, no nothing.
  • Fixing permissions in disk-utility is slow, sometimes takes 10 mins, and I’m not sure if it really works. I expect this to be fixed in the next update.
  • Time-machine’s backing up to a separate partitions, and works great. I backed up around 9.5 gigs yesterday, today, after 20 hourly backups, it’s only a few mb bigger. The space-effect looks pretty cool also, but a simple menu-bar icon instead of a dock-one would be nice. That said, I’m not sure I find the concept of backing up all that useful, to be honest
  • Stacks are pretty useless, and actually annoy me.
  • Airport has become much more stable, dropping my connections far less than before, with all other conditions unchanged.
  • File-sharing has become slighly more pleasant.
  • Cover-flow is useless, 99% of the time.
  • Using the smart-folders like crazy.
  • Software-update does something new with updates that ask you to restart. It logs out and then installs them.
  • The dock looks great … on the right side of the screen.
  • Quicklook is a wonder and has turned my Mac into media-heaven. Imagine pressing space (or cmd-alt-Y for full-screen) on any file in the finder and just viewing it without opening a separate app.
  • Preview-app is still not better than Skim (the open source alternative to Acrobat)
  • I haven’t really looked, but I expected an updated Worldbook to come with Leopard, I guess that only happens with new Macs.
  • The print-this window has received an upgraded look.
  • Still missing the ability to easily enter meta-data like tags.
  • Spotlight now looks up dictionary words ; works as a calculator ; in the application-help, which is basically spotlight, you can enter any possible term on the menu and it will open it from there
  • Dictionary and wikipedia = yum!
  • Safari and Camino now look identical = scary! I haven’t used Firefox in over 6 months and no withdrawal symptoms.
  • Safari’s “clip and add to dashboard” feature is as useless (or useful) as Dashboard, which I never use.
  • Dashboard looks exactly the same: annoying and distracting.
  • I don’t mind the see-through menu-bar.
  • I haven’t used back-to-my-mac

And that’s about all I can think of. Overall, while it really does not put any extra strain on my system (which I expect to keep until 10.6 comes out or if a mini-MBP with a matte-screen is released), I consider it a substantial upgrade. Spaces, Quicklook, Spotlight’s extra capabilities all make it worthwhile, though I’m not sure whether it’s worth €129, more like half that. Some of the rest is nice, and I hope that 10.5.1 fixes some bugs like the disk-utility, and that more applications integrate more of Leopard’s functions, like grammar-check and Quicklook.

Mac OS X Leopard: 7/10

So what do you guys think? Is Leopard worth the upgrade? Is there an important feature that you like or are looking forward to in Leopard, and that I didn’t mention? Or is there a reason you won’t be using Leopard (yet)?

Vincent is a co-author on Tech IT Easy. You can find all of his posts here, or check out his food & retail blog, updated nearly every day.

Staypressed theme by Themocracy