r/webdev • • 12h ago

Discussion Your AI UI skill is doing the part you were supposed to learn

179 Upvotes

So a few of my friends have stopped using Figma. They go straight to production and make changes there.

When I first heard this I was honestly confused. Like where do you try things out? Where do you compare two versions?

Then I saw what they were building. The landing page feels like one product, the settings page feels like another, the dashboard feels like a third. Buttons are different, spacing is different, hover is different on every page. There’s no uniformity, no design system, nothing.

So I asked them how they’re doing it, and the answer is always “I use this AI skill” or “I bought this skill pack”. People are actually selling these now. Skill packs, prompt bundles, paid repos. And there are a lot of free ones on GitHub too.

It doesn’t make sense to me at all. How will you learn anything? And how will you polish the product if it looks different every time you generate it?

When I brought this up, someone said just add a memory file so it stays consistent.

Okay, but then how will you make changes? You never decided why the button has that radius or why it’s that grey. The AI decided. So when something needs fixing, you don’t know what to fix. You just prompt again and hope.

And now there are courses around this too. The idea is learn this design vocabulary, tell it to the AI, and you’ll get good UI. They call it beginner friendly. But then you see what’s inside and it’s stuff like:

  • spring easing, stiffness, damping
  • optical alignment
  • vertical rhythm
  • morphing transitions
  • 60-30-10 colour rule
  • type scale ratios

If a senior buys it, it’s fine. They already know what damping feels like, they know what they’re skipping.

But a beginner has never played with an easing curve and seen it go from cheap to smooth. Never moved something 2px and felt it finally sit right. They’re just memorising words and giving them to the AI. You can know the word damping and still have no idea when the bounce is too much.

Selling that as beginner friendly feels like a deceiving thing to me. You learn these words after you’ve actually done the work, not before.

Also design is never one try. I go through so many versions before something feels right. In Figma that’s easy, I put five versions side by side and throw four away. In production code every change costs time, so whatever comes out first just ships.

I’m not trying to dunk on my friends, they’re good at what they do. And I get why these skills are tempting. But paid or free, they’re doing the exact part you’re supposed to learn.

If you’re using one, just try building one page without it. Pick the hover, the spacing, the colours yourself, even if it’s bad. That’s literally how you get better at this.

Anyone else seeing this or is it just me? just my thoughts 🤷


r/webdev • • 1h ago

Discussion Why are banking sites (at least the ones I used) frequently designed so badly?

Post image
• Upvotes

Do web developers not get the resources to understand any banking concepts? Here's a picture of the column order of pending wire requests you inputted. Why would you put amount in the last column and date in the middle? They recently updated their website and the columns feel like they're randomized, making it harder for us to review our entries as they changed the order. FYI I work in finance/acctg but I previously had a year of web dev experience looking into as a career few years back, so I have an eye for these things. Do non tech companies not heavily invest in their IT team, perhaps etc?


r/webdev • • 1d ago

Manager thinks anything can be coded in 1 hour or less with AI.

476 Upvotes

I work for a large accounting firm where the impact of getting things wrong feels quite big.

We’ve started a new sprint for the next chunk of work. The team has put together estimates for various elements of a new accounting feature involving bank transactions, VAT calculations and reconciliation, with the biggest part taking several days by one developer.

My boss gets visibly frustrated and questions how on earth anything can take a few days in the era of AI. He’s also started saying he can do absolutely anything with AI in an hour or less.

Bear in mind before AI what we’re working on would have taken triple or even quadruple the time.

Is this the new normal or should I be looking for a new job? How are we supposed to respond to this?


r/webdev • • 1d ago

Discussion Who remembers when web developers portfolio websites had a “skills chart”

288 Upvotes

HTML 95%
PHP 70%
jQuery/JavaScript 80%
MySQL 58%

Gives me the shudders thinking about it…


r/webdev • • 1h ago

How are ya’ll planning on supporting Apple Touchscreen Macs?

• Upvotes

Interestingly having played around with macOS 27.2 and using Sidecar on an iPad for touch inputs, it looks like Safari isn’t going to send proper touch events like Windows touchscreens do. Best we get is mousedowns with no buttons=0.

Even worse testing in Chrome, all we get are scroll events. That’s fine for panning but if you want to do anything custom like drawing, dragging etc you’re SoL unless you want to try detecting these off heuristics. Maybe they’ll improve the situation before it’s in people’s hands, but curious to hear what other devs with complex web apps are planning on doing.


r/webdev • • 19h ago

How do you mentally reset when switching between completely different codebases?

21 Upvotes

