| Issue #147: Top of 2014 Weekly dose of all things Python. | | Hey Everyone, This is our yearly roundup issue of the top articles and projects of 2014. Thanks to our sponsor, Real Python, for helping to make this possible! Here's to a great 2015 ahead! Want to share this list? Forward it to someone or send them a link to the permalink at pycoders.com/2014. Share an article with us and if it lands in newsletter get highlighted as a contributor in the newsletter! Like what we are doing? Check us out on on twitter too! | | Projects robobrowser A library for web scraping built on Requests and BeautifulSoup. Like Mechanize, but with tests, docs, and a Pythonic interface. github.com Shared by @whatthecarp mining github.com Shared by @mgrouchy wagtail Wagtail is a Django content management system with a fresh take. Beautifully designed so if you are looking for an alternative to Django CMS here is your shot. github.com Shared by @tomd huey A multi-threaded task queue for Python. github.com Shared by @myusuf3 Flask API Love Django REST Framework? You can now enjoy the same beautiful APIs within Flask. flaskapi.org Shared by @myusuf3 Mario Level 1 In Python Recreating the first level in Mario using PyGame. Awesome for anyone interested in build a 2D platformer. github.com Shared by @myusuf3 Algorithms A collection of Data Structures and Algorithms in Python. github.com Shared by @myusuf3 rumps Ridiculously Uncomplicated Mac OSX Python Status Bar Apps! Got a little app you want to write you can do it Python now! github.com Shared by @myusuf3 psdash Nice looking web dashboard written in Flask that can display data about your system and its processes as returned by psutil. github.com Shared by @mgrouchy 500 Lines or Less Awesome repository of how things work with computers and software. I am sure we have shared this before but its definitely worth another look. github.com Shared by @myusuf3 IPython Notebook Themes Awesome theme customization for IPython Notebooks! github.com Shared by @myusuf3 Jarvis An attempt to create a Jarvis-like personal assistant with Python. github.com Shared by @mgrouchy Python Practice Projects A series of Python practice projects to help your hone your craft with deliberate practice. pythonpracticeprojects.com Shared by @mgrouchy Flask-Foundation A foundation leveraging best practices that you can use to start building your flask applications with. github.com Shared by @mgrouchy Stellar Fast database snapshots for development. It's like Git for databases. github.com Shared by @versae percol Nice. Percol is an interactive grep tool in your terminal. Check out the README for a demo and more information. github.com Shared by @mgrouchy magpie Git-Backed Evernote Replacement. github.com Shared by @myusuf3 Explore Flask The Explore Flask book is now freely available online. Time to upgrade your Flask knowledge. exploreflask.com Shared by @mgrouchy The Stolen Crown RPG Cool! A Fantasy RPG built with Python and PyGame. github.com Shared by @mgrouchy django-quicky A collection of tools to get you focused on what you building rather than the usual nitty gritty, tons of of cool little functionality to speed things up! github.com Shared by @myusuf3 doitlive Cool little hack to make you look like a superstar during presentations and screencasts. It allows you to write code before hand, and replays the commands in a fake terminal session as you type random characters. github.com Shared by @myusuf3 Data Science 45 minute intros. 45 minute Ipython notebook presentations for getting starting with basic programming, statistics and machine learning techniques. github.com Shared by @mgrouchy battleschool This is neat. Set up your development environment using ansible in a similar way you would set up your machine with something like Boxen. github.com Shared by @mgrouchy awesome-python A curated list of awesome Python resources, frameworks, libraries and software. github.com Shared by @mgrouchy inbox Inbox platform launched earlier this week, with tons of SDKs and libraries! This is the one in Python. Great premise and should enable people to do some great stuff! github.com Shared by @myusuf3 py-must-watch A great collection of must watch Python videos. Great resource to start levelling up your Python knowledge. github.com Shared by @STajbakhsh awesome-machine-learning A curated list of awesome Machine Learning frameworks, libraries and software. github.com Shared by @myusuf3 python-fields Writing container classes often requires the writing of significant amounts of boilerplate. Avoid all of that with the fields module which offers a way to avoid it. github.com Shared by @mgrouchy awesome-django Over the last few issues there have been other "awesome" collections. If you are into Django, this is the one for you! github.com Shared by @myusuf3 Toga A Python native, OS native GUI toolkit. Very cool project for building Native GUI apps with Python. pybee.org Shared by @mgrouchy doorman Keeps your secrets, secret. Allows you to put the keys, passwords and things you want to keep secret in a config file and then hide and show your secrets. github.com Shared by @halitalptekin vim-bootstrap A simple website that helps you bootstrap your .vimrc for your preferred language. github.com Shared by @mgrouchy python-patterns A collection of common Python design patterns and idioms. github.com Shared by @mgrouchy flask-xxl Interesting. A best practices approach to creating large web apps, with the goal of making flask feel more like django. github.com Shared by @mgrouchy discover-flask A weekly series of Screencasts covering an introduction to Flask. github.com Shared by @mgrouchy awesome-sqlalchemy Lots of really awesome SQLAlchemy resources. github.com Shared by @mgrouchy lenscap Lenscap is a static site generator for creating beautiful photo narratives github.com Shared by @myusuf3 schematics A Python library to combine types into structures, validate them, and transform your data based on simple descriptions. github.com Shared by @mgrouchy home-assistant Home automation with Python. github.com Shared by @mgrouchy 500 Lines or Less Awesome repository of how things work with computers and software. I am sure we have shared this before but its definitely worth another look. github.com Shared by @myusuf3 tortilla Very cool project for consuming APIs made easy. Give it a look if you are tried of writing API wrappers. github.com Shared by @myusuf3 iterstuff A collection of tools for working with iterators. github.com Shared by @benlast Articles Python 201: Properties pythonlibrary.org Shared by @myusuf3 Reasons for Using IPython Interactively You might have heard all the talk about the wonderful IPython notebooks, here are some reasons why you should check out the IPython interactive shell. fastml.com Shared by @myusuf3 A Django Code Organization Strategy I like to see this type of writing when is comes to software and how it is laid out. This covers various options and solving problems and proposes a few solutions. Favourite is in the comments. github.io Shared by @myusuf3 How to Save 90% on Your S3 Bill Awesome find, everyone hosting anything on S3 will want to read this. appneta.com Shared by @myusuf3 Full Stack Python A great guide of dealing with the full stack required with creating a Python web application. Topics cover the entire stack from servers, web frameworks, security and source control. fullstackpython.com Shared by @mgrouchy Starting A Python Project The Right Way Have an idea for your next, or first, Python project? Well check out this article to make sure you are getting started the right way! jeffknupp.com Shared by @mgrouchy 14 Minimal Web Frameworks for Python Want to try a lighter web framework then Django? Check out these minimal Python web frameworks. codecondo.com Shared by @alexivanovs Saying Goodbye To Python Amazing article and growth and the real strength of the Python community. ianbicking.org Shared by @myusuf3 A Celery-like Python Task Queue in 55 Lines of Code Nice tutorial about how one would go about starting to create a task queue in Python. jeffknupp.com Shared by @mgrouchy How We Use Gevent to go Fast Nice overview of how Pinterest used gevent to increase throughput of site and speed up requests. They also cover the challenges they faced during the switch over. pinterest.com Shared by @myusuf3 Unit Testing SQLAlchemy How do you test your SQLAlchemy apps? Check out this post and its predecessor for the low down. blogspot.ca Shared by @mgrouchy How to Create a Python Library In depth tutorial on how to create a python library and package it. pypix.com Shared by @myusuf3 Introduction to Python for Statistical Learning Great introduction to tools like numpy, pandas and matplotlab for doing statistical learning work in Python. datarobot.com Shared by @mgrouchy Lessons Learned Architecting Realtime Applications This discusses the various options of building realtime applications in python and various technologies and techniques used and their limitations. Good read. lincolnloop.com Shared by @myusuf3 Unyielding Glyph of Twisted fame talks has written a great article about concurrency in Python. twistedmatrix.com Shared by @mgrouchy Python Concurrency: An Intro to Threads Great tutorial here. If you are looking to jump headfirst into Python threading and concurrency, this is as good a place as any to start. pythonlibrary.org Shared by @mgrouchy Python Property Nice well written introduction to Python properties. programiz.com Shared by @myusuf3 Generating Machine Learning Models With Scikit-Learn In a follow up to his last post about "Building decision trees" the author gives a nice explanation of how to generate machine learning models with scikit-learn. garysieling.com Shared by @mgrouchy Understanding Test Driven Development with Django If you are looking to learn a little more about Test Driven Development or are wondering about applying your TDD knowledge to your Django work, this is a great place to start. arunrocks.com Shared by @mgrouchy Make Python Faster Without Trying Too Much Nice article on the few steps you could take to make your code run faster without too much effort. Few great tips on profiling and taking advantage of things like pypy and cython! lukauskas.co.uk Shared by @myusuf3 Fast scraping in python with asyncio Cool article showing you how to build a faster screen scraper by downloading pages asynchronously with asyncio. compiletoi.net Shared by @mgrouchy Meta Programming with Python Meta programming basics and as well introduces metaclass hooks. wordpress.com Shared by @myusuf3 Understanding Python By Breaking It Increase your Python knowledge by breaking it. The author goes though a guided tour of poking and prodding CPythons internals. hakril.net Shared by @mgrouchy Who needs a database? Interesting thought experiment about completely knocking out database from stack, this obviously has some issues but interesting to see how it comes together. getsilvi.com Shared by @myusuf3 Logging as Storytelling #3: Types Have you ever considered what it takes to write excellent and consistent log messages? This article and its predecessors helps you define that. hybridcluster.com Shared by @mgrouchy An Artificial Intelligence for the 2048 game 2048 has been all the rage lately with projects cropping up everywhere. This is a cool examination of implementing an AI to solve the game. blogspot.it Shared by @mgrouchy 20 Good Functions To Know in Python Another one of these lists that just keep coming up. Likely last one we will link to so enjoy! thelivingpearl.com Shared by @myusuf3 Python Project Howto A great place to get started to turn your Python script into a Python project. Great guide that brings you from creating a repository to testing your code, all the way to packaging and releasing your code. infinitemonkeycorps.net Shared by @mgrouchy Build a Flask App in 30 Minutes Get up and running with your first Flask app in no time! stormpath.com Shared by @goStormpath Writing Purposeful Unit Tests Nice post about writing good unit tests to help you write better code, prevent regressions and allow you to assert the correctness of your code. appneta.com Shared by @mgrouchy OOP concepts in Python 2.x - Part 1 Cool little article on OOP way of thinking and Python. github.io Shared by @tw_lgiordani Getting Started with pylint Introduction to Pylint for beginners. blogspot.ca Shared by @myusuf3 Lightweight Virtual Environments in Python 3.4 Article covers new venv features and usecases in Python 3.4 drdobbs.com Shared by @myusuf3 Understanding Gunicorn's Concurrency Model Nice article touching the finer points of gunicorn's concurrency models. volant.is Shared by @myusuf3 Visualizing Realtime Data w/ Python, D3, RabbitMQ Article on consuming data from the twitter stream using RabbitMQ and Python. Then finally visualizing the data using D3.js brettdangerfield.com Shared by @myusuf3 Python Data Structures are Fast Nice article that some of you may find illuminating, with respect where certain speed ups and loses may actually occur in Python data structures. matthewrocklin.com Shared by @mgrouchy A little note-taking app with Flask Awesome read for beginners looking to start a small flask project. This one covers the process of creating s simple note taking application in Flask. charlesleifer.com Shared by @myusuf3 Module Properties | The Proxy Pattern Nice explanation of how to add a @property to a Python module. github.io Shared by @mgrouchy The Light and Dark Sides of Python Name Binding Pretty cool dive into python name binding! Tons of mind cool stuff to take advantage of for good and/or evil! excess.org Shared by @myusuf3 10 Most Common Python Mistakes Nice round up of really common Python gotcha's that can trip up Python developers. toptal.com Shared by @mgrouchy Python Partials are Fun! If you have been wondering about how to get started with Partials this is a great place to start. With a good explanation of what they are and an easy to follow example to see the flexibility and power of partials. pydanny.com Shared by @mgrouchy Making a specific Django app faster Really nice detailed article of the steps you the author followed to speed up a Django application through profiling and optimization with tips on how you can apply these to your applications. vanrees.org Shared by @ Dynamic Programming with Python A walk through the Dynamic Programming strategy with a fun Python example jminuscula.es Shared by @jminuscula Why I push for Python Great article about why an engineering professor would make a push to teach Python to undergraduates. lorenabarba.com Shared by @mgrouchy Dockerizing a Python Web App Docker has been all the buzz lately and this post shows you how to turn your Python web app into an application that can be deployed using docker containers on AWS. amazon.com Shared by @mgrouchy How to Organize Your Python Application Code Nice article with some good tips of how to organize your Python code next time you are writing a Python application. pythonblogs.com Shared by @mgrouchy Method overriding in Python Nice tips on Inheritance and Method overriding in Python. github.io Shared by @tw_lgiordani How do I Gevent? Really nice extensive tutorial on Gevent. Provides plenty of background information, its pros and cons and how it all works by showing how to create a simple web crawler. hownowstephen.com Shared by @mgrouchy Using Mocks in Python Extensive introduction to mock library in Python with tons of examples. If you are looking to learn a few things about mock this article is a good resource. drdobbs.com Shared by @myusuf3 10 Awesome Features of Python 3 Awesome presentation on why you should seriously consider Python 3 and what you are missing out on! github.io Shared by @myusuf3 Is Crossbar.io the Future of Python Web Apps? Crossbar is an application router that implements WAMP. Nice post where the author talks about Crossbar and wonders if Crossbar could be the future of Python web applications. tavendo.com Shared by @mgrouchy Why Python 4.0 won't be like Python 3.0 Nick Coghlan discusses the far future transition to Python 4.0, as well as touches on how it might not be exactly like the transition between Python 2.0 and 3.0 curiousefficiency.org Shared by @myusuf3 Things from Python I'd miss in Go If you switched from Python to Go what would be the features you would miss from Python in Go? This is the question the author addresses in this post. yosefk.com Shared by @mgrouchy Parallel Programming in Python A very complete introduction to parallel programming in Python using Python's multiprocessing module. This introduction takes you from the specifics about the multiprocessing module to its application. sebastianraschka.com Shared by @mgrouchy Python Classes and Object Oriented Programming Everything you wanted to know about Object Oriented Programming in Python. Great introduction. jeffknupp.com Shared by @mgrouchy Why Every Language Needs Its Underscore Interesting article about the funcy library and how it is analogous to the Underscore.js library. Its purpose is to make your life easier when writing code and give you a series of functional tools to write cleaner, more understandable code. hackflow.com Shared by @mgrouchy Why Python (or any decent language) Doesn't Need Blocks Very opinionated article on the hype of blocks in other languages and why they are no better than functions. blogspot.it Shared by @myusuf3 Using Docker as a Python Development Environment Docker is all the new hotness, check out this post detailing how to use Docker for your Python development environment. uglyduckling.nl Shared by @mgrouchy Anti-Patterns in Python Programming A look at some common Python programming anti-patterns and how to correct those common mistakes. lignos.org Shared by @mgrouchy Decorators and Functional Python How can Python's decorators help us thing in a functional way? Great information about Python decorators and how how they can teach us to think about functional concepts like higher order functions and closures. brianholdefehr.com Shared by @mgrouchy The Forgotten Optional `else` in Python Loops I love this article, if you always felt dirty creating variable to keep track of conditionals, else clause reprise y'all. svbtle.com Shared by @myusuf3 7 Python Regular Expressions Examples Get the lowdown on using Regular expressions in Python. thegeekstuff.com Shared by @mgrouchy Method decorators in Python Decorators is probably the most popular topic for Python programming blogs. We can probably take this as a sign that not everyone understands them yet so check out this post on method decorators. agiliq.com Shared by @mgrouchy How to argue for Python’s use Python core developer Brett Cannon gives you some ammunition next time someone asks you "Why use Python?". Nice contrast of the reasons why Go is a good language and why you might still want to use Python. svbtle.com Shared by @mgrouchy Become A Better Programmer - How To Read Source Code Reading source code is one of the most useful skills to learn for any programmer. In this post the author gives some nice tips to step up your code reading game. pythonpracticeprojects.com Shared by @mgrouchy Simple Python Parallelism Nice tutorial of how to easily parallelize tasks in Python with the languages `multiprocessing` library without getting bogged down learning other parallization frameworks. github.io Shared by @mgrouchy Making database-backed dashboards in 3 minutes Very simple tutorial to create Matplotlib graphs and ship them as part of email reports and web dashboards. maxmautner.com Shared by @myusuf3 Getting Started with Python Internals Nice guide to get you ready to jump in and start working with Python internals. github.io Shared by @mgrouchy Setting up Sublime Text 3 for Full Stack Python Development Fantastic guide to help you get up and running with Sublime Text for your next Python project. realpython.com Shared by @mgrouchy Python for Programmers A nice collection of all the things you probably wanted to know when you started writing python programs. rustyrazorblade.com Shared by @mgrouchy Refactoring monolithic if/else filters with closures Nice little example on how to refactor your monolithic if/else clauses for filtering data. Provides a small albeit contrived example to illustrate the issue. startmake.com Shared by @scottallenon Teaching an old dog new tricks - or, how I learned to love Python's str.format, and gave up on % Very nice guide about changing your ways from using '%' to format Strings in Python and use string.format instead. lerner.co.il Shared by @mgrouchy How to Use Python Regular Expressions to Parse a Text File (Practical Use Case Scenario with Python Reg-Ex Re Split Sub) Great tutorial. Guides you step by step to parsing and cleaning up the resulting text from text files with Python regular expressions. thegeekstuff.com Shared by @mgrouchy Higher Order Functions and List Comprehensions in Python svbtle.com Shared by @myusuf3 How to Supercharge Your Python Shell with a .pythonrc Awesome small little way to make your python shell so much more convenient. dlo.me Shared by @myusuf3 Python Bad Practice, A Concrete Case Awesome run down of bad practice Python, with concrete examples! danjou.info Shared by @myusuf3 Python Single Line For Loops Nice introduction to list comprehensions here for the new Python programmer. teamtreehouse.com Shared by @mgrouchy Guido van Rossum On Finding His Way The Python creator and Dropbox engineer reflects on his early days in programming. medium.com Shared by @myusuf3 Tutorial I Wish I Had When Tackling AJAX and Django Beginners tutorial on how to use AJAX and Django! wordpress.com Shared by @myusuf3 Celery In Production How Caktus Group uses Celery in production! caktusgroup.com Shared by @myusuf3 Maybe in Python senko.net Shared by @myusuf3 Asyncio Implementation Overview Awesome article for understanding asyncio! For the beginner to async programming but adequately experienced python developers. bitdance.com Shared by @myusuf3 Django vs Flask vs Pyramid: Choosing a Python Web Framework Comparing the big 3 Python web frameworks! airpair.com Shared by @myusuf3 Five mini programming projects for the Python beginner New to Python programming? Here are five projects to help get you started. medium.com Shared by @mgrouchy Simple Interactive Data Analysis with Python Simple article for the simple basics of python interactivity and the awesomeness that is IPython so if you haven't tried it out yet. Great place to start! pbpython.com Shared by @myusuf3 In Python, it's all about the attributes Very detailed post about attributes in Python. Good read! lerner.co.il Shared by @mgrouchy Advanced use of Python decorators and metaclasses Got the basics of Python decorators and Metaclasses down? If so time to step up your Python game with more advanced techniques. lgiordani.com Shared by @tw_lgiordani Django vs Flask vs Pyramid: Choosing a Python Web Framework This post presents a nice comparison to help you choose the between the Django, Flask and Pyramid web frameworks. airpair.com Shared by @elldudley Fluent interface in python kracekumar.com Shared by @mgrouchy Building Web Applications with Django and AngularJS Now this is a very detailed guide to building web apps with Django and Angular.js. Definitely worth checking out. thinkster.io Shared by @mgrouchy Python Comprehension Syntax Nice comprehensive tutorial of Comprehension and Generator syntax in Python. airpair.com Shared by @elldudley Virtualenv the Docker way Some neat tricks for working with Virtualenv inside your docker containers. atte.ro Shared by @mgrouchy Modern guide to getting started with Data Science and Python Nice post, but I dont agree with his tempered advice for newbies not to take a look at numpy and matplotlib! Good read though! github.io Shared by @myusuf3 Multiprocessing and Memory Multiprocessing in Python doesn't get much HYPE. Here is a cool little post how it can be effective in a ton of spots. yseam.com Shared by @myusuf3 Recommended Django Project Layout Unsure on how to setup your Django project? revsys.com Shared by @myusuf3 Top 10 Python idioms I wish I'd learned earlier A nice collection of Python idioms that are very nice to know! Check out the discussion section for further discussion of this post on reddit. blogspot.ca Shared by @mgrouchy The Future of Asynchronous IO in Python Real nice overview of common design patterns of the past and a look at the emergent patterns in Asynchronous IO in the future. medium.com Shared by @mgrouchy A Python Internals Adventure Awesome article on diving into python internals and CPython. dreamwidth.org Shared by @myusuf3 Retries in Requests Nice dive into one of the advanced features of the requests library, retries. Nice example to get you started here if this is something you need in your next project. coglib.com Shared by @sigmavirus24 Why is Object-Oriented Programming Useful? Nice little article on OOP for beginners. inventwithpython.com Shared by @myusuf3 Deploying a Django app on Dokku Get up and running with your favorite django applications on Dokku. Very cool! realpython.com Shared by @myusuf3 Django and Flask: Why and When To Use Each Cool talk, on when to use which framework and when to switch! hakkalabs.co Shared by @myusuf3 10 Myths of Enterprise Python Nice breakdown of myths from PayPal Engineering. paypal-engineering.com Shared by @myusuf3 14 Best Pandas Features Nice breakdown of 14 great(and possibly best) Panda's features. Discover what you might be missing out on. bigdataexaminer.com Shared by @mgrouchy The Top Mistakes Developers Make When Using Python for Big Data Analytics Nice breakdown of common mistakes that developers often make when working with Python for big data analytics. airpair.com Shared by @elldudley json vs simplejson vs ujson Very detailed rundown with benchmarks of the differences between common python JSON parsing libraries. SPOILER: ujson is the fastest by a considerable margin. medium.com Shared by @mgrouchy | | | | | | |