Live data from Hacker News

Audioscrape: Building in Rust When Everyone Said I Shouldn't

news.ycombinator.com

11–20 of 47 posts

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#12
post #9

Love your story here! You're not doing it wrong at all. > Has anyone else bootstrapped using Rust? What were your experiences? We scaled several websites to 6M+ MAUs on Actix/SQLx and ran that on the lowest tier VMs. Rust is God Mode for efficient and scalable HTTP services. Moreover, the type safety and robust type system give us incredible confidence that our software is defect free.

Thanks for sharing your experience! It's impressive to hear about your success with Actix/SQLx and Rust's scalability and efficiency. Knowing Rust can handle such scale is encouraging and gives us confidence for future growth!

While we currently have fewer users, I've also found Rust's type safety and robust system invaluable for building reliable software. In my experience, if it compiles, it just works—quite a contrast to dealing with runtime error minefields in Python, Java, or TypeScript.

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#13

How did you get your first 500 users?

Just posting on X (replying under trending posts or in 'build in public' communities).

Some people used the share feature of Audioscrape to emphasize their points in discussions on X. For example, 'Here, this is what Zuckerberg said recently about Y '

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#14
I actually think Rust is amazing I recently discoevered some rewrites in web developement in rust and they made build times on windows corpo bloat machine way way faster than conventional js/ts implementations so I would say go for it and all power to you, also many are just salty because it's another new thing and new/change = bad

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#15

"Database: SQLite with SQLx for type-safe queries" I might be ignorance. But is it not safe? How do you back up your data?

Thanks for asking! Using SQLite with SQLx in Rust provides type-safe SQL queries, which enhances safety by catching errors at compile time.

As for backups, the setup is straightforward: just periodically copy the SQLite file to a secure location. Since it's a single binary and a database file, this keeps things simple and low-maintenance.

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#16
> Has anyone else bootstrapped using Rust? What were your experiences?

Yes, we are building a parsing platform in rust. (~50k loc) Stack: actix + diesel (async) for PG.

Getting the right project structure was not simple (that could deserve a blog post). Performance is super nice if you do heavy IO.

Beware of memory usage handling with actix.

Day to day dev is a joy, once it compile you can be confident it will work as expected.

Never .unwrap / panic !

Use clippy to check your code.

Once you have your project structure done, adding a new web handler is as fast as adding one in Django or Flask.

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#17

> Has anyone else bootstrapped using Rust? What were your experiences? Yes, we are building a parsing platform in rust. (~50k loc) Stack: actix + diesel (async) for PG. Getting the right project structure was not simple (that could deserve a blog post). Performance is super nice if you do heavy IO. Beware of memory usage handling with actix. Day to day dev is a joy, once it compile you can be confident it will work a…

I can confirm this! Initially tried shortcuts with unwrap, but once the structure is solid, it's on par with TS/Python frameworks.

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#18

4k loc in a single file must be brutal

Thanks! I was inspired by levelsio's meme about having MVPs in a single index.php file. Traditionally, I've organized codebases into folders, but I started questioning its necessity.

Folders often just add an extra layer to search through. It's basically a search param. With Neovim and strict naming conventions, I've found managing everything in one file works quite well. Keyboard navigation can make folders feel like a hassle in the vi context. This setup has been effective so far, though potential downsides might appear later on.

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#19
I bootstrapped Notado[1][2] and Kullish[3] in Rust. Best tech stack decisions I ever made.

Similar setups (Rocket and Actix instead of Axum, Tera instead of Askama, Diesel instead of SQLx) and overall experience (incredibly cheap, reliable, and since these projects have been running a long time, amazingly easy to return to the codebases after months/years and make changes with a high level of confidence).

I distinctly remember how happy I felt the first time I realized that I had enough paying subscribers to offset the cost of the running the service!

[1]: https://notado.app

[2]: it had a decent amount of HN discussion last week - https://news.ycombinator.com/item?id=41697228

[3]: https://kulli.sh

Re: Audioscrape: Building in Rust When Everyone Said I Shouldn't

#20

"Database: SQLite with SQLx for type-safe queries" I might be ignorance. But is it not safe? How do you back up your data?

Thanks for asking! Using SQLite with SQLx in Rust provides type-safe SQL queries, which enhances safety by catching errors at compile time. As for backups, the setup is straightforward: just periodically copy the SQLite file to a secure location. Since it's a single binary and a database file, this keeps things simple and low-maintenance.

I hope you're calling the `backup` command in sqlite. A simple copy can leave sqlite db files in an inconsistent state from which sqlite can't recover.
Post reply on HN