Author Archives: spamforsteve

GUIs from thin air (or rather, docstrings)

This kinda follows on from using docstrings to generate documentation. Recently I stumbled on two very neat Python modules: docopt – uses your docstrings to generate a command-line parser gooey – uses argparse definitions to create a tk-based GUI Now both … Continue reading

Posted in Uncategorized | Leave a comment

Setting up a raspberry pi, headless, for SAMBA

This isn’t about python. It sketches out how to set up a Raspberry Pi as a SAMBA server, without having to have a monitor for the PI at all (i.e. totally headless), using a Windows PC. It is really just … Continue reading

Posted in Uncategorized | Leave a comment

Storing data in Python source

Self-modifying code has to be a generally bad idea. And that’s when the code is in memory – allowing code to modify it’s own source on disk has to be off the scale of the bad-idea-o-meter …

Posted in Uncategorized | Tagged | Leave a comment

Dedenting

The Python standard library has two very useful functions to support removing indentation, but they’re not in obvious places! inspect.cleandoc(doc): Clean up indentation from docstrings that are indented to line up with blocks of code. Any whitespace that can be … Continue reading

Posted in Uncategorized | Tagged , , , | Leave a comment

Chording keyboards: Part 2

Part 2 of a series using Python for rapid prototyping of a chording keyboard.

Posted in Uncategorized | Tagged , , | Leave a comment

Chording keyboards: Part 1

I’ve always thought chording keyboards are an interesting idea. These keyboards only have a few keys, and they are pressed in combinations – like chords on a piano. This seems like a great fit with something like a mobile phone … Continue reading

Posted in Uncategorized | Tagged , , | 1 Comment

A documentation generator

So you’ve written your amazing Python program which converts a Twitter feed into youtube videos or whatever and being a Good Programmer you hack together some nicely-formatted documentation for the API so that people can actually use it. Eventually you … Continue reading

Posted in Uncategorized | 1 Comment