My Last Program Committee Meeting?

This month, I participated in what may very well have been my last physical program committee (PC) meeting, for ESEC/FSE 2018. In 2017, top software engineering conferences like ICSE, ESEC/FSE, ASE and ISSTA (still) had physical PC meetings. In 2019, these four will all switch to on line PC meetings instead.

I participated in almost 20 of such meetings, and chaired one in 2017. Here is what I learned and observed, starting with the positives:

  1. As an author, I learned the importance of helping reviewers to quickly see and concisely formulate the key contributions in a way that is understandable to the full pc.

  2. As a reviewer I learned to study papers so well that I could confidently discuss them in front of 40 (randomly critical) PC members.

  3. During the meetings, I witnessed how reviewers can passionately defend a paper as long as they clearly see its value and contributions, and how they will kill a paper if it has an irreparable flaw.

  4. I started to understand reviewing as a social process in which reviewers need to be encouraged to change their minds as more information unfolds, in order to arrive at consensus.

  5. I learned phrases reviewers use to permit them to change their minds, such as “on the fence”, “lukewarm”, “not embarrassing”, “my +1 can also be read as a -1”, “I am not an expert but”, etc. Essential idioms to reach consensus.

  6. I witnessed how paper discussions can go beyond the individual paper, and trigger broad and important debate about the nature of the arguments used to accept or reject a paper (e.g. on evaluation methods used, impact, data availability, etc)

  7. I saw how overhearing discussions of papers reviewed by others can be useful, both to add insight (e.g. additional related work) and to challenge the (nature of the) arguments used.

  8. I felt, when I was PC co-chair, the pressure from 40 PC members challenging the consistency of any decision we made on paper acceptance. In terms of impact on the reviewing process, this may well be the most important benefit of a physical PC meeting.

  9. I experienced how PC meetings are a great way to build a trusted community and make friends for life. I deeply respected the rigor and well articulated concerns of many PC members. And nothing bonds like spending two full days in a small meeting room with many people and insufficient oxygen.

I also witnessed some of the problems:

  1. My biggest struggle was the incredible inefficiency of PC meetings. They take 1-2 days from 8am-6pm, you’re present at discussions of up to 100 papers discussed in 5-10 minutes each, yet participate in often less than 10 papers, in some cases just one or two.

  2. I had to travel long distances just for meetings. Co-located meetings (e.g. the FSE meeting is typically immediately after ICSE) reduce the footprint, but I have crossed the Atlantic multiple times just for a two day PC meeting.

  3. My family paid a price for my absence caused by almost 20 PC meetings. I have missed multiple family birthdays.

  4. The financial burden on the conference (meeting room + 40 x dinner and 80 lunches, €5000) and each PC member (travel and 2-3 hotel nights, adding up easily to €750 per person paid by the PC members) is substantial.

  5. I saw how vocal pc members can dominate discussions, yielding less opportunity for the more timid pc members who need more time to think before they dare to speak.

  6. I hardly attended a PC meeting in which not at least a few PC members eventually had to cancel their trip, and at best participated via Skype. This gives papers reviewed by these PC members a different treatment. As PC chair for ESEC/FSE we had five PC members who could not make it, all for valid (personal, painful) reasons. I myself had to cancel one PC meeting a week before the meeting, when one of my children had serious health problems.

  7. Insisting on a physical PC meeeting limits the choice of PC members: When inviting 40 PC members for ESEC/FSE 2017, we had 20 candidates who declined our invitation as they could not commit a year in advance to attending a PC meeting (in Buenos Aires).

Taking the pros and cons together, I have come to believe that the benefits do not outweigh the high costs. It must be possible to organize an on line PC meeting with special actions to keep the good parts (quality control, consistent decisions, overhearing/inspecting each others reviews, …).

I look forward to learning from ICSE, ESEC FSE, ISSTA and ASE experiences in 2019 and beyond about best practices to apply for organizing a successful on line PC meeting.

In principle, ICSE will have on line PC meetings in 2019, 2020, and 2021, after which the steering committee will evaluate the pros and cons.

As ICSE 2021 program co-chairs, Tao Xie and I are very happy about this, and we will do our best to turn the ICSE 2021 on line PC meeting into a great success, for the authors, the PC members, and the ICSE community. Any suggestions on how to achieve this are greatly appreciated.

T-Shirt saying "Last PC Meeting Ever?"

Christian Bird realized the ESEC/FSE 2018 PC meeting may be our last, and realized this nostalgic moment deserved a T-shirt of its own. Thanks!!


