End of year meeting with DOSUG and Adobe Flex User Group

We are having a shared end-of-year meeting December 9th from 6 – 9 PM at The Sports Book located at 1434 Blake St. in Denver.

Our sponsors are providing fun activities and we’ll have some door prizes.

Please RSVP by the end of the day on 12/2/2009 on the link below so we can plan accordingly: http://dugparty.eventbrite.com/

Thanks again to our sponsors – K*FORCE, TekSystems, Vaco, and Real Eyes and thanks to Jordan McCullough for taking some really great pictures, which I’ve enclosed as a gallery below.

Posted in Monthly Meeting | Comments Off on End of year meeting with DOSUG and Adobe Flex User Group

Slides: Building SOFEA Applications with GWT and Grails by Matt Raible

Here are the slides from the talk Matt Raible gave this week.

[slideshare id=2484656&doc=sofeawithgwtandgrails-091112101640-phpapp01]

Posted in Monthly Meeting | Tagged , , , | Leave a comment

‘Javascript and DOM Scripting’ Book Review

cover.cfmReview of JavaScript and DOM Scripting by Edward Young

I’m an experienced software developer but unfamiliar with Javascript, and this book was an excellent way to learn through example. It’s also a pretty good reference for javascript and DOM scripting, plus has some good introductory info on XHTML and CSS. I’m also a software engineer who appreciates and relies on good software tooling to help make code projects comprehensible, and manageable. The chapter on how to test and debug Javascript, showed how to install and set up firebug, and then how to use it to examine, execute and debug javascript applications. That chapter alone is worth the price.

This book is both a good how to manual (Nearly all the chapters start with “How to”), but is a great reference, with a 1 page brief contents and then a 10 page detailed table of contents.
This book is also not only a book on learning Javascript and DOM scripting, but also ensures that the reader learns the vital peripheral technologies alike XTHML and CSS, by taking the reader through the development of several interesting and useful applications over it’s 20 chapters.
This is my second Murach book and is also excellent. I highly recommend it.
Posted in Book Review | Tagged | Leave a comment

November 11th, 2009 Meeting

Location: Auraria Campus-Tivoli Bldg; Room: TIV 320 AB – Baerresen Ballroom

*** Free Pizza @ 5:30 ***
Main Session Speaker: Matt Raible
“Building SOFEA Applications with Grails and GWT”
7:15pm -8:30pm
BC Session Speaker: Panel, Q & A
“How to Become and Independent Consultant: Panel Discussion Q & A”
6:00pm – 7:00pm
Basic Concepts – Panel Discussion ‘How to Become and Independent Consultant: Panel Discussion Q & A’

How To Become an Independent Consultant: Panel discussion; Q & A This session explores the trials and tribulations of an independent consultant. How do you find contracts? Should you setup an LLC, an S-Corp or just be a sole proprietorship? What about health insurance and benefits? Are recruiters helpful or hurtful? Learn lots of tips and tricks to get your dream job and your ideal lifestyle. Ski season is coming up after all. šŸ˜‰

Panel: Matt Raible, Tim Berglund, Matthew McCullough, James Goodwill

Featured Talk: Matt Raible ‘Building SOFEA Applications with Grails and GWT’

In early 2009, Matt participated in a major enhancement of a high-traffic well-known internet site. The company wanted to quickly re-architect their site and use a modern Ajax framework to do it with. An Ajax Framework evaluation was done to help the team choose the best framework for their skillset. The application was built with a SOFEA architecture using GWT on the frontend and Grails/REST on the backend. This talk will cover how Matt’s team came to choose GWT and Grails, as well as stumbling blocks they encountered along the way. In addition, we’ll explore many topics such as raw GWT vs. GXT and SmartGWT, the GWT-Plugin, modularizing your code, multiple EntryPoints, integration testing and JSON parsing with Overlay Types.

Speaker:
Matt Raible resides in Denver, Colorado, where he runs Raible Designs, a consultancy that specializes in open source Java frameworks and Ajax development. Matt has been surrounded by computers for most of his life, even though he grew up without electricity in the backwoods of Montana. Matt is an author (Spring Live, Pro JSP), active Java open-source contributor, and blogger on raibledesigns.com. He is the founder of AppFuse, a project which allows you to get started quickly with Java frameworks, as well as a committer on the Apache Roller project. Matt’s presentations can be downloaded from his website. Contact him if you can’t find one of his presentations.
Posted in Monthly Meeting | Tagged | Leave a comment

