Tuesday, July 3, 2012

ColdFusion Koans Drive Extended

I've decided to extend the ColdFusion Koans contribution drive till the end of July!  The project received lots of great contributions, however, some potential contributors ran out of time while working on making their contributions awesome.

If you don't know what the drive is all about check out my original post.


Friday, June 15, 2012

Screencast: Contribute to the ColdFusion Koans in 3 Minutes Without Git!

You may have heard about my recent ColdFusion Koans Contribution Drive, if not I need to do a better job making noise about it!  Just to reiterate, I'm giving away TWO copies of ColdFusion builder to lucky participants.  I'm also giving away a sweet GitHub sticker to the next 8 people to add a test through GitHub.

Since GitHub may feel like a barrier to entry for some people I've created this screencast to show just how easy it is to contribute to the Koans project without even having to have git installed on your system.  GitHub has a fantastic online editor that will allow you to edit the Koans source files without actually affecting the master branch of the project.  When you edit a file online GitHub automatically will put a new copy of the project in your account where you can edit away then send me a "pull request" in two clicks!




Contribute To the ColdFusion Koans from Ryan Anklam on Vimeo.

Monday, June 4, 2012

*Updated* ColdFusion Koans Contribution Drive - Win A Copy Of CFBuilder!

**Update New Screencast**

I've just added a screencast to show you how easy it is to contribute without having to touch Git at all!  http://blog.bittersweetryan.com/2012/06/screencast-contribute-to-coldfusion.html

The title says it all, its time for another ColdFusion Koans contribution drive.  One thing that the title does not say is that I'll actually be giving away TWO copies of ColdFusion Builder!   Adobe has been generous enough to sponsor this drive and donate the two copies of ColdFusion Builder,  I can't thank them enough for their generosity.  

Now its our turn as a community to show Adobe what we can do.  Right now the Koans test suite sits at 80 lessons, I'd like to see that at least double. Please share the word with your fellow developers, tweet about it, blog about it.   Lets rise up and show Adobe how awesome the ColdFusion community really is and how much we care about the next generation of ColdFusion developers learning not only the ColdFusion language, but the proper way to write professional code.

In addition I'll  send a GitHub sticker for the first 9 people who submit a pull request that is brought into the Koans project.   Don't worry, there aren't many reasons why I won't accept a test; only if I find something incorrect with a test or a test is duplicating an existing test will I not pull something in.  In those cases I'll likely just ask you to correct something and resend the pull request instead of flat out rejecting anything.

I'd like to thank Mike Henke and John Whish (of ORM Book fame) who have graciously volunteered their time to help me review the entries to make sure the Koans project is a high quality learning tool for everyone.

What are the Koans?  


By now you are either ready to get to work or  you are completely lost.  If you are lost let me back up a second and explain the Koans project.  Here is a little introduction to the ColdFusion Koans post I did awhile back, and here is a screencast on getting started with the Koans.   In summary, the Koans are a set of unit tests that are designed to teach people ColdFusion and Unit testing at the same time.  You download the Koans, copy the directory to your webroot, open index.cfm, then edit the source code to make all the tests pass.

What should I add?


There is a Readme included in the project's source file that has a few suggested topics such as new ColdFusion 10 functionality, more unit testing lessons, and object oriented topics.   However feel free to add anything you think would be useful to someone learning unit testing or ColdFusion.  Add a test for a particular tag you find yourself using a lot.   Add a test for a pattern you find particularly useful.  Be creative!

I don't know anything about unit testing. 


