Abstractions and the Frappe Framework

Shivam Mishra (~scmmishra)


Description:

Abstractions build frameworks, ranking from the least abstractions to the highest, one would probably start with Flask and end at Django, what most devs don't know about is the Frappe framework, it's one of the most powerful web frameworks written in Python, MIT Licensed, developed over 8 years by a small team in India.

This talk focuses on how web frameworks are built, right from PEP-3333 to diving into the code of these abstractions that help build frameworks like Flask, Django and Frappe and how these principles can help us create almost anything using Python.

Contents of the talk.

The talk will progress through three sections.

What makes a framework

This Section covers the basics of a web framework implementation, includes concepts like WSGI, ORMs, etc.

  • Foundation
  • Design Patterns
  • Abstractions
  • Batteries

How to use to design patterns to build real world Abstractions

Here the focus is on exploring a few design patterns beyond the Vehicle-Car-Truck or Animal-Cat-Dog examples.

How Batteries help built the most powerful framework on the planet

The last section of the talk focuses on how Frappe framework uses the power of abstractions, and some clever use of rather simple design patterns that allows rapid development of apps for the web.

Take-aways for the audience

  • Understanding the use of good design patterns beyond the toy examples of Animal-Cat-Dog
  • Dive into the codebase of popular web frameworks and their implementations of common abstractions around DB, Errors, Templating etc.
  • An introduction to the Frappe framework and the concept of DocTypes (A meta driven approach for creating DB models and controllers)

Prerequisites:

  • Object Oriented Python
  • Understanding of how HTTP works
  • Experience with at-least one web framework

Speaker Info:

I'm a developer from Mumbai, working at Frappe Technologies. Along with a very passionate team and many contributors across the globe, I help build and maintain the MIT licensed Frappe framework, and ERPNext, the world's best Open Source ERP.

Speaker Links:

Id: 1207
Section: Web development
Type: Talks
Target Audience: Intermediate
Last Updated: