Jeff Knupp
PYTHON PROGRAMMER
BLOG
ABOUT
ARCHIVES
TUTORING
BOOK
Everything I know about Python...
Learn to Write Pythonic Code!
Check out the book
Writing Idiomatic Python
!
Looking for Python Tutoring? Remote and local (NYC) slots still available! Email me at
jeff@jeffknupp.com
for more info.
Blog Archive
2018
How To Do Just About Anything With Python Lists
2018
Write Better Python Functions
2018
Extended Absence
2018
A Common Misunderstanding About Python Generators
2018
Counting Cards With Python
2017
Python is the fastest growing programming language due to a feature you've never heard of
2017
Improve Your Python: Python Classes and Object Oriented Programming
2016
How Python Linters Will Save Your Large Python Project
2016
How Python Makes Working With Data More Difficult in the Long Run
2016
Writing Idiomatic Python Video Four Is Out!
2016
Writing Idiomatic Python Video Five Is Out!
2016
Python, sandman2, and Open Data
2016
Should Engineering Managers Code?
2016
Python with Context Managers
2016
Improve Your Python: the with Statement and Context Managers
2015
Python Dictionaries
2015
Flask and SQLAlchemy Magic
2015
Sorry for the Silence. I'm Back!
2014
Writing Idiomatic Python: Videos 2 And 3 Are Up!
2014
Info on Free Tutoring Session For Women In STEM
2014
What is a NoSQL Database? Learn By Writing One In Python
2014
Go is Fun, Familiar, and FAST
2014
How Do You Rewrite a Project From Scratch Once It's On GitHub?
2014
Sandman, Rebooted: Create a REST API For Legacy Databases Without Writing Code
2014
Omega: The Last Python Web Framework
2014
Your Database's REST API: Sandman One Year Later
2014
Exciting Progress Made on 'Python's Hardest Problem
2014
Docker Blurs the Line Between SaaS and Self-Hosted Apps
2014
Docker is the Most Disruptive Technology For Software Development in the Last Decade
2014
Improve Your Python: Python Classes and Object Oriented Programming
2014
REST APIs, ORMs, And The Neglected Client
2014
Why I Hate HATEOAS
2014
You Need to Start a 'whizbang' Project Immediately
2014
A Nice Little Bit of Python
2014
Automatically Generate RESTful Endpoints From Your Flask-SQLAlchemy Models
2014
An Overwhelming Reponse From Women in STEM
2014
In Support of Female Engineers
2014
How 'DevOps' is Killing the Developer
2014
Great Products Seem Obvious in Retrospect
2014
Heading to PyCon!
2014
Don't Write Python Scripts, Write Python Libraries
2014
Why My Blog Uses My Home-grown Python Static Site Generator
2014
'What is a Web Framework' Translated to Japanese
2014
'Writing Idiomatic Python' Will Become A Series Of Instructional Videos!
2014
Why I'm Boycotting Mozilla Products
2014
Straphost Prices Reduced
2014
Writing Idiomatic Python: The Video Series
2014
Help Turn Writing Idiomatic Python Into a Video Series
2014
First Review Of Open Source Python Project Is Available
2014
What Is A Web Server Part 2: Headers And Cookies
2014
Learn to Host Your Python Web App by Watching a Pro
2014
What Is A Web Server?
2014
Contribute to an open source Python project for reviewing open source Python projects
2014
Free Exposure for Open Source Python Projects
2014
What is a Web Framework?
2014
A Celery-like Python Task Queue in 55 Lines of Code
2014
Big News About Writing Idiomatic Python
2014
Starting A Python Project The Right Way
2014
A Python App to See What People Are Saying About You
2014
Productionizing A Flask Application
2014
Need a Project Idea? Scratch Your Own Itch
2014
Meet Bull: Sell Digital Products for Free
2014
Python and Flask Are Ridiculously Powerful
2014
How to Become "Internet Famous"
2013
Improve Your Python: Metaclasses and Dynamic Classes With Type
2013
Your Database Just Got Its Own Website
2013
Starting a Django 1.6 Project the Right Way
2013
Improve Your Python: The Seminar
2013
Improve Your Python: Understanding Unit Testing
2013
My Development Environment For Python
2013
Improve Your Python: Decorators Explained
2013
Supercharge Your Python Developers
2013
sandman is the top trending Python repo on GitHub
2013
Open Sourcing a Python Project the Right Way
2013
My Favorite Creation
2013
sandman: A Boilerplate-free Python REST API for Existing Databases
2013
Python's Hardest Problem, Revisited
2013
Improve Your Python: 'yield' and Generators Explained
2013
And Now for Something Completely Different...
2013
Drastically Improve Your Python: Understanding Python's Execution Model
2013
Write Cleaner Python: Use Exceptions
2013
Anatomy of an eBook Launch: Raw Numbers
2013
The Writing Idiomatic Python Book is Finally Available!
2013
Creating and Optimizing a Letterpress Cheating Program in Python
2012
Learning Python via Django Considered Harmful
2012
Linkrdr Rises From the Ashes
2012
Blog Redesign: Focusing on Microdata
2012
Is Python call-by-value or call-by-reference? Neither.
2012
Starting a Django 1.4 Project the Right Way
2012
Writing a Python Book... in Python
2012
Idiomatic Python e-book Coming
2012
Writing Idiomatic Python
2012
Software Optimization: A Systematic Approach, Part Two
2012
Meet Blug: The Blog Robot that Hates You
2012
Software Optimization: A Systematic Approach
2012
Python's Hardest Problem
2012
From Memcached to Redis to Surpdb
2012
Single Founder SEO: Building Your Personal Brand
2012
Django Memcached: Optimizing Django Through Caching
2012
How linkrdr went semi-viral
2012
Optimizing Django Views With C++
2012
Profiling Django Applications: A Journey From 1300 to 2 queries
2012
Unit Testing in Django
2012
Introducing linkrdr
2012
Starting a Django Project the Right Way
2012
Building Your Second Django Site
2012
Analytics for Django Sites
2012
Coding Backwards
2012
Using Git with Django
2012
On Responding Quickly To Customers
2012
Django Production Deployment and Development Using Git
2012
Advertising: Reddit versus Facebook
2012
How Django Makes Web Programming Stupidly Easy
2012
Setting Up Octopress/Jekyll with Apache
2012
Hello World