This is the index of items in Matt S. Trout's blog.

Matt S. Trout (mst)'s Blog

You Should Hire A Dev Shop Too

Tue, 09 March 2010 22:00

On consultancies, in house teams, and collaboration

In which I discuss why I believe that startups should do their primary development in house, why I don't believe that hiring a team like Shadowcat contradicts that, and an attempt to explain how and why the combination works.

Oh Subdispatch, Oh Subdispatch

Mon, 01 March 2010 22:00

App::IdiotBox and Web::Simple

A look at how Web::Simple's subdispatch mechanism allows composition of dispatch code in a clear and concise fashion, plus some notes on deployment and the Iron Man planet

Humane Login Screens

Sun, 21 February 2010 22:00

Zero redirect login the easy and friendly way

Using a reserved POST variable namespace to allow you to do quick login from bookmarks without needing a query parameter or relying on the referer header

Simple Debugging

Sat, 13 February 2010 22:30

The genesis and usage of Data::Dumper::Concise and Devel::Dwarn

A kinder, simpler approach to getting debug output slung at STDERR quickly and easily. Born of the realisation I kept copy-pasting Data::Dumper topions around, this post explains the Data::Dumper::Concise and Devel::Dwarn modules and how they can save you typing when debugging too.

Show Us The Whole Code

Fri, 05 February 2010 20:15

A plea to those I'm helping debug

A discussion of why support people often ask for far more information than you believe they should need to diagnose your problem, and a worked example of why it's the right thing to do based on experiences with a Shadowcat client

Half A Moose

Thu, 28 January 2010 19:45

OMGMooseIsTehSl0wz0rr!!!!11ONE

Except, of course, not only is Moose not slow, but in the cases where it isn't fast enough there are trivial ways to optimise it. In this article, I explain how.

Orlando 2010

Wed, 20 January 2010 21:45

Perl Oasis rocked

A randomised journey through the joys of Perl Oasis 2010, peppered with enticing links to all the other people who wrote more coherent accounts

On being a Bastard

Mon, 11 January 2010 22:30

Community gardening and hard decisions

A (somewhat ranty and occasionally profane) discussion of my attitudes, techniques and duties in various online communities, why I behave the way I do and how these behaviour patterns are oriented around the continued well being of the community - and why the same lessons can apply to not just other communities but business decisions as well.

Love your idiots

Sun, 03 January 2010 21:30

Project milestones and mental models

A discussion of the "what the hell is this idiot talking about?" moment, why it happens, and some things to do about it - and the advantages one can gain therefrom

Goto considered useful

Sat, 26 December 2009 22:00

No, not that goto, the other goto.

A discussion of the different sorts of goto available in perl, how other built in functionality means the traditional sort isn't worth using, and why the extra sort perl provides is actually really handy on occasion.

Choosing a library

Fri, 18 December 2009 17:10

Library selection process by level of importance

An explanation of the processes I prefer to follow when selecting a library to use for a project, and the extent to which I audit the relevant code for malleability via thought experiment depending on how essential it is to your project

Shaving a Moose

Wed, 09 December 2009 20:40

Announcing MooseX::Antlers

The subject of my main talk at LPW 2009 was MooseX::Antlers, a new and hopefully better attempt at precompiling Moose classes into .pmc files; this post summarises what's done, what isn't, and where to get the source if you want to help

Countdown to Christmas

Tue, 01 December 2009 18:00

December is here! Where did that year go?

A brief roundup: Advent calendars, London Perl Workshop, Web::Simple

Web Simple Shipped!

Wed, 25 November 2009 22:00

Web::Simple 0.001

0.001 has now gone to CPAN - so here's a summary of what's there, what isn't, and where we're going with this.

F-ck Perl 6

Tue, 17 November 2009 22:26

Yes, This Is A Rant. You were warned.

Why almost everything we the perl 5 community say about perl 6 is bad, wrong, and fail. And a link from a post by masak arguing vice versa.

Today

Thu, 12 November 2009 01:00

On this day, we give thanks

It was Nov 11 when I decided to write this

Introducing Web::Simple

Wed, 04 November 2009 01:15

A first taste of Web::Simple

A first look at a fun toy I made for the Italian Perl Workshop and have decided to continue developing

Pisa++ Organisers--

Mon, 26 October 2009 17:20

I got. Erm. Auctioned off.

I do not believe they've done this to me, and there's no escape.

Shifting the Furniture

Sun, 18 October 2009 20:00

On copyright notices and how not to mess it up

After a desperately exciting day shipping distributions with only changelog and POD diffs from the previous version, Matt explains how, why and what this was about (clue: getting beer out of the debian perl team)

To Kill A Mockingbird

Sat, 10 October 2009 18:20

Quick and simple mock objects with MooseX::Declare

A pattern I've started to find myself using in place of mocking toolkits in my test suites

Fear, and why you have to ignore it sometimes

Fri, 02 October 2009 17:10

Fear of Falling

Musings on fear of socialisation, the activation energy required to make a first contribution, and a couple of stories about things I've been afraid of and how it got (sort of) fixed

Beautiful Perl: A simple plugin system

Wed, 23 September 2009 17:40

A role based plugin system with MooseX::Declare

