“23 things I didn’t learn in college or grad school” — By D. Sivakumar
By: Frank Liu
Tags: Learning, Insights, Schools, Advice, Careers

Frank’s Note: I recently stumbled upon a wonderful list of wisdom written by D. Sivakumar. I found the twitter thread a little bit hard to read, so I’ve put the twitter collection into a singular readable blog here. All the content below is written by D. Sivakumar. Please check out his twitter collection: https://twitter.com/dsivakumar/timelines/1328255107599802368

“23 things I didn’t learn in college or grad school”

Two years ago I realized I had been in the workforce for 23 years; assuming I learned one thing a year, I made a list of “23 things I didn’t learn in college / grad school”.

These are mostly behaviors rather than tips and tricks, mostly relevant for CS engineering / research lab settings, but might apply well for academic settings, possibly well outside the computing field.

#1: Be present

“Presence” is a catch-all term to describe being involved mindfully in whatever unit of work / play one is involved in. Not distracted by other stimuli; not going off on a tangent mentally. If it’s useful, keep a notebook to record things you wish to follow up later.

I encountered this principle in many places, most recently in marathon training; the phrase “run the mile you’re in” proved very useful. Don’t worry about how you ran the previous miles too fast or too slow, don’t overthink how you’ll run the remaining miles. Just run this one.

#2: Listen

The biggest reason to listen well is that it is possibly the most important step in building trust. Honing your listening skills makes you a good communicator, a good colleague, a good leader, a good friend.

