Skills

Python

  • Lead developer of cbayes.
  • Contributor and researcher on BET.
  • Extensive experience generating technical notebooks with varying levels of interactivity.
  • On-the-bleeding edge of following JupyterHub, JupyterLab, and many more Jupyter projects.
  • Deep interest in reproducible open science and removing all friction towards such an end.

Matlab

  • First language, used for countless projects. I have since moved away from it in favor of open-source alternatives.

Git

  • Familiarity with basic repository management.
  • Frequent user of Github, comfortable with Bitbucket, and Gitlab.
  • I use git to track changes to nearly all the work I do.

LaTeX

  • Preferred document-generation language (pdfs).
  • Basic familiarity with publishing formatting for large documents.
  • Extensive experience writing technical reports.

Terminal (Bash/Shell)

  • Almost everything I do with respect to programming happens in a bash shell.
  • Much of my work is done remotely through ssh.

Vim

  • My preferred text-editor and distraction-free organizational tool.

Adobe Suite

  • Experienced in Photoshop for general graphic design (posters, figures).
  • Somewhat familiar with Illustrator, InDesign.

Microsoft Suite

  • Comfortable in Excel, though I prefer not to use it for anything related to analyzing data. I mostly use it for data entry.
  • Comfortable with Microsoft Word, but prefer to use LaTeX for its type-setting flexibility.

CLangs

  • I have coded in C++ in the past, but these days mostly use it when programming Arduinos
  • Look, give me a piece of code in any C language, and I’ll likely be able to tell you what it does, but I don’t program in it (anymore). For scientific computing, Python is just more preferable overall.
  • Given some time, I can bind C libraries to Python wrappers if need be.
  • I can manipulate an existing codebase, but writing one from scratch is a poor use of my time and skillsets at this point (I would rather collaborate with someone more proficient in the language).

R

  • I have used it a lot over the years but these days prefer Python for anything that I would have once done in R.

Wolfram

  • I use WolframAlpha (free) a bit, but I resist learning it because I cannot afford their licenses.
  • I wish nothing more than for them to open their code base. I fear that if they do not, their innovative notebooks will soon be associated primarily with Jupyter.

Internet Things

  • I can manipulate HTML but cannot really write anything for the web from scratch.
  • Pretty clueless with CSS but can guess-and-check my way around when necessary… Same thing for Javascript. I can usually debug a site using the browser Inspector/Console.
  • Familiar with web app architecture (mostly at a high level), including containerization, cloud infrastructure, and various deployment options for different use-cases.

Java

  • Can read it, have used programs written in it, but have not read source code in a long time.

... And that about summarizes my experience with programming languages.