When I first relaunched Some Random Dude, which feels like eons ago, I made the big promise that I was going to release everything I made as open source. That idea is still very important to me, but it has literally been years and I still haven’t released a fully-completed release. I could go on for paragraphs on the significantly understandable reasons why that has happened, but neither you nor I care. What is important to note was that I wanted to release something that people would find useful and easy to use. This essentially put me in the corner of making two themes – one for my personal use and one for public use. This was a nightmare. So, a year or so ago, I toned it down and made my own site less code-bloaty in the hope that it would finally get me to the point where i could proudly release the theme. Well, that didn’t work either. The truth is, I just can’t make a theme that I can use and a separate theme that you can use. This by no means has deterred me from releasing my theme, I am just going down a different route with significantly less resistance.
When I first got started on this idea, I was very interested in always presenting something that was semi-finished and as polished as possible. This resulted in the presentation time taking longer than the actual work I was presenting. Additionally, getting my work to the polished point I aimed for would become so overbearing that I would have a hard time seeing the end of the tunnel. For some people with the slow and steady approach, this may seem simple, but for someone that’s a bit more sporadic, it’s a big deal.
So, things are a little different this time around. I am making a smallish, yet significant redesign to the site. This new design will be made 100% for my needs – I just can’t simply create a theme for myself AND for the public. However, all the code and assets used on my site will be offered up as open source. The new design will be focused on forward-compatibility and speed. The number one goal will be for the theme to be light and load quickly. The theme will extensively use HTML5 and CSS3 for layout, visuals and motion and will not put much effort in supporting browsers which don’t play nice with what we all will be using 2 or 3 years from now. For many, this is not going to be appropriate for them, which is understandable, but that’s just the only way this can feasibly happen. Here are some specific points that will be addressed:
- Displaying of less content on the home page for a greater emphasis on specific content, smaller page size and less database queries.
- Creating a more segmented layout between content meant for consumption (e.g., blog posts) and content meant for discovery (e.g., related posts).
- Less content, simpler code, easier maintenance and a lighter footprint.
- Some interface considerations for viewing on mobile and tablet devices.
I have already begun the buildout of this theme. For below are the rules I have made, for better or for worse. I am dead-set on making this project happen and seeing it to completion. To those ends, these rules will be followed as though they were the law:
- The design will happen in real-time. There will be no effort put into showing polished steps of the progress. What you see is where I currently am in the process.
- All work will be posted real time on my server. It will be ugly from time to time. I am OK with that.
- The project’s code will be updated and available at any time on GitHub (project page). Note, the code commits will also be real-time and in no way indicative of stable versions (until explicitly communicated).
- The theme will be built in HTML5 and use heavy amounts of CSS3. There will little if any backward compatibility.
- The code is going to be the exact code i use for myself. To the semicolon.
- There will be a strong effort to write good code, but i am not interested in winning a popularity contest from hardcore software engineers. If my final code does not meet your expectations, fix it.
- This is going to happen, but at my own pace. If you want to speed up the process, contribute.
- Striving for perfection is nice, but I am not going to stop the train whenever I run into a hitch. 100% good > 90% perfect.
- I am done caring how people will think of this project in a healthy sort-of-way. If you don’t like it, don’t use it.
It will be interesting to see how this process works out. I am trying to push away the noise and distraction that I have foisted upon myself for this project. With any luck, this greater focus on actually getting stuff done will help me get this damned thing finished. I would love your help in this process. Feel free to leave a comment on this post if you’d like to help.