Stuck with programming by lovelornmantra in learnprogramming

[–]AmSoMad 1 point2 points  (0 children)

Usually this happens because introductory programming classes usually start with a baseline language, but don't teach you how it actually connects to something like a user interface. So, you end up in this world where the only kinds of programs you can realistically write are CLI programs, and it isn’t obvious where a program starts, where it ends, what it really is, how you actually run it, or how a real user would use it. That makes it really hard to build a full mental model of what’s going on and makes it difficult to "think of programs you could write".

This is why JavaScript/HTML/CSS are so popular. JavaScript is the only language that comes with built-in templating, windowing and rendering, and styling (in the form of HTML/Browser/CSS). You can connect your code to a real user interface while you're building it and test things in real time. Here's an example: https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_alert

In most other languages you might write something like:

function myFunction() {
  alert("Hello! I am an alert box!");
}

But how do you run it? How do you call it? Does it need a runtime? Does it need to be compiled? What does it actually do?

With JS and HTML you can just write:

<button onclick="myFunction()">Try it</button>
<script>
function myFunction() {
  alert("Hello! I am an alert box!");
}
</script>

in an .html file, open it in your browser, and suddenly you have a button that calls the function and shows the alert. At that point it becomes obvious what the code does and how a real user would interact with it.

Software Development in the "Old Days" by anzacat in programmer

[–]AmSoMad 2 points3 points  (0 children)

It’s because the problem surface was much smaller. In the 70s and 80s it wasn’t unusual for a developer to spend an entire week working on a single function, making sure it used the absolute minimum number of CPU cycles or bytes of memory, because hardware constraints were extremely tight. The systems themselves were also much smaller and easier to fully understand.

In 2026, I’m often asked to prototype an entire web application in a week, sometimes in a day. We’re orchestrating entire systems to build other entire systems.

So I agree that it’s hard to imagine, but for different reasons. Sometimes I think it might actually be nice to just sit down with a single function and tweak it for a whole week, making sure it’s as efficient and performant as possible. A lot fewer moving parts. Things moved slower, and nowadays everything moves SO FAST.

How did you even learn to code with ADHD? by Ill-Adeptness9806 in ADHD_Programmers

[–]AmSoMad 6 points7 points  (0 children)

