I'm starting to get to the point where I dislike frameworks for the same reason I dislike wordpress; stop relying on your tools when you don't understand why they were built!

Perhaps its a generation thing, but before we could build a large project in woodwork, we first had to learn how to do small basic projects with hand tools. I had to learn how to use a chisel before I was allowed to use a router. A hack saw before a bandsaw.

I just had another episode of having to provide tech support to a designer friend who has been learning Angular 7; she is an incredible graphic artist, but her front end experience is limited to wordpress and some static hosting stuff.

She spent some serious money on the tutorial program for this; She learned a shit ton... but she honestly has no idea how the fuck anything works. Most of her errors are now insanely involved to fix because her structure for her app has become so needlessly complex, and she doesn't have the skills to troubleshoot or breakdown to basic elements.

Same with Wordpress; when I interview people who have it on their resume, 90% of the time they have no idea what the engine actually does between taking their input and spitting out a website. It's all a magic trick.

I'm not saying people need to fucking master vanilla JS or understand exactly how browsers work, or fucking reverse engineer the v8 engine, but web design has become a place where you can "become a professional" without even understanding that coding has a "low level" that it must reach in order to work. I'm not saying you need to read assembly, but I would hope you couldn't become a "professional" without knowing what a data structure does, or how an int works, or what a byte is, how a packet travels, basic core level stuff.

I also am not saying that frameworks (or even wordpress) is bad, but don't fucking think that using a fancy table saw with a shit ton of wonky jigs is going to be a good replacement for a belt sander, you're going to have a bad time.

I mean, for fuck sake, programming is difficult. Things break all the fucking time. Suffer with the easy shit breaking first so you know either how to fix the complicated shit, or avoid using it in places where it's not necessary.