I work on 2-3 different projects throughout the week (different clients, different tech stacks), and I've noticed my productivity tanks for the first 30-45 minutes after switching contexts. It's like my brain is still thinking in the patterns of the previous project.

Some things I've tried: - Taking a short walk between switches - Keeping detailed notes about where I left off - Dedicating full days to single projects when possible

The notes help the most, but I'm curious what workflows other devs have developed for this. Do you have any rituals or techniques that help you get back into flow faster when jumping between projects?

Especially interested in hearing from freelancers or consultants who deal with this regularly.


r/webdev • • 5h ago

Question How do I actually make my website optimized for users?

0 Upvotes

Hello guys, a little while ago I found some other teenagers on here that were looking for a backend developer for a website, and I volunteered this I have some knowledge with node.js and those concepts, and I've built a full stack website (basic backend) with it. Here is the github because it will be relevant later: https://github.com/norrie-adams/EVS-Small-Engine-Repair-Site

However, I do not think this is like a website that could properly support like actual people. And that was part of the reason I stopped building it (I also just lost interest). But this is a thing where other people are relying on me to build something functional (or at least more functional then this site). So I just want to know, what did I do wrong with this project, and what could I improve upon for next time?

Sorry if this isn't super clear, but I appreciate any advice you can give me :)


r/webdev • • 8h ago

Those who built apps before the AI boom - was the timing good or bad?

1 Upvotes

I'm a frontend developer/designer with experience in the past building and selling largely SaaS software.

That was before AI as we know it, and I'm starting to feel numb to the amount of people I who've become a developer overnight tell me about the new app 'they built.'

Like any developer I had several ideas stewing for years and I nearly took the leap on a few of them, and when I see the landscape like it is now half of me thinks 'I'm so glad I didn't take huge risks and build X as it would have just been copied now anyway' and the other half says 'I wish I got in before everyone was developing apps in a few minutes.'

I'm curious for those who DID build something prior to this shift, are you glad you got in then, or have these changes made all the time spent not worth it?

Thanks!


r/webdev • • 1d ago

Discussion Yet another AI rant

115 Upvotes

What bothers me about AI and it's wide adoption is that it creates conflicting requirements for the worker (developer, designer, manager, etc.). On one hand you are expected to perform better and/or faster, because you are a specialist, an expert that has the knowledge and offloads the work to the machine, supervising its output. You should use your experience and professional judgment to steer it to the right conclusions and catch it when it overcomplicates or starts hallucinating.

At the same time you are expected to cover more ground. Stretch to the adjacent technologies or fields. Frontend developers are expected to perform full stack work, designers to code frontend, backend devs to create a design in a pinch. Here you are not an expert, you might have interfaced with the field, but you don't have the experience and don't really understand the inner workings, best practices. You didn't go through all the novice mistakes and learn from them.

Somehow, the first expectation still works here. You are expected to be faster and better at this too. But the roles are reversed, now the machine is suddenly the wise expert in the field and you got to trust it, wave through the changes it proposes to stay fast and produce the work of the your ex-colleague made redundant and laid off due to all the AI-productivity gains. You don't have the opportunity to get the new relevant skills, because nobody has time for hand coding/creating/learning, it's such a 2022 idea. Here in 2026 we're all on a tight schedule to pump out the results unless you want to end up on a PIP.

On top of that you are expected to get good at AI. Don't just use it, like some kind of normie. Get good. Stay on top of the hype. Use agent loops. Set guardrails. Make it deterministic. Don't use agent loops. Have you tried this new harness? Don't spend too much money on tokens. Run the model locally. What do you mean you don't have a $5000 Nvidia golden box? Do you want to become irrelevant and get left behind?

Welcome to the bright future, comrade.


r/webdev • • 10h ago

Asincify to JSPI speedup results

Thumbnail
pcbjam.com
1 Upvotes

r/webdev • • 12h ago

How does Instagram process and post images?

Post image
0 Upvotes

So I do not really have much understanding of web development and back end but when you save an instagram page as an html from its website. It doesn't save the way instagram looks, rather it shows a representation of the UI and subtext behind images (not the images themself) like the image shared above.

I am also more curious how it reads the image and tries to classify it, and why something like the subtext "May be an image of ----" is in the backend when you do not see it in the interface itself. I am curious of the process itself if someone is kind enough to explain itself.


r/webdev • • 1d ago

Codepen preview always dimmed in Safari

4 Upvotes

I am working in Codepen in Safari, but everything is dim and gray instead of being the true color. It is fine in Chrome and Firefox. I have tried resetting preferences and caches in safari along with unchecking things in FeatureFlags and nothing is amending it.

