our posts tagged “perl”
System monitoring. A pretty vital part of any network management.
That is, unless you're one of the few who live for the visceral thrill
of flying blind. For the rest of us partial to our lack of heart condition,
an ounce of prevention is worth ten thousand gallons of Saturday morning
In this blog entry, I'll go through the exercise of putting
together a simple but working and easily
extensible system monitoring setup leveraging common pieces of technology.
Infinity loves Perl and we're happy to announce our
The Perl Conference 2017.
Infinity is proud to be a sponsor for the conference, and pleased to
Perl in a Day
workshop by John "genehack" Anderson. Additionally, John is presenting
"A Modest Introduction to Swift"
talk, and Jay Hannah is giving a talk on
"Civic Hacking: TIF is millions of YOUR tax dollars".
And one more thing… we're giving you a conference app on iOS and
Android, to make it easier to browse the schedule on your mobile
Some of the folks here at Infinity Interactive are avid players of
fantasy sports, and
this year, they convinced me to join their Fantasy Football league.
Two months into the season, what started as a casual game has turned
into a trip through a data analytics wonderland as well as what will
hopefully be a recurring series of posts here looking at various
aspects of the data analysis that I've been doing.
YAPC::EU is Europe's premier event for the Perl programming language.
This year the conference was held in Cluj-Napoca, Romania, from August
24 through August 28. Infinity sent one of our developers, Sweth
Chandramouli, to attend, and we asked him to give a quick recap of his
quite popular at the moment. Liberally inspired by functional
programming principles, it offers a state container that is accessed
and modified via message passing.
Thanks to this message passing, and a strong emphasis on immutability
and pure functions, it minimizes surprises and maximizes sanity. One
of its beautiful promises, for example, is that since the state is
only modified via messages (or actions) and pure functions, one can
consistently replay the actions of an application and end up in
exactly the same final state.
As I was reading and playing with Redux, I began to wonder... This is
a blissfully small library. How easy would it be to port it to Perl?
In the name of science, I had to try.
If you’re part of the Perl community, you probably know how much
Infinity loves Perl and Open Source. However, you may
not know how much we also love Xamarin
and mobile development --- but after you check out the new
YAPC::EU::2016 app on iOS or Android we've put together, we hope
you’ll appreciate how our love for Open Source is too big to be
limited to just one language or platform.
From time to time, it comes in handy to tie various types of
information (ticket id, bug or feature, task owner, sprint
information, deadline, etc.) against a branch. Often we can get away
with just adding them to the branch name, but it can get ludicrous
real fast. In those instances,
bugfix/jira-613-sprintD-deadline20160523-by_yanick' just doesn't
They say that no man is an island. Likewise, no software runs in a
void. Well, except maybe for Voyager's main control. But that's not
the same. And beside the point.
So, as I was saying, no software runs in a void. There are
dependencies to think about. And depending of where you are in the
overall stack, those can come in two flavors. There are, obviously
enough, the dependencies that you are using, and there are the reverse
dependencies; the other pieces of software that depends on your own.
Fortunately, testing is a very deeply ingrained characteristic of the
Perl world. Modules come with their test suites, and the
ever-vigilant, ever-running CPANtesters
ensures that if a new release of a CPAN module breaks tests of
another, authors are more likely than not to learn about it rather
That's already mightily fine. But sometimes one needs more… custom
arrangements. Recently I had such needs, and with the judicious use of
already-existing tools I was able create a little setup that would not
only allow me to test a selection of modules on my box, but also let
me painlessly upgrade those modules when they'd change on CPAN.
Welcome to the second installment of our
Bread::Board tutorials. In
the previous article, we've
covered what type of situation calls for Bread::Board, and we had a
high-level overview of how to use it. In this installment, we'll begin
to dig deeper into the inner workings of the framework. More
specifically, we'll look beyond the DSL we used thus far for our
examples, and learn how to manually create the underlying objects of a
Perl 6 will be ready for production in 2015,
according to Perl creator Larry Wall. At least, that's what he said
his FOSDEM 2015 talk.
This news reminded me that it has been quite a while since I tried
anything interesting with Perl 6. I decided to spend my weekend
installing and playing with Rakudo, the primary
Perl 6 implementation.
Bread::Board. It has one
hoary hairy heck of a scary reputation.
But while it's not totally undeserved—Inversion of Control as a
concept tends even at its best to, well, turn one's mind inside-out
like a sock—the truth is much less daunting than the hype would have
That's right folks. The annual North American Perl conference,
YAPC::NA, was held in sunny Orlando,
Florida last week. Infinity Interactive was well represented and many
of our developers presented talks.
When working with non-technical clients, often their preferred means
of exchanging structured data is via spreadsheets. Using a custom tool
is not always practical due to cost or training time constraints, and
using a type of document that doesn't have its own standard editor
(such as XML or JSON) will generally result in having to deal with
malformed files on a regular basis, since these files are often edited
Excel is the only program for managing structured data that is widely
used by both technical and non-technical people, and being able to
leverage that structure can make the whole data exchange process much
smoother, even though it can be frustrating at times.