Live Stream URLs

I know that many of you are planning to set up these live streams of YAPC::NA 2012 in your offices and at home, so I wanted to get the URLs out to you so you can make sure you’re ready to go.  Click here for the schedule.

You’ll need Microsoft Silverlight, Adobe Flash, or Apple Quicktime to be able to view these streams. 

Please note that these streams are not live yet. They’ll go live at 9am US Central time on June 13th. 

[From the YAPC::NA Blog.]

Twitter Bootstrap templates for Dancer Applications

I'm writing an internal application using Dancer. To give it a "current" look, I'm using the Twitter Bootstrap CSS framework. A side effect is, that I wrote Dancer::Layout::Bootstrap, a set of Template Toolkit templates that import the Bootstrap layout into Dancer. I hope that this will evolve into a way to add external data files and maybe even layout templates to scaffolding frameworks such as Dancer.

Pretty Pictures

Dancer Start Screen with Bootstrap

The demo application has a tiny bit of logic to demonstrate the effect of showing "flash messages" with Bootstrap, the green bar you see in the below image:

CPAN Testers Summary - April 2012 - Pictures At An Exhibition

Firstly for this summary, I would like to extend a big thank to lestrrat, Mark Allen and Ron Savage for the first individual donations to the CPAN Testers Fund, as managed via the Enlightened Perl Organisation. The fund has been a long time coming, and we are really greatful to all the donations. If you'd like to contribute something to help CPAN testers, whether as a one-off or a regular contribution, please see the EPO CPAN Testers Fund page for further details. We plan to list all donators on the CPAN Testers Sponsors website, as a further thank you to you all.

Floating Point Rounding Errors

In Chapter 3 of my book, I mentioned offhand that sometimes you expect the number 5, but you get 4.99999999998 instead. I sort of punted on the explanation because it seemed to be a touch of a distraction. Naturally, chromatic called me on that and suggested I explain a bit more. As part of my explanation, I wrote a sample program that would print out the fractions used to build the mantissa of a number. For example, .75 is 1/2 + 1/4.

Thank You Sponsors!

We’d like to thank our sponsors for stepping up to support us. We really couldn’t do this without their support.

You too could sponsor YAPC.

[From the YAPC::NA Blog.]

On CPAN Namespaces: Urban Namespace Planning

I’m having a bit of a conundrum over where to put my next GSL-based module. First some background.

I’m already the author of a GSL-based module (see my first rant), the horribly named Math::GSLx::ODEIV2. This name reflects the same odd namespacing conundrum that I find myself in again, as well as the sub-library name odeiv2.c/h.

Duke Leto has already essentially taken the whole Math::GSL namespace by brute-force SWIG-ing the entire library. Much of this work is not fully implemented, but still parked. Further, since the namespace is already fairly crowded, its next to impossible to tell which parts are his and which would be anyone else’s. So lets call that out of the running. Note that I’m not complaining about his efforts, but it makes choosing a name harder.

Acme::MetaSyntactic is back!

After a hiatus of five and a half years, Acme::MetaSyntactic is finally back!

For this version, I have split the distribution in two:
  • the "core" modules, available in the Acme-MetaSyntactic distribution,
  • the historical themes (with a few additions), available in the Acme-MetaSyntactic-themes distribution. I will slowly update it (weekly?) with the themes I received in 2005-2006 and didn't include at the time.

The main change is the creation of the Test::MetaSyntactic test module, that makes it much easier for theme authors to create their own theme distributions, and check that they follow the rules for Acme::MetaSyntactic themes.

Anyone willing to create new Acme::MetaSyntactic themes is invited to simply create
their own distribution (no need to send me patches any more!), and stick in a t/metasyntactic.t test file with the following content:


use Test::MetaSyntactic;
all_themes_ok();

Simply email me so that I can update the MetaSyntactic bundle.

(In other news, France has a new president.)

Perl 6 and D separated at birth

When I first learned of Perl6 and D, They seemed to me to have similar sensibilities.

One of the motto’s of the Perl community is to “Make easy things easy and hard things possible”. I find it interesting that D actually does that to some extent. It has built-in resizeable arrays, and associative arrays for example.

Perl has always tried to shield the programmer from memory management. D also does that by having a garbage collector built into the language.

Neither language has been designed for complete backwards compatibility, because it has proven limiting in their respective ancestry. ( Perl4 -> Perl5 and C -> C++ )