(c) Arie van Deursen, June 2018.

Academic Hour Tracking: Why, When, How

One tool I find indispensible in managing my time is keeping track of how I spend my working hours. During the past years, I have tracked my time at the hour level, split across around 20 tasks, grouped into three high level categories corresponding to my main responsibilities (management, research, teaching).

Keeping track of hours has helped me as follows:

  1. Formulating a strategy: Thinking in terms of hours spent per week, forces me to formulate a bigger strategy on how I wish to spend my time: I want to work around 40h per week, divided evenly over management, research, and teaching.

  2. Identifying time sinks: Activities that take more time than expected become visible. This need not be a problem per se, but making time sinks explicit helps me to adjust the planning of my other activities.

  3. Keeping commitments: Seeing my time spent helps me understand if I keep my commitments. For example, my hour sheets will tell me when I spent substantially less time on one PhD student compared to another, so that I can take action.

  4. Rewarding myself: When I’m in a week with, e.g., clearly too much management, I have a good reason to cut down organizational duties the next week, and engage in some research instead (without feeling “guilty” about this).

  5. Planning my work: My sheets of the previous year help me in planning the current year.

  6. Organizational change: Knowing how much time activities take gives me a great starting point for an informed debate about organizational change — within the department, university, with my boss, or in my research community.

  7. Slowing down: My sheets tell me when there is a busy period, and that I need to slow down.

  8. Regaining control: Stress is a factor in (academic) life, and I’m not immune to it. Regaining control over my time by seeing what I do is a stress management tool I can’t live without.

My approach to keeping hours is simple and low tech: I just use a spreadsheet:

  • It has columns for my activity types (around 20) grouped together into three high level categories.

  • It has one row for each day

  • A cell contains the number of hours spent on an activity on a given day. I always use round numbers (full hours), but I know others who track at the level of 15 minutes.

  • The top row aggregates the time and percentages of the activities: I can, e.g., see that I spent 10% of my time on course X, and 5% of my time reviewing for conference Y.

  • I have aggregating columns giving the time spent that day, the total time spent the last week, and the average time spent per week over the full measuring period.

I typically use a spreadsheet for half a year, and then start a fresh one with adjusted columns. Whenever activities take more than 10%, I try to split them into different smaller ones, to better see what is taking so much time.

The bigger categories can sometimes raise interesting questions: Is reviewing research? Is project acquisition and proposal writing research? Is supervising a master student research? But whatever the categories, these activities take time, and monitoring them makes explicit how much.

I usually fill in my spreadsheet at the end of the day or the end of the week. I use my memory, calendar, and sometimes my email archives to remember what I did. For my purposes, this is sufficiently precise. Filling in the sheet takes me less than 15 minutes — and while filling it in I am forced to reflect on how I spend my time.

If you’re interested in following a similar approach, I’ve created a template empty spreadsheet for download. An alternative is to use the BubbleTimer app and service (which Jonathan Aldrich uses).

If you’re struggling with your time try out tracking it: it has helped me, and hopefully it will help you too!


(c) Arie van Deursen, April 2018. CC-BY-SA-4.0.


horloge strassbourg

Image: Astronomical clock, Strasbourg. Credit: Pascal Subtil, Flickr, CC-BY-2.0

TU Delft Computer Science is Hiring!

Studying Computer Science at Delft University of Technology has become immensely popular: our student numbers have shown double digit growth for seven years in a row, with record enrollments expected for 2018/2019.

To handle this demand in computer science education, we have a number of exciting teaching-related vacancies available:

Together with our current faculty, it will be your job to help educate future generations of computer scientists using the latest teaching methods.

The faculty’s main educational programs in computer science include a three-year bachelor programme in Computer Science and Engineering, a two-year master program in Computer Science (with main tracks in Software Technology and Data Science & Technology) and a two-year master program in Embedded Systems. The faculty offers a recently renewed minor in the third bachelor year for non-computer science students of Delft University of Technology in the area of Software Design & Data Science. Through its participation in EdX, the faculty offers a series of highly successful computer science MOOCs. All programmes are lectured in English.

Bachelor courses have enrollments of hundreds of students. Such courses are lectured by a teaching team, including professors, educators, and up to 30 teaching assistants. Master-level courses are typically lectured in smaller groups of up to 100 students, and are closely related to research carried out in the Computer Science Departments. Both the bachelor and the master are concluded with an individual research thesis (of 15 and 45 credit points, respectively).