Safari Screenshot
Firefox Sceenshot
Chrome Sceenshot

r/webdev • • 8h ago

Ayuda con proyecto jsf

0 Upvotes

Tengo un proyecto app web jsf , jakarta +open liberty etc

Me pregunto si me podrían ayudar dándome opiniones sobre el


r/webdev • • 2d ago

Article CSS Tricks is back!

Thumbnail
css-tricks.com
801 Upvotes

r/webdev • • 11h ago

Discussion Am I a hypocrite for looking down on AI usage while using it for webdev? *See the post for further details*

0 Upvotes

When it comes down to design and art, I like to do everything manually because I hate AI-generated content. I make my own 3D models, own animations for videos, etc.

Now I am working on my personal portfolio, and I am using AI like Claude to help me with setting up my project, like, for example, the library Three.js. While I am very happy with the current result and how I design and redirect AI, I feel like a hypocrite to be so negative to people that use AI-generated content while using AI for programming myself.

The reason I post this here is to ask how others feel about this and what advice they would give me.

*Update*

I want to thank the people for the very insightful responses to my question. While I am working on my website, I want to understand and change as much of the code myself.


r/webdev • • 7h ago

Which AI coding tool actually stuck in your daily workflow?

0 Upvotes

There’s a new one every week. Most people try them and drop them after a few days.

Which one are you still using months later, and what’s the one thing it does better than the rest?


r/webdev • • 13h ago

Discussion Do you use a DESIGN_PRINCIPLES.md for your projects UI/UX

0 Upvotes

Do you just wing it and use screenshots for inspiration or do you use a design principles md file where you mention all the design principles like the fonts, colors, dark mode colors, graphs, infographics, etc.


r/webdev • • 13h ago

Question what's your process for blast radius containment when AI code breaks something?

0 Upvotes

Here's roughly the process we've landed on. Any change touching a function called from more than a couple other places gets flagged for a wider blast radius check before it reaches canary. The canary stage compares actual runtime behavior against the previous version, not just error rates, since a function can run clean and still behave wrong. We lean on hud for that part, it compares each function against how it behaved before the deploy.

That second part matters most, since most of what's bitten us hasn't been a crash, it's been subtle behavioral drift that technically runs fine. Works best with good baseline data on prior behavior, worse when the function's too new to have one. How would you improve this?


r/webdev • • 1d ago

Question Need some guidance and orientation

11 Upvotes

I'll firstly ask my two questions and then I'll explain:

  1. Is it normal that im spending tremendous amounts of time reading and understanding code written by Codex/LLMs? like... hours per "ticket"

  2. What does progress look like in today's SWE world? im struggling to make myself believe im improving into something worthy

I'm currently a frontend SWE with 2 YOE. I was "lucky" to land a job in a big bank, the issue is im not truly "engineering", im basically a code monkey putting pieces together for different SPAs (exactly what AI is good at) the only thing saving my job is the absolute mess of internal architecture and internal "tooling" even AI is unable to comprehend, but internal AI agents are getting better and better at tackling those

I was very AI skeptic at the start but now I've come around and have been for the past month attempting to expand into a full-stack agentic workflow with Codex

My main issue is I'm spending so... much... time... reading the code the AI outputs, there is a lot i dont understand, weird decisions the AI took that I didnt think about thinking before prompting (even with grill me), leading me to spending hours and hours reading the code, analyzing the data flow. This wouldnt be an issue if I knew this were the job and stuff, but everyone is working so fast, bringing actual products live so fast, its demoralizing me, making me think im doing something wrong since all the "speed" I gain from AI I spend reading and understanding the code. And i kinda want to be that engineer that owns the product, understands what it being done, but i was watching Spencer Schneidenbach's course on frontendmasters and he just doesnt read that much code anymore... he just prompted prompted checked the browser, nice, done, which leads me to think if its even worth it...

My second issue, which is linked, is regarding to how you guys measure progress. Before it was kinda easy, if the feature got done, it was progress. But now the feature is done by LLMs, kinda like sitting at a bench press and having someone else lift the weigths for you. So how do you get that "yes im improving" sensation?

sorry for the rant, weird times we live in


r/webdev • • 2d ago

Discussion After years of living in legacy hell, we finally upgraded production to PHP 8.2. Am I safe to sleep now, or is the server going to combust tomorrow?

103 Upvotes

