Josh Nussbaum

Josh Nussbaum

@joshnuss.com

Software developer by day, hardware nerd on nights and weekends. X: https://x.com/joshnuss YouTube: https://youtube.com/@josh_nussbaum Building sveltestripe.com, github.com/joshnuss. "Just a straight shooter with upper management written all over him"

821 followers105 following754 posts

With the `--export kdenlive` option it: - Creates the kdenlive project - Import all the tracks - Syncs the starting point - Adds the webcam as an overlay. Ready for editing or cropping. It also has `--export mp4`, which just renders all tracks to one mp4

Advantages over OBS - It's CLI based. Just hit CTRL+C to save recordings. - Can make reusable scripts with your preferred settings. - Easy to put in a launcher

Astra + FreeCAD workflow: I needed a replacement piece for a broken banister. I gave Astra a photo of the broken piece and it created the CAD model in 2 minutes. It's printing now..

Open Source is even more important now. Projects like Linux, FreeCAD, OpenOffice are easy for AIs to read and modify While closed source projects like Windows, Office and SolidWorks are black boxes

Learning about AI + CAD + 3D printing Exploration: Turn a logo into a cookie cutter and frosting stencil It's a pipeline of: - Image processing (numpy, pillow, scipy, shapely) - CAD model generation (freecad) - Preview rendering (blender) - 3D slicing (orca slicer cli) - 3D printing (creality)

View full thread

Another example: // this function formats a name and returns a string function toString(x): string { // .. } Instead: 1. rename so it's clearer. 2. remove surporfluous comments 3. consider moving it to add context // in src/utils.ts export function format(name: string): string { // ... }

Comments are often a crutch for bad naming. - They make code harder to maintain (more to read) - It gets out of sync with the code (confusing) - In the age of AI, it costs extra tokens 😅

Dont write this: // this is the price, it sometimes includes discount and tax let x = .. Limit the comments! Instead, put the gist of the comment in the name, and delete the comment: let totalPrice = ...

Built a script to reduce fees for hosting my apps ✨ Now my only monthly fee is the bare hosting, which can be as little as $5/month 💸

- Supports AWS, GCP, Hetzner, Digital Ocean, Vultr, and Akamai/Linode - Deploys to a single node or multiple nodes - Fully dockerized deploys - Uses buildpacks to support a wide array of languages and frameworks - Configures common services (http/nginx, ssl certs, postgres, mysql, redis, etc..)

Cool benefit of writing analytics (requests), logs and errors to same db: Can query requests with all it's logs and any errors thrown in a single view.

Cool benefit of writing analytics (requests), logs and errors to same db: Can query requests with all it's logs and any errors thrown in a single view.

The problem with hosting nowadays: 1. It's not just about running a server. You need observability too (analytics, log storage, error tracking and uptime monitoring). 2. Databases shouldn't be extra. 3. I don't want 6 bills. 4. I want to run on my infra. 5. I don't want to spend time on setup.

Prompts that fight the slop: 🥊🤖💪 > Which functions have the worst cyclomatic complexity? > Are there any obvious refactorings? > Can you refactor <...> for readability and simplicity > Any opportunities to improve code using design patterns

It reclaimed 50GB, mostly from docker.. I always used to clean up docker images and containers manually, but it turns out I missed removing disks (the biggest file sizes)

It does very little ATM, but it has: - A lexer and parser - Execution with global and local scope handling - Test harness - CLI that supports running scripts - REPL