Thursday, November 24, 2011

Databases Matter

Databases are at the core of virtually all modern information technology systems. Sometimes these databases are exposed, for example, as in data warehouse systems. The centrepiece of a system like that is a powerful industrial database such as Oracle, or Sybase, or Microsoft SQL Server, or something similar. The presence of a database is pretty obvious in that case – only these powerful databases can crunch the immense amounts of data processed by data warehouses. In other cases databases are hidden. For example, Apple iTunes uses a SQLite database to store the details of music tracks on your computer. That database is not obvious; it does not advertise itself, but it's there. It makes sure that the ratings you assigned to songs are saved and can be synchronised between all your iPhones and iPads. It counts the number of times every song was played so that you don't listen to the same song twice when you put your iPhone on shuffle. Databases are everywhere. They all serve the same purpose – to store data and make its retrieval as easy and fast as possible – but they are also vastly different from each other.

Let's take another example. When you log into your Google account and bring up your Gmail inbox, all the emails you see are actually stored in the remote database. That database is called BigTable, and it contains not only your emails, but all the emails of all Gmail users in the world, and also virtually all of Google's data. While your iTunes SQLite database may be about 50 megabytes in size (and that's assuming you have A LOT of songs), Google's BigTable contains petabytes of data. That's your iTunes database times one billion.

If you think about it, it becomes obvious that these databases require vastly different approaches to the way the data are stored and retrieved: You can fit an iTunes database into memory and query it whichever way you like without a performance penalty. At the same time, no machine has been built yet that could apply the same approach to Google's BigTable.

Unfortunately, not all software developers understand that. Databases once were an inspiring topic but in recent years they went out of fashion. Software developers are geeks; they like new toys; they all want to work on something latest and greatest and cutting-edge. So many new exciting things are happening in the area of Information Technology – Web 2.0, HTML5 and Apple iOS to name just a few – that databases just fade in comparison, despite the fact that they make all these new shiny things tick. Most of the developers these days take a database just as generic data storage: “We'll just stuff the data in and we don't care what's inside.” 10 years ago SQL language was a necessary skill for database application developers. Nowadays the majority of programmers don't know SQL. They rely on frameworks such as Hibernate to produce SQL statements for them. They think that all databases are the same and therefore, if necessary, they can take one system that uses MS SQL Server as a backend and put it onto Oracle and it will work just fine.

Well, that may be true for very simple applications. The myth that all databases are the same is flawed, especially when it comes down to performance. Today cloud computing is a buzzword, and Google is the patriarch of the cloud. Google's servers process billions of requests every day, crunching petabytes of data. Yet, every request made to a Google search engine is served within seconds. This places such a high demand on the Google's database layer, that Google's engineers couldn't afford using even the most powerful of industrial databases, and they had to develop their own – the aforementioned BigTable. If you told these guys that “all databases are the same”, they would laugh into your face, and rightfully so, because Google knows that performance matters and they try to squeeze every bit of performance out of their systems.

Databases matter, and if you consider yourself a decent software developer, you need to learn how to tame them. Learn the differences between them. Learn what they are, what makes them tick, and the most importantly, how to make them tick faster, because writing applications that are slow is just bad taste.

Tuesday, February 15, 2011

Nokia+MSFT: Power of Incentives

Considering that the present Nokia's CEO Stephen Elop is one of the largest individual shareholders of Microsoft, no wonder they tied a knot.

And it'snot a surprise he tries to talk the Nokia's share price down. He doesn't currently have any Nokia shares, but he will have to buy some soon. And the cheaper Nokia shares are, the less he will pays for them.

As Charlie Munger puts it:
'I think I've been in the top 5% of my age cohort all my life in understanding the power of incentives, and all my life I’ve underestimated it. And never a year passes but I get some surprise that pushes my limit a little farther.'

Monday, February 14, 2011

Make your life happen

Jason Fitzpatrick quit Lifehacker. Here's what he has to say:

The only commodity we have is time. Somewhere—in your mind, on a notepad, stashed in a virtual notebook—you have a list of things you'd like to be doing with your time before it all slips away. Do what you have to do to take those ideas out of storage and make them happen. You can trade and barter for a lot in life but you can never buy back time. Go live.

These Are the Last Words I Have to Say; That’s Why This Took So Long to Write by Jason Fitzpatrick

Wednesday, February 9, 2011

Freediving in the Philippines. Epilogue

Some people asked me why I needed that. Here's why.

I do not know where to start... Perhaps I should start by telling how a long time ago, when I was a kid, I watched a movie called "The Big Blue", and it forever imprinted in my memory, somewhere between the French cartoon "Time Masters" and the Bratislavan TV series "She Came Out of the Blue Sky".

Freediving in the Philippines. Day 12

Here I was writing this diary
Everything comes to an end. It was time for me to say goodbye to the Philippines, that hospitable place, which gave me so many new impressions over the last few days. At eight in the morning, a taxi was to pick me up and take me to the airport. Three hours in the car, then an airport, a plane, and three and a half hours to Singapore. Mark, Michael and I met for breakfast. Last conversation, goodbye. Then I went to say goodbye to the sea. I looked at the bright blue surface stretching to the horizon, and tears rolled down my cheeks. Then I jumped into the car and set off for the airport. On the way, I asked the driver to drop in at Club Serena, but having arrived there, I found out that everyone else had already left.

Airport, customs, passport control... All of those necessary attributes of travel are the same every time. They take a lot of time, but there's no way to go around them. And when yet another door closes behind you, you realise that something is over, finished. And something new begins.

Tuesday, February 8, 2011

Freediving in the Philippines. Day 11

A restaurant at "Blue Orchid"
Back when I was preparing for the trip, I got in touch with Julia, and she told me that I had a choice to stay in one of two hotels: Club Serena or Blue Orchid. I looked at the Blue Orchid's website and, to my surprise, in a left-side menu found a link labelled "Aikido". Since I am a black belt in aikido, I was interested. The link itself did not lead anywhere, but after a little research, I discovered that the owner of Blue Orchid, the Englishman Michael McCavish, was a fifth dan of Tomiki aikido. I contacted him, explained who I was, and asked if I could book a room at his hotel. Michael replied that he was glad that I would stay at his hotel, but he at that time would be in Japan on business.

When we first saw him in the evening after returning from Badian Resort, the first thing he said to me was: "I came back a day earlier than planned. I felt that I had to talk to you." I did not even know what to think about it. Another coincidence in the chain of random events? Maybe. Maybe not.

Freediving in the Philippines. Day 10

A view fon the roof of "Blue Orchid"
Surprisingly, I did not have a hangover next morning. Either I did not drink as much as I thought I did, or the quality of the local rum was much better than I expected. Therefore I, as usual, appeared by the pool of Club Serena at 10 a.m.

Friday, February 4, 2011

Freediving in the Philippines. Day 9

I began the day with a remarkable feat – I got up early and went to yoga at 6:15 a.m. Yoga is cool, but because I wasn't used to it, for me doing it was tough. By the end of class I could not wait for it all to end. We agreed, as usual, to meet at 10 by the pool, and I went to my hotel for breakfast.

On that day we were going to have practical tests for freedivers' certificates. As contenders for the two-star freediver level, members of our beginner group had to do the following:
  • Remove the mask at 10 meters and surface without it.
  • To simulate a leg cramp underwater, remove one fin at 10 meters and resurface using the remaining one.
  • Perform stand-by protocol for another freediver, accompanying him to the surface from 10 meters depth.
  • "Rescue" a freediver from 10 meters.

Thursday, February 3, 2011

Freediving in the Philippines. Day 8

There isn't much to write about that day – we didn't dive. Our team divided into two groups: the majority went to watch cockfights, while the four of us, including myself, returned to the waterfall. Cockfighting is one of the main attractions in the Philippines. It is a horrible, bloody spectacle; and I will let somebody else tell about it. I didn't even want to look at it.

Wednesday, February 2, 2011

Freediving in the Philippines. Day 7

On that day Julia planned filming her TV project. On the reef near Pescador Island, where we dived a few days earlier, was an arch in the reef under the water – "The Cathedral". The arch's entry was at 18 meters depth, and the exit at 28. Julia wanted to film herself and few other freedivers swimming through the arch.

Tuesday, February 1, 2011

Freediving in the Philippines. Day 6

Having arrived, as usual, at 10 a.m. after breakfast at Club Serena, I found that almost everyone was so exhausted after the previous day's march, that even the morning yoga hadn't happened. A bit later the people slowly began to crawl together to the pool area, complaining of pain in various limbs.

Freediving in the Philippines. Day 5

The story of this day will not be as long as the previous ones. We didn't dive on Day 5. Instead, we went canyoning.

Friday, January 28, 2011

Freediving in the Philippines. Day 4, part 2

After the "static" we all went fin-swimming. The proper swimming technique is very important for a freediver because it allows him to push himself through the water column most optimally. I decided to try to swim in long freediving fins and borrowed a pair from a guy who had the same foot size as I have.
This is what I saw waking up every morning
He was learning to swim in a monofin at that time and didn't need them. The fins were too large for me and felt loose on my feet, so I attached them to my feet with rubber bands. That helped and I was not afraid to lose the fins, but the friction of the loose rubber foot pockets on my feet was still pretty uncomfortable. Of our group of beginners, nobody could swim properly in fins because nobody had ever been taught. So, instructor Oksana set off on a task of teaching us.

Freediving in the Philippines. Day 4, part 1

The day was long, so I broke it into 2 parts.

My room at "Blue Orchid" was in this cottage
In the morning two experienced guys went spearfishing with local instructor Wolfgang. And for the rest of us a training on "static", i.e., static breath-hold was scheduled. It is clear that the breath-hold abilities are of first-rate importance for freedivers: the longer you can hold your breath, the longer you can stay under water and the greater depth you can reach. Besides, the "static" in itself is one of the competitive disciplines in freediving.

Thursday, January 27, 2011

Freediving in the Philippines. Day 3

The next day, having arrived at Club Serena at 8 am, I discovered that the yoga had already started. I asked, and it turned out it started at 6:15. Oops! We agreed that I would come at 10 and I went "home" for breakfast.

Sea view from "Blue Orchid"

On that day we had a boat trip planned. Since I got cold on the previous day without a wetsuit, I finally decided to suit up. However, I reasoned that my open cell wetsuit would be too thick for the tropical water. I asked Mark, the manager of my hotel, if there was an appropriate wetsuit I could borrow. He nodded and answered that I could choose from the suits for hire in the dive shop. I chose the ordinary 3mm steamer that seemed just right.

Wednesday, January 26, 2011

Freediving in the Philippines. Day 2

It's been quite some time since I wrote these lines. And, perhaps, if I were writing this now, I wouldn't write it in the same way - my views on many things changed. But re-reading it again, I decided to leave everything as it is. These are my impressions, captured in writing; they reflect what I thought and felt back then, and this is precisely why they are valuable. I learned a lot during those 12 days... But I will not jump ahead. Read on and you'll see for yourself.

Tuesday, January 25, 2011

Freediving in the Philippines. Day 1

In March 2010 I went to Cebu Island of the Philippines with a group of Russian freedivers. This is my diary of what happened there. It is a long story; so, sit back, relax, and enjoy the reading.

Looking at the map, I find it hard to believe that the Philippines are so far from Australia. Indeed, if there were direct flights from Australia, it would not be so far away. But, unfortunately, none of the airlines have direct flights from Melbourne to Cebu Island of the Philippines where I was going. Therefore I had to fly to Singapore first (seven hours) and from Singapore to the Philippines (four more hours). That was certainly closer than from Moscow, but still a long way. However, I should not complain. By Australian standards it is practically around the corner. I bought the tickets so that I would meet the team of Russian freedivers midway – at the Singapore airport – and then we would fly to the Philippines on the same plane. The seven-hour flight from Melbourne to Singapore was quite easy, except for the flight being delayed for an hour, and I managed to sleep almost through. Interestingly, despite the night flight (the departure from Melbourne was at 1 a.m.), the Singaporeans offered a supper immediately after take-off and climb – at 3 o'clock in the morning. I wisely declined the "supper".

Popular Posts