An example of a half dozen line plugin system written using MooseX::Declare to produce elegant code that takes full advantage of the metaprotocol without requiring the user to think about the mechanics rather than their intent.

Learning to Design

Tue, 15 September 2009 22:35

Architecture and Design, and how I learned what I know about both

An overview of the different routes by which I learned about the structure and design of libraries and programs, a grab bag of links to things I remember helping and a suggestion for some ways to come up with things to read, and exercises to do yourself in order to improve your skills in those areas.

Things Not Enough People Know

Mon, 07 September 2009 22:20

Musings on design, testing, and not getting caught out as an incompetent author

On how somebody saying something nice about the new Catalyst book led me to ponder the nature of technical books, learning, and documentation - and on how to write a good book for a true perl hacker, i.e. one who understands that being done and down the pub is a priority too ...

Iron Munger Up!

Sat, 29 August 2009 21:50

The Iron Munger app is now running

The badge code exists! IT'S ALIIIIIVE!

Backwards Compatibility and Migration Paths

Sat, 22 August 2009 20:15

Easing users' pain so they get the new shiny sooner

On the problems of backwards compatibility, ways of keeping users happy, and a deconstruction of Mojo's recent complete compatibility breakage with suggestions of how a few dozen lines of code could have eliminated most of the pain

The Power of Asking

Fri, 14 August 2009 21:10

Announcing perl.org public svn and the (unofficial) perl-org-patches list

A discussion of the amazing results you get when you actually try talking to people rather than assuming their opinions are both contrary to yours and unchangeable - and the announcement that the perl.org site is now in a public repository and a new mailing list designed to enable effective patch submission.

Test the RC! Test the RC! Test the RC!

Fri, 07 August 2009 17:15

perl 5 v10.1 RC1 is out so now we need YOU to test it

Remember - if you see this and don't test the RC, any bugs that you would have caught are YOUR FAULT

Indirect but still fatal

Wed, 29 July 2009 21:25

new Foo bad, 'no indirect' good

An explanation of how perl decides whether something is a subroutine call or an indirect object syntax method call, why you really want to avoid it ever deciding the latter, and a shout out to the 'no indirect' pragma that allows you to detect these and remove them.

A cunning no_plan?

Tue, 21 July 2009 18:00

Why numeric test plans are bad, wrong, and don't actually help anyway

A summary of an argument from the review process for The Definitive Guide To Catalyst, covering testing, merging and ways to protect loop tests from incorrect iteration counts.

The Definitive Guide to Catalyst

Mon, 13 July 2009 23:20

The new Catalyst book, published by Apress, is now available

Announcing the new Catalyst book, a description of what we tried to achieve in writing it and a (much abridged) summary of the contents, a selection of thank yous and a note that my royalties will be donated to Enlightened Perl, which will hopefully find something more useful to do with them than spend them on beer.

Iron Munger! - Almost :(

Sun, 05 July 2009 17:30

Apparently, I didn't write enough tests yet

The software that should shortly be powering the badge code on http://ironman.enlightenedperl.org/ and a plea for help because it still doesn't quite work.

YAPC aftermath: perl5 4lyfe

Sat, 27 June 2009 19:00

The rebirth and regeneration of a community

Thoughts from YAPC, covering the projects I'm excited to see and the general feel and mood of the community from my observations as I spoke to (and drank with) them

The Most Important Thing

Fri, 19 June 2009 17:30

Musings on my contributions to and membership of the perl community

How I got started, how I got here, and my own personal take on the most important thing I've ever done in the community

Respect is Per Community

Thu, 11 June 2009 23:00

... and it has to be earned.

On communities, approaching them, getting help from them, and how to come across as an idiot even when you aren't one.

Tainted Love

Wed, 03 June 2009 22:00

Taint mode, testing, system() and stupid $^X hacks

In which I explain how you can easily produce a bug in your test suite that won't show up on your development setup, discuss the nature of taint mode, and ways to circumvent it for the purposes of instrumenting tests.

But I can't use CPAN

Tue, 26 May 2009 20:20

Of course you can use CPAN. And here's why.

Why people claim they can't use CPAN and how local::lib, Module::Install and PAR generally make that not true.

Buy Pizza. Pay with snakes ... Eat Bicycle.

Mon, 18 May 2009 22:00

TMTOWTDI but which one makes most sense?

The difference between syntactically valid and semantically valid, and the blessing and curse of expressiveness in language

Hacking While Drunk

Mon, 11 May 2009 22:00

How ethanol can make you a better programmer

Losing Shadowcat some clients while discussing alcohol, narcotics, perfectionism and how shipping is a feature

Madness With Methods

Mon, 04 May 2009 22:10

The beauty and insanity of perl5 method call semantics

In this post, I'm going to try and explain some of the crazier things you can do with perl5 method dispatch, from straightforward $obj->$name up to dynamic method combinators. Also, an Iron Man updatelate.

Iron Man: Update

Sat, 25 April 2009 16:22

Iron Man, embracing women

Iron Man, one week on - where to look for things, who's signed up, and notes on inclusivity and sexism from the POV of a 26 year old hacker who's still scared of his mother.

We Are Iron Man

Sat, 18 April 2009 15:00

Announcing the Enlightened Perl Iron Man Competition

Marketing, the perl community, and a new initiative to make some noise