English translation · Reader alias: BochuanRead the Chinese original ↗

Echo correspondenceNO. 16

To / For Airing

From Bochuan

When plans keep changing, how do I connect the next steps?

Reader alias · Bochuan

Letter Reply
CorrespondenceAcross the page

NO. 16Letter

Bochuan to Airing

①—Having read most of your latest blog post, I first want to say how much I admire your ability to keep producing work. Some of the issues and ideas you mention are things I have encountered, thought about, and tried to summarize too. Yet those reflections alone have not been enough to break through the constraints the world places on me as I understand it.

②—I have also listened to plenty of experienced people on Zhihu advise others about careers and life, but it always feels as though something remains unsaid. Perhaps planning has no single definitive method: a life contains too many choices and trade-offs. Rather than calling this a request for advice, I think that if I can explain my problems clearly, a solution may come to the surface on its own.

③—Looking at what you have achieved, and comparing it with my present need to bluff my way into a job, the gap feels enormous. When I first entered university, 〔specific entrance results withheld〕. I chose my degree carelessly, estimating that year's admission threshold only from previous thresholds and changes in the first-tier cutoff—my first mistake. After arriving, repeated rejection from student clubs damaged my confidence. I told myself I would work quietly and amaze everyone: my second mistake. I withdrew from people and claimed to have social anxiety, when really I felt embarrassed because I had nothing to show. Perhaps that was a side effect of having ranked near the top of my class for so long. Because I could not use a computer and doubted I could quickly learn the software for 〔former subject withheld〕, I missed the department laboratory recruitment, and with it many resources the university offered. By the end of the first semester, a series of careless oversights had left my grades disappointing, 〔specific ranking withheld〕. I feared losing my scholarship and having to ask my poor parents for living expenses. So in the second semester I put my energy into studying. After a whole semester of effort, 〔specific ranking withheld〕, and the scholarship was secure. Yet I was still uneasy. What was I learning all this for? The teachers marked out the important points, and everything marked out was something to memorize.

④—Soon it was my second year. The students doing projects in the department laboratories, also called the innovation classes, began gathering momentum: building teams, doing projects, entering competitions, writing patents, and publishing papers. I panicked. I could not compete, so I took a wrong turn and collected various useless certificates. Computer certificates added a lot of points to the comprehensive assessment; memorizing past questions was enough to pass, and I collected four. The College English Tests, Bands 4 and 6, were more ordinary. Seeing so many people fail Band 6 made me secretly pleased: this year's scholarship was secure again. My second year felt fairly full. I also worked part-time as a waiter and security guard, getting a little exposure to society. I applied for tutoring jobs too, but a single rejection destroyed my confidence. I had little faith in myself and feared misleading students, so I made no further progress there.

⑤—In my third year, as an engineering student, I began working on engineering projects. That was the start of my nightmare. In a course on embedded systems and microcontrollers, the teacher asked who knew C. A few classmates and I happily raised our hands. The teacher joked that the class would rely on us for its assignments. I felt nervous. It was true I knew C: I had read every word of a book called “Master C in 21 Days” in a month and scored highly in the Level 2 C exam. But I knew nothing about building projects with it. The exam did not test that; it tested syntax and the output of snippets. When the teacher set work, I could do only the easiest of the seven small assignments that semester. For the others, I copied a classmate. He could not write them either and said he had found them online; I did not ask more. I began to doubt myself deeply. Was I really that bad? The teacher had explained basic C variables, data-structure definitions, sequence, loops and branches, then moved on to microcontroller interface documentation. I could not logically derive the assignment answers from what had been taught. This exposed another problem: I kept approaching engineering as if it were an exam, expecting to deduce and handwrite the entire answer from the lesson. The idea was stuck in my head like a nail. I could not get past it and even thought that copying online was cheating. This foreshadowed how the later course design project would make me feel like jumping off a building.

