It ' s simultaneously really easy to build , but also next to impossible . The actual coding of a system is really easy . The problem is actually defining how exactly it should work . uRestonFC is expressing a really natural annoyance Why doesn ' t it work in the intuitive way I just want to list a weekly schedule , have user log in , click on the class they want to be in , and then it enrolls them . The problem with that is that it becomes immensely complicated once you start asking the necessary questions . How long does a class run ? Is it yearly ? Do member pay yearly ? Quarterly ? By term ? Do you need to define terms in the system ? Are we expecting the admins to enter every single date in a yearly calendar ? Are there one off events ? Can you have something like a weekend coaching clinic that can be added ? What about biweekly events ? What about holidays ? What about camps ? What does a user log in entail ? Are there different levels of membership ? Can a person pay for 10 classes ? 10 private lessons and use them as they wish ? Just writing down what exactly it ' s supposed to do is actually quite extensive . If you do that well it ' s easy to program , but it ' s surprisingly hard to gather requirements .