For a while I kept seeing twitter being mentioned and kinda thought: why would I wanna know what some random person on the internet had for lunch?
Monday, 21 April 2008
Getting hooked on twitter
Friday, 18 April 2008
Google AppEngine is very impressive!
After never having hacked any python before or looked closely at django and never having used BigTable, I spent a little over a day and managed to hack up, what is (to me anyway!)- is a very useful little web app I've wanted for a long time: http://latrz.appspot.com. Its highly scalable & available and resilient thanks to BigTable. Its kinda amazing really.
Sure Amazon has lots of similar stuff at the bits and bytes level. EC2, S3, SimpleDB and the new file system stuff are cool too, don't get me wrong. For some things the power and flexibility of the Amazon offerings are great.
I guess some web developers are gonna push back on the use of python but I'm sure google will release Java / JavaScript flavours of AppEngine soon making it not much of an issue. Who knows maybe even PHP too - not sure about Ruby though, I dunno if they've figured out how to make a ruby sandbox yet.
I'm sure ultimately this is gonna be a big game changer for those making public web applications; it takes so much hassle out of making web apps - and makes creating highly scalable & available web apps very rapid & fun. Well done googlers; I'm very impressed.
Wednesday, 16 April 2008
Latrz - a handy web app for reading stuff later (latrz)
I've wanted something like this for the longest time! I've found when surfing, chatting online, working with email that I keep stumbling on loads of links to interesting stuff I wanna read - but just not right now - later.
I've often kept open loads of FireFox windows for stuff I should read soon (which then means I struggle to find what I am currently reading/working on from stuff I wanna read later). Then I've been through phases of cutting and pasting interesting articles into files/wikis for later. I've always felt this was sucky and wanted a nicer solution.
Now there's latrz and I confess to being totally hooked already :).
Basically if I'm on a page I know I wanna read, I click the Read Latrz bookmarket, then close the browser or carry on doing what I'm doing. Then when I've time I just click on the latrz site to read whatever takes my fancy, then mark it as read when I'm done to remove it from my reading list.
Go on, give it a try or subscribe to the Latrz Blog, you know you want to :)
Using Scala to create a better Camel DSL for Enterprise Integration Patterns
Gert Vanthienen has been doing some amazing work creating a DSL for Camel using Scala. I'm amazed at how neat and concise it is. Go Gert! :).
I'd previously experimented with Groovy and Ruby DSLs and found them to be little more verbose (e.g. having issues of needing to pass 2 closures/blocks to methods like when or filter, one for the predicate and one for the block to execute if its true).
You can grab his slides from the recent ApacheCon talk. I'm really liking it. The Scala use of separate syntax for functions/predicates and blocks helps improve the Camel DSL hugely
Thursday, 10 April 2008
Apache Camel 1.3.0 released with 208 new features & improvements
Its taken a while to get there but we've finally got the new Camel 1.3.0 Release out of the door which includes 208 new features, improvements and bug fixes described below. Also as David has blogged recently we've MSMQ support now along with Esper and an Esper Demo. Many thanks to all those who helped ride this beast out the door. Enjoy!
- improved Bean Integration
- improved testing via Spring Testing along with the Mock, Test, DataSet components
- browsing of endpoints via the BrowsableEndpoint with support in the JMS, List, Mock, SEDA and VM components
- improved support for message exchange patterns such as InOut for JMS
- various improvements in CXF, iBatis, Jetty, MINA components
- improved XPath and XQuery support in Spring XML and with easier namespace configuration
- default to more efficient JMS usage when working with Spring 2.5.x to avoid a previous Spring bug
- various improvements in the DSL and with error handling
- improved automatic Type Converter implementations
- method invocations now supported in EL expressions
- CXF transport API
now supported in CXF component, you could leverage the power of Camel mediation in Apache CXF
New Components
- AMQP
- DataSet for easier load testing
- JCR for JSR 170 support
- List for UI and tooling integration
- Stream for working with input/output streams
- Test for easier functional testing
- XQuery for easy XQuery based transforms for Templating
New Data Formats
New Languages
New Enterprise Integration Patterns
Please see Release Notes for more details. Download it now while is hot to trot!
Thursday, 27 March 2008
[LazyWeb] a maven plugin to find resources on your maven dependency path
Every now and again I get the dreaded log4j.properties / log4j.xml maven transitive dependency hell. Some resource is included in multiple jars so the one you think you're meant to be using isn't found first.
mvn classpath:find -Dresource=log4j.properties
Tuesday, 18 March 2008
Writing unit tests? Give hamcrest a try
I'm not sure if its that well known but if you are writing unit tests in JUnit 3.x, 4.x or TestNG take a look at the tutorial, add hamcrest-all.jar to your classpath/project/pom.xml then give hamcrest a spin. I think you'll like it. Here's the pom.xml change...
assertThat! :)<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<version>1.1</version>
</dependency>
Friday, 14 March 2008
If you are tinkering with VMWare on OS X
then a few links to save you a little googling. If you wanna use some of the public VMWAre images such as Ubuntu 7.10 desktop then you might wanna use BitTorrent to download it, then to unpack the RAR file try UnRarX. I've found the nicest way to use VMWare on Leopard is to run each VM image in a separate Space in full screen mode which is pretty neat...
Friday, 7 March 2008
UFace getting hotter
Check out Tom's report on the latest improvements in UFace - pretty neat eh. Also using CSS cross web apps, Swing and Eclipse is hot.
Friday, 15 February 2008
Easier Integration & Pattern testing with Camel and Spring 2.5
I'm really liking the testing features in Spring 2.5.x for easier unit testing with JUnit 3.8, 4.x or TestNG using Spring to do all your dependency injection before invoking your test classes.
I've just created a little document to show how to use Spring Testing with Camel, using the Camel Mock and Test endpoints for easier Enterprise Integration Pattern based testing. Incidentally Camel now has a new little Test endpoint which creates a Mock endpoint that automatically pulls its expected message bodies from another endpoint and auto-wires up the expectations for easier testing with minimal coding.
Public Training on Apache ActiveMQ and Apache ServiceMix
As Bruce mentioned IONA is offering some public training courses on Apache ActiveMQ and Apache ServiceMix on the following dates for the first two...
- London,UK - March 11-14
- Waltham, MA - March 17-20
Wednesday, 6 February 2008
Using Apache Camel, ActiveMQ and Esper for Complex Event Processing
David Greco just checked in a cute little demo that shows how to work with Apache Camel for Enterprise Integration Patterns, ActiveMQ as the message broker and Esper for Complex Event Processing. Enjoy!
Update: David bas blogged about this too :)