Readit News logoReadit News
ibash commented on AI for Coding: Why Most Developers Are Getting It Wrong   ksred.com/ai-for-coding-w... · Posted by u/ksred
lylejantzi3rd · a month ago
It's all about competition. Musicians dislike AI music because they're being outcompeted by AI. Same with artists. And, ironically, same with programmers.

AI programming isn't going to improve the state of the craft. Developers hate AI coding tools for the same reason they hated Dreamweaver back in the 00s: the generated code was crap. You'd spend more time "fixing" the generated code than you'd spend writing it from scratch.

What it is going to do is finally kill this obsession the tech industry has with moving fast and breaking things. We can't compete with AI on speed and breaking things. It's just not humanly possible. It's going to force the entire industry to find other metrics to compete on. I hope that's going to be quality (performance, uptime, and reliability), but, then again, I'm an optimist in this regard.

It's the same with music and art, too. AI isn't going to replace musicians and artists, but it is going to make them compete on different metrics than they're used to.

ibash · a month ago
That’s not quite right.

The tools are going to get better, and it’s going to lift everyone while doing so. But it will vary across task.

The bottom tier of engineers will have improvements to their code.

The top engineers will move faster. Top engineers will still be great at what they do.

—-

The same thing is happening in music. Everyone gets lifted but on different dimensions.

ibash commented on AI for Coding: Why Most Developers Are Getting It Wrong   ksred.com/ai-for-coding-w... · Posted by u/ksred
ibash · a month ago
I don’t think it’s a craft thing, I think it’s a speed thing. Senior engineers are faster in their existing workflows.

I’ve found ai tools most valuable for:

1. Quick “how to do x in y” language

2. Large scale refactorings that are mostly mechanical.

This still takes a bit of guidance to get the right output (and breaking down the refactoring an into multiple steps). But it does speed things up when I would touch 40-some files. I still review all the code.

ibash commented on DaisyUI: Tailwind CSS Components   daisyui.com/... · Posted by u/a_bored_husky
ibash · a month ago
The evolution of the tailwind enthusiast is almost complete. Soon they’ll rejoin the old heads who never liked tailwind.
ibash commented on Ask HN: What is the best way to learn 3D modeling for 3D printing?    · Posted by u/wand3r
ibash · a month ago
Use onshape, it’s so much nicer to use something browser based than desktop based. If you’re a student it’s free.

Watch 2-3 onshape tutorial videos and then just dive in trying to make parts for yourself.

If you’re new to 3d printing you’ll soon learn that what you design doesn’t always print right. Welcome to creating things in the real world. This is part of the learning experience (and why you need to learn by doing).

Onshape also has a bunch of public cad designs, so you can look at how other people made things to learn (sort of like reading source code to learn).

ibash commented on Show HN: Aberdeen – An elegant approach to reactive UIs   aberdeenjs.org/... · Posted by u/vanviegen
vanviegen · 4 months ago
The problem is that JSX transpilers will put child nodes in an array, instead of in an anonymous function, meaning there is no easy way (without transpiler magic) to rerender just a part of the component.

This JSX:

  <section><h1>Welcome</h1>{data.enabled ? <input /> : "disabled"}</section>
Which becomes this with Babel:

  _jsx("section", {children: [
    _jsx("h1", {children: "Welcome"}),
    data.enabled ? _jsx("input", {}) : "disabled"
  ]})
But we'd need something like this to fit Aberdeen:

  _jsx("section", ()=>{
    _jsx("h1", ()=>{_jsx("Welcome");});
    if (data.enabled) _jsx("input", {}) else _jsx("disabled");
  }})
In React you can, with some effort, limit virtual DOM rerenders to a single component. Aberdeen rerenders fractions of components by default, if that's all that needs to happen. That's why it works well operating directly on the actual DOM, without a virtual DOM inbetween.

ibash · 4 months ago
Modern react developers forget that if statements exist. When react was class based it was trivial to do:

  render() {
    if (this.dontNeedToRender) {
      return null
    }
  }
Now, because hooks can't be skipped, react developers jump through many hoops to use an if statement during rendering.

ibash commented on How to Run Python in Production   ashishb.net/programming/p... · Posted by u/ashishb
ashishb · 4 months ago
Good point. Have you seen any major advantage of using async API in practice?
ibash · 4 months ago
If you don’t use `async def` and you are using fastapi it’s easy to accidentally block the event loop.
ibash commented on Oldest Chromium issue fixed after 17 years   issues.chromium.org/issue... · Posted by u/syhol
ibash · 5 months ago
April fools?
ibash commented on Apple needs a Snow Sequoia   reviews.ofb.biz/safari/ar... · Posted by u/trbutler
bshacklett · 5 months ago
There’s a middle ground. Get the appropriate stakeholders involved in the decision, including security. Let security be the ones to keep the system down, if it cones to that. Or, let the business operations folks make the decision to go over security’s head. Either way, this is not something an engineer tasked with fixing an outage should be making the decision on.
ibash · 5 months ago
> this is not something an engineer tasked with fixing an outage should be making the decision on

I don’t get this at all.

I’d much prefer a team of highly empowered and highly responsible engineers than impotent engineers who need hand holding in case they make a mistake.

ibash commented on Next.js version 15.2.3 has been released to address a security vulnerability   nextjs.org/blog/cve-2025-... · Posted by u/makepanic
jonny_eh · 5 months ago
That should be the server. Your Nextjs app should have zero access to business data without at least an auth token. And if you're relying on middleware for auth, it'll be responsible for providing that auth token to the rest of the app. And if you bypass middleware, then there's no auth token, and no vulnerability.

This is only a vulnerability if you have pages you don't want to render for some people, regardless of upstream data it would need to fetch.

ibash · 5 months ago
Middleware runs server side doesn't it? tbh I haven't used nextjs middleware. But in many frameworks have used middleware that provides overarching access control.

For example having all routes under `/admin/*` automatically return an error if the user is not an admin, and then the individual routes don't need to be concerns with access control.

ibash commented on The Worst Programmer I Know (2023)   dannorth.net/the-worst-pr... · Posted by u/rbanffy
ibash · 5 months ago
Maybe.

There’s also folks that pair because they’re a crutch for one or two other engineers. The other engineers never improve or are let go, but softly slow down the team.

There’s also the folks that pair because their code doesn’t make sense on its own. Or they have some config files they’ve refused to check into the repo, etc.

Pairing makes them feel valuable.

u/ibash

KarmaCake day665May 19, 2013
About
islam.sharabash@gmail.com
View Original