Thats just fine, and the Koans are for you!  I suggest working through the Koans (you'll even get an entry for doing so, see the "How Will The Contest Work") and I'm sure you'll learn a thing or two about unit testing and come up with an idea or two to make the Koans even better.


How Will The Contest Work?

Now that I've gotten that out of the way let me tell you how the contest will work.   Each new test added to the Koans project will get you one entry into the drawing  (If you have no clue where to start see the "I don't know GitHub Section" below).  If you add 5 new tests you'll get 5 entries into the drawing.   If you complete the Koans project and tweet a picture of the completed koans with the hash tags #ColdFusion #Koans you'll get an entry into the drawing.   If you blog about the Koans you'll get an entry into the drawing.   I'll be selecting the winners on June 30th at approximately 12:00 PM central time.

I Don't Know Git or GitHub!


This is yet another reason to contribute, adding a simple test and sending me a pull request is a great introduction to Git and GitHub!  The best part is that GitHub makes things so easy you don't even have to install Git or know a single Git command to contribute.   To do a Git-less pull request follow these steps:













  • Click on the Download as .zip link to download the Koans source code.














  • Extract the .zip file into your webroot and rename it to something a bit more friendly, I use ColdFusion-Koans.
  • Open the  directory in your browser, typically something like http://localhost/ColdFusion-Koans/index.cfm to make sure everything is working.
  • Open any of the Lesson files in your favorite IDE or Text Editor.  The lesson files are located in the "Koans"  directory, each lesson has its on .cfc.
  • Add a new test to any of the lessons by adding a new function that is public in visibility.
  • Refresh index.cfm in your browser to make sure that everything looks good.
  • Assuming that you have a GitHub account (if you don't it only takes a second to signup), goto the Koans project page and browse to the .cfc file that you just edited.  Click on the "Edit This File" button.  
  • Copy and paste your code from your IDE into the text editor GitHub provides.
  • Add a descriptive Commit Message below the code and click on "Propose File Change"








That's it.  I'll get the pull request and bring your changes in.

If you have any questions please feel free to contact me at ryan.anklam@gmail.com or on twitter at @bittersweetryan.  Good Luck Everyone!

Tuesday, May 22, 2012

Link To "JavaScript Fundamentals for ColdFusion Developers" Slides From cfObjective 2012

In case anybody comes here looking for my cfObjective presentation, here is a link to the slides:

http://bittersweetryan.github.com/javascript-for-coldfusion-devs/

The deck can be navigated by using the "left" and "right" arrows on your keyboard or by clicking on the left and right arrows on the presentation itself.

If you didn't attend my presentation, this deck contains a lot of code, and its all embedded and runnable within the presentation itself.  Clicking on the "Run" button in any of the slides will demonstrate the concepts being presented in your browsers console.

Notes From the cfObjective Sessions I Attended

I'd like to share the notes I took during this years cfObjective.  All the sessions I attended were excellent and I learned a lot listening to such smart people!

Building High Availability Services with Elliott Sprehn


https://www.evernote.com/shard/s20/sh/59782013-3b56-4e51-bfb8-20a60ebbd747/73031e9dde99bd9dff631384ad2b8ebf

HTTP for CF Developers with Nathan Mische


https://www.evernote.com/shard/s20/sh/5688f1d5-98fb-4d7f-bf80-49522f623e78/8cb5b0513343bc26ddf3ce78756c256a

Do's & Dont's Regarding Performance with Gert Franz


https://www.evernote.com/shard/s20/sh/835523f7-14dd-4d6e-9917-b5155f56337b/4012466727f0564a144f9f8c05ee2519

CFML Mythbusters with Mark Drew


https://www.evernote.com/shard/s20/sh/a266f107-2226-4c09-9bf0-59b93a70a473/f89b2ca939a6ee3c90b023c0c1a18374

Deep Dive: ColdFusion ORM with John Whish


https://www.evernote.com/shard/s20/sh/634c75cc-02bb-428a-a7a1-9fb779293d65/ca66cd5c88b68326ad29cba0eb24b1e3

Writing Secure CFML with Pete Freitag


https://www.evernote.com/shard/s20/sh/633924d8-0b74-41fb-8377-6adf3c7f388c/bc7c84f07d11dce1b9cdac8ff530f073

Production Ready JavaScript with Elliott Sprehn


https://www.evernote.com/shard/s20/sh/c6074df0-6253-4c4c-9145-f9aa0432d13d/89aa45a9e3699f4af86a91a23186c0db

Concurrency Zen with Marc Esher 


Marc must be such a compelling speaker that I was too focused to take notes because they really stink for this session.


https://www.evernote.com/shard/s20/sh/01686213-34ce-4108-948e-3fb0e9ceeb80/397ce9c7b0d83c6219d0dd2d30db4d44

Speedy Websites Through Better FrontEnd Optimizations with Peter J. Farrell


https://www.evernote.com/shard/s20/sh/d2996a7b-0048-44b6-af73-2a46371fd47a/9bedebc804b944574f3d1772c42a01d7
Fork me on GitHub