100% found this document useful (2 votes)
23 views

Download ebooks file (Ebook) Azure DevOps for Web Developers: Streamlined Application Development Using Azure DevOps Features by Ambily K K ISBN 9781484264119, 9781484264126, 1484264118, 1484264126 all chapters

The document provides information about various eBooks available for download on ebooknice.com, focusing on topics related to Azure DevOps and application development. It includes details about specific titles, authors, and ISBN numbers, along with links to access the eBooks. Additionally, the document outlines the structure and content of the book 'Azure DevOps for Web Developers' by Ambily K K, which covers DevOps practices, project management, version control, and test management using Azure DevOps.

Uploaded by

gaydalilescg
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (2 votes)
23 views

Download ebooks file (Ebook) Azure DevOps for Web Developers: Streamlined Application Development Using Azure DevOps Features by Ambily K K ISBN 9781484264119, 9781484264126, 1484264118, 1484264126 all chapters

The document provides information about various eBooks available for download on ebooknice.com, focusing on topics related to Azure DevOps and application development. It includes details about specific titles, authors, and ISBN numbers, along with links to access the eBooks. Additionally, the document outlines the structure and content of the book 'Azure DevOps for Web Developers' by Ambily K K, which covers DevOps practices, project management, version control, and test management using Azure DevOps.

Uploaded by

gaydalilescg
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 65

Download the Full Ebook and Access More Features - ebooknice.

com

(Ebook) Azure DevOps for Web Developers:


Streamlined Application Development Using Azure
DevOps Features by Ambily K K ISBN 9781484264119,
9781484264126, 1484264118, 1484264126
https://ebooknice.com/product/azure-devops-for-web-
developers-streamlined-application-development-using-azure-
devops-features-22417610

OR CLICK HERE

DOWLOAD EBOOK

Download more ebook instantly today at https://ebooknice.com


Instant digital products (PDF, ePub, MOBI) ready for you
Download now and discover formats that fit your needs...

Start reading on any device today!

(Ebook) Biota Grow 2C gather 2C cook by Loucas, Jason; Viles, James ISBN
9781459699816, 9781743365571, 9781925268492, 1459699815, 1743365578, 1925268497

https://ebooknice.com/product/biota-grow-2c-gather-2c-cook-6661374

ebooknice.com

(Ebook) DevOps for Azure Applications: Deploy Web Applications on Azure by Suren
Machiraju, Suraj Gaurav ISBN 9781484236420, 9781484236437, 1484236424, 1484236432

https://ebooknice.com/product/devops-for-azure-applications-deploy-web-
applications-on-azure-7146742

ebooknice.com

(Ebook) .NET DevOps for Azure: A Developer's Guide to DevOps Architecture the Right
Way by Jeffrey Palermo ISBN 9781484253434, 1484253434

https://ebooknice.com/product/net-devops-for-azure-a-developer-s-guide-to-
devops-architecture-the-right-way-50195174

ebooknice.com

(Ebook) Implementing Devops with Microsoft Azure by Mitesh Soni ISBN 9781787127029,
1787127028

https://ebooknice.com/product/implementing-devops-with-microsoft-azure-7164892

ebooknice.com
(Ebook) Hands-on Azure Pipelines: Understanding Continuous Integration and
Deployment in Azure DevOps by Chaminda Chandrasekara, Pushpa Herath ISBN
9781484259016, 1484259017

https://ebooknice.com/product/hands-on-azure-pipelines-understanding-continuous-
integration-and-deployment-in-azure-devops-11295326

ebooknice.com

(Ebook) Matematik 5000+ Kurs 2c Lärobok by Lena Alfredsson, Hans Heikne, Sanna
Bodemyr ISBN 9789127456600, 9127456609

https://ebooknice.com/product/matematik-5000-kurs-2c-larobok-23848312

ebooknice.com

(Ebook) Hands-on Azure Repos: Understanding Centralized and Distributed Version


Control in Azure DevOps Services by Chaminda Chandrasekara, Pushpa Herath ISBN
9781484254257, 1484254252

https://ebooknice.com/product/hands-on-azure-repos-understanding-centralized-
and-distributed-version-control-in-azure-devops-services-50195564

ebooknice.com

(Ebook) Hands-on Azure Repos: Understanding Centralized and Distributed Version


Control in Azure DevOps Services by Chaminda Chandrasekara, Pushpa Herath ISBN
9781484254240, 1484254244

https://ebooknice.com/product/hands-on-azure-repos-understanding-centralized-
and-distributed-version-control-in-azure-devops-services-53001822

ebooknice.com

