You are on page 1of 43

Mastering PHP design patterns develop

robust and reusable code using a


multitude of design patterns for PHP 7
Ali
Visit to download the full and correct content document:
https://textbookfull.com/product/mastering-php-design-patterns-develop-robust-and-re
usable-code-using-a-multitude-of-design-patterns-for-php-7-ali/
More products digital (pdf, epub, mobi) instant
download maybe you interests ...

PHP 8 Objects, Patterns, and Practice: Mastering OO


Enhancements, Design Patterns, and Essential
Development Tools Zandstra

https://textbookfull.com/product/php-8-objects-patterns-and-
practice-mastering-oo-enhancements-design-patterns-and-essential-
development-tools-zandstra/

Design Patterns in PHP and Laravel 1st Edition Kelt


Dockins

https://textbookfull.com/product/design-patterns-in-php-and-
laravel-1st-edition-kelt-dockins/

MASTERING JAVASCRIPT DESIGN PATTERNS create scalable


and reliable applications with advanced Javascript
design patterns using reliable code 3rd Edition Tomas
Corral Cosas
https://textbookfull.com/product/mastering-javascript-design-
patterns-create-scalable-and-reliable-applications-with-advanced-
javascript-design-patterns-using-reliable-code-3rd-edition-tomas-
corral-cosas/

Design Patterns in Modern C++: Reusable Approaches for


Object-Oriented Software Design 1st Edition Dmitri
Nesteruk

https://textbookfull.com/product/design-patterns-in-modern-c-
reusable-approaches-for-object-oriented-software-design-1st-
edition-dmitri-nesteruk/
Puppet Best Practices Design Patterns for Maintainable
Code 1st Edition Chris Barbour

https://textbookfull.com/product/puppet-best-practices-design-
patterns-for-maintainable-code-1st-edition-chris-barbour/

Design Patterns in .NET Core 3: Reusable Approaches in


C# and F# for Object-Oriented Software Design 2nd
Edition Dmitri Nesteruk

https://textbookfull.com/product/design-patterns-in-net-
core-3-reusable-approaches-in-c-and-f-for-object-oriented-
software-design-2nd-edition-dmitri-nesteruk/

Java Design Patterns A tour of 23 gang of four design


patterns in Java 1st Edition Vaskaran Sarcar

https://textbookfull.com/product/java-design-patterns-a-tour-
of-23-gang-of-four-design-patterns-in-java-1st-edition-vaskaran-
sarcar/

Java design patterns a tour of 23 gang of four design


patterns in Java 1st Edition Vaskaran Sarcar

https://textbookfull.com/product/java-design-patterns-a-tour-
of-23-gang-of-four-design-patterns-in-java-1st-edition-vaskaran-
sarcar-2/

Design Patterns by Tutorials Learning design patterns


in Swift 4 2 Joshua Greene

https://textbookfull.com/product/design-patterns-by-tutorials-
learning-design-patterns-in-swift-4-2-joshua-greene/
Mastering PHP Design Patterns

Develop robust and reusable code using a multitude of


design patterns for PHP 7

Junade Ali

BIRMINGHAM - MUMBAI
Mastering PHP Design Patterns
Copyright © 2016 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or
transmitted in any form or by any means, without the prior written permission of the
publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the
information presented. However, the information contained in this book is sold without
warranty, either express or implied. Neither the author, nor Packt Publishing, and its
dealers and distributors will be held liable for any damages caused or alleged to be caused
directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the
companies and products mentioned in this book by the appropriate use of capitals.
However, Packt Publishing cannot guarantee the accuracy of this information.

First published: September 2016

Production reference: 1230916

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-78588-713-0
www.packtpub.com
Credits

Author Copy Editor

Junade Ali Safis Editing

Reviewer Project Coordinator

Sworup Shakya Suzanne Coutinho

Commissioning Editor Proofreader

Kunal Parikh Safis Editing

Acquisition Editor Indexer

Chaitanya Nair Tejal Daruwale Soni

Content Development Editor Production Coordinator

Nikhil Borkar Aparna Bhagat

Technical Editor Cover Work

Hussain Kanchwala Aparna Bhagat


About the Author
Junade Ali was a technical lead at some of the UK's leading digital agencies and has also
worked using PHP in mission-critical road-safety systems. He loves pushing PHP to its
innovative limits. Having started his career as a web development apprentice, he still
remains engaged in the academic computer science community.

Junade, an avid contributor to the PHP community, has also spoken at PHPTek and the
Lead Developer Conference. In addition to this, Junade was interviewed by Cal Evans for
Voices of the ElePHPant, and he has appeared on the PHP Roundtable. In this spirit, Junade
is proud of his local PHP user group: PHPWarks. Currently, Junade works at CloudFlare as
a polymath, and helps make the Internet more secure and faster.

Outside of development, Junade has an interest in law and political campaigns and is a
published author on constitutional law.
About the Reviewer
Sworup Shakya has worked as a web developer for more than ten years. He started his
career as a Flash ActionScript developer, before moving on to ASP.NET MVC, and finally to
PHP. During his time as a developer, Sworup worked extensively with frameworks, be it
ASP.NET MVC or AngularJS or Laravel. However, while he was working as an
ActionScript developer, he had to create one, which gave him knowledge of design patterns
and OOP concepts that has helped him improve in order to be able to work on the
frameworks he had to work on later.

Sworup received his Bachelor of Information Technology degree from Purbanchal


University in Nepal. He currently works with Zimris Technologies Nepal Pvt. Ltd., a
subsidiary of Zimris, LLC, as a senior developer.

Sworup likes to keep on top of the current technologies, keeping an eye on StackOverflow,
Laracasts forums, and occasional podcasts. He posts on these mediums whenever he can
and is looking to start a technical blog documenting his experiences at http://sworup.com.
np/. You can reach him at sworup.shakya@gmail.com.

I would like to thank Suzanne Coutinho, Francina Pinto and Chaitanya Nair of Packt Publishing for
giving me this opportunity and helping me through the review process. I would like to thank my
friends, family and colleagues for their unconditional support.
www.PacktPub.com
For support files and downloads related to your book, please visit www.PacktPub.com.

Did you know that Packt offers eBook versions of every book published, with PDF and
ePub files available? You can upgrade to the eBook version at www.PacktPub.com and as a
print book customer, you are entitled to a discount on the eBook copy. Get in touch with us
at service@packtpub.com for more details.

At www.PacktPub.com, you can also read a collection of free technical articles, sign up for a
range of free newsletters and receive exclusive discounts and offers on Packt books and
eBooks.

https://www.packtpub.com/mapt

Get the most in-demand software skills with Mapt. Mapt gives you full access to all Packt
books and video courses, as well as industry-leading tools to help you plan your personal
development and advance your career.

