merlyn's Journal merlyn's use Perl Journal en-us use Perl; is Copyright 1998-2006, Chris Nandor. Stories, comments, journals, and other submissions posted on use Perl; are Copyright their respective owners. 2012-01-25T02:00:56+00:00 pudge Technology hourly 1 1970-01-01T00:00+00:00 merlyn's Journal Bob Jacobsen interview on FLOSS Weekly Last week, I interviewed Bob Jacobsen for FLOSS Weekly. Bob used Perl's Artistic 1.0 license on some Java code to manage model trains. The code was later patented by an Oregon-based company(!) and then Bob got sued(!!) for Bob distributing the other company's patented code(!!!). The good part of the story is that this is the first test at the US Federal Appeals Court level for an open source license to be enforceable even if no money exchanges hands, and... we won! <p> Bob spent a lot of time and money on the case though. Listen to <a href="">the podcast</a> and contribute to <a href="">his legal defense</a> if you care about open source.</p> merlyn 2010-04-23T03:55:11+00:00 journal Speaking to Atlanta Perl Mongers Thursday (before D*C) <p>Join me for <a href="">A special night with Randal Schwartz</a> where I'll be talking about "Perl second-best practices", which I describe as:</p><blockquote><div><p> <i>So, you don't have time to read Damian Conway's "Perl Best Practices" book, to understand his "256 guidelines on the art of coding to help you write better Perl code"? Hear Randal Schwartz provide the executive summary, including pointing out where Randal disagrees with Damian, and why. This high-speed overview will help you understand "code layout, naming conventions, choice of data and control structures, program decomposition, interface design and implementation, modularity, object orientation, error handling, testing, and debugging." But using shorter words. </i></p></div> </blockquote><p>If everything goes well, I'll be recording this and putting it into <a href="">my Vimeo feed</a> in HD.</p> merlyn 2008-08-25T21:16:05+00:00 journal This is my Perl Blog, and I have other blogs <p>Trying to get the "blog" google juice going here, along with others, this is indeed my Perl Blog. </p><p>When I originally started posting here, this was my only blog, so early messages were about everything interesting. But I got <a href="">a personal blog at</a>, and since then have been keeping this Perl Blog to simply being a Perl Blog. </p><p>Recently, I've been learning, writing about, speaking about, and teaching Smalltalk, so I also have a <a href="">Smalltalk Blog</a> where I speak strictly about Smalltalk-related items. </p><p>For a rollup of all of my blogs and web presences, you can follow my <a href="">Jaiku feed</a>.</p> merlyn 2008-04-29T18:59:51+00:00 journal Torturing with Smalltalk Over on <a href="">my Smallltalk Blog</a>, I talk about <a href="">how I tortured last week by presenting the Smalltalk Seaside Web Framework</a> instead of a Perl talk like the rest of the presentations for the day. merlyn 2008-04-29T18:54:14+00:00 journal Discussion about Perl's "compiler" in TheCommandLine podcast <p>I was drawn to <a href="">last week's podcast episode of The Command Line</a> because they mentioned my name (thank you, <a href="">EveryZing</a>!). When I listened to the entire podcast, I heard some mis-statements about Perl as being strictly an interpreter, so I added comments to the show, as well as subscribing to the show for updates. </p><p> Well, it looks like my comments made it into the initial content in <a href="">this week's show</a>, which delighted me immensely. It's good to make sure people understand how compiled Perl has already existed for 20 years, and will be even more explicit in Perl 6.</p> merlyn 2008-04-07T15:50:15+00:00 journal I made MacOSX Hints today! <p>Rob Griffiths IM'ed me saturday while I was sitting at ATL airport, asking what my day rates were. </p><p>My normal reply was "depends on the task", and asked him what he had in mind. As he described it, it fleshed out to all of 10 lines in my head, so I said "well, buy me lunch and we'll call it even". He couldn't believe that it could be that short to create or to write. </p><p>Ten minutes later, I showed him the code that he added to <a href="">a hint for today about renaming old iChat logs</a>. </p><p>Hadn't tried it on my own data, but told him "it should probably work". I'm pretty good at previewing code in my head.<nobr> <wbr></nobr>:) He tried it, and it worked fine for his data. Yeay. </p><p>So there I am, famous again. And got a free lunch for 10 minutes work. Not bad.</p> merlyn 2008-02-25T20:26:26+00:00 journal R.E.M. chooses "artistic license" for video mashups Looks like the Perl hackers aren't the only ones who like the new Artistic 2.0. Apparently <a href="">the band R.E.M. has chosen to release 11 of their videos under Artistic 2.0 for mashups</a>. Wow. merlyn 2008-02-16T16:27:17+00:00 journal If only I could be cloned.... Apparently, my <a href="">"programming-related memory engrams"</a> are worth something! merlyn 2008-02-15T20:48:09+00:00 journal "...something that compels me to express myself with it..." <blockquote><div><p><nobr> <wbr></nobr><i>...I've come to the preliminary conclusion that PHP makes Perl look like Japanese for its sheer compact complexity and power. There's something about Perl that's scary, something that's beautiful, something that compels me to express myself with it. It's going to be addictive stuff, i can tell.<nobr> <wbr></nobr>...</i></p></div> </blockquote><p>... from a <a href="">recent livejournal post</a></p> merlyn 2007-11-15T14:00:02+00:00 journal "Shot through the heart... and you're to blame..." <a href="">You give Perl, a bad name, bad name...</a> (Especially read my comment about the localtime vs gmtime issue.) merlyn 2007-09-21T15:04:14+00:00 journal Excuse for lack of security <p>Often, when I warn of security concerns for newbie web programmers, they retort "but I don't have anything of value... it's just my blog, so I don't care". </p><p>The point is, they have a server. It's a potential spamming location, or anonymous platform from which to launch more dangerous attacks. What they have is <b>net</b> and <b>CPU</b>. That's useful to someone. </p><p>Maybe there should be some sort of license before you're allowed to expose a web server to the public net. {sigh}</p> merlyn 2007-09-10T15:34:35+00:00 journal 255th Perl article published I just turned in my 255th Perl print-magazine article (this one for <a href="">Linux Magazine</a>). As each article has been printed in a magazine with an average of 100,000 circulation, that means my name has appeared in print over 25 <i>million</i> times. Wow. If that was a single book, I'd be somewhere on the NYTimes top sellers, I'm sure. Too bad it's spread over 12 years. {grin} merlyn 2007-08-10T02:22:31+00:00 journal YAPC::NA 2007 is over... <p>My pictures are <a href="">up on Flickr</a> already, including the <a href="">early morning "fire drill" at the Hilton</a> on my last day. </p><p>I had about 30 people in my 2-day "master class", where I presented "Perl Second Best Practices" (my take on PBP) and "Persistent Perl Data" (a survey of simple persistence, DBI, Class::DBI, and Rose::DB::Object). </p><p>I'm beat, heading home, but no rest for the weary, as I'll be on the road for six of the next seven weeks.</p> merlyn 2007-06-30T13:18:13+00:00 journal Successful fashion choices Just stumbled across this in <a href="">the <tt>classes</tt> distro</a>:<blockquote><div><p> <i> Also around that time I bumped into another Perl guy, Randal. I think I even went to one of his Karaoke haunts with him at least once (although he did not sing, for better or worse). I remember those were dark times for Randal. When the movie "Hackers" came out (you remember that one with a very young Angelina Jolie) we had a saying around the office: "Randal Schwartz never wore silver hot pants."</i></p></div> </blockquote><p> Hear hear.</p> merlyn 2007-06-18T18:32:11+00:00 journal Foreword from "Mastering Perl" I wrote this for the upcoming <i>Mastering Perl</i> book, but I figured it was worth reprinting it here. Enjoy.<blockquote><div><p>One of the problems we face at Stonehenge as professional trainers is to make sure that we write materials that are reusable in more than one presentation. The development expense of a given set of lecture notes requires us to consider that we'll need roughly two to four <b>hundred</b> people who are all starting in roughly the same place, and who want to end up in the same place, and who we can find in a billable situation.</p><p>With our flagship product, the <i>Learning Perl</i> course, the selection of topics was easy: Pick all the things that nearly everyone will need to know to write single-file scripts across the broad range of applications suited for Perl, and that we can teach in the first week of classroom exposure.</p><p>When choosing the topics for <i>Intermediate Perl</i>, we faced a slightly more difficult challenge, because the "obvious" path is far less obvious. We concluded that in the second classroom week of exposure to Perl, people will want to know what it takes to write complex data structures and objects, and work in groups (modules, testing, and distributions). Again, we seemed to have hit the nail on the head, as the course and book are very popular as well.</p><p>Fresh after having updated our <i>Learning Perl</i> and <i>Intermediate Perl</i> books, <code>brian d foy</code> realized that there was still more to say about Perl just beyond the reach of these two tutorials, although not necessarily an "all things for all people" approach.</p><p>In <i>Mastering Perl</i>, <code>brian</code> has captured a number of interesting topics and written them down with lots of examples, all in fairly independently organized chapters. You may not find everything relevant to your particular coding, but this book can be picked up and set back down again as you find time and motivation -- a luxury that we can't afford in a classroom. While you won't have the benefit of our careful in-person elaborations and interactions, <code>brian</code> does a great job of making the topics approachable and complete.</p><p>And oddly enough, even though I've been programming Perl for almost two decades, I learned a thing or two going through this book, so <code>brian</code> has really done his homework. I hope you find the book as enjoyable to read as I have.</p></div> </blockquote> merlyn 2007-06-17T04:32:21+00:00 journal UnixReview/SysAdmin ends; my 12-year column run ends with it <p>I've just been informed by my editor that the August 2007 issue of UnixReview/SysAdmin will be the last issue. I wrote <a href="">71 bimonthly columns from March 1995 to July 2007</a> for that magazine sequence, covering a wide variety of Perl topics (from web 0.0 to web 2.0 and beyond), and getting my name in print around 10 million times. I will miss the job. </p><p>I'm still writing for <a href="">Linux Magazine</a> (94 articles and climbing), so you can still get a monthly dose of wisdom there.</p> merlyn 2007-06-13T17:26:30+00:00 journal Perl to Python <blockquote><div><p> <i> "Our team has been spearheading the transition from Perl to Python at the facility", says Grant. "There are three primary reasons for this. The creation of Python bindings to a C++ library is very easy and allows us to utilize core R&amp;D libraries in the rest of the pipeline more quickly. The object-oriented nature of Python is very attractive given our new asset model and should allow us to make changes to that asset model much more easily in the future. And, Python is a first-class citizen in many of the third-party software applications that are used in our industry." </i></p></div> </blockquote><p> from <a href="">DreamWorks Animation "Shrek the Third": Linux Feeds an Ogre</a></p> merlyn 2007-06-05T23:37:03+00:00 journal reporting piracy - on a *gopher* site <p>A "gopher:" link came up as a joke in one of the IRC channels. So I wanted to see if Firefox still groks gopher links. It does. And I found Veronica. And typed Perl. And one of the first three hits has PDFs of Learning Perl, Programming Perl, and Advanced Perl Programming. Hint: those are pirated. </p><p>So, now I get to email to request a takedown notice... on a gopher site!</p> merlyn 2007-05-10T02:47:58+00:00 journal Recording news again <p>I just finished recording the as-yet longest <a href=""></a> "news" segment. I'm sure Josh will have it up on the site within a day or two (update, at <a href=""></a>). </p><p>Josh does a great job getting me a list of things to read. The fun part is that I can do it as time permits, which usually means "late".<nobr> <wbr></nobr>:) This time, I happened to be finishing up a 11-day stay in Rio De Janeiro, Brazil, so I pulled out the laptop and the plantronics folding headset, and got to it. </p><p>Before my Macbook Pro, I had to record the audio pieces using Quicktime Player, then bring them in to Garageband to edit. Now I can record directly in Garageband (without getting the dreaded "we ran out of CPU power"), saving me some time. </p><p>Once I get the raw audio recorded, I go back and drop in the "stingers" between the segments. One listener wrote in and said they sounded "kitchsy", to which I responded that this means I succeeded, because that was the sound I was going for. In dropping in the stingers, I sometimes have to stretch or shrink the gap, but I usually hit the gap dead-on while I'm recording the news in one take, so the work is minimal. </p><p>For this 10-minute news result, I think I spent about an hour on it, but it's an hour I'm happy to spend if it helps the Perl community keep more in touch.</p> merlyn 2007-04-25T12:25:50+00:00 journal $ instead of \z in regex <p>Once again, I corrected a posting where someone had used $ instead of \z to anchor a regex "at the end" in a way that would have opened up a potential security hole. (The string would have matched ".foo\n" as well as ".foo", which could have led to some interesting mismatches later.) </p><p>I realize that this is a feature, but it's a subtle misfeature. I wish more people were educated about this situation.</p> merlyn 2007-04-16T10:59:51+00:00 journal Nothing to see here, folks I have <a href="">nothing to announce</a>, but since the non-announcement affects my presence at international Perl events, I figured I'd tell you nothing about it. So, don't check it out. merlyn 2007-02-06T15:13:09+00:00 journal See for non-Perl entries I'm starting to post at <a href="">my Vox blog</a> for non-Perl-related entries. For example, I just posted how I got <a href="">a GNU car</a> recently. merlyn 2006-10-28T14:46:56+00:00 journal It's not how the votes are cast, but how they are counted <blockquote><div><p> <i> In version of the machine that was in use as late as 2003, the exact same supervisor PIN was hard-coded into every single AccuVote TS shipped nationwide. That PIN was 1111. (I am not making this up.) </i> </p><blockquote><div><p>-- from <a href="">How to steal an election by hacking the vote</a>.</p></div></blockquote></div></blockquote> merlyn 2006-10-26T17:16:35+00:00 journal Perl KDE bindings, anyone? <p>I'm at an open source conference in Venezula, and one of the other speakers is a big guy in the KDE world. Apparently, KDE is going to emphasize being able to write tools in high level widgets, for which they have great Python and Ruby supported bindings and demonstrations. But when I asked about Perl, he said that it wasn't being included, because nobody is maintaining any sort of KDE binding for Perl! </p><p> Those of you looking for a project, please contact me and I'll put you in touch with him. I really think Perl should be represented in this space.</p> merlyn 2006-10-20T11:35:47+00:00 journal "Communication is free" Not sure why it took this long, but <a href="">someone has finally posted audio</a> from my "Communication is free" talk at FISL7.0 in Brazil a few months ago. merlyn 2006-10-05T14:56:02+00:00 journal You don't know objects if you don't know Smalltalk <p>I've often argued that a programmer who says "I know objects" without having touched one of the "pure object" systems like Smalltalk or Eiffel, doesn't really know "objects". When people would ask "what is smalltalk?", I'd point them at <a href="">Squeak</a>. </p><p>Well <a href="">Keith Fieldhouse</a> has gone and done the next good thing: he's written <a href="">an article for OnLAMP about Squeak</a> that gives far more handholding than I've been able to do quickly. Yeay Keith. That one's going into my bookmarks.</p> merlyn 2006-09-22T14:17:47+00:00 journal "Responsible Breech Reporting" - me on another podcast again <p>I was interviewed for <a href="">another episode of Security Catalyst</a>: this time, a panel on reponsible breech reporting. Check it out! </p><p> <i>Update:</i> or yeah, breach not breech!</p> merlyn 2006-09-18T02:37:55+00:00 journal Perl Fridge Magnets as OmniGraffle Template Perhaps posted before, but I just stumbled across <a href="">the Perl Fridge Magnets as an OmniGraffle stencil</a>. Enjoy. merlyn 2006-09-17T16:51:58+00:00 journal Plates on sticks! Bears on bicycles! And a group doing <a href="">the Sabre Dance</a> on marimba! merlyn 2006-08-30T04:39:32+00:00 journal More Leo, more cruise comments, and now in MP3 goodness <p> I've just pushed episodes 12 to 14 of <a href="">GeekCruises News-es: The Podcast</a> on the time-release site (the first came out today). In these episodes, my buddy Leo Laporte interviews <i>me</i> in a sort of "reverse interview format". </p><p> Also, based on a lot of feedback, I've dropped the "enhanced podcast" format and replaced it with a traditional MP3 flavor. All my grand plans of having lots of embedded pictures and URL links haven't materialized in the first 11 shows, so it's time to fall back to something almost everybody can enjoy.</p> merlyn 2006-08-07T15:55:38+00:00 journal