Dubai 2009

In a further sign that the property bubble in Dubai has popped, Nakheel, the state-controlled developer, said it was halting work on a skyscraper that would have stood one kilometer tall, or roughly twice the height of the Empire State Building in New York.

The suspended building is part of a growing list of projects that have gone cold in what was one of the hottest real estate markets in the world. In December, Nakheel stopped work on Dubai’s very own Trump Tower — an $800 million project that was to sit on one of the emirate’s fabricated palm-shaped islands.

Other projects that are reportedly on hold for various reasons include big names like the W hotel and the Four Seasons Hotel.

Moody’s Investors Service sees more trouble on the horizon for Dubai and this week issued its first negative outlook on banks in the United Arab Emirates since it began reviewing them a decade ago. It believes that many small-scale developers that took out loans will go bust as property prices spiral downwards, according to The National newspaper in Abu Dhabi.

From the Wall Street Journal

So in June 2007, I went to Dubai with my father to visit local universities. It was my first time there and my father’s first time in 30 years.

He had previously been there to do a feasibility study for a dairy farm in Al-Ain because at the time there was no fresh milk in the area due to the scorching heat.

Much has been said about the amazing transformation Dubai has done to compete for the title of Middle Eastern (global?) city of the future and it is impressive and far-sighted.

But beyond the brand-name projects, what caught my attention was rows and rows and rows of regular apartment buildings being built simultaneously. I counted 40 cranes in a row on one highway

Now Dubai only has 2 million people and the vast majority are foreign laborers so the only possible market would be foreigners moving to Dubai and they would have to be emigrating there at a pretty radical rate to absorb this type of supply. I figured there had to be availability and maybe some good rental rates (we were considering running a study abroad program there).

“So who was buying all these apartments? Are prices falling? Could we rent some at a good price?” I ask.

“No, they are expensive. Everyone is buying them and making money because prices are going up very quickly. In fact, Saudis are buying whole apartment buildings and keeping them empty just so that they have an apartment building in Dubai

Oh. Well, that is certainly going to end well...

And yet rents are still supposedly soaring.

Later that year I was in Shanghai, the other construction capital of the world, and there even though it too was bubbly, it was hard to worry about the lead financial city of a country backed with a hinterland of 1 billion people. There will be ups and downs but the long-term future is assured.

Dubai though is possibly the most radical bet in real estate history, an attempt to make something out of nothing.

It is probably the optimal strategy to take the bet for Dubai because if they don't, the game is over once the oil runs out. But I can't think of any modern parallel to what they are doing. Either they will succeed in the medium term and become a major world hub like Singapore or Hong Kong or someday, 100 years from now, the desert will take back over.

Posted on January 15, 2009 and filed under Global Economy.

I'm Back

I apologize for the long delay from polemitis.com. As many of my close friends know, I have been absolutely buried work-wise. One of my friends pointed out in the Fall - these are such dramatic days in finance, why aren't you posting?

This is probably a weak excuse, but to some degree, what need is there to post when suddenly we are watching A-class financial drama on a daily basis?

I have continued to post some of the more interesting articles of my daily reading to http://antonis.polemitis.com.

However, it is that time of year again and wanted to do a few things:

1) How did last year's predictions do?

2) Take a stab at this year's predictions

3) Try to put some context on the year-in-review (we'll see if this happens)

4) Try to give a more detailed updated on the personal side.

Anyway, onward with Part 1 which will be the subject of the next post!

Posted on January 13, 2009 and filed under Personal.

What does an API do?

Background

The area where non-developers become most confused when I describe our software initiatives is when I explain that we have built some of our software, like our video publishing platform, with an extensive API to allow it to be controlled programmatically.

This generally creates a blank stare in non-programmers.

Wikipedia describes an API as follows:

An application programming interface (API) is a set of functions, procedures, methods, classes or protocols that an operating system, library or service provides to support requests made by computer programs.[1]

which I am not sure does you any good unless you already knew what an API was.

A Simple Example

Today, I wrote this a simple example to explain the API concept to a non-developer and hopefully this might be helpful to others as well. This is obviously a bit simplified, but I think captures the general concept.

1) Assume we build a web based software service called TemperatureConverter.com whose sole purpose in life was to convert Celsius into Fahrenheit and vice-versa.

2) This simple website has one page, where we enter a number, select if it is in Celsius or Fahrenheit and hit the Convert! button. At this stage the software would do some arithmetic and return back in bold letters the converted temperature.

So if we entered 32 Fahrenheit and hit Convert!, a big bold 0 appears on the screen.

This is a "standard" human controlled User Interface. We have to come to the site, press some buttons, use our mouse and we get our answer.

3) If we then build an API for this application, we would create a protocol by which a piece of software or another website could then communicate with our TemperatureConverter.

Essentially the API defines how a software application should communicate with our website if it wanted us to do a temperate conversion for it. It is the User Interface to our application if our user is a piece of software (typically referred to as the "Client" in this context).

For example, the other website or software application might say: 32 Fahrenheit Convert and our server might reply 0 Celsius

4) Why is this important?

