[kwlug-disc] $30,000/yr to get your app on the $nap $tore

Rob Gilson thatotherdude at gmail.com
Wed Mar 17 01:27:39 EDT 2021


>
> What can you do better in Rust that you can't do with your old codes by
> rearranging and restructuring?
>

The debugging experience was primarily what pushed me to switch.

After working in NodeJS for the better part of a decade there were still
new issues cropping up regularly in mature codebases - with the Rust
rewrite most of the issues I faced in Node (and wrote test suites
extensively for) have been resolved through the type system.

It's just not possible to write most bugs I would normally write in non
ML-languages because every valid application state is modelled by sum-type
algebraic data structures (ie. Rust Enums).

An invalid application state would be a compiler error, same for race
conditions, use after free, null pointers, and immutability. Even SQL
statements are type checked at compile time against my database tables
thanks to sqlx <https://github.com/jmoiron/sqlx>. The only meaningful
problems I deal with now are deadlocks.

Performance is also looking dramatically better and memory usage is down -
those might have been possible with optimization in NodeJS but then my code
would have been more difficult to maintain. I just got them out of the box
with Rust in addition to the maintainability improvements.

- Rob

On Tue, Mar 16, 2021 at 7:26 PM William Park <opengeometry at yahoo.ca> wrote:

> What can you do better in Rust that you can't do with your old codes by
> rearranging and restructuring?
> --
>
> On 3/16/21 3:48 PM, Rob Gilson wrote:
> > So anyways it's been a year (maybe more?) of just not dealing with that
> > problem and instead focusing on developing my similarly private cloud
> > FOSS product (teggapp.io <https://teggapp.io>). Imagine my surprise
> then
> > when just as I am wrapping things up for a release (/queue I rewrote it
> > in Rust meme/) this pops in to my email!
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://kwlug.org/pipermail/kwlug-disc_kwlug.org/attachments/20210317/a00da7e0/attachment.htm>


More information about the kwlug-disc mailing list