A software package that makes writing programs easier by providing all the “plumbing” for a
particular type of task (like writing a web app), allowing programmers to just “fill in the blanks” with their own project-specific needs. For instance, Web development frameworks like Ruby on Rails (written in Ruby, meaning programmers use Ruby to do the “fill in the blanks” tasks) and Django (written in Python), have easy-to-use, built-in support for common web development tasks, such as reading and writing to a database, writing content in html, and so forth. Watch Django and Ruby creators discuss the merits of their frameworks on DjangoProject.com.