Back in 2006, DevCentral was just a toddler. The great thing about toddlers is they grow like crazy, constantly learning new things and building skills at a rapid pace. Such was the case for us. I was a customer at the time and I got a call from Jeff, Joe, and Colin, who wanted to show off the new iRules wiki. The wiki was an important step in our growth since the iRules knowledge was mostly tribal for customers. I built up my knowledge base before the wiki release by keeping bookmarks for any thread UnRuleY, Bl0ndie, or Dr Teeth weighed in on and testing and modifying every rule they wrote that I could mock up in my lab.

So why am I waxing nostalgic about the wiki release that happened nearly 10 years ago? Well, along with iRules command and event documentation, the release of the wiki also introduced the codeshare. Documentation is great, but the codeshare was another step in building community, providing a repository for people to upload code that could be helpful to others, either directly in plug-and-play fashion, or indirectly by showing how commands could be used, or protocols could be sliced and diced.

And this brings us to the point of this article. The codeshare has been on our wiki platforms since its inception, but just recently we’ve moved it onto our DevCentral Codeshareprimary application platform. This has many advantages on the administrative side (think AAA) but you don’t care about that. What’s in it for you?

  • Now that the codeshare is integrated, it is part of the gamification engine. So not only do you get points for sharing code, but you can award points to others when you find code that’s useful for you or you just appreciate the functionality and beauty of someone’s work.
  • All the individual codeshares in the wiki (iRules, iControl, tmsh, iCall, etc) are now consolidated into a single codeshare. Sorting is as simple as clicking on a tag. 
  • You can favorite codeshare samples so they’ll be readily available on your profile page.
  • Comments are available so you can ask clarifying questions, or provide clarifying answers.
  • Adding codeshare samples is easy! No need to understand the wiki markup language, just click the “+ Add Snippet” button and you’re good to go!
  • Editing is just as easy, and can be done on any community-contributed entry assuming you have earned enough reputation points to do so. 
  • In the event something catastrophic happens on an edit, versioning allows for easy rollback.
  • Code can be uploaded as text in a text block or attached as one or more files. The files can be removed/replaced as well as necessary.
  • You have the ability to specify the tmos version your sample was verified on. This is very helpful for people searching for code that will work on their version of tmos since commands are introduced and deprecated with new releases.

DevCentral Codeshare Snippet

So what are we still working on? Well, the search is not as clear as it should be and will be cleaned up in coming release, allowing you to select additive filters to narrow down results. We're working on advanced sorting capability as well. Even more exciting on the road map is repository support such as a git integration, which would allow us to support automatic push/pull from other software tools for those that are so inclined.

Please check out the new codeshare and let us know what you think and if you encounter any bugs or have enhancement requests!