Slides: Test First, Refresh Second: Web App TDD in Grails by Tim Berglund

Here are the slides for the talk Tim Berglund gave this week.

[slideshare id=1861704&doc=testfirstrefreshsecond-090814112612-phpapp01]

Posted in Monthly Meeting | Tagged , , | Leave a comment

‘Java Servlets & JSP’ Book Review

murach_cover

Review of Java Servlets and JSP by David Madouros

I’m torn after reading Murach’s Java Servlets & JSP book, 2nd Ed. I read the first version when I was making the transition from mainframe programming to Java programming and found the information to be extremely helpful for getting up and running very quickly. With the authors’ assistance I had a database server, a servlet container, and a ā€˜hello world’ web app running within a couple of hours. On the other hand, reading the second edition as an experienced Java developer made me cringe. Ultimately, I have to side with the my experienced side. Especially when I consider how well the format of Murach books tends to make them canonical references and how easy it would have been for the authors to teach better practices.

The cover of the book makes at least three claims:

  • Get off to a quick start
  • Build professional web sites
  • Handle databases like a pro

Get Off to a Quick Start
The authors get off to a great start by helping the reader to download, install, some basic tools including a servlet container, a database server, and an IDE. They guide the reader with step by step instructions for installing both Tomcat and MySQL — bonus points for recommending the latest versions of each. However, I’m stumped by their choice of IDE — NetBeans — and their claims that it is a top notch IDE. Technically, I suppose it is third, but in my experience it’s a distant third well behind Eclipse and IntelliJ.
Build Professional Web Sites
I take issue with much of the material presented in the book and how it lends itself to creating ā€˜professional’ web sites. For starters, the authors provide an excellent introduction to HTML. Too bad XHTML is the current standard. The authors state that they’d rather discuss HTML than XHTML because they feel that XHTML is too difficult to teach in a single chapter. I thought this was ridiculous, but assumed they would at least promote well-formed HTML — boy, was I wrong. They consistently use of malformed HTML in their examples and go as far as mentioning the lack of unquoted attributes as a good thing! This is bad, but it gets worse because a couple of chapters later they have to discuss well-formed HTML before they can teach the reader how to use JSTL.
The authors discuss both JSP and Servlet technologies in separate chapters and demonstrate how to create ā€˜complete’ websites with each technology. I suppose this is necessary to teach the underlying technologies, but I wish that the authors had down played their use a little more. They do eventually discuss MVC (model 2) and state that it is a better solution, but they take the easy way out by saying that sometimes straight JSP and straight Servlet implementations are except- able.
My final grumble about creating professional websites has to do with the chapter on custom tags. While using the classic tag mechanism was a pleasure (not!), the simple tag mechanism is exactly what it claims to be — simpler — and much more straight forward. However, the authors only mention the classic mechanism — no mention of SimpleTagSupport and no mention of tag files. Long live SKIP_BODY!
Now for the good stuff… My favorite chapter in the entire book has to be chapter 9 because they give a high-level summary of JavaBeans and JSP tags stating that they are outdated and rarely used anymore — replaced by JSTL. The only reason the authors even mention them is that the reader may need to know about them to support legacy applications. I wish the rest of the book gave more of these disclaimers.
Finally, the authors really do a good job of describing the technologies. I just wish that they’d promote best practices and shun bad ones more often.

Handle Databases Like a Pro
The authors give a good overview of SQL and then move on to coding straight JDBC code. However, they choose to close the connection inside of the try block rather than follow the best practice of closing the connection in the finally block. Also, they mention the differences between Statement and PreparedStatement and seem to lean towards Statement unless there is a need to execute the same statement repeatedly, but throughout the entire discussion there is no mention of cross site scripting prevention as one of the benefits of the PreparedStatement (not that PreparedStatement completely eliminates the threat of XSS, but it greatly reduces it).

Summary
In summary, this book is a disappointment. The subject of web development involves many technologies: CSS, HTML/XHTML, Java, Servlets, JSP, JSTL, EL, SQL, Http, and Javascript; and this doesn’t include the various frameworks (Struts, JSF, Spring, Hibernate, GWT, etc.) The authors make a valiant effort to cover all the base technologies, but there’s just too much to cover in a single book and be able to make the claim that the reader will have all the skills necessary to create professional websites. This book barely manages to cover the basics. I give the authors an A for effort, but a D for execution. Having said that, if you don’t understand any of the technologies (other than Java) and read the book with the understanding that this is just the beginning, this might be the book for you.