The faculty’s research in computer science is internationally leading and conducted in the departments of Software Technology and Intelligent Systems. The two departments consist of in total 11 sections, which together are active in all core disciplines of computer science. Furthermore, the faculty conducts research in various themes that crosscut disciplines and other faculties, such as data science, cyber-security, blockchain, and Internet of Things.

To ensure continued high quality research and education, the faculty is in the process of strengthening its Computer Science Teaching Team. Responsibilities of the teaching team include supporting all bachelor-level education, co-teaching selected courses, managing a group of around 150 teaching assistants, supporting educational innovation, and blending on line and on campus education. Teaching team members with research responsibilities will also be attached to one of the research sections of the faculty. All teaching staff has the opportunity follow teaching training, leading to a University Teaching Qualification (UTQ).

Screening of applications will begin April 3, 2018 and will continue until all required positions are filled.

The anticipated starting date for all positions is as soon as possible. Interested applicants are advised to apply as early as possible. A trial lecture (except for the educational software developers) will be part of the interview.

To apply, follow the procedure as described in the vacancies: For further information, feel free to contact me. We look forward to your application!!

Image credit: @Felienne.

Academic Leadership, Module 1

Last week I participated in the first (two day) module of a six month TU Delft course on “Academic Leadership” — a course so successful it has been taught every single year for the past 32 years.

Maybe the most impressive content comes from the participants themselves (16 in total this year), who serve in different leadership roles at TU Delft. Participants can bring in “cases” they are currently struggling with — my case relates to moving my department to a new building (with less space for the 150 people involved). The participants can ask questions about these cases, often reflecting their own experience in dealing with similar cases. The questions not only help to drill down to the essence of the case, but also to the (possibly deeply personal) reasons behind the struggle at hand.

The format for this participatory content is that of “intervision“, which in English translates to “peer supervision”. It is a technique common among (mental) health care professionals, to exchange their experiences, to analyze how they handle a given complex situation, and to reflect collectively on their professional conduct.

The intervision in this course takes place in smaller groups of four, under the guidance of a coach. In a series of sessions, each participant gets one afternoon to present his or her case, and to discuss it in depth in a trusted, fully confidential setting. A few years back I participated in such an intervision, and I look forward to doing this again.

The actual course content of the first module came from Mathieu Weggeman, a professor and consultant who specializes in management of knowledge-intensive organizations. His lecture carried the title of his book Managing Professionals? Don’t!, emphasizing that professionals usually work best when their managers take a step back. No more “planning and control”, but a focus on shared ambition and employee expertise. I’m sure this resonates with many academics.

Weggeman spent considerable time discussing the characteristics of leaders in excellent professional organizations. Such leaders:

  • develop, together with all employees, a shared ambition;
  • inspire people, and involve them in the organization’s strategy to materialize the ambition;
  • communicate fairly and timely: they are available, and they listen (think management by walking around);
  • are clear about the desired output, and offer clear feedback;
  • are assertive towards employees who are not good at their job anymore;
  • function as “heat shield” against “noise from above”
  • have an authoritative yet serving and humble attitude

Weggeman connected this to a quote from Laozi (老子, 6th century BC):

A leader is best when people barely know he exists,
not so good when people obey and acclaim him,
worse when they despise him.
But a good leader, who talks little, when the work is done, his aim fulfilled,
they will say:
We did it ourselves.

Weggeman also discussed tools to diagnose and design organizations. Such tools need to distinguish (1) setting goals, (2) designing the organization, and (3) executing a strategy to meet the stated objectives — in Dutch nicely summarized as richten, inrichten, verrichten. Weggeman explained how such activities can be influenced through organizational “design variables”, which he (loosely) based on McKinsey’s 7S Framework. This framework distinguishes seven elements, described as (wikipedia):

  • Strategy: Purpose of the business and the way the organization seeks to enhance its competitive advantage.
  • Structure: Division of activities; integration and coordination mechanisms.
  • Systems: Formal procedures for measurement, reward and resource allocation.
  • Shared Values: Included in culture by Weggeman, who also includes in culture the way of working derived from these values.
  • Skills: The organization’s core competencies and distinctive capabilities.
  • Staff: Organization’s human resources, demographic, educational and attitudinal characteristics.
  • Style: Typical behavior patterns of key groups, such as managers, and other professionals

McKinseys 7S Framework

The basic premise of this framework is that these seven internal aspects of an organization need to be aligned, and that they are interrelated: Changing one element will affect the others.