Well now our application is not just limited to people that want to come to our site. Any one can take this cool functionality we built relating to temperature conversion and include it in their website, whether it is a cooking site, a weather site or a scientific calculator site. The client site can also customize the look, feel, presentation of the User Interface that the end-user sees or build a whole new application on top of the API.

Overall, APIs are a Very Good Thing.

They allow functionality to be built in one place and be reused in many places and their use for web-based applications is increasing rapidly.

In practice, some APIs are provided for free, whereas others are paid for, usually on a usage basis, by the client.

I hope this is helpful to some of you!

Extra Credit For the More Ambitious:

Let's look at a real-life part of our Video Publishing platform's API. This is the protocol for updating a video's title and description in our video publishing platform.

Casual readers can stop here because we don't explain any new concepts in this area, just show what an actual API might look like.

The API code itself is in regular font and my comments are in italics.

Sample Request:

This is the request the software client makes our server

POST /videos/ 2a6a4c2a8b42062af20ce207293e04be HTTP/1.1 This identifies the video

Host: ec2-75-101-235-2.compute-1.amazonaws.com This identifies our server

Date: Thu, 17 Jul 2008 14:52:54 GMT This is the time

X-VWS-Client: test-account The client's account name

X-VWS-Accept: xml Defines the format used, XML

X-VWS-Auth: 90a6d325e982f764f86a7e248edf6a660d4ee833 The key (password) confirming the client is who it says it is

post content: title=title&description=description The new desired title and description.

Sample Response : This is the response from our server

HTTP/1.1 200 OK all is ok

Date: Thu, 17 Jul 2008 14:52:55 GMT Here is the time

Server: VideoWebService Who we are

Content-Length: 68 Length of the content

Connection: close This connection is done

Content-Type: text/xml The format of our reply

Video updated What happened. In this case, success!

Posted on December 29, 2008 and filed under Technology.

What does an API do?

Background

The area where non-developers become most confused when I describe our software initiatives is when I explain that we have built some of our software, like our video publishing platform, with an extensive API to allow it to be controlled programmatically.

This generally creates a blank stare in non-programmers.

Wikipedia describes an API as follows:

An application programming interface (API) is a set of functions, procedures, methods, classes or protocols that an operating system, library or service provides to support requests made by computer programs.[1]

which I am not sure does you any good unless you already knew what an API was.

A Simple Example

Today, I wrote this a simple example to explain the API concept to a non-developer and hopefully this might be helpful to others as well. This is obviously a bit simplified, but I think captures the general concept.

1) Assume we build a web based software service called TemperatureConverter.com whose sole purpose in life was to convert Celsius into Fahrenheit and vice-versa.

2) This simple website has one page, where we enter a number, select if it is in Celsius or Fahrenheit and hit the Convert! button. At this stage the software would do some arithmetic and return back in bold letters the converted temperature.

So if we entered 32 Fahrenheit and hit Convert!, a big bold 0 appears on the screen.

This is a "standard" human controlled User Interface. We have to come to the site, press some buttons, use our mouse and we get our answer.

3) If we then build an API for this application, we would create a protocol by which a piece of software or another website could then communicate with our TemperatureConverter.

Essentially the API defines how a software application should communicate with our website if it wanted us to do a temperate conversion for it. It is the User Interface to our application if our user is a piece of software (typically referred to as the "Client" in this context).

For example, the other website or software application might say: 32 Fahrenheit Convert and our server might reply 0 Celsius

4) Why is this important?

Well now our application is not just limited to people that want to come to our site. Any one can take this cool functionality we built relating to temperature conversion and include it in their website, whether it is a cooking site, a weather site or a scientific calculator site. The client site can also customize the look, feel, presentation of the User Interface that the end-user sees or build a whole new application on top of the API.

Overall, APIs are a Very Good Thing.

They allow functionality to be built in one place and be reused in many places and their use for web-based applications is increasing rapidly.

In practice, some APIs are provided for free, whereas others are paid for, usually on a usage basis, by the client.

I hope this is helpful to some of you!

Extra Credit For the More Ambitious:

Let's look at a real-life part of our Video Publishing platform's API. This is the protocol for updating a video's title and description in our video publishing platform.

Casual readers can stop here because we don't explain any new concepts in this area, just show what an actual API might look like.

The API code itself is in regular font and my comments are in italics.

Sample Request:

This is the request the software client makes our server

POST /videos/ 2a6a4c2a8b42062af20ce207293e04be HTTP/1.1 This identifies the video

Host: ec2-75-101-235-2.compute-1.amazonaws.com This identifies our server

Date: Thu, 17 Jul 2008 14:52:54 GMT This is the time

X-VWS-Client: test-account The client's account name

X-VWS-Accept: xml Defines the format used, XML

X-VWS-Auth: 90a6d325e982f764f86a7e248edf6a660d4ee833 The key (password) confirming the client is who it says it is

post content: title=title&description=description The new desired title and description.

Sample Response : This is the response from our server

HTTP/1.1 200 OK all is ok

Date: Thu, 17 Jul 2008 14:52:55 GMT Here is the time

Server: VideoWebService Who we are

Content-Length: 68 Length of the content

Connection: close This connection is done

Content-Type: text/xml The format of our reply

Video updated What happened. In this case, success!

Posted on November 15, 2008 and filed under Technology.