(Ebook) SAT II Success MATH 1C and 2C 2002 (Peterson's SAT II Success) by Peterson's
ISBN 9780768906677, 0768906679

https://ebooknice.com/product/sat-ii-success-math-1c-and-2c-2002-peterson-s-sat-
ii-success-1722018

ebooknice.com
Azure DevOps
for Web
Developers
Streamlined Application Development
Using Azure DevOps Features

Ambily K K
Azure DevOps for
Web Developers
Streamlined Application Development
Using Azure DevOps Features

Ambily K K
Azure DevOps for Web Developers: Streamlined Application Development Using
Azure DevOps Features
Ambily K K
Hyderabad, India

ISBN-13 (pbk): 978-1-4842-6411-9 ISBN-13 (electronic): 978-1-4842-6412-6


https://doi.org/10.1007/978-1-4842-6412-6

Copyright © 2020 by Ambily K K


This work is subject to copyright. All rights are reserved by the Publisher, whether the whole or part of the
material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation,
broadcasting, reproduction on microfilms or in any other physical way, and transmission or information
storage and retrieval, electronic adaptation, computer software, or by similar or dissimilar methodology now
known or hereafter developed.
Trademarked names, logos, and images may appear in this book. Rather than use a trademark symbol with
every occurrence of a trademarked name, logo, or image we use the names, logos, and images only in an
editorial fashion and to the benefit of the trademark owner, with no intention of infringement of the
trademark.
The use in this publication of trade names, trademarks, service marks, and similar terms, even if they are not
identified as such, is not to be taken as an expression of opinion as to whether or not they are subject to
proprietary rights.
While the advice and information in this book are believed to be true and accurate at the date of publication,
neither the authors nor the editors nor the publisher can accept any legal responsibility for any errors or
omissions that may be made. The publisher makes no warranty, express or implied, with respect to the
material contained herein.
Managing Director, Apress Media LLC: Welmoed Spahr
Acquisitions Editor: Smriti Srivastava
Development Editor: Matthew Moodie
Coordinating Editor: Shrikant Vishwakarma
Cover designed by eStudioCalamar
Cover image designed by Pexels
Distributed to the book trade worldwide by Springer Science+Business Media LLC, 1 New York Plaza, Suite
4600, New York, NY 10004. Phone 1-800-SPRINGER, fax (201) 348-4505, e-mail orders-ny@springer-sbm.
com, or visit www.springeronline.com. Apress Media, LLC is a California LLC and the sole member (owner)
is Springer Science + Business Media Finance Inc (SSBM Finance Inc). SSBM Finance Inc is a Delaware
corporation.
For information on translations, please e-mail [email protected]; for reprint,
paperback, or audio rights, please e-mail [email protected].
Apress titles may be purchased in bulk for academic, corporate, or promotional use. eBook versions and
licenses are also available for most titles. For more information, reference our Print and eBook Bulk Sales
web page at www.apress.com/bulk-sales.
Any source code or other supplementary material referenced by the author in this book is available to
readers on GitHub via the book’s product page, located at www.apress.com/978-1-4842-6411-9. For more
detailed information, please visit www.apress.com/source-code.
Printed on acid-free paper
To Pranav & Pavitra,
my little mentors
Table of Contents
About the Author����������������������������������������������������������������������������������������������������� xi

About the Technical Reviewer������������������������������������������������������������������������������� xiii


Acknowledgments���������������������������������������������������������������������������������������������������xv

Introduction�����������������������������������������������������������������������������������������������������������xvii

Chapter 1: DevOps Basics and Variations����������������������������������������������������������������� 1


Software Development������������������������������������������������������������������������������������������������������������������ 1
DevOps������������������������������������������������������������������������������������������������������������������������������������������ 2
DevOps Team��������������������������������������������������������������������������������������������������������������������������� 3
DevOps Practices��������������������������������������������������������������������������������������������������������������������� 4
DevOps Variations�������������������������������������������������������������������������������������������������������������������� 4
Benefits����������������������������������������������������������������������������������������������������������������������������������� 9
Azure DevOps������������������������������������������������������������������������������������������������������������������������������ 10
Summary������������������������������������������������������������������������������������������������������������������������������������ 11

Chapter 2: Project Management Using Azure DevOps�������������������������������������������� 13


Organizations������������������������������������������������������������������������������������������������������������������������������ 14
Creating an Organization������������������������������������������������������������������������������������������������������� 15
Organization Settings������������������������������������������������������������������������������������������������������������ 15
Projects��������������������������������������������������������������������������������������������������������������������������������������� 29
Creating a Project������������������������������������������������������������������������������������������������������������������ 29
Project Settings��������������������������������������������������������������������������������������������������������������������� 32
Process Template Customization������������������������������������������������������������������������������������������������ 59
Starting the Customization���������������������������������������������������������������������������������������������������� 59
Adding a New Work Item������������������������������������������������������������������������������������������������������� 60
Summary������������������������������������������������������������������������������������������������������������������������������������ 63

v
Table of Contents

Chapter 3: Requirements Management Using Azure DevOps��������������������������������� 65


Work Items���������������������������������������������������������������������������������������������������������������������������������� 65
Work items���������������������������������������������������������������������������������������������������������������������������� 66
Filters������������������������������������������������������������������������������������������������������������������������������������ 81
View Options�������������������������������������������������������������������������������������������������������������������������� 82
Options���������������������������������������������������������������������������������������������������������������������������������� 82
Boards����������������������������������������������������������������������������������������������������������������������������������������� 85
Board Selection��������������������������������������������������������������������������������������������������������������������� 86
Analytics�������������������������������������������������������������������������������������������������������������������������������� 87
View Options�������������������������������������������������������������������������������������������������������������������������� 89
Board Settings����������������������������������������������������������������������������������������������������������������������� 89
Cards������������������������������������������������������������������������������������������������������������������������������������� 96
Backlogs������������������������������������������������������������������������������������������������������������������������������������� 99
Column Options������������������������������������������������������������������������������������������������������������������� 101
Options�������������������������������������������������������������������������������������������������������������������������������� 104
Sprints��������������������������������������������������������������������������������������������������������������������������������������� 108
Queries�������������������������������������������������������������������������������������������������������������������������������������� 115
New Query��������������������������������������������������������������������������������������������������������������������������� 117
Work Offline������������������������������������������������������������������������������������������������������������������������� 122
Summary���������������������������������������������������������������������������������������������������������������������������������� 124

Chapter 4: Version Control Using Azure DevOps��������������������������������������������������� 125


Repos���������������������������������������������������������������������������������������������������������������������������������������� 125
Branching and Merging������������������������������������������������������������������������������������������������������� 129
Project Repo������������������������������������������������������������������������������������������������������������������������ 131
Branch and Tags������������������������������������������������������������������������������������������������������������������ 133
Commits������������������������������������������������������������������������������������������������������������������������������������ 135
Pushes�������������������������������������������������������������������������������������������������������������������������������������� 137
Branches����������������������������������������������������������������������������������������������������������������������������������� 138
Tags������������������������������������������������������������������������������������������������������������������������������������������� 140
Pull Requests���������������������������������������������������������������������������������������������������������������������������� 140

vi
Table of Contents

Working with Visual Studio������������������������������������������������������������������������������������������������������� 145


Working with Visual Studio Code���������������������������������������������������������������������������������������������� 151
Working with Git Bash��������������������������������������������������������������������������������������������������������������� 153
Sample Application������������������������������������������������������������������������������������������������������������������� 154
Version Controlling an Angular App������������������������������������������������������������������������������������� 155
Version Controlling the .NET API������������������������������������������������������������������������������������������ 158
Summary���������������������������������������������������������������������������������������������������������������������������������� 158

Chapter 5: Test Management Using Azure DevOps����������������������������������������������� 159


Test Cases��������������������������������������������������������������������������������������������������������������������������������� 160
Shared Steps and Parameters�������������������������������������������������������������������������������������������������� 162
Test Suites�������������������������������������������������������������������������������������������������������������������������������� 164
Test Plans���������������������������������������������������������������������������������������������������������������������������������� 165
Define Tab���������������������������������������������������������������������������������������������������������������������������� 167
Execute Tab������������������������������������������������������������������������������������������������������������������������� 170
Chart������������������������������������������������������������������������������������������������������������������������������������ 180
Progress Report������������������������������������������������������������������������������������������������������������������������ 183
Parameters������������������������������������������������������������������������������������������������������������������������������� 183
Configurations��������������������������������������������������������������������������������������������������������������������������� 184
Runs������������������������������������������������������������������������������������������������������������������������������������������ 184
Load Test����������������������������������������������������������������������������������������������������������������������������������� 185
Summary���������������������������������������������������������������������������������������������������������������������������������� 186

Chapter 6: Build Automation and Release Management�������������������������������������� 187


Build and Release Process�������������������������������������������������������������������������������������������������������� 187
Continuous Integration�������������������������������������������������������������������������������������������������������� 187
Continuous Delivery and Continuous Deployment��������������������������������������������������������������� 189
Pipelines����������������������������������������������������������������������������������������������������������������������������������� 191
Creating a Pipeline�������������������������������������������������������������������������������������������������������������� 191
Classic Editor����������������������������������������������������������������������������������������������������������������������� 197
Environments���������������������������������������������������������������������������������������������������������������������������� 203

vii
Table of Contents

Releases����������������������������������������������������������������������������������������������������������������������������������� 204
Creating a Release Pipeline������������������������������������������������������������������������������������������������� 205
Library��������������������������������������������������������������������������������������������������������������������������������������� 215
Variable Groups������������������������������������������������������������������������������������������������������������������� 215
Secure Files������������������������������������������������������������������������������������������������������������������������� 216
Task Groups������������������������������������������������������������������������������������������������������������������������������ 217
Deployment Groups������������������������������������������������������������������������������������������������������������������� 220
Sample Build and Release Implementation������������������������������������������������������������������������������ 220
Build and Release of an Angular Application����������������������������������������������������������������������� 221
Build and Release of a .NET Application������������������������������������������������������������������������������ 224
Summary���������������������������������������������������������������������������������������������������������������������������������� 226

Chapter 7: Continuous Feedback and Other Features������������������������������������������ 227


Dashboards������������������������������������������������������������������������������������������������������������������������������� 227
Wiki������������������������������������������������������������������������������������������������������������������������������������������� 232
Publishing Code as a Wiki��������������������������������������������������������������������������������������������������� 232
Editing a Wiki����������������������������������������������������������������������������������������������������������������������� 234
Discussions or Comments��������������������������������������������������������������������������������������������������� 238
User Settings����������������������������������������������������������������������������������������������������������������������������� 239
Continuous Feedback���������������������������������������������������������������������������������������������������������������� 240
Azure Application Insights��������������������������������������������������������������������������������������������������� 240
Summary���������������������������������������������������������������������������������������������������������������������������������� 242

Chapter 8: DevOps Architecture Blueprints���������������������������������������������������������� 243


The DevOps Approach for Web Applications����������������������������������������������������������������������������� 243
Microservices���������������������������������������������������������������������������������������������������������������������� 244
The DevOps Approach for Databases���������������������������������������������������������������������������������������� 245
SQL Server database����������������������������������������������������������������������������������������������������������� 245
The DevOps Approach for Machine Learning Models��������������������������������������������������������������� 246
Machine Learning Operationalization���������������������������������������������������������������������������������� 248
Azure DevOps���������������������������������������������������������������������������������������������������������������������� 249

viii
Table of Contents

The DevOps Approach for COTS Applications���������������������������������������������������������������������������� 250


The DevOps Approach for the Support Team���������������������������������������������������������������������������� 251
Intelligent Swarming Support Model����������������������������������������������������������������������������������� 253
Summary���������������������������������������������������������������������������������������������������������������������������������� 255

Index��������������������������������������������������������������������������������������������������������������������� 257

ix
About the Author
For more than a dozen years Ambily has worked on cloud
adoption and accelerating software delivery through DevOps.
As the head of Azure, DevOps, and UI practices at TCS
HiTech Industry, she supports major public- and private-
sector companies across the globe in their cloud journeys
and DevOps implementations. Ambily blogs about her
experiences and speaks at conferences to share what she has
learned. You can find her blog at https://ambilykk.com/.

xi
About the Technical Reviewer
Swapneelkumar Deshpande is a software engineer. He is
a Microsoft Certified Professional and Microsoft Certified
Trainer. Swapneel has been working and leading teams in
various aspects of the software development life cycle for
more than 20 years.

xiii
Acknowledgments
Writing a book is harder than I thought and more rewarding than I could have ever
imagined. I’m grateful to my teachers, and I’ve been lucky enough to have a lot of great
teachers, but one in particular shaped the person I am today: Minu K K. My heartfelt
thanks to him for being an inspiration throughout my life.
I am grateful to my loving husband, Rajeev, for all his support and caring. To my little
children, Pranav and Pavitra: thank you for letting me spend time on writing.
A very special thanks to my mentor, Bala Peddigari, who inspired me to write articles
and books.
Finally, to all those who have been part of my getting there: Smriti Srivastava,
Matthew Moodie, Shrikant Vishwakarma, and Swapneelkumar Deshpande.

xv
Introduction
DevOps is one of the mandatory elements of the entire IT spectrum, which integrates
people, process, and technology with an objective of delivering value faster. At the same
time, DevOps comes in many varieties with varying levels of understanding, which
can be an obstacle for many implementations. In this book, we will explore the various
concepts of DevOps and take you on a DevOps journey using Azure DevOps. We’ll look
at the end-to-end process of DevOps implementation using Azure DevOps.
Specifically, the following are the topics covered:

• Project management including user and permission management

• Requirement management

• Version control management

• Test management

• Build automation and release management

• Test management

• Continuous feedback

Also, we will discuss the current IT landscape and how we can leverage the benefits
of DevOps in various areas such as support projects. Every concept will be covered from
different perspectives, including a novice view, a DevOps developer view, a DevOps
architect view, and a business view.
This book is intended for novices in DevOps who want to learn the concepts of
DevOps across a modern application spectrum. Also, it provides enough information for
DevOps engineers to fine-tune their skills in various aspects of DevOps.

xvii
CHAPTER 1

DevOps Basics
and Variations
Software development processes and the release requirements can change over time
in order to continue bringing value to customers and gaining market adoption. To
scale up and get some early feedback, many organizations have adopted a frequent
release methodology for new features or defect fixes. These releases are deployed to the
production system as often as once a week, and sometimes they are even once a day,
once an hour, or even every ten seconds. To maintain this edge in the market or gain this
quick feedback cycle, companies are adopting DevOps practices such as continuous
delivery and continuous deployment. In this chapter, you will get an introduction to
DevOps concepts and practices.

S
 oftware Development
The software development industry gradually adopted the agile model after many
years of following the waterfall model. The agile development model provides the
ability to adapt to changing requirements, and it offers better collaboration between
teams and improved productivity. In a waterfall model, application development is
done as a sequential operation, and the application is released at the end of the project.
Sometimes, though, the development process takes a long time to complete, and the
relevance of lot of features envisioned at the start may not be useful anymore. Moreover,
this approach lacks the end-user feedback loop, the expectations of the end user and any
feedback will be received only after the entire development/deployment is complete.
The agile process demands the release of finished features (production-ready) more
frequently to receive early feedback from customers and respond accordingly. Agile
without DevOps takes more cycle time and manual involvement. DevOps addresses the

1
© Ambily K K 2020
A. K K, Azure DevOps for Web Developers, https://doi.org/10.1007/978-1-4842-6412-6_1
Chapter 1 DevOps Basics and Variations

shortfalls in agile development and deployment practices using automated releases,


frequently with automated validations and gates in between. Figure 1-1 shows all three
models.

Figure 1-1. Software development models

D
 evOps
DevOps is one of the hottest topics in the IT field, but it has many different variations. If
ten people started discussing DevOps, they would have ten different explanations for it.
Here is a popular definition of DevOps from https://en.wikipedia.org/wiki/DevOps
shows the process angle of DevOps, in other words, how we can use the single process
across the development and operations teams:
DevOps is a software development methodology that combines software
development (Dev) with information technology operations (Ops).
The following definition from https://searchitoperations.techtarget.com/
definition/DevOps. DevOps is defined from a person’s perspective, specifying how the
team culture changes and enables more collaborative working environments.
DevOps is the blending of the terms development and operations, meant to
represent a collaborative or shared approach to the tasks performed by a
company's application development and IT operations teams.
In the following definition, defines DevOps from a technical perspective, where DevOps
is for automating end-to-end development processes (www.atlassian.com/devops):
DevOps is a set of practices that automates the processes between software
development and IT teams, in order that they can build, test, and release
software faster and more reliably.

2
Chapter 1 DevOps Basics and Variations

Considering the importance of DevOps in the IT industry and the fact that DevOps is
an integral part of software development, let’s discuss these different possibilities of what
it encompasses.
DevOps is a combination of cultural elements, practices, and tools for delivering
value at a higher velocity. DevOps consists of people, process, and technology.
Technology enables the automation of an end-to-end pipeline for delivery. Moreover,
using the proper tools increases a team’s collaboration. The agile process provides agility
in execution, collaboration between teams, management of end-to-end activities, and
an innovative team culture. DevOps culture means people are trained on multiple skills
to improve the breadth of understanding on the overall process, a proper handshake
between the teams, a single team mindset, and multiskilled team members.
As part of DevOps adoption, most companies start with or focus on the technology
and process implementation. Agile is the de facto development methodology for many
companies, and automation is the driving force for DevOps adoption. DevOps Culture
adoption is complex, and it requires that changes in organizational structure and that
people’s mindsets change.

D
 evOps Team
If DevOps is a mixture of development and operations, then what about the test
department and other stakeholders?
All the stakeholders have their own importance and roles in DevOps. The Dev in
DevOps includes the scrum masters, developers, testers, project managers, subject-­
matter experts (SMEs), business analysts, domain experts, security architects, solution
architects, performance engineers, and so on. The roles and responsibilities differ from
project to project based on the size, complexity, and business impact of the solution.
The Ops in DevOps includes the operational members such as the build engineers,
production support, monitoring, and so on.
Remember that the goal of DevOps is to deliver value to the customer, not to reduce
the cost or automate the process; these are the by-products of enabling proper DevOps
practices. Team structure plays a major role in driving the DevOps practice in an
organization. Based on various parameters, we can identify a matching team topology
for our project. Identify whether you are following an anti-type or a correct DevOps team
type by reading the article by Matthew Skelton https://web.devopstopologies.com/.

3
Chapter 1 DevOps Basics and Variations

DevOps Practices
DevOps involves different components to establish an end-to-end DevOps workflow.
These are some of the main practices:

• Requirement management: Establishing an end-to-end tractability,


quick view, validity, and usability priority on the status of each of the
requirements.

• Configuration management: Managing the configuration based on


the target environments, users, company policies, etc.

• Release management: Planning, scheduling and controlling the


releases, approvals, and other policies.

• Continuous integration: Merging the latest updates to remote


repositories and ensuring that the quality builds are passed.

• Continuous deployment: Deploying the code changes to higher


environments after ensuring the quality of the build through
automated quality gates.

• Infrastructure as a code: Provisioning the infrastructure as part of the


code deployment and controlling the configurations in script format.

• Test automation: Automating tests to ensure faster execution and


more coverage.

• Continuous monitoring: Systems to automatically monitor and act


on the result. This can include logging the bugs, doing corrective
actions, or sending notifications.

There are many more areas such as collaboration, knowledge management, identity/
access management, portfolio management, artifacts repositories, performance testing,
security test, backlog management, and so on.

DevOps Variations
DevOps is an integral part of software development. Most projects implement at least
the technical and process parts of DevOps, even though this may not result in the actual
benefits of DevOps. Culture changes really help you to realize the real benefit of DevOps.

4
Chapter 1 DevOps Basics and Variations

But, most of the time, we end up with limiting our DevOps scope to automation and cost
reduction instead of releasing value.
Currently, many variations of DevOps exist based on the implementation. Some of
the main variants are as follows:

• BizDevOps: DevOps with the involvement of the business view


throughout the process. Even though regular DevOps defines the
participation of the business stakeholders in DevOps, this variation
emphasizes the role of the business people in the overall execution.
• DevSecOps/SecDevOps: This integrates security into DevOps. This
is the current trend, and most customers are adopting this model
now. Why security? We have security implemented in our code, so
why do we need security as part of our DevOps implementation? The
following are some scenarios in traditional DevOps where security
threats can occur:

a) In a DevOps implementation using multiple tools, there will


