Tuesday, December 17, 2013

Professor for one year (week 36): Being cheered

Last weekend, I had a non-academic adventure: I ran the Silvesterlauf in Zurich.  I was one of the Happy Runners, which means I did the four big rounds in 60 to 70 minutes, summing up to 10km.

I love long-distance running, I did the Berlin Marathon several times and I ran some of the races as part of the ZüriLaufCup over the past years.  I will never win my age group, in fact, I'm always in the last quarter or sometimes even at the very end of a race.  But guess what: That's perfect!

People cheer for the very first runners, but those are usually very fast; so as viewer, you can hardly identify them.  And they are so focused, they won't realize who is cheering and what people are shouting.  In the middle field, it's mostly extremely crowded and runners hear a lot of cheering and shouting -- it's hard to identify the viewers who are actually cheering for you.

When it comes to the last runners, the situation is easy to grasp.  Runners are slower and only a few at a time, viewers can easily read the names on the number bib -- the Swiss print the actual number consisting of digits and the first name, most of the time the name even in a bigger font (Germans don't print the name or only in a very small font, so nobody can read it).  And viewers like it when runners react to their cheering.  There is a lot of high-fiving at the end of the field.  And even the marshals are a bit relaxed and cheer for you.  I served as marshal for the marathon part of the Zurich IronMan a few times, so I know both perspectives.

Of course, people pronounce my name differently, depending on the cultural background, or it's even changed into "Christin".  As long as it's close enough to the original, I take it as cheering for me -- when I hear "Natalie" or "Beat", then I know there are still runners following me. 

So the last Silversterlauf was a one-hour cheer-up -- you hardly find this in academia.  Recieving notifications for accepted papers or grants isn't as exciting as being cheered by completely foreigners all the way.  Or when was the last time somebody rung a big cowbell (Treichel) just for you as you ran up the Rennweg

Saturday, December 14, 2013

Professor for one year (week 35): Should everybody know how to program?

This post is the report, I wrote for the GPP 2013.

Introduction

Being a computational linguist, I was trained in programming as well as in linguistics.  After school in the mid-nineties, I couldn't decide whether to focus on linguistics (or nowadays "humanities") or computer science/math (or nowadays "STEM").  So I was quite happy to be able to focus on both when studying computational linguistics.  I always loved algorithms, abstraction -- and yes, I also loved Latin.  Maybe that's a rare combination, but in today's world it turns out to be quite handy.

One aspect of the 2013 GPP motto "University and Society -- Meeting Expectations?" is the aspect of university as the institution to prepare students to be successfull in today's society.  In the last decade, we saw the emergence of more and more electronic devices, "digital" is one of the buzzwords in several scientific fields, technology becomes pervasive.  We speak of the "Generation Y" as being "digital natives."  However, if we look how today's students use technology, they are only users, they are not creators.  They often even don't know how to configure programs.

Douglas Rushkoff in his book Program or be Programmed argues that everybody should know how to program to understand today's technology and to be able to control it instead of becoming a slave of the electronic devices surrounding us.  So my personal focus in the GPP 2013 was to explore how universities support or enable learning to program.  Of course students in computer science (CS) and related fields (like computational linguistics) are trained in programming, but I was interested in courses for non-CS students.

Answers from US professors

During our visit in the US, I asked my question at two places explicitely and I got two different answers. 

At North Eastern University, Dr. Neenah Estrella-Luna, an assistant academic specialist,  as she described herself, argued that indeed, computer literacy would be a valuable topic to teach considering that university should empower students to deal with current challenges.  However, she admitted that there are no courses offered to all students, not to mention being required.  My question was understood as asking about "teaching students how to program." 

At swissnex in Boston, we met Dr. James Honan, senior lecturer at the John F. Kennedy School of Government at Harvard.  He understood my question differently and answered that students would keep faculty busy and push them to use more technology.  He talked about MOOCs before and probably this influenced his answer.  However, his statement made clear that there is a view of "computer literacy" as "being able to use devices", including the expectation that instructors offer digital content and e-learning material.

At this moment, I was a bit disappointed.  Either the necessity of teaching and learning how to program is not recognized, or, when it is recognized, it is impossible to offer such courses for all students.

While at the MIT, we visited the Media Lab and the "Lifelong Kindergarten" headed by Professor Mitchel Resnick.  We got an introduction into scratch, the programming language and online community intended to teach kids how to program using a game concept.  They learn abstraction, algorithmics, and data structures while they play with code snippets, interact with other kids around the world, and program their own games and worlds.  It's an advanced model of learning the concept of recursion while playing "Towers of Hanoi."  I was aware of scratch before and I really enjoyed seeing some demos and talking to the researchers involved in designing and implementing scratch.  I think using games as a vehicle for teaching important concepts is a good strategy -- the users aren't probably not even aware that they acquire valuable knowledge they will use later in school, in university, and in their jobs.

Situation in Switzerland

On the morning of the day I took my flight to Boston, I took part in a meeting of an experts panel on CS competencies of the Hasler Foundation in Berne.  The foundation is working towards a proposal for a general subject "Computer Science" at Swiss schools.  Currently, some schools in some cantons offer CS as supplementary subject (in German: Ergänzungsfach).  However, this subject is often taught as it was in the 1990s: students learn how to use certain software, they don't learn to program, they don't learn about abstraction, algorithms, and data structures.  In the publication "informatik@gymnasium", published by the Hasler foundation through NZZ Libro (note that the German version of this book is already sold out!), the authors argue that CS and using software are two differnt things and that school should teach students the basics of CS to prepare future citizens to cope with everyday life.  It is probably a long way to achieve this goal, but it's a goal worth all the effort.

However, here we talk about serious teaching, not about fun instruction as in the case of scratch.

Answers from the Web

After coming home, I searched the web for comments about computer literacy and opinions or activities on teaching programming.  Bill Gates, in a questions session at Microsoft's Faculty Summit, confirmed that there is indeed a "gap between how computer scientists use computers to automate their lives and how most people don't really know how to use them effectively."

Larry Hardesty talks about the "programmable world" that surrounds us and that will change the world as we know it by making the distinctions between virtual and physical objects obsolete.  To make good use of the new world, we should be able to understand opportunities and challenges (and issues) and how to manage them.

In England, efforts are on their way to teach algortithms to primary school kids.  The government acknowledges the need to "catch up with the world's best education systems."  However, this new curriculum is still under development and the teacher's union isn't sure about when would be a good starting point to introduce it -- they object to only react to governmental decisions.  According to Sean Coughlan it will include computing defined as:

Computing will teach pupils how to write code. Pupils aged five to seven will be expected to "understand what algorithms are" and to "create and debug simple programs". By the age of 11, pupils will have to "design, use and evaluate computational abstractions that model the state and behaviour of real-world problems and physical systems".

It would be great if England could manage to design and actually implement this aspect.

And there are discussions going on in the emerging field of "Digital Humanities": In a twitter post, Jan Hecker-Stampehl (@heckerstampehl) asks "Should humanities scholars learn to program or trust that the programmers in DH projects will understand them?", obviously not aware of the more than 30-year old answer, Jacques Froger gave 1970 (Froger, J. (1970). La critique des textes et l'ordinateur. Vigiliae Christianae 24 (3), 210-217.), as Michael Piotrowski responds:

Il n'est pas indispensable que le philologue établisse lui-même le programme, encore que ce soit infiniment souhaitable ; il devrait au moins connaître assez le langage de programmation pour contrôler le travail du technicien ; en effet, l'expérience m'a appris qu'il ne faut pas s'en remettre les yeux fermés aux électroniciens, mal préparés par leur formation mathématique à se faire une idée juste de problèmes concrets qui se posent dans la domaine de la philologie.
(English: It is not absolutely necessary that the philologist writes the program himself, even though it would be extremely desirable; but he must at least know the programming language, so that he is able to check the work of the technician; in fact, experience has taught me that one should not blindly rely on the electronics people, whose mathematical training has hardly prepared them for fully understanding the concrete problems encountered in the domain of philology. (translation by Piotrowski))


However, even in fields where you would expect learning to program to be part of the curriculum, it is rather rare, as the blog post by Philip Guo shows.  He argues: "If you're a scientist or engineer, programming can enable you to work 10 to 100 times faster and to come up with more creative solutions than your colleagues who don't know how to program."  Students would need more concrete motivation than only arguing that programming helps them become an empowered citizen (the argument Estrella-Luna used at North Eastern).  Guo accepts that programming tools, i.e., text editors, should be improved to foster programming, but in the meantime we should focus on teaching students programming skills to support creative problem solving.

Selena Larson emphasizes the need to teach programming to students in schools already.  She supports the Hour of Code initiative during Computer Education Week 2013, following a similar strategy as scratch: Using games and fun figures, kids should understand basic principles and get an idea about what it means to program.

Conclusion

Studies by professional assocations like the ACM (Association of Computing Machinery) regularly show an increasing number of jobs requiring programming knowledge.  They also show that there is a lack of people with appropriate skills meeting these requirements.  So there is an urgent need in society. 

As I agree that school would be an appropriate place to start teaching basic concepts of CS, university should be the place to empower students to actually program.  Maybe learning to program, acquiring knowledge about algorithms and data structures should be a required course in every curriculum.  I strongly support the statement made by Steve Jobs in an interview in 1995 saying "It teaches you how to think.  I view computer science as a liberal art.  It should be something that everybody learns."

However, we are still on the way to implementing those ideas into education, be it in school or at university.  If we have the chance to support initiatives like the Hour of Code or panels and experts groups designing curricula, those of us having the respective knowledge, should take part and see this as opportunity to serve society.

Professor for one year (week 34): GPP2013 aka higher education bootcamp

This year, I could take part in the Global Perspectives Programme (sorry for the British spelling) -- GPP2013 --, a joint program by the University of Basel and Virginia Tech.  In Basel, we were 8 participants (mostly PhD students) from Chemistry, Law, Sports Medicine, and Computational Linguistics (that's me).  We met in March for a kick-off and started our social-media journey: setting up blogs, joining Facebook and LinkedIn groups, creating a Twitter account, becoming familiar with document sharing applications (Adam, a Moodle clone in Basel, and Scholar, a Sakai clone at Virginia Tech). 

We subscribed to three groups working on aspects of this years topic "University and Society -- Meeting expectations?"  Those groups were formed by participants from Basel and Virginia Tech.  However, we didn't invest much in this groupwork before meeting in person when the Virginia Tech participants visited Switzerland in early June.  They were based in Riva San Vitale (TI) and visited several universities in Switzerland, France (Strasbourg), and Italy (Milano).  We could join them for two days in Riva San Vitale, got to know each other, and started exploring the topic.  Similar to us, the US participants came from different scientific fields and were at different stages in their academic career -- there was no postdoc, though.

In the middle of June, we flew to Boston to start our visit of US institutions of Higher Education.  An two days in Boston, we visited Northeastern University, Boston College, swissnex (where we met James Hanson from Harvard), and the MIT.  On the evening of the second day, we were supposed to travel to Blacksburg.  However, due to bad weather conditions, our flight was delayed and we spent a few hours at a bar at the Boston airport before taking the last flight to Charlotte.  We slept a few hours in a motel and then took the first flight to Roanoke Regional Airport -- of course we couldn't access our luggage, so we had to come up with innovative solutions for cleaning contact lenses and brushing teeth.

Our colleagues from VT picked us up at the airport and gave us a ride to Blacksburg.  I guess nobody slept in the vans, we chatted a few hours and arrived at the campus quite exhausted and looking for a shower.  However, we started exploring the campus immediately, looking at student housing, meeting with faculty, and trying to make a good impression.  In the afternoon we visited the New River Community College and then we headed back to the VT campus to finally get a shower and dress up for the formal reception.

We started the next day with a working breakfast, discussing how to present group work outcomes at the Swiss embassy in Washington, D.C. at the end of the day.  Then we took the vans again to go to Washington, D.C, and to visit two other universities on the way: George Mason University and Virginia University.  More and more, the journey turned into an academic bootcamp: We had less and less time to meet with faculty at each station -- and thus needed to shorten our introductions and ask short and precise questions -- and finally we dressed for the formal reception at the Air and Space Smithsonian (we could take part in welcoming the crew of the Solar Impuse who had almost finished their journey across America a few days before) within 15 minutes on the George Mason parking lot.  And I think we all looked great and behaved well!

The next morning, our colleagues from VT drove us to the Swiss embassy in Washington, D.C., where we presented the outcomes of our group work and posed some answers and even more questions to the audience.  We had a lively discussion during this official session and then we had lunch at the embassy.  It was very nice to continue discussions we had to cut short during our trip -- people from George Mason University and from Virginia Tech attended the meeting.

After coffee, it was over.  We had to find our way back to the hotel on our own -- of course nobody was prepared which subway to take or even knew in what part of the city the embassy was located.  Later we met for a final dinner and a short debriefing and then we started our trips home (some of us with a stop over in New York, some stayed a bit longer in Washington, D.C.).

A few weeks ago, we had the final closure of GPP2013 at the Institute for European Global Studies in Basel.  We had met before during summer for attending doctoral defenses or birthday parties.  We have become friends, and this is probably due to those bonding experiences during the GPP bootcamp.  I really enjoyed this experience!  And yes, I would do it again.

Sunday, December 8, 2013

Professor for one year (week 33): Coding is the new Latin

A few days ago, I tweeted this:

With a link to a short statement by Steve Jobs.  Two sentences in his statement triggered this tweet:
  • "It teaches you how to think." (with "it" referring to learning how to program)
  • "I view computer science as a liberal art."

And I added a follow up tweet stating that Latin and Algorithms and Data Structures should be required for all studies at a University.

Initially, both tweets are an reaction to the initiative Hour of Code, which is simply great.

However, the more I think about it -- and look at my Twitter timeline following Digital Humanities conferences over the last weeks --, the more I believe that coding actually IS the new Latin already;  it just hasn't hit universities while Latin is on it's way out of universities (fewer and fewer study programs require proper knowledge of Latin).

When you look for arguments supporting Latin for everybody, you find:
  • It's fun.
  • It's the basis of European languages, you learn other foreign languages much easier if you know Latin.
  • It's the basis of European languages, you gain competencies in your native language.
  • It teaches you how to think.
  • You learn a lot about logic and abstraction.
  • There's no better way to learn grammar.
  • It's part of our (European) cultural heritage.
  • It teaches you how the world works today.
If you look closely, a lot of those arguments are valid for programming, too:
  • It's fun.
  • It teaches you how the world works today.
  • It teaches you how to think.
  • You learn a lot about logic and abstraction.
And that's basically, what Steve Jobs was referring to.  And I agree, although there is a learning curve, you can do a lot with programming, even as a beginner.  It is a kind of craft, you have to practise a lot; but it's also a kind of art, you can enjoy it while doing it and you can enjoy the final product.

Usually, it's "critical thinking" what we want to trigger in students, but I think "being able to abstract" is a more appropriate goal.  And probably a prerequisite to critical thinking -- you have to discover large lines of arguments, you have to abstract from singular examples, you should see commonalities and general discrepancies before making your own arguments and expressing pros and cons.  Being trained in logical thinking and abstraction helps you to do so.  And there is no better way to learn those two than via learning Latin, math, or programming. 

Actually, there might be another link between Latin and programming -- it's a kind of closed community of those who know it.  Therefore a programming language could be seen as a kind of "code" -- i.e., a "cipher" --, and you have to be an insider to decipher it and grasp the true meaning.  It's a kind of jargon spoken and understand in a closed group.  Maybe people referring to "programming" as "coding" are not aware of the ambiguity of "code," but I think the sense of "speaking an encrypted language" is a valuable one.

There's already a lot of research literature with respect to "code literacy," also emphasizing that you should learn how to program to become part of "the club of the privy."  And of course discourse following the book Program or be Programmed by Douglas Rushkoff supports this view.  In this regard, the term "hacker" -- often used as a derogatory term by society, but as a badge of honor for expert programmers in hacker culture (see the definition of "hacker" in the Jargon File) -- could even become a synonym for "member of the new elite."

Professor for one year (week 32): Postdoc programs

In 2012 and 2013, I could take part in the PostDoc Program (PDP) of the University of Zurich.  Eighteen postdocs had been chosen in a competitive selection process.  We met for six workshops during these two years.  Coming from several disciplines, such as film studies, forensic medicine, politics, biology, linguistics, and computational linguistics, we couldn't share experiences and knowledge on a scientific level, but rather our experiences about being a postdoc in general.  Some of us had experiences in interdisciplinary research, some of us had experiences in highly structured environments like chemistry labs.  And all of us had good and bad experiences with supervisors and research assistants.

Being part of this program meant meeting people with very different backgrounds but a common goal: to become a professor in the near future.  The program is meant to help participants to estimate and increase their success in academic careers, to find ways to promote themselves, to understand and play by the rules of academia, and to get to a point where they can successfully apply for professorship.

We talked about different perspectives on teaching and research and about strategic decisions concerning the next career steps.  Each of the two-day workshops was a sometimes welcome, sometimes disruptive break in our daily routine.  Some of us had to answer calls and e-mail messages during breaks or return to the office immediately after the workshops.

However, without the workshops, I would not have sat down for a few hours to reflect on my career as it had went until today or to plan which steps to take and where to invest in order to gain new skills.  We could discuss strategies and tactics for moving towards professorship and try out interview situations and trial lectures. The six workshops on application training, funding, leadership, career paths, publication strategies, and competencies and skills where lead by experts in the field -- professors, coaches, members of the ERC review board, etc.  And all shared their knowledge and encouraged us to ask everything what we always wanted to know.

Of course you could find most of the information by searching the web, but without the course context, I wouldn't have invested the time to do so.  On the workshop days, we could spend the whole day on "daydreaming" a scientific career and got to know what happens behind the closed doors of search committees or funding boards.  And with every workshop going by, I got even more convinced that this is exactly the career I dream of: self-determined research and teaching, leading a research group, advancing the field and the scientific community, and being part of the academic discourse -- with the "field" referring, in my case, to Computational Linguistics and Writing Research.

The program finished in September 2013, but we managed to maintain regular meetings as a group.  I really hope we can continue do this for quite some time, even if some of us start  moving to other universities in other cities and countries.

If you ever have the chance to attend a workshop on career training or even a whole series, don't hesitate to apply.  It may seem a lot of time to invest (and you need all the time you can get to publish, don't you?), but it's totally worth it!

During the program I also found a mentor, supporting me in strengthening and polishing my application documents.  He isn't a member of "my" scientific community, and although it felt a bit odd at the beginning, I really enjoyed those meetings -- I was forced to think about wordings and he helped me to look at my achievements from an outside perspective.  I really appreciated this mentorship!  If you have the chance to engage in a mentorship relation, I totally recommend it.  My mentor even told me that he chose to act as mentor for junior scientists because he had made this experience as a mentee before and he liked it a lot.  That's a great attitude, and I hope that one day I myself can support mentees on their way towards an academic career.

Saturday, December 7, 2013

Professor for one year (week 31): Supervising students

Currently, I supervise three students as "first supervisor;" last term, I was the "second supervisor" for three students.  Two students write their BA thesis and one student writes her MA thesis.  I won't report on their topics, but on the supervision as such.  As second supervisor, I only have to read and grade the thesis, as first supervisor, I'm responsible for a good topic and I'm the person students contact for help.

Actually, I don't differentiate whether I supervise BA or MA theses or term papers -- there are only gradual differences with respect to the amount of time to invest, the number of words or pages to produce, and the kind of topic.  At all levels, I expect students to come up with a proposal first; they should define themselves which topic they work on for the next few weeks (or months in case of MA theses).  We discuss the proposal and then they have to write a one-page abstract defining their research question, what kind of material to use or to produce, and they also should list first literature references.  I don't expect them to read 24/7, but they should investigate relevant literature for their topic.  Then we discuss this abstract and refine the research question.  I also point them to unmentioned papers or journals and book series they should consider consulting.  And then I send them off to work.

Usually, there is a fixed date for handing in the thesis or the seminar paper.  When half of the time is over, I invite the students for another meeting.  A few days before, they send me everything they have produced so far.  At this point in the process, it's time to have a look at the structure of the text, even if some sections are still to be written.  The list of references they want to cite should be nearly complete.  This appointment forces them to actually write something and not spend time procrastinating.  There is a strong correlation: Students with little and/or poor text half way through their paper, usually hand in poor final versions.  They underestimate the time needed for revising, editing, and printing (university regulations often require printed theses).

Sometimes, students see those two appointments (preparing a proposal and discussing it, and sending mid-way material and discussing it) as some kind of cruelty.  However, it helps them a lot in focusing on their topic, developing critical thinking, and producing high-quality texts.  After grading their work, students can also make an appointment to get detailed feedback.  

When I teach seminars where several students write a paper, I often make some of these appointments a group activity:  students report on their research question in the first session, we discuss how to define a good hypothesis and how and where to find relevant literature.  In the half-time session, students report on their progress and the group comments on whether to refine (expand or narrow) the research question or their ambitions.  That's also a perfect opportunity to realize that all the others also struggle a bit, didn't manage to write as much text as they expected, etc.

Interestingly, the Department of Linguistics at the University of Konstanz recently developed a checklist for BA students:  they should reflect on the competencies required to write a thesis (including writing competencies) and they should prepare a one-page abstract before looking for a supervisor.  The checklist is intended to help students define a topic and become aware of all the skills involved when writing a thesis, and the filled-out list should inform potential supervisors about the students.  As for me, I don't need this list, its elements are part of my supervision style anyway.  However, preparing such a checklist is a sign for aiming at a somewhat more homogeneous supervision for all students, but you could also see it as an indication that not all potential supervisors have a real interest in mentoring students.

What's your supervision style?

Sunday, December 1, 2013

Professor for one year (week 30): Device naming systems

Last week, I wrote about my private geek devices.  And I mentioned the names they have:
  • heinz (the black MacBook)
  • horst (the router)
  • herbert (the old Toshiba)
  • gunther (the other router)
  • fred (the new MacBook Air)
  • marlene (the old MacBook Air)
  • waltraud (the work computers used for E-Learning and OldPhras)
  • berta (my Nokia 6700 c)
  • Fräulein Meier (the iPad)
  • tippse (the Bluetooth keyboard currently paired with Heinz)
There is actually an Internet Request for Comment (RFC) on "Choosing a Name for Your Computer" (RFC 1178) from 1990.  It points out that "[e]xperience has taught us that it is as easy to choose bad names as it is to choose good ones," and goes on to list a few do's and don'ts, such as: don't use long names, don't use your own name, use words that are rarely used, use theme names.
Well, my list of names is balanced with respect to gender and age.  I don't follow a specific naming system (so no theme names), but usually come up with a name when I unbox the device.  A black MacBook just looks very maculine, while the first-generation MacBook Air surely is a feminine device because of the shape.

"marlene" and "waltraud" allude to Marlene Jaschke, my favorite stage personality of the comedian Jutta Wübbe, and her budgie.  I actually knew the name for my iPad even before unboxing it -- I wanted a meaningful signature instead of the default "sent from my iPad" signature and now it says "Von Fräulein Meier verschickt" ("sent by Fräulein Meier"). "tippse" is a derogatory term for a typist.

"heinz", "horst", and "herbert" are references to my northern German heritage.  You use those names to refer to "someone" (similar to "Tom, Dick, and Harry" in English) -- you also can refer to several unknown people by naming them Horst1, Horst2, and so on. "fred" is just another northern German male name -- as the MacBook Air is thin, it had to be a short name, and a male one because of its angular shape.

The computers I used while working at the Institute of Informatics and later the Institute of Computational Linguistics at the University of Zurich were named:
  • keywest (when it it was a Sun workstation, until ca. 2006)
  • renamed to sylt
  • caipi (when it was replaced by an iMac)
  • gnaegi (when I moved caipi to another office, the colloquial term for the Swiss Army Trikothemd 75, a light olive-green jumper, named after former Federal Councilor and minister of defense Rudolf Gnägi, who introduced it)
When almost everybody worked with a Sun, there was a naming system in place: workstations were named after islands (e.g., keywest, sylt, poel, utopia) and servers were named after famous composers' first names (e.g., alban, arvo, igor, gustav, nikolai, bela).  When the workstations were replaced by Macs, cocktail names were used.  So at that time, they followed themes.  However, the admins only gave names to desktop Macs.  MacBooks usually got names following the pattern "username's MacBook" -- not very creative and no theme anymore.

When I studied at Friedrich-Alexander University, the computers in the lab of the Department of Computational Linguistics (CLUE) were named after planets -- or what they assumed to be planets -- e.g., saturn, uranus, sol, terra.  Later that was changed into a naming scheme "clueXX" (with XX being the last part of the IP address).  I worked with clue21, IIRC.

In Konstanz, the iMacs in the computational linguistics lab are named after Roman emperors (e.g., augustus, vespasian, domitian, hadrian, titus, aurel, caesar) and the Mac minis after comic figures (e.g., professor-x, wicked, quicksilver, iron-lad, aurora, captain-ultra, lightspeed).  Also theme-naming here.

Names for my partner's devices at home also follow a theme: Greek mythological figures (e.g., gaia, selene, themis).  However, when I think about this theme-naming recommendation, I do follow a theme: I name my devices according to the first impression they make.

What is your naming theme?