2019 twenty-four merry days of Perl Feed

Enjoy Christmas

It's Chrismas - 2019-12-25

It's been twenty years since I published the first Perl Advent Calendar.

I was at a Perl Monger meeting this summer when someone asked me if I had some advice after all this time. Maybe: Steal from the best but make it your own? That's after all what I do - I wait for people to do all the hard work of writing the code and all I do is write about what they've been doing. I have it easy. They deserve all the praise.

So in the interests of giving good advice and stealing from the best, I'm going to steal from Mary Schmich

Ladies and Gentlemen of Christmas 2019

Enjoy Christmas. If I could offer you only one tip for the future, Enjoying Christmas would be it. The long term benefits of friends and family have been proved by scientists whereas the rest of my advice has no basis more reliable than my own meandering experience. I will dispense this advice now

Enjoy the power and beauty of creating new things; or never mind. You will not understand the power and beauty of creating new things until they have become commonplace. But trust me, in 20 years you'll look back at code you have written recall in a way you can’t grasp now how much possibility lay before you and how fabulous it was. You are more able that you imagine

Don’t worry about the future; or worry, but know that worrying is as effective as trying to get your code to pass tests by running the same test twentieth time without changing it. The real troubles in your project are apt to be things that never crossed your worried mind; the kind that blindside you five minutes after you deploy

Deploy one thing user facing every day that scares you

Release often

Don’t be reckless with other people’s code bases; don’t put up with people who are reckless with yours

Write documentation

Don’t waste your time on platform jealousy; sometimes your language is ahead, sometimes it's behind. The race is long, and in the end, it’s only with your own development that matters

Remember the github stars you receive; forget the trolls. If you succeed in doing this, tell me how

Keep your old release notes. Throw away your old bug reports


Don’t feel guilty if you don’t know what stack to use. The most interesting people I know didn’t know at 22 what they would end up coding in. Some of the most interesting 40-year-olds I know still don’t

Write tests

Be kind to your typing knuckles, you’ll miss them when when they're gone

Maybe you’ll IPO, maybe you won’t Maybe you’ll be acquired, maybe you won’t Maybe you’ll sunset your service at 40 Maybe you’ll open source, have to ask for help on gofundme, and enjoy every minute. Whatever you do, don’t congratulate yourself too much, or berate yourself either. What technology, protocol, or company that comes out on top is mostly chance; And it won't last.

Enjoy your editor. Use it every way you can. Don’t be afraid of it, or what other people think of it. It’s the greatest tool you’ll ever own.

Blog, even if you think you have nothing to talk about

Read the documentation, even if you ignore it

Do not read too much into the hot new thing; It will only make you feel outdated

Get to know your mentors; you never know when they’ll be gone for good

Be nice to your bug reporters; they are your best form of feedback and the People most likely to stick with your project long term

Understand that while users come and go, the precious few who are passionate you should hold on to

Work hard to bridge the gaps in geography and lifestyle, because the more you grow the more you need perspectives that are not like yours

Write pure machine code once, but stop before you become obsessive

Write Excel macros once, but stop before you forget the fundamentals

Explore new code

Accept certain inalienable truths: new technologies will age, companies will fail, you too will get old-- and when you do, you’ll fantasize that when you were young technologies were everlasting, companies were indestructible and newbies repeated their elders

Respect people in the community

Don’t expect anyone else to make your code work for you

Maybe you have a cushy job, maybe you have a support team; but you never know when either one might run out

Don’t mess too much with your stack at one time, or by the time you're ready to deploy, you'll need to start over

Be careful whose advice you buy, but be patient with those who supply it Advice is a form of nostalgia. Dispensing it is a way of fishing the past from the disposal, wiping it off, painting over the ugly parts and recycling it for more than it’s worth

But trust me on enjoying Christmas

Gravatar Image This article contributed by: Mark Fowler <mark@twoshortplanks.com>