{"@attributes":{"version":"2.0"},"channel":{"title":"Chris Wolfe","link":"https:\/\/derwolfe.net\/","description":"Recent content on Chris Wolfe","generator":"Hugo -- gohugo.io","language":"en-us","copyright":"All rights resevered - 2016 - Chris Wolfe","lastBuildDate":"Tue, 20 Feb 2018 09:44:44 -0600","item":[{"title":"Using private repos with requirements.txt","link":"https:\/\/derwolfe.net\/2018\/02\/20\/use-private-reqs\/","pubDate":"Tue, 20 Feb 2018 09:44:44 -0600","guid":"https:\/\/derwolfe.net\/2018\/02\/20\/use-private-reqs\/","description":"I regularly work with private Github repositories and from time to time want to pull down PRs and test them out as part of an integration test. I&rsquo;ve had to Google the right syntax for this many times. No more.\nTo install a branch from a private repository in a project using requirements.txt files, replace the line containing the actual requirement with the following:\ngit+ssh:\/\/git@github.com\/&lt;fork&gt;\/&lt;project&gt;@&lt;branch&gt;#egg=&lt;project&gt;   fork is the account holder of the fork, normally a github username, e."},{"title":"About me","link":"https:\/\/derwolfe.net\/about-me\/","pubDate":"Sun, 19 Nov 2017 14:41:53 -0600","guid":"https:\/\/derwolfe.net\/about-me\/","description":"This is a work in progress. If you&rsquo;d like a copy of my resume, please feel free to email me using the address on my Github.\nAs a bonus for visiting, here is a picture of my adorable poodle: "},{"title":"Manifold streams, testing, no restarts","link":"https:\/\/derwolfe.net\/2017\/10\/16\/timeout-stream-block\/","pubDate":"Mon, 16 Oct 2017 00:00:00 +0000","guid":"https:\/\/derwolfe.net\/2017\/10\/16\/timeout-stream-block\/","description":"I&rsquo;ve been using Clojure for about two years. Much of that time has been spent using Zach Tellman&rsquo;s Manifold library that makes it easier to build event-driven systems. I tend to prefer a test driven approach to development. This means that I like to write tests that are deterministic and quick to fail or succeed.\nMuch of the Clojure code that I write for network based systems ends up using manifold streams to build processing pipelines."},{"title":"firedamp","link":"https:\/\/derwolfe.net\/2016\/09\/26\/firedamp\/","pubDate":"Mon, 26 Sep 2016 21:34:52 -0500","guid":"https:\/\/derwolfe.net\/2016\/09\/26\/firedamp\/","description":"Firedamp (source on github) is clojure application that has been a blast to write. It is a simple application that is meant to be a cheap stand-in for statuspage.io, which is an excellent service in itself.\nFiredamp exists to fill a gap in some metrics that I found. I&rsquo;ve frequently noticed that build times might be dragging with travis, codecov, and github. The goal is for this service to provide a single location that aggregates the simple human readable status messages for all of these services."},{"title":"Cycling my GPG key","link":"https:\/\/derwolfe.net\/2016\/08\/08\/cycling-my-gpg-key\/","pubDate":"Mon, 08 Aug 2016 11:08:41 -0500","guid":"https:\/\/derwolfe.net\/2016\/08\/08\/cycling-my-gpg-key\/","description":"This message is also available as a github Gist.\n-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 I am cycling my GPG key. My old key has fingerprint: B256 481D 41F3 7AF2 29C2 A3D2 A008 BD38 361C 4770 My new key has fingerprint: A274 2664 0C95 BAF9 A452 E51C BC97 2703 EE6A 93EC I have no reason to presume my old key to be compromised. I have changed the expiration date of my old key to 2016-08-15."},{"title":"Just Squash","link":"https:\/\/derwolfe.net\/2016\/04\/01\/just-squash\/","pubDate":"Fri, 01 Apr 2016 17:08:39 -0500","guid":"https:\/\/derwolfe.net\/2016\/04\/01\/just-squash\/","description":"My opinions on whether to squash merge or use merge commits haven\u2019t been consistent over the past few years. Early on, I was mostly in favor of squashing commits, then I decided that in order to use certain tools like git bisect, the complete commit history for a given branch should remain intact.\nBut, my experience over the past year or show has shown me that preserving this history isn\u2019t very useful, or at least hasn\u2019t been very useful for me."},{"title":"automating","link":"https:\/\/derwolfe.net\/2016\/02\/17\/automating\/","pubDate":"Wed, 17 Feb 2016 08:31:50 -0600","guid":"https:\/\/derwolfe.net\/2016\/02\/17\/automating\/","description":"This could be seen as a test. Each new commit to master kicks off a Travis build that then deploys to a place."},{"title":"Splitting up pull requests","link":"https:\/\/derwolfe.net\/2016\/01\/23\/splitting-up-pull-requests\/","pubDate":"Sat, 23 Jan 2016 00:00:00 +0000","guid":"https:\/\/derwolfe.net\/2016\/01\/23\/splitting-up-pull-requests\/","description":"I&rsquo;ve been working on greenfield projects for the past month. Most of my branches that have started out with a small, limited scope have tended to balloon as I&rsquo;ve learned more about what the requirements really are. This has meant that I&rsquo;ve needed to break down branches into smaller units. Git has tools that make this a fairly painless process.\nChecking out hunks from a base branch This is useful when a branch needs splitting up and its commit history doesn&rsquo;t contain much useful information."},{"title":"Easy Twisted development with virtualenv and pyenv","link":"https:\/\/derwolfe.net\/2014\/10\/19\/twisted-pyenv-virtualenv\/","pubDate":"Sun, 19 Oct 2014 00:00:00 +0000","guid":"https:\/\/derwolfe.net\/2014\/10\/19\/twisted-pyenv-virtualenv\/","description":"This is meant as a how-to for programmers interested in developing the Twisted networking library using virtualenvs. I&rsquo;m assuming you&rsquo;re working from a linux\/unix based development environment. At a later date, I&rsquo;ll see if the same setup can be used on windows.\nThe goal Create isolated development environments that target different interpreters and require different dependencies.\nThe problem When using python to develop a project, it is very easy to accidentally install packages that can be found by your system python."},{"title":"I love the fish shell","link":"https:\/\/derwolfe.net\/2014\/10\/18\/i-love-the-fish-shell\/","pubDate":"Sat, 18 Oct 2014 00:00:00 +0000","guid":"https:\/\/derwolfe.net\/2014\/10\/18\/i-love-the-fish-shell\/","description":"I have been using the fish shell for the past six months and have been loving every minute of it. I wanted to tell you about it because it is vastly simpler to use than I ever felt both bash and zsh ever were.\nWhy do I use my shell? I use my shell mostly for day to day programming work. Lots of boring directory changes, grepping output, piping commands together, etc."},{"title":"My git workflow","link":"https:\/\/derwolfe.net\/2014\/02\/28\/my-git-workflow\/","pubDate":"Fri, 28 Feb 2014 00:00:00 +0000","guid":"https:\/\/derwolfe.net\/2014\/02\/28\/my-git-workflow\/","description":"git is excellent. It keeps me sane. Over the past years, I&rsquo;ve noticed that not all uses of git are alike. There seems to be a definite correct way to use git that results in a repository being easy to understand and navigate.\nPersonally, I want my repositories to read like a story. I want to be able to look over a commit history and understand why code was merged instead of just when it was merged."}]}}