I'm having some thoughts and reactions tonight that don't fit easily into Tweet-sized bites, so thought I would get back into this blog thing.
I've recently been poking around various software projects, tutorials, and blogs, trying to brush up on some recent technology. It's been the usual fare. Pull the latest code and then muster a good 15 to 20 minutes of straight concentration time to get my brain wrapped around what this developer is trying to accomplish.
Well, I had an incredibility refreshing experience today. I contacted a coworker for some advice on technology and technique. He offered example code from his current project. So I cloned the repository and cracked it open.
What a refreshing change. The project structure was clean, organized, and intuitive. Ok, maybe I'm biased because I know this person, I've worked with him for 2+ years, and I know how he thinks. But everything just made sense and it was simple! I opened the build file, and I could read the entire script without scrolling. Imagine that. Oh, and it's not like he was hiding complexity by using the latest and greatest build tool. This is an old-school XML build file, you know, the stuff that gets the snarky laughs at the conferences? Well, it didn't matter because it was simple and understandable. And I'll take old-school any day when it doesn't cause me to run through a mental boot camp just to understand how the damn project is built.
So, to the community of book authors, bloggers, open source developers, thank you for your efforts. If you are interested in advice on how to further expand the reach of your examples and projects:
1. Keep it simple (seems obvious, but very few achieve simplicity).
2. Get off your architectural high horse every so often and take time to smell the flowers.
3. Make your intent as clear as possible.
3. Keep it simple.