⑥—Still on third-year engineering projects: during our first two years, one particularly capable roommate had brought the rest of us into projects. He knew how to use all kinds of laboratory equipment and was comfortable with the professional software. Although I had taken the relevant courses, I could only operate the software, not judge whether what I produced was any good. He almost always had to redo my contribution. By the third year, perhaps he saw us as competitors, or perhaps he thought we were beyond helping; either way, he stopped teaming up with our room. The rest of us drifted into other groups, contributing little. At the time I did not recognize my problem. I muddled through, thought about changing fields, and unconsciously avoided the fact that I did not know how to approach projects in my own subject. Practical courses in which I had previously received excellent grades now brought passes, average marks, and the occasional good grade in my third and fourth years. Avoidance, avoidance, more avoidance. I did not think about solving the problem. More than a decade of habitual thinking is not easy to turn around. Looking back, a conversation with someone capable might have helped a great deal, but there were too many people who knew little around me, and the capable ones were busy all day, leaving few chances to talk. Ah, there I go again: social fear and avoidance.

⑦—The third-year design project really exposed me as a novice. Given selected technical parameters, we had to produce a design document, a 3D model and drawings over three weeks, roughly a week per module. I was earnest and followed the teacher's instructions, writing the document step by step and consulting manuals to calculate the model data. The workload was enormous, perhaps partly because I lacked fluency. I worked from morning to night and still felt completion was far away. Seeing classmates copy existing plans online or reuse older students' projects, I looked down on them and became even more convinced it was cheating. As the weekend approached and my document was not even half finished, I despaired. Could this ever be done? I regretted choosing this subject and engineering at all. One evening in the engineering building's study room, I looked out of the window and cried, not understanding why I had to suffer like this. 〔lecturer and field withheld〕 was popular then, and I began thinking about studying 〔subject withheld〕 or the humanities to cultivate myself—ideally becoming 〔specific career goal withheld〕 who could stand up for ordinary people, or at least someone who understood right and wrong. Later I gave up trying to write the technical document properly. I copied large sections from online documents and changed the key data, gambling that the teacher would not inspect every number. Had I known, that would have saved so much trouble. The 3D model and drawings were similar: even with references, they took enormous effort. I could not justify every number as the teacher required. I simply did not have the ability.

⑧—In my fourth year I chose to apply for 〔target postgraduate field withheld〕, a master's program for 〔specific undergraduate eligibility restriction withheld〕. It was interesting at first. I spent several hundred yuan on video lessons, thinking paying would make me take them seriously. The teachers were lively and engaging, explaining cases and their causes in a compelling way. It felt much more comfortable than engineering. But the amount of memorization was huge. I used to find certification exams easy and thought I had a good memory. Looking at the questions for 〔target subject〕 and the textbooks, though, the format was simple: select a handful from hundreds of possible questions and see how many points you could reproduce. Tuition was expensive too, generally around 20,000 yuan a year. I had a strange logic: people in this circle were wealthy, so if I could get into it, perhaps I would become wealthy too. By August and September, classmates were preparing for autumn recruitment. Under the banner of preparing for postgraduate exams, I was living fairly comfortably. I had not memorized the answers and spent each day watching teachers discuss cases. Then came 〔specific course name withheld〕, with long theoretical arguments, and I began disliking this subject too. I felt unable to say such things: what something promoted or praised, with no logic I could understand. Once again, I wondered whether to give up.