be requirements for integration between the tools through
passwords, secrets, tokens, etc., which can be stored in secure
vaults.

b) If we have enabled the CI/CD pipeline, which performs the code


commits and deploys to production, then how do we ensure the
code getting deployed to production is secure enough? We do
this through automated security verification tests.
c) DevOps talks about shifting left, so why do we need to wait for
a build to explore our security vulnerabilities? Can we have an
IDE integrated with security vulnerability features at the time
of coding? If so, we can use security IntelliSense.

d) How do we secure a cloud subscription? This is called


subscription security.

e) We monitor the security issues in a production environment


and take the necessary actions. Security monitoring for the
applications deployment in the containers adds another
level of security requirement. This is called the hosting
environment/container security.

5
Chapter 1 DevOps Basics and Variations

SecDevOps tries to address the end-to-end security needs of our


DevOps implementation. Based on the solution technology, hosting
environment, and DevOps tools, we can integrate the proper security
tools throughout the DevOps life cycle to implement SecDevOps.

• CloudOps: A variation of DevOps that targets cloud-based systems.


The main difference is the implementation of infrastructure as code
and handling the SaaS and PaaS deployments.

• MLOPs: DevOps is an essential component in machine learning


(ML) model development. There is a slight change in the MLOps
implementations compared to the other cloud-based application
developments. In MLOps, the stages will be to import the data from
various sources; do data processing including data transformation,
data cleaning, etc.; train the model using a sample data set;
deploy the model; and pass the actual data for processing. Also,
it may require retraining of the model as part of the end-to-end
orchestration. MLOps is handled by specific DevOps tools such as
MLFlow and Azure ML Pipeline.

• Intelligent DevOps: This is the future of DevOps and is a collaboration


between DevOps and artificial intelligence. In DevOps, the main
three components are the people, process, and technology. A lot
of data will be generated as part of the DevOps life cycle, but not
consumed properly. Intelligent DevOps use the data collected in
DevOps setup likes the logs, code, test cases, bugs, build reports,
etc to predict or derive more meaningful insights. Deployment
failure prediction, quality risk prediction, identification of new test
scenarios, and defect prediction based on log analytics are some of
the insights we can derive from this DevOps data.

The DevOps process has evolved over time from DevOps 1.0 to intelligent DevOps.

D
 evOps 1.0
In DevOps 1.0, the main focus is to resolve the conflict and increase the collaboration
between various stakeholders such as the development team, QA, and operations, as
shown in Figure 1-2. Bridging the gap in understanding the priority of the other team
played a major role here.
6
Chapter 1 DevOps Basics and Variations

Figure 1-2. DevOps 1.0

In this scenario, mainly the development team focuses on new features to improve the
business, whereas the Ops team looks for stability in the production environment. Figure 1-3
shows some of the conflict or deviations between the dev team and the ops team.

Figure 1-3. Dev team versus the ops team

D
 evOps 2.0
DevOps 2.0 focused on the user-centric deployments, as shown in Figure 1-4. This is
especially true for SaaS or products where the preview features are released to a set of
users who give feedback. Based on the feedback, the team incorporates the changes and
releases a final version to all the users.
7
Chapter 1 DevOps Basics and Variations

Figure 1-4. DevOps 2.0

This kind of DevOps implementation is handled using feature flags. Feature flags are
the implementation of labeling the features and releasing them to selected users only.

S
 ecDevOps
Security has become one of the main focuses in a DevOps implementation because of
the recent remote work culture and cloud adoption. More and more DevOps tools are
moving to a cloud-based subscription model to address the growing demand of cloud
adoption. Another reason for security by design is the adoption of open source libraries
in application development. For example, most modern web UI development is based
on Angular or React, JavaScript frameworks are based on npm packages. Lots of npm
packages are used along with the base package to design the rich UI. Deploying all these
dependent libraries without proper screening will lead to security threats.

I ntelligent DevOps
In intelligent DevOps, the team will look into implementing different intelligent models
to derive proper insights from the data collected throughout the DevOps life cycle. Here,
data will be added as a fourth element to the DevOps ecosystem. Figure 1-5 shows an
example of intelligent DevOps.

8
Chapter 1 DevOps Basics and Variations

Figure 1-5. Intelligent DevOps

The DevOps model has become an essential part of modern application


development and supports the automation of the agile process. A traditional DevOps
model talks about people, process, and technology. But, the entire software/product/
application development process involves a lot of data, specifically related to
requirements fulfillment, team capabilities and sprint execution, build failures and
quality of builds, untested areas, test failure patterns, candidate features for release, A/B
release plans, operations aspects related to load balancers, exceptions, defects, and so
on. Moreover, end customer tickets/feedbacks and monitoring trigger new data related
to expected or broken features, expected defects, or anomalies. New DevOps models
driven by AI focus on various insights from all this data. Intelligent DevOps tries to
provide more proactive information to the stakeholders, at the same time tries to address
some of the defects using self-healing mechanisms. Collaboration tools integrated with
chatbots will add faster actions based on insights.

Benefits
The benefits of DevOps include building and shipping software changes faster to the
market, from idea to release and through automation, orchestration of software delivery
processes, and continuous customer feedback. DevOps continuously delivers value
to end customers with lots of added benefits in terms of fewer test cycles, increased

9
Chapter 1 DevOps Basics and Variations

ticket resolutions, reduced end-to-end effort, and so on. The transition from traditional
DevOps to intelligent DevOps will bring exponential value to end users and businesses
by combining the power of DevOps and AI.
The following are some of the DevOps benefits in the business area:

• More responsiveness to business needs

• Improved visibility into IT process and requirements

• Increased customer satisfaction

• Increased sales

• Lower risk

The following are the technical benefits:

• Improved Quality with code

• More Agile development

• Improved quality of deployments

• Faster release cycles

• Reduced complexity

The following are the team benefits:

• Collaborative culture

• Productive teams
• Higher team engagements

• Increased Growth opportunities

• Self driven team

Azure DevOps
Azure DevOps provides two offerings: Azure DevOps Server and Azure DevOps Services.
Azure DevOps Server, previously known as Team Foundation Server (TFS), is the
on-­premise offering from Microsoft. Azure DevOps Services, formerly known as Visual
Studio Team Services (VSTS), provides a SaaS-based offering to manage the end-to-end
DevOps life cycle. This book will focus on Azure DevOps Services only.
10
Chapter 1 DevOps Basics and Variations

Azure DevOps Services provides a platform for implementing the DevOps process
across different IT segments. This tool supports the various practices under DevOps such
as continuous planning, continuous development, continuous integration, continuous
testing, continuous deployment/delivery, and continuous monitoring/feedback.
Moreover, this tool supports integration with various tools such as code analysis tools to
verify the quality of code, security tools to scan the vulnerabilities in code, infrastructure
provisioning tools to automatically provision infrastructure components, and so on.

Summary
DevOps is an integral part of modern application development irrespective of
commercial off-the-shelf (COTS) products or bespoke applications, machine learning
models or web applications, and database or serverless models. This book will take you
through the DevOps implementation journey using Azure DevOps. It will also address
some of the high-level DevOps blueprints at the end.

11
CHAPTER 2

Project Management
Using Azure DevOps
The field of project management has evolved over the years from the management
of resources to include areas such as optimization and productivity boosters. Project
managers have always managed resources and maintained schedules, but today’s
project managers add multiple dimensions such as agility and technology to these
regular duties. Technical managers are the new norm to handle the growing adoption of
agile and DevOps practices and automation. The collaborative and self-driven culture
of the modern workforce provides more room for project managers to optimize their
activities.
Azure DevOps complements project management activities by facilitating more
automated features for the managers to track the work, optimize areas, and tightly
control and maintain schedule. Project execution means creating a project, managing
the end-to-end development cycle of the project, and onboarding teams with the proper
permissions. In Azure DevOps, projects related to the same domain or business unit are
grouped under an organization. Therefore, an organization is a collection of projects. In
earlier versions, this was called a project collection.
As discussed in Chapter 1, an enterprise can have multiple Azure DevOps
subscriptions to keep the billing related to each business unit separate, as shown in
Figure 2-1. Multiple organizations can be configured using one subscription to capture
the billing on a granular level or sub-business unit level. Organizations host related
projects under that, which supports the execution of a project from requirements
gathering until the deployment.

13
© Ambily K K 2020
A. K K, Azure DevOps for Web Developers, https://doi.org/10.1007/978-1-4842-6412-6_2
Chapter 2 Project Management Using Azure DevOps

Figure 2-1. Organization structure

Each project can have multiple repositories to hold the codebase in separate
areas. For example, a project handling the microservices will have one repo for each
microservice. The repos will be further divided into branches to manage the code
versioning and collaborative work. This chapter covers the high-level features of
organizations and projects and touches upon a few configurations related to repos and
branches. Repos and branches will be covered in more detail in Chapter 4. Also, most of
the configurations discussed in this chapter will be revisited in later chapters based on
their importance when setting up the end-to-date DevOps configuration.

Organizations
Organizations are the highest level of aggregation in Azure DevOps. From an enterprise
perspective, organizations can be used to group the user licenses, the billings for a set
of related projects, connections to an enterprise Azure AD, and global notifications and
policies. More features of organizations will be discussed later in this book.

14
Chapter 2 Project Management Using Azure DevOps

C
 reating an Organization
You can create a free organization by navigating to the Azure DevOps site: https://
azure.microsoft.com/en-us/services/devops/.
Select the option “Start free” to activate a free instance of Azure DevOps. Azure
DevOps supports using a Microsoft ID for login, where you can provide an existing live
email address (@hotmail.com, @outlook.com, @live.com, etc.) or create one to proceed.
Once the login completes, Azure DevOps prompts you to continue with organization
creation.
Provide an organization name to continue the journey. Once the organization is
created, the system will prompt you to create a project, as shown in Figure 2-2. Create a
new project with the minimum details.

Figure 2-2. Creating a new project

O
 rganization Settings
The organization home page shows the list of existing projects in the organization,
“My work items” tab, and “My pull requests” tab as shown in Figure 2-3. Hovering the
cursor over each of the project tiles allows users to navigate to the selected project’s
components such as the repo, board, pipeline, etc. The “My work items” tab displays all

15
Chapter 2 Project Management Using Azure DevOps

the work items assigned to that user irrespective of the project. If a user contributes to
multiple projects, this view provides a unified look at all the work items assigned to the
user. Also, this view lists the activities related to the user. The “My pull requests” tab lists
the pull requests (PRs) created by the user. More about the work items and PRs will be
covered in subsequent chapters.
The organization settings allow you to configure a set of features required for the
organization. Click the “Organization settings” option in the lower-left corner of the
organization’s home page to view the settings, as shown in Figure 2-3.

Figure 2-3. Organization settings

Briefly take a look at the different settings available in the organization settings.
These settings are used as part of project execution. For example, the settings under
Boards ➤ Process will be used to customize the project template when setting up the
execution process. Similarly, the settings under Security help us to define organizational
policies as part of the build and deployment operations.

G
 eneral ➤ Overview
