It's hard to constantly reinvent the universe to make it fun again. Oh, look at us, 'young' programmers and admins, our early 30s: how many of us have been doing this stuff for 15 years now? And to already be weary of the daily grind, to have discovered cynicism prematurely. How do I awaken to the realm each morning, doe-eyed and blissful to learn new secrets? This venue is beyond familiar. I think I know the dance moves all my heart. And if there are more to find, my heart has grown too shallow to push blood at my feet to dance. I look in other windows, other professions, and see such ripe opportunities to improve their process. Faulty confidence? To swap careers with another forlorn professional, just long enough to rediscover why programming is indeed a for the young at heart. This weird intersection of procedure and creativity, the nexus of writer's block and chasing the bottom line, how do we keep it all together for the decades to come?
One of the first things I programmed when I was a kid was a parser (and calculator) for arithmetic expressions. It was hand coded, in Quick Basic (the interpreter version that came for free with MS DOS), and quite bad code, as I had never before read anything about how to do it. And I had a lot of fun!
Last week (about 22 years later) I programmed a new generator for scannerless context free parsing which takes layout into account, using my own special variant of Earley parsing. And I had a lot of fun!
I beat the grind by moving from domain to domain every few years. Real estate, finance, power sports (Motorcycle/ATV), etc. I am constantly re-inventing the wheel, but each wheel comes with it's own set of problems. I have found that it's quite enjoyable learning about these other domains just for their own sake. It's also nice to pick up skills like 'what to look for in a house', 'how to tell which dealership to purchase a vehicle from', etc.
Is there any research to back this sort of popular statement? I am very skeptical of this kind of statement where the author makes up a romanticized story to illustrate his point. This is very similar to the popular "do what you love" blog post that get posted here once every few months.
The best programmer I know in person agonizes over his approaches until it satisfies his high level of standard. He is a professional, not an amateur who does his work for fun. Does he have fun when he works? Yes, sometimes, but not all the time.
so i think this aphorism is borrowed from a quote by Alex Lowe (in the American Alpine Journal); For those not familiar with AL, he was a brilliant alpine climber of apparently super-human endurance who died while climbing Shishapangma (an 8,000 metr Himalayan peak in Tibet. I know very little about the context in which AL made this statement, but his remark might have been provoked by his impatience with the obsession to rank climbers (like baseball pitchers or NFL running backs), given that to him climbing was a deeply personal endeavour rather than a spectator sport.
I'm not sure of when it was first said but IIRC it was a response to someone accusing him of being the best climber in the world in an interview.
Lowe by the way was a fascinating character who, in addition to being one of the worlds top athletes, studied mathematics and would reportedly bring math text books on expeditions to keep himself entertained.
It's much easier to demand proof than it is to present it, isn't it?
This is particularly true when we're talking about a subject that's notoriously tricky to measure (programmer productivity) and subjective (what the hell makes for a good programmer anyway?).
At the end of the day, there's only so much usable data to work with, and you can't blame people for making decisions on limited data. That said, if you know of any data that disproves his point, I'd love to see it.
At this point, I've worked with a ton of programmers. The ones who really stand out, are the ones who enjoy their work. If that person also enjoys coding with others, and the process of improvement, they have unlimited potential.
The happiest programmer is the one having the most fun. And in the case of this article, the best programmer is portrayed as the one who started out having the most fun.
This isn't just pedantry; I've known a lot of programmers that absolutely loved their work but wrote code that was mediocre or worse, or wrote decent code but couldn't structure a project to save their lives.
"I have so much fun doing this" doesn't immediately imply "I know or seek to know all of the intricacies of this subject."
The display switch is a fun hack, but even a decade ago I think there were already programs where you could just wag your mouse over to the other screen of a computer. It doesn't need a display switch at all, just an app on both computers that passed the input from one to the other over the network under certain situations. Such apps are still used frequently today where people will bring a Macbook Air and an iPad to a hackathon and just use the iPad as a second screen. This became a big thing when everyone had to throw out their old PS/2 KVMs for USB ones or just use a software solution.
This is true of me too, a lot of times I have fun writing something already done, although it is kind of a sad waste.
I see programmers are mostly concerned, over any other profession, of how good they are at what they do. How to be best. Yet - they are the least understood or recognized for the effort. Anyone else finds it strange?
> I see programmers are mostly concerned, over any other profession, of how good they are at what they do. How to be best.
IME, that's not even close to being true. Sure, there are programmers that really care about their craft, just as there are people that care about their craft in every profession, but I've never seen any evidence that programmers in general have more than the average degree of drive to find ways to be the best.
IME, professions where the average professional doesn't make very much and/or where the opportunities to make lots of money in the profession tend to come with a fairly short time clock tend to be the most driven -- athletic professions (not just the sports where the "big leagues" are well known like football, etc., but things like dance as well) are very much like this. Programmers in general, not so much.
Quite possibly people drawn to the startup world (whether its software startups or biotech startups) are more likely concerned than average about being the best -- that certainly seems consistent with my experience -- but that's different than the particular profession.
I think this ideas comes from the lack of careers that are so openly talked about that also have so much latitude for improvement and improvisation. Many professions have been turned into assembly lines, button pushing, and quality monitoring. The craftsmanship of many jobs has disappeared.
Programming is only widely open and publicized via the internet, it's natural for people with computers to have a greater presence on the internet.
However if you talk to someone that practices a craft,like carpentry or brewing, you will find a similar drive and passion to learn the techniques, soft skills, and hard skills that are required to be great. It's really about craftsmanship, not about software.
True programmers are passionate by what they are doing. People in another job which is also passionate, will concern about getting better too.
I'm not sure about other professions, but people that actually don't like programming and works with it, quits very soon. I don't saw people with 5+ years of experience that don't love doing it.
Programming is not all that much different than other disciplines, and if you spend time in corporate IT, you will see just as many programmers doing their job just as a job, despite not being in love with it, as you will cooks (not chefs) who don't adore cooking, but do it because they're good enough at it to make a living that keeps them happy.
I think part of the reason this thread is generating "programmers are different" comments is that it's easy to believe you're different when yours is the only field you know intimately from the inside (wow, that came out wrong).
So true. It's simple - playing aroung does open ones mind. It's that simple and that hard. But it requires passion - no one will be able to force himself for side project and even if he do, no lesson will be learned. I observe it all the time across my coworkers - those, who like play around with related technologies, are getting better all the time.