Friday, April 18, 2014

tool: IPython: Math Processor

Using IPython we can use a full programming language connected to a sophisticated rendering engine.  It will draw pretty equations, 2D and 3D plots of your data, in an interactive shell!



* IPython: Math Processor

Friday, April 11, 2014

reference: Real Time Web sans Node

Real Time Web sans Node by Michael Irani

presented at LA Django meetup in March, 2014

slides - source

Class Topics 2Q2014

I'm now available for teaching classes.  I have 15+ years experience with Python and the Web, 5 with Django, and ... many with Linux and Devops.  To see one of these talks, or to customize one for your group, please ping me at LinkedIn or visit the LA Django, SoCal AngularJS, or LA DevOps meetups.

Upcoming talks:

- Intermediate Django Class-based Views

Includes CBVs were a Mistake

- Modern Django Stack with WebSocket support

Ideas:

- Something Devops: high level, aka "Why All the Things?"

Dev and Operations can be seen as opposites.  From a high level, we have several "knobs" to twiddle in a company -- Devops is one such arrangement.  How can we make concrete decisions to move our project forward?  How can we be creative enough to see the entire range of options? Most importantly: how can we work the least, to have the awesomest project, and enjoy the most amount of quality beer-drinking time?

- Something Devops: low level.  Devops as advanced programming, and vice versa

- Something Workflow with Knobs

aka "why not run production on my laptop?"

- Startup "handwaving with code" vs Durable Systems

- Lies, Damn Lies, and Benchmarking

- Old School Stuff means Less Work

aka "xargs ftw"

Historical Talks/Classes

- Twisted -- high performance brain-melting asynchronous server

- Intro to Programming with Python

- Python for Visual Effects Artists


Saturday, February 8, 2014

converting for Roku

Recently I tried to play a movie on my Roku XDS.  The video played fine, but the audio was gone, and there were no subtitles.

Using "avprobe" I saw my MPEG4 movie has two audio streams.  The Roku is finding the first, 5-speaker stream and playing it, instead of my desired stereo output.

So, the proper incantation to have normal audio is to tell avconv to use the first video stream, and skip the first audio stream:
avconv -i input.mp4 -codec copy -map 0 -map -0:a:0 output.mp4

Success!  Now about those subtitles...

Wednesday, January 22, 2014

finding source committed to the wrong Git branch, or, CLI FTW

The other day I added a "test_epoll" file, but now I've lost the branch that contained it.  I have 15 branches locally -- how do I find the file?

Here's one way: for all branches not checked out, show the differences between it and the current branch, specifically looking for files which contain the word "poll".  For each branch, "trace" (echo) the command first, before listing the files different from current branch.


$ git branch | egrep -v '\*' | xargs -t -n1 git diff --stat | egrep poll

git diff --stat feature/ent958
eimport/epollmail.py | 244 ++
eimport/tests/test_epollmail.py | 149 ++
scripts/epollmail | 18 +

Ah -- my stuff was found in branch ent958. Thanks, command line!

Wednesday, January 1, 2014

connect box.com as drive in Linux Mint

1) on the desktop, double-click on Home to fire up the Nemo file manager

2) click File / Connect to Server

3) set type to Secure WebDav (https)
Server: dav.box.com
Folder: /dav

It'll ask for username/password.

Troubleshooting


Q: tries to connect to server, get perpetual spinner
A: Kill the WebDAV daemon and restart it:
killall gvfsd-dav ; nemo