The Overview section allows you to manage the general properties associated with
an organization such as the name of the organization, privacy URL, time zone, and
description.

16
Chapter 2 Project Management Using Azure DevOps

Scroll down in the Overview section to view the two main activities you can perform:
changing the owner and deleting the organization, as shown in Figure 2-4.

• Change owner: This option is used to transfer the owner permission


to another member of the organization.

• Delete organization: Remove the organization and associated


projects. Only the owner can delete the organization along with all
artifacts associated with it.

Figure 2-4. Changing the owner

G
 eneral ➤ Projects
This section lists the projects associated with the organization. In this section, we can
create a new project, delete a project, or rename an existing project, as shown in Figure 2-5.

Figure 2-5. Organization Settings ➤ General ➤ Projects

17
Discovering Diverse Content Through
Random Scribd Documents
Hagenin seurueeseen liittymisen, oli ollut tavattoman suurilukuinen,
suurempi kuin koskaan ennen. Siihen kyllä oli osaltansa vaikuttanut
ihmisten tavaton huvitteluhalukin tänä epävarmana sota-aikana,
mutta se ei mitenkään vähentänyt neiti Hagenin ansioita. Myöskin
toveripiirinsä sydämet hän oli voittanut vaatimattomalla,
sydämellisellä esiintymisellään. Hän ehdotti, että kaikki
saapuvillaolijat joisivat Martta Hagenin, taiteilijan ja ihmisen maljan…

Malja juotiin reippaasti pohjaan, ja kaikki lasit singahtivat seinään,


niin että muutamat itämaalaiset taulut saivat konjakki- ja
likööritahroja. Kaikki olivat mitä hilpeimmällä mielellä ja tyytyväisiä
tähän onnistuneeseen maljaan, ainoastaan Ville hiljaa mutisi, kun sai
lakaista kokoon lasinsirpaleita.

Seurustelu jatkui jutellen ja laulellen. Useimmat seuran jäsenistä


olivat laulajia ja tottuneita esiintymään, joten saatiin kuulla iloisia ja
kauniita lauluja loppumattomiin sekä kitaran että mandoliinin
säestyksellä. Ja ne, joilla ei tällä hetkellä ollut tilaisuutta näyttää
lahjojansa, saivat tyytyä loikoillessaan noilla pehmeillä patjoilla siihen
tietoon, että he kaikki, poikkeuksetta, olivat enemmän kuin vain
lupaavia kykyjä, he olivat neroja…

Isäntä itse oli jo niin hyvällä tuulella, että hän tahtoi näyttää
taitoansa aseiden heittelemisessä. Ville otti hänen käskystään esille
tikareja, miekkoja, puukkoja ja pistimiä ja toi ne hänelle. Sitten hän
alkoi huoneen perältä heitellä niitä ateljeerin oveen, ja joka kerta
kun joku näistä teräkaluista kolahtaen tarttui oveen kiinni, kirkuivat
naiset ihastuksesta. Tämä heitteleminen oli taiteilija Hertellin
erikoisurheilua, ja hänen tavoistaan tiedettiin kertoa monenlaisia
juttuja. Toisinaan, kun hän oli juonut hiukan liiemmälti, saattoi hän
käydä tässä urheilussaan hengenvaaralliseksikin, sillä hän heitteli
puukkoja myöskin kattoon, ja jos ne sattuivat tarttumaan huonosti
kiinni, niin ne helposti saattoivat putoilla ihmisten päähän.

Kun taiteilija oli heitellyt kaikki käsillä olevat aseet kiinni oveen,
joka oli täynnä reikiä niinkuin lihanmyyjän lihatukki, väsyi hän tähän
leikkiin, ja laulu ja soitto alkoivat uudestaan. Ilon ollessa ylimmillään
soitettiin ovikelloa rajusti. Ville meni aukaisemaan, ja ateljeeriin
ilmestyi tuomari Katajisto.

Pitkällisen etsiskelyn jälkeen hän oli vihdoin saanut kuulla, että


Martta Hagen oli täällä taiteilija Hertellin luona joulua viettämässä.
Kaikki saapuvilla-olijat tunsivat hyvin tuomari Katajiston, sillä siksi
usein hän oli Martan tähden tunkeutunut heidän seuraansa ja hän oli
monasti maksanut heidän suuret juomalaskunsa. Erikoisen
tervetullut ei hän ollut tällä kertaa tähän seuraan, sillä yleensä hän
oli luonteeltaan ylpeän röyhkeä ja riitaisa.

Nytkin hän oli hiukan humalassa ja pahalla päällä, kun näki Martan
täällä taiteilija Hertellin luona. Hertell oli kiivasluontoinen ja tappeli
mielellänsä, ja vaikeata hänen oli nytkin hillitä itseänsä, kun tuomari
Katajisto soimasi Marttaa siitä, että tämä oli hänet muka taaskin
pettänyt. Mutta koska nyt oli jouluaatto, rauhanjuhla, päätti taiteilija
olla ystävällinen tuomarille ja koetti rauhoittaa häntä. Muutamalla,
ystävällisellä sanalla sai Martta tuomarin rauhoittumaan, ja niin oli
mieliala jälleen palautettu.

Juotiin, laulettiin, kerrottiin hauskoja juttuja ja iloittiin


nuoruudesta, valosta, lämmöstä ja elämän kauneudesta. Lyhdyt
loivat salaperäistä valoaan tähän matalilla patjoilla loikoilevaan
kirjavaan seuraan. Kupariset maljakot takan suulla levittivät
huoneeseen suloisia, huumaavia tuoksuja, ja taiteilijoiden mieliala oli
mitä hilpein.
Martta näpäytteli kitaraa, ja ikäänkuin vahingossa sattuivat hänen
sormensa kielille niin, että syntyi surumielinen sointu, ja
tietämättänsä hän alkoi hyräillä tuttua lasten joululaulua. Eikä hän
ensinkään huomannut, että lauloi ääneen:

»Niin nuori, lämmin, hellä on mieli jokaisen; oi, jospa


ihmisellä ois joulu ainainen…»

Ja muut yhtyivät tähän tuttuun lauluun ja he lauloivat sen alusta


loppuun hartaudella ja antaumuksella niinkuin pienenä lapsena
jossain kaukaisessa menneisyydessä. Martan ääni värähteli,
kummalliset, haikeat mielikuvat lensivät hänen sielunsa silmien
ohitse. Mieliala muuttui niin sanomattoman raskaaksi, hänen teki
mielensä itkeä, ja hän huomasi, että toisetkin olivat saman tunteen
vallassa. He olivat sittenkin niin yksinäisiä ja niinkuin lapset suuressa
maailmassa… Äkkiä nieli hän itkunsa ja lyödä rämähytti reippaan,
räikeän akordin kitaran kielistä. Se vaikutti repäisevästi ja häikäisten
kuin raketti yöllisellä taivaalla…

— Tanssi, Martta, tanssi! — pyysivät toverit, ja häntä ei tarvinnut


kahdesti pyytää, sillä niin mielellänsä hän tahtoi vapautua
hentomielisestä tunteestaan. Eräs taiteilija sieppasi Stradella-hanurin
ja alkoi soittaa sillä kovaäänisesti reipastahtista tanssia. Martta
ponnahti pystyyn, sitten hän istuutui eräälle puiselle tuolille ja
kiinnitti tiukemmalle korkeavartisten, punaisten kenkiensä nauhoja ja
alkoi tanssia intohimoista andalusialaista tanssia.

Kaikki seurasivat henkeänsä pidättäen. Hanuri soi kovaäänisesti


täyttäen vihlovalla nielullaan koko ateljeerin. Ville ei malttanut olla
lyömättä käsillään tahtia, ja pian yhtyivät häneen kaikki. Tahti kiihtyi,
tanssi kävi tulisemmaksi, ja hanuri ulvoi ja veti itseensä ilmaa
kuuluvasti niinkuin läähättävä peto. Martta heitteli jalkojansa,
niinkuin ne olisivat olleet pelkkiä niveliä joka paikasta. Koko ateljeeri
oli yhtenä tanssin pauhuna ja meluna, kaikki hakkasivat voimiensa
takaa käsiään, pari herraa oli yhtynyt tanssiin, ja hanuri pauhasi kuin
kirkon urut viimeistä kiitosta soitettaissa, ja tanssi loppui vinhaan,
pyörryttävään karkeloon…

Martta heittäytyi maata patjoille ja yski kovasti läähätyksensä


välissä. Hertell ei ollut malttanut pysyä paikoillaan, vaan oli noussut
seisomaan ja seurannut eri puolilta huonetta Martan tanssia. Ja kun
Martta lopetti, sieppasi hän kauniin puutuolin, jolla Martta äsken oli
istunut, nosti sen ilmaan ja huusi:

— Tämän tanssin jälkeen ei tällä tuolilla istu kukaan.

Sitten hän iski sen lattiaan säpäleiksi. Kaikki huoneessa-olijat


huusivat hyvähuutoja, mutta tuomari Katajisto suuttui aivan
silmittömästi. Hän ei voinut mustasukkaisuudessaan kestää moista
Martan ihailemista. Päihtymyksestään huolimatta hän hyppäsi
pystyyn, kirosi, sylki käsiinsä ja hyökkäsi taiteilija Hertellin kimppuun.

Syntyi yleinen hämminki. Kaikki nousivat patjoilta ja muodostivat


kehän Hertellin ja tuomarin ympärille, sillä Hertell, joka oli hyvä
nyrkkeilemään, oli antanut tuomarille muutamia lieviä iskuja. Tästä
hän vain kiihtyi ja hyökkäsi uudella raivolla Hertellin päälle. Martta
seisoi aivan lähellä heitä ja katseli läähättäen ja silmät kiiluen
herrojen kamppailua. Hän tiesi, että tuomari Katajisto oli sangen
vahva, ja miksikäpä ei olisi ollut, sillä olihan hän terve maalaispoika.
Vielä muutamia epäonnistuneita hyökkäyksiä, ja Hertell iski
nyrkillänsä pari kertaa tuomaria silmien alle ja antoi sitten hänelle
yhden iskun vasten suuta, niin että veri tirskahti.
Lihavahko tuomari tupertui maahan liikkumattomaksi. Naiset
alkoivat kirkua ja hakivat päällysvaatteitaan. He luulivat, että taiteilija
Hertell saisi hulluudenkohtauksen… Naiset pakenivat, ja muutamat
taiteilijat raahasivat Villen kanssa pyörtyneessä tilassa olevan
tuomarin pois ateljeerista.

Ainoastaan Martta jäi jäljelle. Hän oli sytyttänyt paperossin ja istui


eräässä nojatuolissa silmät kiiluen.

— Bene lavorato, hyvin tehty, — sanoi hän rauhallisesti ja hiukan


ärsyttävällä äänellä.

Hertell ei puhunut mitään, vaan ryhtyi keräämään lattialta


murskaantuneen tuolin jäännöksiä ja heitti ne takan eteen. Martta
katseli vaieten hänen puuhiansa. Sitten taiteilija polvistui takan
ääreen, asetti tuolinpalaset takkaan ja… Martta purskahti
äänekkääseen nauruun…

— Mitä sinä naurat?

— Minua huvittaa sinun valheesi. Sanoit äsken, että kukaan ei istu


tuolla tuolilla minun tanssini jälkeen, ja nyt luulottelet vielä peittäväsi
sirpaleet.

— Mitä valhetta siinä on?

— Tiedänhän minä varsin hyvin, että tuo tuoli on monasti särjetty


jonkun esityksen kunniaksi ja seuraavana päivänä liimattu kokoon
uuteen käytäntöön. Ei sitä nytkään polteta, vaikka sinä tapasi
mukaan koetat vaikuttaa naisiin. Mutta minua sinä et petä. Olen ollut
liian paljon mukana…
Tumma puna nousi Hertellin kasvoille. Hän ponnahti pystyyn ja
kirosi ääneen.

— Kuka sen sanoo, että se on liimattu palasista?

— Näkeehän sen, katso.

— Mutta minä en ainakaan ole sitä tehnyt.