As any good management consultant, Weggeman was full of quotes. To explain the need for a shared ambition, he quoted Nietzche:

He who has a ‘why’ to live for can bear almost any ‘how’.
(“Hat man sein warum des Lebens, so verträgt man sich fast mit jedem wie”, translation by Frankl)

As an academic, it is easy to get lost in the fights of the “how” (getting tenure, submitting a paper, writing a review, applying for funding, managing the class room, handling Blackboard Brightspace, etc., etc.). And naturally, it is our collective duty to improve the ‘how’ wherever we can.

But our ‘why’ is clear: Driven by curiosity, we train young people to become the world’s leading computer scientists and software engineers, and we push the boundaries of what the world knows about computer science. And this we want, in the words of the late David Notkin, “so that society can benefit even more from the amazing potential of software.”

Current Dutch Ius Promovendi Considered Harmful

The Dutch regulations on granting PhD degrees are a disgrace. Unlike most other countries, The Netherlands only gives full professors the right to award a PhD (the full professor has the “ius promovendi”). Thus, in the current regulations, if you’re an assistant or associate professor supervising a PhD student, you will need to find a full professor (deemed “the promotor”) who will be fully responsible for the entire PhD process, even if you’re planning to do all supervision yourself.

I am relieved that this miserable rule is about to change: February 23rd of this year, the Dutch parliament (Tweede Kamer) has passed an Internationalization Law to bring PhD supervision more in line with the rest of the world (for an English summary, see this Science Guide article).

However, the vote for this law in the Dutch Senate (Eerste Kamer) still needs to take place, scheduled for June 6. Much to my surprise, the preliminary reports by the Senate committee raised all sorts of concerns. The senators advocate a hierarchical model in which the full professor is “responsible for the discipline” — a notion at odds with the modern principal investigator approach in which all researchers are peers. The senators are afraid of “undesirable friction”, thereby assuming that making the roles of co-advisors explicit increases rather than decreases friction. The senators gratuitously worry that extending the ius promovendi to non-full professors will reduce the quality of the supervision. The senators argue that granting the right to supervise at the end of a career, is an attractive way of encouraging young professors to engage in such a career. Lastly, in line with the advice of the Raad van State, the senators wonder “whether there is a real problem requiring a new law”.

Answers to these concerns and questions will be provided by the Dutch Minster of Education, after which the senators will vote. Despite the senators’ concerns, the general expectation is that the law will pass. In preparing her answer, the minister can use a wide range of documents arguing the need for this change, e.g., by the Young Academy and the ILLC Research School.

The Dutch Young Academy lists nine key concerns with the current regulation. They argue that the current law is disconnected from reality in academic life, resulting in insufficient recognition (in reputation, financially, and when competing for grants) for the non-full professors involved. The Young Academy also points out that the present situation makes The Netherlands unattractive for talented researchers seeking to pursue an academic career in The Netherlands (as a point of reference, in my department half of the faculty is non-Dutch). Besides this, the ILLC in its letter (in English) to the executive board of the University of Amsterdam emphasizes problems related to quality control, arguing that in many areas it will be hard to find a full professor who is the actual expert in the field.

Yet besides being problematic for assistant and associate professors, restricting formal responsibility for PhD supervision to full professors directly hurts PhD students:

  • It can lead to unclear expectations at the very start of a PhD project, when students deciding whether to accept a PhD position need to understand whether they will be working with the full professor or the non-full professor doing the daily supervision.

  • It can lead to confusion during the PhD project, for example when the full professor and co-advisor express different ideas or opinions. Since the full professor is in a position of power, the student may be reluctant to disagree with the full professor.

  • It can lead to an unclear CV of the student, who needs to explain the role of extra advisors (and sometimes even extra co-authors) to new international employers unfamiliar with the Dutch laws.

  • It can lead to publication restrictions for the PhD student, even if the full professor abstains from active involvement in the research. A case in point are ACM rules that in a strict interpretation forbid research students to submit a paper if their advisor is program chair even if that advisor ultimately has a mere ceremonial role in the PhD project. Extra advisors here means fewer publication options.

In the past 10 years, I witnessed each of these problems in my many interactions with PhD students and co-advisors under the Dutch regulations (I have worked with seven different non-full professor co-supervisors, and with over 35 past and current PhD students). In my group we try to take the most liberal interpretation of the regulations, handing over supervision responsibilities to the co-advisors as much as possible. Despite this, the bizarre limitations for non-full professors percolate through the PhD process, and affect all involved negatively.

