Photo from Chile

cf.Objective() 2011 - Get Yer Blog Bling

Jim Priest has been kind enough to produce some new badges and a banner for this year's cf.Objective(), so whether you're presenting, sponsoring or just attending you can decorate your blog and celebrate the awesomeness that is cf.Objective() 2011. The bling can be found on the Promotional Badges page of the website, and you can also see it in all its glory below:

cf.Objective() 2011 - The Schedule is Live!

That's right folks, the moment you've been waiting for. The schedule for cf.Objective() 2011 is now available for your perusal. We plan to have full session descriptions and speaker bios on the site next week, but the topic titles should give you a pretty good idea of just what kind of awesome we're going to be bringing you this year. There are a couple of things I want to highlight about this year's conference.

Deep Dives

We managed to squeeze three deep dives into the schedule for you this year. These sessions will be allocated two consecutive time slots to be able to cover their topics in greater detail then was possible with a single 60-minute slot. The three deep-dives this year are:

  • Designing for Scalability in ColdFusion - Ted Steinmann & Tim Meyer
  • Building HTML5 Applications - Adrian Pomillio
  • End-to-End Application Design, Featuring ColdSpring/AOP, FW/1, MXUnit, ORM and ValidateThis - Jamie Krug

We consider this a pilot project, which is why we chose three topics, so we'll be particularly keen to hear your feedback on them. Of course you won't be able to judge until after you've attended the sessions, but what do you think of the idea? Are you as psyched about it as we are? Leave a comment and let us know.

The Topics You Asked For

Remember the cf.Objective() Topic Suggestion Survey that you all used to suggest and vote on topics? We looked at the results of the survey carefully and are pleased to let you know that we were able to include topics that matched 10 of the top 13 suggested topics. These include:

  • A Git's guide to GITting along - Tim Cunningham
  • Replace Your Iron with a Cloud - Barney Boisvert
  • NoSQL? No Problem - Peter Bell
  • Forms That Don't Suck (Quick, Easy, & Clean Forms and Data) - Matt Quackenbush
  • Using oAuth to integrate CF with Facebook/Twitter - Jeff Gladnick
  • From HTML to Flex, how to create ColdFusion powered mobile Applications - Simon Free
  • Everything you wanted to know about REST and more - Simon Free
  • Continuous Integration with Hudson, ANT, and MXUnit - Marc Esher
  • Using jQuery Mobile for your Next Web Application - Andy Matthews
  • Just Mock It! : Leveraging Mock Objects - Luis Majano

Stay tuned for more details of the topics in the schedule, and for future announcements in which we'll fill in some of the TBA slots. I hope you'll all agree that this looks to be the best cf.Objective() yet. See you there!

cf.Objective() 2011 - Now with 25% More Awesome!

I am pleased as punch to announce that we've been able to add a 5th track to cf.Objective() for 2011. This means that we'll now be bringing you 25% more of the awesome content for which cf.Objective() has been renowned!

We'll be announcing sessions, speakers and a complete schedule over the next week or so, but for now I can tell you that this year's tracks will be:

  • Architecture & Design in Software - bringing you both technical and theoretical talks to help you architect and design better, and more maintainable, software.
  • Integration & Tools - covering the many tools of our trade and the many ways with which we can integrate ColdFusion's awesomeness with other software and systems.
  • Process & Performance - topics about how we develop software and how we encourage it to perform as best it can.
  • Front-End Development - chock full of front-end goodness like HTML5, CSS3, Flex, JavaScript, AIR and some non-technology specific talks too.
  • Frameworks and OSS Tools - popular with many cf.Objective() attendees, frameworks can improve your productivity and ease maintenance, as can other tools produced by the CF community which will be featured.

I can now say with extreme confidence that this year's cf.Objective() will be overflowing with awesomesauce (that one's for you, Marc). I hope to see all of you there.

Why Contribute to Open Source Projects?

I was listening to show 83 of the CFHour podcast the other day and Dave asked the question of Kurt and Jason, "Why should someone contribute to an open source project?" Kurt had some very good answers which got me thinking about the question as well. Specifically, why do I contribute to open source software (OSS) projects? In this post I'll attempt to answer that question, as well as give some other reasons why one might choose to contribute to an OSS project. I hope that this post may motivate some others to contribute to OSS projects as well.

To Give Something Back

I have been a user of ColdFusion OSS for over a decade. I used Fusebox to create my first real CF web application and I've never looked back. OSS developer tools including Fusebox, Transfer, ColdSpring, Illudium, Model-Glue, Reactor, cfUniform, MXUnit, ValidateThis, ColdDoc, Lightwire and VarScoper have all helped me develop applications faster and better. OSS Solutions such as BlogCFC, Mura CMS and Codex Wiki have also been part of my career as a web developer. Although it doesn't really fall into the category of OSS, the content of many developers' blogs have also been a continual source of knowledge and inspiration.

These are all products of the ColdFusion Community, from which I have reaped tremendous benefit, so it seems only appropriate that I try to give something back. I stared that effort by creating a blog (around three years ago) and doing my best to blog regularly about whatever I am learning. Since then I've had the opportunity to release my own OSS as well as contribute to a number of existing projects including cfUniform, MXUnit and Model-Glue.

To Get to Collaborate with Really Smart People

How else would someone like me get a chance to work with the likes of Adam Drew, Adam Haskell, Bill Shelton, Chris Blackwell, Dan Skaggs, Dan Wilson, Dennis Clark, Ezra Parker, Jamie Krug, John Whish, Marc Esher, Matt Quackenbush, Mike Henke, Mike Rankin, Patrick McElhaney, Randy Merril, and TJ Downes? I mean seriously folks, it doesn't get much better than that.