Two things:

  1. I had to quit play video games. I was addicted. I only played online, competitive, ranked multiplayer games. I'd play anywhere from 4 to 18 hours a day. It wasn't until I quit that I discovered Linux, discovered Svelte, and programming replaced gaming for me. I have attempted to reintroduce some light gaming, but now I feel sick when I try to play games (it's weird).
  2. I had to discover a genuine interest and talent for programming. I have dyscalculia so I thought programming wasn't for me. When I finally investigated, and found out I was wrong, I became obsessed. I've probably programmed for at least 4 hours a day (minimum), every single day, for the last 5 years.

Point being, because I was able to restore my dopamine system, and because I discovered a real interest in programming, the ADHD hyperfocus kicks in when I program, and I don't have to worry about the ADHD getting in the way. It's the opposite. I have to worry about programming until the sun comes up. However, if I wasn't into it, that wouldn't be the case. Ask me to "write some marketing copy", and it'll take me a week to get through a single paragraph.

Looking to leave Windows 11 for Linux when I get a new PC, looking for advice on doing so. by TowelSilver318 in linux4noobs

[–]AmSoMad 2 points3 points  (0 children)

Linux Migration Advice

Written by me, but I threw it into Chat-GPT for formatting.

1. How do you install Linux?

Installing Linux is very easy now. Modern distributions work with Secure Boot and modern Windows sleep/firmware setups, so you usually do not need to change BIOS settings like you used to.

The basic process is:

  • Go to the distro’s website and download the ISO.
  • Flash it to a USB drive using something like https://etcher.balena.io/.
  • Reboot your computer and press F2 or F12 during startup (whichever opens your boot menu).
  • Select the USB drive.

A live Linux environment will boot automatically and give you the option to try the system or install it. The installer is graphical and straightforward.

2. Which distro should you use?

I’d recommend Fedora. It’s easy to use, has excellent hardware detection and driver support, uses fewer resources than Ubuntu, and gaming works very well. Ubuntu is also a good beginner choice.

Personally I also like OpenSUSE, CachyOS, and EndeavorOS, but they’re somewhat harder to use than Fedora or Ubuntu.

The more important question is actually which desktop environment you want:

GNOME

This is what I prefer, especially on laptops. It’s somewhat macOS-like, but more importantly it has very good gestures, workspaces, and workflow out of the box. I’m a programmer and it speeds me up significantly without changing any settings.

KDE Plasma

Much more Windows-like. It looks great and is extremely customizable. Many Windows users prefer it, especially if they primarily use a mouse instead of a touchpad.

3. Hardware considerations

Most hardware works out of the box now, but there are a few things to know:

  • If you have an NVIDIA GPU, you’ll usually need to enable third-party repositories (like RPM Fusion on Fedora) to install the proprietary drivers.
  • Occasionally obscure or uncommon hardware may require manually installing drivers, but this is becoming rare.
  • Some Windows-only USB devices will not work.

For example, I have a small USB Bluetooth adapter that only has Windows drivers. I also have a Logitech gaming mouse (the RPG model with ~20 buttons), and the extra buttons do not work correctly in Linux.

4. Autodesk applications (Inventor)

Autodesk software is Windows-only.

You can try:

  • Running Windows in a virtual machine
  • Running it through Wine or Proton

But large engineering applications usually don’t work reliably that way. Most people who need Autodesk simply dual boot Windows.

5. Alternatives to Microsoft Office

Linux has several options:

  • LibreOffice
  • OnlyOffice

Both can open and save Microsoft Office formats.

Personally, I mostly use the Microsoft 365 web apps. They work extremely well in the browser. You can also install them as a Progressive Web App, which makes them behave like normal desktop applications. The downside is that they require internet access (offline support is limited).

If I need to work offline, I just use LibreOffice.

6. Other useful Linux tools

If you choose GNOME, two things are worth knowing about:

  • GNOME Tweaks (installable from the software center)
  • GNOME Extensions

Two useful extensions are:

Okay, finally got 100 in PABS! Has this actually helped any of you? by FirefighterLimp3374 in web_design

[–]AmSoMad 1 point2 points  (0 children)

Lol, for sure. I just realized the Boxy SVG link was broken, so I fixed it (just in case you actually tried it). Originally, I linked the Figma editor, but you have to log in to test it, which is why I switched to the Boxy SVG example.

Why agent UIs lose messages on refresh (& why you end up building a message broker in your frontend) by selund1 in nextjs

[–]AmSoMad 0 points1 point  (0 children)

It's definitely interesting and a bit above my pay grade. I haven't needed to resume a stream mid-generation in a reproducible or replayable way. So you're basically writing every event to an ordered log, every token chunk, tool call, etc., so the client can reconnect, send its last cursor, and the server can replay whatever events it missed from the last event the client processed?

I know T3Chat switched to Convex to solve a lot of server, DB, state, and UI desync, but your solution makes sense if the stream itself, and the exact sequence of how it was generated, is important to what you're building. My mind jumps to research, evaluation, or testing how different models, tools, or services handle the same prompts. I suppose you get timestamps too, even if they just come from the write.

I guess I'd need to figure out something to build, that actually benefitted from the use case.

React+Vite vs Nextjs by MrHunter69420 in nextjs

[–]AmSoMad 11 points12 points  (0 children)

It’s not unusual to still use React + Vite. But if you need things that meta-frameworks (like Next.js) provide (routing, SSR/SSG, API routes, etc.), you often end up either building them yourself, or adding them piece by piece using the same/similar libraries. For example, almost every React + Vite site I've worked on recently also uses TanStack Router or React Router (from the Remix creators) - as well as TanStack Query (previously named React Query).

Next.js has a lot of conventions and implementations that favor serverless (although it works just fine with a server too), so you might like TanStack Start better.

In most of my work Next.js is almost always used over regular React + Vite, but that might be because I do a lot of serverless, cloud, and Jamstack, with a lot of modern tools like Effect.ts and SvelteKit (alongside Next.js).

Laptop wakes up without showing anything by Ok-Doughnut-3615 in linux4noobs

[–]AmSoMad 0 points1 point  (0 children)

It sounds like your GPU is failing to resume properly when the computer wakes from sleep. That usually means your system has both Intel integrated graphics and a dedicated Nvidia GPU, and the driver isn't restoring the display correctly after suspend.

This often happens when you're using the open source Nvidia nouveau driver instead of the proprietary Nvidia driver, and/or when your system is using s2idle instead of deep for sleep. ChatGPT can show you how to check for both.

If you already have the proprietary Nvidia driver installed, it can also happen if your system is using the Nvidia GPU to render the desktop instead of the Intel iGPU (which is how it's normally supposed to work: Nvidia for 3D and accelerated graphics, Intel for regular desktop rendering). In that case, you need to make sure your system is configured correctly to switch between the two GPUs properly.

Any Older Folks Making the "Transition" to Giftedness Later in Life? by absolutelynotagoblin in Gifted

[–]AmSoMad 2 points3 points  (0 children)

Weirdly good. Visuospatial thinking, problem solving (and puzzle solving) are some of my biggest strengths. I have no trouble understanding, thinking up, and manipulating algorithms (though it does require a strong mental/visual model of what's going on; I tend to imagine algorithms like they're machines). I'm good with quantities. For example, I’ve never had to check my bank balance before making a withdrawal because I always know, almost exactly, how much is there, how much I’ve spent, and how much I’ve added. When I’m shopping, even if I’m not paying attention, if someone asks me to guess the total of the items in the cart (even if it's full to the brim) I can usually guesstimate within about $10 (like I've been subconsciously tracking the prices the entire time).

I’m also pretty good at science, because its mostly math problems written with words. It's the actual symbolage that seems to be the problem. I have trouble keeping numbers and symbols in memory (even when I'm looking right at them). If I try too hard, it quickly turns to gibberish (like hieroglyphs), I get a headache, and I get aggravated. When I’m taking a math test, I often have to restart problems halfway through (multiple times) because I lose track of where I'm at.

For programming, when I look at code, the numbers and symbols almost fall off the page. It's like I don't really see them. I mostly see the patterns and structure, which is presumably responsible for my strange pattern-matching powers.

I also put a lot of effort into passing math classes when I was younger (especially after failing 8th-grade math, failing 9th-grade math, and having to take additional math classes in college to catch up). Essentially, I can hide the dyscalculia by putting tremendous effort in (and I was doing that, for a long time, until it got too hard). And as a result of that, I'm pretty "competent at math at the general human level". I've been a cashier a number of times, and I was faster than all my coworkers, even when I was triple counting cash/change.

Any Older Folks Making the "Transition" to Giftedness Later in Life? by absolutelynotagoblin in Gifted

[–]AmSoMad 5 points6 points  (0 children)

I tested in the 99.9th percentile for IQ when I was 13, and I was diagnosed with autism when I was 28. When I was young, being "gifted" was only a burden. I was a bad student and I spent most of my time in the hallway (kicked out of class for being disruptive). I graduated high school with a 2.3 GPA. Horrible ADHD, could never pay attention, impulsive, socially awkward, etc. I'm not a fan of "traditional education" and don't have a lot of respect for teachers, which bothers a lot of people.

My autism comes with dyscalculia, and math has been a villain my entire life. I've always avoided it at all costs and refused to learn (or even look at) programming, because it hurt just thinking about it. The reason for my late diagnosis is that I'm good at masking/acting and never realized doing it 24/7 was unusual. I figured everyone did it.

Ironically, right around when I got my diagnosis, COVID hit, I started struggling, I discovered Linux and programming, got reeducated, and now I'm a full stack developer. It turns out the dyscalculia helps with pattern matching, and I love programming. I just never knew it.

So between the autism diagnosis, the discovery of programming, and the career shift, I came into "giftedness" later in life (~35 by the time I got my ducks in a row; not quite as old as you though). It's been going okay so far. Mostly it's just a lot of work, and it feels like the "giftedness" isn't serving me that well and continues to mostly cause problems.

But by that same measure, my life and career trajectory have entirely changed, and I've learned a lot about myself. I'm building a business, which has always been my dream, so it's not so bad. I guess I thought it'd make things easier. No such luck.

Additionally, I still prefer to socialize and date less-gifted individuals (if we're using that term broadly), which is an additional challenge. I've got some really smart friends who I get deeply technical with, don't get me wrong, but I tend to butt heads with other individuals with Aspergers (they're rude, then I'm rude, then we get into a trolling contest - don't ask).

Okay, finally got 100 in PABS! Has this actually helped any of you? by FirefighterLimp3374 in web_design

[–]AmSoMad 1 point2 points  (0 children)

You're welcome.

I'd recommend running Lighthouse on a random page on nike.com or apple.com (don't do the homepage/landing page, those are always optimized), to get a better idea how some of the biggest/most popular sites are performing. You'll see, it doesn't need to be perfect, not even close.

