First post
First post!
First post!
The PAUSE permissions model is case-sensitive, which means that Foobar is treated as a different module from foobar. This all works fine unless your filesystem is case-insensitive, like on MacOSX, for example. In this article I expand on what the above means, and give some examples of problems that already exist on CPAN.
My first thought is that PAUSE should be case-insenstive for its permissions model, but maybe there's another solution?Sorry for the eye-catchy title, but seriously, number of Play Perl quests created in 1 week since its launch:
$ curl -s 'http://play-perl.org/api/quest' | jq length
197
rt.cpan.org tickets created after 2013-02-07: 128 (no idea how to add a permanent link to its search results).
Some other stats:
New features since my last post:
I've just put a post up on my shadowcat blog talking about where the 'perl 7' meme came from, why it's a terrible idea, and suggesting what we should do instead.
tl;dr - Pumpkin Perl!
This post exists to provide somewhere for people to comment that isn't Hacker News or reddit; I've cross linked it from the end of the blog post itself so hopefully people who want to discuss the idea will find their way here.
(if you haven't seen, there's already been a followup responding to the comments made here and elsewhere and a third post breaking down the what, the why and the how of the proposal)
Hi all,
I just wanted to drop a quick note to announce #galileo on irc.perl.org as a place to talk about Galileo my CPAN installable CMS and its new companion project GalileoSend which isn’t quite to CPAN yet, but it will be soon.
GalileoSend will make sending files via websocket easy! So far the package includes a command-line sender (client) and receiver (listener/server), a Mojolicious plugin and a javascript client. Futher GalileoSend is a protocol spec, which means if you want to write a client or server in your other favorite language, or a plugin for your favorite framework, its very possible.
Interested? Drop on by and chat about it!
PhantomJS is a 'headless' WebKit browser, mainly intended for use as a web testing framework, and is controlled by a JavaScript API. The 'headless' aspect of that also makes the framework extremely useful for scraping JavaScript heavy websites.
The problem with PhantomJS (up until the v1.8 release on 23 December 2012), was that if you were unfamiliar with JavaScript, CoffeeScript or Node.js (if you were using the Casper.js fork), was that it wasn't very easy understand or control. Since the v1.8 release in December, PhantomJS now supports WebDriver, which basically means you can control it from pretty any language you like (although Perl isn't explicitly mentioned).
Since I like Perl, I decided to give it a go after trying WWW::Mechanize::Firefox + MozRepl, which is great, but doesn't work if you're going double-headless and are running it on a GUI-less server.
perl -le 'print "Hello, World!";'
Even though Git sometimes gives me heartburn, I'm a huge fan of GitHub. The fork & pull workflow makes it sooo easy (and fun) to contribute to other projects. And as a project owner, it is very easy for me to manage incoming contributions. My absolute favorite feature is the discussions that are inline with the code. To me, that is much more natural than talking about code in a separate mailing list.
So I started thinking...what if Perl5 was developed on GitHub[1]?
Moving a large and mature project like Perl5 to a new set of tools and workflows will certainly not be easy and I expect a lot of resistance. I don't expect perfect feature parity either -- some capabilities will be gained and others will be lost. But GitHub has worked really, really well for a lot of projects (including Perl6). So I think it is definitely worth investigating.
One of the fun / cool things about Perl is that it can easily inhabit that space between "too complex for bash" and "too insignificant to invest in a C implementation." In my opinion a lot of the command line tools for EC2 are pretty terrible - they have a large learning curve, a high amount of dependencies and they just aren't that easy to get up and going.
So I started by thinking what was the "minimum viable product" for an EC2 client? Something that slaps a valid v2 AWS signature on any arbitrary API request and translates the XML returned into a Perl data structure. And that's exactly what Net::EC2::Tiny is.
In the spirit of *::Tiny modules, I tried to restrict the number of dependencies, but when I decided firmly to require HTTPS support, that locked me into IO::Socket::SSL and Net::SSLeay, so I opted to give myself a little bit of sugar and used Moo. So there's 5 non-core dependencies.
Anyway, when you're in the mood for a quick (and possibly dirty) EC2 client, whip up a simple(ish) script using Net::EC2::Tiny. It's the low learning curve glue between the raw EC2 API and Perl - perfect for those jobs which interact with EC2 in a relatively minor way.
There are a lot of contributions on CPAN that fill one niche or another with respect to pseudo-randomness generation. What is hard to find is a solution that provides cryptographically secure pseudo random number generation, reliable and strong seeding, a light-weight dependency chain, and cross platform compatibility through a wide range of operating systems and Perl versions.
Bytes::Random::Secure is one of those modules that gets written to fill a personal need, and then begins to take on a broader life of its own. As is often the case, the contributions of others in the community have served to improve the module beyond its original specifications. Dana Jacobsen provided a lot of suggestions, and even went so far as to create a new seeding module (Crypt::Random::Seed) which helped Bytes::Random::Secure to reduce its dependency footprint greatly.
cross-posted from dams blog
Yesterday I was reading Joel's post, where he lists great Perl things he's seen done lately. Indeed these are great stuff. I was particulary interested by his try at playing with Lvalue accessors.
I thought that it would be a great exercise to try to implement it in Moo, as
an additional feature, trying to get rid of the AUTOLOAD. Also, I was willing
to avoid doing a tie every time an instance attribute accessor was called.
Surely, I needed to tie only once per instance and per attribute, not each
time the attribute is accessed.
So I started hacking on the code of Moo. Getting rid of the AUTOLOAD was easy, as I could change the way the accessor generator was, well, generating the, err, accessors.
Hi guys,
This is my first post on b.p.o. I know you guys are arguing about the version issue of Perl recently. How about take a short escape and try quickcd at https://github.com/jchain/quickcd? If you are a Linux && Bash guy, you might find it useful.
Now also Ubuntu Perl packages indexed. For example Moose::Meta::Class
Most DBI tutorials will show you how to use prepare()/execute(). Something like this:
my $sth = $dbh->prepare( 'INSERT INTO table (foo, bar) VALUES (?, ?)' ) or die ...; $sth->execute( 1, 2 ) or die ...; $sth->finish;
Most of us write DBI this way when we don't use DBIx::Class or some other abstraction layer (or we use $dbh->do(), but it won't end up changing my point). For most databases, the above is fine.
On SQLite, you can lose data that otherwise would have gone in fine.
Today I’m happy to make public the work I’ve been doing to make some kind of “standard” for sending files over websockets. I call it GalileoSend because it was created for the Galileo CMS.
The protocol itself is language independent for both the client and server side, assuming that both can open a websocket connection and send JSON (as text) and binary data over it. Since communication by websocket is cheap, 2-way communication is highly encouraged throughout the transfer and positive confirmation of receipt is required.
Further, I have written a javascript client-side implementation (which could be used for any server) and a non-blocking Mojolicious server-side implemenation (which could be used for any client).
Read on (examples!) …
Perl is very flexible in may ways including whitespaces. Perl does not force you to use tab or spaces. The script works fine no matter if it has DOS or UNIX line breaks.
But there are some good practices. I preffer these rules:
I want to make sure that all that rules are followed in my source code. So I've written Test::Whitespaces. There are several good things in this module.
You can create test file xt/whitespaces.t:
use Test::Whitespaces {
dirs => [ 'lib', 'bin', 't' ],
};
I must say that the less grants proposals we receive, the less I need to work. But I volunteered, and it would make me happy to have interesting projects running.
First, I want to apologize. My follow-up to the Perl 7 post was not very polite. When I predicted that "nothing" would happen, even if people wanted it, I could have said that in a much kinder way. In particular, my apologies to Ricardo for that.
As for "Perl 7", let me be clear: I don't support it. I originally asked the question because I wanted to know what people thought and instead of kicking over a rock to see what was underneath, I kicked over a hornets nest. More importantly (to me), I got my answer in spades.
Notes from a Newbie document the creation and deployment of yardbirdfanclub.org with Perl Catalyst on shared hosting. They are intended for a Perl Catalyst Newbie who would like to study the creation and deployment of a Perl Catalyst application.
In these notes I continue to explore what it might take to create a blog application, focusing on how to use CSS to layout a page.
Dear YAPC::Europe 2013 attendees,
The number of people registered on the conference site went over 100 recently. So, since this week, we will deliver our weekly newsletters to your mailboxes. There's also a permanent place where you can catch up with the latest news about the conference. At act.yapc.eu/ye2013/news/ we are collecting all the previous newsletters.
Just a reminder that everything has been open: user registration, online payment gate and talk submission form. Just explore the site and act: yapc.eu/2013.
Today we would spend some time talking about Perl 7. Probably there's no one here who did not see at least a small portion of the discussion that burst a week ago on blogs.perl.org and nntp.perl.org. There were a number of posts about, well, yes, Perl 7. The title of this year's conference is Future Perl, so we as the organisers are very excited about the chance to move Perl forward exploiting the conference.
blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.