Dan Harper’s Post

View profile for Dan Harper
Dan Harper Dan Harper is an Influencer

Tech Career Coach @ Velocifire // CTO @ Homes.com.au

Frameworks and DSLs that make it hard to debug errors is one of my pet hates. I take a dim view of most JavaScript frameworks, the general ecosystem and the language itself. It's mostly from issues like this error. This particular bug from this image is not reproducible. The screenshot is from a synthetic test that 99.999% of the time does not produce an error. For some reason, on this one run, this error appeared. Transpiling code means that your code acts more like a DSL in production. The code you write is not the code that runs. Applications that are hard to debug carry many bugs. Engineers put fixing errors into the "too hard basket". I don't blame them. I blame the tools. Some programming languages and frameworks go to extreme lengths to try and ensure that you get helpful error messages when things go wrong. Some even go to extreme lengths to try and make your application reliable in the first place so that runtime errors are minimised or in some cases non-existent. When you code in these languages or frameworks, it's kind of mind blowing to have a zero runtime error guarantee. It also spoils you and you start looking at everything else and ask "why do we put up with this?". The JavaScript ecosystem generally does not do much to help you with runtime errors. Most popular JS frameworks and libraries make it worse as they leverages JS paradigms that obfuscate and abstract what's really happening when your code executes. Even the popular tools that are designed to help you identify and debug runtime errors are close to useless. We need something better. --- I run a coaching business that helps people in tech get their career on track. Hit me up if you're sick of too many random runtime errors and you want to make a change. 😁

  • table
Dale Hurwitz

Senior Developer at Atlassian

6mo

JS/TS specialisation is also the easiest pathway to a career in Web development, hopefully as a career coach you appreciate that!

Mykhaylo Symulyk

Senior Software Engineer at Rocket Financial

6mo

"undefined" is my all time favourite in JS. Luckilly I don't use Node lately

Russell Smiley 🐿️

🔆 Pre-sales engineering 👉 System Integration | DevOps Strategy | Software Delivery Coach | Founder

6mo

Web Assembly? On the surface it appears to be a good solution - use a good language with the right kind of performance you need, whether that’s computational, robustness, or correctness. I don’t have direct experience of it though. And I think I have read comments to the effect that it doesn’t live up to expectations. Thoughts?

Sentry + source maps? Get your end users to report using Jam.dev so you can see browser request log and more likely re-pro?

Na'aman Hirschfeld

Co-Founder & CTO @ GrantFlow.AI | Accelerating STEM Research

6mo

This is a good case for react frankly

Vasily Hall

Art Technologist at GraphXsource

6mo

But now that this is out of the way, the search of where we destructure the user property.. begins! 💪

Pradosh S.

Lead Software Engineer

6mo

Can’t we have a workaround solution with source maps for those errors? 😅 JS is mostly an ecosystem of workarounds that hides (probably even betters) its nuances (and flaws), who knows or cares much about contexts, lexical scopes and binding these days, thanks to frameworks 🤷 Then we have AI regurgitating more shite code but hey gets the work done quicker that’s what product companies/startus care or value!

John Gallagher

Helping Engineers Understand Apps In Production. kill3pill.com

6mo

Preach! JS and Typescript are chock full of weird errors, strange runtime glitches and generally terrible developer experience. Having experienced the pure joy of building in Elm, everything else really does look silly by comparison and a huge waste of engineers time. Ah well, never mind. It's not like engineers are expensive. Oh .. wait... The future is compiled languages that gives us excellent error messages and zero runtime exception guarantees. It's a real shame that we're moving *away* from this direction. All in the name of "something something popularity ecosystem blah trendy blah".

Ron Mizrahi

Platform Lead @ Alterya (Acquired by Chainalysis)

5mo

I bundle but not transpile.

Like
Reply
See more comments

To view or add a comment, sign in

Explore topics