Getting More out of Git*
Git has a complicated UI, but tremendous power once you understand the simple data model at its core. Learn how Git thinks and some versatile, less-well-known features that give you new insight into the code you use and help you better collaborate on code you write.
Some source-control systems are simple to start using on the surface, but conceal great complexity underneath. Git is the opposite: there’s far too much complexity in the interface, but it’s all operating on a simple and comprehensible core data structure. That gives a very high reward-to-effort ratio to learning the data model cold, so we’ll start there.
Then we’ll see how to
- understand just how, when, and crucially why that bit of code got to be the way it is, with Git’s powerful history-studying features;
- automatically zero in on whatever commit introduced a bug, with
- prepare your changes as a sequence of neat, logically arranged, well-described commits — the kind upstream maintainers want to review and merge — without going crazy or stepping outside the protected walls of version control, thanks to
- take advantage of Git’s state-of-the-art functionality for merge conflict resolution.
I've spoken at ConFoo 2013 (in Montreal), at Ruby user groups on both coasts, at several academic conferences when I was a graduate student, and at a number of smaller occasions.
I've used Git since 2008, taught it at beginner, intermediate, and advanced levels to many friends and coworkers, and contributed occasional patches to Git and its documentation since 2009.
Video of my talk at BostonRB is online: http://bostonrb.org/presentations/profiling-ruby
Slides are in the video, or at https://speakerdeck.com/gnprice/profiling-ruby
For other talks, see slides:
on Haskell, at MIT (http://cluedumps.mit.edu/wiki/2007/11-19)
on a virtualization system I'd coauthored, at MIT (http://cluedumps.mit.edu/wiki/2008/12-09)
on Cython and PyPy, at ConFoo (https://speakerdeck.com/gnprice/accelerating-your-python-application-cython-and-pypy)
I haven't yet given this talk anywhere else.
Greg Price is a software engineer bringing fast, automated continuous integration to everyone with Solano Labs. Previously he worked at Quora, and helped Ksplice make rebooting obsolete.
Greg once thought a career making theorems instead of code would be fun, but after two years of a few good theorems and much more code snuck into off-hours, he decided to run with it. He loves Python in practice, Haskell in principle, and creating code that communicates its meaning clearly to both computers and people and solves the right problem well.
- Title: What Is That Process Doing?
- Track: Chemistry
- Room: B302/303
- Time: 11:00 – 11:45am
We’re surrounded by programs we didn’t write. Inevitably they eventually do the wrong thing, or they just don’t do what we need, and we want to find out what they are doing. Learn how to spy on the processes you run.
- Speakers: Greg Price