Why Programming Is Both a Craft and an Art: Lei Jun’s Journey and Advice
Lei Jun shares his unexpected path to programming, the joy he finds in coding, and practical advice on staying curious, focusing on users, and treating software development as both disciplined craftsmanship and creative art to build a lasting career.
Lei Jun recounts his unexpected path to programming, studying computer science at Wuhan University in 1987, joining Kingsoft in early 1992, and remaining a hands‑on programmer despite becoming a department head.
1. Writing code is my strongest and favorite skill
I discovered the wonder of computers early on; mastering programming lets you command the machine and feel like a ruler in your own kingdom. The vast digital world lets programmers imagine and control every byte and bit.
Initially we believed we could do anything and felt superior to foreign developers, but confronting seasoned engineers revealed the depth of experience required. Fresh graduates quickly learn that programming is not just a hobby but a lifelong vocation, demanding full immersion to feel the craft.
Programming is mentally demanding and exhausting, yet I would do it for a lifetime. Writing code is both easy and hard; half‑hearted work leads to mediocrity, while wholehearted dedication over ten years is challenging. I advise those who dislike programming to switch careers early.
2. Do not let your goals limit your ambition
Technology evolves rapidly; staying curious and continuously learning new tools is essential to avoid obsolescence. I keep up by reading industry magazines and attending meetups, and by exchanging ideas with knowledgeable peers.
Modern software development emphasizes teamwork, with dedicated analysts, UI/UX designers, and specialized roles. Programmers must understand user needs, not just focus on technical excellence. Ignoring user experience leads to poor products, while empathizing with users creates valuable software and entrepreneurial opportunities.
3. Programming is technology and art
Some view coding as a skilled trade, others as artistic creation. Like stone masons who leave lasting cultural heritage, programmers contribute to large‑scale software projects that can feel like heavy labor yet also produce captivating products.
Programming possesses both attributes: it is a technical activity enabling mass production, and an art that yields delightful software experiences.
Advice: Write code like a craftsman and like poetry
Just as a carpenter hones skill through repetition, programmers must write enough code—ideally tens of thousands of lines—to develop intuition. Hands‑on practice is crucial; theoretical knowledge alone is insufficient.
To write code poetically, study classic programming books, rewrite every example, compare with originals, and gradually refine your style. Examine open‑source systems like Linux, read extensive documentation, and internalize software engineering principles such as "errors will occur where they can"—initialize variables, validate parameters, and check boundaries to achieve robust, bug‑free code.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
21CTO
21CTO (21CTO.com) offers developers community, training, and services, making it your go‑to learning and service platform.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
