As I continue working on my new book, Learning Spring Boot, I have really noticed the value of communities today compared to when I became a professional software developer back in 1997.
Back then, there were news groups and mailing lists, but not the same indexing of EVERYTHING, no Google Groups (which just made searching/working with news groups MUCH easier), no panacea of discussion forums, and no proliferation of blog sites. These things existed, but you wouldn’t find so many, and so dedicated (like trying to write a query for your trade novel, one of my favorites). And open source hadn’t taken root like it has now. Your prospects of finding an open source project with a thriving community to serve your needs were MUCH less likely.
So how exactly did we survive without such a rich community? Sometimes I’m mystified. Back then, I would comb the book store for help. It also meant I had to hunker down and really go through code myself to figure stuff out. What’s that you say? You think that I’m whining about having to actually WORK back then? I worked then, and I work now. It’s just different.
Today, perhaps there are more people willing to help you get over a hump. Back then, getting help meant walking across my cubicle hallway and asking the right team guru questions. Over time, I would pick up my own set of skills and quirks. And others recognized that. Eventually others would come to me asking for assistance.
Back then, I knew someone that NEVER deleted emails. I didn’t comprehend such a concept. Today, I’m a tried-and-true believer in keeping everything. Knowledge is power, and having my entire history of communication available has been useful. In fact, when I finally moved my personal email off the telco provider I’d used for years, I searched for someone that could handle migrating all that email to my new account.
Today, it seems impossible to develop anything in a vacuum. I tap twitter, discussion forums, and other places. The latest incredibly powerful social tool for interacting, getting feedback, and making substantive progress if GitHub! Git is a powerful tool for version management, but you can’t realize its true value until you work on a community project with forks, issues to discuss things, and ultimately pull requests.
I launched my book writing endeavor by blogging and tweeting what I was up to. On my previous book, I got enough attention that I was able to shift off a tool that had fallen into disuse and pick something better. I even got quotes from project leads into my book.
This time, I attracted the attention of both Dan Allen, the project lead for Asciidoctor, as well as an editor from Packt Publishing. I am building a new Asciidoctor backend for Packt, and this might be the track that makes it mainstream. Dan quickly helped me get going on something that I couldn’t make heads or tails of when I read it by myself. If Packt bites at somehow making this backend an officially accepted medium, the lives of MANY future authors may be made simpler while also improving the content of future titles. (That applies to my own future writings!)
To paraphrase Hugh Williams, Pivotal’s new SVP, skills are fleeting. The knowledge you are using today will probably be totally replaced ten years from now. But what’s critical is judgment, ability to learn, and willingness to interact with others. And nothing serves that better than a strong community.