News for hackers. Stuff that matters.
Re:Perseus – NextJS alternative in Rust by pachico on Sunday April 09, 2023 @05:44AM (#35501214)
I have this feeling that I am wasting my time by not learning Rust.

I am a proficient Go programmer but I have this sensation I cannot really describe about that not being enough.

I feel something similar with Zig.

Am I the only one?

Re:Perseus – NextJS alternative in Rust by nindalf on Sunday April 09, 2023 @06:41AM (#35501456)
I use Go for work and Rust for personal projects. I use Rust because it makes programming fun. Programs just work after they compile, and often are fast with minimal effort spent optimising. If that sounds compelling to you, then it might be worth learning and getting over that initial learning curve.

But if it doesn’t, that’s fine too. Go is a great language that works well in many domains. You won’t have trouble finding work in Go for years. It’s unlikely that you’ll have to solve a problem at work that can’t be solved in Go. You’ll be fine. Don’t guilt yourself about it.

Re:Perseus – NextJS alternative in Rust by pachico on Sunday April 09, 2023 @09:55AM (#35502760)
Fun is really underrated in engineering, indeed
Re:Perseus – NextJS alternative in Rust by DoubleFree on Sunday April 09, 2023 @05:53AM (#35501258)
I personally really like using Rust, but I don't think it's necessarily better than go. There are some areas where Rust will definitely be better or more ergonomic, such as bare-metal or low level systems programming tasks, but many other areas where Go's design works better and Rust will only hold you back (looking at you, borrow checker).

That said, I would still recommend learning Rust, because it will teach you about lifetimes and aliasing, even if you don't want to learn about them. When building for the web, I think Go's easier dynamic dispatch and GC will save you some headaches though.

Re:Perseus – NextJS alternative in Rust by kjuulh on Sunday April 09, 2023 @05:56AM (#35501266)
It really depends on what you need to do. I work professionally with go, but do most of my own work in Rust (web, system, tooling, etc.)

Rust is definitely strongest on the system / tooling level, it is what it is built for and what gives the least friction. If you need to use a lot of macros to do your work, you basically throw away most LSP (Intellisense), which can be quite bothersome to work with.

Rust is definitely capable, but writing actual services and such in web rust, takes a lot of work, and isn't as friction-less as building tooling / low level code.

Re:Perseus – NextJS alternative in Rust by truthsayer123 on Sunday April 09, 2023 @05:47AM (#35501230)
Do you think moving to Rust would help you make enough money to retire in the next 3 years? If yes do it. It will definitely help you save the rest of your life and spend more time with your loved ones.

If you think Rust doesn't really matter for that and you can even do that with PHP and it's the problem and the execution that matters then focus on building a great product instead of getting into the Hype wagon and missing out on the bigger picture of what really matters.

Re:Perseus – NextJS alternative in Rust by pachico on Sunday April 09, 2023 @05:53AM (#35501254)
Believe it or not, this sensation isn't about a professional uplift but as engineering.

I don't even code much anymore since I work mostly on platform related issues.

And, BTW, I have a high respect for PHP and what you can achieve with it.

Re:Perseus – NextJS alternative in Rust by dzikimarian on Monday April 10, 2023 @06:38PM (#35518241)
Sometimes you need to understand broader surrounding to make sure you're building something great. I think every mature developer should understand tooling in his/her area and possibilities it brings.

Do you want, in the next 20 years, to have cardiologist that's focused on early retirement, not on the result?

Re:Perseus – NextJS alternative in Rust by impulser_ on Sunday April 09, 2023 @06:35AM (#35501428)
I'm the opposite. Everytime I'm using Rust I feel like I'm wasting my time not using Go.
Re:Perseus – NextJS alternative in Rust by Patrickmi on Sunday April 09, 2023 @09:55AM (#35502758)
Honestly I get that feeling, when it comes to compile times it feels like a thousand years, it’s discouraging
Re:Perseus – NextJS alternative in Rust by esistgut on Sunday April 09, 2023 @06:14AM (#35501334)
I don't know you so the following could be wrong or condescending, please take it as a general consideration towards people in a similar state of computer science fatigue and it really talks more about me than you: before learning a new language only because of a latent feeling of guilt please consider there is a world of knowledge not directly related to CS and STEM that could literally broaden your senses or at least the way you approach reality. Think of learning a musical instrument: you will literally perceive new nuances in an aspect of reality, akin to see new colors. You have only one shot at this, are you sure, in the end, another programming language will make any difference at all?
Re:Perseus – NextJS alternative in Rust by pachico on Sunday April 09, 2023 @09:57AM (#35502777)
I don't know why this was downvoted.

Btw, I used to teach jazz guitar for years, I know what you mean :)

Cheers

Re:Perseus – NextJS alternative in Rust by Havoc on Sunday April 09, 2023 @07:23AM (#35501689)
Started learning it recently (considered go too).

Between it getting included in Kernel and the whole WASM thing it seems reasonably future safe

Re:Perseus – NextJS alternative in Rust by devjab on Sunday April 09, 2023 @07:48AM (#35501839)
I’m not sure you are wasting your time by not learning Rust. I think the value of programming languages depend the most on where you live (and where you want to work) and very little on global tends. In my area of Denmark there is virtually no Rust jobs and there haven’t been for the past few years, there are even fewer Go jobs. Plenty of Java, PHP and C# jobs, and basically everyone uses Typescript. Rust has seen some uptake in a lot of the C++ community, but you’re going to need to be a proficient C++ programmer to get at those jobs, and you likely will for at least a decade.

That being said. We recently build a replacement for Sharepoint because we sort of out-grew it and couldn’t find a decent headless CMS that fit our needs and also complied with the EU legislation for the Energy Sector, and since it had to be actually worth moving away from Sharepoint we actually did some thorough proof of concept testing before other needs basically dictated it needed to be ODATA and thus we ended up building it on C#. Anyway, two of the prototypes were Rust and Go, and I would never use Go professionally again if I could help it. Rust on the other hand seems like it’s genuinely a good language that sees actual real world adoption for major projects. I loved Go by the way, but we kept running into packages and libraries which can basically best be described like this: “Y needed to do X and build a library for it. Two years later Y got a new job and the library was semi-abandoned because nobody else really picked it up”. I know a lot of people are building a lot of things with Go, but we kept having to either reinvent the wheel with it, or to become guy X ourselves. Rust didn’t seem to have these issues, likely because it sees more adoption at more places which have similar requirements that we do.

I’m not convinced I’ll ever see Rust blow up in my part of the world though. Out of all the recent hyped languages going back to Ruby on Rails, however, I think Rust may have the biggest shot at it. But I fully expect Typescript, Java, C# and PHP with some Python to remain dominant for the next 10-30 years outside of the areas where they do C++.

Re:Perseus – NextJS alternative in Rust by avinassh on Sunday April 09, 2023 @08:19AM (#35502040)
> I’m not sure you are wasting your time by not learning Rust. I think the value of programming languages depend the most on where you live (and where you want to work) and very little on global tends. In my area of Denmark there is virtually no Rust jobs and there haven’t been for the past few years, there are even fewer Go jobs. Plenty of Java, PHP and C# jobs, and basically everyone uses Typescript. Rust has seen some uptake in a lot of the C++ community, but you’re going to need to be a proficient C++ programmer to get at those jobs, and you likely will for at least a decade.

It is the same for me too, almost zero Rust jobs where I live. However, I still benefited greatly from learning Rust, making me a better programmer overall. Now I think more about memory allocations, ownership, how I am passing the data around, and mutability.

Re:Perseus – NextJS alternative in Rust by devjab on Monday April 10, 2023 @03:52AM (#35510087)
The thing I want the most from Rust in other languages is the immutability unless you use the mut keyword. I know a lot of OOP or Dynamic loving people might scoff at that, but after a couple of decades in SWE I'd really like for everything to be immutable by default. It's just so much easier to maintain the code-bases and systems over those 5-10 year periods, when being smart is disabled by default.

Sure, it shouldn't be that way, but I prefer it when we design our systems for the code we write on a Thursday afternoon. You know, those days where you've been up all week because of the baby crying and you've spent too much of the day in meetings that shouldn't even have been an e-mail. Because that's the sort of code someone is going to hate 3 years down the line, and chances are that someone might even be yourself. Unfortunately things seem to be going in the opposite direction with some languages. I didn't work with C# for a while, and I was surprised to see "var" everywhere when I came back to it.

Re:Perseus – NextJS alternative in Rust by tommiegannert on Sunday April 09, 2023 @08:03AM (#35501933)
I'm in the same situation. I really want to learn Rust, but prefer Go for high-concurrency code, and use C++ out of habit for other things. Rust (the syntax) grew too large, so I just feel lost anytime I read it. Cargo seems nice, though.

Started picking up Verilog instead... It doesn't risk overlapping in the Go/Rust/C++/C category.

There are so many things I want to learn and do, and so finite attention and lifespan. I'll have to rely on others doing great things with Rust. I'll focus on extracting more value out of the ones I know already.

Re:Perseus – NextJS alternative in Rust by danielvaughn on Sunday April 09, 2023 @08:17AM (#35502024)
lol I was just thinking this, literally just a few minutes ago. I saw a rough benchmark test between Rust and Node, and the memory consumption over time stayed completely flat with Rust while Node just skyrocketed. Pretty interesting.
Re:Perseus – NextJS alternative in Rust by diarrhea on Sunday April 09, 2023 @09:59AM (#35502792)
Yeah, the minimal memory usage is actually more appealing to me than the speed. The latter is much more important in reality though, as more RAM can always trivially be thrown at a problem.
Re:Perseus – NextJS alternative in Rust by bayesian_horse on Sunday April 09, 2023 @08:53AM (#35502269)
Rust won't give you a lot that Go doesn't give you.

Certainly not a better salary. Beyond that... Rust forces you to care about allocation, deallocation, borrowing, all the low level stuff, while not necessarily being faster.

To me it doesn't feel like Rust beats Typescript or Go as a higher level language at what Typescript is good at, and I don't see why that would change. Some performance critical things to port to WASM maybe...

Re:Perseus – NextJS alternative in Rust by VWWHFSfQ on Sunday April 09, 2023 @09:03AM (#35502345)
> while not necessarily being faster

It may not be a good enough reason to switch, but Rust is nearly always faster than Go. Most of the time orders of magnitude faster.

Re:Perseus – NextJS alternative in Rust by esprehn on Sunday April 09, 2023 @01:37PM (#35504780)
Not at compiling! And for many situations fast iteration beats fast runtime. Python is a great example of this.
Re:Perseus – NextJS alternative in Rust by mamcx on Sunday April 09, 2023 @09:02AM (#35502339)
I have use +12 langs professionally. And personally picked always some language that was not the "mainstream". I from Colombia, so not even mainstream worldwide, but probably unheard among here, much less to ship real code with paying customers.

Plus, I already test a lot stuff (not just langs, but frameworks, etc). Learn from many langs that never use for more than their more basics tutorials (like kdb+) just to see what was the deal.

Is like a hobby to me! But mainly, because as solo-dev anything that give me an extra advantage AND is suitable for a the challenges of a solo-dev I wanna know.

So, learning not means "fully committing and betting my work on it". Is pretty certain you will learn very good stuff with Rust that will be valuable to know in general. Could be the same for Zig.

Re:Perseus – NextJS alternative in Rust by schwartzworld on Sunday April 09, 2023 @09:08AM (#35502384)
Don't know if you are wasting your time, but learning rust really gave me an appreciation for well designed type systems
Re:Perseus – NextJS alternative in Rust by pjmlp on Sunday April 09, 2023 @09:41AM (#35502639)
Not really.

I know enough Rust to make myself usable coding in it, however it is mostly for hobby coding.

On my line of work there are zero reasons to move away .NET/JVM/JS stacks, unless driven by customer requirements.

What you're describing is FOMO, Fear Of Missing Out.

One of the things in the IT fashion industry is to learn what to invest right now, what to ignore, and what to keep an eye on for later times.

Re:Perseus – NextJS alternative in Rust by pachico on Sunday April 09, 2023 @09:48AM (#35502700)
First time I hear about FOMO but I can totally relate!

Thanks!

Re:Perseus – NextJS alternative in Rust by pas on Sunday April 09, 2023 @10:18AM (#35502940)
What!? You missed out on the last full decade of FoMO? :D

That said, there is value in learning a strongly typed language. If you like it you might want to introduce concepts in your Go work, if you really like it you will probably want to switch to one, and if not, that's also completely okay, and you'll know what you don't like about it.

For example I like Rust, Scala, TS, but Haskell always makes me cry a bit. Spent many years using Python (py2 to py3 migration was fun), but a few years ago I realized that it's a bad trade off for almost anything I work on, and makes me rage a bit every time I run into super dumb errors, so I avoid that too :)

Re:Perseus – NextJS alternative in Rust by pachico on Sunday April 09, 2023 @11:37AM (#35503731)
I missed so many things in the last decade... IT is the least of it :)
Re:Perseus – NextJS alternative in Rust by lucasyvas on Sunday April 09, 2023 @09:50AM (#35502713)
I wouldn't frame it so dire as you have.

For me, I see value in learning one systems-level language well to round out my generally higher level language focus.

I never used Go, so choosing Rust for this was easy. Go does not satisfy some tasks in the way that Rust does, but Go likely does just fine for the reasons you originally learned it.

However, I do see Rust as the best way to broaden my horizons and career opportunities. Suddenly, realms where C and C++ would be used exclusively, I can now more easily play in. Many times, Go would not qualify for these types of projects because of its garbage collector.

So from language tooling to browsers, learning Rust may help me debug issues down the stack or help me creatively solve performance issues by plugging it in, and that feels like a win to me and wholly worth the price (or is it pain?) of admission. First class WASM support doesn't hurt either.

Re:Perseus – NextJS alternative in Rust by noveltyaccount on Sunday April 09, 2023 @11:54AM (#35503897)
I had the same feeling as a C# developer. I took some weekends to write an algorithm (Monte Carlo financial simulation) in Rust, Go, JavaScript, and C#. You should do something like that.

What I learned is that Rust has by far the best runtime and memory performance, but .NET Native AOT was second best (even better than Go!) and JavaScript was 30x slower than Rust.

But Rust took me probably over 40hrs (hard to say because I worked on it little by little), the learning curve was steep. Its standard library is spare, and selecting the "best" community crate leads to decision fatigue. I banged out the same algorithm in my most proficient language (C#) in an afternoon.

In business, speed to deliver almost always trumps speed of code runtime. Some algorithm hot spots deserve the Rust treatment, but in general, just ship the code to your customers.

That's a long way to say, put some energy into learning Rust sure, but don't beat yourself up about it. It's not a general purpose language like Go or C#. It's a dream for performance critical algorithms.

Re:Perseus – NextJS alternative in Rust by mr90210 on Sunday April 09, 2023 @12:50PM (#35504372)
If you feel like that maybe you ought to learn it on your spare time, and then make up your mind whether you should or should not keep investing on it.