⑨—Then came the graduation project. I wanted to avoid a project in my own subject as much as possible; I had been tormented enough. In high school, I had heard computing offered good prospects, but feared that people who had learned it already would have an advantage over me. That odd reasoning kept me from choosing it. Instead, my applications leaned toward energy, atmospheric science, polymers and materials—the old problem again. Hearing that the internet industry had a future, I wanted to see what its projects looked like, so I chose an H5 management app with an accompanying backend administration system. I fell into another trap. The brief specified HTML5, CSS3 and JavaScript, but I had no idea how to use them to make an app and an administration system. I kept rewatching syntax tutorials without writing a line of project code. Again, I approached a project as an exam question, expecting to write the whole answer from beginning to end. It was the pandemic. I was alone at university, not knowing what to do, playing Contra over and over as if compulsively, hoping to relieve the pressure. It did not help; it merely delayed things. Another student with the same supervisor later arrived to work on a similar project. Looking at my progress, he said I did not even know what I was trying to do and might fail to graduate unless I hurried. He asked whether I knew about backends and servers. I did not. He explained how data travels from a browser to a server, and that our project involved both frontend and backend work. I became anxious: I had not learned the things I actually needed. He selected some Vue courses on Bilibili and told me to watch them, saying I would understand afterward. He also explained that administration systems had templates and downloaded one for me. I was immensely grateful, though I never used it. He had already finished and revised his project several times. I hurried through a week or two of video lessons and still could not do it, partly because I could not even use VS Code. Unbelievable. In desperation I bought a 30-yuan course on Vue internals from someone working at 〔company withheld〕. Naturally, I understood nothing. It was my old high-school habit: assuming that mastering difficult questions would make the easy ones automatic, and working backward from hard to easy. In a progress meeting, my supervisor asked why I did not consult other people more, and told me to draw the project's flowchart first and proceed step by step. That did not require coding, so I could manage it, and finished in a day. The helpful classmate told me to write my thesis immediately; code could be submitted later, but without a thesis I would not even get to defend it. I followed his advice and spent a week getting most of it written. Apart from code and screenshots, it contained the required elements. At the next meeting, when I said the thesis was almost done, my supervisor said the code was still necessary and I should hurry. While searching Bilibili, I stumbled on a tutorial for an administration system built with layui that seemed easy to follow. I downloaded it and worked through it slowly. Using that system as a base, I started writing the business logic for my project, and finished the backend's basic create, read, update and delete operations in a week. For the mobile app, I took a shortcut: I changed the backend interface to fit a mobile screen, producing a very ugly H5 app. That was more or less how I finished. I deliberately dropped the scanning-related feature, so the final grade was a pass. That meant no scholarship.

⑩—After finishing the graduation project, I still had a month or so before leaving university and had not decided what to do next. I had bought civil-service exam books for over 150 yuan, read a few pages and abandoned them. I had also bought military civilian-recruitment textbooks for over 60 yuan, again read a few pages and discarded them. What a waste. I felt deeply conflicted. By chance, I Googled how to teach myself computer science and found teach-yourself-cs, covering programming, architecture, algorithms, mathematics, operating systems, networking, databases, compilers and distributed systems. It immediately caught my interest. I secretly thought that if I learned all of it, I would be a god of computing! Then “The Elements of Computing Systems” drew me in. Its hardware section starts with logic gates, repeatedly abstracts and encapsulates them, exposes interfaces upward, and builds the CPU's arithmetic logic unit. As a computing novice, I found it astonishing. The latter half surveys software: translating assembly into machine code, virtual-machine language into assembly, and Jack into virtual-machine language. There are practical examples and test files throughout. It was the first time I wrote a program longer than twenty lines, and I was thrilled. Writing compiler scripts was difficult, so I also completed Berkeley's introductory Python course, CS61A. CS61B uses Java. I learned some data-structure definitions and basic operations at the start, but gave up when the game project reached algorithmic map generation because I could not understand what it meant. My plan had been to learn all this during one year at home, covering what others learned in four. Wouldn't that be wonderful? But I overestimated myself. Even the introductory Python course and the software projects from “The Elements of Computing Systems” took me almost two full months, let alone the harder, more demanding courses. As the English slides for CS61B grew more abstract, I could not understand them even with translation. My ability was limited—really limited.

11—By the end of 〔specific year withheld〕, to avoid people talking, I bought a ticket before the New Year and rented a room in an urban village near my university, intending to look for work. I called it job hunting, but had not even decided what kind of work I wanted. I just felt awkward staying home while people asked my parents why their university graduate was not working. I spent a long time debating Python versus frontend work. With Python I knew only a few scripts, whereas I had at least done a frontend project and could say something about it in an interview. So I chose frontend development. Then I discovered freeCodeCamp, thought the material looked excellent, lost confidence again, and decided to finish it before applying. I want to scold myself: there are endless tutorials; you cannot finish them all. After the university entrance exam I had even wanted to take unfinished exercise books home to work through—an obsession, really. I kept delaying until June, when I was short of money. I had asked my parents for 5,000 yuan when I first left home. I was doing so badly. In mid-June I finally gathered the courage to send out my résumé, applying to a few selected companies. Nobody responded. The next day I switched to bulk applications, and my phone immediately started buzzing. But the roles were strange: could I use Photoshop for web design, accept 3,000 yuan, or work part-time as a graphic designer? I arranged about five interviews. Two turned out to be training programs that required loans; another wanted a three-day unpaid trial. One legitimate company asked whether I knew mini-programs and uni-app. I said I had not used them. They asked me to explain cross-origin requests, and I answered in one sentence: it was a browser security policy. The interviewer paused, asked my salary expectation, and I said 5,000 would do. Then I was sent away. I was attending interviews, not wandering around a fair—I needed to prepare interview questions. Feeling bad, I skipped the remaining interview; I could not get there in time.

