Speakers
- Brad Abrams
- Tom Ball
- David Boloker
- Ryan Breen
- Bob Byron
- Max Carlson
- Ludovic Champenois
- Patrick Chanezon
- Scott Davis
- Scott Dietzen
- Keith Donald
- Nicholas Eddy
- Cal Evans
- Jon Ferraiolo
- Neal Ford
- Thomas Fuchs
- Jesse James Garrett
- Nate Grover
- Aaron Gustafson
- Kevin Hakman
- Clint Hall
- Stuart Halloway
- Josh Holmes
- Molly Holzschlag
- Kevin Hoyt
- Bob Ippolito
- Bruce Johnson
- Sean Kane
- Nik Krimm
- Howard Lewis Ship
- Kevin Lynch
- Dustin Machi
- Matthew McCullough
- Steffen Meschkat
- Eric Miller
- Eric Miraglia
- William Morris
- Aaron Newton
- Vic Patterson
- Nandini Ramani
- Aza Raskin
- Torrey Rice
- Tom Robinson
- Rick Ross
- Alex Russell
- Christian Schalk
- Dylan Schiemann
- Matt Schmidt
- Nathaniel Schutta
- Bill Scott
- Scott Shattuck
- Deryk Sinotte
- Ken Sipe
- Brian Sletten
- Steve Souders
- Etienne Studer
- Venkat Subramaniam
- Tenni Theurer
- David Verba
- Rich Waters
- Dustin Whittle
- Mike Wilcox
- Greg Wilkins
- James Williams
- Chris Wilson
- Richard Worth
- Nicholas C. Zakas
- Kris Zyp
Stuart Halloway
CEO of Relevance
Blog
Brian's Functional Brain, Take 1.5
Posted Sunday, October 25, 2009
Last week, Lau wrote two excellent sample apps (and blog posts) demonstrating Brian's Brain in Clojure. Continuing with the first version of that example, I am going to demonstrate using different data structures visual unit tests more »The Case for Clojure
Posted Monday, October 19, 2009
The case for Clojure is richly detailed and well-documented. But sometimes you just want the elevator pitch. OK, but I hope your building has four elevators: "Concurrency is not th more »NFJS, the Retro (Twin Cities Edition)
Posted Friday, October 16, 2009
We had a terrific conference retrospective this weekend at the Twin Cities NFJS show. Eight people participated, with me facilitating. The conversation was good, and everyone left excited to implement the SMART goals that more »Presentations
Refactoring JavaScript
The rise of Ajax and Rich Web Applications, plus the success of dynamic languages, has caused people to revisit the JavaScript language. Now that we take JavaScript seriously as a language, it is time to get serious about the quality of JavaScript code, t more »The rise of Ajax and Rich Web Applications, plus the success of dynamic languages, has caused people to revisit the JavaScript language. Now that we take JavaScript seriously as a language, it is time to get serious about the quality of JavaScript code, through refactoring. In this talk, we will test and refactor a real-world jQuery plugin.
As we refactor a real-world jQuery plugin, you will learn how to
- test JavaScript code with Screw.Unit, Smoke, and blue-ridge
- write covering tests for existing code
- perform common refactorings such as extract method and "use the right tools"
- rethink refactoring in light of functional programming style
- think about when and how refactoring shades into breaking changes and redesign
Books
by Stuart Halloway
-
Clojure is a dynamic language for the Java Virtual Machine, with a compelling combination of features:
Clojure is elegant. Clojure's clean, careful design lets you write programs that get right to the essence of a problem, without a lot of clutter and ceremony.
Clojure is Lisp reloaded. Clojure has the power inherent in Lisp, but is not constrained by the history of Lisp.
Clojure is a functional language. Data structures are immutable, and functions tend to be side-effect free. This makes it easier to write correct programs, and to compose large programs from smaller ones.
Clojure is concurrent. Rather than error-prone locking, Clojure provides software transactional memory.
Clojure embraces Java. Calling from Clojure to Java is direct, and goes through no translation layer.
Clojure is fast. Wherever you need it, you can get the exact same performance that you could get from hand-written Java code.
Many other languages offer some of these features, but the combination of them all makes Clojure sparkle. Programming Clojure shows you why these features are so important, and how you can use Clojure to build powerful programs quickly.
by Stuart Halloway and Justin Gehtland
-
Many Java developers are now looking at Ruby, and the Ruby on Rails web framework. If you are one of them, this book is your guide. Written by experienced developers who love both Java and Ruby, this book will show you, via detailed comparisons and commentary, how to translate your hard-earned Java knowledge and skills into the world of Ruby and Rails.
If you are a Java programmer, you shouldn't have to start at the very beginning! You already have deep experience with the design issues that inspired Rails, and can use this background to quickly learn Ruby and Rails. But Ruby looks a lot different from Java, and some of those differences support powerful abstractions that Java lacks. We'll be your guides to this new, but not strange, territory.
In each chapter, we build a series of parallel examples to demonstrate some facet of web development. Because the Rails examples sit next to Java examples, you can start this book in the middle, or anywhere else you want. You can use the Java version of the code, plus the analysis, to quickly grok what the Rails version is doing. We have carefully cross-referenced and indexed the book to facilitate jumping around as you need to.
Thanks to your background in Java, this one short book can cover a half-dozen books' worth of ideas: Programming Ruby Building MVC (Model/View/Controller) Applications Unit and Functional Testing Security Project Automation Configuration Web Services
by Stuart Dabbs Halloway
- Reveals both the potential and pitfalls of developing components using the Java platform. Delves into the component-oriented features of the Java platform, thoroughly discussing class loading, reflection, serialization, native interoperation, and code generation. Softcover.