Chariot Training Classes

Training Courses

I run Chariot's training and mentoring services. We provide training in AngularJS, HTML5, Spring, Hibernate, Maven, Scala, and more.

Chariot Education Services

Technology

Chariot Emerging Tech

Learn about upcoming technologies and trends from my colleagues at Chariot Solutions.

Resources

Chariot Conferences

Podcasts

Entries in News (5)

Monday
Jun172013

Spring Roo 1.2.4.RELEASE available now

Thanks to @alankstewart and some new contributors from the open source community, Spring Roo 1.2.4 has been released. It is available for download now.

Fifty issues have been resolved and it looks like the twitter tweet has been removed from the shell.

I'll be digging around with this a bit and posting any tidbits - I am also going to upgrade the code samples for Roo in Action to 1.2.4 this week, and will post any notes on what I find during upgrades.

Ken

Friday
Jan042013

Philly Emerging Tech April 2-3 2013 - Register today!

Remember that conference in the spring? Well, it's baaack! Yep, it's 2013, and so we are full-steam ahead, planning for the next Emerging Technologies for the Enterprise Conference, to be held at the Sheraton Olde City in beautiful Philadelphia on April 2-3.

We have quite the show lined up for you, with keynotes from Rich Hickey, the creator of the Clojure language, and Media Six Degrees' Chief Data Scientist, Claudia Perlich. Notable speakers include Ember.js creator (among other things) Yehuda Katz, Jessica McKellar of the Boston Python User Group, contributor to the Python Twisted async network library, the inimitable Aaron Patterson (if you want a laugh, listen to him rib us about our conference name in his Code Chacuterie talk of 2012)...

Also we have Cliff Click (0xdata), author of "Java Performance" Charlie Hunt, Go contributor and creator of Sinatra Blake Mizerany, author of "The Culture Game - Tools for the Agile Manager" Dan Mezick, Jurgen Appelo (author of Management 3.0), the creator of the Scrum process, Ken Schwaber, and more are being added every day.

