What books to read in lockdown
Alexey Mitsuk, Senior Research Fellow:Laboratory of Process-Aware Information Systems (PAIS Lab)
For prospective programme engineers, I would recommend two books. The first one is Code Complete by Steve McConnell. I read it not in one sitting but several rounds. Moreover, I re-read it occasionally. The first reading must have been in 2006-09 while studying at the university.
There is a huge number of important and useful strategies to develop the kind of code usually perceived as good.Other topics like software architecture development, coding techniques, testing, and integration are also discussed. One of Steven’s key concepts is Big Design Up Front. Unfortunately, this concept is not very popular with programmers today, which also explains many of the present system problems. The point is to think software through and consciously plan it instead of “coding” haphazardly with just a specification in mind. I wouldn’t say that this book changed my approach to software development outright. I truly appreciated the value of many ideas in the book after years of practical work. However, I think Code Complete is one of the most useful books for programme engineer to-be. One review said that this book teaches wise coding. I think it is up to the point.
The second book is The Mythical Man-Month: Essays on Software Engineering by Frederick Brooks. I first read it in the early 2010s, though the book is much older.
For me, the key concept of The Mythical Man-Month is that there is no universal solution in practical programme engineering. No development process or technology can solve fundamental problems and difficulties of system development. Therefore, developers have to struggle at task formalization, subject analysis and description, and teamwork. Present “ideal and perfect” software architecture built through fashionable libraries and programming languages will doubtlessly become “outdated, slow, and boring” in 10 or 15 years. This is a very “sobering” book if this term can be applied to a technical book. It is best read with some experience of the real teamwork development project.
I advise reading these two books because their major ideas do not age. At least they have not aged until now. It is wise to think that they will remain relevant in the near future.
Yulia Khanzhina, Manager at Office for Alumni Relations and Career Development
I have been looking into the field of education from my freshman year. At first, there were career guidance camps for PhD applicants, now it’s the Faculty of Computer Science. Once during a business trip, I was talking to an old friend who worked on Teacher for Russia project. We talked about her work and alternative education. She recommended, among other things, The Other School. Where Do Normal People Come From – an amazing book by Alexander Murashev. I had a lot of time on my trip, so I could read it from cover to cover.
What is this book about? It is no secret that contemporary school does not work. Being able to access any sort of information just by pushing a button, it is no use to learn some “sacred” knowledge at school. It is right to ask why we still need schools. Alexander Murashev, a Russian journalist, travelled for a year, visiting unusual alternative education schools and camps of the world (and a few Russian ones) to answer this tough but vital question. He builds this new image of alternative education piece by piece. What if children were put in classes according to their interests? What if they study phenomena, not subjects? What if the school is controlled solely by an omnipotent children parliament?
Reading the book chapter after chapter, I found myself willing to have been studying in suchlike schools. Through this book, one sees the other type of education. It is necessary to read this book to better understand the learning process, to see the alternative schools. Faculty of Computer Science students will be especially interested in chapter eleven 42: The Answer To The Main Question on the French coding school 42 and its Russian counterpart, School 21.
Ekaterina Artemova, Research Fellow:Laboratory for Models and Methods of Computational Pragmatics
There are two childhood stories about reading. When I was very little, my father read to me every night. I quickly grew tired over fairytales, and father started reading excerpts from the adult books. I must have been five when he read an excerpt from Bulgakov’s The Master and Margarita about Stepa Likhodeev’s awakening. This faithful description of hangover frightened me so that I was afraid of alcohol for a long time.
One book recommended by my parents has rather deteriorated my reputation at school. While the literature teacher – a very dull Soviet lady – explained Vasily Terkin, I was secretly reading The Life and Extraordinary Adventures of Private Ivan Chonkin. Our family loves Voinovich’s books, and we often exchange quotes from them.
The explicit likeness of the names did let me down. When I had to answer questions and write an essay, I mixed everything up and said Chonkin instead of Terkin. The teacher reprimanded me and remembered my passion for indecent reading for quite a while.
As for professional literature, I would name Speech and Language Processing by Stanford professors Dan Jurafsky and James Martin. It was first published in the mid-2010s. The authors are preparing the new edition since. Automatic language processing evolves rapidly, so the authors had to publish several updates per year concerning new tasks and models. They can’t tell when their work is completed. I think this is a true example of researchers’ work – to learn, to find, and to rethink new ideas constantly.