The General Idea
As part of learning how to program in Ruby on Rails and gaining an understanding of what it takes to build a website, I decided to build a blog that connects to Blogger, checks for posts and pulls them down at regular intervals, and displays them in a reasonable fashion. This is one of the original “Hello World!” tasks of Ruby on Rails and, for me since I’m learning, seems to be a great place to start.
The only thing extra that I’m really adding is the ability to talk to the Blogger API. I’m not doing this to recreate Blogger as a service because it’s already polished and has lots of functionality that I don’t need to recreate since I’m not creating this blog as a business or service. For me, it’s simply a way to try out integrating functionality from somebody else into a website and to learn.
Current Status
I have the code base started and pushed to Github (now apparently Microsoft). At this point, the only things that the project has are:
- The framework for the project created by rails new
- The scaffold for the blog object object that describes the actual blog(s) that the user will create posts under
- A single model test to make sure that a blog_id exists and the validation in the model that it is there.
The Plan
Immediate Goals
These are short term goals to get just the blog meta information working. Because it’s the first part of the API that I’ll be calling I’m sure this is where I’ll take the biggest hit in time spent learning what to do and what not to do. From there, I’ll move on to the larger/longer term goals of making this actually look like a blog.
- Create a Google account for test purposes, as recommended, so that I don’t accidentally mess with this blog.
- Implement a page to “sign up” a blog to be pulled.
- Tests for the “sign up” page
- Implement the API calls for the blog
- Implement a page to display the blog information
- TESTS!
- Setup hosting for the site so that I can share the results of it here.
Larger Goals
After getting the above done and working, I’ll need to flesh out the rest of what will make this an actual blog site. My initial plan is to implement the following of the Blogger concepts and the attendant pages and actions to make them make sense:
- Posts
- Comments
- Pages
I’m leaving off the Users because that seems, at this point, to be superfluous to a learning type site.
As I work my way through this project, I plan to update this blog with things that I’ve found to be interesting or troublesome. My hope is that by posting this initial post and updates it will be a way to keep myself accountable to actually doing this, that it might be helpful to somebody, and that it will show you how I think through and process problems. If you have any suggestions or questions, I would be happy to consider/answer them.
Thank you all for your time in reading this!
Side Notes
It has been a while since I’ve used Markdown but given it’s use at Github and the Markdown Here extension for Chrome, I thought I’d try it out to format this message. My thoughts on it are that the links make the text look a little messy. That being said, it is really nice to see where the links lead without having to hover over them or click through the link creation dialog to actually create one.