. . . . "Posts 20,031 If you are going to write it yourself from scratch, then you need to understand databases, including database design and SQL. You will need proficiency in whichever server-side programming language you choose to use (e.g. PHP, Ruby, Python, Java/JSP, C#/.NET just to name a few), and so forth." .