Email or username:

Password:

Forgot your password?
Top-level
Marco "Ocramius" Pivetta

Taking myself as an example, while I was (still am) learning Rust and Haskell.

I keep banging my head around borrowing, monads, dereferencing/copying memory.

Yes, it's frustrating, but people way smarter and experienced than me have defined those rules because they allow for much grander designs.

I can question them, but only once I fully understand the details inside out.

Playing by the rules, in fact, taught me to be a better software developer all around.

7 comments
Marco "Ocramius" Pivetta

I may have loved to have a "turn type checker off" or "turn borrow checker off" switch somewhere, at times.

I learned why these type and borrow checkers exist, and turning them off would only have hurt my design in the long run, which my level of experience allows me to understand.

Many developers look at these tools and just want them out of the way, rather than learning to be supported in their day-to-day work by the backing decisions behind these tools.

Marco "Ocramius" Pivetta

Luckily, some ecosystems do not allow for turning these tools off.

I come from the context of #PHP, where everything can be changed at will, almost trivially, even in third-party stuff.

While this may sound cool at first, it opens the gates to tons of political fights in technical teams that want to "ship fast" and "cut corners".

Most quality tooling in #PHP is injected manually, due to the language being very lenient: that means constantly having to explain the presence of the tools.

Marco "Ocramius" Pivetta

Closing the "change everything" gates would be amazing, from the standpoint of somebody that understands the value added by quality tooling and rules, after many years of experience, and moved on.

In unpaid OSS, having to repeat the same discussions over and over again is eroding at willpower that could be used for better purposes.

In workplaces, pushing for rules/quality in a post-factual society mindset/workplace can have really bad effects on your career.

Marco "Ocramius" Pivetta

Going back to the OP: yes, the average engineer is way below average quality.

It is not fixable: that's just how statistics work.

Every now and then, an incredible visionary (individual or group) will appear, produce something of exceptional relevance, and push the boundaries forward.

These visionaries will create their own tools, outside the boundaries of other tools, and will set their own rules/restrictions: they won't be worried about pre-existing rules anyway.

Samuel

@ocramius why screw up a perfectly interesting post with annoying great-man theory in the end?

Marco "Ocramius" Pivetta

@Leomas because it's those people that bring us forward, not the whiny "mom, I don't want to eat my vegetables" mentality, where every average Joe feels self-centred enough to question everything.

Perhaps I didn't frame it correctly.

Dominik

@ocramius Sheesh, is it still about the package to remove final?

Yes, it's stupid.

No, it's not worth more than one post.

I mean, it's an open secret that Laravel is a hack of a framework and no one who actually understands architecture would use it.

So how exactly is the package to remove finals surprising at all?

Also, how the hell is the last rant about The Chosen Oneā„¢ relevant to any of this?

In short: Move on, pal.

Go Up