Why subscribe?
Fully searchable across every book published by Packt
Copy and paste, print, and bookmark content
On demand and accessible via a web browser
Table of Contents
Chapter 1: Why "Good PHP Developer" Isnt an Oxymoron 8
Coding style – the PSR standards 11
Revising object-oriented programming 11
Polymorphism 11
Traits (multiple inheritance) 16
Scalar type hints 19
Limiting debug access to private/protected properties 21
Setting up the environment with Composer 23
The Gang of Four (GoF) 26
Creational design patterns 27
Dependency injection 27
Structural design patterns 28
Behavioral design patterns 28
Architectural patterns 28
Summary 29
Chapter 2: Anti-Patterns 30
Why anti-patterns matter 31
Not invented here syndrome 34
Third-party dependencies with Composer 36
God objects 40
Environment variables in PHP source 43
Singletons (and why you should be using dependency injection) 44
Dependency injection 45
Database as IPC 45
Auto-increment database IDs 46
Cronjob imitating service 47
Software in place of architecture 47
Interface Bloat 49
Cart before the horse 51
Separation of development and operations 52
Excessive separation of development responsibilities 52
Error suppression operator 53
Blind faith 54
Sequential coupling 55
The big rewrite 58
Automated tests 59
Service splitting 60
Perfectly staged migrations 61
Tester-Driven Development 62
Bloated optimization 62
Analysis paralysis 63
Bikeshedding 63
Premature optimization 63
Uneducated manager syndrome 64
Wrong rocky foundations 64
Long methods 65
Magic numbers 70
Summary 70
Chapter 3: Creational Design Patterns 72
Software design process 72
Simple Factory 74
Factory Method 78
Abstract Factory pattern 82
Lazy initialization 90
Builder pattern 93
Prototype pattern 97
Summary 102
Chapter 4: Structural Design Patterns 103
Agile software architecture 104
Decorator 105
Adapter 108
Class Adapter 108
Object Adapter 110
FlyWeight 113
Composite 117
Bridge 120
Proxy pattern 123
Facade 127
Summary 130
Chapter 5: Behavioral Design Patterns 132
Personality traits for passionate programmers 133
Observer pattern (SplObserver/SplSubject) 135

[ ii ]
Iterators 139
IteratorAggregate 139
Iterator 141
The many iterators of PHP 142
Generators 143
Template Method design pattern 148
Chain of Responsibility 152
Strategy design pattern 159
Specification design pattern 163
Scheduled Task pattern 167
Summary 168
Chapter 6: Architectural Patterns 170
Model-View-Controller (MVC) 170
Service-oriented architecture 172
Microservices 173
Asynchronous queueing 177
Message Queue pattern (Getting started with RabbitMQ) 177
Publish-Subscriber pattern 187
Summary 191
Chapter 7: Refactoring 192
What is refactoring? 192
Test, test, and test again 193
Code smells 194
Long methods and duplicated code 195
Large class 197
Replacing complex logical statements and switch statements with
polymorphism or the Strategy Pattern 198
Duplicating code following a single control structure 200
Long Parameter List and primitive obsession 200
Indecent exposure 203
Feature envy 204
Inappropriate intimacy 206
Deeply nested statements 206
Remove assignments to parameters 207
Comments 208
Encapsulating Composite with Builder 208
Replacing hard-coded notifications with Observer 209
Replacing one/many distinctions with Composite 209

[ iii ]
Separate versions with Adapters 210
What do I tell my manager? 210
Summary 211
Chapter 8: How to Write Better Code 212
Nature of a HTTP request 212
RESTful API design 231
Stateless nature 231
Versioning 231
Filtering 232
Sorting 232
Searching 232
Limiting fields 233
Returning new fields 233
When in doubt – KISS 233
Software development life cycle 234
On Scrum, and real Agility 235
You need to sack people sometimes 237
Lean project management 239
YAGNI and defering decisions 239
Monitoring 240
Tests fight legacy 241
Behavior-Driven Development 243
Summary 250
Index 252

[ iv ]
Preface
Have you ever been to a PHP conference? If not, I’d highly recommend it, it is the closest
you can get to a living and breathing PHP community. A few weeks ago, I flew from
London to St. Louis, Misouri, to speak at php[tek] (the PHP conference run by
php[architect]). After the conference, there was a small tradition within the PHP community
known as WurstCon. Essentially, hundreds of PHP conference attendees cram themselves
into a small hot dog shop and host a hot dog convention, often to the complete surprise of
the staff there. Likewise, community nights at PHP events are the warmest and most
accepting community occasions you’ll ever run into; the PHP community is surely one that
other development language communities envy.

As of PHP 7, the PHP project has changed dramatically; but what I love, remains strong.
The warmth you will feel at any PHP conference, the openness in the documentation, and
adoption in the language. Yes, there are practices that are undoubtedly bad within PHP
itself; however, think of what the PHP community has recently achieved, ranging from
PHPUnit to Composer. Throughout this book, bear in mind the improvements in PHP 7, a
few of which I’ll share with you. The trajectory of the project is now certainly upwards, and
let’s not forget that this wasn’t always true. The PHP community has learned its lessons
from the past, whilst the language maintains the flexibility to write what is bad.

This book will seek to impart strong software engineering skills to you with the focus on
implementing them in PHP. At the time of publishing this book, there is a certain void and
a necessity for this kind of material. This book seeks to be the lighthouse that will not only
demonstrate software design theory, but also seek to impart practical information of real
value to improve the quality and maintainability of the code you write. This book leaves no
stone unturned throughout the software development cycle and will seek to confront the
reasons as to why the majority of software projects fail whilst also addressing design,
redesign, and safeguard effective code.

This book goes beyond traditional design patterns as envisaged by the Gang of Four and
details the practices that passionate PHP developers need to be successful as software
engineers or leads on detailed PHP projects. This book will introduce you to the core
knowledge required to understand project management techniques, why the majority
software development projects fail, and why you can make yours a success.
Preface

Originally, I gave thought to writing a book on PHP when Mandi Rose, who I worked with
previously, suggested I put together a book on the practices I’ve learned with PHP.
Needless to say, at the time that suggestion was made, the best of my career was
undoubtedly ahead of me; when the opportunity actually arose to write something like this,
I felt I had learned dramatically more as time progressed. By no means should you see this
book as the be-all and end-all of PHP practices; instead, you should use it to increase your
knowledge base on PHP, but by no means limit it to this. In this book, I aim to give
something, however small, back to the PHP community; after reading this book, I would
encourage you to get stuck in and share what you’ve learned with others.

Later in this book, I will advocate Extreme Programming as a methodology and courage as
a key value of this methodology. I will ask you to bear in mind the explanation of courage
in The Values of Extreme Programming: “We will tell the truth about progress and
estimates. We don't document excuses for failure because we plan to succeed. We don't fear
anything because no one ever works alone. We will adapt to changes whenever they
happen.” This is, of course, some key advice we should all follow and seek to genuinely
understand risks instead of cowering behind them. For many of us, the code we write
during parts of our career is the highest expression of our labor. Indeed, the late nights
turning into early mornings we spend debugging and developing are what ultimately allow
us to demonstrate the fruits of our labor. In essence, as software engineers, the code we
write defines who we are, as such we should be open to constantly refining and refactoring
our processes, which is what this book aims to support you in doing. I am incredibly
honored that you chose to allow me to help you to reach this end.

What this book covers


Chapter 1, Why "Good PHP Developer" Isn't an Oxymoron, introduces the concept of design
patterns as recurring solutions to commonly arising problems.

Chapter 2, Anti-Patterns, introduces how patterns can lead to decidedly negative


consequences.

Chapter 3, Creational Design Patterns, discusses Gang of Four design patterns, namely those
surrounding object creation.

Chapter 4, Structural Design Patterns, covers how multiple classes and objects can be
combined to deliver a clearer interface.

[2]
Preface

Chapter 5, Behavioral Design Patterns, explains how to increase the flexibility of


communication between objects by identifying patterns that can help with communication
between them.

Chapter 6, Architectural Patterns, revolves around resolving common issues related to the
architecture of a web application/system, potentially outside the code base itself.

