Developer Success Story: Joel Dietz
Bringing Gen Y Energy to Force.com Development
Force.com MVP Joel Dietz got an early start on his career. Growing up near Philadelphia, he learned to program at age six as part of his home schooling, then studied the subject at a local community college—at age 14! While his formal schooling later took him to the humanities, he spent his summers doing Web development. He established his consulting firm, Titania Inc., in the late 1990s, where he focuses on Ruby, jQuery, and all things Force.com. In addition to mastering several computer languages, the developer is fluent in German and Mandarin, and is learning Japanese.
At age 28, Dietz represents the newest generation of developers in the Force.com community. That’s important, he says, because Salesforce is so strongly associated with enterprise development. “A lot of younger developers don’t like dealing with that world and have done what they can to avoid it. But that may well change, especially now that Heroku, with its strong Ruby connection, is a part of Salesforce.com.”
In the Developer Force community, Dietz is best known for his blog, Fractastical.com. Launched in the summer of 2009, Fractastical is one of the most widely visited blogs focusing on Force.com development. Fractastical’s tagline summarizes much about what Dietz is about: “Salesforce, Ruby, jQuery and more.” His mission, he says, is to bring some of the free-form community traditions of those last two items to the Force.com universe.
Dietz says that while Ruby and jQuery are very different, their communities have much in common. “They both take a ‘bottom-up’ approach in which developers come first. They place great value on the quality of the actual code you’ve produced, rather than the size of your resume. And they emphasize the importance of contributing some of your code to the community. I’ve tried to capture some of that in my blog.”
Dietz’s blog posts reflect his open source sensibilities: a mix of cutting edge and quirky, while remaining reader-friendly for Force.com developers. “For example, when Chatter was first released, I became the first third-party developer to write an application for it: a task manager that integrated with Chatter so you could track and comment on various tasks, whether they were complete or not. I made it available to the community, which is about the time salesforce.com started noticing me. The experience of developing the app put me in a good position to provide a lot of tips at a time when there was not a lot of documentation. I answered lots of questions and explained how to you could put Chatter to work.”
Code Contributions, Community Participation
Dietz is also known in the Developer Force community for his contributions to the ChatterCommons project, which archives Salesforce.com Chatter related code and functions. He has contributed components for listing followers and subscribers, adding a FeedPost, and more. His code contributions also include helper classes, such as ChatterTestHelper, which makes developing Force.com Chatter apps easier. Another Dietz project is Formation. An extension of the CMSForce content management system, Formation provides dynamic form generation that can be embedded in any Force.com site using live jQuery powered validation. The code also includes jQuery UI for Salesforce—a library of jQuery enhanced Visualforce components that can be used instead of the standard Visualforce components for a variety of functions, including client-side data validation.
Other Force.com projects by Dietz include Resourcy, a bot that synced with Google App Engine and Google Wave; Saasy, a Ruby IRC bot for the salesforce.com IRC Channel; ChatNova, a jQuery-powered live chatroom running on Chatter, which was Dietz’s entry in the 2010 developer contest; and a jQuery DataTable used for managing campaign registration provided as an add-on to salesforce.com foundation’s Nonprofit Starter Pack. And then there’s KittenForce, announced on the blog with mock fanfare, which provides a monochrome, feline image as a placeholder for page design. Dietz has archived the source code for these and other projects at his GitHub repository.
On the Force.com discussion boards, Dietz has documented many bugs, answered many questions and tagged many posts. He is a core contributor to Apex Commons, the largest open source library for the Salesforce community, and has presented at Dreamforce on Ruby on Rails and the larger Salesforce open source ecosystem.
Ruby for Force.com Developers
With salesforce.com’s Heroku acquisition, Dietz sees opportunities for himself and other developers as Ruby and other open source technologies become a part of Force.com. And he thinks that many Force.com developers are well equipped to learn Ruby.
“There is a learning curve, of course. Ruby can present some culture shocks for developers accustomed to the well-ordered release structure of Salesforce—which can make it tough to get started. With Ruby, and particularly Ruby on Rails, there are often versioning issues, incompatibilities, and outdated documentation--which happens more often with open source development. You also need to spend a fair amount of time on the command line, which can be difficult for folks who are used to working exclusively in an IDE.”
“On the other hand, writing in Ruby is fun and rewarding. The Ruby community is legendary, and there is so much information online that sorting through it can be a challenge. For resources, I highly recommend the Peepcode screencasts, as well as the Programming Ruby (aka the Pickaxe book, for the cover art). Ruby is one of my favorite creative mediums, and I think other Force.com developers will discover the same.”