Corvisa Services is the software development, IT services and marketing division for a series of large and growing companies owned by our Kansas City-based parent company, NovaStar Financial Inc. We build killer software using a variety of languages, with entire teams devoted to Perl.
I'm please to say that the survey results from the London Perl Workshop 2011 are now online. Slightly delayed due to Christmas and my new job, but worth the wait I think. This is the first time we've had a survey for the London Perl Workshop, so I was interested to see how the results differed from YAPCs. The attendees for the workshop differ from YAPCs, as although around 40% of attendees are well know within the Perl community and have attended YAPCs, most of the sttendees, like attendees for many other workshops around the world, don't have the resources or availability to attend a 3-5 day conference event. However, a one-day event, and especially a free event, makes a workshop much more accessible.
XING joins YAPC::Europe 2012 as a Platinum Sponsor! Thanks for your support.
XING is the social network for business professionals. More than 11 million members worldwide use XING to boost their business, job, and career. XING is a platform where professionals from all kinds of different industries can meet up, find jobs, colleagues, new assignments, cooperation partners, experts and generate business ideas. Members can meet and exchange views in over 50,000 specialist groups, while also getting together at networking events.
The platform is operated by XING AG, which was founded in Hamburg, Germany, in 2003, has been publicly listed since 2006, and listed on the TecDAX since September 2011. In December 2010, XING acquired amiando AG, a Munich-based company and Europe’s leading provider of online event management and ticketing. Please visit www.xing.com for more information.
I recently tried to set up an instance of Smolder, but failed. While installing the module and it's dependencies was rather easy (thanks to perlbrew, local::lib and cpanm), I couldn't figure out how to actually initialize the system.
Starting the server works fine (at least after I realized that the default hostname of "localhost.localdomain" doesn't work on my machine and I had to use "--host localhost"). Even the startpage loads perfect, but all following pages are broken, and I can't find any way to set up my users, projects, etc. And while there are some sql files lying around, there is no way to actually stuff them into a (which?) database.
The last time I installed Smolder, it came as some sort of pre-built package, which was rather horrible to install (but worked afterwards..)
So, does anybody know how to set up this beast? I couldn't find any up-to-date info, but I hereby volunteer to write a document explaining how to install and set up Smolder, if somebody points me to the right scripts/docs/whatever.
Dave Rolsky will give a talk at YAPC::NA 2012 described as:
Dates and times are confusing and crazy. What nut invented Daylight Saving Time? Someone who’d never imagined a computer, that’s who!
Dealing with dates and times might seem simple at first, but there’s a lot of gotchas.
This talk will start by covering some concepts worth knowing about (What is an Olson timezone? What’s the Gregorian Calendar?).
After that we’ll talk about how the DateTime suite of modules can make your life a little easier. I’ll show you some best practices for working with dates and times, and highlight some gotchas in DateTime’s API, and with datetimes in general.
As Kephra gets prepared for its great day, there are some design decisions hat make me just happy and maybe you will benefit from it too.
The previous incarnation had also a command list. A central place where most calls are stored that end up in the menu a toolbar or the user can access otherwise. But it was not only the API into userland, it also helped to create menus and bars from very simple yaml files, that only listed command IDs. Because to every command belonged a label, icon, and key informations, the rest was almost trivial. This way you could very easily change the menus within the editor (with the line move functions) and the change was visible as soon you hit save (or autosave reacted).
One major flaw of this system was: informations that belonged into code were exposed inside of config files. Very bad and fragile. But more ugly for me, changes were troublesome because I had to go to several places.
While installing SQL::Translator I noticed, that Class::Base, one of its prerequisites, is printing the raw TAP to the screen.
I asked Andy Wardley if I could modernize the tests. He agreed, so after almost 10 years break and 20 minutes hacking, there is a new version of Class::Base on CPAN. He also suggested that people should rather use Badger::Base which is effectively its successor.
So now Class::Base recommends Badger::Base in its documentation.
If your module is using Class::Base you might want to consider switching.
A lovely comment was left on my blog by someone using the OpenID "targ": "Please don't break backwards compatibility. If you did a web search, you'd have found plenty of people using the existing functional interface."
You know why I love that comment? It's polite, kind and courteous. I made me actually go out, search, and find that some projects indeed use Sys::HostIP and in a way that I was going to break. I honestly didn't even know this module is widely (if at all) used. It made me decide not to break backwards compatiblity. I've decided to keep both object oriented and functional interfaces in place and remain fully backwards compatible.
If you're using Sys::HostIP and didn't want it to break, you need to thank this guy.
Another thanks should go to Mr. Muskrat for playing with Sys::HostIP and quickly finding I refactored off a bit too much and caused an issue. He also suggested a fix for it. Props!
Finally, another thanks should go to Alexandr Ciornii for raising a pull request with working code for supporting Russian language in the Windows version of it.
Expect a new version today.
Now these things really make my day, change the way I work and make the code I write that much better. :)
Olaf Alders will be giving a talk at YAPC::NA 2012 described as:
MetaCPAN aims to make it fun and easy to get data about CPAN modules, releases, favourites and even CPAN authors themselves. Sites like www.github-meets-cpan.com, perlresume.org, mapofcpan.org and metacpan.org itself make use of the MetaCPAN API to deliver interesting and useful information about the constantly growing body of code in the CPAN.
This talk will touch on the various ways you can connect to the MetaCPAN API and give you some handy tips to ease you on your way to metadata joy. By the conclusion of this talk you will be armed with enough knowledge to crank out the next cool CPAN mashup before suppertime.
Since the Perl Data Language (PDL) does not have a large presence in the Perl Blogosphere, I have the honor of reposting Pumpking Chris Marshall’s announcement of PDL 2.4.10.
For those of you who don’t know, PDL gives standard Perl the ability to compactly store and speedily manipulate the large N-dimensional data arrays which are the bread and butter of scientific computing. For more information on PDL please visit its website at http://pdl.perl.org.
Chris’ release message is reposted below, the full text can be seen on the mailing list archive.
PDL-2.4.10 released
The PDL Development Team is pleased to announce the
PDL-2.4.10 release of the Perl Data Language and
the first PDF release of the PDL Book.
PDL-2.4.10 is the latest point release with more
functionality, portability, and robustness than ever
before, including:
We are ready to accept talk proposals. There are two standard talk slots this year: 20 and 40 minutes. Exceptions are available for keynotes and small teaching classes: 60 and 120 minutes.
We also plan to have three sessions of lightning talks, one per each conference day.
To submit a talk, please visit http://act.yapc.eu/ye2012/newtalk and fill the form. We kindly request to carefully select target audience (beginner, intermediate, advanced, or any): it will help potential attendees to decide if they are going to attend the talk.
All the approved speakers (except those who give lightning talks only) attend the conference free of charge.
When programming on a Windows PC, I use Metapad (http://liquidninja.com/metapad/) as I have for about a decade. (I used EditPad Lite prior to finding Metapad.)
Recently at home I have been using Notepad++ and it's really grown on me. I've always liked having all of my open documents in tabs. It also has syntax highlighting which really helps me see mistakes before I've even tried a compilation check.
I'm going to install it on my work laptop and see how it works out for me.
Abigail will give a talk at YAPC::NA 2012 described as:
For a long time, all Perl releases were done by the pumpking. However, in recent years, we have streamlined the process, and now “everyone” can do a release of Perl, and get his/her 15 minutes of fame.
In this presentation, using my experience in releasing 5.15.9, we’ll show what it takes to make a Perl release.
Sys::HostIP simply parses ifconfig/ipconfig (supports GNU/Linux/BSD/Windows) and gives you the interfaces and IPs found.
I stumbled upon this module when I was looking for a way to clean get all the ips of every interface on machines at $work. I needed something that parses ifconfig cleanly, because I didn't want to do it myself. I found a few and Sys::HostIP was by far the easiest, simplest, fastest and the one I decided to use. I noticed a few bugs open and contacted the author who gave me co-ownership. I since updated it and cleaned most of the ticket pool.
I've recently stumbled another situation, in which I want to find the IPs by order. Thinking I could just tweak the module to allow fetching it in order, I found that the logics is a bit of a mind boggle. I retained much of the original code and it supported both functional programming (as in functions) and object oriented, and I wanted to keep that.
The web is crowded with tutorials about Perl. Perl has improved over the years, bringing new features, safer constructs and clearer syntax. However the old tutorials still are read and learned by far too many new Perlers. This article is to help you be able to select your information source critically.
Some things to look for:
The name of the language is Perl
Yes that’s Perl not PERL. The community is very adamant about this, so if the tutorial says PERL you know that it is written by someone outside the Perl community.
The current Perl version is 5.14, the year is 2012
Many tutorials that were great for Perl 4, or even 5.6 are now woefully out of date. If there is a date on the tutorial older than about 2007 or Perl version 5.10, it will be missing many of the new features and may use older, more dangerous syntax.
VM Brasseur will give a talk at YAPC::NA 2012 described as:
Hiring remote workers is great for filling those holes on the team…but if you don’t have the correct infrastructure in place you’re just setting yourself—and your remote team members—up for a world of hurt. This session will detail how our engineering department went remote and thrived because of it.
——-
A lot of engineering teams are considering going remote now. And why not? There are excellent people everywhere. Why limit yourself only to those who can come into the office?
Because you may not be able to support those remote workers, that’s why.
There’s a lot more to having a remote team than just hiring someone then flying him/her in to visit the mother ship a couple times a year. Without the correct infrastructure and processes in place, remote hiring will turn into an exercise in frustration for you (at the home office) and set the remote worker up for failure.
During this session we’ll discuss some of the preparations you should make before bringing remote staff on board. This will include:
I'm turning again to my module IO::Lambda, which I think, doesn't get the resonance it could have. I've seen AnyEvent's tcp_server, which is great and easy to use, and was reluctant to add one to IO::Lambda, because it's so easy. Or at least subjectively so :)
But I'm thinking, well, it's one thing to not add it into common API for whatever reasons, but if it's simple enough, why not make it into an educational example? So I wrote tcp_server and udp_server, just for kicks, and indeed they're simple, just not that simple so they don't need any comments in the code.
So I'm starting with upd_server, which is the simplest of the two, a plain UDP server script that listens on port 5000 and prints whatever data it receives. To test it, fire it up in one terminal, and run 'nc -u localhost 5000' (nc is netcat on my machine, could be something else on yours) in another, and type something there. The UDP server should just repeat the same.
Spotify is having a coding challenge to find "top-notch talent to join our NYC team". The challenge is to solve the most algorithmic puzzles in four hours... alone. "You may not cooperate with anyone, and you may not publish any discussion of solutions." What sort of developer will win this competition? Someone who is quick, dirty, has a mathematical mindset and lucky enough to write something that happens to work for the test data set. The "rockstar". Is this somebody you want on your team? Would you want to maintain their code?
Last year while on contract, the company in question was passing around their coding problem they used to test new hires. It was pretty typical stuff: give the data going in, the data they want out, and write a little program to do the transform. They even supplied most of the program, including a test; the prospective hire just needed to write one sort subroutine which could deal with "Low", "Medium" and "High" as well as numbers.
Next Sunday (5 february), Fosdem 2012 is hosting our Perl booth and Perl devroom. We welcome a bunch of impressive speakers. The schedule is published here.
If you are coming to Fosdem but did not select talks from the Perl devroom: read the text below and reschedule your day ;)
If you didn't plan to come to Fosdem but are or can free next Sunday, read the text below and book your day !
Best of all, Fosdem is free of charge and you don't have to register your presence.
Most talks in the Perl devroom cover specific Perl development aspects, ranging from beginner to expert stuff. If you are a Perl developer, these will certainly be most valuable to you! Check the schedule!