Anvil’s Shallow Learning Curve
When evaluating a new dev tool, a common question is “How long will it take to learn?”. Lengthy learning curves cost time, effort, and money - but one of the beauties of Anvil is its shallow learning curve.
Shonna Smith
Product Manager, Consultant
Anvil lets you become productive in days, not months. This isn’t just a marketing claim, it’s an experience shared by many Anvil users. Let’s take a look at why Anvil is quick to learn.
Why Is Anvil Easy To Learn?
1. It’s All Python
It’s all Python, and much like Python, the learning curve of Anvil is gentle and shallow.
You don’t need to learn new languages or frameworks for each layer of your web app - saving you time. You can use Python for UI components, front-end code, back-end code and interacting with your database.
# Simple Anvil event handler - just Python
def button_click(self, **event_args):
# Updating the display text of a label component
self.output_label.text = f"Hello, {self.name_box.text}!"
2. No Boilerplate Code
Anvil eliminates the need for boiler plate code and setup. The platform wraps common tasks like database access, user authentication, and API endpoints in easy-to-use APIs, letting you focus on what your application does.
Consider how much effort you typically spend on:
- Setting up projects
- Configuring build tools
- Managing deployment pipelines
- Creating databases and access controls
- Building secure user authentication
- Configuring email services and servers
- Checking software security
- Developing API endpoints
- Setting up version control
- Implementing secrets management
- Integrating external services
- Connecting to IoT devices
Anvil simplifies and handles all this and more for you, dramatically saving you time. It has the added benefit of making your app more secure - less code equals fewer opportunities for vulnerabilities.
Jacque Van Niekerk
Data Scientist, CFC Underwriting
3. Extensive Documentation
Anvil’s documentation and tutorials are extensive. They cover everything from the basics to advanced topics, making it easy to get up to speed.
Additionally, we have an extremely active community forum where you can ask questions if you’re stuck, share knowledge, and get help from our team.
4. Traditional Web Architecture
Anvil follows the traditional web architecture approach, with a separation between client and server code. This makes it familiar, easy to understand, and maintain.
For people who aren’t familiar with web architecture, i.e. non-web developers, it’s still useful. The clear separation of concerns makes it easier for you to debug and think about. The underlying principles are also widely understood by other people, meaning they can help even without experience of Anvil.
A Different Kind of Investment With Real-World Impact
Anvil being quick to learn means:
- Faster time-to-market for your applications
- Reduced training costs for your team
- Lower risk when evaluating the platform
- Increased productivity rather than delayed returns
And the impact has been felt by many Anvil users:
Peter Fison
Managing Director, South West London TV
Next Steps
Ready to see how shallow Anvil’s learning curve is? Or do you have some questions?
- Try Anvil’s intro tutorial
- Ask questions on our friendly community forum
- Talk to an Anvil engineer to discuss your specific use case
More about Anvil
If you’re new here, welcome! Anvil is a platform for building full-stack web apps with nothing but Python. No need to wrestle with JS, HTML, CSS, Python, SQL and all their frameworks – just build it all in Python.
Want to build an app of your own? Get started with one of our tutorials:
Data Dashboard
Build Database-Backed Apps
Build a Simple Feedback Form
Build a data-entry app, and learn the techniques fundamental to building any Anvil app. In this tutorial, you will:
- Write server-side Python
- Build your User Interface
- Write client-side Python
- Store data in a database
- Deploy your app