Anyone would be keen to work with these smart and, for the most part, congenial folks, but for me it's extra special because I am a sole developer. I work out of my home in snowy Toronto, and have little interaction with other developers on my daily development work. Some of you may be in the same boat as me, and others may be part of a team, but if you're one of the senior developers on that team you may still get little opportunity to collaborate with other advanced developers. Contributing to an OSS project is an excellent way to do so.

It's Interesting and Challenging

Sometimes the work we have to do to bring home the bacon can be less than interesting and challenging. If we're lucky that's the minority of our daily tasks, but for some of us we're just not as challenged as we'd like to be in our regular job.

Writing OSS can introduce a lot of challenges, many of which you may never have had to face before. It is very different writing software that has to be generic enough to be useful to the masses. We cannot rely on conventions that work for one specific project or use case, and we have to be able to imagine our software being used in ways that we might not have originally envisioned. It's a very interesting perspective to take, and I find it to be particularly challenging.

It's Fun!

Not only is the work interesting and challenging, but it can be great fun too. How often in your job do you get to choose exactly what you want to work on? How often do you get an idea for a feature or enhancement but are told it's not a high enough priority? If you're working on an OSS project you can experiment as much as you like, and you can choose which features or enhancements you want to work on.

It's a Great Opportunity to Learn Something New

You will encounter problems when working on OSS that you likely have not encountered before, which present excellent learning opportunities. You can try out new tools and techniques on an OSS project. For example, if you've never done any unit testing, and cannot get permission from your boss to do so in your regular job, writing some code for an OSS project would be an excellent place to try it out. As another example, most OSS projects use source control so if you're not yet familiar with Subversion or Git contributing to a project that uses one of those would present an opportunity to learn about that tool.

Of course there's also the fact that you can learn a ton from the smart dudes already on the project, and even just learn by looking at the existing codebase.

It Looks Good on a Resume

More and more employers of developers are looking at community contributions. They like to see that you're blogging and contributing to mailing lists, and they really like to see you listed as a committer on an OSS project. It can also help with the work experience section of your resume. If your current development job only has you working in a limited number of areas you can flesh out your resume by doing something different on an OSS project.

It Doesn't Have to Be Code

Other than the Giving Something Back item, most of what I've discussed above is about what you can get out of contributing to the development of OSS, but if that's something you don't want to do (ask yourself why, first), then there are other ways to help too. Here are some ideas:

  • Write some documentation.
    Almost every OSS project could use more and/or better documentation, and I can pretty much guarantee that the author(s) would be pleased to have you volunteer.
  • Do a blog post.
    OSS projects thrive on users. The more people who use the software the better it can become, so let folks know about your favourite piece of OSS by blogging about it. If you don't have your own blog most projects and/or authors do, and they'd likely be glad to host a post of yours on their blog.
  • Give a presentation.
    User groups are always looking for presenters, and there's also the Online ColdFusion User Group. Get the word out on an OSS project by presenting on it.
  • Participate in the mailing list.
    Many OSS projects have their own mailing list to which users submit questions. Get involved by answering questions or contributing to the discussion in some way.

What Are You Waiting For?

So, what are you waiting for? Get out there and contribute. Choose a project that you're already using and see how you can get involved. Maybe there's a feature that you've always wanted. Maybe you've noticed a gap in the documentation. Maybe you've figured out how to do something cool with the project and can share it with others via a blog post. Whatever you choose I'm confident that it will be a rewarding process both for the project and for you.

cf.Objective() 2011 - Deliberations Have Begun

The Call for Speakers for cf.Objective() 2011 has now ended and thus begins the gargantuan task of choosing which sessions to include at this year's conference. The Content Advisory Board is already hard at work reviewing proposals which we'll be discussing over the next couple of weeks.

For those that are interested, we've received 154 proposals from 69 speakers. Most every topic you can imagine is represented, and we've had a large number of proposals in some topic areas that are fairly new to cf.Objective(). For example we've had 17 proposals for JavaScript talks, 9 of which involve jQuery, and 6 of those involve jQuery Mobile. We've had 13 proposals for talks about Mobile development, 9 proposals for talks on REST and 4 proposals for talks about noSQL databases.

As mentioned above we hope to have some announcements about the sessions and speakers chosen within the next two weeks or so.

What's New in ValidateThis 0.98 - Part II - New Validation Types

In addition to a bunch of neat new features, version 0.98 of ValidateThis also included a number of new validation types. One of the most important aspects of the framework, to me anyway, is the fact that it is incredibly extensible and allows you to easily create your own validation types, which is precisely what a number of folks including Adam Drew, Marc Esher and Chris Blackwell did. They were also kind enough to contribute those validation types to the framework so we can all benefit from them. In this post I'll describe each of the types that were added for version 0.98.

Each validation type accepts certain parameters, all of which have been documented in the ValidateThis Online Documentation, so I won't clutter up this post with that information. You can click on the name of each type in this post and be taken directly to its description in the docs if you wish. I'll just concentrate on describing what the validation type tests and suggestions for ways in which it might be useful.


cf.Objective() 2011 - Call For Speakers

The Call for Speakers for next year's cf.Objective() is now officially open. We'll be using our fancy new Engage app (the same one that's being used for collecting topic suggestions) to accept proposals to speak.

The Topic Suggestion Survey will continue to run during the Call for Speakers, so feel free to add new topics, and please visit often and cast your votes for newly added topics. After the Call for Speakers closes we will be using your feedback from the survey to help us program the best possible conference for you.

Please note that in order to be considered as a speaker for a session you must submit a proposal for that session, along with a detailed description, so even if you've suggested a topic via the survey you must submit a proposal for the topic to be considered.

The deadline to submit proposals to speak at the conference is January 9th, 2011, so start thinking about what you'd like to share with the ColdFusion community, and go submit some proposals.

Previous Entries / More Entries