— Et tietystikään, vaan sinun orjasi.

— Annan kunniasanani, että en ole sitä määrännyt.

Martta purskahti taas riettaaseen, pilkalliseen nauruun. Mutta sitä


hänen ei olisi pitänyt tehdä, sillä Hertell suuttui silmittömästi. Hän
sieppasi tuolin ja heitti sen pirstaleiksi permantoon, sitten hän otti
toisen, kolmannen, neljännen ja löi kaikki puutuolit palasiksi.
Ainoastaan suuret, raskaat ameriikkalaiset nahalla päällystetyt
nojatuolit säästyivät tästä kohtalosta.

Ensin Martta pelästyi, mutta sitten hän katseli rauhallisesti ihaillen


sitä voimaa, jolla Hertell suoritti tekonsa. Kun Hertell oli särkenyt
tarpeellisen määrän tuoleja, seisahtui hän läähättäen katsomaan
hävityksensä tulosta ja hymyili ilkeän pirullisesti. Sitten hän alkoi
kerätä tuolinpalasia ja kantoi kaikki takkaan sekä sytytti ne.

Martta oli katsellut kaikkea tätä äänettömällä ihailulla, ja kun tuli


leimahti takassa, nousi hän tuoliltaan ja lankesi Hertellin kaulaan.
Hän ihaili voimaa ja miehiä, joilla oli voimakas temperamentti. Mutta
Hertell irroitti hellästi hänen kätensä kaulaltansa, veti lähemmäksi
takkaa suuren nojatuolin ja istutti Martan siihen.
Sitten hän haki nurkasta harjan ja rikkalapion ja alkoi lakaista
lattiata, sillä hänen korkealle kehittynyt kauneus-aistinsa ei sietänyt
sitä näkyä, jonka pienet puunsirpaleet, naulat ja maalinpalaset olivat
jättäneet lattialle. Toimitettuaan huolellisesti siivouksen hän
sammutti kaikki värilliset lyhdyt, veti toisen nojatuolin lähelle takkaa
aivan Marttaa vastapäätä, otti esille paperosseja ja tarjosi Martalle
kohteliaasti. Sitten hän veti pienen pöydän heidän väliinsä ja kaasi
laseihin helmeilevää punaviiniä.

Kuivat, maalatut tuolinpalaset paloivat hyvin ja kirkkaalla liekillä


valaisten kodikkaasti ateljeeria. Ulkona oli pakkanen, ja tuuli vinkui
ajellessaan lumia ateljeerin kattoakkunoilla. He tupakoivat mitään
puhumatta ja katselivat, kuinka puut takassa paloivat…

*****

Puut ovat jo hiilloksella, joka luo punaista hehkua takasta lähellä-


istuvien kasvoille. Ateljeerissa on hämärä ja lämmin. Paperossien
vaaleat savut pyrkivät takkaan päin. Taiteilija Hertell puhuu matalalla
äänellä:

— Niin, Martta, minäkin olen onneton ihminen, meitä on niin


monta onnetonta täällä maailmassa, kukin omalla tavallansa.
Onnettomuuden syyt ja muodot ovat lukemattomat … Sinä ehkä
tiedät, ehkä olet kuullut, että järkeni toisinaan alkaa hämärtää.
Sellaista kohtausta kait nuo vieraani äsken pelkäsivät, kun jättivät
niin pian meidät. Ei, ei se nyt tule, minä tiedän tarkalleen milloin se
tulee, ja se siinä onkin kauheinta… Toisinaan kun olen täynnä
luomisen intoa, kun ruumiini on terve ja sieluni näkee kauniita,
ennen maalaamattomia tauluja ja värejä… sinä ehkä tiedät, Martta,
että ne maalaamattomat taulut ovat kaikkein kauneimmat…
Hänen äänensä värähtää, kun hän jatkaa:

— Minä olen luodessani onnellinen, kaikki luonnistaa hyvin. Käsi


tottelee mielikuvitusta, ja värit sulavat kuin itsestään paletilla
sopiviksi värisoinnuiksi. Minä olen täynnä luomisen intoa, sen
tuottamaa iloa ja hurmaavaa onnea. Olen unhottanut kaiken,
ihmiset, elämän, sairauteni… ja…

Silloin yhtäkkiä alkaa silmissä hämärtää, minä en näekään


edessäni etäämmällä olevaa mallia, kangas edessäni himmenee, ja
kaikki värit sekaantuvat paletillani taikka minun silmäni monistavat
kaikki esineet moninkertaisiksi. Luulen itseäni väsyneeksi ja suljen
hetkiseksi silmäni sekä lepään silmät ummessa. Mallini ei puhu
mitään, hän luulee minua hetkellisesti pahoinvoivaksi. Pian se menee
ohi, minä näen taas muotoja ja värejä. Alan uudestaan työni, mutta
se loppuukin siihen, sillä taas on kaikki sekaisin. Minä käsken mallin
pois, sillä päässäni polttaa ja humisee, ja silloin tiedän, että nyt ne
tulevat ne kauheat hirmun kuvat, ne rumat, ennen maalaamattomat
taulut, sillä sielussa on myöskin rumia kuvia. Usein näen
lukemattomia ilmaan pingoitettuja rihmoja ja nuoria. Ne ovat
pingoitetut ristiin rastiin aivan käsittämättömiksi yhtymiksi ja ne
liikkuvat ja soivat koko ajan ja vihdoin keriytyvät kaikki minun pääni
ympärille…

Minä koetan ajatella johdonmukaisesti, minä ponnistan


mielikuvitustani järjestykseen. Koetan laskea, mutta sekoan heti kun
olen päässyt kymmeneen… Ah, hyvä Jumala, nyt ne tulevat, nyt ne
tulevat ne kauheat hetket, minä tunnen ja tiedän sen, mutta minä en
voi estää niitä enkä vastustaa. Silloin riennän ulos, raittiiseen ilmaan,
ihmisten vilinään, kapakkaan ja alkoholin ääreen…
Ja sinä et voi uskoa. Alkoholi karkoittaa muutaman kerran ne
kuvat ja sen kaamean tunteen, mutta vain hetkiseksi, sillä
seuraavana päivänä ne tulevat ihan varmaan ja paljoa
raivokkaampina. Silloin ponnistan kaikki voimani, minä taistelen
vastaan kuin villipeto. Minä juon täällä, heittelen näitä aseita seiniin,
rikon mitä tielleni sattuu, sillä kun olen ankarassa ruumiillisessa
työssä, ei polte päässäni ole niin suuri eivätkä mielikuvat saa niin
voimakkaasti minua valtaansa. Mutta sitten kun minä olen täällä
aikani raivonnut, tulevat hyvät ihmiset ja toimittavat minut hoitoon,
se on, minut suljetaan yksinäiseen koppiin, jossa voimattomana saan
taistella sieluni villien peikkojen kanssa…

Minä tiedän, että ne ovat taas tulossa, ei vielä, älä pelkää, mutta
vasta jonkun päivän päästä. Aah, se on kauheata. Jospa edes
ymmärtäisi, silloin kun ne pahimmillansa ovat, surmata itsensä,
mutta silloin kaikki järjellinen toiminta on mahdotonta…

Hän lankesi polvillensa Martan eteen, painoi kuuman päänsä


hänen syliinsä ja nyyhkytti väsyneesti. Martta silitti hänen päätänsä
ja puhui hiljaa:

— Rauhoitu, ystäväni. Minäkin olen onneton, sinä tiedät sen. Sinä


tiedät, että minä olen nähnyt parempiakin päiviä ja että minä olen
kerran ollut parempi ihminen kuin mitä nyt olen…

— Ei, älä sano niin. Sinä olet niin hyvä ihminen, sinä olet kärsinyt
ihminen, ja kärsimykset tekevät ihmiset hyviksi. Minä rakastan
kärsineitä ihmisiä…

— Niin, olenhan minäkin kärsinyt, mutta hyvä minä en enää ole.


Sinä olet ehkä kuullut, että minä olen langenneen naisen langennut
tyttö, joka on kasvanut hienossa kodissa, mutta ei koskaan ole
saanut osaksensa sellaista rakkautta kuin on sielussansa kaivannut.
Rakkautta olen kylläkin myöhemmin saanut, mutta se ei olekaan
rakkautta… Ei, se ei ole enää rakkautta, se on lankeemusta, se on
oman äidin onnettomuutta, se on omaa onnettomuutta… Minä en
koskaan voi saada edes sitä rakkautta kyllikseni, sillä se jano on niin
suuri, että se suurenee juodessa, se on kuin pyrstöänsä
loppumattomiin nielevä käärme, se on iankaikkinen… Minäkin olen
niin onneton.

Hän painoi kyyneltyneet kasvonsa Hugon hiuksiin ja suuteli niitä


hiljaa ja hellästi:

— Rakas!

*****

Hiilet ovat jo miltei sammuneet, ateljeerissa on syvä, tumma


hämärä, joka pehmittää kaikkien esineitten muodot epämääräisiksi,
mustan-untuvaisiksi. Surun hiljainen hämärä…

Hugo nousee, nostaa Martan seisomaan ja aikoo suudella häntä.

— Me olemme onnettomuussisaruksia.

Mutta samassa Martta riuhtaisee itsensä irti hänen syleilystään ja


huudahtaa pidätetysti:

— Älä Jumalan nimessä suutele minua! Etkö sinä tiedä, että minun
rintaani syö Kamelianaisen kuluttava tauti…

— Me olemme surun morsian ja sulho, meille ei voi sattua enää


suurempia onnettomuuksia. On oikeastaan suloista tietää, että
onnettomuuksien malja alkaa jo ainakin tässä olemisessa olla
kukkuroillaan. Kuolemaa enempää ei meille voi sattua, ja sehän on
meidän ystävämme. Unohtakaamme hetkiseksi, että olemme tässä
maailmassa, ja odottakaamme rohkeina, milloin malja valahtaa yli…

*****

Ulkona tuprutti pakkastuuli ateljeerin katolla kylmää lunta. Mutta


siellä sisällä oli niin lämmintä ja hämärää. Jouluaamu alkoi heikosti
kajastaa…
IX

Tohtori Hakalan kodissa oli uudenvuodenaatto hyvin hiljainen. Sen


onnettoman hermokohtauksen jälkeen oli Ebba muuttunut vieläkin
harvapuheisemmaksi. Eivät he enää siitä asiasta sanallakaan
maininneet, mutta kumpikin kärsi omalla tahollansa. Albert teki
kaikkensa sovittaakseen ja luodakseen iloa kotiin, mutta Ebba pysyi
kylmänä ja jäykkänä. Hänessä oli sen illan jälkeen murtunut jotain,
ja hän oli sairaampi kuin koskaan ennen.

Joulu oli ollut hyvin hiljainen ja täynnä pettymyksiä, jotka tosin


itsessään olivat sangen mitättömiä, mutta kuitenkin osoittivat sitä
mielialaa, joka kodissa vallitsi. Ebba ei ollut suuria välittänyt siitä
lahjasta, jonka Albert oli vaivalla hankkinut ja jonka hän oli arvellut
Ebbaa miellyttävän. Myöskin äidille oli sattunut pettymys. Hän oli
tietenkin saanut vihiä siitä, että taiteilija Hugo Hertell kävi pikku
Annikkia maalaamassa ja että taulu oli aiottu hänelle joululahjaksi.
Pikku Annikki oli kaiken tämän hänelle kertonut vaitiolon lupausta
vastaan. Mutta sitten oli sattunut äkkiyllätys. Taulu oli miltei valmis,
mutta kuitenkin viimeistelemätön. Taiteilijaa odotettiin saapuvaksi,
mutta turhaan. Palvelijatar oli Albertin käskystä käynyt häntä
hakemassa, mutta kun hän ei vaan ilmestynyt, lähti Albert itse häntä
hakemaan.
Hän oli kiivennyt viidenteen kerrokseen täynnä vihaa ja
suuttumusta, sillä taiteilija oli jo saanut suurimman osan maksusta
etukäteen, ja Albert tahtoi, että taulu tulisi valmiiksi ja hän saisi
antaa sen äidillensä joululahjaksi. Mutta hänen vihansa muuttui
häpeäksi, kun hän tuli sisälle ateljeeriin. Hän oli yllätyksekseen
tavannut siellä serkkunsa Martta Hagenin, jota hän ei ollut nähnyt
moneen aikaan. Vaikka oli täysi päivä, istuivat Martta ja taiteilija
puoleksi juodun madeirapullon ääressä ja olivat mitä parhaimmalla
tuulella. Albert olisi peräytynyt, mutta taiteilija pyysi häntä sisälle ja
seuraan. Sitten hän ilmoitti, että ei hän viitsikään maalata sitä
taulua, sillä hän ei katsonut sitä ensinkään tarpeelliseksi, ja kun
Albert oli koettanut tehdä hiukan vastaväitteitä, oli Martta suuttunut
ja käyttänyt sopimattomia sanoja. Martta tuntui katkerammalta kuin
koskaan ennen, ja hänen vaikutustaan kait oli, että Hertell ei
maalannut taulua valmiiksi.