We even have Angluar.js expert Lukas Ruebbelke (see Angular.js), a Google-sponsored "single page Javascript" client-side application framework that uses JSON/REST and has live two-way data binding. (I didn't even realize we booked him when I published this so ignore my earlier version where I said I am speaking on this topic). And as usual we'll be recording sessions and hopefully podcasting too.

More speakers are being booked each week.

So, don't delay. Last year we sold out with two months to go, and I think as we add additional awesome speakers the competition for a ticket will get intense. Register today at phillyemergingtech.com.

If you want more incentives, the early bird registration is just $385, and ends on February 15th. After that prices go up to $450 (still a steal, but why not save and register now, will ya?)

Tuesday
Oct182011

Roo (in the) Corner - new features in trunk...

I've been spending my time readying Roo in Action for publication. Turns out, the Roo team had other ideas - including lots of new things you may want to be aware of if you are looking to support Roo 1.2 once it is released.

Keep in mind these changes are in-flight. If you don't need to work on trunk, DO NOT WORK ON TRUNK. This is something other platform afficianados do - for example, the Rails development community commonly calls this working on the "edge". So, let's get edgy.

There are some really, really cool things in here. I've seen them move toward opening up for all modes of development - some want JSF, so there is a JSF add-on. They use PrimeFaces, and a dialog motif for adding new elements. I'm sure they will tweak this as it goes along, but it looks more like the GWT or Flex mode of editing I saw before.

Breaking Changes (so far) - you may need to edit your code - I know I have to for now, but this is a temporary pain for some consistency gain within Roo.


  • @RooEntity -> @RooJpaActiveRecord

  • @RooWebScaffold - now a .scaffold. package after .controller.

  • @RooConversionService - now a .converter. package after .controller.


Additions


  • New @RooEquals - and a shell command for equals - this has been here for a little while, but is something that can be of use when defining models or other objects that need to be compared. You can exclude fields from the factoring of the comparison.

  • new entity flags (recent anyway) to set entity name, table, and other attributes on entities - this is great, and includes the ability to define transaction manager names for cases where you are working with multiple JDBC datasources - nice! Also, it lets you specify the entity manager - so if you have two persistence units to separate transaction managers (reporting database -vs- transactions) you have that option. Again, not a huge deal, but lets you stay within Roo to get things done, without digging into code for a configuration option. You can even set the table name, entity name, etc...

  • New settings for the json command - --deepSerialize and --rootName - I am not sure if these have been here long, but they are good to know about.

  • New —packaging element in project - includes POM or JAR right now. Also includes --parent. This could be great, as I think they are going to implement multi-pom support in Roo 1.2. We'll stay tuned on that, and perhaps write a quick blog entry on what we've found.

  • New support for database dot com - a new database provider - I don't know much about it.

  • New date field support for both dateTimeFormatPattern AND dateFormat - I am unsure that the scaffold would deal with dateTimeFormatPattern.

  • JSF scaffolding in place - uses PrimeFaces for the widgets - this is interesting, and has a different look and feel, native to PrimeFaces. But, it does exactly the same work as the scaffold in MVC. So, if you're looking at complexities and benefits of each, go for it. The CI build server is here, and you just need to follow these rules to get it to use trunk.


It was so easy to switch between JSF and MVC for my testing, I used these two scripts:

Roo with MVC

 

project --topLevelPackage foo.bar.mvc --packaging JAR --projectName mvcrules
jpa setup --database HYPERSONIC_PERSISTENT --provider OPENJPA
entity jpa --class ~.model.Course --testAutomatically
field string --fieldName name
field date --fieldName runDate --type java.util.Date --dateFormat SHORT
web mvc setup
web mvc all --package ~.mvc quit
Roo with JSF
project --topLevelPackage foo.bar.jsf.sortarules --packaging JAR --projectName jsfsortarules
jpa setup --database HYPERSONIC_PERSISTENT --provider OPENJPA
entity jpa --class ~.model.Course --testAutomatically
field string --fieldName namefield date --fieldName runDate --type java.util.Date --dateFormat SHORT
web jsf setup
web jsf all --package ~.jsf quit

I will attempt to update this article as I find new things... No promises, as the primary artifact is the book. But hopefully this is a warning shot across the bow that change is indeed a-coming.

Monday
Dec142009

Philadelphia Emerging Technologies Conference (4/8 − 4/9 2010) Registration Now Open

We are excited to announce the opening of the 2010 Philadelphia Emerging Technologies for the Enterprise conference, being held on April 8 − 9, 2010.  The event will be held downtown at the Society Hill Sheraton in Philadelphia, Pennsylvania.

The show promises to be a great one.  With keynotes from "Uncle Bob" Martin, a founder of the Agile movement and Michael Cote, analyst with RedMonk, several evening events, five rooms of speakers in technologies from Agile to Dynamic Languages, Management to Web Services and more, this is one of the premiere conferences on the east coast this spring.

Speakers for the conference include: Dan Allen (JBoss/RedHat), Jeff Barr (Amazon), David A. Black (Ruby Power and Light), Joe Conway (iPhone instructor, Big Nerd Ranch), Scott Davis (ThirstyHead.com), Joe Gregorio (Google), Yehuda Katz (Engine Yard), Jon Kern (Software Architect, Agile Mentor), Brian Marick (Agile Consultant), Alex Miller (Terracotta), Alex Payne (Twitter), Chris Richardson (SpringSource), Venkat Subramanium (Agile Developer, Inc. founder), James Ward (Adobe) and many more.

To register, visit phillyemergingtech.com

Disclosure : I work as the Education Director for Chariot Solutions, which organizes this conference.


Friday
Apr172009

Google App Engine - Now with Java "Freshness"

In the past two weeks, Google has announced support for Java and Groovy on the Google App Engine.  Various frameworks are supported, and the team at SpringSource is hard at work with a git repository fork of Grails for AppEngine.  

What does that mean for us Java-heads?

 

  • You will now be able to deploy a Java-based application to Google App Engine for free up to a certain number of page views per month (rumored to be somewhere near 5 million views per month)
  • You can use some major Java frameworks, including Spring, some of Spring MVC (apparently they are sorting through the spring: tag lib), etc...
  • You will have to code differently (just as the Python developers using the original App Engine did), because you're running on a non-relational data store (BigTable).  However, you can use JDO and most of the features of JPA.

 

This is an interesting announcement.  For quick applications (especially Grails-based) that you want to get out there for immediate feedback, you now have a place to drop them, free.  Of course, coding for App Engine puts some pretty hard limitations on your architecture; you'd have to figure out whether or not you'd want to do something like that and whether it fits your ultimate goals.  But for UI prototyping, quick burst apps like Facebook surveys, etc., it's an interesting alternative.

Even better, the Groovy team released Groovy 1.6.1, which is compatible with GAE.  There are sample applications using Groovy Ant builder running around.  Check here for a great article by Guillaume LaForge. Also see this, and this.  A good message board exists on the Google Groups page.