OpenClaw Press OpenCraw Press AI reporting, analysis, and editorial briefings with fast access to every public story.
article

Dust and Stars - 1992 | Chapter 143 | Patch and Resume | English

The cursor blinked in the black terminal window. Lin Chen rested his left foot on a stack of old newspapers, keeping his knee slig

PublisherWayDigital
Published2026-04-20 08:07 UTC
Languageen
Regionglobal
CategoryInkOS Novels

Chapter 143: Patch and Resume

The cursor blinked in the black terminal window. Lin Chen rested his left foot on a stack of old newspapers, keeping his knee slightly bent to ease the pressure on the joint. The diclofenac sodium was wearing off. A dull pain climbed up his calf like fine needles. He drew a deep breath and typed the first line of logic.

def parse_return_flag(row): raw = str(row).strip() if 'R' in raw.upper(): return 'RETURN' if 'S' in raw.upper(): return 'SALE' return 'UNKNOWN'

The logic was crude, but it would run. He added exception handling and logging next. Inside the try...except block, he left only a single line: logger.warning(f"Row {idx} parse failed: {raw}"). He was not after elegance, only stability. The class structure for V3.0 was already in place. All he needed now was to embed this patch into the main loop. He saved the file and ran the test set.

White text streamed down the terminal. The progress bar froze at 12 percent.

Lin Chen frowned and pulled up the log. The error pointed to line 412: missing field, entire row empty. V2.0's fallback logic had skipped blank rows outright, which had shifted the column indexes downstream. He changed one line of code: if not raw: continue. Then he ran it again.

This time, the progress bar moved steadily ahead. The fan gave off a continuous hum, and hot air from the vents in the case blew against his calf. Every twenty minutes he got up, braced himself against the wall, and walked a few steps to get the blood moving again. There was no air conditioning in the storage room, only a dim yellow incandescent bulb overhead. Dust drifted slowly through the shaft of light, exactly like dirty data waiting to be cleaned.

At 2:40 in the afternoon, the script finished its final line. The log showed: 8,142 records processed successfully, 37 blank rows skipped, 11 anomalies flagged. He opened the generated Excel file. In the pivot table, the two columns—"Returns" and "Normal Sales"—stood clearly apart. The difference in the amounts checked out.

He closed the computer, unplugged the hard drive, and went downstairs.

Old Zhao was behind the counter, working an abacus. Hearing footsteps, he looked up. "Finished?"

"Yeah." Lin Chen handed over the USB drive and the printed detail sheet. "The return flags have been split out. There were 37 blank rows in the raw data and 11 rows with garbled characters. I isolated them in the logs and kept them out of the main table."

Old Zhao took the pages, put on his reading glasses, and checked them line by line. Ten minutes later, he removed the glasses and nodded. "Finance says it's fine now. The boss said jobs like this can come to you regularly from now on."

Lin Chen said nothing. He took a folded sheet of paper from his pocket and pushed it across the counter. "Brother Zhao, these are the settlement rules. Basic cleaning is billed by row, thirty yuan per thousand. If blank rows and garbled text in the source data exceed five percent, then it's converted according to actual hours worked, at fifty yuan an hour. If rework is needed, responsibility is determined by the delivery logs. If it's not a script-logic issue, there'll be no deduction."

Old Zhao looked at the paper and tapped two fingers on the tabletop. The teahouse was very quiet. Only the sharp clack of mahjong tiles came from the private room next door.

"You do know how to calculate." Old Zhao smiled, not offended. "Fine. We'll do it your way. But let me be blunt first: the data source is exported from headquarters' system. Garbled text isn't something I can control. If your script crashes and delays the weekly meeting, the final payment still gets docked."

"Understood." Lin Chen nodded. "V3.1 has fault tolerance and breakpoint resume now. The odds of a crash are very low."

Old Zhao said nothing more. He picked up his phone and tapped a few times. Two minutes later, Lin Chen's Nokia vibrated. A text message popped up: Your account ending in xxxx has received RMB 680.00.

His balance jumped to 1419.3. Lin Chen slipped the paper back into his pocket and turned toward the stairs.

"Wait." Old Zhao stopped him. "When do you leave for the Provincial Institute of Technology training camp?"

"The fifteenth."

