(Hattip: Morlock Publishing on the Twitter.)
Archive for the ‘Perl’ Category
1. I admit I’ve written some bad Perl code. But I don’t recall writing any that ran away. SQL queries, yes, but not Perl code.
2. “Runaway Camel” sort of sounds like a stunt organized by those truth jackasses.
3. I have a “primates” tag; do I need a “mammals” tag?
Edited to add: I think I do need a “mammals” tag, and an associated “camels” tag. But even though primates are mammals, I don’t feel right moving the “primates” tag under the “mammals” tag, so I’m keeping them separate for now.
I think, with Father’s Day approaching, this is an important safety tip for everyone. A tie may be a good gift for Dad, if he has to wear ties and if you put some thought into it. However, I’d recommend staying away from ties with Nazi iconography, just as a general rule.
When two student journalists from Paw Prints, the newspaper of West Islip High School, set out to investigate school security, they thought they might do some good, maybe win the award for story of the year in the Long Island Press high school journalism contest. Instead, the article was quashed, and they wound up with a grown-up lesson in the consequences of testing nerves in a post-Newtown-massacre world.
Randal Schwartz, call your office please.
(That was perhaps my only disappointment at YAPC. As I noted, I did get to shake Larry Wall’s hand, but I never saw Randal Schwartz; I’m not even sure if he was there.)
Another NYT headline:
(Technically, I suppose that’s nobody’s business but the Turks. And, I guess, the IOC.)
In my previous post, I talked a little about the non-technical “amenities” (for want of a better word) at YAPC 2013. In this post, I want to talk some about the technical presentations at the conference, and a bit about the social aspects.
One thing I really liked about YAPC was the “Hallway Track”, or “Hallway++”. The basic idea behind “Hallway++” appears to have come from a gentleman named Matt S. Trout, and is based on two key ideas:
- The most valuable discussions often take place, not during talks, but in the hallway between talks.
- Too many people are afraid of disturbing or bothering someone in the hallway, and thus discussions don’t get started.
Thus, Hallway++. Hallway++ participants wear a sticker on their badge, or some other indicator to show they’re participating in Hallway++.
At least, it means you won’t be rudely interrupting – you may walk up to me and be told “frantically working on slides, please find me sometime after my next talk”, or you may walk up to a group and be told “sorry, we’re discussing a startup idea, we’ll wave when we’re done”.
I like this idea. I like this idea a lot. I want to marry it and have babies with it. More seriously, I would like to see this idea extended beyond technical conferences; I am seriously considering taking it to WorldCon if I end up going.
Did it work? Well, I had a fair number of quick interactions with participants, but no deep technical conversations. That’s more on me, though; in retrospect, I should have sought out more Hallway++ participants and tried harder to strike up conversations. (This is, as everyone knows, a hard thing for me.) Mr. Trout made what I thought was an interesting point in his talk on Wednesday: he’d thought Hallway++ would be a signal to introverts that it was okay to talk to extroverts, but as it turned out it was more of a symbol to extroverts that it was okay to talk to the introverts.
Another social note: YAPC 2013 in particular, and I believe YAPC in general (but since this was my first one, I can’t prove it) is very welcoming to first-time attendees. Monday morning, we were told that we (the first-time attendees) were considered to be VIPs, and would be treated as such: from the point of view of the YAPC organizers, we are the future of the language, and thus they want to treat us well
In that vein, I’d like to publicly thank Wendy Van Dijk for taking myself and several other first-time attendees under her wing on Monday night and taking us to dinner with her, Gabor Szabo, and about eight other folks whose names I didn’t catch. Not only did Wendy
drag invite us along, she even paid for part of the dinner. Thanks, Wendy, and if we’re ever at another YAPC together, or if I make it to the Netherlands, I hope to be able to reciprocate.
What of the talks? I didn’t take detailed DEFCON level notes on them, but here’s a list of the ones I went to, along with comments as appropriate. Things were structured so that there was a morning plenary session with breakfast (to cover important announcements) and a later afternoon single track of presentations by prominent figures, leading into the 10 minute lightning talks. So I did go to the “Welcome to YAPC” talk as well as Mark Keating’s “The Perl of Christmas Past”, since those were single tracks and the other option was to stand outside and eat pigs in a blanket.
Here’s some of the other stuff I liked. (Slides) indicates that the slides for that talk are available from the linked page at the time I write this. YAPC did live streaming video during the talks, and has a video page where they plan to upload talk videos post-conference:
- Joe McMahon’s “How to Make Your Users Not Want to Murder You, or Software Engineering for the Lazy”. Basically, how to manage change without making your users want to…well…you know. (Slides.)
- Carl Mäsak’s “Perl 6 OO without you going O_O – Zero to Perl 6 Training“.
- Bill Humphries’s “Perl Meets Modern Web UI“, which I mentioned earlier.
- Matt Nash’s “Solving Problems with Perl in a Commercial Bioinformatics Environment“: interesting talk on using Perl to solve problems related to genetic sequencing.
- Larry Wall’s “Stranger Than Fact” was more metaphysical than I expected. But if anyone has a right to get metaphysical, it is Larry Wall.
- Out of the day one lightning talks, Curtis Poe’s “Macroeconomics 101 in Five Minutes” and Sawyer X’s “CGI.pm Must Die!“. Sawyer’s talk in particular surprised me, as it was the first indication I had of the hostility towards CGI.pm in the community. CGI.pm is a core Perl module that’s used for building web pages, particularly ones that take input (say from a form) and produce some sort of output. (I’ve built an application with CGI.pm. But that was a long time ago in another country…) Anyway, CGI.pm was used heavily in the early days of the web, but many people apparently feel the module has outlived its usefulness and should be dropped.
- Walt Mankowski’s “Hack Your Mac With Perl” was a decent short talk on various uses of Perl for Mac OSX: for example, Perl scripts that can run as OSX application services.
- Deb Nicholson’s “Software Patents: Who’s Behind the Curtain?” was pretty much what you’d expect. Good talk, but no real news here if you’ve been keeping up.
- Daniel Sterling’s “Packaging Perl RPMs” was a worthwhile how-to on using the RPM packaging system. (Slides)
- Nick Patch’s “Unicode Best Practices” was one of the two talks that I got the most out of: basically, how to make your Perl code Unicode safe. (Slides)
- Josh Rabinowitz’s “Bitcoins and Perl“: neat talk, less on Bitcoin generation and more on Bitcoin management with Perl.
- Denise Paolucci’s “Be Kind to Your Wrists (You’ll Miss Them When They’re Gone)“. Great talk on preventing RSI and other wrist issues from someone who has been there, done that, and has the scars to prove it.
- Stevan Little’s “Perl – The Detroit of Scripting Languages“: more CGI.pm bashing!
- Day Two lightning talks of particular interest: Mike Greb’s “Monitoring EMS/Fire Dispatch w/ Perl“, about using Perl to generate MP3 archives and record scanner frequency and other metadata. Perrin Harkins’s ”A Fond Goodbye to CGI.pm“: yes, more CGI.pm bashing.
- Dave Rolsky’s “A Date with Perl” was the other talk I got the most out of. Mr. Rolsky’s talk covered the important things you need to know about using dates and times in Perl. (Big point: “Do not write your own date and time manipulation code.”) (Slides).
- Katherine Toomajian’s “The Care and Feeding of Volunteers: Lessons from Non-Profits and OSS“. Or, how to get people to want to work on your project, and how to keep them working on your project.
- Sawyer X did an amusing talk on how to write applications that work asynchronously. The best part? His application that finds “that guy” in “that TV show”.
- Geoffrey Broadwell’s “The Need for Speed: Benchmarking Perl 6“. I’m a benchmarking fan, so this pushed one of my buttons…
- Kevin Metcalf did a hilarious talk on “student Perl code, head-desk injuries, and you“, about the stupid things beginning (and advanced) Perl programmers do.
- Joe Axford did a talk that fits in well with the previous one, “Notes from a Newbie“, about the resources that are available if you want to up your Perl game.
- Augustina Ragwitz’s “Start Contributing to Perl, It’s Easy!” gave a good overview of how people can contribute back to the community, including specific how-to advice on working with CPAN and the Perl core.
- High point of the lightning talks on day three: “Why CGI.pm should live!” by Casey West. There may have been some sarcasm involved in this talk; I’m not 100% sure.
tl,dr: YAPC 2013 was one of the best events I’ve been to, from both a technical standpoint and an organizational standpoint.
Would I go back? That’s a problem for me. I don’t program in Perl professionally, so I don’t have someone who will pay my way. If I’m paying out of my own pocket, with airfare and hotel it becomes a budget stretch, and I don’t feel like I can afford YAPC, the S&WCA convention, and DEFCON every year. (At the moment, I can’t even afford the latter two this year.)
But next time YAPC is in my backyard (defined as “someplace I can reasonably drive to”) I’ll stay at the Motel 6. Or the Motel 3 1/2.
Thanks again to Wendy, the YAPC 2013 organizers, the good folks at the job fair, the presenters, and anyone else I may have forgotten. (Please feel free to tell me I forgot you in the comments.)
I’ve been lucky in a lot of ways. One of those is that I’ve been able to attend a decent number of professional events.
DEFCON is…DEFCON. It is probably about as well organized as it is possible for a group of people trying to herd 20,000 hackers to make it. The Black Hat briefings I went to were well organized, but I haven’t been to one of those in about 8 years, and that much money plus that many attendees buys a lot of organization.
I commented earlier that Texas LINUX Fest seemed well organized this year.
So how was Yet Another Perl Conference 2013?
I paid $80 to get in. And it was among the best and most thoughtfully organized technical conferences I have attended. Black Hat is perhaps the only other conference that, in my experience, even comes close – and that’s four figures to get into, so the trains had better run on time.
Every talk I went to started on time, or within a minute of the scheduled time. The tracks were thoughtfully divided into sections of 45 minutes or 20 minutes, so you had a good mix of shorter and longer talks. I think the 45 minute/20 minute track strategy is something other conferences (cough cough DEFCON cough cough) could benefit from. Some of the talks ran a few minutes longer than scheduled, but that was okay…
…because people were interacting, and the organizers built in generous 15 to 25 minute breaks between each track, so you had time to linger or run over a bit and still make the next talk…
…and/or grab a snack, because the organizers also provided food and drink. There was a morning breakfast, a mid-morning snack, and a 25 minute late afternoon break with snacks provided as well. And they laid out a decent spread: coffee, tea, juice, pigs in a blanket, doughnuts, bagels, muffins, and fruit for breakfast. More coffee, tea, and packaged snacks for the morning break. Cheese, crackers, cookies, veggies and dip, and more coffee and tea for the afternoon snack. And sodas all the time. Pretty much unlimited sodas. I almost think I may have drunk $80 worth of Diet Dr. Pepper. And on Monday night, they had the most magical words in the English language…
…”open bar”. (This was a pre-dinner mixer, and they did ask folks to voluntarily restrict themselves to one free alcoholic drink.) But enough about the food. What about the…
…tchotchkes? The conference provided ones were very good: a t-shirt, coffee mug, pens, notepads, and some other things I’m forgetting. One omission: they did not provide any kind of bag. (A couple of exhibitors, including my friend whump’s company WhiteHat Security, provided bags, but those didn’t show up until the second day of the conference. WhiteHat also provided some of those neat flashy bouncy balls, which I’m sure will be a big hit with the younger set.)
…The organizers also set up a job fair, at which I got a fair number of leads and even more stuff. Shutterstock (Edited to add: thanks to Nick Patch for correcting my synaptic misfire on this.) gave me a pretty cool t-shirt, which I may try to get a photo of later. Also noteworthy: the 4GB flash drive from MediaMath (which should be awesome for setting up a bootable LINUX distro: right now, I’m thinking Debian), and the aluminum water bottles from Booking.com. I’m afraid I’m forgetting someone who gave me something really cool, but I got so much stuff I could hardly carry it all. If I did overlook someone, I’ll try to make up for it in a second post.
Speaking of a second post, I think I want to end this one here and write about the actual talks I went to in a second post, just to keep the length on this one down to something reasonable. I also want to say thanks to a couple of folks and talk about Hallway++.
I realize I’ve been talking more about the stuff around the conference than the actual conference itself, but those things go a long way towards making people feel comfortable and welcome. When they are well done, like at YAPC 2013, people are happy. Happy people tend to learn more and interact more with each other.
Just busier than a one-legged man in a butt kicking contest.
I did get to shake Larry Wall’s hand and say thanks to him. (For those of you who are not Perl people, this is like an observant Jew meeting Moses.)
I also got to spend some time with Bill “whump” Humphries, who was in town presenting “Perl Meets Modern Web UI”. I thought it was a great talk, but I’m biased: I’ve known Bill since our days
in the CIA spying on student organizations at the University of Texas, though I haven’t seen as much of him as I’d like in the past few years.
More as time permits. The “Hack Your Mac With Perl” talk is about to start.
Last week was not a good week. This coming week is shaping up to be pretty hectic (though I am hoping not as personally unpleasant), so there may be a blogging slowdown.
I spent all day yesterday at the 2013 edition of the Texas LINUX Fest. I haven’t been since 2010, but that had less to do with my frustrations with the 2010 organization and more to do with personal issues. (In 2011, that just turned out to be a bad weekend, with having to get my car inspected and deal with other things. Last year, it was in San Antonio; while that may be a welcome change of pace, the schedule wasn’t compelling enough to make me drive 150 miles round trip.)
I thought about doing detailed summaries of each session I attended, but frankly I’m a little worn out and a little lazy. I’d rather mention a handful of panels I did like. (There were some others that I went to, but don’t feel I can fairly evaluate because they weren’t what I was expecting, or I was distracted by other issues (see below), or, in one case, I just think it’d be a jerk move to badmouth the presenter.)
I really enjoyed Theo Schlossnagle’s “Scaling: Lessons Learned and Their Applications to Apache Culture” keynote speech, which covered a lot of good points about complex systems. He sees commonalities between building scalable systems and building communities to support them. Many of the points he made may not be hot news flashes but are worth repeating. Among those:
- People get so caught up in how awesome it it to build stuff that they forget what the real world looks like.
- Code is just a tool. It isn’t a child or a family member. You don’t have loyalty to it.
- Engineers have a tendency to focus on the technology they love instead of the actual problems they face.
- At the core of things, your job is to tell the computer what to do.
- Unbalanced hyperspecialization leads to poorly constructed solutions.
- The biggest challenge is that increasing scale and increasing performance demands lead to increased complexity.
- Technological complexity is an emergent property of complex and changing business problems. This complexity has to be understood and managed, which is difficult for specialists.
- If you don’t provide value, your [stuff] doesn’t matter.
- In order to survive, we need generalists. Schlossnagle didn’t quote Heinlein, but he might as well have.
David Stokes from Oracle did what I thought was an excellent talk on “The Proper Care and Feeding of a MySQL Database”. I’ve mentioned before that I’ve been dabbling in MySQL, so I got a lot out of this. Some of it may have been obvious (more RAM, more disks, good things. Use decent hardware, not something you scavenged from the admin assistant because it was too slow to run the latest Office), but the two things we learn from history are that too many people don’t learn from history, and that the obvious often isn’t.
Philip Ballew’s “Ubuntu; Where We Were, and Where We Are” presentation was…amusing, shall we say, mostly for the level of skepticism directed at Ballew from the audience, many of whom seem to be skeptical about recent Ubuntu decisions like the replacement of X. I’m becoming increasingly skeptical of Ubuntu myself; I just upgraded to 13.04, and now I’m running into the “The system is running in low-graphics mode” error, which I haven’t had time to fully debug. The worst part is that I’m getting this only intermittently; I think it may be a timing issue, possibly with some Virtual Box kernel extensions.
Owen Delong’s “IPv6 – It’s Easy on LINUX” presentation was also very good. I haven’t even started to configure my systems for IPv6 (and I’m not sure everything supports it: I’m sure about the Mac and Project e, but less sure about some older gear), so I found Delong’s talk useful. I was surprised, though, that there was even more hostility and skepticism from the crowd than there was at the Ubuntu panel. Why is IPv6 an issue in 2013? And many of the questions from the crowd seemed to boil down to “How do I emulate this particular thing I do in IPv4 using IPv6, even though the reason this is needed in IPv4 is because we have a limited number of IPv4 addresses available, where in IPv6 we could give every single atom in the universe a unique address and not run out?”
Okay, that was a long question, but you get the point.
Brad Richardson’s “GPU based password recovery on LINUX” lightning talk is worth checking out. He was able to do the talk in about five minutes, instead of the allotted ten, and the subject is interesting; using reasonably priced GPUs, you can rapidly break MD5 hashes, orders of magnitude faster than throwing a general purpose CPU at the problem. (Richardson’s slides give specific performance figures: try 16 hours 46 minutes to brute-force a “8 character password with lowercase, uppercase, and numbers”, versus an estimated 36 days for a CPU based attack.)
Anyway. Tomorrow is the start (for me) of Yet Another Perl Conference 2013. (I registered for the conference itself, but couldn’t afford any of the training going on over the weekend or after the conference. Plus the training conflicted with the LINUX Fest.) I expect to be pretty tied up Monday through Wednesday, though I will try to blog from YAPC as downtime and network connectivity permits. I may even try to blog YAPC 2013 itself, but I can’t promise that.
Edited to add: Why did I not have a “Perl” category on this blog, but did have a “Python” category, given that I use Perl more often than Python? Fixed.
Edited to add 2: Thinking some more about it, it made sense to have a “Programming Languages” category and make Perl, Python, and others sub-categories below that. I’m still thinking about whether it makes sense to put the languages category under “CompSci”, but that way lies
Edited to add 3: I realized there were two other points I wanted to make.
- I was much more favorably impressed with the organization of TXLF this year than I was in 2010. Of course, they’ve had four of these, so you would expect them to have the bugs fixed. Still, I was impressed at how smoothly almost everything from registration onwards ran. The only problem I saw was an unexplained 20 minute delay in the start of the lightning talks, but I didn’t feel that was a major issue.
- The quantity of tchotchkes available at TXLF? Very high. The quality of tchotchkes available? Still evaluating that, but I’m decently impressed. Favorites: the microfiber cleaning cloths from OrangeFS, and the SavvisDirect USB/12V adapters. Special mention goes to Hostgator, who were giving away a much wider variety of tchotchkes than any other single vendor.