Why one more technical blog?
At the most basic level, as some scientists think, the desire to help others seems to be innate. Producing technical writing elsewhere provided some evidence this website can be useful and appreciated.
So how can we help? We think we can do the most good by focusing on a single mission: helping our readers reach the next level of professional expertise as software developers. That means helping get your job done by helping you solve the problem at hand, but also doing so in a way that helps you be more prepared to tackle similar challenges on your own. It means explaining the best way to get the job done, when there is a consensus, and explaining the alternatives when there isn't. In our post and articles we want to place why on an equal footing with how. The path from journeyman to master is as much about learning why as it is learning how to solve a programming problem.
This effort is also born of experience as a consumer of technical writing. In many cases that experience was one of frustration at inaccurate, incomplete, and badly written information about topics that were critical to getting the job done. The search for information and the struggle to make sense of it was time we didn't need to spend and can't get back. Helping others overcome the same obstacles seems like a good way to give back to the community, in thanks for the good material that's already out there, and to help raise up the community so there is more good information everywhere.
As the concept for this site was coming together some principles emerged to hold the whole thing together. They are the structure that supports the reliable delivery of useful information.
Write what you know
Although there is a good argument why the maxim to "write what you know" shouldn't apply to some types of writing, it's probably safe to say writing about technical matters should be constrained by an author's modest assessment of what he knows. Writing what we know will always be a foundational principle of this website.
Know your audience
There is another aspect of knowing that is also relevant: knowing the audience is as important as knowing the material. It's in knowing the audience that much technical writing fails. In many cases IT writing is aimed simultaneously at experts and novices, and succeeds only at causing exasperation or confusion. This perspective is the product of direct personal experience, mostly as a novice audience. Accordingly, we intend to keep a specific audience profile in mind for each technical article we publish.
Stand on the shoulders of giants
The depth and breadth of information technology is both inspiring--there's always something new to learn--and daunting: there's always something new to learn! Our successes are built on the inspiration and toil of others who have had a profound influence on the field, and our future in it, even if we don't know their names. Accordingly, we will give credit where it's due and when someone has already written well on a relevant topic we won't ignore their work, or try to duplicate it, we'll highlight it.
Acknowledge the contributions of others
We will also cite our references. We think the background research from which we built our solutions should be documented and shared. Part of the value of our technical articles is providing you with a curated list of references so you know where to go next as you take on challenges on your own.
"If you dislike change, you're going to dislike irrelevance even more."
-- Gen. Eric Shinseki, USA, Ret.
One of the hardest ongoing challenges of an IT professional is keeping up with change. Likewise, we recognize that keeping up with change will be one of the most difficult challenges of maintaining our library of technical articles and companion repositories. We expect our way of keeping up will evolve along with the material itself.
While we are striving to provide information that reliably reflects best practices in software development, we know we don't know everything and we are as fallible as anyone else. Accordingly, we will encourage discussion, provide a forum for doing so, and incorporate reliable suggestions into our work.
We hope you'll find the site helpful and we look forward to hearing from you in the comments and on GitHub. You can also reach us with non-public comments if you need to.
Now let's get started!