Intelligent Tutoring Systems (ITSs) have proved useful in a variety of domains, but are notoriously resource intensive to build. We have created two programs ("tutor generators") for assisting users in building ITSs conforming to two prominent intelligent tutoring paradigms: model-tracing and constraint-based. We tested the tools by using them to create two tutors (one following each paradigm). We found that it was easier to build a generic ITS generator based on the constraint-based paradigm, but that the tutor generator based on the model-tracing paradigm was more feature rich. Our generators are based on Java and therefore platform independent. They can generate applications with rich user interaction and powerful theory-based remediation capabilities. Our constraint-based tutor generator has a generic constraint evaluator which can support declarative development of constraints for several domains, whereas our model-tracing implementation requires the rules to be coded in the JESS language.