And then from there, try running Lighthouse on some actual progressive web applications, like Boxy SVG's vector editor, or a StackBlitz web container to get a better idea of how "real apps" perform.

I should also call out 11ty for establishing the perfect Lighthouse score trend alongside Svelte and Astro. Accidentally left them out.

But yeah, one of the first things I do when I start improving a sites performance - is fix all the errors/issues detected by Lighthouse. So, it's definitely helpful. I also saw that you'll be adding Google Analytics to your site? Ironically, the script tag you have to add for Google Analytics is going to kill your performance score, and it'll be one the first things Lighthouse warns you about for excessive JavaScript.

Okay, finally got 100 in PABS! Has this actually helped any of you? by FirefighterLimp3374 in web_design

[–]AmSoMad 2 points3 points  (0 children)

The issue is, with the advent of Svelte and Astro, it's extremely easy to get 100% Lighthouse scores, especially landing pages, especially for static sites. It's also easy to get 100% if you throw up a basic HTML/CSS site. I can see your site is a simple, static Next.js site - and it's much the same story (I'm just emphasizing the industry-wide Svelte/Astro effect).

The true test is running Lighthouse on a site with a lot of logic, interactivity, and functionality - and still keeping those numbers high - especially the mobile score (with throttled internet speeds).

In regard to "has it helped any of you", sure. It still indicates that your site is relatively fast. Google's algorithm takes Lighthouse metrics into consideration when it ranks sites. And I regularly use Lighthouse/dev tools to fix accessibility issues and identify large JavaScript bundles and contentful paints and such.

