4 ms·
By willingly limit your toolbox to one tool you limit your possibilities and usefulness. Maybe you'll come up with a problem that an other tool solves better th
by rick_2047 16y ago
By willingly limit your toolbox to one tool you limit your possibilities and usefulness. Maybe you'll come up with a problem that an other tool solves better than the one you are used to, and you'll never know.
Correct me if I am wrong, but any one of these "toolbox"es will take enormous effort to master fully. Some person may really want to do web development for his/her whole life, nothing wrong with that. But to do that they will have to master many many skills to even say "I know everything about web development".
- loup-vaillant 16y agoThe core argument of phrakture is that the toolboxes are more complicated than the underlying mechanism they hide. If he's right, learning them is worse than useless. Kurtz isn't talking about those. He's talking about basic knowledge about programming. Even if he only does C, he at least has an escape hatch when he needs more powerful thoughts than what C alone can give him.
- jfb 16y agoThis is one of my beefs with ORM -- in order to use the database layer properly, you need to expose at least as much complexity as the database itself provides. We use Sequel, which is fine as far as it goes, but it ships with a stupid DSL that is a) as complex as SQL and b) significantly less capable. You end up with shitass queries and many more database round trips and for what? Method call syntax? Sorry. Rant.
- jarin 16y agoSpeed of development. I know perfectly well how to write SQL, but I would rather write "Post.where(:published => true).first.comments.count" and move on to the next thing. If I need to later on I can go back and write a raw SQL query, but why do it unless I need to?
- extension 16y agoComplexity/simplicity isn't everything. If an abstraction layer is more complex than its substrate but is also more consistent, intuitive, bug-resilient, maintainable, etc. then it may be a net win.
- loup-vaillant 16y agoDo you have any example of such an abstraction layer?
- lacker 16y agoA CPU is a lot more complex than wiring up your own NAND gates, but it's easier to write programs for the former.
- msbarnett 16y agoIt's impossible to "know everything about web development". That's not the point; nobody is demanding you become supreme master of every programming discipline. But by being afraid of dabbling outside your comfort zone (because mastering things fully is "hard"), you inherently restrict the solutions you can possibly even conceive of to an incredibly limited set. It's a sort-of Dunning-Kruger: You don't even have the basic knowledge to evaluate how often a better solution than "throw more javascript at it" was available to you and you didn't know it.
- asolove 16y agoComputers store information in parking lots. Each space has a number. Most cars fit in one space, but some RVs and busses take up two or four spaces. If two cars are parked next to each other, one might be in space 4, and the next in space 5. But if two RVs are parked next to each other, one takes up spaces 4 and 5, so the other takes spaces 6 and 7. A stupid parking attendant might count cars by asking: "what car is in space 4?" "An RV." "What is in space 5?" "The same RV." But a smart parking attendant would obviously just ask "what care is in space 4?" "An RV." "Ok, so what car is in space 6?" There, now you don't have a toolbox but at least it's a squeaky toy hammer.
- mturmon 16y agoWhen you want to upgrade to a solid rubber toy hammer, see: http://baetzler.de/humor/paging_game.html http://baetzler.de/humor/paging_game.html