
This project needs Visual Studio, and requires vSphere Client installed.
- Step 1: create a new project.

- Step 2: add a new reference named "VIPlugin" to this new project, this file is normally placed at "C:\Program Files\VMware\Infrastructure\Virtual Infrastructure Client\4.0".

- Step 3: Code like this:

- Step 4: Build the solution and put the output directory into "C:\Program Files\VMware\Infrastructure\Virtual Infrastructure Client\Plugins\"
- Step 5: Start vSphere Client and you'll see your little cute plugin there.

- property should have a specifier, e.g. int or float.
- creating an array is different with your C-way initialization.
the right way is:
note that there must be an 'nil' at the last of list.
- 'name': you must have the variable in the instance.
- 'self.name': it means you're invoking the property method.
- '[self name]': it accesses the setName function.

Image via CrunchBase
The client user of Heroku is usually a developer focusing on Ruby on Rails. Due to its specific user case this platform is tuned with great effort to ease the deployment and publishing of a web project.
Heroku exposes two management systems for developers. One is the online account management; the other is the command line tool.
Online account management:
This is via web interface. The developer can see clearly how many sites he has created on behalf of his account. Besides, from this interface, the developer can do all the resource allocation - to upgrade the account, to add more workers/dynos etc. Add-ons are handled as well. There are lots of add-ons: full text search, cron jobs etc. Some of them are free; while some of the professional features have to be charged accordingly.
Command line tool:
The client of Heroku platform is enabled via Ruby Gems. And it is a command line tool. Therefore, the command line takes most of developers' time. For example, to create a Heroku application, one can invoke 'heroku create'. The command line tool is a superset of the web interface above. The developer can invoke the heroku command to change the workers/dynos as well. The detailed features include ('heroku help' shows every specific command used.):
- Manage addons
- Manage bundles
- Manage database:
- choose different database capabilities
- shared DB or dedicated DB
- pull the database into a local database
- push a local database into app's remote database
- reset the database for the app
- Web service start/stop/restart
- Manage scaling: add/remove dynos/workers
- Manage domain names: add/remove a custom domain name
Overall status:
Heroku shows an overall status of how the system goes. Take a look at this link: http://status.heroku.com
Summary:
Heroku is a terrific platform for developers with Ruby on Rails in mind. It provides 'Ruby on Rails as a Service'. Therefore, it frees developers from worrying the deployment of their web projects. The developers need only to focus on the code. The concepts presented by Heroku are minimal. It abstracts the infrastructure underneath to concepts like 'dyno' and 'worker'. And these two parameters can be changed on the go. In a word, Heroku is easy to use and really cool for Ruby on Rails developers!
To take a look at my little 'hello world' demo.
I'm trying to compile ichm on my Mac. It's a chm reader on Mac platform. The source code can be downloaded from here.
This project takes advantage of three other frameworks, namely chm_lib.framework, PSMTabBarControl.framework and Sparkle.framework. However, these three frameworks are not in the ichm repository, therefore you have to download it manually. The detaild URL and instructions can be found here. However, I would like to add some comments on how to build chm_lib framework:
The default SDK for ichm is 10.5. But when you're creating the framework for chm_lib, it will default to 10.6, and the default architecture is x86_64 and it's a debug version. Therefore, to make it right and make it be able to be linked against, it should be changed to "Release, i386". Otherwise, ichm will complain that the framework is not a right architecture.
At this phrase, I'm able to build the project successfully. Yes, you got that, there is always a 'but'. But it can't run. The loader can't find the Sparkle framework. To understand the whole story behind this, let's see how a typical Mac applications structures. Generally speaking, Mac application is a bundle of useful resources, it's just a directory containing all the stuff. Let me give you a rough idea.

Image via Wikipedia
Today's paper is "The ubiquitous B-tree" by Douglas Comer. This article is cited for 455 times at this time of writing.
This paper is mainly a summary for the de-facto widely used B-trees and shows lots of B-tree variants. It's a good introduction for whose are confused by the mysterious tree names behind them. In my view, the important variant is B+ tree. Now let me go back to my previous interview problem and try to give a shot. The main diff is B+ tree put all the keys on the leaf node, while the original B-tree puts keys on interior node as well. The advantage is B+ tree can provide really quick sequential access, since all the keys are on the leaf node and these leaf nodes can be linked together.

![Reblog this post [with Zemanta]](http://img.zemanta.com/reblog_e.png?x-id=3d1d648b-403d-460a-9f02-7f226a68dcdf)


Recent Comments