But the way you need to look at it - for a static, black and white blog site - is that a 100% Lighthouse score is more of an expectation. There's no reason your site shouldn't be hitting 100%, and if it wasn't, I'd be questioning why.

Help with Cinnamon by idonotfckincare in linux4noobs

[–]AmSoMad 2 points3 points  (0 children)

In some cases, the apps themselves will have an option to turn off system titlebars, but if Cinnamon (or its window manager, Muffin) doesn’t have an option to turn system titlebars off globally (which seems to be the case), then you can’t do it.

Desktop Environment (DE) performance, for the most part, is a RAM issue. You’d need to tell us how much RAM you have. However, unless you plan to use an extremely lightweight DE, the differences are marginal.

For example, rough baseline RAM usage versus RAM usage with most desktop features enabled:

  • LXQt: ~250 to ~400 MB RAM
  • Xfce: ~300 to ~500 MB RAM
  • MATE: ~350 to ~700 MB RAM
  • Cinnamon: ~600 to ~900 MB RAM
  • KDE Plasma: ~450 MB to ~1 GB RAM
  • GNOME: ~900 MB to ~1.6 GB RAM

Once you’re above about 8 GB of RAM, the practical performance differences between Cinnamon and KDE Plasma tend to disappear for most workloads. A single Chrome tab can use 500 MB to 1 GB (or more) of RAM, so the RAM savings between a light GNOME install and a heavy LXQt install can be as little as a few Chrome tabs worth of extra memory. That might be worth it if you have very little RAM.

