No, neither are required to make a "very crude forum". In fact, neither are required for anything at all. One of the principles of object-oriented programming that every OOP-centric class teaches is that there's nothing you can do with objects that you couldn't otherwise do without them. They just make some things easier. I've never made a forum, but right now I can imagine making one with objects and one without objects, and I'm not sure which would be more difficult. If it's just going to be, as you say, "crude", you can probably do without templates and without OOP. But I do recommend that you take extra pains to keep logic and presentation separate, and this is perhaps the most direct advantage of template systems.