The “horrible thing” in developer Erik Rose’s talk from this year’s PyCon is the Mediawiki syntax, but that’s just a jumping off point for one of the best overviews of data parsing that I’ve run across. If you’ve got a project that involves parsing, or are, like me, considering one, this talk is a must-watch.
This is PyCon, so much of the talk focuses on parsing in Python, but there’s plenty of broader, dare I say, “parsing philosophy” that make it well worth a watch even if you don’t end up using the specific Python parsing libraries Rose mentions.
Python developers, there’s a new way to get your apps running in the cloud — Amazon’s Elastic Beanstalk service now supports Python. Elastic Beanstalk previously supported PHP, Java and .NET apps.
The new Python support means that popular web frameworks like Django (which powers Instagram, Everyblock and other popular sites) are easier to deploy across Amazon’s suite of cloud services.
It also means that Amazon and Google App Engine are once again going head to head, this time over Google App Engine’s territory. Thanks to its Python-friendly environment, App Engine has been a favorite with Python developers looking to deploy apps on hosted services.
While it’s always been possible to host Python apps on Amazon, setting up and configuring apps can be a pain. That’s where Beanstalk comes in. For those who haven’t tried it, Elastic Beanstalk greatly simplifies the process of deploying your app to Amazon’s various cloud services, including setting up new EC2 instances, load balancing with Elastic Load Balancing, as well as scaling and managing your app after it’s deployed. Beanstalk also integrates with Git and virtualenv.
Originally Beanstalk had a distinctly Java bias to it, but since then it has expanded to handle Java, .NET and now Python as well. For more details on exactly how Beanstalk’s new Python support works, check out the Beanstalk overview page. Django developers should also read through Amazon’s guide to deploying a Django application to AWS Elastic Beanstalk.
Django is a web framework designed to help you build complex web applications simply and quickly. It’s written in the Python programming language.
Django takes it name from the early jazz guitarist Django Reinhardt, a gypsy savant who managed to play dazzling and electrifying runs on his instrument even though two of the fingers on his left hand were paralyzed in an accident when he was young.
Thus, it’s a fitting name for the framework: Django can do some very complex things with less code and a simpler execution than you’d expect. It doesn’t take a heavy hand to build with Django. The framework does the repetitive work for you, allowing you to get a working website up quickly and easily.
Continue Reading “Get Started With Django” »
Last time around, we installed Django and started building a blog application. We got Django’s built-in admin system up and running and explored some third-party libraries like the django-tagging project.
So far we have some cool administrative tools, but no website for the rest of the world to see. This time around, we’ll work on displaying our content to the world by building the URL patterns and constructing some “views” — a term with a very specific meaning within the Django framework.
Everything we’re going to do will make more sense if you understand how Django processes your visitor’s request. We went over some of this in our introduction, but here’s a quick refresher course.
Continue Reading “Use URL Patterns and Views in Django” »
This is part 4 of Webmonkey’s introductory Django tutorial. If you’re arriving here to learn about getting started with Django, start back at the beginning with Lesson 1.
When we left off last time, we had defined some URLs for our blog and constructed a custom view to handle displaying posts by tag. If you point your browser to our development URL at this point, (http://127.0.0.1:8000/blog/) you’ll still see a Django error page complaining that the template blog/list.html does not exist. Don’t panic, it’s true — we haven’t created it yet.
It’s time to tackle the last aspect of Django, the template syntax.
Continue Reading “Use Templates in Django” »