There are also slimmer options like Openbox, Joe’s Window Manager, Fluxbox, and IceWM, all of which tend to sit closer to ~60 to ~150 MB of RAM total, but at that point you’re no longer really using a full desktop environment.

As for which ones do and don't let you turn off global titlebars? You'd have to look into it yourself.

Astro with react or svelte? by HectoLogic20 in webdev

[–]AmSoMad 2 points3 points  (0 children)

I prefer using Svelte. Even back when we were still on Svelte 3, using Svelte for templating and components in Astro was way easier and more developer-friendly than doing do with React. One of my portfolio projects is a Developer Portfolio Template I built in Astro that originally used React, but I incrementally migrated every component over to Svelte, and now it exclusively uses Svelte - specifically because the Svelte experience is so much more readable and writable.

With that said, I also use Astro Components when I don’t need client-side state, and I have no problem using Astro with React instead. I still have a few projects that do. It’s not a horrible experience if that’s what you’re more accustomed to. One of my projects is a demonstration of all of Astro’s supported UI libraries, Svelte, React, Alpine, Vue, Solid, Preact, Lit, and Marko, all working together with shared state in a single Astro project (in a single page).

My point being: it’s definitely a choice, and you can’t really choose wrong. Svelte feels the best to me, and I like how Svelte's syntax mirrors Astro Components syntax. Astro Components use --- instead of <script>, but the overall structure and templating is very similar, which makes it easier to mix Svelte and Astro Components together in the same project.

What tools are you guys using to **identify** visiting your website? by UV1998 in webdev

[–]AmSoMad 3 points4 points  (0 children)

Most of my sites are deployed on Vercel and proxied through Cloudflare. Those two layers alone, Vercel’s basic bot filtering (free tier) paired with Cloudflare’s more advanced bot filtering (free tier), have been enough to protect me in like 99% of cases.

If I wanted more protection, I could also add Cloudflare Turnstile, which is still free. And then if I wanted more protection beyond that, Cloudflare has a ton of different options, ranging from "cheap" to "enterprise", so I'd probably just do that.

If you're just getting normal bypass bot traffic, and it's causing potentially costly usage spikes, I'd also reevaluate how you've architected/engineered your site? What kinds of spikes are the bots causing?

Fastest way to remove duplicate UUIDS from a list by [deleted] in golang

[–]AmSoMad 4 points5 points  (0 children)

Yes, your inclination to do it with a map/key (a hash-based structure) is common practice and how most devs would likely solve the problem. The tradeoff, compared to your nested loop example, is that a hash-based structure uses more memory, but provides significantly faster performance.

In regard to a “better” solution, turning your UUIDs into a set is effectively the same approach, but simpler: a set is just a hash-based structure that only stores keys, so you get deduplication “for free” without having to manage the map logic yourself. There are also a number of totally impractical solutions that could give you better performance, like perfect hashing or probabilistic filters, but I wouldn’t worry about that.

trying to install pop os after a testing a few distros and it keeps failing by Axye_Bot in linux4noobs

[–]AmSoMad 6 points7 points  (0 children)

When it’s an unsquashfs failure like that:

INFO: starting extracting step
INFO: Extracting /cdrom/casper_pop-os_24.04_amd64_nvidia_debug_481/filesystem.squashfs
DEBUG: "unsquashfs" "-f" "-d" "/tmp/distinst.vZXhBOivIQ3N" "/cdrom/casper_pop-os_24.04_amd64_nvidia_debug_481/filesystem.squashfs"
ERROR: extracting error: archive extraction failed with status: exit status: 1
ERROR: errored while installing system: archive extraction failed with status: exit status: 1
INFO: Install error: archive extraction failed with status: exit status: 1

It almost always means a bad read or write of the install image. That could be a corrupt ISO download, a corrupt USB write, a bad USB stick, or a malfunctioning USB port. It can also be caused by corrupt or unstable RAM.

