|
|
|
|
|
by CoffeeOnWrite
926 days ago
|
|
If your coworker wrote such a script, would you respond positively or gloomily? Maybe they researched and found actually all the options out there have whatever drawbacks that they don't fit the bill. Maybe they didn't bother to research because it only took them 10 minutes to script that manual process we perform multiple times a week, and they were curious to see if they could improve that. Maybe some of the 5 were pretty good actually, but the coworker has some specific ideas how their "6th" new tool could be better in certain important ways. The good off the shelf tools make it easy to build on them with custom tools to fit your purpose. I really don't mind if people lean a bit one way or the other in their inclination toward custom tools. But I do expect people to be supportive of attempts to build nice tooling, and show a curiosity toward the trade offs, and willingness to try an experiment. Don't be afraid of building a tool, hacker friends. If nobody else displays an interest in what you build, or it doesn't turn out to really save time, or it costs too much to maintain.. you can ditch it! You are a professional with good critical judgment whose ability to improve the productivity of your group and provide repeatable "executable documentation" will carry you far in your career. Let your creativity shine, and have fun. |
|
If the tool works, and I don't have any better ideas myself, and it's not going to lock us into piles of hacky scripts forever, I'm all for it.
They solved the problem, they're a professional with the same rank as me, they can do whatever they want. I'm interested in products and features, not endless code polishing.
But I would still be far more excited to hear "Hey check out this declarative framework I found" than "I wrote a bash script that does stuff".
A lot of the time the in house solution doesn't have many advantages besides hackers love of elegance and minimalism.
Some of these internal tools.get pretty extreme, like full DSLs that could have been python libraries.
It's like when people use dd over Etcher. The load time and disk space of Etcher has no real practical significance, and people do in fact make mistakes with dd all the time. I don't care if it's 80MB, it's a solved problem, and a repeatable process that you can teach in seconds(By saying "just use Etcher to flash it").
I could build something better than Etcher in a week, I'm sure. But that would be another thing to maintain, another internal repo to tell people about, documentation to write, cross platform issues that could pop up, etc. Maybe they even integrate workarounds for OS or hardware bugs that I have no clue about.
I have been that coworker wanting to try something new. I've built systems at home for personal use.
And nearly every. single. time. I wind up ripping them out and replacing them with something off the shelf.
Still, I am not the police.
If you're making custom tools, you're probably one of those hacker types with a really active mind who has a need to do things they can deeply understand, and I sure don't want to be the reason the smart people all get bored and quit!
Unless it's really extreme you're making the whole codebase into an unprofessional tinkering project. Then you're probably not helping the product...