Hacker News new | past | comments | ask | show | jobs | submit login
What are abstractions in software engineering (thevaluable.dev)
4 points by spinlock_ on Dec 29, 2022 | hide | past | favorite | 2 comments



I couldn't bother reading to the end because of how much it beats around the bush.

Also, the article doesn't really align with my own understanding and misses a key term: complexity - that's what we abstract.

Abstraction is simply the process of hiding complexity by replacing something complex with something simpler that can better fit in our brains. We abstract complexity all the time, in all aspects of our lives, both consciously and subconsciously. It's not a trait exclusive of software engineering.


Author here. Thanks for the feedback!

I agree I could have been more direct, but I also wanted to explain the concept in detail, especially for beginners to understand it. When I was beginning in the industry myself, it was difficult for me to understand abstraction, and the articles I was reading didn't really improve my understanding; they often speak about the way to create abstraction instead of explaining what is abstraction and why we need to abstract things. I don't have the presumption I did better, but I tried.

I speak about simplicity in the article; therefore about complexity, but indirectly. Maybe I should have been more direct on that point though.

And I also do many analogies with abstractions outside of software development.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: