How to fake a database design

Many database students rejoiced when a paper was published showing a shortcut to fifth normal form (pdf). From the abstract:

A key is simple if it consists of a single attribute. It is shown that if a relation schema is in third normal form and every key is simple, then it is in projection-join normal form (sometimes called fifth normal form), the ultimate normal form with respect to projections and joins.

What the hell is fifth normal form and why do we want it? Well, it deals with cases where we can avoid redundancy when information can be reconstructed from smaller bits of information and ... and ... and ...

OK, so that's not helping. In fact, the vast majority of explanations on the Web aren't helping, so I'll explain how to fake database normalization. I'll even avoid big words.

Interview with Chad (Exodist) Granum

After a 2 month long break the Perl Maven TV is back with an interview with Chad (Exodist) Granum, author of the Fennec testing tool.

The interview is 31 min video hosted on YouTube, but you can also download the mp3 version of the audio.

Actually, there is now an RSS feed suitable for podcatchers. In case you'd like to listen to the earlier episodes while driving to work, check it out on the Perl Maven TV page.

More tests and more traits for p5-MOP

I have been spending a lot of time lately porting modules to p5-mop as a way to really stretch and test out the prototype. Additionally a few other people are also porting modules as well. The result is that we now have a nicely expanding "external" test suite. This is something I found with Moose, while it is very nice to have a good size test suite, it is even better to have real modules (that perform real work) and themselves have good test suites. For a module like Moose and a project like p5-mop, this kind of testing is critical in exposing issues that normal unit tests just won't shake out.

Why Perl don't have pragma like -E option?

Perl one-liner have -E option. This enable latest perl version.

    perl -E "say 'Hello'"

but perl don't have pragma like -E option.

I don't like syntax like use v5.18.

I want to write the following way.

    use latest;

and controll current perl version by environment variable. For example,

export PERL_LATEST_PRAGMA=v5.18

Hiring Senior Devs in London

I'm hiring two positions in my team in lovely, sunny Canary Wharf (London)...

It took me a long time to write the job ads, so please have a good read! :-)

SOAP::Lite 1.0 is out

SOAP::Lite rides again! I've made some fairly big changes to the interactive build file, as well as fixed several issues. Chances are I may have broke something, but if so please let me know an I'll get a fix out. 1.01 is due out tonight as a matter of fact.

1.0 July 16, 2013
! #85713 SOAP::Transport::HTTP, 500 error skips parsing of response
! No more Windows 98 client support. Wait, wut?
! Merge SOAP::Transport::TCP back into SOAP::Lite (for now)
! #82416: xop href cid: URI encoded support reported by Michael R. Davis (mrdvt92)
! #85208 bad test plan
! #83750 different headers for mod_perl vs mod_perl2 [Mithun Bhattacharya]

https://metacpan.org/source/PHRED/SOAP-Lite-1.0/

Perl Startups

At YAPC::NA 2013 I pitched the idea that Perl needs more startups. I've created a lot of startups myself, but I haven't seen too many coming from the community. To my surprise a lot of people came up to me afterwards asking for advice on how to get started. So I've started a blog on the subjects of startups and marketing.

To my surprise, we've already been seeing more talk of startups in the Perl community of late. Good on you! Keep it up.

German Perl Workshop 2014 - New ACT design live - T-246 days

We're happy to announce that our advance notice about our new ACT design for GPW 2014 now officially reached the production system. Have a look at the German Perl Workshop 2014 homepage and feel free to comment the new design below.

DE: http://www.perl-community.de/bat/poard/message/169000

Announce Classmith.com

Ok, I took up JT's challenge to build something. Here is the MVP launch of classmith.com it only works on https right now so don't try 80. Mojolicious, DBIx Class (Candy) and a healthy dose of DateTime::Set and a couple of other DT modules with Bootstrap frontend. This app is meant to be a tool for the growing group of tech savvy, [home|un|hack] schooling crowd, with features for those that are location independent. I already have a roadmap of about 30 items to add and to start work on the mobile syncable version. All feedback is welcome. Thanks.

Perl 5 Porters Weekly: July 15-21, 2013

Welcome to Perl 5 Porters Weekly, a summary of the email traffic of the perl5-porters email list. I'm at OSCON this week, so if you're in town, please come to one (or both) of my talks. One is about replacements for LWP::UserAgent and the other is about DTrace in Perl, Python and Erlang.

Topics this week include:

  • Perl 5.18 and Regexp::Grammar
  • RFC: $/="\R"; perl -0R
  • POSIX::foo() ignore UTF8ness
  • postfix dereference syntax

My Love/Hate Relationship with CPAN Testers

The Great Part

I really like the idea of a CPAN testing service where individuals volunteer their computers to tests CPAN packages and those results are accumulated and shared.

The accumulated results then are tallied with other result. People can use this information to help me decide whether to use a package or when a package fails if others have a similar problem.

