Perl

add news feed

tweet a story

I just learned that there is a <a href="http://www.meetup.com/Open-Source-and-Free-Software-in-Israel/">Meetup Group</a> dedicated for Free and Open Source Software in Israel. It can be used by the various ...
I just learned that there is a <a href="http://www.meetup.com/Open-Source-and-Free-Software-in-Israel/">Meetup Group</a> dedicated for Free and Open Source Software in Israel. It can be used by the various FOSS-related groups that have meetings in Israel. For example the upcoming meeting if the Tel Aviv Perl Mongers is also <a href="http://www.meetup.com/Open-Source-and-Free-Software-in-Israel/events/143967952/">listed</a>. <p>For the full article visit <a href="http://szabgab.com/foss_in_israel_on_meetup.html">Free and Open Source Software in Israel - Meetup Group</a></p>
about 2 hours ago
As I was looking through <a href="https://metacpan.org/">MetaCPAN</a> for modules using the DB debugger back-end I noticed <a href="https://metacpan.org/module/Devel::hdb">Devel::hdb<...
As I was looking through <a href="https://metacpan.org/">MetaCPAN</a> for modules using the DB debugger back-end I noticed <a href="https://metacpan.org/module/Devel::hdb">Devel::hdb</a>. It is an awesome project, providing a <a href="http://perlmaven.com/debugging-perl-with-hdb">web-based debugger front-end for Perl</a>. <p>For the full article visit <a href="http://szabgab.com/web-based-debugging-article-and-the-perl-maven-over-3000.html">Web based debugging article and the Perl Maven over 3000</a></p>
1 day ago
Laziness is a virtue in programmers, but like any virtue, it's easy to take it too far (or not far enough), in which it becomes a vice. When my career in technology started, I was a system administrator. If you think programmers are laz...
Laziness is a virtue in programmers, but like any virtue, it's easy to take it too far (or not far enough), in which it becomes a vice. When my career in technology started, I was a system administrator. If you think programmers are lazy, you don't know many really good system administrators. My rule was "If I'm bored four days out of five, I've done my job well." A bad system administrator will ignore problems. A good system administrator will prevent problems, often through a combination of automation and monitoring. That discipline is good for programmers, too. (Programmers need a healthy sense of paranoia about all of the things that could go wrong, from anything like hardware failures to interaction with real users who never, ever, ever read instructions.) That laziness is bad for programmers, too. When I first released Modern Perl: the book, I didn't render an HTML version because I was falsely lazy. I didn't want to do the work of turning the plain XHTML templates into something attractive and usable. Eventually (second edition), I did add the book's text in entirety to this web site. It took a couple of days of spare time to fit everything together in a way that made me happy enough, or at least didn't make me too unhappy. For at least most of 2013, I've meant to go back and add simple SEO optimizations to the chapters, for things like meta descriptions and better titles. Doing it the quick and easy way will take me an hour. The problem is, I want to do it right. I know I'll have a new edition of the book ready to go in the next couple of months, and then I'll have to spend another hour or two getting the on-page SEO elements back in place. I don't want to do that manual work twice. Instead, I'd rather automate the entire process so that I can type one command and render the book in multiple formats all ready for the printer, for electronic delivery, and for plain static HTML hosted on this site. In other words, I've put off doing something simple which will help people find what they're looking for because it'll take at most an hour of manual work in favor of not spending several hours automating that process. That is false laziness, and it affects far more that my hobby projects. I have to fight it on almost everything I do. (When I was a child, I spent an afternoon attempting to invent a machine which would make my bed for me, because that was more interesting than spending 90 seconds to make my bed.) What's the solution? I'm not sure. In my professional work, the relentless push to deliver good data to clients and to satisfy the business requirements of a growing business helps me remember that my goal as a programmer is to produce value. Undelivered value isn't value at all. That's no excuse to do a sloppy job or release code I'm not proud of, but it's a constant reminder that my work isn't some theoretical exercise of perfection. It has to exist and it has to work. The reticence to do something because I think there might be an abstraction or automation or simplicity that I'll eventually get to? That's dangerous, if it keeps me from doing useful and necessary things.
2 days ago
These links are collected from the Perlbuzz Twitter feed. If you have suggestions for news bits, please mail me at andy@perlbuzz.com. Using Test::More::subtest() (wumpus-cave.net) Roundup of Perl object techniques (oylenshpe...
These links are collected from the Perlbuzz Twitter feed. If you have suggestions for news bits, please mail me at andy@perlbuzz.com. Using Test::More::subtest() (wumpus-cave.net) Roundup of Perl object techniques (oylenshpeegul.typepad.com) A sitemap generator plugin for Catalyst (blogs.perl.org) Carp::Always::EvenObjects includes stack traces, even with exception objects (blogs.perl.org) I love how the PostgreSQL people take their core development very seriously. (databasesoup.com) What if Perl OO was a core feature? (blogs.perl.org) Hash manipulation with hash slices (webquills.net) Building your own Moose (blogs.perl.org) Lexical subroutines in Perl 5 (rjbs.manxome.org) "A new object system for the Perl 5 core" by Stevan Little, livestreaming 9/27 (blogs.perl.org) Continuous integration on DBD::ODBC with Travis (martin-evans.me.uk) Off to YAPC::Asia with @rjbs (Bonus: horrifying airplane paint job) (rjbs.manxome.org) The Future Perl Versioning panel (youtube.com)
7 days ago
Tony Cook writes: The most interesting changes this month were probably: - 115928 - a common rand() implementation - 117265 - failing system calls on embedded NULs - 3330 - warning on ++$foo when $foo isn't a number, or magically ...
Tony Cook writes: The most interesting changes this month were probably: - 115928 - a common rand() implementation - 117265 - failing system calls on embedded NULs - 3330 - warning on ++$foo when $foo isn't a number, or magically incrementable - 85104 - preserving $^E across signal handlers perl #115928 This month I implemented perl's new rand() implementation, avoiding the portability issues of random number generators on various platforms. This does not provide a cryptographically usable rand(), but means that some platforms now generate a larger selection of random numbers, rather than the say 32768 different possible numbers on Win32. This wasn't applied until September. perl #117265 I did some clean up of the safesyscalls patch and finally applied it this month. perl #3330 This adds a warning when the user attempts to use perl's increment operator on a string that isn't a number and doesn't match /^[A-Za-z]+[0-9]+/. perl #85104 I produced an alternative fix for this in July, but hadn't written any tests until now. I first attempted to generate SIGINT and SIGBREAK using kill, hopefully trying to test a "real" operating system delivered signal, but the signal wasn't being delivered, even when I went direct to the API using GenerateConsoleCtrlEvent(). Unfortunately Windows would never deliver the event without signalling the whole console, possibly killing the TEST or harness process too. I ended up using a thread and perl's Win32 signal emulation to test that $^E is preserved. HoursActivity0.12#112350 - close5.15#113054 - find2perl - add find2perl tests#113054 - extend test mechanism#113054 - test cross platform, apply, resolve0.10#113088 - reject with comment0.50#114972 - check related tickets2.02#115706 - IO::Socket non-blocking connect0.92#115894 - review discussion, test, comment, reject patch#115894 - review and reject ticket too12.14#115928 - read metaconfig docs#115928 - manually edit Configure etc, testing#115928 - start alternate implementation#115928 - finish base implementation#115928 - public implementation#115928 - testing, fixes, comment with patches#115928 - follow-up, test on Win32#115928 - comment, ask Tux about Configure0.63#116116 - reformat and comment0.81#116132 - review and comment#116132 - reject with comment0.48#116180 - review and comment1.37#116264 - review, test, comment0.28#116911 - comment on closing in a few days#116911 - close2.38#117087 - rebase and comment#117087 - review, test and comment#117087, #3330 - follow-up6.44#117265 - review, minor cleanups, rebase, retest#117265 - apply and perldelta#117265 - look for redundant checks#117265 - polish, push to smoke-me#117265 - debug, fix, test win32 failure0.62#117355 - review discussion#117355 - re-test, apply0.35#117649 - reject with comment0.97#117793 - retest, apply, close ticket8.10#118059 - test theory, try to figure out fp dupping#118059 - more testing, B::SPECIAL discussion#118059 - test with debug tools, but cannot reproduce withdebugging tools#118059 - test osfhandle results, comment0.68#118139 - storable unused variables - comment0.13#118933 - resolve1.38#118987 - try to find a fix0.25#119075 - review per request0.28#119151 - comment5.53#119241 - BBC for Carp update - CGI::Application, Devel::TrackSIG#119241 - Object-Lazy#119241 - Object-Lazy, Class-Std, tests#119241 - apply fix to blead, open ticket for Object-Lazy, comment2.72#119321 - remove stringification, test, track downDevel::TrackSIG strangeness (local issue)1.24#119351 - if the test note some more#119351 - make a patch and test against Devel-Cover 1.060.17#119355 - review discussion1.77#119413 - apply proposed change to blead, perldelta#119413 - respond to comment#119413 - comment1.90#119429 - review#119429 - update bump-perl-version, research, apply0.67look for tickets to work on, comment on #29681.20#3112 - research, experiment5.59#3330 - produce an alternate patch#3330 - update message, testing#3330 - consider/research including variable name#3
8 days ago
This just cost me a few minutes of debugging: use Moose; use File::Temp 'tempdir'; has 'temp_dir', is => 'ro', lazy => 1, builder => '_build_temp_dir'; sub _build_temp_dir { tempdir( CLEANUP => 1 ); } sub do_something { my $s...
This just cost me a few minutes of debugging: use Moose; use File::Temp 'tempdir'; has 'temp_dir', is => 'ro', lazy => 1, builder => '_build_temp_dir'; sub _build_temp_dir { tempdir( CLEANUP => 1 ); } sub do_something { my $self = shift; my $dir = $self->tempdir; ... } Yes, it's my fault for having two names in a single namespace which are too close together and for getting too clever with directory handling (I wish there were a chdir that were lexically scoped), but this really shouldn't be a problem in 2013. Yes, it's my fault for not using something like namespace::autoclean, but this probably shouldn't be a problem in 2013. I look forward to a world where Perl has a proper MOP and method lookup looks up only methods. In the meantime, I'm going to keep reminding myself that importing functions into classes might end in tears.
12 days ago
I'm pleased to announce that diakopter's grant proposal, Wrap up Perl 5 Interop for Rakudo Perl 6 on MoarVM, has been accepted. I would like to thank everyone who took the time to comment on the proposal. If you would like to help fu...
I'm pleased to announce that diakopter's grant proposal, Wrap up Perl 5 Interop for Rakudo Perl 6 on MoarVM, has been accepted. I would like to thank everyone who took the time to comment on the proposal. If you would like to help fund grants like this or any of our other projects please visit our donation system.
13 days ago
These links are collected from the Perlbuzz Twitter feed. If you have suggestions for news bits, please mail me at andy@perlbuzz.com. SF Perl Mongers will now be streaming their events live (reddit.com) A look at Perl 5 inte...
These links are collected from the Perlbuzz Twitter feed. If you have suggestions for news bits, please mail me at andy@perlbuzz.com. SF Perl Mongers will now be streaming their events live (reddit.com) A look at Perl 5 internals by @hoelzro (hoelz.ro) (hoelz.ro) Part 3 of @hoelzro's series on Perl 5 internals (reddit.com) Previewing POD before shipping (dagolden.com) pbpost Banishing unsightly variable assignments with Method::Signatures (perltricks.com) How to turn your pile of code into an open source project (blog.smartbear.com)
20 days ago
It does not have a lot of meaning, but it is fun to know that the <a href="http://www.alexa.com/siteinfo/perlmaven.com">Alexa ranking</a> of the <a href="http://perlmaven.com/">Perl Maven...
It does not have a lot of meaning, but it is fun to know that the <a href="http://www.alexa.com/siteinfo/perlmaven.com">Alexa ranking</a> of the <a href="http://perlmaven.com/">Perl Maven</a> site just reached and passed the position where the Perl 5 Maven site was, just before I <a href="http://szabgab.com/to-merge-or-not-to-merge.html">merged them</a>. It took 4.5 months. <p>For the full article visit <a href="http://szabgab.com/domain-name-change-and-alexa-ranking.html">Domain name change and Alexa Rankings</a></p>
21 days ago
I just found out how easy it is to list all the links from Wikipedia to a specific web site. So I check the two main search engines of CPAN: Wikipedia has <a href="http://en.wikipedia.org/wiki/Special:LinkSearch/search.cpan.or...
I just found out how easy it is to list all the links from Wikipedia to a specific web site. So I check the two main search engines of CPAN: Wikipedia has <a href="http://en.wikipedia.org/wiki/Special:LinkSearch/search.cpan.org?limit=1000">780 links to search.cpan.org</a> while it has <a href="http://en.wikipedia.org/wiki/Special:LinkSearch/metacpan.org?limit=1000">only 13 to metacpan.org</a>. Besides my personal opinion that in almost all the cases <a href="http://metacpan.org/">MetaCPAN</a> should be recommended, there is also the issue of broken and outdated links. <p>For the full article visit <a href="http://szabgab.com/wikipedia-links-to-cpan.html">Wikipedia links to CPAN</a></p>
21 days ago