2024 π Daylatest newsbuy art
music + dance + projected visualsNosaj Thingmarvel at perfect timingmore quotes
very clickable
data + munging

The Perl Journal

Volumes 1–6 (1996–2002)

The Perl Journal (Volumes 1–6 (1996–2002)) -- science + art + data visualization / Martin Krzywinski / Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
THE PERL JOURNAL ARCHIVE. | Issues 1–25 (1996–2002). The font is Walbaum Bold Italic.

Code tarballs available for issues 1–21.

I reformatted the CD-ROM contents. Some things may still be a little wonky — oh, why hello there <FONT> tag. Syntax highlighting is iffy. Please report any glaring issues.

The Perl Journal
#1
Spring 1996
vol 1
num 1
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
From the Publisher's CRT
Who we are, and what we'll be doing.
The Tk extension
An introduction to creating X graphics.
E-mail and Perl
Creating and filtering e-mail from your programs.
Perl and the World Wide Web
An introduction to CGI programming.
HTML Hacking with Regular Expressions
Manipulating links and headers, and converting HTML to plaintext.
The Prisoner's Dilemma
A game-theoretical programming contest.
The Perl Journal
#2
Summer 1996
vol 1
num 2
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
How Perl Saved The Human Genome Project
The building blocks of life...and how Perl helped organize them.
Penguin: Java Done Right
An extension for sending and receiving programs over the Internet. description.
Perl/Tk:
The Mouse Odometer X timer events, widgets, menus, and the Color Editor.
CGI programming
Saving the state of Web connections with CGI.pm.
Casting Perl before Macintoshes
The Macintosh port.
The Obfuscated Perl Contest
Results of the Prisoner's Dilemma
Treachery and cooperation - but mostly treachery.
The Perl Journal
#3
Autumn 1996
vol 1
num 3
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Data Hiding
Hiding information in text.
Perl, Politics, and Pairwise Voting
Perl as the activist's friend.
CGI Scripts and Cookies
Maintaining state across web connections.
Penguin: The First Tentative Waddle
Sending and receiving programs over the Internet.
New Modules
Recent additions to the CPAN.
Perl/Tk: Events And Other Things
X timer events, widgets, menus, and the color editor.
FTP: File Transfer Using Perl
Net::FTP speaks the File Transfer Protocol for you.
Obfuscated Perl Contest: Results
print scalar reverse "...era srenniw eht dnA"
The Perl Journal
#4
Winter 1996
vol 1
num 4
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
A Subjective Look at Object Oriented Programming
A guarded introduction to OOP.
Randomness
The generation and use of random numbers.
The Perl Purity Test
Are you a a wizard, a guru, or merely a user?
Using Usenet from Perl
(Thank you for not spamming.)
New Modules
Recent additions to the CPAN.
CGI Programming: The LWP Library
How to write your own browsers, robots, and more.
Perl/Tk: The Grid Geometry Manager
How to lay out widgets.
use Lovecraft qw(cthulhu);
A Lovecraftian homage to the new Camel book.
The Perl Journal
#5
Spring 1997
vol 2
num 1
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Pattern Languages
The building blocks of programs.
PDL: The Perl Data Language
Compact and speedy numeric programming.
Perl News
What's new in the Perl community.
Surreal HTML Pages
Create travesties of web pages with The Mangler.
Signals, Sockets, and Pipes
A graphical Perl/Tk utility for monitoring disk usage.
Futures Trading with Perl
Perl, pork bellies, and the Donchian Channel.
The Perl Journal
#6
Summer 1997
vol 2
num 2
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Perl-fect Sundials
Build your own sundials, accurate to the minute.
Just the FAQs: Sorting and Hashes
TPJ's first ever tutorial teaches you the intricacies of sorting.
CGI: Rating Web Page Tastefulness
NPH scripts and creating Web robots with LWP.
The AutoLoader
How to load parts of Perl modules on demand.
Perl News
What's new in the Perl community.
Perl/Tk: Another Wild Widget Tour
Balloons, file selectors, pulldown and popup menus...
1st Annual Obfuscated Perl Contest
I suppose you thought this was obfuscated?
The Perl Journal
#7
Fall 1997
vol 2
num 3
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Just the FAQs: Short Circuits
&& and || or and and or, and chomp() and LABELs.
Win32 Perl
Perl for Windows.
Infinite Lists
A new construct that can manipulate endless data streams.
Perl/Tk: Binding Basics
Associating actions with events.
Perl News
What's new in the Perl community.
Perfect Programming
A collection of tips for the paranoid programmer.
A Perl in the Oil Patch
Of salt and sysread().
WebPluck
Amassing a personalized newspaper from the web.
MakeMaker: Doing More While Doing Less
How to prepare your modules for maximum portability.
Obfuscated Perl Contest - The Winners
A frightening display of cryptic virtuosity.
The Perl Journal One-Liners
The Perl Journal
#8
Winter 1997
vol 2
num 4
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Unreal Numbers
Why 21.09 doesn't always equal 21.09.
Torture Testing Web Servers and CGI Scripts
Throw random input at your servers and scripts.
JPL: The Java-Perl Library
A glue interface linking Perl and Java.
Perl and EBCDIC
Before Unicode, before ASCII, there was EBCDIC.
Interprocess Communication with MacPerl
Using AppleEvents from Perl.
Perl News
What's new in the Perl Community.
SWIG
Generate Perl wrappers around C/C++ code - automatically.
Telnetting with Perl
How Net::Telnet lets your programs talk to other computers.
B-Trees
An extremely efficient tree data structure.
NT Administration with Perl
Common sysadmin tasks, automated with Perl.
The Great Internet Mersenne Prime Search
A highly distributed computing effort to find new primes.
The Perl Wizard's Quiz
Not for the timid.
The Perl Journal One-Liners
The Perl Journal
#9
Spring 1998
vol 3
num 1
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Stately Scripting with mod_perl
CGI too slow? Compiled C too slow? Try mod_perl.
Chatbot::Eliza
A Perl module that imitates a psychiatrist.
CryptoContext
Context, prototypes, and subroutine calls.
Perl/Tk: Modeling Mowing Techniques
Painting a canvas.
Perl News
What's new in the Perl Community.
die()ing on the Web
Four techniques for handling errors in CGI scripts gracefully.
How Regexes Work
Build your own regular expression engine.
Software Construction with Cons
The trouble with Makefiles.
The Perl Journal One Liners
The Perl Journal
#10
Summer 1998
vol 3
num 2
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Just the FAQs: Understand References Today
The essentials of data structures.
Infobots and Purl
IRC Robots And The People Who Love Them.
Perl 5.005
The Next Big Perl.
Learning Japanese
Using an HTML filter to read a foreign language.
Parsing Command Line Options
The Getopt::Long module and friends.
Safely Empowering Your CGI Scripts
What to do when your CGI scripts need superuser powers.
Perl News
What's new in the Perl community.
OLE Automation with Perl
Controlling Excel, Notes, and Access with Win32::OLE.
Ray Tracing
Rendering three-dimensional images.
Threads
Parallel execution paths in Perl.
Debugging and Devel::
Modules to help you bulletproof your code.
The Third Annual Obfuscated Perl Contest
The Perl Journal One-Liners
The Perl Journal
#11
Fall 1998
vol 3
num 3
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The Birth of a One-Liner
A beginner's look at shrinking Perl code.
Just the FAQs: Suffering From Buffering
Your output doesn't always appear when you think it does.
Parsing VRML
Using Perl to interpret the Virtual Reality Modeling Language.
Source Filters
Ever wanted to encrypt your Perl programs?
A Web Proxy Module For mod_perl
Eliminate ads from your web pages with a proxy.
Perl Style
How readable is your code?
Perl News
What's new in the Perl community.
Win32: PerlCOM And PerlCtrl
Two new products for gluing Win32 COM objects.
Benchmarking
Measuring the speed of Perl programs.
Iterating Over Permutations
Making certain brute force searches a little more tractable.
Creating Applications With mod_perl
Using Apache::Registry, Apache::Sandwich, Embperl, and DBI.
Making Life And Death Decisions With Perl
Probability theory and deadly diseases.
Netscape and LDAP
Accessing directories via the Lightweight Directory Access Protocol.
The Third Annual Obfuscated Perl Contest Victors
perl -e '$# = print "1 + 1 = "; print 2'
The Perl Journal One-Liners
The Perl Journal
#12
Winter 1998
vol 3
num 4
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Just the FAQs: Coping with Scoping 3
Perl's two schemes for naming variables.
Perl Heresies 8
Not all conventional Perl wisdom is wise.
A Dynamic Navigation Bar with mod_perl 10
Navigation bar envy, sated with Apache and Perl.
Installing Perl and Perl/Tk on Win32
The trials and tribulations of a Unix user on Windows.
s/$text/speech $1/eg;
Kevin Lenzo
Perl News
What's new in the Perl community.
Bricolage: Data Compression
How to squeeze your data into the smallest possible space.
The man(1) of Descent
Generating your own parsers in Perl.
The Perl Quiz Show
For ten points, what magazine are you reading now?
The Perl Journal One Liners
The Perl Journal
#13
Spring 1999
vol 4
num 1
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Perl News
What's new in the Perl community.
Five Quick Hacks: Downloading Web Pages
Grabbing web page contents without a browser.
The Perl Scripts Archive
The CPAN now stores scripts as well as modules.
Web Databases the Genome Project Way
A free database system tailored for the web.
XML
The successor to HTML.
Bricolage: Memoization
Speeding up Perl functions.
Review: The O'Reilly Perl Resource Kit
Localizing Your Perl Programs
Adapting programs for languages other than English.
Building Your Own Perl for Win32
How to compile and install your own Perl from the source code.
The rezrov Infocom Game Interpreter
A maximally portable game engine, with a few back doors.
Perl and MIDI: Simple Languages, Easy Music
How a little language for generating music was created.
Perl Heresies: Building Objects Out Of Arrays
Most people build objects out of hashes. Here's why you shouldn't.
Controlling Modems with Win32::SerialPort
Let your programs talk to any serial device.
Contest: The Solitaire 500
Speed matters. How fast can your program play a simple card game?
TPJ One Liners
The Perl Journal
#14
Summer 1999
vol 4
num 2
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Perl News
What's new in the Perl community.
What Is Truth?
Truth and falsehood aren't black and white.
Downloading Web Pages Through A Proxy Server
How LWP can cope with firewalls.
Seven Useful Uses of local
Some rare occasions when my won't do.
On-the-Fly Web Plots Made Easy
Using Gnuplot to graph web logs
E-mail with Attachments
Using MIME to send images, audio, and more.
Review of Perl: The Programmer's Companion
A Perl book for experienced programmers.
Perl/Tk Menus: Past, Present, and Future
Creating menubars in Perl/Tk 4 and Perl/Tk 8.
Manipulating Images with Perl and the Gimp
Creating plug-ins for a free alternative to Adobe's Photoshop.
Review of Learning Perl/Tk
An introductory text for graphics programming with Perl/Tk.
Building A Better Hash
How a problem was solved with a homebrew data structure.
Using Databases with DBI: What Not To Do
Speeding up your database connections.
Sending mail without sendmail
Sending mail from Perl in a portable way.
International Sorting with sort
Grappling with "funny" letters? Bi-level sorting can help.
The Solitaire 500 Results
The fastest card players from last issue's contest.
The Fourth Annual Obfuscated Perl Contest
Confuse us and win a prize.
The Perl Journal One Liners
The Perl Journal
#15
Fall 1999
vol 4
num 3
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Letters
MIDI::Simple, and a little hate mail.
Perl News
What's new in the Perl community.
Just the FAQs: Precedence Problems
There's more to it than what you learned in fourth grade.
Braille Contractions and Regular Expressions
How a 14 kilobyte regex helps the visually challenged.
Client-Server Applications
Turn your program into a server.
Genetic Algorithms with Perl
Evolving algebraic expressions.
Review: Perl 5 For Dummies
Threadsafing a Module
Make your unthreaded modules palatable to threaded Perl.
Visual Debugging with ptkdb
Free software that finds bugs in your programs.
Predicting Sports Championships
Why the Denver Broncos will win the Superbowl again.
Hiding Object Data Using Closures
Concealing attributes from prying programmers.
Turning a Perl Program Into an NT Service
Long-lived Perl programs on Windows NT.
Operator Overloading in Perl
Use +, x, and other operators on your objects.
A Web Spider...In One Line?
Using HTML::, LWP::, and HTTP:: modules to traverse links.
Review: Writing Apache Modules with Perl and C
Prequel to SQL
Using Microsoft Access and DBI with a web application.
Version Control with makepatch
A free utility for updating documents.
The Obfuscated Perl Contest Victors
The Perl Journal One Liners
The Perl Journal
#16
Winter 1999
vol 4
num 4
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Letters
Microsoft vs. ActiveState, and precedence.
Perl News
What's new in the Perl community.
Searching for Rhymes with Perl
"I chanced upon a lovely toad..."
Just Another Perl Haiku
Humanizing error messages with Coy.pm.
Managing Streaming Audio
Serving MP3s with Apache.
Hacking the Perl Core
How you can help change Perl. .
CS-Web: A Lightweight Summarizer for HTML
Providing capsule descriptions of web pages.
Review: Object Oriented Perl
Recursive Traversal of an FTP Site
Moving data between file trees.
Win32 Module Installation
Using Perl as a make-replacement.
Taking Perl to the Java Virtual Machine
Creating Java class files with Perl.
Review: Perl Programmer's Reference and Annotated Archives
Dynamic DNS Updates With Perl
Remotely updating Internet machine names.
The Second Perl Quiz Show
The Perl Poetry Contest
The Perl Journal
#18
Summer 2000
vol 5
num 2
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The Perl Journal
#22
Winter 2001
vol 5
num 6
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The Perl Journal
#23
Spring 2002
vol 6
num 1
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
The Perl Journal
#24
Summer 2002
vol 6
num 2
Martin Krzywinski @MKrzywinski mkweb.bcgsc.ca
Resource Locking Over Networks
Spatial Web Navigation with Perl
Using Sendmail::Milter to Tinker with Your Mail
Martin Krzywinski | contact | Canada's Michael Smith Genome Sciences CentreBC Cancer Research CenterBC CancerPHSA
Google whack “vicissitudinal corporealization”
{ 10.9.234.152 }