Kiireimmän kautta oli Albert lähtenyt ateljeerista, jossa hänen


mennessään kaikui Martan ilkeä, pilkallinen nauru. Hänen
korvissansa soi vieläkin tuo katkera nauru ja Martan sanat: »Vai vielä
tässä ruvettaisiin ikuistamaan Ebban ja sinun jälkeläisiä! Ei ole aikaa
eikä ole halua, kuuletko sinä! Minut ikuistetaan ensin, minut!»…

Äidille oli tämä ollut pettymys, eikä Albert kehdannut kertoa, että
taiteilija Hertell oli Martan pauloissa, sillä Martan nimenkin
mainitseminen olisi tuonut heidän kotiinsa niin paljon ikäviä ja
surullisia muistoja…

Joulukuusi, joka oli kauniisti koristettu ja jossa ennen kaikkea oli


runsaasti kynttilöitä, oli pystytetty yläkertaan pikkusaliin. Muina
vuosina se oli ollut isossa alasalissa, jossa tavallisesti oli tanssittukin,
mutta tänä vuonna Ebban sairauden takia ei oltu kutsuttu vieraita
eikä sota-aikaakaan katsottu sopivaksi tanssiaisten pitoon. Ebba
loikoi pehmeällä leposohvalla ja katseli hajamielisenä kynttilöiden
loistoa. Miurun pää liikkui seuraten lämpimän ilman vedosta johtuvaa
paperilippujen liehuntaa. Joka kerta kun jokin lippu heilahti
korkealle, nousi Miurun pää samassa tahdissa. Albertin äiti istui
mukavassa kiikkutuolissa ja katseli Annikin ja hänen hoitajattarensa
Liisan puuhia.

Annikki olikin iloinen kuten aina, sillä hän oli saanut uudeksikin
vuodeksi muutamia lahjoja. Liisa ja hän olivat
tinojenvalamishommissa.

Tuli räiskyi iloisesti uunissa ja levitti suloista lämpöä huoneeseen.


Palvelijatar, toi suuren, puisen korvon, joka oli vettä täynnä. Annikki
taputteli käsiänsä ja hyppi ihastuksesta.

— Äiti, kuka nyt valaa tinoja, kun isä on poissa? Mihinkä isä oikein
meni? — kysyi Annikki.

— Isä meni suureen juhlaan, jossa odotetaan uutta vuotta ja jossa


hän on luvannut puhua uuden vuoden kunniaksi, mutta kyliä hän
tulee heti kun vain pääsee, ja Liisa kyllä valaa tinoja…

— Haltialle! — huusi Liisa kovalla äänellä ja heitti sulan tinan


valinkauhasta korvoon. Vesi oikein porahti, kun kuuma tina putosi
siihen. Liisa kääri hihansa ja etsi sitä syvältä korvon pohjalta. Siinä
se nyt oli valkoisella lautasella. Annikki sai viedä sen isoäidille, joka
asetti kultasankaiset silmälasinsa paikoillensa ja alkoi selittää, mitä
kaikkea hyvää haltian tina näytti ja lupasi heidän kodillensa.

— Rahaa, paljon rahaa ja iloisia uutisia ja lahjoja.


Sitten valettiin isoäidille, ja Annikista oli tämä kaikki niin
sanomattoman riemukasta, sillä isoäiti sai oikein kauniin kukkakorin.
Sitten tuli äidin vuoro. Annikki kantoi vettävaluvan tinan lautasella
äidin nähtäväksi.

Se oli kummallisesti muodostunut. Isoäiti, jonka erikoisoikeutena


tinojen selittäminen oli, näki siinä suuren veneen, joka täysin purjein
kiidätti äitiä lämpöisiin ja onnellisempiin maihin terveyttänsä
hoitamaan, jahka vain sota loppuu. Mutta kun Ebba tarkemmin tutki
sitä, kalpeni hän ja huudahti pidätetysti. Hän näki veneen kokassa
pienen ristin. Ja vaikka isoäiti kuinka selitti sitä ankkuriksi, ei hän
tahtonut sitä uskoa, ja mieliala ei ottanut palatakseen. Samassa
Ebba huomasi, että Miuru oli taas kadonnut. Miuru oli ollut koko
päivän kummallisen levoton ja juossut aina tilaisuuden sattuessa
ulos. Päivällä se oli pakkasesta huolimatta istunut ulkona hangella ja
naukunut, ja kun palvelija oli sen kantanut sisälle, oli se vähän ajan
kuluttua livahtanut taas ulos eikä tullut sisälle, ennenkuin se väkisin
otettiin kiinni. Nyt se oli taas kadonnut.

He eivät voinee käsittää mikä kissaan oli mennyt, sillä yleensä se


pelkäsi kylmää ja viihtyi aina hyvin sisällä. Ebba, joka oli herkällä ja
hermostuneella mielellä, sanoi Miurun esiintymisen tietävän suurta
onnettomuutta, mutta isoäiti nauroi hänen taikauskolleen.

Annikille valettiin monta tinaa, sitten kun poissaolevaa isääkin oli


muistettu, eivätkä hänen nukkensakaan jääneet ilman, ja valetuinpa
Miurullekin yksi, vaikka se poissaolonsa takia ei oikeastaan olisi
ansainnut koko tinaa. Mutta Annikki pyysi sen puolesta, ja Liisa valoi
sillekin yhden…

Alakerrassa olevan ruokasalin kello löi kaksitoista kumeata lyöntiä.


Uusi vuosi oli tullut. Seinällä lähellä joulukuusta oli uusi
seinäalmanakka, jonka isä oli ostanut. Sopimuksen mukaan piti
Annikin itsensä saada repäistä pois sen kaunis päällyslehti, joka esitti
pientä porsasta kultainen neliapila suussa.

Isoäiti otti silmälasit nenältään ja lähestyi Ebbaa kumartuen


suutelemaan häntä. Koska isä ei ollut vieläkään kotona, ei Annikki
malttanut odottaa, kunnes isä olisi antanut hänelle luvan ja ehkä
auttanutkin häntä, vaan kiipesi korkealle tuolille seisomaan ja kurotti
kättänsä repäistäkseen pois sen päällyslehden, kuten isä oli
luvannut. Mutta samassa tuoli horjahti. Annikki oli pudota ja tarttui
hätääntyneenä lähellä olevan kuusen oksaan, mutta kuusi oli huono
tuki, ja Annikki putosi lattialle vetäen kuusen nurin matkassaan…

Kaatunut, kuiva kuusi syttyi silmänräpäyksessä palamaan, sillä


siinä oli harvinaisen paljon kynttilöitä, ja kaatuessaan se sytytti
akkunaverhot ja harsoisen pöytäliinan. Tuokiossa oli koko huone
ilmitulessa…

Liisa juoksi heti hätääntyneenä soittamaan paloasemalle…

*****

Janne Pöyhtäri lepäsi puolipukeissa vuoteellaan. Palokuntaa oli


sinä iltana hätyytetty jo kerran erään nokivalkean takia. Janne uneksi
valveilla ollen tapansa mukaan suurista rikkauksista, joilla hän tekisi
itsensä ja ympäristönsä onnelliseksi. Hänellä olikin tapana joka ilta
ennen nukkumistaan sanoa leikillä tovereilleen hyvää yötä lausuen:
»Ja miljonääri lepäsi vuoteellaan…» Toverit olivat aluksi nauraneet
hänen hullutuksilleen, mutta hän toisti sen joka ilta ja sanoi, että jos
jotain asiaa oikein itsepäisesti toivoo, niin se vielä kerran toteutuu,
kun vain itse uskoo siihen. Toisinaan hän taas uneksi jostain
suuresta urotyöstä, jolla tekisi nimensä kuolemattomaksi.
Olipa hän usein valvoessaan ajatellut lähteä sotaan suorittaakseen
siellä sankaritekoja, mutta lopuksi hän oli kuitenkin tarkemmin
ajateltuaan halveksinut nykyaikaista konesotaa, jossa persoonallinen
uljuus ja voima kuitenkin lopullisesti merkitsivät niin vähän…

Jannea ei nukuttanut, sillä hän oli valveutunut hälyytyksen takia,


ja kun nokivalkean sammutus ei ollut vaatinut mitään ruumiin
ponnistuksia, niin hän jaksoi hyvin valvoa.

Hän maata lekotteli siinä vuoteellaan ja kuunteli, kuinka toverit


»vetelivät hirsiä». Hänen mieleensä muistui Hanna.

Kummallinen sattuma. Hän oli mennyt eräänä lauvantai-iltana


kansantalolle tanssiaisiin. Hän oli tahallansa mennyt »formussa»,
vaikka siinä olikin hiukan kuuma tanssia, mutta sillä komealla puvulla
aina »flaksasi» niin hyvin…

Se sitten oli kummallista, kuinka puku teki paljon asiaan. Jos vain
panit päällesi »formun» ja satuit istumaan jonkun puiston penkille,
niin kyllä siihen kosijoita ilmestyi jos jonkinkarvaisia. Aivanhan ne
tytöt olivat hulluina ja tahtoivat viedä väkisten, ja olisi sitä saanut
pitää seuraa oikein hienoille fröökynöillekin, vaikka ties mitä ne
olivat… Oikein häntä nauratti, kun ajatteli mitä kaikkea hän olisi
saanut seuraansa, jos vain olisi huolinut..

Niin, siellä kansantalolla se tulla tupsahti vastaan, se Hanna Rönkä


sieltä kotipitäjästä. Eipä olisi uskonut, että se niin olisi komistunut.
Kasvot olivat valkoiset ja punaiset kuin mansikkamaito, ja hiukset
kiilsivät mustina kuin korpin selkä. Hän huomasi heti, että Hanna oli
oikein solakkaa ja kaunista rotua, oikea työihminen eikä mikään
hepsankeikka…
Siinä sitten oli maklakoitu ja iloa pidetty, ja siitä se seuranpito
sitten alkoi. Nyt he olivat jo oikein kihloissa, sormuksen kanssa…

Oli se niin mukavaa, kun tiesi aina lomapäivänä minne matkansa


ohjaisi.
Eihän sitä joka kerta viitsinyt mennä äidinkään luo sinne Hermanniin
saakka. Siinä Uudenmaankadulla se maitopuoti oli, jossa Hanna möi.
Sinne oli niin mukava piipahtaa katsomaan…

He olivat päättäneet mennä heti naimisiin, kun hän vain saa


palkankoroitusta eli sellaisen kullanvärisen »limppuvinkkelin»
hihaansa, sillä eihän se tyttö katselemisesta parane…

Ja sitten liitelivät hänen ajatuksensa kauas maalle. Hän toivoi


ainakin joskus tulevansa niihin varoihin, että vanhemmiten voisi
ostaa kotitilan maalta itsellensä vaikkapa kuinka pienen torpan, jossa
voisi viettää vanhuutensa päivät, sillä maa ja kotiseutu vetivät häntä
aina vastustamattomasti puoleensa…

*****

Miehet heräsivät hälyytykseen, ja äkkiä oli heillä vaatteet päällään.


