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.
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.
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.
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]
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.
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.
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.
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.
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.
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.
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
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.
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.
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...
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.
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.
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!