4 ms·
My view of frameworks and tooling has translated into other facets of my life. I wouldn’t by a chainsaw until I felt the pain point from using an axe and branc
by devmunchies 6y ago
My view of frameworks and tooling has translated into other facets of my life.
I wouldn’t by a chainsaw until I felt the pain point from using an axe and branch cutters, or buy a leaf blower until the raking/sweeping got old.
There’s a lot of problems a framework can solve but as a software engineer you should know intimately what each of those problems are before relying on more powerful tools.
I actually find frameworks limiting in a lot of ways so I prefer mixing in specialized libraries
- Ididntdothis 6y agoI feel that often a framework can give you a jump start into something new Where you don’t know what you need but at some point you may outgrow it and be better off doing your own thing because now you know exactly what you want. Happened to me for example with ORMs or third party WPF components. They were good to start but at some point became limiting. I think you often can’t or shouldn’t skip that step because otherwise the learning curve would be too steep.
- onemoresoop 6y agoCertainly frameworks can do that but most of the time, especially for an important codebase it’s a good idea to rewrite the whole thing. It’s actually a good idea to start away even when you have lots of unknowns but have in mind it would be a good idea to do a rewrite. Smart companies do at least proof of concepts for this type of project and it pays off. A few sturdy well made code bases can become the backbone of a little enterprise.
- anderspitman 6y agoThese days I usually try to implement something from scratch before taking on a dependency. A lot of times I find I never need more than a tiny slice of the functionality a library would offer. And even if I decide I need one after all, I have a much better appreciation and understanding of what it's giving me. Over time I've developed a sense for what sorts of things are likely to be hard to do myself.
- oorza 6y agoI take the exact opposite perspective in my personal life. If I've got a huge weekend project, I'm gonna go ahead and get (or rent) a chainsaw because my time is valuable to me and I don't need to live through the struggle of manual tools to understand the benefits of technology. What does the day of struggling with branch cutters and an axe before succumbing and renting a chainsaw really earn you? Do you really feel like you did a better job or something because you felt like you earned the chainsaw? I've written an HTTP server from scratch before. I've experimented with scaling it up in multiple ways. I've admitted defeat and gone back to using pre-existing software. Other than scratching an itch to learn, I can't tell you one fungible benefit I got from that exercise as it relates to developing a REST API. Why should a software engineer who builds a REST API need to understand the inner workings of HTTP to use an HTTP framework? Why should a software engineer need to build a massive UI to understand how hard state tracking is to use React? Chances are someone is paying for that code which, by definition, is worse than it should be because it's an exercise in learning why the framework is necessary.
- devmunchies 6y ago> I've written an HTTP server from scratch before. I've experimented with scaling it up in multiple ways. I've admitted defeat and gone back to using pre-existing software. Exactly. you're a better software engineer for it because you understand the underlining problem better and you've internalized the need for more powerful tools. It's not about "earning the chainsaw". It's about learning. > What does the day of struggling with branch cutters and an axe before succumbing and renting a chainsaw really earn you? Perspective? Reverence for the how hard humans used to live? Being in better shape? idk.
- pottertheotter 6y agoI bought my first home last year. I have 3/4 acre and > 50 trees. I grew up in a townhome with a very tiny yard, so pretty much all the yardwork at my new home was new to me. I bought a push broom to clean off my driveway and patio. It took about five minutes to realize I was wasting my time and needed to buy a leaf blower. I also bought a chainsaw even though I had never used one nor punished myself by trying to use an axe to take down and cut up a tree. It was obvious that the chainsaw was the right tool, even if it is more complicated, is more expensive, and requires more upkeep than an axe.
- devmunchies 6y ago> punished myself by trying to use an axe exercising is "punishment" too. it's perspective. thats how you grow, even as a software engineer. I have 3+ acres and live in the mountains. Splitting a stump with my strength and a axe is rewarding and good for me, even though i used a chainsaw to get the stumps.