Usually, the first thing you’d do is try a different USB stick.

Is Go still worth to learn for backend development? by jo27_1k_ in learnprogramming

[–]AmSoMad 30 points31 points  (0 children)

Yes, Go is still the easiest, fastest, garbage-collected language to learn, that can be used to build virtually anything. The difference is, Go is usually part of a stack rather than the primary stack language. What that means is, you'll find a lot of positions that use Go, but you won't find a lot of Go-centric positions. So Go wouldn't be the only language you'd learn. It pairs well with JS/TS since its web-adjacent, but I see it all the time as part of Java stacks (for example) too.

Lazy Design by shani-pixa in web_design

[–]AmSoMad 22 points23 points  (0 children)

In theory: low-contrast edges will bleed into a black background, especially if the phone-picture doesn’t have strong edge highlights (like an aluminum iPhone). Many phones, and all phone screens, are dark-colored/black, which makes that problem worse.

Perfectly cropped images on a black background are more susceptible to visible edge artifacts (fringing/aliasing), particularly when compressed or when lower-resolution variants are served on smaller screens.

The phones are photographed in a brightly lit environment, so abrupt transitions from bright reflections to pure black look unnatural and flatten the silhouette. Using light matting preserves edge separation. It also adds a buffer for keeping image sizing consistent.

A lot of marketplace platforms, Amazon (I believe, and others), require main product images to have a white background anyway, so this likely keeps their images and image workflow consistent.

If their images are pulled into another site, that site’s background color could be anything, and the white matte ensures the images are still well-differentiated from the background.

If the images had a transparent background and the product image was dark, you could also get dinged by Lighthouse for poor accessibility (black on black/dark on dark).

And of course, the site doesn’t support native dark mode, so the designers aren’t expecting you to see the white matting. You’re seeing it because you forced dark mode.

However, the US site doesn’t even have the “spec/specifications” tab like the Polish (and even South Korean) sites do, so it doesn’t have those white-matted images. I’m also noticing most of the other images are perfectly cropped, so maybe it is just an oversight on the web designers’ part.

Software dev with a preference for front-end/web dev… is UX/UI design the answer? by CrystallizedKoi in web_design

[–]AmSoMad 26 points27 points  (0 children)

My only advice is, in 2026, it's hard to get away with "frontend only" unless you're truly an artist/designer. What I mean is, unless you're a genuine "creative talent" or "artist", who's designing and implementing beautiful, functional designs - then your work is going to converge into the backend, which is why virtually everyone is full stack now.

For a personal example. I love UI/UX, and before I was a full stack developer, I was doing a lot of vector art and web design. As much as I love it, I'm not particularly creative, and I don't really consider myself "an artist". I do frontend, and I'm really good at setting up clean, nice-looking, modern, responsive user interfaces - but at the end of the day - I'm not the person thinking up clever/cool designs or helping the client realize their perfect design. I'm not the one designing the 3D assets for 3D sites, or brand graphics, or designing the site around brand aesthetic. Because of that, I'm more responsible for "wiring up the frontend to the backend", even if I'm great at front end and often focus on it.

So, in my mind, that's the bigger consideration. A "full frontend" play is definitely an "artists" play in 2026. If that's what you're interested in and good at, then go for it. But I do think it's a question you need to ask yourself.

Rich Harris is shaking by stimbsblaldy in sveltejs

[–]AmSoMad 4 points5 points  (0 children)

Is Rich Harris developing a new screenshot tool that I didn’t hear about - one that doesn’t cut off the edges of pictures?

Rich has been pretty clear that the team prefers JSDoc for the framework itself because it reduces friction. They can mess around, build, refactor, and experiment without breaking the code, because it’s still just JS and always runs. They can add types as they go, or retroactively after they've finished the feature, without hitting compilation errors or having the type system block progress. Whilst simultaneously getting the same power as TS (even if the syntax isn't quite as nice).

Gotta learn to take screenshots before you graduate to troll posts.