Comparing the CPAN Testers to Travis (which I also use on the github repository), the CPAN Testers covers far more OS’s, OS distributions, and releases of Perl than I could ever hope try with Travis.

And that’s the good part.

The Not-so-Good Part

While there is lots of emphasis on rating a perl module, there is very little-to-no effort on detecting false blame, assessing the quality of the individual CPAN testers, the management of the Smokers, or of the quality of the Perl releases themselves.

Yet the information is already there to do this. It is just a matter cross-tabulating data, analyzing it, and presenting it.

TPF Grant Progress Report: July 2013

This past May, The Perl Foundation awarded a grant to fund development of a couple features in Pinto. Pinto is a robust tool for curating a private repository of CPAN modules, so you can build your application with the right modules every time. This is my first progress report on that work.

Reverse proxy with Mojolicious

This is my first post to the perl community also if i play with perl since a long time. In my working environment i choose mojolicious as a framework for my web apps but sometimes happens that a bit of php is needed (not obviously by me).
In have more web-apps in an internal network that needed a virtual name dispatcher, i could use nginx or apache mod_proxy but was very odd to me that wasn't a perl software that do that job easily and less painful.
After a little search i found Mojolicious::Plugin::Proxy but didn't have support for cookie so i was really unhappy :(
So i developed a little reverse proxy using mojolicious (so can leverage the hypnotoad workers management out of the box).
Mojolicious is so fun with a couple of lines you just accomplish your job.
With 6 lines you have your request cloned and dispatched.
Now the software reads YAML files to define configured virtual host and its routes.
The project it's not intended as a Mojolicious::Plugin because i think that with a bit of community effort this software can become a light webapp deployer and manager (that i felt it's missing out there).
If you are interested, and you may find it useful like me, bugfixes and developers are welcome :)
The project is hosted on Github

Perl Startups: Lokku/Nestoria

In the first part of the "Perl Startups" intermittent series of blog posts, I interviewed JT Smith about the Lacuna Expanse. For the next post, I was very interested in Lokku/Nestoria. Many of you probably don't know much about them, but I learned about them when I was living in London and found them to be a great company and nice people. Recently I interviewed Alex Balhatchet (CPAN account, the CTO of Lokku/Nestoria and his company's love of Perl and the Perl community.

Smoking CPAN in one line

I'm using CPAN::SQLite. I don't like it and I'm trying to improve the locking issues with concurrent process all trying to read from cpandb.sql by writing a new CPAN::UnQLite. But this is something else.

Today I want to smoke whole CPAN in one line to check the new experimental return-or check by Niels Thykier for "Possible precedence issue with control flow", for which we filed several bug reports in the last two days. See https://paste.debian.net/16932/ and perl #59802. To repro add this patch from Niels to latest blead, if it's not already included.

Development Tools-As-Services Are A Cash Crop

These days, lots of software development tools are turning into hosted services. GitHub and VCS hosting are the most obvious example, but there are others too. Most recently, I came across http://codeclimate.com which provides static analysis services for Ruby code. I think there are some great opportunities for an enterprising Perl developer to cash in here. Read on to learn more...

Modules ported to p5-mop

I recently started porting Plack to the p5-mop and yesterday I completed the "straight" port of the code. This means I didn't try to refactor anything to take advantage of any p5-mop features, I just converted plain Perl classes to their p5-mop equivalent.

My main reasoning for doing this was that I really wanted to push this prototype in real world scenarios, not just contrived tests and simplistic examples. This is a mistake I believe we made with the first prototype. So that said, I am happy to report that all 1152 of the Plack tests are passing.

German Perl Workshop 2014 - New ACT design - T-246 days

Just a quick update. We're not only enjoying the great summer, but also working on a more contemporary design for our website. The current looks were inherited from the late 90s. Granted, we're just the proverbial programmers without much design skill, but the web is full of inspiration.

So look forward to a better-looking and hopefully more user-friendly website in the coming weeks.

DE: http://www.perl-community.de/bat/poard/message/168933

Post by Perleone

Genuine Perl on RHEL

We all know that RHEL decoupled perl and real perl is shipped with "perl-core" package. However recently I found that even perl-core is not a real perl sometimes (at leas in CentOS 6 minimal netinstall), and this can cause weird bugs.

I reported this to RHEL, and seems that is going to be fixed!

Japanese Perl comunity for newbie, Perl entrance.

I introduce Japanese activities, Perl entrance(Perl入学式, Perl Nyuugaku shiki)

Perl Entrance in Fukuoka(Public site)

Perl Entrance

This is perl community for Perl newbie by papix.Instructor teach perl introduction using slide.And there are several supporters. They support newbie.

I think it is important for young people to know perl. Many people say that perl is old language.

Perl is given old flavor compared to ruby and python. but it is not truth. Old never equal to bad. Perl have many good features.

I'm glad that many young people join Perl entrance.
If you have opportunity, let's create or join perl community for newbie.

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.