Archive

Szymon Pobiega has just released Micro Container Framework, a dependency injection framework targeting the .NET Micro Framework 3.0.

What does it have in common with PostSharp? Easy! Since this platform typically runs with very limited resource, performance is of paramount importance. There is definitively no time to resolve dependencies at runtime, and there is anyway no support for dynamic compilation.

The solution? Resolve dependencies at compile-time and inject them... using PostSharp! There is not even use of System.Reflection at runtime!

Check this out on CodePlex.

Congratulations Szymon and thank you for this great work!

-gael

Ayende Rayen has just implemented 'static proxies' for NHibernate using PostSharp.

NHibernate is a well-known O-R mapper. One of the features, lazy loading of properties, previously required you to make all properties virtual. The reason is that the properties were "enhanced" (understand: subclassed) at runtime using AOPish techniques. With PostSharp, Ayende now enables lazy loading even.

Ayende did the job in 4 hours:

The first thing that I have to say is wow Post Sharp rocks! And I mean that as someone who is doing AOP for a long while, and has implemented some not insignificant parts of Castle.DynamicProxy. Leaving aside the amount of power that it gives you, PostSharp simplicity is simply amazing, wow!

The feature is now pre-alpha only, but "it works". For more info please refer to Ayende's blog or contact him.

Happy PostSharping!

-gael

As the first stable version of PostSharp has been released for one month, a question arose:

What feature or bug fix is important to you, community? In other words, where should we put our effort?

Finally I've set up a feature voting system: you can vote for a bug or a feature, therefore giving it higher priority. The system is based on 'coins'. Once you create an account on www.postsharp.org, you get 10 coins (existing accounts have been credited of 10 coins as well). You can attribute them to the features of your choice. So you can already start voting immediately!

If you donate to the project, you receive an additional coin for each euro you gave. It does not mean that 1 coin has a value of 1 euro, because I also attribute donations to past efforts and to operational expenses of the project. So to give you an idea, even if coins are not real money, I consider that 1 hour of development should be covered by 100 coins. (Indeed, maintaining and developing PostSharp costs me thousands of euros per month...)

After you make a donation using PostSharp, you will receive an email with a link to a page allowing you to connect the coins. This page requires you to be logged in, so your donation will be assigned to your account.

There is no trick. Coins are not contractual; they are just a way for you to tell me what is important to you, and for me to tell you that the lunch is not free for everyone.

That being said, if you want to make a more significant donation (say >1000 EUR), we can negotiate something contractual, i.e. we discuss what feature will be realized and when. If you are interested by this option, please contact me. For even bigger sponsors, I will set up a partnership program, so you could get the nice status of "PostSharp Silver Partner". Wow!

Anyway. Even if you are not to donate, you are already welcome to vote for features now!

Happy PostSharping!

-gael