Gahh. Time for some fucking hot water.

  • 4
    agreed. today people rely on hardware to make things fast, the art of efficiency is dying. nowadays it's all abstract. i took a course made by code.org in school, and we had a lesson the concept of being abstract and how the benefit is that you don't need to know what's under the hood when things are abstract. it's terrible.
  • 5
    @calmyourtities regarding abstracting the difficulties, have you learned how electricity works before using your first electric device and plugging your first plug to the power outlet? Do you have any idea on how display panels are made and work since you are using one in your display screen? Could you calculate refresh rates for h and v sync before using HDMI? No? Perhaps you know how does the engine in your car works? Or transmission (specifically: automated transmission)? Or how does your internal organs work? Still no? Than acknowledge that you are talking bullshit :)
  • 7
    @mt3o The difference, I think, is if you are going to build any of those things, I would hope you had a cursory understanding of everything you just mentioned.

    Using is a full other story.
  • 0
    Actually, after studying CS at UNI and being physics and biology nerd - i know. But that doesn't mean that not knowing prevents anyone from using those things. That's why using abstraction is good. It allows you to use things without knowing how they work. And people using them, not building on their own. Building a wordpress theme is not equal to building wordpress is itself.

    For fcks sake, i hear, deep in my imagination, how doctors rant that people shouldn't be allowed to any medicine without having a degree in pharmacy!
  • 0
    @mt3o all your examples are hardware related and lack accessibility, if i am a consumer of the device then u couldn't care less but if i have to build a car from the same engine or make a mobile then yes i will need to have the knowledge of those parts to even get stareted. In libraries you can read the code and its documentation to get an understanding. This does help in the long run.
  • 0
    @techno848 oh come on, not knowing what does the operating system internals work shouldn't prevent you from reading/writing to a file. Not knowing how network sockets work doesn't prevent you from using 'echo' in php.
    Of course I used hardware related problems, because people don't know how does the hardware work and yet they still use it. And I won't agree that you can use just use hardware as a consumer and you need to know internals only if you build something with the hardware. Your own internal organs are best example. You know that smoking is bad for your health without knowing how exactly happens on cellular level. Its enough to know that it's bad for car engine to push down the throttle pedal on cold engine. Knowing the internals sure helps not knowing musnt prevent from using. The knowledge is what differs good devs (and engineers) from mediocre ones. Stop looking at world in black and white.
  • 0
    Not knowing will not prevent you from using it ? true, as a consumer that makes sense. Limited knowledge wont give you any trouble but in a professional environment not knowing what goes in your product ? false. simply because if something goes bad you are not 100% what the cause is.
  • 0
    @techno848 there is no such case as being 100% sure, always there are factors you can't control. Internet connection can be cut by building workers, your building can be flooded, a plane might crash into your data center. Always there are risks you can't mitigate, even if they are very unlikely to happen. Oops, I guess you abstracted them away :)

    And regatding the "professional environment" how deeply do you know the internals of the database engine you use? Or your browser? :D come on, I can go ad infinitum with more examples. Abstraction hides difficult details and lets you focus on what you really need to do, and in professional environment is even more important than for the consumers. Ask your car mechanic what is the exact composition of the engine oil you use. Or what does the. CRV sign on the wrench means (hint: its defined in ISO standard).

    From my current experience from today - i don't have to understand how swapping works, it's enough to know its unhealthy for SSD.
  • 0
    Today I pushed over 32GB of data thru my laptop, having 16GB of RAM. :) and i could know nothing about the virtual memory layout and how the swapping works. For me - it's enough it worked. Abstraction hiding things I don't even want to consider. Sure it was not optimal thing to do, but it was enough to have the job done and it paid :)
  • 2
    While I couldn't agree with you more...

    Consider that one person's HTML is another person's Assembly.

    Not sure if anyone can be critical of the Wordpress jockey who neither understands DNS nor HTML if the critic is not cognizant of machine code (the heart of the beast)... in which case that same critic may see the knowledge of HTML and JavaScript insignificant in terms of knowing the machine.

    Irregardless I would give you a months worth of ++ for your post anyway @notlikethis
  • 1
    @mt3o yes i do. in my american school system we are required to take mechanics, electronics, and biology before we took computer science principles and then finally computer programming 1.
  • 0
    @mt3o also i have a laptop, so i don't use hdmi in any way shape or form.
  • 0
    Oh my, you need them for what? So that you match the requirement for using cardiovascular system? 🤣

    My contact with biology ended in highschool. At university I had multiple classes related to physics, electronics, math, and some developing soft skills and some related to management. My university is very close to the hardware, so there were more classes on the internals, in how the basic components work, down to the transistors and diodes, flow of the electricity, microcontrollers and stuff. There I had to learn how to work with the VGA signal :) building and programming mouse and keyboard was fun.
    After finishing formal education I was educating on my own. I take quite a lot meds, so I wanted to understand how and why they work.
  • 0
    You have a laptop, so you don't use hdmi, so you don't have to know what protocols are inside :D

    Jokes aside, regarding the understanding of HDMI, i've seen people treating it like VGA or sound cables, analog signal, and looking to buy shilded wires, with gold plated connectors, all to pleasure the audiophile ears. Without knowing that it's a digital signal and all that stuff has nothing to do with the signal quality. They can live with that, they just spend more money :)
    In the long term it's nothing wrong. As with the car example, in my current car, its quite old, but I can change the lights, spark rods (what's the correct english name?), coil. I could change engine oil, but I don't know how to properly dispose it. Looking at brand new car, I even don't know how to access the light bulbs. I have no idea on what engine oil should be used, so I rely on what the producent said (and the diagnostic specialist checking the car).
  • 0
    Its like @xcodesucks said. Wordpress jockey don't have to know the internals. Even guy from a software house don't have to. He works on a dozen projects each year, and maybe one of them will mature over 3 or 4 years. That's enough for him to focus on the important details and let other people work on other problems in the future.

    To sum things up, i don't want to ever be forced to work with raw VGA signal :p I'm very happy being on the level of abstraction that can have no idea that display even exists.
Your Job Suck?
Get a Better Job
Add Comment