7 minutes
TPCiP 2019 Wrap Up
This week has been The Perl Conference in Pittsburgh or TPCiP (a tough acronym for the forearms to write). For some reason flights from Toronto to Pittsburgh all require a layover somewhere, and the shortest flight is 7 hours. Of course this does not include the time it takes to get to and from the airport, nor customs and security clearance. The drive is only 6 hours.
The Sessions
I always intend to take notes as the presentation are happening. This rarely happens as I get more drawn into the presentation. It’s either pay attention or take notes, and I’d rather pay attention.
Happy Campers: Lessons Learned from Scouting’s Premier Leadership Course
This talk discusses the parallelisms between open source communities (focusing on the Perl Community) and the Boy Scouts of America. Both of which need to evolve with the changing times.
Chris relates his experience attending leadership courses to demonstrate the similarities, and how the Boy Scouts are handling the challenges.
Chris’s message echoed parts of what Sawyer X said during his talk Perl 5: The Past, The Present, and One Possible Future when calling for a clear and focused direction for Perl 5.
Organized Development with tmux
While I use tmux
daily and am fairly fluent with it, if I learn one thing from
this talk the return on investment is huge.
Sure enough within the first 10 minutes, Doug discusses the use of
last-window
, which I didn’t know existed. Here I’ve been hunting and next/prev
between sessions like a heathen. I immediately started updating my tmux.conf
.
Turns out I had the default for last-window
bound to another key and hadn’t
rebound it. Leading to a clean up of
my tmux.conf
.
Non-trivial jq
jq
is a very useful tool for command line
work with JSON. Unfortunately its syntax can be somewhat cryptic. Being at a
conference and having the availability of someone with examples and explanations
as to what’s going on helped with my understanding.
Confessions of a Space Cadet
genehack is a keyboard nerd too. This talk was an introduction into the world of mechanical keyboards and could be the first step down the rabbit hole for a number of people.
genehack describes the different layouts of keyboards, including some that I would call fairly non-standard. As well as explaining the different switching mechanisms that make up the rainbow of Cherry MX switches.
Regexp Mini Tutorial: Assertions
Abigail’s talks are always very informative, and any new nuggets of information
on writing regular expressions is always welcome. This talk did not disappoint,
I’d not heard of the \K
directive and the examples given during the talk will
make for some nice rewrites in a couple of projects.
The \K
directive tells the regular expression engine to forget what it just
matched and continue from the current position to try and match the rest of the
pattern. The primary use I see for this is when using anchor text in a
substitution. No longer is putting back the original anchor text required.
my $text = 'this is one two two many';
$text =~ s/ (two) \s+ two \s+ /$1 too /gx
becomes:
my $text = 'this is one two two many';
$text =~ s/ two \s+ \K two \s+ /too /g
I Never Metaphor I Didn’t Like: How Cognitive Linguistics Can Help You Be A (More) Bad-ass Developer
Unfortunately video of this talk has not been posted. I’ve contacted Chris to see if he knows why, but he hasn’t been informed as to why either.
Chris walks through what metaphors are and the constructs that comprise them. While much of the linguistics discussion is over my head, Chris brings the discussion back around to demonstrate how we use metaphors every day in the computing environment. From user interface design to communicating code details between teams of developers.
This talk is designed to lead to discussion in the audience. Those discussions end up supporting the points that Chris makes during the talk.
Chris has given this talk previously and the video is available here.
Readin’ Rust
I’ve heard plenty about the Rust language but never really looked into it. I’m a firm believer that learning a different language strengthens the understanding of those I already know.
Unfortunately some last minute CSS changes led to a presentation that’s syntax highlighting left the slides unreadable at a distance.
This is one of the talks that reviewing the slides later would be informative.
CompleteShell - Tab Completion for Every Shell
Ingy döt Net has been working on creating tab completion for
programs that don’t have it. At
PTS 2019 he was demonstrating
completion for cpanm
which included full distribution name completion on the
command line. Really impressive, so I was looking forward to how far along the
project is.
The goal of the project is provide a simple mechanism for developers to add the completion files and man pages for their command line tools. A DSL has been defined that when used with the tool generates the files required to add completion. The project includes a number of repositories for different commands, but there is still a lot of work to do.
C’mon Git Happy
I consider myself an intermediate git user. I can get myself out of trouble, I’ve created and used many a release process, and I know that I don’t know everything. Whenever genehack speaks on git though, no matter what level, it needs to be seen. This talk, while short, focuses on using and maintaining the git graph. genehack takes a tour of aliases, configuration settings, and commands that help keep it clean.
The One I didn’t See – Perl Out Loud
I did not attend this talk, but immediately after everyone was talking about the fantastic job that @yomilly did. As soon as I returned home this talk went on the main TV and I watched it with my family.
- @yomilly is a great speaker
- Speech to text technology has come a long way
- Be considerate to the names given to methods and variables. There’s no need for abbreviations. Abbreviations hinder accessibility, as well they can affect clarity.
Lightning Talks
There are a lot of different lightning talks on various topics, some related to perl, some related to other aspects of programming, and some with nothing at all to do with either.
To under or not to undef
Cees revised his talk from Toronto Perl Mongers and presented it as a shorter lightning talk. While lightning talks at TPM don’t really have a time limit, and tend to lead to lots of discussion, at TPC, they must end on time and have zero discussion afterwards.
This shortened talk gets right to the point of the differences between
$var = undef
and undef($var)
and why you might want to use one over the
other, but mostly shouldn’t care. The talk includes examples with technical
details that help explain the points.
Fountain Pens
Under the category of nothing to do with programming but really interesting is this talk by Mike Fragassi on fountain pens is really well done. I am not one that likes my penmanship but I do appreciate a nice writing utensil and fountain pens are cool. Might pick up one of the cheaper models he mentions to try it out.
A New Name for Perl
I’ll admit, when Ingy döt Net stood up on stage and stated that this was the topic of his talk, I was prepared to hear a lot of backlash from the audience. Surprisingly there was none at all. Ingy proposes that Perl be the name of the community and the language family, while perl 5 and perl 6 be the names of the implementations of the language.
Summing it up
Of course the best part of every conference is the time spent hanging out with friends. Be it in unsuspecting dive bars, or finally making it into the taco restaurant on the third attempt, or being kicked out of a friend’s room at 1am after a night of board games because they have to give a talk the next morning.