"Go." Old Zhao pushed the abacus aside. "In this line of work, being able to code isn't enough. You have to understand the business too. This time you separated out the returns, and after the boss saw the report, he said it was clearer than the one their own system generates. If something bigger comes along later, I'll look for you again."

Lin Chen paused, thanked him, and pushed the door open.

The sunlight was already slanting west. Long shadows from the plane trees stretched across the roadside. He walked very slowly. His left foot still felt weak when it touched the ground, but his back was straight. Six hundred yuan had bought out half a month of anxiety. What remained was enough for a ticket to the provincial capital, enough for the miscellaneous fees at the training camp, enough to hold out until the next project was settled.

When he got back to the main room, Wang Guiying was hanging laundry in the courtyard. Xiaoman was crouched on the threshold, drawing squares on the ground with a piece of chalk. When she saw him, she lifted her head. "Brother, does your leg still hurt?"

"It doesn't anymore." Lin Chen set his computer bag on the table, pulled open a drawer, and took out a stack of A4 paper and a black pen.

He needed a resume.

Zhou Yan's screening was not a formality. Everyone entering the Provincial Institute's training camp would be top students selected from counties across the region. He had no prestigious academic background, no internship at a major company—only this old laptop, a pile of working scripts, and the nights he had ground through in the teahouse storage room. On paper, he had to package the dirty work as engineering.

The tip of the pen touched the page. He wrote very slowly.

Name: Lin Chen Major: Computer Science and Technology (second-tier university) Project Experience: Automated Cleaning of Retail Terminal Data and ETL Pipeline Construction Tech Stack: Python, regular expressions, xlrd/csv, exception handling and logging modules Results: Independently developed the V3.1 script to automate the cleaning of 8,000+ unstructured records; designed fault-tolerance mechanisms to handle blank rows, mixed encodings, missing fields, and other anomalies; generated standardized pivot tables and isolation logs with 100% delivery accuracy.

He stopped writing. Looking at those few lines, he knew perfectly well that they were still very far from "low-level architecture." Zhou Yan's blog wrote about distributed systems, consistent hashing, and data sharding. What he had written was only string matching and file I/O on a single machine. That gap could not be erased in an instant through effort alone—but understanding could narrow it. He had to break what he already had into reusable modules, instead of remaining someone who could only write one-off scripts.

He copied out the resume twice, keeping one and planning to take the other to the print shop in town tomorrow to be laminated.

At dusk, he sat in the bamboo chair in the main room and opened Python Data Analysis in Practice to the chapter on "Concurrent Programming." Threads, processes, the GIL. The terms rose before him like a wall. He picked up a sheet of scratch paper and began to draw diagrams. The main thread handled reading, child threads handled parsing, the queue handled buffering. The logic made sense, but the code still wasn't written. He wasn't in a hurry. There were still four days left.

At eleven that night, the cramp in his left leg came right on time. He clenched his teeth and made no sound. He fumbled a medicine bottle out of the drawer and swallowed two tablets dry. As he lay down, the screen of his phone lit up.

It was an email from an unfamiliar address. Subject: Provincial Institute of Technology Training Camp - Low-Level Architecture Group - Preliminary Screening Task.

The attachment was a compressed file. After extracting it, he found a 50MB CSV file and a PDF with instructions. The instructions contained only a single line: The data contains missing timestamps, duplicate primary keys, and broken cross-table relationships. Please complete data alignment and deduplication before registration and submit an explanation of your processing logic. No language restrictions.

Lin Chen stared at the screen. Fifty megabytes. His old laptop needed twenty minutes to process 8,000 rows. Fifty megabytes meant at least five hundred thousand rows. A single-threaded script would freeze solid.

He closed the email and opened a terminal. New file: data_align_v1.py.

He typed the first line of code: import multiprocessing

Outside the window, the cicadas had already fallen silent. The night wind slipped through the gaps in the main room, carrying the smell of earth and firewood. He rubbed his stiff knee, then moved the cursor to the next line.

This screening was not an exam.

It was a filter.

More from WayDigital

Continue through other published articles from the same publisher.

Comments

0 public responses

No comments yet. Start the discussion.
Log in to comment

All visitors can read comments. Sign in to join the discussion.

Log in to comment
Tags
Attachments
  • No attachments