So, after surviving an eternity on older versions (y'all know the pain), we finally pushed the button and upgraded our core production environment to PHP 8.2.35.

It took an entire day because the underlying Linux distros were so ancient we practically had to rebuild half the ecosystem from scratch.

Now looking at the metrics and logs, I'm torn between two feelings:

  1. Pure joy of actually getting to write modern code in the 8.x branch.
  2. Absolute dread waiting for the next midnight critical CVE drop to turn everything into raw chaos.

To all the senior devs and sysadmins out there who have stared into the abyss of updating legacy enterprise codebases: What was your most nerve-wracking upgrade experience? Are we ever truly out of the woods, or is "putting out fires" just our permanent job description?


r/webdev • • 23h ago

📚 Struggling to stay focused while studying?

0 Upvotes

I built Focus Mode, a free Chrome extension designed to help you minimize distractions and stay focused while studying, working, or getting through assignments.

If you're looking for a simple way to improve your study sessions, give it a try!

👉 https://chromewebstore.google.com/detail/focus-mode/hnifglepddkghmgimlkacolafibhnijf?authuser=0&hl=en

Completely free to use! 😊

I'd love to hear what you think!


r/webdev • • 18h ago

Discussion New Stack Alert!!

0 Upvotes

https://getforma.dev a TypeScript framework with no V8/Node on the server and no Virtual DOM on the client. It compiles TSX into a binary format called FMIR at build time so a Rust server can render SSR HTML directly, and only ships tiny signal islands to the browser. I’ve been using it to build apps with AI lately and it seems because the contract between TS and Rust is so strict, it's been ridiculously fast and efficient. Not bloat.


r/webdev • • 1d ago

Question How should I integrate an existing NestJS authentication system with a React + Flowbite React frontend?

1 Upvotes

I'm developing a Grievance Redressal Portal as a learning project. My backend is built with NestJS, TypeScript, Prisma, and PostgreSQL.

I have been implementing authentication (User Sign In and Sign Out) using the "@nestjs/authentication" package of NestJS v12.

I would like to know conceptually the changes to be made to my back end such that I should be able to extend the authentication feature to a React-based front-end.

I have adapted the code by hand from the "Register The Authentication Module" and "Add Sign-Up and Sign-In" sections of the NestJS docs for NestJS v12: Authentication | NestJS - A progressive Node.js framework

I am posting my code here.

//sign-in.dto.ts
import { PickType } from "@nestjs/swagger";
import { UserUniversalDto } from "../../users/dto/user-universal.dto";
export class SignInDto extends PickType (
    UserUniversalDto,
    ['user_email', 'user_password']
) {};
//credentials.service.ts
import { ConflictException, Injectable } from '@nestjs/common';
import { UsersService } from '../users/users.service.js';
import { CreateUserDto } from '../users/dto/create-user.dto.js';
import { FindUserByEmailDto } from '../users/dto/find-user-by-email.dto.js';
import * as argon2 from 'argon2';
import { USER_STATUS } from '../users/user.constants.js';

()
export class CredentialsService {
  constructor(
    private readonly usersService: UsersService
  ) {}

  async register(createUserDto: CreateUserDto) {

    const findUserByEmailDto: FindUserByEmailDto = {
      user_email: createUserDto.user_email
    }

    // Don't create the user if the email already exists.
    if (await this.usersService.findUserByEmail(findUserByEmailDto)) {
      throw new ConflictException('Email already registered. User already exists.');
    }
    // The address is unverified: anyone can type any email into a sign-up form.
    const registered_user = await this.usersService.createUser(createUserDto);
    return registered_user;
  }

  /** The user, or null when the email or the password is wrong. */
  async verify(email: string, password: string) {

    const findUserByEmailDto: FindUserByEmailDto = {
      user_email: email
    }

    const found_user = await this.usersService.findUserByEmail(findUserByEmailDto);

    // Checking if the user exists.
    if (!found_user) {
      throw new ConflictException('User does not exist. Login rejected.');
    }

    // If the user is suspended, reject login by throwing an exception.
    if (found_user.user_status === USER_STATUS.SUSPENDED) {
       throw new ConflictException('User is suspended. Login rejected. Please contact admin.');
    }

    // If the found_user's password is wrong, (password_hash doesn't match) then the it should return null.
    const password_hash: string | null | undefined = found_user?.user_password;

    const password_check = await argon2.verify(password_hash as string, password);

    // Checking if the user's password is correct.
    if (password_check !== true) {
      throw new ConflictException('Incorrect username or password. Login rejected.');
    }


    return found_user;
  }
}

//myauthentication.controller.ts
import { Body, Controller, HttpCode, Post, UnauthorizedException } from '@nestjs/common';
import { Public, SignInService } from '@nestjs/authentication';
import { SignInDto } from './dto/sign-in.dto';
import { CredentialsService } from './credentials.service';
import { CreateUserDto } from '../users/dto/create-user.dto';

()
('auth')
export class MyAuthenticationController {
  constructor(
    private readonly credentialsService: CredentialsService,
    private readonly signInService: SignInService,
  ) {}

  ('sign-up')
  async signUp(@Body() createUserDto: CreateUserDto) {
    const user = await this.credentialsService.register(createUserDto);
    var string_user_id = String(user.user_id);
    await this.signInService.signIn(string_user_id, { method: 'password' });
    return user;
  }

  ('sign-in')
  (200)
  async signIn(@Body() signInDto: SignInDto) {
    const user = await this.credentialsService.verify(signInDto.user_email, signInDto.user_password);

    var string_user_id = String(user.user_id);

    const { session } = await this.signInService.signIn(string_user_id, { method: 'password' });
    return { mfaRequired: session.mfa === 'pending' };
  }

  ('sign-out')
  (204)
  async signOut() {
    if (!(await this.signInService.signOut())) {
      throw new UnauthorizedException();
    }
  }
}

//myauthentication.module.ts
import { Module } from '@nestjs/common';
import { UsersModule } from '../users/users.module';
import { SessionAuth } from './session-auth.provider';
import { MyAuthenticationController } from './myauthentication.controller';
import { CredentialsService } from './credentials.service';

({
  imports: [UsersModule],
  controllers: [MyAuthenticationController],
  providers: [SessionAuth,
    CredentialsService
  ]
})
export class MyAuthenticationModule {}

//session-auth.provider.ts
import { Injectable } from '@nestjs/common';
import { AuthenticationRegistry, SessionCookieProvider, type SessionRecord } from '@nestjs/authentication';
import { UsersService } from '../users/users.service.js';

import type { User as PrismaUser } from '../generated/prisma/client.js';
export type User = Omit<PrismaUser, 'user_password'>;

()
export class SessionAuth extends SessionCookieProvider<User> {
  constructor(
    private readonly usersService: UsersService,
    registry: AuthenticationRegistry,
  ) {
    super();
    // Adds this provider to the chain the guard runs for every request.
    registry.registerProvider(this);
  }

  // Called for every request with a live session cookie.
  // Returning null (the user was deleted) ends the session.
  validate(session: SessionRecord) {
    console.log("In validate() in SessionAuth")
    const user_id = session.userId; 
    var numeric_user_id = Number(user_id);
    return this.usersService.findOneUser(numeric_user_id);
  }
}

NOTE 1: The authentication system uses server-side sessions managed through nestjs/authentication and a session cookie. The package's SessionCookieProvider reads the cookie and loads the user through the validate() method.

NOTE 2: I am also asking this question since NestJS v12 has only been released on August 27, 2026 and there don't seem to be many resources that show how to extend this system to the front-end.


r/webdev • • 1d ago

Question Using open-source WhatsApp Web wrappers (whatsapp-web.js, OpenWA, go-whatsapp-web-multidevice) for low-volume staff workflows. Will this trigger bans?

1 Upvotes

Hey everyone,

I'm building an internal tool/MVP for my company. For our communication workflow, we want staff to be able to send quick updates to candidates directly from our staff UI.

The Proposed Workflow (MVP 4.1)

Staff UI Integration: An embedded WhatsApp Web session/iframe within the staff dashboard.

Usage Pattern: Low message volume per session, used strictly for transactional, part-by-part updates (e.g., status updates, scheduling coordination).

Restrictions: Zero mass texts, zero automated broadcast blasts.

Session Management: Every time a staff member logs in, they scan the QR code and authenticate fresh (no unattended, long-running rogue daemons operating completely detached from human presence).

Reference Tools Considered

whatsapp-web.js

OpenWA

go-whatsapp-web-multidevice

The Core Question

Given that we keep volume low, avoid bulk messaging entirely, and tie sessions directly to active staff logins with frequent re-authentication:

Is this architecture safe from Meta’s automated ban filters, or do headless/unofficial multi-device wrappers get flagged immediately regardless of volume?

Are there hidden session-state or socket-drop landmines with whatsapp-web.js or Go-based alternatives when embedded or managed this way?

If this is a ticking time bomb for business risk, what is the cleanest alternative for a low-volume setup without jumping straight to the official Cloud API pricing tiers?

Appreciate any real-world production insights or horror stories.

^AI used to polish the language and simplify my questions^ :(


r/webdev • • 1d ago

Question Netlify Domain Issue After Account Deletion

0 Upvotes

I deleted my old Netlify account, but now my domain says it’s already managed by another Netlify team. How can I connect it to my new account?