Test Environments for Modern Web Apps

Tags:

This month, William Lindley ( blog) will talk about writing a test harness for modern Perl programs using Test::More, Test::Mojo for the API, and DBIx::TempDB for the database.

Building, testing, and deploying actual systems is more complex than merely writing a program. Real testing often needs to be done against databases of known large or problematic datasets. A test environment cannot affect production data. Staging even minor changes, so we can preview and find errors before moving to production servers, can prevent expensive errors. The "best practices" in this field are relatively new and still changing, and we look at the first steps from "I built this mockup last night" by building the test suite for a simple database-driven file-upload service with Mojolicious.

William Lindley has been hacking computers (in the good sense) since 1977, a database advocate since dBase II and PostgreSQL-predecessor Ingres in the 1980s, a Perl monger since 1994, and a free-software promoter since first getting Linux to run XWindows in 1995.

If time permits, Doug Bell (preaction) () will show a simple app to mock JSON REST APIs for testing using Mojolicious.

RSVP for the meeting on the Chicago.PM Meetup

Perl 6 Grammars and Logging in Perl 5

Tags:

This month, we have a special meeting: brian d foy () will be giving a talk about Perl 6 Grammars on Thursday, February 16. Grammars in Perl 6 are the evolved form of Perl 5 regular expressions that allow even more power and flexibility, while still being easier to use. RSVP for this special talk about Perl 6 Grammars on the Chicago.PM Meetup.

For our regular meeting, Doug Bell (preaction) () will be giving a talk about Logging for Programs Tiny and Large. It will cover various ways to add logging and reporting to your Perl programs, including built-ins like warn, core modules like Sys::Syslog, and CPAN modules like Log::Any and Log::Log4perl. RSVP for the talk about Logging in Perl 5 on the Chicago.PM Meetup.

We also need speakers for March and further on the rest of the year. If you're interested in talking for 20 minutes or 40 minutes about any topic at least tangentially related to developing software with Perl, e-mail me or sign-up on our spreadsheet. If you'd like to contribute, but don't know what to talk about, check out our list of talk ideas.

Accepting Payments on the Web

Tags:

This month, Noel Rappin will be talking about accepting payments on the web:

Your customers have money, and you’d like them to give it to you. Payment gateways, such as Stripe, Braintree, and Paypal, make it easy to start charging credit cards and get the money flowing. But charging cards is only the beginning. You need to worry that your app responds gracefully to service failures, since charging a customer for a failed transaction is bad. You need to guard against fraud and security breaches. You need administrative tools that are flexible but secure. You want to test against external services. And you’ll run up against the law. Learn from some of my mistakes and build a robust financial application.

Noel Rappin is the Director of Development at [Table XI]. Noel has authored multiple technical books, including "Rails 4 Test Prescriptions", "Trust-Driven Development", and the forthcoming "Take My Money: Accepting Payments on the Web". Follow Noel on Twitter @noelrap, and online at http://www.noelrappin.com.

Perl Development Environment

Tags:

This month, Jason Crome will be giving a talk on Perl development environment tooling like perlbrew, plenv, and Carton. These tools help to manage different Perl versions, different module versions, and help to isolate your development environments to help make dependency version problems manageable.

Bring your questions and your own experiences with maintaining a Perl development environment.

RSVP on the Chicago.PM Meetup

EDIT: Slides for Perl Development Environment Tooling have been posted to cromedome's Slideshare