Both Larry Wall and Walter Bright decided that different things should look different. This helps the compiler to parse them, but also helps the programmer to tell the difference.

I suggest that everyone who wants to learn a new programming language, learns both of them. Even though there is a large overlap in design ethos, they don’t have much overlap in actual design.


Of all the new languages, these two are the only ones that don’t feel like toys, or minor improvements of earlier languages.

  • Go
  • Coffee Script
  • Dart
  • C#
  • F#

The Perl Foundation Party at YAPC::NA

You may or may not have heard that The Perl Foundation is throwing a private party after the banquet at YAPC::NA 2012.

We’ve shut down a local party spot for the night so that we can turn it into geek-space. Though it’s usually a hot college night club, on this one night only it’s going to feel more like a private Perl-only pub. Here’s what we’re doing to ensure a great party:

Priorities when using Any::Moose, and what Mouse people should do

A recent test script of mine broke with the following message: You can only consume roles, MooseX::Role::Loggable is not a Moose role at /usr/lib/perl5/Moose/Util.pm line 137. What happened?

This test script uses Juno and an internal module that we have at work here. Both of them use Any::Moose. They also use my MooseX::Role::Loggable which uses Any::Moose as well, in order to allow you to use it in Moose and Mouse.

Removing Locale::Country::SubCountry from CPAN

Hi Folks

Reluctantly, I've removed Locale::Country::SubCountry from CPAN, since I have no reasonable means of keeping the data up-to-date.

This data included subcountry names in the native scripts of the corresponding countries.

As a replacement, I spent a lot of time developing WWW::Scraper::Wikipedia::ISO3166. This (gently) scrapes country and subcountry names off Wikipedia, and stores them in an SQLite db.

The names are all use (more-or-less) latin letters (i.e. A-Z, a-z, with diacritics).

This is not my preference, but I've decided to adopt a policy of:

o Hoping ISO3166 is kept up-to-date (which is reasonable).

o Hoping someone, somewhere keeps Wikipedia up-to-date. I can't say whether or not this is reasonable, but I'm just going to assume it is.

I'll document various issues people might have with the Wikipedia/IS03166 version of such data.

A typical instance is the name of Bolivia:

o Wikipedia/ISO3166 calls it 'Bolivia, Plurinational State of' whereas you probably (and reaonably) expect it to be called 'Bolivia'.

Of course, Kim Ryan's module Locale::SubSountry, is always available, if mine provides data which fails to meet your expectations :-).

Cheers
Ron

orphaned public key

So, I thought I'd contribute to moose.

A week ago I joined #moose and nopasted a public key. Cats and kids jumped all over me and I didn't follow through. In the end, I think that nobody acted on that. Today I thought I'd get back to that while the kids were out of the house. I still had the nopaste tab open, so pasted the URL and mst added my key.

Becoming a Polyglot

Tatshuhiko Miyagawa will give a talk at YAPC::NA 2012 described as:

Many of you might have noticed that, a lot of my recent Perl projects (such as Plack, cpanm and carton) have been greatly influenced by what are available in other programming languages such as Python, Ruby and JavaScript.

Over the past few years, I’ve also been using mainly Python and Ruby for my work.

In this talk I will show you what I’ve learned by using these languages -  Things you can steal, things you can ignore. Also as a bonus, I will give you a hint of a few tools what I think is missing in Perl but will become extremely popular when ported the right way.

[From the YAPC::NA Blog.]

Updated parrot and rakudo releases for cygwin

I've updated the cygwin packages for parrot, rakudo and rakudo-star for cygwin.

There were a couple of test failures and changes.

See the patches and build specs here:
http://code.google.com/p/cygwin-rurban/source/list
and bugs here:
https://rt.perl.org/rt3/Ticket/Display.html?id=112740
https://rt.perl.org/rt3/Ticket/Display.html?id=112742
https://rt.perl.org/rt3/Ticket/Display.html?id=112744
https://rt.perl.org/rt3/Ticket/Display.html?id=112746

rakudo-star make test is broken. You'd need to install it first, and then you can successfully test it.

nqp had three versions floating around: an old parrot-nqp needed for bootstrapping rakudo, rakudo's nqp-201204 and rakudo star needs an updated 201204.1 version as /usr/bin/nqp. Use /usr/bin/nqp.

http://cygwin.com/ml/cygwin-announce/2012-05/msg00004.html

