brian's 2011 Perl goals
These are the things that are likely to happen:
- A new cpan(1) (the thing from App::cpan and also bundled with CPAN.pm) version for Perl 5.14. I need to get on that pretty soon, then. :) The current cpan(1) has support for loading alternate config files, and I'd like to also provide a config option that acts as much as possible like cpanm. I think that's probably 90% possible, even if we have to convince CPAN.pm to do things slightly separately.
- A new edition of Learning Perl. I've been slowly working on that for awhile and keeping track of myself at a blog I use to track its progress. This edition will cover up to Perl 5.14. Our goal is dead trees by OSCON. There will also be an update to the Learning Perl Student Workbook.
- A new edition of Intermediate Perl. We're going to drastically update the distribution creation section (not for Dist::Zilla, though, probably, because we're constrained to teaching people how to do things without relying on a tool), some very light Moose stuff, and some better testing stuff. I also want to add a chapter just for regex objects. Most of that is already written, but it's time to let other people see it. Our goal is dead trees by OSCON, just like Learning Perl.
- Update a couple of chapters of Mastering Perl. This book probably won't see another dead trees edition, but O'Reilly is game to try some other things, like updates in Safari or PDF updates.
- See what Dist::Zilla things I might steal for Module::Release. I'm not a fan of Dist::Zilla only because I don't like any tool that forces me to use that tool, but that are probably some good ideas I can steal anyway.
- I've indexed most of BackPAN. Now it's time to make it easier to get and use the data. Some of this goes back to the PAUSE web service that I started at the 2010 Vienna QA workshop.
- Keep going with The Effective Perler, the companion website to Effective Perl Programming. We had at least one meaty Perl Item every week, and I might be able to pull that off again.
I haven't thought too much about my conference schedule this year, but I'm interested in spending my conference time budget on some new events or new locations. There are so many Perl events now that I have to stop feeling guilty about picking and choosing. Instead of doing the same events I've done in the past, I want to mostly go to events I haven't attended yet. I need to lighten up the summer too. "Conference season" has become too much of a black hole. I need to reclaim some of that time to get real work done, so I have to pick and choose in June-July-August so I'm not traveling or recovering from traveling for the entire summer.
I've also had to concede that I need to make my conference activities cash neutral. I don't need to come back with more money that I started with, but I can't lose any. I try to do that by teaching classes, whether for the public or for sponsors. I want to work for my sponsorship. That's getting a bit harder since more people are doing that though. :)
- Frozen Perl in Minneapolis. I'll be teaching Effective Perl Programming the Friday before, and giving the keynote. I've been there before, but it's so close, and it reminds me that it's really not that cold in Chicago (it was -15 C in Minneapolis when I was there on New Years Day).
- OSCON, which I've done many times, but mostly because I'm on the conference committee and a lot of important people from my primary publisher show up.
- São Paulo Perl Workshop—I'd never been south of the equator before 2010, but I had separate trips to Buenos Aires and Santiago. Now I want to visit Brazil. Randal has been down there and says they have conference sizes that put almost every other event to shame.
- YAPC::Asia—I really enjoyed my trip to Tokyo and Shibuya.pm, so I'd like to try that again. I don't think a class would work out there unless I learn Japanese very quickly. :)
- London Perl Workshop, because I haven't been to London for awhile and I hear it's really nice in December.
- YAPC::EU in Riga, I hope, but it's really close to OSCON. I have to be in Europe around then anyway, so I think it's a matter of scheduling and figuring out how to cover the costs.
- OSDC::AU - There's a solar eclipse with prime viewing in Australia on November 14. If I can stretch out the trip a bit, I might be able to do both.
- I'll have to check the QA Workshop news because I haven't paid attention to that, but good things always happen there.
I love forward to the Learning series update. I tend to update mine at the same time too. Plus I have a son that is just now talking about programming. :-)
I am curious why they would hold back a dead trees version of "Mastering"?
There's an exponential (literally) fall off in sales the more advanced a book gets. On the Learning Perl blog, I have a plot of the relative values of sales of the books in the past year.
Learning Perl sells well enough to make sense to risk capital to make a couple of palettes worth of books. Intermediate Perl is a bit more risky, and Mastering Perl is more likely to not sell out a printing.
Mastering Perl had huge sales for its first quarter, now it's at its expected (although not hoped for) level.
Print on demand might help. We'll see. I'm not too worried about it right now.
Please follow common modern perl best practices like
http://perl-begin.org/tutorials/bad-elements/
https://www.socialtext.net/perl5/index.cgi?ancient_perl
in Learning Perl 6th.
Learning perl 5th(2008) still contains ancient style code
* "Ampersand in Subroutine Calls"
* "Bareword filehandle (type glob), two arguments open"
* "awkward error handling"
if ( ! open LOG, ">>logfile" ) {
die "Cannot create logfile: $!";
}
* "non-my loop variable"
foreach $person (qw) {
...
}
while ( ($key, $value) = each %hash ) {
...
}
If Shlomi wants a particular style, he can use it in his own book. :)
Learning Perl's job is to still teach people Perl, so we're going to do that. We can't assume that everyone is starting fresh with a blank document to create new programs. They also might have to maintain older programs.
We already do show "modern Perl" in most of the examples. We were doing it before it had a name. However, we can't ignore ancient Perl because people might be buying the book to work with ancient Perl. We're going to show them a variety of things.
We also explain why we use & in subroutine calls in that book. Learning Perl is an introduction, taking into account the skill level of the reader. It's not meant for someone who already knows Perl. There are certain little lies that we tell to make the first 40 hours of Perl enjoyable without going into every detail or requiring them to read the whole book to get their first programs to work. Our book is practical, based on decades of experience teaching the subject to real people. One area that greatly helps newbies is the ability to choose any sub name they like before they know all the built-in names.
I have noted some places where we will make some updates, but we're not going to ignore parts of Perl because there's some cabal who thinks that people shouldn't know half the language.
I taught the Moose class following YAPC::Asia 2009 and at the time I didn't speak more than a few dozen words of Japanese. I just had an interpreter, which was a fun experience. If you're intent on teaching a class in Tokyo you can probably arrange something with @lestrrat. I encourage it! :)
Hey Brian, this seems like a great challenge for the year, really hoping you manage to complete all your tasks.
Looking forward to seeing you at the LPW2011, we are 'currently' a free conference who survive from sponsorship and as such offer everything for free (including workshops) but if you want to run a short (free) workshop we would be most honoured - but it would be good to see you there any way.
Hi brian
The other reason to view an eclipse from Australia is that you'll finally see the sun the right way up - hahahahaha.
Brian, could you instead just include the updated chapters of Mastering Perl as more advanced chapters in Intermediate Perl?
That way, I'd only have to buy two books. :)
Do you mean "Can you do more work and charge less?" :)
Mastering Perl is a different sort of book than Intermediate Perl. In the Llama and Alpaca, we only use what we already show you and there's a progression. Each of those books are designed as self-contained units with a particular goal aimed at the beginner market.
Mastering Perl is a collection of advanced topics where I don't assume that I have to explain everything that I want to use. I assume that buy the time people get to that book, they know about the Perl documentation and are comfortable with doing more than a little research on their own. That's not a good fit for Intermediate Perl.
Don't feel bad about buying more than two books though. Book sales make it possible for me to write the books. Without the royalties I get from people buying the books, these books wouldn't exist. When you hand over your credit card, just realize that for your very small investment (even for the markets where the prices are much higher than in the US), you actually get more than you paid for. O'Reilly is a really good publisher with a lot of great people that make it happen, too. Don't feel bad that they can pay people to make books like mine make it to the public. If you want to feel bad about Amazon, that's fine though. :)