Can you guys think of other projects that will approximately take 20 days? Any language/framework suggestions? I want this to be a challenge and I'm not sure if coding a blog engine would be...
To answer your question in the title: Yes.
If you want to make it more challenging, you could try picking up a framework. CodeIgniter is a very good framework for beginners, as it has excellent and thorough documentation. It actually has a very short tutorial on creating an extremely simple blog.
I don't know if you know how to use OOP, but if you don't, learning a framework will require you to learn the OOP paradigm as well as most PHP frameworks out there make use of it. Plus you'll learn about MVC (model-view-controller), which is a way of seperating concerns (seperating your presentation from your business logic, etc). As things like OOP, MVC, and so on are a lot to take in, I would highly recommend building a blog application as it will allow you to focus on learning about the new stuff rather than getting bothered about the details of how your application should work. You can also make it as complicated or as simple as you like.
I think learning how to use objects, classes, and so on is pretty challenging in itself. And as someone else has said there's a lot of stuff covered in a basic blog application - working with databases, sanitizing user input, managing RSS Feeds, calendars, spam filters, etc.
The content is written by members of the stackoverflow.com community.
It is licensed under cc-wiki