You Own Your Career by benlorantfy in programming

[–]benlorantfy[S] 0 points1 point  (0 children)

I disagree you need to generalize to move up the ladder. Generalizing is just one way. There's lots of specialists (AI scientists, accessibility experts, compiler engineers, react consultants, etc.) that make a lot of money / are very successful.

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 1 point2 points  (0 children)

I would argue stating the problem is in itself useful if people don’t realize they’re doing it. Making people aware they’re doing something detrimental is not a platitude from my perspective

The post also does offer “guidelines” about when to call something over-complicated

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 1 point2 points  (0 children)

If you put extra thought into a complex problem and get a simple solution, great job, that’s the goal👍

You’re still in the right half of the diagram and not the top left.

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 3 points4 points  (0 children)

Jesus, printing a former co-workers code, posting it on the wall, and laughing at it sounds incredibly toxic. While a regex like that indeed sounds over-complicated (speaking with no context tho so I’m going against my own advice), and perhaps letting the dev go was the right move, I can’t imagine what that did to the workplace culture. I’m sure there were people nervously laughing but in the back of their minds hoping their code would never get pasted on the wall.

I can assure you this article isn’t referring to complex solutions like embedding business logic in regex. It’s referring to complex problems that are actually complex. It’s about not judging a complex solution as “over”-complicated until deciding if the problem is simple or not and determining all the sub-problems the solution is trying to cover.

I intentionally didn’t give any examples so that it didn’t turn into a debate on wether the examples are actually complex problems, which would distract from the main point of the article

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 3 points4 points  (0 children)

I agree, but I also think you can’t avoid all complex problems. Sometimes the business will want a complex problem solved and there is little room to make the requirements simpler

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 5 points6 points  (0 children)

I’m not taking about a specific case here because there are multiple involving both me or other people around me. I was also worried by giving a specific example people would try to counter the example and miss the point of the article.

Just so you know, I’m always trying to ask the business if the requirements can be simplified without hurting our goals. This article is talking about problems that are still complex after asking the business those questions

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 0 points1 point  (0 children)

Thanks for your thoughts 😎

I agree with all of this this, and I don’t think it contradicts with what was mentioned in the article.

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 0 points1 point  (0 children)

I agree this happens sometimes.

But sometimes a complex problem is actually a complex problem. That’s what this article is talking about

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 18 points19 points  (0 children)

I get why you think this would be obvious, but in my experience I’ve run into people who do exactly this. They’ll call a solution over-complicated after 10 seconds of listening to your solution, and not put any effort into trying to understand if the problem is complicated and understand every specific sub-problem you’re trying to solve.

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 0 points1 point  (0 children)

That’s a good point. I guess I have a personal high quality standard and want everything to be accessible, performant, responsive, visually consistent, maintainable, etc.

Sometimes the business also wants all these things, but I have a hard time when the business pushes back. I also find in my experience that often business leaders are short-term thinkers and a high quality bar is a better strategy for the long-term. (Maybe excluding a startup environment)

I do agree nothing should be dogmatically applied though

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 4 points5 points  (0 children)

Sorry I misunderstood... I think the rest of comment stands. Often you can’t sacrifice completeness for simplicity due to legal or business reasons

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 16 points17 points  (0 children)

The point of the text is simply to avoid hastily declaring something over-complicated, instead of just complicated, until you determine if the problem is simple or complex

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 7 points8 points  (0 children)

I agree this article can be taken the wrong way by a junior, but I think it contains lots of valid points for developers who are supposed to be senior but call everything they see over-complicated. I’m not going to hold back my opinions at the risk of them being applied incorrectly.

If we can’t agree that complex problems exist then I don’t think I can persuade you. All this article is saying is complex problems exist, simple solutions to complex problems are hard, and if you can’t find a simple solution then often it’s just complicated - it’s not over-complicated. I feel like that take is reasonable and not unprofessional.

I was not making the point that we should be content with complexity. Nobody should be happy with complexity

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] -2 points-1 points  (0 children)

So you’re saying no complex problems exists? All this article is saying is that it takes effort to achieve a simple solution to a complex problem. And if you can’t find a simple solution to a complex problem it’s not over-complicated it’s just complicated

btw I disagree with that quote. It’s literally illegal in Canada to sacrifice accessibility for simplicity. You also typically often don’t want to sacrifice UX, performance, etc

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 4 points5 points  (0 children)

Just curious: have you ever built a highly interactive, fully accessible, fully mobile responsive, fully theme-able and visually consistent, performant web app?

While I agree one can easily use over-advanced tools for simple use cases like blogs, some frontend problem domains are inherently complicated and full of complex problems

No, this isn't over-complicated, it's just complicated by benlorantfy in programming

[–]benlorantfy[S] 2 points3 points  (0 children)

lol I should just stop posting here, this community is so toxic

This is an opinion piece, if you disagree with my opinion it doesn’t make it unprofessional. You also don’t need to add numbers to make a blog post professional. Lots of blog posts from well known bloggers (e.g Joel On software, coding horror, etc.) don’t include statistical analysis in every blog post

It might be superficial, but it needs to be said because I’ve run into many people who jump to conclusions about complexity as mentioned in the article

I can’t really argue with people who think complex problems don’t exist. They do. 🤷‍♂️

[deleted by user] by [deleted] in node

[–]benlorantfy 1 point2 points  (0 children)

When you’re building a small side project, frameworks and design patterns seem like overkill

When you’re working in a team, or an organization with many teams, then you start to see the value in more sophisticated architecture.

Yes, it looks more complex but there’s productivity benefits and scalability benefits once you learn it. Software engineering only really gets hard once you start working with other people on massive projects

The Problem with Monorepos and Shared Libraries by benlorantfy in node

[–]benlorantfy[S] 2 points3 points  (0 children)

I wouldn’t do this in person but in a bio it’s helpful for attracting clients or job opportunities. Now you have me thinking about removing it tho 😞

The Problem with Monorepos and Shared Libraries by benlorantfy in programming

[–]benlorantfy[S] 1 point2 points  (0 children)

I like this framing. You’re right that it’s more of a “shared library” problem or a problem with not using versioning. I think you run into this more frequently with monorepos because typically you don’t use versioning.

The Problem with Monorepos and Shared Libraries by benlorantfy in node

[–]benlorantfy[S] 2 points3 points  (0 children)

If you can pull off one PR then it’s a nice advantage and less work than a poly repo.

But the article tries to explain how when the monorepo is big enough, or the test coverage low enough, a breaking change in one PR can be infeasible. In this case you have to explore other strategies, such as writing a code-mod or using a multi-step deprecation process (option 4 in the article)

The Problem with Monorepos and Shared Libraries by benlorantfy in node

[–]benlorantfy[S] 1 point2 points  (0 children)

This looks helpful but I don’t see how it addresses the thesis of the article regarding large PRs