Skip to main content


Showing posts from May, 2012

I Read Things On The Internet

It is true, from time to time I read things on the internet. What has been bothering me lately is the feeling that all of these ideas I'm consuming and all of my responses to them are just lost into a sea churning together everything into the unidentifiable paste that comes out of my head.

So, I've decided to start logging this. After all, the word "blog" is a shortening of "weblog", a web log, a log of the things you've read on the web. I want this for my own daily readings, both to keep a record for myself (and anyone with an interest) and to note my thoughts, comments, responses, and questions about the things I come across.

Ironfroggy Reads Things On The Internet is this new thing. It is a blog on Tumblr, which I find a useful tool for smaller posts and their bookmarklet is perfect for my needs here. I'll be directing the posts to twitter to, as an experiment. Let me know if that turns out annoying.

Follow it, if you care to. Mostly its for me, but…

ANN: straight.command 0.1a1 - A command framework with a plugin architecture

New Project Announcement:I'd like to announce a new project, based on straight.plugin, a command framework that provides a declarative way to define command-line options, sub-commands, and allows plugins from third-parties to expand commands.

This is all very early, I'm calling this version 0.1a1 and lots of things are missing, but here is an example (which works) of a small todo application built with this.

#!/usr/bin/env pythonfrom__future__importprint_functionimportsysfromstraight.commandimportCommand,Option,SubCommandclassList(Command):defrun_default(self,**extra):forlineinopen(self.parent.args['filename']):print(line.strip('\n'))classAdd(Command):new_todo=Option(dest='new_todo',action='append')defrun_default(self,new_todo,**extra):withopen(self.parent.args['filename'],'a')asf:forone_todoinnew_todo:print(one_todo.strip('\n'),file=f)classTodo(Command):filename=Option(dest='filename',action='store')list=Su…