Chapter 7, Refactoring, shows how to redesign code that has already been written to
improve maintainability.

Chapter 8, How to Write Better Code, covers a range of concepts that haven’t been discussed
elsewhere, and it also concludes with some advice for developers.

What you need for this book


An installation of PHP 7 will serve you well throughout this book. You should be prepared
to alter your development environment as needed throughout this book; we will address
the installation of various tools as we encounter them.

This book is not for the despairingly hostile or those who are passively antagonistic to
approaching new software engineering principles. It is not for those who seek to be lone
warriors, either. When altering a given code base, you must seek to improve the code of the
entire code base and everyone who works on it. You must be willing to take personal
responsibility of the code you write and not blame external factors. Code maintainability
cannot be improved unilaterally on shared code bases; you must write your code with the
intention of maintaining code quality for those who maintain it after you. Additionally, seek
to go into this book with the mindset of being able to share what you’ve learned, whether it
is with those in your teams, your user groups, or the larger PHP community. In other
words, approach this book with the end in mind; approach this book with the stated aim of
improving your code and those in the code base you maintain.

Who this book is for


This book is certainly aimed at the PHP developer looking to learn about the complete set of
skills needed to be a software engineer, in particular, some lessons from software design;
this book will seek to educate you on how your code can be made more extensible and
easier to develop on. This book seeks to take your code beyond just being a bag of functions
and classes, instead preferring well-designed, well-written, and well-tested code.

[3]
Preface

You will need a working knowledge of PHP and enough to build an application, but by no
means do you have to be a total expert at everything in PHP; a working knowledge of the
basics of software engineering will certainly give you a heads up.

You must encounter this book with an open mind and a willingness to have your
preconceptions about software development challenged. This book will confront some
truths about how you may be failing personally as a developer; it is vital that you approach
this book with a willingness to take these principles onboard.

This book presents a set of software development patterns and principles that you can
adopt. It is vital that you understand where these patterns should and shouldn’t be applied;
this will be explained throughout the book, especially in the last chapter.

A key tenet of reading this book is understanding what PHP is for and what it isn’t. I expect
you to enter this book understanding what problems you expect PHP to solve and what
you expect to use other software development languages to solve.

Conventions
In this book, you will find a number of text styles that distinguish between different kinds
of information. Here are some examples of these styles and an explanation of their meaning.

Code words in text, database table names, folder names, filenames, file extensions,
pathnames, dummy URLs, user input, and Twitter handles are shown as follows: "The
index.php file now yields this result".

A block of code is set as follows:


<?php

abstract class Notifier