Like presence (#1), listening can be practiced. It is a special case of being present, and is a great concrete way to practice being present.

Whether it’s a student or a junior colleague asking for help; a friend disclosing their distress or pain; a colleague describing a technical idea; good listening demands that we learn to see it from their perspective, as THEY describe it.

In technical matters, it’s often useful to restate what you heard, but in most other situations, it’s just enough to acknowledge it.

When listening, avoid the temptation: to finish the other person’s sentences; to live-compose your response in your head; to indulge in problem-solving; to judge; to get distracted. Rephrasing and fixing can all come later. First, listen.

#3: Be curious

The weak ties between ideas, topics and fields enable numerous breakthroughs, small and large; being curious is how you tap into the strength of those ties.

In my most productive decade in research, I was fortunate to do substantial work in at least five distinct areas in CS, and simple curiosity about a paper or talk was my invitation to each of those areas.

Conversely, I attribute nearly all my “what might’ve been” regrets to lack of curiosity about topics, fields, and people. I think this lack of curiosity was due more to bias than being busy or poor with time management. Unconscious bias inhibits curiosity, watch out for it.

Think about how good a mental map you have of the broad area that you work in or the organization you work for. Think about how often you listen to people at varying distances from your daily topics of work.

Like presence and listening, curiosity can be practiced. Unlike those, curiosity is also measurable. Think about how you can practice curiosity systematically, and measure it periodically.

#4: Be the go-to person for something

Striving to be an expert at something helps distinguish oneself — from one’s peers, teammates, collaborators — in a special way. It brings a certain polish to your team’s output in a predictable and reliable sense.

It takes time, it takes a lot of tinkering, a lot of deliberate practice, but the sheer act of achieving mastery in something, however narrowly scoped, is one of the most rewarding journeys one can take.

Sports have many examples of specialists — base stealers, rebounders, free-kick takers, slog-overs specialists, serve-and-volleyers. Elizabeth Warren is a great example of an academic whose specialist knowledge propelled her to stardom.

Whether it’s code-reviewing or proof-checking (of any kind) or LaTeX-hacking or tail bounds or making killer presentations or latency-optimizing, being an expert at something is a source of well-earned pride, and opens doors in unexpected ways.

#5: Show up

Really restating Somerset Maugham’s famous line: “I write only when inspiration strikes. Fortunately it strikes every morning at nine o’clock sharp.”

The easiest way to lose steam on any effort — writing a book, taking a Coursera class, training for a marathon, setting up a weekly collaboration — is not to show up. Maybe it’s daunting or you haven’t done your homework, but not showing up only makes it worse, not better.

If running 5 miles on a cold morning feels too hard one day, walk 3 miles. If you didn’t do your homework to prepare for a meeting with a colleague, still show up and tell them you are unprepared, and use the time wisely perhaps to recap the state of the discussion.

New year resolutions around gym and exercise are famous examples of people not showing up for what they signed up for (see https://bloomberg.com/news/articles/2019-01-16/here-s-how-quickly-people-ditch-weight-loss-resolutions ). But if you’re constantly “flaking”, it’s a sign you’re over-committed. Be honest with yourself and reduce your commitments.

Anybody can sign up for things. Showing up is the really important part. Good luck!

#6: Learn for the long haul. Understand the basics. Really well.

Learning for the long haul means you pick carefully what to invest time in learning, and how to learn it.

The ‘what’ is easier: foundational ideas, truly profound insights, the core of powerful developments that will last years or even decades.

The ‘how’ is trickier: sometimes it means revisiting the basics many times, even over years; usually this means building connections between new ideas and old ideas, sometimes between old ideas and older ideas. Almost always this means deliberate practice.

The ‘how’ says something about the ‘what’: if it’s not going to be worth relearning, maybe it’s not worth learning at all. The ‘what’ says something about the ‘how’: it’s really to internalize the ‘why’.

#7: Be aware of where your field is going

One of the constants of every field is that almost every decade, the field looks substantially, even entirely, different.

I’ve seen this in algorithms, computational complexity, broader theoretical CS, Web search, information retrieval, web-based systems, software engineering, machine learning, artificial intelligence, … but these fields are not unique by any means.

Sometimes I’ve kept abreast, mostly I’ve played catch up (sometimes at significant cost). Knowing where your field is going is not the same as jumping on the latest bandwagon. It is an opportunity to reexamine your own work in a newer broader context.

One reason to pay attention is to keep your toolkit fresh, to keep yourself sharp with new challenges. An equally important reason is not to fall behind. Even if you decide not to shift the course of your work, it is vital that you make it a conscious choice.

Awareness of where your field is headed, at various zoom levels, helps you develop good peripheral vision. As you see change, evaluate its depth and longevity from first principles; then make a conscious choice of how much you’ll steer your course in the new direction.

#8: Acquire, practice, and polish new skills

These could be related to your core work, could be tangential in your broad area, but also orthogonal, along new dimensions.

The ones with immediate value are productivity skills — think command-line hacks and scripting languages for programmers, or LaTeX and slide-making skills for all scientists — and tools of everyday use, whether they’re classic theorems or detailed APIs.

There is another set of timeless skills that have big returns over time: examples include discrete mathematics, statistics and programming, which are fundamental skills that everyone in STEM fields — even those outside of it — can benefit from.

Communication skills have the biggest return on investment. Clarity of thought is often inextricably linked to clarity of language — not just the English language but also good mathematical formulations or clean code and APIs. These take practice.

All three — acquisition, practice, and polishing — are key. The sources you consult to acquire a skill matter. The context in which you practice them matters. Re-visiting, revising and polishing skills makes your thinking nimble and improves your ability to connect concepts.

#9: Put your hand up

This is equal parts: eagerness (to participate enthusiastically, or what @angeladuckw would call “zest”); initiative; volunteering (to be less selfish, to do things that “someone should do”); embracing vulnerability (not standing on the sidelines).

The opposite of this quality is indifference. Indifference (or worse, passive-aggressive behavior) is certainly toxic, but here I am also urging you to avoid the “quiet genius” model.

We all admire the quiet genius who goes about their work and does nothing to build fellowship around their team, work group, professional community, or any cross section of these. That genius is selling themselves short.

A common refrain is: “I’m shy / introverted” Fortunately — like mindfulness or curiosity — you can practice zest and initiative intentionally. “Putting yourself out there” regularly in small ways teaches you to deal with criticism or failure graciously.

The teammate who starts a reading group shows initiative; the first speaker shows zest and embraces vulnerability. The active Tweeter, newsletter writer, professional society chapter founder — the list is endless. They all seek a better community and are willing to work for it

One long-term benefit of practicing initiative and zest is that when an opportunity arises for a role with increased responsibility, you know how to ask for it. Leadership begins — at a microscopic level — with enthusiastic participation, volunteering, and initiative.

#10: Work on being a reliable colleague

Two phrases best describe the people I think of reliable colleagues: consistent and even-keeled.

Even if the mean value of what your colleagues can expect from you doesn’t increase very much year over year, it is very useful if the variance is low.

Let’s face it — most of us aren’t mercurial geniuses. When we work in teams, consistent performance and a steady temperament are way more valuable than an unreliable genius. I’d say a team of 10 can afford no more than one of the latter (provided they aren’t a nasty person).

Being over-committed leads to being an unreliable colleague. (I struggle a lot with being over-committed — with apologies to all my colleagues who have borne the brunt of it; at least I now know what I’ll say when asked about my biggest weakness in my next job interview)

Equally, on the other end of the spectrum, lacking intrinsic motivation and depending too much on your colleagues to derive your motivation to work well makes one an unreliable colleague. Find the middle path, be someone your colleagues can trust to be a good teammate.

#11: Be generous with your time

Especially with your colleagues, students, friends, members of your professional community: as a resource for help with technical problems; as a sounding board for ideas / career topics; as a source of bits of wisdom; even as a target to rant a little about the world but especially for technical / professional matters and work-related semi-technical matters

Not because, in some woo-woo sense, it makes you feel good — which it certainly does. Nor because it’s a transaction and the other person might help you one day — which they possibly might. But because it is a good opportunity to learn.

When you help, you reinforce a skill/concept for yourself, you learn what makes it hard and how to explain it better. When you brainstorm, you absorb new ways of thinking about things. When you listen, you internalize what behaviors cause distress so you can avoid them.

When you generously give your time for 1:1 conversations or small-group discussions, what you learn is worth several multiples of the time you invested.

#12: Be very protective of your time

Time is your most precious resource, and how you treat it says a lot about where you’re headed. Look back at your week (or month). Which hours do you wish you can take back? And why?

The most important question to ask yourself is: how intentionally are you spending your time? We all need time to decompress, binge-watch something on Netflix mindlessly, or otherwise “waste” time. But let it be intentional.

At work, think twice before you commit to a meeting that has more than 3 people in it. Any meeting that has more than half the people staring into their laptops for more than half the time is not worth anyone’s time.

Another common way we all spend time poorly is “thrashing” on some task — mindlessly trying things without making any progress. Watch for signs of this, especially when you’re tired. Sleep is a better investment of time than any activity done when you aren’t fresh and mindful.

Protect your time so you can use it intentionally, mindfully. Protect your time so you can be generous with it.

#13:Get a mentor. Be a mentor.

There are many models of mentors: the mentor who walked in your shoes not long ago; the mentor who’ll share with you their mistakes so you can make new ones; the mentor who’ll listen to you and ask questions that you don’t need to give them the answers to. They’re all good.

Mentors aren’t meant to solve your problems. A good mentor will help you identify your options. A great mentor will help you identify your goals and frame them to optimize your potential. Remember: ‘help’ is the operative word here.

The hardest thing about mentoring is to accept that your mental picture of the goals, preferences, and experiences of the mentee might not be accurate. Consequently, a mentor should not give “advice” to the mentee; and a mentor should never project their biases to their mentees.

The hardest thing about getting a mentor is acknowledging the value of getting one. The next hardest thing is not to let the search for a perfect mentor stop you from finding good ones.

If you can’t find one great mentor, find three good ones — individuals who are not cynical or judgmental but are willing to be open about what worked and what didn’t work for them in the organization / field / at a similar stage in their career.

Always ask your mentor how to think about a situation, not what to do. This slight change in the framing will help your mentor list your options / the criteria you could consider, and pull them away from telling you what they would do in your situation.

In the five stages of my post-undergraduate career, each between four and seven years, I’ve never sought a mentor. Always too sure of myself. And almost always wrong, occasionally lucky.

With hindsight, I feel that a good mentor would’ve helped me avoid nearly every career mistake I made. But then, if I didn’t make those mistakes, I wouldn’t be writing this thread, so maybe there’s a silver lining after all

#14: Strive for clarity

As you plan your next project, a body of work for a quarter or a year, ask yourself: do I know what I’ll be doing, why I’ll be doing it, and how I’ll do it? Focus especially on the ‘how’ — do I know how the numerous pieces of that puzzle will fit together?

If the answer to any of these questions is a ‘No’, stop and think again. I’ve found — both from personal experience and by numerous observations — that in an overwhelming fraction of failed projects, muddled thinking is the predominant reason for the failure.

When you plan a project — a software system or a mathematical proof or a presentation or writing a book — do you see what the components are and how they work with each other?

Can you explain your project at both levels — at higher levels of abstraction and from first principles? Can you isolate the core idea that makes or breaks the project? Can you state your assumptions precisely and completely?

Achieving clarity takes tremendous effort and honesty. Effort to visit and revisit ideas to test if they fit together, if they hold up. Honesty to isolate assumptions and hypotheses and unknowns and then revisit and verify or solve them.

A good test for whether you’ve achieved clarity in your thinking about a project is to see if you can describe it in 2–3 sentences; in a paragraph; in a one-pager; in a two-pager; in a four-pager, etc., in greater and greater levels of detail.

#15 Work on your social intelligence

‘Social intelligence’ is an Internet-era phrase that encompasses tact, empathy, and self-awareness. How often have we observed a colleague act in a way that’s tactless, unempathetic, indiscreet, rude or tone-deaf? How often are we aware — before, during, or after — that we acted in one of these ways?

The trust and respect you earn/maintain: increases additively every time you display good social intelligence; and decreases multiplicatively every time you display poor social intelligence. Thus the cost of poor social intelligence is higher as you grow in your career.

When I trained to be a soccer referee, I learned a tip that’s relevant: when a foul happens, wait just a fraction of a second to process it before you blow the whistle. It usually leads to better judgment: either not stopping play for “advantage” or cautioning the perpetrator.

Acts of poor social intelligence can usually be avoided by activating your inner referee to provide better judgment, so it’s worth working on sharpening that referee.

#16: These behaviors impose a ceiling on your career growth: bitterness, cynicism, insecurity, jealousy, pessimism, pettiness. Avoid them

Most of us have experienced one or more of these at one time or another. The challenge is to ensure that they don’t consume us. There is always an inner voice that tells you when you embark on one of these paths. It’s your internal honesty. Listen to it. Observe the feeling neutrally, acknowledge it; over time, you’ll find yourself refusing to indulge in these behaviors.

#17: Framing matters. Be fearless, dream big, don’t sell yourself short

There’s an awesome “inspirational” poster by Nike featuring the runner Mo Farah that has the words: “Don’t dream of winning. Train for it”. I love that poster, BUT… if you don’t dream big, if your goals aren’t framed ambitiously enough, your conviction, drive, and effort are unlikely to be strong enough to reach “escape velocity” to propel you to greatness.

Any teenager who plays a sport at a competent level dreams of playing in the Olympics or in a World Cup. The fearless among them start working hard for it. If you don’t frame your goals seriously, nobody else will.

I’ve had the fortune to work closely with some giants of CS and the tech industry. One characteristic common to them all is fearlessness. Most of them are also ‘normal’, like you and me; they just dared to dream big. That dream gives their hard work focus, purpose and direction.

An alarming number of junior scientists, engineers, artists and business people frame their ambitions too narrowly and often without deliberate consideration. In my opinion, they are limiting their potential unnecessarily. What’s the arc of your hard work?

#18: People overestimate what can be done in a year, and underestimate what can be done in five years*

(* popularized by Bill Gates, but likely goes to the 1960s, see https://quoteinvestigator.com/2019/01/03/estimate/)

While this is certainly a message about the optimism / assured-ness bias in the near term and our general inability to make accurate predictions about the longer term, there are two valuable messages here.

The first message is about the power of compounding. Using compounded calculations in planning doesn’t come naturally to us. If we work each year to set ourselves up for bigger / more valuable accomplishments in the next year, we will achieve amazing things in five years.

The second message is about the danger of impatience. If we focus on near-term gratification and cut corners, we risk building something that cannot be built upon further.

Compounding comes from many sources: a solid foundation helps you build higher-value things in subsequent years; with each milestone, the number of people involved and the number of directions of improvement can both grow dramatically.

If you’re a student, build a great foundation in the first years and keep your eyes on potential directions to explore and skills to acquire. If you’re leading a team project, build the core components well with a small team in the early years and scale intentionally.

Think of your project as a polyhedron. Start with a small tetrahedron as a core. Expand it over time, add a few vertices — people, skills — each year. Keep it well-rounded by always expanding the convex hull maximally. You’ll achieve great volume in a few years.

#19: Bias toward action. Use milestones.

One of my favorites, because I tend to dream a lot, think endlessly, compose essays or theorems or documents in my head, keep seven browser tabs open to buy a $20 thing. The main reason not to overthink things but start doing something is to get feedback. The feedback can be internal (you find gaps in your thinking) or from others (a colleague who gives a counterexample) or the environment (a clever idea that doesn’t work).

A common reason for “analysis paralysis” is lack of clarity about a large nebulous body of work. If that happens, try to define a few milestones — either in the core of the work, or if you’re hopelessly stuck, on the periphery. But be concrete so you can see progress.

Concrete milestones lead to reusable artifacts. They often find value in their own right. My favorite technique to overcome overthinking a large project plan or complex presentation is to write out the “API”s for the parts This forces me to examine the assumptions we make about the parts.

Milestone one is usually a list of tweet-length descriptions of the units.

#20: Communicate early and often

Many of us struggle with giving negative news (a delay in a project, unable to join for dinner, etc.) and end up making it even worse: we delay communicating it. Which is about the worst thing we could do with that information.

Some of us are habitual procrastinators: we end up squeezing a lot of work in at the last minute. It might be fine if we’re ready to burn the midnight oil as needed. But if we procrastinate communication, we end up disrupting someone else’s schedule. Never goes well.

A third reason many of us are poor communicators is letting perfection get in the way of “good enough”. With the very best of intentions to send a detailed thought-through response, we fail to send a short timely response that might be much more valuable to the other party.

Start and / or end each work day with 15–30 minutes dedicated for nothing but quick, brief communications. It could become one of the most useful habits you develop. And if you think of other ideas, please share — I could use all the help Slightly smiling face

#21: Communicate well

In my opinion, this is the single-most underrated (and hence underdeveloped) component in all our education systems, especially for STEM students, across the spectrum — from kindergarten through PhD degree programs.

Every medium — face-to-face conversations, prose / documents, presentation / PowerPoint, code, email, etc. — offers plenty of opportunity to polish our (technical) communication skills. Each comes with its unique benefits and challenges.

Communication can be designed to inform, illuminate, inspire, educate, entertain, move, convince, or persuade. The style, the language, and the organization should fit the specific goals of the communication. In all scientific/technical situations, clarity is paramount.

Good technical communication displays: units that are succinct and focused; organization that enhances flow and clarity; and language that is simple and direct to maintain a light touch and a tight narrative.

Two things one can do to improve communication: Read articles, documents, and code written by the best scientists and engineers; watch — and observe — presentations and lectures by the best speakers and teachers. Practice your writing and speaking. Do a lot of both.

Wigner’s famous essay “The Unreasonable Effectiveness of Mathematics in the Natural Sciences” is really a tribute to the role that mathematics plays for the natural sciences — as a vehicle of communication that’s at once precise, rich, and succinct.

Can your writing match (Newton’s) F = G m_1 m_2 / r² ? This one is such a pet topic of mine, so please allow me some indulgence with a few extra tweets… It isn’t entirely true that I didn’t learn this in college / grad school. In college, we had a class on “Technical English”, a class I enjoyed as much as any CS or Math class. We wrote and critiqued cooking recipes, shampooing instructions, and generally learned to focus on clarity and precision over flowery language. Two of my favorite resources: “On Writing Well” by William Zinsser. “Style: Toward Clarity and Grace” by Joseph M. Williams.

Comedy writing, in general, requires extraordinarily sharp skills, the careful set up, and the perfect choice of words. Oscar Wilde, PG Wodehose, and Jerry Seinfeld are all such masters of this, and their craft deserves close attention. Jerry Seinfeld supposedly wrote and rewrote every comedy bit of his numerous times. And he practiced them many times — in front of a mirror, in front of small audiences in nightclubs before he’d take something to a big stage.

#22: Get perspectives. Know your biases. Break Axioms

If you try to solve a problem using the same tools and perspectives that didn’t work the first time or the second time, you’re unlikely to make any progress. Often creativity lies in being able to change perspective.

The Wright brothers succeeded where others failed because they didn’t believe they needed to solve the problem of balance — as bicycle mechanics, they could see that the human operator could solve the balance problem. They broke an implicit “axiom” that had blocked others.

The biggest breakthrough in theoretical CS since NP-completeness was interactive proofs. Instead of a proof that is published, what if you’re given access to the prover whom you can probe interactively? This rule-breaking has revolutionized complexity theory and cryptography.

I’ve found that changing the perspective or bringing new perspectives is often the most powerful way to solve the thorniest of problems. I’ve seen it in all three flavors of work I’ve done — science, engineering, and management. To do that, it is helpful to know and acknowledge your biases. It begins with self-awareness.

#23: Be kind to yourself

As we strive to be better, to do better, it’s easy to fall into the trap of judging ourselves harshly. If we don’t measure up to an ideal version of ourselves, let’s treat ourselves kindly, take a deep breath, and work toward it. Slowly. Consistently. We can do it in 23 years.