12—Back in my rented room, I realized I was less sought-after in the programming job market than I had imagined. Nobody cared about my university entrance score or university grades. I contacted the teacher behind my graduation-project tutorial, who offered a one-month intensive employment course for 4,000 yuan. I did not have that much, so I approached 〔relative's identity and work withheld〕 to ask for a loan. During the previous months of burying myself in study, I had largely cut off contact with my family. I felt irritated and did not want to talk. 〔Relative〕 told me firmly there would be no loan: I should come and work in a factory myself. Nearby factories were always hiring, with 3,000 yuan a month, food and accommodation, one day off a week and eight-hour days.

13—That began my electronics-factory chapter. It seemed novel, and I wanted to experience it. At first I thought that with a bachelor's degree I could be a clerk or handle orders. But when I met the recruiters, I lost my nerve again. I did not know how to write my résumé and only wanted short-term work, so I decided to be a line worker rather than have someone train me for nothing. Even that interview brought rejection. I said I had a bachelor's degree and wanted to work for three to six months. They immediately said they did not want novices or short-term workers. I was upset. Why reject me, as if everyone else stayed for years? What difference was there between experienced and inexperienced line workers? Couldn't you learn in a few minutes and become proficient in a few dozen? 〔Relative〕 told me not to be so honest: say I wanted long-term work and had extensive experience in parcel delivery. Fine. I interviewed at another factory the next day and got in with that story. I signed a simple contract and prepared to start the following day. Apart from the drowsiness caused by repetitive motions, life on the line was all right... (many, many words omitted in the original)... I worked there for three months and saved 10,000 yuan. I usually ate at 〔relative〕's home, so I spent little and saved everything.

14—After leaving the production line at the end of 〔specific year withheld〕, I began thinking about my future again: frontend development or something else? I saw operations jobs on V2EX and wondered whether I could do them. Never mind; I would practice algorithms on LeetCode instead. Everyone said algorithms were essential for interviews at large companies, and I felt I probably did not measure up. A few days before the New Year, I rode in 〔relative〕's car with the whole family, traveling home through wind and rain. Then 〔family event and relative's background withheld〕. Her training and related costs had totaled more than 30,000 yuan. At first, dozens of companies had rejected her; after several months she finally found a first job paying 5,000. Now she was taking home more than 10,000. She said the trick to interviews was being able to talk yourself up and having more courage. After the New Year, I returned early to the little dark room I rented near the factory and began preparing to seek work in 〔city withheld〕.

15—I arrived in 〔city withheld〕 on 〔specific arrival date withheld〕. I first found a hostel on a map app, but after circling the destination several times, I could not find it. There was no storefront. A receptionist eventually led me to the fourth floor. It was nearly full and too crowded to move around easily. After hesitating, I decided to cancel and find somewhere else. Their online marketing had been effective enough to lure me there. Holding an umbrella in one hand and pulling my suitcase with the other, I wandered beneath the buildings at 〔place of residence withheld〕, looking for another place. A middle-aged woman stopped me and asked whether I needed accommodation. I did. We agreed on a price of 〔accommodation cost withheld〕, and she took me and another young man upstairs. The accommodation was on the eleventh floor; she controlled four rooms on one floor. She was probably subletting them, with quite a business and a large bunch of keys, 〔shared hometown connection withheld〕. The rooms were mostly left open, their living rooms packed with bunk beds. They were not full, but the balconies and washbasin areas were terribly messy, piled with things. The toilet was worse; I do not know how to describe it. After settling in, I deposited the few thousand yuan my parents had given me at an ATM. It was very cold in 〔city withheld〕 then. I spent most days in bed with my legs stretched out and my laptop on the bedding, reviewing interview questions. Around Friday, the weather improved and I sent a few applications—only eight, to avoid being bombarded by training providers. The morning applications drew little response. In the afternoon, one company read mine and another sent a take-home assignment: an unusual carousel, image upload, and a linked form, due before Monday. Another company simply asked whether I knew everything in its job description. I said yes, perhaps to a nontechnical recruiter screening for the boss, and was invited to interview. The company name was so long that the map app initially located it incorrectly, and I arrived more than twenty minutes late. I showed the boss my résumé on my phone and introduced myself. He asked few technical questions, mostly how I had learned, whether I knew certain things, my weaknesses, my views on overtime, and my salary expectation (〔specific salary withheld〕). I was nervous and spoke quickly, without rhythm. He showed me their product, a complex web application with real technical substance. Although unsure inside, I acted fearless and talked confidently. He then escorted me to the door and into the lift. Only later did I learn that this was a promising sign. Back at my accommodation, I worked on another company's assignment. That evening, HR unexpectedly called to say I had passed and asked whether I would accept a lower salary. I said my figure was already the minimum. They said they would consider it for a couple of days. On Sunday, HR called again: the boss agreed, and could I commit to accepting? I said yes, and the offer was emailed to me. That was my first complete experience of finding a job.