To remedy these problems, I trust the senate will vote in favor of the changes to the law.

After that, it is up to the universities to take advantage of this law, and change their own doctoral regulations. The ILLC has various useful suggestions. For example, they call for always appointing two supervisors (a good idea already in place at various universities). Given the new law, it then becomes possible to make the young assistant professor (who, e.g., has obtained the grant) the primary supervisor, and to involve a second supervisor in a more advisory role (i.e., not carrying executive responsibility for the success of the PhD). Drafting these new regulations in a way that is most beneficial to the PhD students, and getting them approved will take some time, but I am confident the improvement will be worth the effort.

I call on all Dutch senators to vote in favor of the new law. Once approved, I expect that Dutch universities will revise their doctoral regulations to make full use of the new legal possibilities, to the benefit of PhD students in The Netherlands and (young) faculty alike. Where needed, I pledge to use my influence, for example as head of department at TU Delft, to make this happen.


UPDATE 7 June 2017: In response to the questions from the Dutch senators, the VSNU (the Association of Dutch Universities) and the presidents of the Dutch Universities provided an addendum explaining how they would implement the law in their regulations. In particular, this addendum emphasizes that universities will grant the “ius promovendum” to associate professors (“UHDs”), but not to assistant professors. Given this addendum, the Senate passed the internationalization law on June 6, 2017.


Image credit: Joachim Schlosser, Flickr.

Managing Complex Spreadsheets — The Story of PerfectXL

This week we finished grading of the software architecture course I’m teaching.

Like many teachers, I use a spreadsheet for grading together with my co-teachers and teaching assistants. In this case, we concurrently worked with five people on a Google Spreadsheet. The resulting spreadsheet is quite interesting:

  • The spreadsheet currently has 22 sheets (tabs)

  • There are input sheets for basic information on the over one hundred students in the class, the groups they form, and the rubrics we use.

  • There are input sheets from various forms the students used to enter course-related information

  • There are input sheets for different sub-assignments, which the teachers and assistants use to enter subgrades for each rubric: Some grades are individual, others are per team. Such sheets also contain basic formulas to compute grades from rubrics.

  • There are overview sheets collecting the sub-grades from various sheets, combining them to overall grades. The corresponding formulas can become quite tricky, involving rounding, lookups, sumproducts, thresholds, conditional logic based on absence or presence of certain grades, etc.

  • There are various output sheets, to report grades to students, to export grades to the university’s administrative systems, and to offer diagrams showing grade distributions for educational assessments of the course.

The spreadsheet used has a history of five years: Each year we take the existing one, copy it, and remove the student data. We then adjust it to the changes we made to the course (additional assignments, new grading policies, better rubrics, etc).

Visualization of sheet dependencies

All in all, this spreadsheet has grown quite complex, and it is easy to make a mistake. For example, I once released incorrect grades — a rather stressful event both for my students and myself. And all I did wrong was forgetting the infamous false argument needed in a vlookup — despite the fact that I was well aware of this “feature”. For the this year’s spreadsheet we had duplicate student ids, in a column where each row had to be unique, leading to a missing grade, and again extra effort and stress to resolve this as soon as possible.

I suspect that if you use spreadsheets seriously, for example for grading, you recognize the characteristics of my spreadsheet — and maybe your sheets are even more complicated.

Now I have an interest in spreadsheets that goes beyond that of the casual user: As a software engineering researcher, I have looked extensively at spreadsheets. I did this together with Felienne Hermans, first when she was doing her PhD under my supervision in the context of the Perplex project (co-funded by Microsoft) and then in the context of the Prose project (funded by the Dutch STW agency). From a research perspective, these projects were certainly successful, leading to a series of publications in such venues as ECOOP 2010, ICSE 2011-2013, ICSM, EMSE, and SANER.

But we did our research not just to publish papers: We also had (and have) the ambition to actually help the working spreadsheet user, as well as large organizations that depend on spreadsheets for business-critical decision making.

To that end, we founded a company, Infotron, which offers tooling, services, consultancy, and training to help organizations and individuals become more effective with their spreadsheets.

After several years of operating somewhat under the radar, the Infotron team (headed by CEO Matéo Mol) has now launched an on line service, PerfectXL, in which users can upload a spreadsheet and get it analyzed. The service then helps in the following ways:

  • PerfectXL can visualize the architectural dependencies between sheets, as shown above for my course sheet;
  • PerfectXL can identify risks (such as the vlookup I mentioned, interrupted ranges, or overly complex conditional logic);
  • PerfectXL can assess the structure and quality of the formulas in your sheet.

