This evening at Sydney-PM, Nick Urbanik gave an excellent presentation about his work at a large well known Australian Internet provider, in automatically blocking malicious DNS requests in Bind based resolution servers.
His method uses Perl, Inotify and Bind.
If you have customers or external IP's making requests generating huge amounts of SERVFAIL's - his work will discover and block these requests which seem to simply waste CPU time on servers.
He has detailed his work and published his code at his personal website
Maybe you know the feeling… you go to add an option to that method or subroutine and… cue Jaws theme
sub update_shopping_cart {my $cart_id =shift;my $item =shift;my $quantity =shift;
Argh. You don’t want your legacy code to break but you also don’t want to add a fourth unnamed parameter to the existing problem. And the solution is simple:
Following the recent announcement of the QA Hackathon, we're happy to announce that Infinity Interactive have signed up to sponsor this year's event. Their support means that we can invite more people to attend, and lets us focus on the work rather than the money.
You might have heard of Infinity Interactive, and you're even more likely to have heard of some of their employees. Just in case you haven't, we'd like to share some information about them.
As in previous years, by default talks are 20-25 minutes, which we've found is a sweet spot for most topics. We get a great variety -- enough to get a dose of newness and not overwhelm. We also welcome proposals for more tutorial-style talks of around 50 minutes. We'll take the talks and build out a two-track schedule.
Speakers of all levels are welcome! This regional meetup is great for getting your first taste of giving a community talk, sharing projects or topics that you have experience with, or even doing a first run for a talk you'll be presenting at a larger conference such as YAPC::NA 2015 in Salt Lake City! All Perl-related topics are welcome -- from beginner to advanced, from technical to social.
I am creating a separate post only because I now seem to have lost the permission to comment on other people's posts...
No bigfoot, you are not the only one. I know there was some kind of security breach and some things were disabled so I've come to grudgingly accept it.
It would be nice to get it fixed though...
Anyway I had to change mine again just to post this comment but I felt it was important! :)
I think one of the impediments to seeing more blogs on this site is the blog engine. It's awful.
Am I the only one that has to reset his password EVERY single time I try to login to this blog system? And why to do I have to login twice if I want to post?
Different people have different workflows with git. Mine is pretty simple.
Branch from master
Hack, hack, hack,
git stash; git checkout master; git pull --ff-only; git checkout $branch; git rebase master; git stash pop
Goto step 2 until done
That step 3 is pretty damned annoying. I try to keep branches short-lived, but I often rebase onto master to ensure a clean merge. Thus, I wrote git-refresh. It does step 3 for me. However, my git-fu is sorely lacking (and my bash scripting ain't great either), so suggestions for improving this code are welcome.
I'm working on a program that is thin wrapper around the execution of many other programs (mainly shells scripts) in Linux. The initial - and working! - choice was to use system():
It's that time of year again when I will start the usual cajoling and pushing to find the Perl Communities presence for the Google Summer of Code. Yes, once again this is seemingly being done at the very last minute as busy volunteers are once again made busier and I fail to start the ball rolling early enough.[1] But heck this is Perl and Developers, deadlines are those things we like to hear go whoosh as they pass us by, am I right?[2]
However better late than a no-show at the sticky end of a wicket with the last pair riding a duck[3] and we do have the success of 2014 to build on when a great group of mentors and students once again gave us a 100% pass rate and performance. Let's see if we can match their success and increase the students for this year.
As if Perl programmers don't have an inferiority complex already, Amazon looks like it is adding Go to it's list of supported SDKs, having dropped (more or less) Perl quite a while ago for most of it's services.
The next stable release of Moo will be version 2.0, and will include some
incompatible changes. These changes should affect a pretty small number of
modules, and may help point out flaws in the existing code.
The most important change in Moo 2.0 is that it will no longer be applying
fatal warnings to classes using it. As Moo has grown to be more widely used on
CPAN, it has become obvious that applying fatal warnings is usually unexpected
or undesired by other authors, resulting in things like
Moo::Lax, or people just avoiding Moo
entirely. And authors who prefer fatal warnings can easily apply them to their
own code.
Moo 2.0 will also detect a number of cases where people apply modifiers to
constructors, or attempt to add attributes to classes that have already been
instantiated. These cases never worked correctly, but they will now issue
errors.
Last week the website for the upcoming YAPC Europe in Granada was launched. You can already register and submit talk proposals. If you plan to be a sponsor for the conference, please take a look at the sponsorship proposal.
On the other hand, we're very pleased to announce that Larry and Gloria accepted our invitation to come to Granada in September. We hope we'll see you there, too.
By now you've heard the announcement that the Perl 6 team is cautiously hopeful that Perl 6.0.0 will be released this year. There are three things they need to finish:
The Great List Refactor (which should improve performance)
Native Shaped Arrays (tell Perl 6 that you only have 10 elements and you'll get an exception if you add more)
Normalized Form Graphemes (solves some issues with combining characters in Unicode, such as the little-known "tapeworm operator" "\x{1F4A9}\x{0327}")
With those, Perl 6 will truly be born. Of course, it will need better documentation, tooling support, better modules, and so on.
From what I can see, Perl 6 actually has a chance to take off and there's one delightful little feature that I want to talk about.
My company is dusting off some job descriptions and considering expanding our team, which got me thinking of a blog post I’ve been meaning to write. Hiring developers can be tricky business, so I wanted to share some practices that have both worked well for me as a candidate and hiring manager. But first…
A Little Story
In the not too distant past, I found myself attracted to a fairly new company with a veritable A-list of Perl developers. After being declined, I was offered some feedback by the hiring manager which I gladly took the opportunity to hear:
Originally, I was assigned TryCatch. “At least something I can use,” I thought. Also, the module's ticket queue was 21 issues long, so there should've been something to pick up. When I took a closer look, though, I discovered the module was XS heavy (I have never written any XS, and almost no C either), and the only issue I would've been able to work on was “Mark as deprecated” — but I wasn't sure I'm able to judge whether it would be the right thing to do.
If you are reading this and you didn't hear that Larry bit the bullet, rolled the dice, flipped the coin, shattered the space time continuum...breathe... then you really are going to get a shock.
Larry has announced that the Perl 6 Developers will attempt to make a development release of Version 1.0 of Perl 6.0 in time for his 61st Birthday this year and a Version 1.0 release by Christmas 2015.
So why do I say attempt?
Well it isn't as easy as promising, because we have a real issue if we do such a damn fool thing. There are a number of reasons, aside from the hidden complexities of code, that could scupper the plans. The inevitable bus-in-the-face failure being just one of them. A cautious 'Murphy doth exist' attitude is the right one to take.
clpm is designed to make managing sets of files easier at the Unix command line. It's free and open source. Please view the demo here. Find more info at http://tinypig.com/clpm