{
protected $to;

public function __construct(string $to)


{
$this->to = $to;
}

abstract public function validateTo(): bool;

abstract public function sendNotification(): string;

[4]
Preface

Any command-line input or output is written as follows:


echo $richard->hasPaws;

New terms and important words are shown in bold. Words that you see on the screen, for
example, in menus or dialog boxes, appear in the text like this: "direct your web browser to
your chosen web server and you should see Hello world! pop up on screen."

Warnings or important notes appear in a box like this.

Tips and tricks appear like this.

Reader feedback
Feedback from our readers is always welcome. Let us know what you think about this
book—what you liked or disliked. Reader feedback is important for us as it helps us
develop titles that you will really get the most out of.

To send us general feedback, simply e-mail feedback@packtpub.com, and mention the


book's title in the subject of your message.

If there is a topic that you have expertise in and you are interested in either writing or
contributing to a book, see our author guide at www.packtpub.com/authors.

Customer support
Now that you are the proud owner of a Packt book, we have a number of things to help you
to get the most from your purchase.

Downloading the example code


You can download the example code files for this book from your account at http://www.p
acktpub.com. If you purchased this book elsewhere, you can visit http://www.packtpub.c
om/support and register to have the files e-mailed directly to you.

[5]
Why "Good PHP Developer" Isnt an Oxymoron

So now let's suppose we have a function to name our class, but we don't want it to apply to
all our classes that extend the Animal class, we want it to apply to certain classes
irrespective of whether they inherit the properties of the abstract Animal class or not.

So we've defined our functions like so:


function setFirstName(string $name): bool
{
$this->firstName = $name;
return true;
}

function setLastName(string $name): bool


{
$this->lastName = $name;
return true;
}

The problem now is that there is no place we can put them without using Horizontal Reuse,
apart from copying and pasting different bits of code or resorting to using conditional
inheritance. This is where Traits come to the rescue; let's start off by wrapping these
methods in a Trait called Name:
trait Name
{
function setFirstName(string $name): bool
{
$this->firstName = $name;
return true;
}

function setLastName(string $name): bool


{
$this->lastName = $name;
return true;
}
}

So now that we've defined our Trait, we can just tell PHP to use it in our Cat class:
class Cat extends Animal
{
use Name;

public function walk()


{
return "walking with tail wagging...";

[ 17 ]
Why "Good PHP Developer" Isnt an Oxymoron

}
}

Notice the use of the Name statement? That's where the magic happens. Now you can call
the functions in that Trait without any problems:
$whiskers = new Cat();
$whiskers->setFirstName('Paul');
echo $whiskers->firstName;

All put together, the new code block looks as follows:


trait Name
{
function setFirstName(string $name): bool
{
$this->firstName = $name;
return true;
}

function setLastName(string $name): bool


{
$this->lastName = $name;
return true;
}
}

class Animal
{
public function walk()
{
return "walking...";
}
}

class Cat extends Animal


{
use Name;

public function walk()


{
return "walking with tail wagging...";
}
}

$whiskers = new Cat();


$whiskers->setFirstName('Paul');
echo $whiskers->firstName;

[ 18 ]
Another random document with
no related content on Scribd:
— Te voitte täydellisesti luottaa minuun, herra prefekti.

— Sen tiedän. Muuten en voisikaan nyt juuri riistäytyä irti. — Jos


sattuisi jotain erikoista, saan tietysti tietoa siitä. Kotini ovet avautuvat
minä hetkenä ja minä aikana hyvänsä teille. Sen tiedätte.

Kumartaen vastasi Seller esimiehensä hymyilyyn, avasi


virastohuoneen oven ja vastasi jäähyväisiin toistamalla
tavanmukaisen: "näkemiin". Sitte kääntyi kukin taholleen. Seller
palasi työhönsä, prefekti laskeutui virastonsa portaita alas kadulle.

Häntä ei tänään, kuten tavallisesti, haluttanut ajaa kotiin. Hän


tahtoi rauhassa saada selvitellä ajatuksiaan eikä hänestä mikään
ollut niin hyvä apukeino siihen kuin kävely yksinäisyydessä, vapaana
kaikesta hätyyttävästä kiireestä.

Ensimäisessä kadunkulmauksessa hän siitä syystä käänsi


selkänsä kaupungin keskustalle ja astui hetken kuluttua eteenpäin
siimekästä, huvilakaupunkiin johtavaa bulevardia pitkin.

Hän astui hitaasti ja ajatuksiinsa vaipuneena. Hän oli viime aikoina


tullut kokemaan jotain näihin asti hänelle vallan tuntematonta. Ne
kaksi eri maailmaa, joissa hän vuoroin eli ja jotka rikastuttivat hänen
elämäänsä erilaisuudellaan, pitäen sekä häntä että toisiaan
tasapainossa, olivat nyt ensikertaa joutuneet toinen toisensa tielle.
Virasto ja koti eivät ennen olleet tehneet haittaa toisilleen.
Päinvastoin. Suuren erilaisuutensa kautta olivat ne lisänneet sekä
omaa että toinen toisensa arvoa. Tyhjyys olisi ollut tuntuva, ellei niitä
kumpaakin olisi ollut olemassa juuri sellaisina kuin olivat.

Prefekti Hilmer pyyhkäisi miettivänä partaansa. Hänen täytyi


myöntää, että hän yleensä oli maailman onnellisimpia ihmisiä. Joka
aamu, kun hän — tapansa mukaan ensin otettuaan virkistävän
kylvyn — astui kotinsa suureen, valoisaan ruokasaliin, valtasi
hyväntuntemus hänet jo ensi näkemällä. Häikäisevän valkea, aina
puhdas liina peitti pöydän.

Hunaja ja marjahillo kristallikuvuissaan, höyryävä kahvi ja


paistavat, tavallisesti itse talon emännän leipomat vehnäpyörylät
lisäsivät sekä hyväntuntemusta että ruokahalua. — Kun Anselma
sitte vielä kiepsahti isän polvelle ja äiti asettui viereen, äiti, joka
nauroi ja laverteli kuin iloinen lapsi ja jolla vielä oli jälellä
nuoruutensa ihastuttavat hymykuopat, oliko ihme, jos prefekti Hilmer
tunsi olevansa onnellinen perheenisä?

Mutta hän nautti yhtä paljon, kun hän pari tuntia myöhemmin
saapui virastoonsa keskikaupungilla.

Hän oli toistakymmentä vuotta ollut suurkaupungin poliisiviraston


rikosasiain johtomiehenä ja koko tänä aikana oli työ ollut hänelle ei
ainoastaan toimeentulon vaan myöskin nautinnon lähteenä. Hän
rakasti niitä kirjavia ihmiskohtaloita ja niitä sotkeuksista selvitettäviä
vyyhtejä, joita työ hänen eteensä asetti. Kun hän aamuisin
avatessaan virastonsa oven näki pöydälle kerääntyneen kasan
tärkeitä papereita ja vastaanotti ilmoituksia monista odottavista, joilla
ehkä oli jännittäviä ja tärkeitä tiedonantoja, sai hyväntuntemus hänet
taaskin valtoihinsa. Katse jännittyi. Käsi tarttui papereihin, ajatus
asioihin. Ja työtä höysti nautintoa tuottava työnilo.

Prefekti Hilmer siveli taaskin partaansa. "Mallikelpoinen


virkamies", "erinomainen, onnellinen ja herttainen perheenisä",
sellaisiin arvosteluihin oli hän tottunut. Eikä ne hänestä väärään
osuneetkaan. Hän tiesi itsekin, että hän sekä virassaan että
kodissaan oli hyvin paikkansa täyttävä, onnellinen ja tyydytystä
tunteva mies.

Mutta yhtä hyvin kuin hän viihtyi näissä kahdessa eri


maailmassaan, yhtä tarkasti oli hän näihin asti osannut pitää ne
erillään toisistaan. Kun hän avasi oven virastoonsa, jätti hän puolison
ja isän ulkopuolelle. Kun hän tahtoi nauttia omaistensa piirissä, hääti
hän virkamiehen kauaksi.

Ainoastaan joskus, jos virastossa sattui erityisen jännittäviä


asioita, tahtoivat ajatukset kodinkin piiristä käydä selviteltävään
pulmaan käsiksi, mutta pieninkin tyytymättömyyden ilmaus talon
naisten puolelta sai aina perheenisän muistamaan velvollisuuksiaan.

Näin oli sekä virka että koti tähän asti saanut osansa ilman että
siitä kärsi toinen enemmän kuin toinenkaan. Mutta nyt olivat ne
yht'äkkiä kiusallisella tavalla kiertyneet toistensa tielle.

Asia oli saanut alkunsa sinä päivänä, jolloin prefekti Hilmer ensi
kertaa sai käsiinsä tuon nuoren, mutta rohkean huijarin valokuvan.
Sinä päivänä etsintä varsinaisesti alkoi. Ja asia oli sekä tärkeä että
vaikea, semminkin kun asianomainen ainoassa saatavana olevassa
valokuvassaan oli valepuvussa, jossa hän edellisenä talvena oli
esiintynyt Italiassa.

Virkamies seurasi sinä iltana prefekti Hilmeriä kotiin asti. Mutta


pitipä Anselman sinä iltana juuri asettua isän polvelle kuiskaamaan
hänelle korvaan omia sydänsalaisuuksiaan.

Anselma oli ollut huviretkellä Meissenissä yhdessä hyvän


ystävänsä Lilly Reimers'in kanssa. Matkalla he olivat tutustuneet
kovin kohteliaaseen ja hauskaan nuoreen herraan. Senjälkeen olivat
he "sattumalta" yhtyneet häneen monta kertaa ja herra Hief oli nyt
käynyt Lillyn kodissakin. Anselmakin olisi mielellään pyytänyt häntä
luokseen, mutta ei ollut uskaltanut ennen — isän tähden. Mutta
tänään oli herra Hief saattanut häntä pitkän matkaa ja puhunut
sellaista, jota ei koskaan ennen, ja sentähden Anselman suorastaan
täytyi pyytää häntä isän ja äidin puheille.

Monien pyytämisten perästä oli hän vihdoinkin luvannut tulla


huomenna. Mutta hän oli kovin ujo ja arka, sentähden täytyi isän
luvata olla oikein ystävällinen hänelle.

Prefekti Hilmer huokasi. Olisi Anselma vain tietänyt, miten


sopimattomaan aikaan hänen rakkausasiansa sattuivat! Mutta
tiedusteliko rakkaus sopivinta vastaanotto-aikaa? — Ei tarvinnut
ajatella muuta kuin omaa nuoruuttaan. Tenttikiireet olivat hänelläkin
pahimmillaan kun Sofie Pormplyn'in hymykuopat ja helisevä nauru
tulivat ajatuksia sotkemaan.

Mutta kuluttavia olivat nämä kaksi viime kuukautta olleet:


virastossa paljon mieltäjännittävää, tuon huijarin tähden, josta ei
selvää saatu, kotona Anselman asiat.

Ensin oli täytynyt suostua salakihlaukseen, nyt ei sekään enää


tyydyttänyt. Tyttö oli saanut päähänsä, että kihlaus oli julaistava
hänen syntymäpäivänään — ruusujen ollessa kauneimmillaan.

Ensin oli isä pannut jyrkästi vastaan. Mutta jaksoiko sitä


ajanpitkään, kun tyttö pyysi ja rukoili?

Anselmalla oli jo kerran ennen ollut pieni seikkailunsa. Hän oli


joutunut kihloihin erään ulkomaalaisen kanssa, joka sitte jätti hänet.
Sitä sairasti hän kokonaista puoli vuotta. Nyt vasta oli hän tullut
oikein entiselleen. Senkin tähden oli vaikeaa jyrkästi vastustaa
hänen pyyntöään. Mutta raskasta oli suostuakin. Molemmat olivat
vielä kovin nuoria. Ja sulhanen tuntui aivan yhtä kehittymättömältä
kuin Anselmakin.

Siitä asti, jolloin Edgar Hief oli alkanut seurustella perheessä, oli
prefekti Hilmer koettanut tutkimalla tutkia tulevan vävypoikansa
luonnetta. Mutta tulos oli ollut huononpuoleinen. Hän ei oikeastaan
ollut selvillä muusta kuin miehen ulko-asusta. Ja se oli nuhteeton.
Puku ja viikset olivat aina huomattavalla huolella hoidetut.
Kasvonpiirteet olivat säännölliset, hipiä silmäänpistävän hieno,
punainen ja valkoinen.

Edgarin siniset silmät olivat Anselman vakuutusten mukaan kauniit


kuin taivas, jonka väriä ne kuvastivat, mutta niiden kauneutta
näyteltiin säästävästi muille. Katse oli enimmäkseen joko kiintynyt
Anselmaan tai alas luotu. "Ujoudesta", sanoi Anselma.

Prefekti Hilmer huokasi.

Vasta muodostumassa olevasta luonteesta ei tietystikään voinut


saada sen selvempää kuvaa kuin lapsesta, joka valokuvattaessa
liikahti. Ääriviivoja ei voinut oppia tuntemaan, kun ei varmoja
ääriviivoja vielä löytynyt. Tällä oli hän koettanut lohduttaa itseään.

Kodin portti pysäytti samassa prefektin. Punahiekkainen, huvilaan


johtava käytävä oli koristellen haravoitu. Käytävän molemmin puolin
tuoksuivat upeat runkoruusut ja nurmikentälle sijoitettujen agavien ja
araukaarioiden lehdillä kimaltelivat niihin vasta ruiskutetun veden
pisarat kirkkaina kuin kastehelmet.
Mutta tänään ei prefekti Hilmer voinut nauttia kotinsa
kauneudesta. Hän ei edes jouduttanut askeleitaan, vaikka näki
vaimonsa verannan ovella innokkaasti viittaavan häntä tulemaan.

Rouva Hilmerillä oli mielessä kihlajaiskakut ja tulevat kapiot,


ihmisten hämmästys ja seurapiirin arvostelu. Hänen täytyi saada
kevennellä sydäntään.

Samassa kuin isä astui ovesta sisään, kiepsahti Anselmakin


hänen käsipuoleensa. Kihlajaispuku oli vast’ikään tullut
ompelijattarelta. Isän täytyi välttämättä tulla sitä katsomaan.

— On teilläkin asioita mielessä!

— Niinkuin sinullakin, isä! Meillä on vain hauskempaa ajateltavaa


kuin sinulla.

— Mistäs tiedät, vaikka minä olisin ajatellut jotain hyvinkin


hauskaa, — esimerkiksi Edgariasi?

— Oh, isä! — Anselma irroitti korvalehtensä isän nipistyksestä. —


Minä pahoin pelkään, että sinä ajattelit sitä nuorta huijaria, josta
kerran rupesit Edgarillekin puhumaan.

— Vaikkei sinun herra sulhasesi suvainnut olla huvitettu hänestä,


ei edes vaikka kerroin peukalonjäljestä, jonka olemme onnistuneet
saamaan.

— Mitäs Edgar sellaisista! — Anselma pyöräytti isää kerran ympäri


kuin pyöräyttääkseen ajatuksetkin hyvälle tolalle.

— Niillä on viehätyksensä, suurikin viehätyksensä, vaikket sinä


sitä ymmärrä. Mutta Edgar on mies ja hänen pitäisi ymmärtää. —
Minusta on varsin kunnioitettavaa, että hän, vaikkei itse ole varakas,
koettaa pyrkiä eteenpäin, vaurastua ja oppia. Mutta tarvitaan
muutakin kuin hyviä aikeita. Jos näkisin, että hän pystyisi
ajattelemaan vähän muutakin kuin sinua ja rakkauttaan, voisin ehkä
auttaa häntä eteenpäin omalla alallani.

Anselmalle oli tullut kyyneleet silmiin. Hän ei ymmärtänyt, miksi isä


oli niin kovin vaativa Edgarin suhteen. Se oli varmaan syynä
siihenkin, että Edgar viime aikoina oli ollut niin vakava, miltei
alakuloinen. Käymäänkään ei hän ollut tullut moneen päivään, eikä
ollut luvannutkaan tulla ennenkuin kihlajaispäivänä. Vai oli ollut
vakava, erityisen vakava! Prefekti tuli oikein iloiseksi. Saattoi olla
hyväkin merkki.

Isän katse kiintyi perhosenmuotoiseen nauhakoristeeseen


Anselman niskassa, solui siitä paljaalle kaulalle, jota korallinauha
ympäröi, ja pyyhkäisi sitte kuin hyväillen tytön nuorekasta vartta.

Tuollainen umpustaan vasta puhjennut kukka oli kai sen arvoinen,


että sai vähän arvella, ennenkuin sen vieraan käteen uskoi. Se
merkitsi jo paljon, ettei isä ollut ajatellut rahallista puolta, vaan oli
valmis antamaan nuorelle ja varattomalle, josta appi-isänä ehkä sitte
itse saisi huolehtia.

— Isä, sinä et vastaa? Miksi sinä et ole yhtä hyvä Edgarille kuin
minulle? Minkä tähden sinä aina vaadit häntä olemaan muuta kuin
hän on? — Anselma puhui, itkun alkua äänessä ja puoleksi
hyväillen, puoleksi rankaisemalla takoen isän olkapäätä.

— Hyvä lapsi, enhän minä tiedä minkälainen hän on. — Se


purkautui kuin hätähuuto. Ja pitkittyvää keskustelua välttääkseen
vetäytyi isä omaan huoneeseensa, jossa hän rupesi astumaan edes
takaisin, mittaillen lattiata hitain ja pitkin askelin.

Tulos ajatusten selvittelystä oli, että prefekti Hilmer iltapuolella


ajoi tulevan vävypoikansa asuntoon saadakseen rauhassa, vapaana
Anselman nuoren miehen mieltä häiritsevästä läsnäolosta puhella
Edgar
Hiefin kanssa.

Mutta Edgar ei ollutkaan kotona. Tämä tuntui sitä ikävämmältä,


kun asianomainen aina oli sattunut olemaan poissa silloin, kun
tuleva appi-isä oli häntä tiedustellut.

Missä mahtoi mies oikeastaan olla? Eihän hänellä ollut mitään


määrättyä työtä. Ei hän myöskään vielä ollut päässyt säännöllisen
opiskelun alkuun, vaikka oli tullut tänne tietojaan kartuttamaan.
Rakkaus ja Anselma olivat panneet kaikki hänen aikeensa nurin.

Sitä ihmeellisempää oli, että hän verrattain harvoin saapui kotiin


tapaamaan Anselmaa, huolimatta siitä että appi-vanhemmat
kumpikin kohta salakihlauksen jälkeen olivat kehoittaneet häntä
pitämään Anselman kotia kuin omanaan. Sitenhän he kaikki
paremmin pääsisivät tutustumaan toisiinsa.

Mutta Edgar Hief oli harvanlaisesti saapunut appivanhempiensa


kotiin.
"Siksi että hän oli niin ujo", selitti Anselma.

Prefekti Hilmeriä rupesi harmittamaan. Miksikähän kaikki tällaiset


pikkuasiat nyt tuntuivat niin kiusallisilta? Eihän kihlaus ollut samaa
kuin naimisiinmeno. Ja joka tapauksessa: mihin oli suostuttu, siihen
oli suostuttu.
Turhan tähden hän kai nyt, niinkuin aikaisemminkin, itseään
kiusasi. Häntä oli yhteen aikaan vaivannut sekin ajatus, että suuri
vähälahjaisuus mahdollisesti oli syynä Edgar Hiefin ujouteen.
Päästäkseen selville tästä oli hän kerran ehdottanut, että he yhdessä
pelaisivat shakkia. Ja miten kävikään? Ujona ja arkana, katse
enimmäkseen alas luotuna istui Edgar Hief paikoillaan ja pelasi,
pelasi kerta toisensa jälkeen appi-isänsä häviöön.

Sinä iltana olivat kaikki juhlatuulella, hävinnyt enimmin kaikista.

Yhtä turhia olivat kai muutkin huolet vävypojan suhteen. Ne


kirjeetkin, jotka Edgar oli saanut äidiltään ja joita oli tullut
näyttäneeksi apelleen, olivat itse asiassa olleet mitä parhain suositus
hänelle itselleen.

Kaikkea tätä muistutteli prefekti Hilmer itselleen odotellessaan


tulossa olevia kihlajaisia. Hän tuli vähitellen tyynelle ja hyvälle
mielelle, laski leikkiä Anselman kanssa, oli huvitettu naisten monista
ja tuiki tärkeistä hommista sekä valmisteli hiljaisuudessa kaunista
kihlajaispuhetta.

Mutta kun hän juhlapäivän edellisenä iltana kolmannen kerran


turhaan etsi Edgar Hiefiä tämän asunnosta, joutui hän uudelleen
pois tasapainosta.

Yöllä näki hän pahaa unta. Hän oli matkalla virastoonsa. Silloin
juoksee yhtäkkiä Seller läähättäen häntä vastaan. — Herra prefekti,
ettekö näe, tuolla hän juoksee. Meidän täytyy saada hänet
käsiimme. — Hän ymmärsi kohta, kenestä Seller puhui. Ja hänkin
tunsi, että nyt sen täytyy tapahtua, maksoi mitä maksoi. Sentähden
hän, ohjaksista huolehtiva prefekti Hilmer, unohti ylhäisen johtaja-
asemansa ja läksi juoksemaan kuin toisten käskemä juoksupoika.
Hän juoksi kuin henkensä edestä. Ja viimein sai hän
kadunkulmauksessa takaa-ajamansa huijarin kiinni. Mutta samassa
muutti mies muotoaan. Huijaria ei näkynyt missään. Edgar Hief vain
seisoi katse alas luotuna appi-isänsä edessä.

Prefekti Hilmer heräsi tuskanhiki otsallaan. Vasten tapojaan oli hän


pitkin aamua hermostunut ja ärtyisä kaikille, yksin Anselmallekin.
Vasta sulhasen tultua hän rauhoittui.

Jos Anselmalla aikaisemmin oli ollut syytä puhua Edgarin


vakavuudesta, ei siitä nyt ainakaan näkynyt jälkiäkään. Hän oli kuin
onnestaan humaltunut. Hän nauroi, laski leikkiä ja näkyi kokonaan
unohtaneen entisen ujoutensa.

Nuorten ilo tempasi isänkin mukaansa. Hän ei voinut kylmänä


katsella ainokaisensa onnesta säteileviä kasvoja. Puheen, jota hän
oli ajatellut, esitti hän lämmöllä ja lennokkaasti.

Oltiin juuri huutamassa innostunutta "eläköötä" nuorten onnelle,


kun prefekti äkkiä tunsi omituista, pahoinvointia. Viime päivien
jännitys ja sitä seurannut iloinen mielenliikutus oli kai hieman
rasittanut.

Kenenkään huomaamatta vetäytyi prefekti huoneeseensa. Täällä


painui hän mukavaan englantilaismalliseen lepotuoliinsa, jääden
siihen pitkäksi aikaa. Hän havahtui vasta kun ovi avautui.

— Seller! — Hän kavahti pystyyn ja tunsi kalpenevansa.

— Luvallanne ja käskystänne, herra prefekti, tulen "minä hetkenä


hyvänsä". Kerrottavani ovat yhtä hauskoja kuin hämmästyttäviä.

— Mi-tä te oike-astaan —?
— Te ette voi hyvin, herra prefekti. Te olette aivan kalpea ja
kätenne vapisee.

— Ei, ei! Kertokaa vaan!

— Jos käskette, teen sen pian. — Eilen vihdoinkin pääsin selville


kaikesta. Seurasin miestä kunnes hän tuli asuntoonsa, toimitin sitte
uskotut vartijat yöksi asunnon ympärille ja käskin aamulla
seuraamaan häntä minne ikinä hän lähtisi. Kuvitelkaa itse
mielessänne hämmästystäni, kun minulle tuodaan sana, että otus on
varmassa satimessa — täällä teidän talossanne!

Seller kavahtaa äkkiä pystyyn. Hän kuulee omituista korahtavaa


ääntä ja näkee esimiehensä kalveten painuvan tuolin selustaa
vasten.

Saatuaan prefektin makaavaan asentoon rupeaa Seller


hautomaan hänen ohimoitaan veteen kastetulla nenäliinallaan.

Salista kuuluu naurua ja iloisia huudahduksia, sitte raikkaat


"eläköön
Anselma Hilmer", "eläköön Edgar Hief".

Kun prefekti Hilmer hitaasti avaa silmänsä, kumartuu Seller hänen


puoleensa. — Herra prefekti, minä lähden nyt. Virkamieskin on
ihminen.

— Ei, ei! — Prefekti kohottautuu istualleen. — Oikeus olkoon


oikeutta, koski se ketä tahansa! Mutta tapa? — Seller, meidän täytyy
ajatella tytärtäni. — Onko se valokuva matkassanne.

Seller kaivaa povitaskujaan ja löytää valokuvan. Kuva kädessään


menee prefekti Hilmer salin ovelle ja asettuu siihen vuoroin katsoen
kuvaan, vuoroin Edgar Hiefiin, joka, käsi Anselman vyötäisillä,
laskee leikkiä ympärillä seisovien kanssa.

Vihdoin saa appi-isä Edgar Hiefin katseen kohoamaan. Hän näkee


valokuvan ja huomaa prefektin vertailevan. Hän ymmärtää kaikki.

*****

Prefekti Hilmer vanhenee nopeasti tämän jälkeen. Häntä ei


vanhenna ainoastaan suru, vaan sekin, ettei hän enää voi pitää eri
toimialojaan erillään toisistaan. Virastossaan ei hän ole yksin
virkailija. Hän on puoliso ja isä. Hän on ihminen.

Ne kirjavat, ajatusjännitystä kysyvät asiat, joista hän ennen nautti,


kuluttavat häntä nyt. Hän ei voi unohtaa, että asianomainen aina on
jonkun äidin poika, jonkun sisar tai veli, ehkäpä ainoalle tyttärelle
puolisoksi aiottu vävypoika.

Hän kärsii kaikkien kanssa ja se vanhentaa, se kuluttaa…

Yksi lukemattomien joukosta.

Pakkanen kiihtyi yön kuluessa kiihtymistään, ja aamupuolella


rupesi pohjoinen huokumaan kylmyyttään sisään jokaisesta
hatarasta huoneen nurkasta.

Ilma oli jäädyttävän kylmää. Saima heräsi vilunväristykseen.

Mitähän kello mahtoi olla? — Varovaisesti raapaisi hän tulta


tikkuun pannen käden suojaksi liekin eteen, jottei se paistaisi
nukkuvan äidin silmiin.

Vasta puoli seitsemän!! Hän sammutti tulen ja kääräisi peitteen


paremmin ympärilleen. Paras oli pysytellä vuoteessa. Öljyä täytyi
säästää ja äitikin nukkui vielä. Eihän nyt sitäpaitsi työkään pakottanut
nousemaan.

Saima huokasi syvään. Ilma huoneessa tuntui raskaalta. Olisi


tehnyt mieli paiskata ovi selkosen selälleen, saada raitista ilmaa
huoneen täydeltä ja sitte pistää kaunis, lämmittävä koivuvalkea
uuniin. Mutta milläpä sitä tällaisina ahtaina aikoina! Kymmeneen
kertaan täytyi penniä sormissaan pyöritellä, ennenkuin uskalsi
päättää mihin kohtaan se milloinkin oli pantava.

Oli sekin nurjaa, kun raitis ilmakin joutui siihen luokkaan, josta ei
vähävaraisille liiennyt. Mitäpä ylellisyystavaroista, jos jäivätkin
pienen etuoikeutetun luokan osaksi! Mutta kun raitis ilma,
tarpeellinen lämpö ja ravinto, — niin suorastaan kaikki
välttämättömät elintarpeet olivat kalliilla rahalla hankittavat,
rahanhankinta-tilaisuudet olivat miltei saavuttamattomissa, sehän se
oli katkeraa.

Kuului siltä kuin äiti olisi liikahtanut. Eikö hän siis nukkunutkaan?
Valvoi ehkä ja ajatteli samaa kuin Saimakin?

— Äiti!

— Joko sinä taas valvot, lapsi kulta?

— Entä sinä, äiti? Sinun tarvitsisi paremminkin nukkua kuin minun.


— Viluttaako sinua? — Saima on jo vuoteen vieressä. Hän on
vetäissyt vähän vaatteita päälleen ja levittää nyt oman peitteensä
äidille suojaksi. — Kas noin, sinä minun rakas kääröni! Makaa nyt
hiljaa siksi kun saan puita uuniin ja huone vähän ehtii lämmetä!

— Aina sinä jaksat! — Äiti hymyili surunvoittoisesti.

— Jaksat! — Saima tulee keittiöstä sylissään kantamus


kuusihalkoja, joita hän rupeaa latomaan uuniin. — Jos olisi ihmisellä
työtä yöt päivät, silloin voisi puhua jaksamisesta, mutta kun ei saa
tehdä mitään, ei kerrassaan mitään!

— Työttömyys on usein raskaampi taakka kuin työ.

— Niin totisesti! — Saima nielaisee vastauksensa


kuulumattomaksi. Sitte rupeaa hän innokkaasti selittämään, että
ehkäpä tästä pian annetaan työtä yllin kyllin. Hän aikoo tänään
lähteä kaupunkiin saamaan lopullista vastausta siitä konttoripaikasta,
josta jo monta kertaa on ollut puhetta. Eiköpä se lopultakin tule
hänen osakseen? Ovat niin kauan odotuksellakin kiusanneet, että
eivätköhän nyt sitä antane.

Äiti ei vastaa. Pitkä ja kiduttava odotus ei aina tiedä hyvää


lopputulosta. Sellainen on ainakin hänen kokemuksensa ollut. Mutta
mitäpä hän sitä ilmoittelemaan! Tulee se tieto aikanaan, jos kerran
tullakseen on.

Hän huokasee raskaasti. — Mitähän varten vanhojen ja


raihnaistenkin täytyi elää? Heidän päivätyönsä oli jo päättynyt. Pois
olisivat joutaneet! Helpompaa olisi silloin elämä nuorille. Vanha
vaalittava oli nuoren elämässä kuin liika lasti laivassa.

— Kas vaan, johan sinä olet pukeissa, ihasteli Saima keittiön


ovelta. — Minullakin on jo aamiainen pöydässä. Syödään sitte, niin
pääsen lähtemään.

Entistä horjahtavampaa oli äidin astunta hänen tullessaan


ruokapöytään. Saima huomasi sen ja nieli itkua. Mistäpä äidille
muuten olisikaan karttunut voimia. Laihaa ja voimatonta oli ruoka. Ja
maitokin minkälaista! Sinistä, ihan harmaan sinistä, eikä toivoa
paremmasta, ennenkuin sitte jos — —

— Juo, juo, äiti kulta! Harmaansininen on hieno väri, eikö olekin?

Hän oli jo saavuttanut jonkinmoisen taituruuden leikinlaskussa,


silloin kun sydän oli kipeimmillään.

— Kermaista saan sitte, kun sinä saat sen paikan, pisti äiti iloisesti
jatkoksi.

Niin, kermaista sitte! Sen konttoripaikan tuloillahan he jo kauan


olivat ruokaansa höystäneet. Ja niillä he olivat lämmitelleet kylmästä
kangistuvia jäseniään. Mutta jos toivo pettäisi?

Saima painoi käden povelleen kuin estääkseen sen liian rajua


tykytystä.

— Anteeksi, äiti, nyt minä nousen! — Hän työnsi hätäisesti tuolin


syrjään, haki päällysvaatteensa ja pukeutui. Sitte otti hän pöydältä
valmiiksi kokoonkäärityt puhtaaksikirjoituksensa. Puoleksi avatun
laatikon kohdalle pysähtyi hän hetkeksi epäröiden.

— Minun täytyy… siltä varalta, että…

Hän kaivaa esille huolellisesti piiloon peitetyn paketin, evästää


äitiä monilla varoituksilla ja sydämellisillä kehoituksilla lepäämiseen;
sitte painuu ovi kiinni hänen jälkeensä.
Kohta portilla puskee pohjoinen vihaisesti vastaan, mutta hän ei
huomaa sitä. Hän ajattelee yhtä ainoata asiaa: tuota kauan toivottua,
pian ehkä saatavissa olevaa paikkaa.

Kuinka pohjattoman rikas hän silloin onkaan, jos saa 75 markkaa


kuussa! Seitsemänkymmentäviisi markkaa sen vähäisen lisäksi, mitä
heillä nyt on ja jolla on täytynyt elää!

Vähän hän tosin on ansainnut puhtaaksikirjoituksella, joka silloin


pakostakin jäisi pois. Mutta mitäpä se merkitsi? Kolmekymmentä
penniä arkilta silloin tällöin, — satunnaista tuloa, johon ei voinut
luottaa. Olipahan vain ollut sen verran, että sen avulla joskus oli
saanut pahimman puutteen torjutuksi. Mutta 75 markkaa kuussa
tiettyä tuloa!

Hän rupeaa taas niinkuin usein ennenkin sijoittelemaan


rikkauksiaan.

Kaikkein ensimäiseksi tilaa hän maitoa meijeristä, hyvää,


kermaista maitoa. Sitä juottaa hän äidille jok'ikinen aamu, keitettynä
silloin kun on kylmä. Jos äiti vastustaa, nauraa hän vain ja sanoo:
juo, juo, minä maksan, minulla on varaa.

Hän ihan jo tuntee, miten hyvää tuo lämmin maito tekee äidin
laihassa, lämpöä puuttuvassa ruumiissa.

Sitte hän myöskin ostaa sylen koivuhalkoja, kauniita,


valkeakylkisiä ja kuivia puita, parasta lajia. Niitä poltellaan aina
pahimpina pakkaspäivinä.

Ja entä sitte ne kengät, ne, joita hän on katsellut viime talvesta


asti, ne, joilla on päälliset huovasta ja sisäpuolella lammasnahkaa!
Ne maksavat kokonaista kymmenen markkaa. Kymmenen pois
seitsemästäkymmenestäviidestä? — Siitä tulee tuntuva lovi! Mutta
sittekin hän ostaa ne äidille. Ja he saavat kerrankin viettää
huoletonta ja onnellista joulua yhdessä, äiti ja hän.

Tokkohan äidillä oikeastaan koskaan ennen on ollut oikein iloista


joulua? Äidillä on ollut niin paljon ja raskasta kannettavaa
elämässään. Ja tuollaisina suurina juhlina johtuu se aina erityisesti
mieleen.

Ensimäinen suuri suru oli tullut Saiman ollessa koulu-ijässä.


Hänelle ei silloin oikein kerrottukaan asiasta, mutta hän tiesi, että
vanhin veli oli syynä suruun. Asia oli hyvin, hyvin ikävä. Kun isä
sytytti kuusenkynttilöitä, purskahti äiti yhtäkkiä haikeaan itkuun, ja isä
kääntyi pois päin eikä sanonut sanaakaan. — Saima sitä vastoin
juoksi suoraa päätä äidin luo kiihkeästi tiedustellen syytä äidin
suruun. Mutta vastausta ei annettu. Äiti vain painoi häntä rintaansa
vastaan ja hän kuuli äidin sanovan hiljaa kuin itsekseen: kunpa vielä
olisin pieni, elämäntuskaa tuntematon lapsi.

Veljistä oli sitte tullut paljonkin surua. Nyt oli heistä kaksi kuollut,
kolmas oli Amerikassa, teillä tietymättömillä.

Isän kuoltua oli vanhin sisar, jolla oli hyvätuloinen paikka, ollut
perheen tukena, mutta kolme vuotta takaperin oli hän äkkiä kuollut
sydänhalvaukseen, ja siitä asti oli Saima ollut sairastavan äidin
ainoana apuna.

Se paikka, se paikka, kunhan hän saisi sen! Silloin voisi hän


paremmin kuin tähän asti pitää huolta äidistä.
Saima oli jo kaupungin portilla. Hän joudutti askeleitaan.
Pyyhkäistessään kenkäkaupan ikkunan ohi pysähtyi hän hetkeksi
ihailemaan äidille himoittua lahjaa. — Ihan varmaan ostaa hän sen!
Hän vaikka syö itse vähemmin sinä kuukautena ja säästää siten ne
rahat. Kyllä hän jaksaa. Hän on nuori. Mutta äiti on vanha ja vanhoja
täytyy saada pitää hyvänä.

Pitkin harppauksin Saima nousee kiviportaita Latva & Kuuselan


liikkeen toimistoon. Päättävästi painaa hän ovikelloa. "Nyt, nyt",
takoo sydän.

Liikkeen johtaja käännähtää hämmästyneen näköisenä ja hiukan


hermostuneesti tuolillaan Saiman avatessa ovea.

— Aa, neiti Särkkä! Teillä on asiaa?

— Niin, minä tulin… Se paikka…

— Paikka? — Jaa, tosiaankin! Minä olin jo aivan unohtanut sen. —


Hän pyyhkäisee partaansa. — Se asia ratkaistiin jo pari viikkoa
takaperin. Me teimme hiukan muutoksia konttoripuolella, joten emme
nyt tarvitsekaan lisäväkeä.

Ei lisää, ei tarpeen, ei mahdollisuutta ansaita! Siniseksi kuorittua


maitoa, jäädyttävän kylmää huoneessa, äidille ei lämpimiä kenkiä, ei
iloista joulua!

Tietääköhän hän, joka tuon tuomion julisti, mitä kaikkea siihen


sisältyy.

Saiman päätä huimaa. Sitte rupeaa niin kummasti puuduttamaan.


Hän on kadulla ja kulkee eteenpäin ihmisvilinässä. Hän ymmärtää,
ettei hänen kokemuksensa ole kovinkaan erikoista tai harvinaista
laatua. Hän on vain yksi niistä lukemattomista, joille taistelu
olemassaolosta on ylivoimaista ja toivotonta, yksi niistä, joiden
askeleet epätoivo on tehnyt väsyneiksi, laahustaviksi, ja joiden selkä
toivottomuuden koukistamana ennen aikojaan on kumaraan
painunut.

Kannattiko tällaista suurta, yleistä hätää edes väistääkään?

Hän kulkee katua pitkin umpimähkään, eteensä katsomatta. Silloin


muistaa hän yhtäkkiä puhtaaksikirjoituksensa.

Olisivat nekin vielä jääneet viemättä, silloin hän ei olisi saanut


niitäkään rahoja eikä ehkä työtäkään vastaisuudessa. Ja sitte se
asia! Nythän se oli pakostakin toimitettava!

Palvelija avaa kumartaen Saimalle oven kauppaneuvoksen


huoneeseen. Se on suuri ja valoisa. Saima on nähnyt sen monesti,
mutta nyt karkaa hänen katseensa nälkäisenä kuin tulenliekki
paikasta toiseen. Kaikki, mikä ennen oli jäänyt huomaamatta, pistää
nyt hänen silmiinsä vastustamattomalla voimalla ja terävästi kuin
äkillinen valonheijastus pimeässä: lattiata ylt'yleensä peittävä
pehmeä matto, nahalla päällystetty tuoli, jonka selusta mukavasti
lasketaan alaspäin noja-asentoon, ja pehmeyttään hyllähtelevä
sohva koruompeluksineen.

Täällä oli kaikkea sitä, josta hivenkin voisi tehdä hyvää äidin
vanhalle, väsyneelle ruumiille, mutta jota työttömän on mahdoton
hankkia.

— Sepä mainiota, että vihdoinkin tulitte. Ennätin jo ruveta


kaipaamaan papereitani.
— Tulin viipyneeksi. — Saima huomaa oman äänensä kolean
soinnuttomuuden.

— Tjaa, tjaa, sattuuhan odottamattomia esteitä. Te näytättekin


väsyneeltä. Hyvä, että joululupa on tulossa. Kaiketi te aijotte levätä?

— Kaiketi.

— Minä en ainakaan aijo rasittaa teitä työllä, en pitkiin aikoihin. —


Mutta nythän minun pitää maksaa. Tietäisitte neiti, miten
lukemattomat isot ja pienet karhut ahdistavat meikäläistä miestä,
etenkin näin juhlien alla. — Mitenkä se nyt olikaan? Viisi arkkia,
vähän päälle. Mutta sehän annetaan kaupantekijäisiksi näin joulun
kynnyksellä — eikö niin? Viisi arkkia ä 30 penniä, siis 1:50, olkaa
hyvä, neiti. Ja hauskaa joulua!

Kauppaneuvos pudisti kättä, tyytyväisenä omaan suureen


ystävällisyyteensä.

Ovella muistaa Saima pakettinsa. Hän kääntyy takaisin.

— Herra kauppaneuvos, minulla olisi pyyntö teille. — Sanat


syntyvät vaivalla. — Pyyntö, jota en esittäisi, ellei hätä minua
pakottaisi siihen.

Kauppaneuvoksen kasvot synkistyvät. Saima ymmärtää, että hän


pelkää avunpyyntöä.

— Minun täytyy ansaita, ja ansio on nykyään kovin tiukalla.

— Sen tietää valitettavasti jokainen. — Kauppaneuvos epäröi yhä


mille kannalle asettua. Tämä kuulostaa avunpyynnöltä, eikä hän nyt
mitenkään… Mutta jos koskisikin muuta, olisi turha ilmaista, ettei…

You might also like