Friday, February 22, 2008

Spring MVC easy way

Writing web applications using Spring MVC has never been easier, now that we have annotated controllers in Spring 2.5. Basically, it all boils down to just couple of things, from defining the viewResolver bean and the required XML configuration to scan for annotated based controllers to adding an annotation to (any) method in your controller class, just like this:
@RequestMapping(value="/url")
public ModelMap method()

Of course, there are few required beans you need to define for all that magic to work (shown in the Spring Framework documentation online) but I find that very acceptable and a big plus (showing how Spring is very flexible).

Some people might argue that the (now) old-fashioned way of defining the links the controllers respond to via urlMapping bean (SimpleUrlHandlerMapping) is similar to routes in Rails where everything (in regards to URL requests) is in one place. Then again, how many times are you going to change the URL locations and where does it look to be more natural - especially when you basically do all your work within the controller.

Similarly, this is how TurboGears (a web framework for my favorite language, python) handles request mappings (with a twist), where the name of the method in the controller declares the request mapping. That can be easily achieved with Spring MVC annotated controllers, too.

All this ease-of-use for writing web applications plus all the benefits of the Spring Framework - there's no need to switch to another framework, developers used to work with Spring can leverage all their knowledge and still be in the front lines, especially in regards to developing web applications.

Wednesday, February 20, 2008

Jython development gaining momentum

Jython developers gathered last Sunday in San Francisco and held a sprint to work on the next major release. This will bring Jython implementation of Python on par with the CPython implementation, which is now version 2.5.1 (with a v2.5.2 release candidate 1 released to public testing just few days ago). The San Francisco Sprint focused on the Roadmap list for the Jython 2.5.

There is not much information to work with in regards to what is the outcome to the Sprint, but I suppose a lot of good work came out of it. Hopefully we will see a stable release soon. With Groovy and JRuby already having a steady (and growing) number of followers, Jython needs a jolt.

Monday, February 4, 2008

Technical evangelist?!

What is up with technical people and the urge to have titles? Especially strange ones.. I have been reading a lot lately about Flex and AIR, technologies for developing rich internet applications, mainly for two reasons - first and foremost, it's very interesting technology and second, it might come in handy at work. But I'm not going to talk about that just yet.
During my reading, I came across more than a few times with a a rather unusual title. Apparently, one of the guys behind Flex and AIR calls himself a technical evangelist. If we look up the definition of the term evangelist, we can find out various things:
  • Evangelism is the verbal proclaiming of the Christian Gospel or, by extension, any other form of preaching or proselytizing.
  • "To announce the good news", one who preaches the facts of the Gospel in order to win converts.
  • The traditional view of the evangelist is a bearer of the "Good News", proclaiming the gospel to the unbelieving world.
So, technical evangelist is doing what, exactly? Somebody who verbally proclaims technology? Isn't just pretty much everyone who works in the field an evangelist? We should stop calling ourselves bloggers and start using evangelist instead..
This is, in my honest opinion, the worst title I have ever heard in my life. Sounds ridiculous and I honestly don't believe how can anyone take it seriously. Rubbish.

Tuesday, January 29, 2008

Street view..

Funny, yet a bit scary video portraying usage of Google Maps and Street View. Check it out below..

Few years from now, who knows..

Friday, January 25, 2008

Shift some time

Few weeks back, I downloaded a TimeShift game demo from Xbox LIVE! Marketplace. The demo features both single-player (campaign) and multi-player modes. The game itself is a first-person shooter game but unlike many other similar games, it has a rather unique feature - playable character in the game wears a special suit which enables you (as a player) to manipulate flow of time in the game.
You are able to slow down, stop and even reverse time, which affects everything (and everyone) around you - while you move freely! Some people might remember the very popular Max Payne series of games with a special (and very cool matrix-esque) Bullet-Time feature - you could put things in slow-motion to aim better and deliver bullets precisely.
In TimeShift, you're able to do that, and a lot more! If you get flanked by enemies, no problem - reverse time a bit and throw a grenade where they pop up - problem solved. If there are too many enemies to handle - stop (or slow) time and give each of them a proper gift (a bullet in the head).
Now you're probably thinking, that makes a very easy game to play. That's true, but - the suit offers you only limited time manipulation possibility, and the gameplay is challenging even with the special feature. What really makes this game extremely interesting is the (you guessed it!) multi-player game mode, where everyone has same capability. It's quite impressive (and for me, an average joe player) sometimes confusing, but a lot of fun!!
Last, but not least, thing worth mentioning is the graphics engine (called Saber3D) - it's visually stunning and attractive with really amazing textures of very high detail, especially on a hi-def TV set.
Be sure to check the game out, or at least download and play the demo before you buy. Really worth checking!

Wednesday, November 21, 2007

Spring 2.5 is out

They finally released it - Spring Framework 2.5 is finally out. It comes with loads of new features and enhancements (you can read more about it in the announcement). Things that concern me the most and what I have been looking forward to put to paces are annotation-driven DI and annotation-based controllers in Spring MVC. What makes me happy is that the documentation is largely improved, which is always a great plus.

Next thing that I'm patiently waiting for is the release of Spring WebFlow 2.0, which looks extremely promising tool. I am following it up very closely, as I plan to introduce it in my company and start a project based on WebFlow.

During next few weeks, I'll make sure I write something about the new features.

Wednesday, November 14, 2007

Right tool for the right job

What a fantastic line - "choose the right tool for the right job". I was reading a Superman/Batman comic I purchased recently (Superman/Batman: Public Enemies) and was quite impressed when.. Oh-well, I'm not going to unveil the story-line - anyways, Superman said aforementioned line at the beginning of the story.

Got me thinking - I had been running my blog with many various blogging systems, some of them good, some of them really bad. Usually, experiments with those systems ended up with me installing and using another system.

Well, choose the right tool for the right job. I am moving my blog to Blogger service. Easy to use, always accessible, no worries about server uptime or software upgrades.