If this sounds interesting, you can try out the service for free at perfectxl.com. There are various pricing options that help Infotron run and further grow this service — pick the subscription that suits you and your organization best!

Even if you decide not to use the PerfectXL service, the site contains a lot of generally useful information, such as various hints and tips on how to create and maintain well-structured spreadsheets.

Enjoy!

Novels I Loved Reading in 2016

I enjoy reading a few pages after work, or listen to an audiobook when commuting. Here are the five novels I loved most in 2016.

Arthur Japin: De Gevleugelde (The Winged, 2015)

A novel based on the life of Alberto Santos-Dumont, Brazilian aviation pioneer. Inspired by Jules Vernes, the young Alberto sets out to invent flying machines, building his own hot air balloons, dirigibles (Zeppelins), and eventually planes. In 1901 he is the winner of a competition to fly a route of 11km around the Eiffel Tower, and in 1906 he is the first in Europe to make a flight with an “aircraft heavier than air”. Japin describes what drives the engineer Santos-Dumont to make his inventions and reach his fame. But most of all he tells the story of Santos-Dumont’s forbidden love for his mechanic Albert Chapin.

I listened to the audiobook narrated by the author (who is a trained actor). Many of Japin’s novels are translated and I expect a Portuguese and English version to appear soon, maybe in 2017?

In real life, Alberto Santos-Dumont refused to file any patents (he “open-sourced” his designs), as he wanted the world to benefit from the ability to fly as soon as possible. Later, suffering from multiple sclerosis and hugely disappointed by the military use of planes in world war I and during the Brazilian São Paolo revolution of 1932, he burned all his designs and committed suicide. See also this santos-movie for a short biography.

John Green: The Fault in Our Stars (2012)

Love story of 16 year old Hazel Lancaster and 17 year old Augustus Waters, both cancer patients. Heartbreaking and beautiful. Also features the Amsterdam Anne Frank house and Westerkerk.
“Young Adult Literature”: Amazingly well done novel about love and death that is meaningful to parents and kids alike.

Chances are you read the Fault in Our Stars before me: If you loved it, also consider John Green’s “Looking for Alaska” (2006). Most commonly banned book at US schools and libraries: Can you imagine a better recommendation?

John Green and his brother Hank Green set an example to universities around the world by their crash course initiative offering free on line courses on such topics as astronomy, psychology, world history, physics, and (soon) computer science.

Griet op de Beeck: Kom hier dat ik U Kus (Come Here so that I Can Kiss You, 2014)

Griet op de Beeck is a Belgian author who was to be appointed as TU Delft “cultural professor” in 2016. Unfortunately she had to cancel due to personal circumstances. Before that, she featured in the highly regarded Dutch TV show Zomergasten where she gave an open and optimistic account of her life and her mental health struggles.

Her novel tells the story of three stages in the life of Mona. Told by Mona herself, the first part is set in the simple and compelling language of a 10 year old. Mona tries to make sense of the world after the death of her mother. In the later parts, 24 and 34 year old Mona seeks to find and understand herself, and her relationship to her parents, stepmother, and her brother and stepsister.

I listened to the audiobook narrated by the author in wonderful Flemish. Translations in German (“Komm her und lass dich küssen”) available, and forthcoming in French and other languages in 2017.

Andy Weir: The Martian (2011)

A delightful page turner written by a software engineer. It is the year 2035, and when his mission to Mars gets into trouble, astronaut Mark Watney gets left behind all alone. Thanks to his knowledge of potatoes, farming, and chemistry, and thanks to his amazing optimism, perseverance, and improvisation skills, Mark manages to travel across Mars on his own to reach a place where he might be picked up to return to earth.

Thomas Mann. Buddenbrooks: Verfall einer Familie (The Decline of a Family, 1901)

My classic of choice in 2016 was Mann’s first novel, telling the story of four generations of a 19th century German merchant family. Thomas Buddenbrook runs the family business, optimistic at first, but more and more exhausted and depressed as life goes on. His brother Christian suffers from mental health problems; His sister Anthonie has bad luck in her marriages, and her daughter Erika is unfortunate in marrying a merchant who ends up in prison. And young Johann’s fate is covered in a heartbreaking chapter just describing the symptoms of typhoid.

German edition on Project Gutenberg. In case you want to start exploring Mann with a shorter novel, consider his “Death in Venice” (1912).