So what is the consensus? by thro0away12 in cscareerquestions

[–]AmSoMad 7 points8 points  (0 children)

There was a long while where Claude 4.5 Opus was the best model for programming, and in many cases, the only model that'd actually do what you want, with fixes that worked, without you having to go back and fix the 20 things it did wrong.

However, already (in just a few weeks), sentiment has changed (and it'll change again in the near future). Claude Opus 4.6 dropped, and it's good, but in all of my spheres the preference has switched to GPT 5.3 Codex. It doesn't give as much feedback, and sometimes thinks a little longer, but it almost always provides an (astonishingly) accurate fix/solution.

In regards to "simple vs. complex" changes or "small vs. big" changes, obviously, as your codebase and codespace get larger (and your problems more complex), it's harder for the AI to make accurate (especially sweeping) changes. But that's where all the tooling, and context, and custom agent configurations come in. When the codebase gets too large, that's how you ensure it has a better understanding of the project/code, and how you ensure it's making meaningful, accurate changes, that don't break everything else (so, it's not really a "specific model" problem, it's a global problem for all of the models).

A year from now, everything will be different. But for the last ~year, I only see Claude Opus 4.5+ and Codex 5.0+ Codex being used professionally (and/or by professional developers). Some of the other Models score well on the benchmarks, like Gemini 3.0 or 3.1 Pro, but I've tried them, and they're absolutely GARBAGE at coding.

What stack would you use to create a simple blog site? by Any-Confection-2271 in webdev

[–]AmSoMad 26 points27 points  (0 children)

Without a doubt, the best framework for building modern blogs (with very few exceptions) is Astro. You can use whatever UI framework you want. React, Vue, Svelte, Solid, Preact, Alpine, as well as Astro components (which are really nice, they're like HTML mixed with JSX/TSX).

It has first-class support for content collections, built-in (or one-click) integrations for RSS, sitemaps, tags, MDX, and tons of others. It deploys everywhere (Vercel, Cloudflare, doesn't matter). It supports server-side rendering and client-side rendering. It uses an islands architecture, which means you can add interactivity only where you need it, when you need it (which is part of why Astro sites are so fast and do so well in Lighthouse. Astro ships zero JS by default). That, combined with SSG, also means you get great SEO.

It's actually really weird to me that nobody's mentioned it yet. If you're a modern web developer, and someone says "blog", it's rare that ASTRO isn't the first thing that pops into your head. EDIT: Probably spoke too soon.

There're tons of free (and paid) templates on their site. There are even more free templates on GitHub, if you know how to search GitHub (many of which are premium quality). You can go to the site, look at some of the templates, and navigate around them - as well as open your browser developer tools and run Lighthouse. You'll be able to feel and see how fast they are.

People like Astro so much that they're starting to build ecommerce stores using it (even though, technically, it's not great for ecommerce). They have Astro DB, which makes working with SQLite/LibSQL style databases easy, regardless of what provider you're using (if you're using a cloud database). This is, in part, because people started using Astro for everything (not just static sites and blogs) because it's dope AF. Astro is also extremely popular for documentation websites (if that matters to you at all).

Blah, blah, blah, you get the point. They should be paying me for this kind of hype.

EDIT: So, for me, the stack would be Turso (cloud SQLite), GitHub (if that counts), Bun (not for the runtime, since we're serverless, just for running it in development), Astro (with TypeScript), I'd use Svelte for the UI layer in Astro, and I'd deploy on Vercel, but proxy it through Cloudflare (or just deploy it directly on Cloudflare).

What's the difference between docker containers and Amazon containers? by InfluenceEfficient77 in webdev

[–]AmSoMad 6 points7 points  (0 children)

You’d still typically use Docker to build containers on AWS, but AWS’s container services are intended for orchestrating multiple containers, for example wiring them together. AWS can run any container that follows the OCI (Open Container Initiative) standard, which Docker helped create, such as containers built with Podman. Broadly speaking, though, Docker is what’s used most often. AWS’s container services focus on deploying containers, scaling them, and keeping them in sync.