Software Development Tutorials

Getting started guides, How-to's, and in-depth explanation of various topics in software development.

pdfrw: the other Python PDF library

Python Jul 7, 2015

Introduction As Tim Arnold explains in Manipulating PDFs with Python, even beautiful PDFs are often unspeakably ugly inside, and if you can avoid having to manipulate them, you should. Nonetheless, you've decided to ignore Tim's advice, and that's why you're here. (Or maybe you haven't actually seen

Read more PM Patrick Maupin
5

Manipulating PDFs with Python

Python Nov 6, 2014

There are some nasty PDFs out there, but there are several tools you can use to get what you need from them. Python enables you to get inside and scrape, split, merge, delete, and crop just about whatever you find, and I'll show you how.

Read more TA Tim Arnold
8

Introduction to rate limiting with Redis [Part 2]

Python Database Nov 3, 2014

The second installment in my series on rate limiting with Redis covers two different but related methods using standard Redis commands and Lua scripting. Each approach expands the number of use cases for rate limiting, and cleans up some of the rougher edges of previous rate limiters.

Read more JC Josiah Carlson
6

Introduction to rate limiting with Redis [Part 1]

Python Database Oct 9, 2014

This tutorial series covers two different but related methods of performing rate limiting in Redis using standard Redis commands and Lua scripting. Each method expands the number of use-cases for rate limiting, and cleans up some of the rougher edges of previous rate limiters.

Read more JC Josiah Carlson
3

Building a text editor with PyQt, Part 4: tables, dates and unsaved changes

Python Editors Sep 23, 2014

In the final installment of Building a text editor with PyQt, we add two more extensions: inserting the current date and time into our text, and another for inserting and managing tables. In addition, we create a way of prompting users about unsaved changes before closing *Writer*.

Read more PG Peter Goldsborough
4

Building a text editor with PyQt: Part 3

Python Editors Sep 16, 2014

Part three in this series on Building a text editor with PyQt begins to add bells and whistles to the word processor we've built. We'll add features including find and replace, image insertion, as well as word and symbol count.

Read more PG Peter Goldsborough
4

Building a text editor with PyQt: Part 2

Python Editors Sep 10, 2014

In the previous part of my tutorial series on Building a text editor with PyQt, we created our text editor's basic skeleton and added some useful features for file management, printing, inserting lists and more. This part will focus on the format bar, which we'll populate with a number of features, including actions to change the font family, background color, alignment and more.

Read more PG Peter Goldsborough
18

Building a text editor with PyQt: Part 1

Python Editors Sep 2, 2014

This series will show your how to build a simple but useful rich-text editor with PyQt. In part one, we'll focus on building the core features and skeleton of the editor.

Read more PG Peter Goldsborough
9

An introduction to agent-based models: simulating segregation with Python

Python Statistics Aug 28, 2014

In this piece, I'll introduce you to the power of agent-based when used to understand complex phenomenons. We'll use some Python, a social science case study and the Schelling model to get a deeper look at segregation in New York City.

Read more AM Adil Moujahid
1

Simple Python parallelism

Python Performance Jul 30, 2014

Let's say you have a function that's slow and time-consuming. It's too intensive and complex to run on the GPU (with it's thousand-ish cores) but the single core Python uses isn't enough. Your machine has eight cores and you want to use them. Well, how do you use them? Python's GIL makes it difficult.

Read more Scott S.