About this posting series: things that should perhaps personal notes, but shamelessly posted. Things that should've been tweets, but are not because they are a tad longer. Things that are useless most of the time.
* Saw a post about mod_mruby for Nginx. Apparently there is also a module to embed Lua, and another one for Perl. After we painfully learned to decouple web application server from webserver (using WSGI, Rack, PSGI), now it's mod_perl time all over again?
* We use code generation a lot these days in Perl. Dist::Zilla and Pod::Weaver (and their alternatives). Mo[ou]* modules. Type::Tiny, and my data validation framework Data::Sah, which is also code-generation-based. DBIx::Class::Schema::Loader. I'm even thinking of generating command-line scripts on the fly since mostofmyscripts nowadays are just interface to function in a module. And I look forward to the days when we generate the generators. Certainly an improvement over the boilerplate-generation days (think Module::Starter and Rails/Catalyst).
* I notice that my command-line scripts are getting longerandlonger names (compared to afewyearsago), is this a sign of old age? Or simply because I have more scripts/projects nowadays? I can manage a few or a dozen rainbarf's, but a couple of hundred?
I currently write a commercial app and found out that Wx::RadioButtons work differently under MacOS. These simply ignore the constant &Wx::wxRB_GROUP and slap together all the groups of a dialog. By toying around I found a way how to get several radio buttons (these labeled, round things from only one can be selected) in one dialog (following some style guidelines I guess), just put them on separate Wx::Panel. Than I remembered that Wx::Perl::RadioGroup does this anyway, and using them you also don't have to know about &Wx::wxRB_GROUP. It just works like the mackenzies claim. It will see the light of CPAN as soon I learn to handle dzil.
Videos in any language can be now posted and they will be listed separately in every listing: For example Sawyer X has an English and a Hebrew version of the Asynchronous programming FTW! posted.
There was some improvement in the layout as well. The default Dancer2 template and CSS is slowly replaced by a more responsive web design. (Try resizing the browser.)
Acme-oop-ism is about writing code that works in Moose, Mouse and Moo.
Type::Tiny was born of frustration with how MooX::Types::MooseLike handles "inflation". Inflation is how Moo handles interacting with Moose. I'm simplifying here, but when Moo detects that Moose is being used, it builds a Moose::Meta::Class for each Moo class you've defined, and a Moose::Meta::Role for each role.
1. App::FTPThis since, well, there is App::HTTPThis. Or perhaps App::DropBoxThis, for the modern-cloud-oriented people.
2. App::popstatus, App::imapstatus. Inspired by TOKUHIROM's App::httpstatus, I wrote App::smtpstatus a few months ago. Useful sometimes when debugging SMTP problems or hacking on my SMTPD software. An equivalent for IMAP and POP could be nifty sometimes. Some IMAP daemons have their specific codes/messages and it would be nice to incorporate them (and do the same for my App::smtpstatus as well). On a rather unrelated note, I released App::osnames some time ago too.
3. A module that can list ATM locations for some Indonesian banks. Some banks like BCA offer their database of ATM locations on their website. I don't know where or when this would be useful though. Are there any banks outside of Indonesia which offer this data?
When developing a Perl module, I often want to get a quick preview of the documentation that I'm writing, just to see if everything is in order and how it turns out. I used to do this the old fashioned way, by generating an HTML file with pod2html or pod2cpanhtml and opening it in a browser, but I was hoping in this day and age there is an easier and better solution, preferably a web application.
Looking around, however, the only thing I could find was the pod2html page at the CPAN Search site, which allows you to upload a POD file, have it processed by pod2html, and displayed with CPAN style. I thought it might be a good idea to try building something more user-friendly, with features like editing POD in the browser, drag and drop file uploads, etc.
And what better time for a little project like this than a weekend when you're ill and not supposed to leave your apartment? Well, that's what my last weekend was like -- two days of coughing and coding, and here's the result: POD Web View.
Marpa is a great, really great, piece of software that deserve to be used by everybody wanting to do serious (let's say frankly: professional) and innovative parsing. I feel that Perl language is very lucky to to have been choosen by its author, Jeffrey Kegler, as the main frontend. But seriously, this is the only module that is a true BNF parser. All others modules on CPAN that contain the BNF keyword are not. Marpa brings innovative and on-the-edge ways of thinking, writen by a person clearly brilliant in both progamming and language theory, and very responsive on the marpa-parser google group.
My first module using Marpa was MarpaX::Languages::C::AST, and I should have blogued about it at that time. Instead Jeffrey did it, time for me to start blogging too on Marpa!
Perhaps some of you might find it of use: I just wrote (and am running) a script to download-all-blogs.perl.org-posts-of-a-user. It's not as fast as I would like it to be because apparently wget does not accept mixing -k with -nc.
I also noticed that github does not syntax-highlight the script as Perl code. Probably because I use "#!/usr/bin/env perl" instead of "#!/usr/bin/perl".
If you want Vim to always display the count of lines yanked or deleted on the message line -- like "1 line yanked" or "1 line deleted" -- you need to use the report option like:
set report=0
Note that the Vim documentation for report does NOT mention where these reports are actually placed, making it impossible to just grep(1) for it.
Ingy gave a talk on Acmeism at YAPC::NA. Acmeism is a simple, yet ambitious idea. Break down the barriers that exist in programming by publishing software modules that work in multiple different languages. (And use smarter tools so that that doesn't have to be so burdensome.)
I'm writing to tell you about Acme-oop-ism. A somewhat less ambitious idea, but perhaps one that you'll like anyway.
The genius of JSON is that it's so simple. It can even be parsed with a single regex, albeit a rather complex Perl-specific one). In a few years, it has practically taken over the world, especially since at the time people yearned for something simpler and saner than XML.
The problem with JSON is that it's too simple. It lacks features. Yesterday while working on an API that is supposed to return PNG images, I was again reminded by the fact that JSON does not handle binary data. Let's see what else JSON does not support: Inf & NaN, differentiating normal hashes vs objects, Regexps, circular references, ... (some people might want to add comments and trailing commas to that list).
I had some free time, so I hacked up a translation of
@cruxacrux's
article about p5-mop, posted on blogs.perl.org by
vsespb
. I didn't do a lot of editing, so many turns of phrase are still a bit ... Russian, but I figure it's an improvement over google translate. Any errors are my own, and I welcome feedback if anyone spots a particularly egregious mistranslation.
The announcement for the call for speakers has just been posted to the YAPC::NA official blog and Twitter feed.
This year the theme is “¡Viva Perl!”. Talks that embrace the theme will be favoured by the orgas. when deciding which submissions will be presented. remember that there are a number of tracks over several days, there is a great deal of room on the schedule. It also is apparent that the organisers are keen for people to come to them early with ideas of talks, meetings and events they want to run to coincide with the conference.
As with any Perl event the barrier for entry is set purposefully low, we like to embrace neophyte Perlers and conference attendees and give them the chance to not only attend but to participate. Perl has a very supportive community to new speakers.
For a long time, Perl don't support clean Object-Oriented feature in core.
Ruby and Python can write OO programing clean, but Perl can't.
This will be resolved by adding mop to core in the five years.
Web application
Perl don't have famouse Web application. For example, PHP have Word Press, phpMyAdmin,
Python have trac, Ruby have redmine, GitLab, but Perl don't have.
I think we need to see web world.
Web service startup
People think Perl is old language. If people contine to think this,
People tend not to use Perl in web service startup.
Now Perl have Mojolicious, Web startup is easy and clean.
Perl disadvantage is none compare with Ruby on Rails.
We can recommend Web service startup with Perl.
Statistics
age is attending to big data and staticstics. In this area, most people maybe select
R language and Python numpy and scipy. Perl have PDL, but I think most people maybe select
R langauge and Python numpy and scipy. These are more clean and simple than PDL and Perl.
People tend to select clean and simple interface.
I want clean staticstics library.
Perl comunity tend to attend to CPAN and Perl language itself,
but I think we need to see the outer world of Perl itself and CPAN.