16—〔length of employment withheld〕 of working life can only be described as bleak. On ordinary days there was little development work and plenty of time to slack off, but when a project needed launching or demonstrating, overtime meant working through the night without complaint. Considering the technical level of 〔team composition withheld〕, the boss did not ask for things beyond our abilities, and we rarely proposed extra requirements ourselves. Over 〔length of employment withheld〕, we built a company website, redesigned a mini-program's interface, adapted a desktop application for mobile, developed modules and components, created demonstration prototypes and administration systems, and so on. There was not much technical depth. Whatever we did not know, we copied from open-source projects. That was all.

17—〔departure timing withheld〕, repeated business setbacks left the company unable to continue, and 〔team size and roles withheld〕 were asked to leave. They initially offered only 〔initial compensation amount withheld〕 as compensation. After arguing, we obtained 〔additional compensation amount withheld〕. It was still a loss, 〔proportion of compensation shortfall withheld〕. Perhaps because there was some affection left and we did not want things to turn ugly, we accepted the agreement. Then it was 〔year and month withheld〕, and I still had not begun looking for work. What had I done in 〔time since departure withheld〕? I played several online games and wondered why the games industry was so huge—an area that had been blank in my mind. It astonished me that some marketing accounts with only tens of thousands of followers could earn twenty or thirty thousand yuan a month when run well. Second, I dipped a toe into online content creation, earning only a few dozen yuan. The videos were low-effort and made just to complete promotional tasks. Producing anything presentable in that field takes sustained care. My future plan is to continue frontend development as my main work, digging deeply into something like performance optimization so it becomes a strength I can show. As a side project, I definitely want to develop content creation. Writing scripts is manageable, but I still have few ideas about presenting them in a visually engaging way. In my everyday Douyin browsing, I have not found much to borrow.

18—To sum up: I have treated major decisions too casually and lacked the ability to investigate them. My life has lacked continuity. I jump from one idea to the next, without laying the groundwork for what follows.

CorrespondenceAcross the page

NO. 16Reply

Airing to Bochuan

Yes, that is the overall impression I get too. But your approach to life is still positive. I have just a few suggestions; see whether they suit you:

1. Planning: try making some shorter-term plans, across a range of three months to five years. I give each year a theme, and update my five-year plan during my annual review. This covers my whole life, not just my career. For a five-year horizon, you can maintain three to five different branches at once. If you drift away from them, reflect promptly: was the departure unexpected, does the plan need updating, or was something overlooked when it was made? You can use OKRs directly as a tool, keeping the detail as fine-grained as possible.

2. Reflection: try keeping a daily or weekly journal, recording what you did, where you fell short, how you could do better, and what you plan to do tomorrow.

3. Perspective: read more to broaden your thinking and the angles from which you see problems, so that you do not keep getting stuck in dead ends.

4. Ability: think more before making a decision, because decisions matter; concentrate while doing the work, because it needs your undivided attention. Develop more of your abilities, keep asking why, and remain curious and eager to learn.

ECHO / PASS IT ON

Share this issue

The cover of this issue of Echo