Long winded introductions are either boring or brilliant. More often than not the former. I often skip the preface and acknowledgments in technical books, to find a more interesting entry point a dozen pages later. I will therefore save you from the burden of a boring, egocentric and narcissistic presentation while still introducing myself.
My name is Antonio Cangiano, I am 25 and I am an Italian living and working in Ireland (for the moment). I am mainly passionate about programming, development and the Web. To be faithful to my personality I must comment that my interests are as wide as it gets. However the arguments that I’ll deal with in this blog will be quite narrow.
My favourite programming language is Ruby. A modern, dynamic, flexible and powerful object oriented language that has won my heart for almost a year now.
While I have used C# and Microsoft .NET for several years, I now do only a limited amount of work with them because of my great interest in Ruby. I have played with .NET since the first public betas debuted, and even started the first website in Italy dedicated to C# back in 2002. You can visit it at www.visualcsharp.it. As proof that I still utilize C#, I am currently writing a C# 2.0 concise guide in Italian. So please don’t get me wrong, C# is a language with substantial potential (especially version 2.0 and in prospective 3.0), the Foundation Class Library is extremely wide and ASP.NET 2.0 has achieved many improvements over its predecessors. My first publications in nationally syndicated magazines were articles about C#, VB.NET and ASP.NET, so in a way I should even feel “sentimentally” attached to these languages.
All this said, .NET is still like an Italian expression that says there is no point in â€œusing a cannon to kill antsâ€. Like in the case of J2EE. It is an overly complex architecture that requires a very steep learning curve and years of experience to achieve a not so impressing level of productivity. In a world were everybody is a hurry, and time is money, the productivity of a language or a development environment becomes key. .NET achieves the maximum extent of its productivity mainly through expensive IDEs created by Microsoft.
I don’t like the logic behind this; I prefer much more a powerful language and framework that lets me express my ideas in a productive way with any IDE of my choice. Instead of using another one – that without a good, and often pricey, IDE – looses most of its power and RAD merits. Some go so far as to declare that C# and .NET are just ways to sell you Visual Studio .NET, their many books, certification, etc… Let’s be practical and fair though, if I need to create a heavily GUI based Windows application that will never require any porting to other platforms, I will probably use C# with Visual Studio .NET. Doing so will save me time spent on the UI design and make the client happy. This is just a practical the principles that makes me a pragmatic programmer.
More often than not Ruby is my tool of choice because it lets me quickly develop solid, cross-platform, beautiful and readable code. Furthermore through Rails (for example) I can write killer web applications in a fraction of the time that ASP.NET or J2EE require.
Ruby has a fantastic community of truly amazing programmers and individuals, who are friendly and always ready to help newcomers. The spirit of the Ruby community can be a paradigm for many other open source groups. As if all this wasn’t good enough, so far there are just a few books about Ruby, but they are truly fantastic gems (pun intended) that help you to wonderfully master the language. In a short time Ruby becomes like a second skin, and it lets you express your thoughts in code: a very rewarding feeling.
The previous long paragraph should be enough to explain why I decided to start this blog dedicated to Ruby, Rails and development in general. I am still learning Ruby, and far from being an expert so far. However from now on I am going to focus and dedicate as much time as possible to mastering Ruby (and also Rails for the Web).
Some may argue that there are next to zero Ruby jobs in Ireland, and very few worldwide. Despite this current situation I prefer to go ahead with Ruby (in a â€œnon-religiousâ€ way of course) and invest a lot in it. While C# or Java are very sought after at the moment within the industry, I prefer to be/become a Ruby hacker rather than the average Joe programmer in a big multinational. Futhermore, Rails is getting very popular these days and this should improve the job market situation for Rails and Ruby programmers.
This leads to my plans for the future. I’d like to always continue to get more and more involved in consultancy work (coding and writing) and if possible one day found a startup that produces brilliant web applications for the masses. Ideally I’d like to move permanently to Canada (my wife is Canadian, eh!) or the USA. But life is what happens to you while you spend your life planning something else, so… we will see what the future has in store for me.
To conclude this long post that violates its own preface, I’d like to add that I am what might dubbed a â€œhumanitarian rationalistâ€, who enjoys mathematics, web surfing, photography, poetry, literature and anything that stimulates one’s intellect and never ending curiosity. Blogging is an interesting experience which is beneficial for the author and hopefully for the readers as well, so I can only promise that I will try to do my best.