Have fun and report problems to cygwin@cygwin.com

Tad McClellan, R.I.P.

Tad McClellan passed away last weekend.

Most Perl people probably Tad from his activity on Usenet, where he was a frequent and helpful presence on comp.lang.perl.*. I worked with him personally when he handled the operations for Stonehenge Consulting, handling the boring business stuff while Randal and I, along with the other Perl trainers, stood in front of rooms of students. Tad was a Perl trainer himself, and some of you may have met him either at OSCON or YAPC when he'd occasionally give a Perl talk.

perlbrew and tmux

Tonight I decided to install a variety of perl versions on the desktop PC where I run Arch Linux. Rather than kick them all off manually, I whipped up a bash script wrapper around perlbrew.

It loops through all of the versions of perl I'm interested in. It starts perlbrew with the specified options but backgrounded. When the build.log shows up, it sends keystrokes to tmux window 4 telling it tail the build.log and brings perlbrew to the foreground. When the install is finished, it sends keystrokes to tmux window 4 telling it stop tailing the file and moves the build.log out of the way so we can view it later.

perlinstall.sh

Dependency Injection with Bread::Board

Jesse Luehrs will give a talk at YAPC::NA 2012 described as:

Dependency injection is a powerful method of organizing your applications. It has been referred to as “the inverse of garbage collection”, because while garbage collection frees you from having to worry about how your objects are destroyed, dependency injection frees you from having to worry about how your application objects are created.

This talk will contain an overview of what dependency injection is and how it works (you’re probably already using basic forms of it!), and will introduce the Bread::Board module, which provides a more structured form way to model the relationships between your objects.

[From the YAPC::NA Blog.]

Milecore is NOT associate with, any SEO spam Activities

Hello all,

This post is to clarify about previous negative post about Milecore Technologies. We think we have rights to clarity the right things if some one try to spoil our Reputation.

At Milecore there were some employees are doing unethical work against the company policy and also did stolen some clients important data therefor they got terminated from the company and they hack our IDs and hire some SEO spammers to take revenge of their termination and did spam posts on some of the scam sites to harm Milecore's reputation.

Therefor we as Milecore announce that the post you read about milecore here on this blog says "Milecore are, or associate with, SEO spammers" where some SEO spam activities introduce are not did by our TEAM or any member of Milecore..

We are very trusted, ethical and reputed IT company whose goal is to give satisfaction to their clients by doing very hard work along with positive ethics, We have more than 1500 satisfied clients base and more then 60 satisfied employees team. What ever we did with those employees are just to stick with our company policy and being a company nobody will allow their employees to mass with policy.

Milecore is (& will) always dedicated towards ethic works only.

I've just joined the 'Been There Done That' Rising Damp Club

1. Empty laundry and loo of clothes dryer, odds-and-ends, etc, as far as possible, since both rooms need to be done.

Amazingly, these 2 (and the back hall) are on a concrete slab at ground level, 1 step below the kitchen, which is - along with the rest of the house, on stumps.

The large back yard slopes down towards the house, so heavy rains are a pain.

The loo, laundry and back hall are at the same level as the bricks in the patio, photographed in the rain today:

back.yard.jpg

Why did they build the house like that?, I hear you ask!

Yes, well, back in the late 1940s, that's how they did things around here.

2. Strip off some plaster, since the paint and plaster are impregnated with salt from uprising water:

stripped.loo.jpg

3. Paint with goo. This process is called tanking.

It stops horizontal penetration of water, as distinct from uprising water.

4. Drill holes:

drilled.bricks.jpg

Noisy! Very noisy!

5. Pump holes full of silicon.

Not so noisy.

The silicon re-establishes (if there ever was one) a horizontal DPC 'damp proof course' to stop uprising water.

6. Wait 2 weeks.

7. Renew plaster.

8. Pay $1,800.00 (20% up front) for this form of in-door entertainment :-(.

Help to write Perl 6 Documentation

You have no clue about Perl 6 but still want to help? Here is your chance. After Appendix A now stabilizes and most of the 750 entries are well formated (signatures still catching on) and in Appendix B also over 600 items link back to Appendix A so you can click back and forth to get a minimal wikipedia effect (What I was looking for in the first place?), now my primary focus is on Appendix G.

About blogs.perl.org

blogs.perl.org is a common blogging platform for the Perl community. Written in Perl with a graphic design donated by Six Apart, Ltd.