He riensivät suureen vaunuliiteriin, jonka kolme suurta ovea
ponnahtivat selkoselällensä. Naulakoista siepattiin kypärit päähän ja
leveät nahkavyöt, joissa riippui palokirveet, vyötäisille. Tulipalon
paikka ilmoitettiin heti.

Kaivopuistossa. Janne pelästyi, sehän oli sen hyväluontoisen


tohtori Hakalan kaksikerroksinen kivitalo. Heti paikalla tuotiin
hevoset rekien eteen. Valjaat, jotka riippuivat avoimina korkealle
nostettuina rekien yläpuolella, pudotettiin pienillä väkipyörillä
hevosten harteille. Hevoset ikäänkuin hyppäsivät valjaisiin. Tuossa
tuokiossa olivat miehet paikoillaan, ja kolmen minuutin kuluttua
seurasi palomestarin autoa iso reki täynnä miehiä, ja kumea torvi
antoi varoittavia hälyytysmerkkejä…

Niinkuin tuli olisi tarttunut hevosten harjoihin, lähtivät ne täyttä


neliä ulos vaunuvajasta ja suoraa päätä alas Korkeavuoren katua
Kaivopuistoon päin. Lumet tuprusivat reen tieltä, joka kiiti kuin
tuulispää… Perässä tulivat ensimäinen letkukärry, höyryruisku, toinen
letkukärry, hyppypurje, tikapuita y.m. sammutuksessa tarvittavia
koneita.

Tulisoihdut loimusivat pimeässä yössä, sillä kadut olivat nytkin


niukasti valaistuja. Hevoset juoksivat kuin henkensä edestä,
pakkaslumi valitti jalaksien alla, ja torvi raikui kiihoittaen. Jannella oli
kädessään pitkävartinen soihtu, jota hän aina silloin tällöin käänsi
alas maata kohti, jotta öljyä valuisi runsaammin soihdun päässä
oleviin rohtimiin saaden liekin siten suuremmaksi. Hänen ruumiinsa
värisi, ei kylmästä, vaan innostuksesta, sillä aina kun sattui hälyytys,
oli hän kuin irti maasta. Hän tahtoi toimia, ja väliin hän tuskin jaksoi
odottaa, kunnes palomestari tai joku ruiskumestareista antoi
määräyksensä, sillä niin hän paloi innostuksesta ja toimintahalusta…

Kun palokunta muutaman minuutin kuluttua saapui tohtori


Hakalan huvilalle Kaivopuistoon, oli talon koko yläkerta ilmitulessa.
Reippaasti ryhdyttiin pelastamispuuhiin. Mutta kesti kuitenkin jonkun
aikaa, ennenkuin letkut saatiin maajohtoihin, sillä ankaran talven ja
suuren lumenpaljouden takia oli tavallista vaikeampaa päästä
katujohtoihin käsiksi.

Vähän sen jälkeen kuin palokunta oli saapunut paikalle, tuli tohtori
Hakalakin hevosella ajaen. Liisa oli soittanut ensin paloasemalle.
Sitten hän oli yrittänyt palata palavaan huoneeseen, mutta kun tuli
ja savu löivät häntä ovessa vastaan, oli hän hätääntynyt ja juossut
alakertaan ja soittanut alakerroksessa olevalla puhelimella vanhalle
ylioppilastalolle, jossa hän tiesi tohtorin olevan juhlapuhujana.
Tohtori oli tullut jonkun ajan kuluttua puhelimeen, eikä hän siinä
paljoa puhunut, vaan syöksyi ulos ilman päällysvaatteita ja otti
ensimäisen ajurin.

Hänen hätänsä ja tuskansa oli ääretön, sillä hän pelkäsi


omaistensa hengen puolesta. Hän tiesi, että äiti menetti aina vaaran
tullen mielenmalttinsa, ja Ebba taasen oli niin hermostunut, että ei
kyennyt mihinkään toimintaan, kun sitä tarvittiin.

Kuinka hän katui sitä, että oli ensinkään lupautunut


juhlapuhujaksi. Mutta häntä oli niin pyydetty, ja kun kodissa mieliala
oli niin raskas, oli hän ajatellut vaihtelun olevan hauskaa… Nyt hän
sai siitä rangaistuksensa. Olisihan hänen suurena juhla-aattona
pitänyt pysyä kotona…

Kun hän saapui palopaikalle, oli talo ilmitulessa. Hän riehui kuin
mielipuoli ja koetti heti hyökätä yläkertaan, mutta vastaan tuleva tuli
ja savu ehkäisivät hänen yrityksensä. Kaikeksi onnettomuudeksi oli
sähkökin sammunut.

Heti tultuaan palopaikalle oli palomestari kutsunut paloasemalta


mekaaniset tikapuut, jotka saapuivat tuossa tuokiossa ja saatiin heti
kuntoon. Janne Pöyhtäri, joka oli ollut kuin hiilillä, juoksi käskyä
odottamatta nopeasti ja rajusti pitkin tikapuita niin, että ohuet,
notkeat puolapuut arveluttavasti taipuilivat hänen allansa. Tultuaan
akkunan luo hän löi palokirveellään sen säpäleiksi. Kuului kumea
humahdus ja tulen räiskettä, ja sankka savu tulvehti muutamien
tulenkielekkeitten mukana avonaisesta akkunasta, jonne voimakas,
alhaalta tuleva vesisuihku ohjattiin. Mutta Janne kiipesi pelottomana
sisälle, ja jäljessä tulevasta letkusta syöksyi vettä moitteettomasti.
Hyppypurje oli pingoitettu akkunan alle tikapuiden kohdalle. Kauan ei
Janne viipynytkään, vaan palasi akkunalle, josta tulvehti paksua
savua ja höyryä, sillä tuleen joutunut vesi muuttui heti vesihöyryksi.
Hänellä oli pieni lapsi sylissään. Nopeasti kuin orava juoksi hän
portaita alas ja antoi puolitiessä odottavalle toverilleen lapsen. Itse
kiipesi hän samaa tietä takaisin palavaan huoneeseen, ja levoton isä
raukka sai portaita alas laskeutuvalta palosotilaalta lapsensa, joka oli
pyörtynyt.

Miltei samaan aikaan kuin Janne toisen kerran hyppäsi palavaan


huoneeseen pelastaakseen muita siellä näkemiään ihmisiä, olivat
muutamat hänen tovereistaan tunkeutuneet alakerrasta johtavien
portaitten kautta sinne ja pelastaneet sekä tohtorin vanhan äidin
että tohtorinnan, joka oli pyörtyneessä tilassa…

Janne ei nähnyt savulta ja höyryltä mitään ja haki liekkien seasta


aikaisemmin näkemiään ihmisiä, mutta samassa putosi osa palavasta
välikatosta hänen päällensä, ja hän kaatui palavalle lattialle. Vaivoin
saivat toverit hänet pelastetuksi, ja hän oli ehtinyt tässä lyhyessä
ajassa saada pahoja palohaavoja. Sekä Ebba että hän toimitettiin
kiireimmän kautta kirurgiseen sairaalaan. Eräälle palosotilaalle, joka
viimeiseksi jäi liekkien vallassa olevaan huoneeseen, tuli niin kiire,
että hänen täytyi hypätä alas ikkunasta hyppypurjeeseen. Kaikki
tämä oli tapahtunut niin nopeasti, että tuntui käsittämättömältä,
mitenkä tuli oli saanut niin suuren vallan, mutta se johtui
pääasiallisesti siitä, että huoneessa, jossa kuusi oli kaatunut, oli ollut
niin paljon oviverhoja ja helposti palavia mattoja.

Yö oli tuulinen, ja Kaivopuistossa, merenrannalla, tuulee aina


enemmän kuin muualla kaupungissa. Reippaitten ponnistusten
jälkeen sai palokunta kuitenkin tulen vallan lyhyessä ajassa
rajoitetuksi ja suuren osan varsinkin alakerran huonekaluista ja
muusta irtaimistosta pelastetuksi. Rakennuksen toinen kerros
vikaantui pahasti, mutta ensi kerros jäi verrattain hyvään kuntoon.

Uuden vuoden aamuna, kun ihmiset olivat kävelyllä Kaivopuiston


rantatiellä, näkivät he vielä kaksi vartiotoimessa olevaa palosotilasta,
jotka kuljeskelivat tohtori Hakalan puoleksi palaneen huvilan edessä.

Valkoisella, lumen peittämällä graniittiaidalla istui valkoinen,


pörrökarvainen kissa, joka naukui valittaen, mutta pakeni heti, jos
joku lähestyi sitä…

— Tohtori Hakalan vuosi on alkanut onnettomasti, — sanoivat


ohikulkijat.
X

Tuomari Katajisto oli juuri ottanut kylmät hauteet silmiensä päältä,


joiden siniset alustat — »lemmenkukat», niinkuin hän niitä nimitti —
olivat jo taas siedettävän näköiset, niin että kehtasi lähteä vaikka
ulkosalle. Hänen leukansa tuntui vielä toisinaan, varsinkin syödessä,
kipeältä, mutta muuten hän tunsi itsensä sangen reippaaksi.

Kotona istuessaan ja miettiessään kaikkea sitä, mitä hänelle viime


aikoina Martta Hagenin tähden oli tapahtunut, hän oli etsinyt
syyllistä onnettomuuksiinsa, sillä onneton hän oli. Hän oli joutunut
sydämettömän, häpeämättömän, langenneen naisen rahanhimon ja
huvitteluhalun uhriksi. Mitä hän mahtoi sille, että hänkin kerran oli
sattunut rakastumaan…

Oliko hän ansainnut elämältä moisen osan? Omin voimin, ilman


typerän isänsä apua, hän oli ponnistellut eteenpäin ja hankkinut
itsellensä huomattavan, kunnioitettavan aseman. Hänen
asianajotoimistonsa olisi varmasti kannattanut hyvin, ellei tuo kirottu
rakkaus olisi tullut kaikkea sekoittamaan, se kun oli vienyt niin paljon
hänen työkyvystään ja ajastaan…
Hän ja hänen toverinsa, tuomari Tyrkkö, olivat alkaneet verrattain
kauniisti, niin, melkeinpä loistavasti. He olivat ilmoittaneet ottavansa
ajaakseen mitä asioita hyvänsä, ja saadakseen kundeja olivatkin he
aluksi ryhtyneet sangen epäilyttäviinkin asioihin käsiksi. Olihan kyllä
hiukan vaarallista, jos heidän toimistonsa saisi kevyen maineen
ammattitoverien piirissä, mutta mikä asianajotoimisto nyt itse
asiassa oli niin täydellinen, antoivathan ne useimmat toivomisen
varaa, ja jos niitä vain olisi alkanut tonkia, olisi kait niissä voinut olla
kylläkin muistuttamisen aihetta… Yksi katsoi sopivaksi ajaa
tämänluontoisia asioita, toinen tuonluontoisia. Pääasia oli, että kansa
riiteli ja prosessasi, ja siinä suhteessa Suomen kansa oli
ihannekansa, ja lakimiehet ansaitsivat paljon rahoja. Mutta hitto
vieköön, Tyrkkö ja hän ansaitsivat sittenkin liian vähän…

Hyvin tuottava oli ollut heidän keksintönsä vuokrata yksityisiä,


itsenäisesti toimivia salapoliiseja, jotka työskentelivät kaupungeissa
ja matkustelivat tarpeen tullen maaseudullekin. Sekä aviovaimot että
aviomiehet olivat suurella menestyksellä käyttäneet heitä
puolisoidensa uskottomuutta vakoillessaan näinä turmeltuneina
aikoina. Varsinkin naiset olivat olleet tyytyväisiä ja maksaneet hyvästi
tiedoista, joita olivat saaneet, sillä heidän liikkeensä salapoliisit
liikkuivat hyvin puettuina kaikissa ensiluokkaisissa ravintoloissa ja
tekivät pikkutunneilla herrojen kanssa tuttavuutta saaden usein
monta tärkeätä, valaisevaa tietoa…

