AI 輔助開發正在削弱軟件工程的探索樂趣
Journey before destination
AI 輔助及智能體開發加快了軟件工程的成果交付,卻令工程師追查問題根源、摸索解決方案的過程大幅縮短。作者認為,軟件工程的樂趣不只在於得到結果,也在於沿途學習和克服難題,並提出疑問:我們還能否像以前一樣享受這段旅程?
Journey Before Destination
I got into software engineering because I enjoyed it. I enjoyed the process of learning, the feeling of writing something and knowing that those sets of instructions were successful in achieving whatever goal they were set out to achieve, and that they did exactly what was needed.
Sometimes, things did what was needed but not in the way you expected. For many of us, it didn't matter how something worked as long as it worked. For a crazy few of us, however, it did. So we set out to figure out why something worked when we expected it not to, and then, being the crazy folks we were, we wanted to change that working code and break it. That sounds quite ridiculous if the thing being made wasn't software but some sort of physical object. It would be crazy to break a physical thing after you've made it and it works. But that's what software allowed us to do. We could experiment as much as we wanted, as long as we had the time.
Now, with the current world of AI-assisted and agentic development, or whatever fancy, investor-friendly term you want to use for it, it seems like all the fun is gone. Yes, you're achieving results, and at quite a fast pace, but where is the fun of losing your head over a config that isn't working for two days, only to find out that the issue was a character in the wrong case?
For me, the most memorable moments in my software engineering journey have been the ones where I spent a lot of time finding the root cause of an issue or figuring out a solution, followed by that hurrah moment when it finally worked the way I wanted it to. These weren't necessarily the most glamorous things you'd put on your CV. They may or may not have had enough business impact to look shiny enough for recruiters, but the journey of solving them was fun and satisfying because you learned so much about whatever system or context you were dealing with.
With AI, that whole journey seems to be reduced to almost nothing. You give it a prompt, wait a little, and there it is: a solution that either works or doesn't. Then you move on to giving it another prompt for the next JIRA ticket or asking it to solve the same problem in another way.
It feels like you've been riding horses, carriages or cars on your journeys, depending on the road, but now someone has just invented teleportation. Except it's not a perfect kind of teleportation where you know exactly where you're going to end up. It's more like the Floo Network from the world of Harry Potter. You say where you want to go, and the Floo Network takes you there, but sometimes, instead of a sandy beach, it drops you in the middle of a sandy desert. Now, there's no need to worry. You can ask it to take you to the correct beach with a little guidance, or ask it to take you home so you can start again, as long as you can afford it.
But the main thing to worry about is: where is the fun? Where is the journey? Would I want to land directly on the beach, or would I rather get there by train so I can watch the landscapes change along the way, look at the buildings in the cities, and see the sky go through its various phases?
One of my favourite memories ever is a trip to a mountain-top lake formed by a glacier. The reason I have such fond memories of this trip is the journey to get there: travelling along a small, dangerous path winding around mountains in a questionable jeep that somehow kept running on prayers alone. Then came the hike to the top, and when I finally reached it, the view was absolutely breathtaking.
If I could have teleported there instead, I would probably have looked at the lake, said "Nice lake", taken a picture and teleported back home. Then I would have forgotten about the place.
What I'm trying to say is that the journey part of software engineering seems to be diminishing, if not disappearing completely. Now, you just get the results, have a discussion about whether you like them or not, and then move on to the next ticket to repeat the cycle.
I don't want to argue that things shouldn't continue this way. We know AI is here to stay, and there's no going back. But the question is: will we ever enjoy this journey the way we used to?
I guess this is where I'll end this piece, leaving you with these words from Kaladin Stormblessed:
"Life before death, strength before weakness, journey before destination."
來源:DEV Community · dev.to