(λ (x) (create x) '(knowledge))

Paraexec

Paraexec on Gitlab

What is it?

Paraexec is a multi threaded ssh execution program, much in the same vein as ansible. It's written in Common Lisp on SBCL.

In reality, this isn't nearly as useable as ansible is, the configuration language for it isn't nearly lispy enough for my liking, nor is it easy enough for production use. There are weird quirks throughout. But it's a project I'm proud of nonetheless. For me Paraexec represents a justification of my skills as a developer.

My first "Linux" job was with a small company call TechKnow Inc. They made Speed of Service timers for QSRs (like McDonalds). We managed these large groups of embedded devices with a tool called tkparallel. It was a parallel ssh executor, just like Paraexec. When I was working for TechKnow I was awestruck by that particular tool. I never believed I could write something like it, in fact at the time I had done little more than make a few watchfaces for my Pebble.

Paraexec is therefore a refutation of what I once believed, that I could never build something like tkparallel. And belongs here as a reminder that I am always learning, always growing, and the only things I cannot do are the things I prevent myself from attempting to do.

Long Term

I'd like to add better handling, maybe even embed a language to handle configuration. Ansible uses yaml, I don't see why I couldn't use Fennel or just plain lisp!

Contact

If you'd like to contact me about my software, ponderings, or just to chat; you can reach me at wpsinatra@gmail.com.