Sekin etu näistä yksityisistä salapoliiseista oli ollut, että ne


tiedonannoillansa aiheuttivat useita avioeroja, jotka heidän
toimistonsa sitten virallisesti välitti. Mutta suuresti katsoen kävi
heidän liikkeensä sittenkin huonosti…
Hän olisi mielellänsä ruvennut harjoittamaan rahan lainausta
ehkäpä lain kieltämää suurempaa korkoakin vastaan, sillä se olisi
ollut kyllä tuottavaa, mutta ensinnäkään ei hänellä ollut tarvittavaa
kapitaalia, eikä toiseksi rahan kysyntä näin sota-aikana, jolloin sitä
oli niin viljalti maassa, olisi ollut kylliksi suuri…

Hänen olisi pitänyt saada jokin tuottavampi toimi, mutta mistäpä


sen nyt otti? Ja olihan asianajajan toimi yleensä kaikkein parhaimpia.
Panttilainastonkin järjestäminen oli liian monimutkaista….

Siitä juristit olivat siunattuja ihmisiä, että ne eivät juuri parjanneet


tai arvostelleet ammattitovereitansa. Eivät ainakaan julkisuudessa.
Vaan jos sellaista joskus tapahtui, niin se sattui ehdottomasti
taatussa seurassa ja toisen parasta tarkoittaen. Oikein häntä
nauratti, kun hän ajatteli, kuinka taiteilijamaailmassa, johonka hän
oli tutustunut Martta Hagenin kautta, vallitsi aivan päinvastainen
tapa tai periaate…

Ei ollut ainuttakaan taiteilijaa hänen tuttavapiirissään — vaikka


eiväthän kaikki olleet todellisia taiteilijoita, sillä taiteilijakäsite oli
oikeastaan hyvin laaja — joka ei ilolla olisi parjannut toisia
taiteilijoita. He tiesivät aina kertoa eräitä valaisevia, vähemmän
edullisia seikkoja sen ja sen työstä ja ennen kaikkea
yksityiselämästä. Totta oli myöskin, että eivät ketkään kehuneet
toisiansa niin vasten kasvoja kuin taiteilijat. He olivat todella kuin
pienet lapset, he suorastaan elivät kohteliaisuuksista ja hyvistä
arvosteluista…

Mutta hehän olivatkin julkisia henkilöitä sanan kaikissa


merkityksissä, heidän työnsä ja persoonansa oli aina julkisen
arvostelun esineenä. Sanomalehtien apokryfiset nimimerkit
saattoivat nostaa ja kaataa keitä hyvänsä. Mutta juristeilla oli se
harvinainen onni, että heidän tuomionsa, olivatpa ne kuinka heikkoja
hyvänsä, eivät ainakaan tulleet kenenkä hyvänsä arvosteltaviksi.
Ainakin vaadittiin siihen ammattimiestä…

Hän oli sittenkin valinnut ihanan alan ja turvallisen elämänuran.


No, eihän se nyt aina ollut niin turvallinenkaan, saattoihan sitä
helposti päästä vähäksi aikaa linnaankin »tiilenpäitä lukemaan»,
mutta silloinkin voi järjestää niin, että sai istua rangaistuksensa
vankilassa, jonka tirehtöörin kanssa oli juonut sinuttelumaljan…

Taiteilijat, äss, mitä ne häntä liikuttivat! Harmiksensa hän huomasi,


että Martan maailma oli vähitellen vallannut hänen
mielikuvituksensakin. Hän oli sittenkin liiaksi kiintynyt häneen… Hän
hermostui…

Mitä tekemistä hänellä oli taiteilijoiden kanssa? Olivathan ne


hauskoja seuraihmisiä, ja niillä oli kaikenlaisia hauskoja konsteja,
joita muilla kuolevaisilla ei ollut. Tuomari Tyrkkö sanoi aina
humalassa, että ei kenenkään kanssa ollut niin hauska ryypätä kuin
taiteilijoiden, kapakanisäntien, huonomaineisten naisten ja rappiolle
joutuneitten herrojen kanssa. Kaikilla niillä oli joitakin erikoisia
elämänkokemuksia ja erikoisia päähänpistoja, ja oikeassa hän oli…

Mutta kun hän enemmän ja enemmän ajatteli taiteilijoita ja muisti


mustelmansa ja kipeän leuan, jotka kaikki kauniit joululahjat hän oli
saanut taiteilija Hertelliltä, niin hän sydäntyi uudestaan…

Mitä hän sieltä oli hakenut? Tietysti sitä ainaista Marttaa. Minkä
hän mahtoi tunteellensa ja onnettomuudelleen. Mutta sitten hän
alkoi muistella, mitenkä hän oikeastaan oli tutustunut Marttaan. Hän
vihasi sitä henkilöä, joka oli hänet esittänyt tuolle sybariitille, tuolle
viheliäiselle velholle. Mutta sitten hän muistikin, ettei siinä ollut
tapahtunut mitään esittelyä, itsestäänhän se oli käynyt, ja sinne oli
hänet hommannut ajuri….

— Äss! — samassa hän muisti, että sekin ajuri oli maksamatta. —


Maksamatta, maksamatta ja aina vain maksamatta. Millä Herran
nimessä hän saattoi rahaksi muuttua? — Hän hermostui
pahanpäiväisesti, sytytti sikarin ja sieppasi sanomalehden pöydältä.
Jonkun aikaa selailtuaan sitä hän näki, että tohtori Hakalan
Kaivopuistossa oleva huvila oli palanut uudenvuodenyönä.

— No, sehän oli hauskaa, että sillekin pohatalle sattui joku


kommellus. Se olikin aina niin mahtava rikkaudessaan. Vaikka tietysti
se vain rikastuu tästä, luonnollisesti sillä oli suuret palovakuutukset.
Kun ei vain siinä pelissä olisi koira haudattuna, — ajatteli hän jo
kaikkea ja kaikkia epäilevänä lakimiehenä. — Tuo juttu joulukuusesta
tuntuu niin tekaistulta. Sietäisi oikeastaan tutkia vähän lähemmin
sitäkin asiaa. Sehän on sen viheliäisen Martan serkku vai mikä lie…

Mutta hänen leukaansa kivisti yhä, niin että hänen täytyi hiljaa
itseksensä kiroilla.

Ei, kyllä hän nostaa kanteen taiteilija Hertelliä vastaan


pahoinpitelystä, ja myöskin sitä letukkaa, Martta Hagenia vastaan
pahoinpitelyyn yllyttämisestä. Saakoot sakkoa, jos sillä pääsevät, se
on joka tapauksessa skandaali. Kyllä hän saa todistajia ja
raskauttavia asianhaaroja…

Hän oikein innostui kuvitellessaan kaikkia niitä seikkoja, joilla hän


kostaisi kärsimänsä vääryyden. — Nostaa prosessi, nostaa prosessi,
se oli hänen tunnuslauseensa, ja nyt hän sen kerran nostaa oman
asiansa puolesta. Hän oli puolustanut menestyksellä niin monia
vääriä juttuja, että hän varmasti voittaisi tässä omassa asiassaan,
joka kaiken lisäksi oli oikea…

Martta oli häntä kiristänyt ja suorastaan ryöstänyt. Martta oli


saattanut tuhlailullaan hänet vararikon partaalle. Jos hän olisi saanut
Martan linnaan, olisi hänen ollut koko joukon helpompi olla. Siellä se
tyttö ei ainakaan olisi voinut pettää häntä. Niin, hän rakasti häntä
sittenkin, hän oli mustasukkainen ja onneton, hyvin onneton…

Jos edes olisi saanut todistetuksi, että Martta oli yleinen nainen,
niin olisi saanut hänet poliisin kirjoihin. Mutta miten? — Silloin
muistui hänen mieleensä ajuri, joka oli tutustuttanut hänet Marttaan.
Hän päätti heti lähteä ottamaan asiasta selvää.

Hän suuntasi kulkunsa poliisikamarin osoiteosastolle ja sai tietää,


että Janne Pöyhtäri ei enää toiminut ajurina, vaan oli ruvennut
palosotilaaksi. Paloasemalla hän sai kuulla, että Pöyhtäri oli
toissaöisessä tulipalossa pahasti palanut ja makasi Kirurgisella
sairashuoneella. Kun hän vihdoin saapui sinne, ilmoitettiin, että
sairaan huonon tilan tähden ei hänen luokseen päästetty ketään.

Tuomari Katajistoa harmitti. Hänenkin uusi vuotensa oli alkanut


huonosti…
XI

Lukukausi yliopistossa oli taas alkanut, ja nuoriso palasi joukolla


joululomaltaan pääkaupunkiin. Lahja Kaariokin saapui reippaana ja
punaposkisena. Hän ei ollut lukenut koko loman aikana
sanomalehtiä, sillä hän tahtoi levätä täydellisesti välittämättä
mistään maailman tapahtumista, jotka eivät liikuttaneet häntä.
Eiväthän ne sisältäneet muuta kuin sotauutisia, joista ei kuitenkaan
paljoa viisastunut. Ihmisten hermot tottuvat niin pian kaikkeen.
Vaikka lehdet kertoivat, kuinka tuhannet ja taas tuhannet ihmiset
kuolivat sotanäyttämöllä, kuinka laivoja vaipui merenpohjaan yhtenä
viikkona useampia kuin ennen vuodessa, ja vaikka miltei koko
maanpiiri vuosi verta, paloi ja kärsi kaikenlaista puutetta, niin
rauhassa asuvien ihmisten mielestä sanomalehdet sisälsivät sittenkin
niin kovin vähän ja olivat epäintresantteja…

Senpätähden hänen hämmästyksensä oli miltei jähmetyttävä, kun


hän eräänä tammikuun aamuna saapui Kaivopuistoon tullaksensa
tohtori Hakalan luo hänen vastaanottotunnillaan. Huvila seisoi kyllä
siinä paikallaan, mutta sen yläkerta oli musta ja korjauksen alaisena.
Työmiehiltä hän sai kuulla, että tohtori Hakala asui nykyään
Kruununhaassa Konstantininkadun varrella eräässä isossa kivitalossa.
Kun hän seuraavana päivänä istui tohtorin uudessa salissa ja
odotti vuoroansa, valtasi hänet kummallinen epävarmuus.

Mitähän oikeastaan oli tapahtunut? Miksi ei tohtori ollut kirjoittanut


hänelle kertaakaan koko aikana? Eiköhän tohtori ollutkaan saanut
hänen kirjeitänsä, vai olivatko ne joutuneet sopimattomiin käsiin?

Astuessaan tohtori Hakalan huoneeseen hän tunsi pientä pelkoa.


Tohtori tervehti häntä kohteliaan kylmästi ja käski istumaan. Ei
mitään syleilyjä, ei mitään suudelmia, ei edes lämmintä katsetta.
Lahjaa vilusti…

— Sinä olet voinut hyvin, Lahja, tänä aikana? — kysyi Albert.

— Kyllä, kiitoksia!

— Minua on kohdannut tänä aikana onnettomuus, oletko kuullut


siitä?

— Olen.

— Oletko sinä miettinyt laudatuurikirjoitustasi?

— Olen.

— Koskeeko se niiden kirjailijoiden onnetonta rakkaustarinaa?

Lahja purskahti itkuun…

— Mikä sinun on? — kysyi Albert neuvottomana.

— Sinä et rakasta minua enää?

— Minä en saa rakastaa sinua enää…


Welcome to our website – the ideal destination for book lovers and
knowledge seekers. With a mission to inspire endlessly, we offer a
vast collection of books, ranging from classic literary works to
specialized publications, self-development books, and children's
literature. Each book is a new journey of discovery, expanding
knowledge and enriching the soul of the reade

Our website is not just a platform for buying books, but a bridge
connecting readers to the timeless values of culture and wisdom. With
an elegant, user-friendly interface and an intelligent search system,
we are committed to providing a quick and convenient shopping
experience. Additionally, our special promotions and home delivery
services ensure that you save time and fully enjoy the joy of reading.

Let us accompany you on the journey of exploring knowledge and


personal growth!

ebooknice.com

You might also like