Posted in Book Review | Tagged , , | Leave a comment

‘Modular Java’ Book Review

Review of Modular Java by Johnny Wey cwosg

ā€œModular Java: Creating Flexible Applications with OSGi and Springā€ provides a great introduction to those either curious about OSGi or wanting to get more out of their existing OSGi workflow using the Spring Framework. Craig Walls, author of ā€œSpring in Action, 2nd Editionā€, opens the book explaining why OSGi matters and how it can be used to enhance the modularity and maintainability of those application stacks containing multiple and complex moving parts. He not only serves up a great introduction to the technology, but also directs the reader to several tools that make OSGi development significantly easier.

In the second portion of the book, Craig throws Spring into the mix and demonstrates how the power of Spring Dependency Injection, autowiring, and the Spring MVC web framework can not only run seamlessly in an OSGi container, but also remove a large portion of the burden that OSGi’s API can put on application development.

Finally, Craig spends some time describing how an actual deployment might look in a production environment using both Tomcat and Jetty and provides optimization tips that make the process as painless as possible.

The book itself is logically organized and Craig’s writing style is approachable and easy to follow. All the example source code is available online, and Craig demonstrates how to install OSGi packages using both Eclipse Equinox and Apache Felix, leaving the final OSGi container decision up to the preference and requirements of the project. The sample application Craig uses to demonstrate the concepts in the book is surprisingly fun and useful, and the book contains some wonderful appendices that function as a great reference for current and future development projects. The book is a relatively quick read but surprisingly complete.

For someone looking to get the most out of OSGi or wanting to find out what all the ā€œbuzzā€ is about, Craig Walls’ book is an outstanding choice.

Posted in Book Review | Tagged , , | Leave a comment

October 15, 2009 Meeting

Tivoli 320 AB

BC – Tim Berglund TDD w/Grails

Abstract:

Not many of us question that TDD is the right way to write software, but not many of us really practice it either. Even fewer of us do it when writing a web app, and with good reason: web app code is usually coupled to a framework, and the framework is usually coupled to a web server on one end and a database on the other. All this coupling does not set us up for testing success.

Grails 1.1 introduces several features that make it easy and truly productive to create a web application while testing first. In this talk, you’ll learn how to use Domain and Controller mocking to write unit tests that can be run quickly and easily from the IDE or from the command line. TDD with 100% coverage had always been possible in Grails, but for the first time the tools make it the kind of thing you’ll want to do. Learn to use the new features of the framework to build your web app the right way the first time.

About the Speaker:

Tim Berglund runs a software consulting firm called the August Technology Group (www.augusttechgroup.com), which provides training, coaching, and development services to customers building web applications with open-source tools, especially with the Grails framework. His technology interests span web applications, business integration, data architecture, and software architecture, but his greatest passion is to help developers improve in their craft. He is a frequent speaker at local user groups, and helps lead IASA Denver (www.iasadenver.org) and the Denver Open Source User Group (www.denveropensource.org). He is currently writing the book, Deploying Grails (to be published by O’Reilly), due out in 2010. He lives in Littleton, CO with his wife and three children.

FEATURED TALK – Randy Kahle on NetKernel

Abstract:

NetKernel is a software platform that runs on the JVM. It is based on a very small pure REST kernel and includes tools and services in its stack (much like Unix). Like the Web, everything in NetKernel is identified by a URI.

NetKernel started as a research project in HP Labs in 1999. Since 2002, the technology has been advanced by 1060 Research. We are releasing NetKernel 4 on 10/9/2009 and this represents a major step forward in the refinement of the abstraction and platform.

NetKernel is used by large corporations (e.g. BlueShield of California) governments (e.g. US Army, Intelligence Agencies) and small companies. All report the same – applications built on NetKernel run faster, require less code, scale with cores and in general, simplify systems.

More information is at http://www.1060research.com (Note: while the company is located in the UK, I work remotely from Fort Collins).

In an hour presentation I will present the fundamentals of the abstraction, demonstrate example working applications and explain the architecture and answer questions.

About the Speaker:

BAĀ  EE/CS Rice University
MBA Dartmouth

I have worked at GTE Sylvania, HP, Microsoft, MageLang Institute, with my own consulting company and lately with 1060 Research. I worked with Java since the early days and with MageLang institute was an early consultant, instructor and architectural advisor to investment banks, manufacturers and service companies.

Posted in Monthly Meeting | Tagged , , , , | Leave a comment