Live data from Hacker News

.NET for Beginners (2020)

dusted.codes

131–140 of 192 posts

Re: .NET for Beginners (2020)

#131

This goes on critiquing how C# has a high barrier to entry because you have to learn [insert long list of popular C# frameworks]. But no, you don't have to learn any of those things, you can just start learning C#. Then: "Just think about the upcoming release of .NET 5 and how it will invalidate most of the lessons taught just a few months ago .... the wider .NET community has failed in making .NET a more beginner fr…

Okay, where do you start in Learning C#? What do I have to install? What should I install? Even those are complex questions with a few answers. I started with C# two decades ago with the command line compiler and a very large book. There was really only a single option, and since I didn't have MSDN access, no beta VS for me. Today, I would suggest that a developer start with .Net 5 and VS Code, with the extension ins…

Books. I don’t understand this recent move to videos/blog posts. They are pretty much terrible as a base for a new language/platform, and often say incorrect informations.

A not too old (~2-3 years) book on the topic will explain everything in an easy to digest way, and it is much more likely that the author actually knows what he/she talks about.

Re: .NET for Beginners (2020)

#132

I can not agree more with this post. After being a C# developer for 5 years, I can not think of a worst language to learn that C#. The ecosystem is dead just check the latest startups from YC, how many are using C#? How many startups nowadays are using C#? Currently there are better options than C# or .NET. You want simplicity, you have Go. You can create an API server so simple and easy to understand. You want a ful…

How is Go easy? It is a much less expressive language than Java or C# and is more verbose. It’s C with GC and good concurrency.

I never understood the hype around it.

Re: .NET for Beginners (2020)

#133
post #71

Earlier quoted context omitted.

I'm currently trying to write a windows app and coming from web development (Python/Django and React) it is bewildering. Part of the problem is with web development, complicated as it is, the tutorials at least get you to a complete, working example. The windows tutorials seem to be very piecemeal where you start with a mostly complete app and fill in a couple things, but never get the whole picture. And like in your…

> Are one or more of them about to be deprecated? All of them are. Not officially , of course, but practically speaking all of them are dead-ends. MAUI is the "new hotness", which means that it'll only become obvious that it is also a dead end in about a year and a half. I wish I was joking.

> MAUI is the "new hotness"

Wait, I thought that Blazor Desktop was the "new hotness" this week?

Re: .NET for Beginners (2020)

#134
post #54

I didn't read the whole article, just scanned it. But I'm surprised he chose Golang as a low-cognition entry barrier language. As a developer on Windows (relevant since we're talking about .NET), setting up Go was a pain in the ass. Making sure that my PATH variables were set up correctly and all that jazz, and then I'd run into issue after issue with packages and paths. I don't know what it is about golang, but man,…

>Making sure that my PATH variables were set up correctly Honestly, what's so technical about adding: export PATH=/usr/local/go/bin:$PATH ... to your ~/.bashrc ? Beyond that there's nothing more required other than, per project: mkdir myapp && cd myapp && go mod init myapp Maybe you're thinking of setup prior to the introduction of Go modules?

I’m sure it will run well on Windows, as the poster asked..

Re: .NET for Beginners (2020)

#135

Earlier quoted context omitted.

I jumped into .NET w/o any background while running Linux - it's not a pleasant experience when you lack the heavy Windows+VS background you've had. Perhaps Jetbrains Rider is better, but at this point you know all the ins and outs of the platforms - a beginner lack that.

The experience of picking up a new IDE, language, framework, flow, etc, is no different regardless of it being .NET or anything else. There's a learning curve. My point is not that experience is easy or hard, just that when comparing the two side by side, the experience of being a .NET developer on linux is good, and I would argue with jetbrains rider, is better than being on Windows with Visual Studio.

Sorry, I don't buy it - tried it for 4 years and that's just not the case. It was stumbling block to be on Linux and without Visual Studio with every tutorial or instructions. I think you have it easy since you know the ecosystem so well - and coming over from Windows, you know what alternatives to look for.

For me, even simple things like getting C# aliases working was a pain. I would not recommend a Linux developer to be picking up C# to do cross-platform development anytime soon. The only nice benefit I've seen is the amount of batteries included with .NET - but that's a solvable problem in other languages.

Re: .NET for Beginners (2020)

#136
post #128

Earlier quoted context omitted.

Because winforms is an incredibly easy and solid technology. It's a joy to work with.

CPU rendering should not be a thing in 2021

When WPF was first released, toy applications would make both my CPU and GPU fan spin up to gas turbine levels.

Now only WPF applications that try to show more than a dozen controls at a time make the GPU fan spin up, a huge improvement. I suppose this explains the new "flat" style with huge amounts of white space. It's not about elegance, or style -- it's the only way to keep fan speeds tolerable.

Re: .NET for Beginners (2020)

#137
post #90

Earlier quoted context omitted.

> Are one or more of them about to be deprecated? All of them are. Not officially , of course, but practically speaking all of them are dead-ends. MAUI is the "new hotness", which means that it'll only become obvious that it is also a dead end in about a year and a half. I wish I was joking.

At least until last year, I think the community used mostly winforms if it is for Windows operating system. MS is not too happy about that.

Winforms is easy to use and understand, everything is pretty much there and I can get started with no issues. WPF,on the other hand,is a clusterfuck, not even sure who managed to come up with it.

Re: .NET for Beginners (2020)

#138
post #14

I didn't read the whole article, just scanned it. But I'm surprised he chose Golang as a low-cognition entry barrier language. As a developer on Windows (relevant since we're talking about .NET), setting up Go was a pain in the ass. Making sure that my PATH variables were set up correctly and all that jazz, and then I'd run into issue after issue with packages and paths. I don't know what it is about golang, but man,…

Same here. Package management was non existent at the time, not sure how it is now. There are pointers without pointer arithmetic, I really don't know why they are there. If you already know programming you will be fine with go, but if it's the first language someone learns I think they'll go catatonic when they are exposed to real pointers, dealing with shared memory, package management, generics, etc. because its g…

> There are pointers without pointer arithmetic, I really don't know why they are there.

Because you need some way to distinguish between having a sequence of bytes in the middle of another sequence of bytes and having the former sequence of bytes somewhere else, at least in languages that allows both for any data type. For example, Java doesn't suffer from this since everything is pointers implicitly. And C# doesn't either because every type belongs to one of two kinds, the first kind corresponding to the former of the two cases above and the second kind corresponding to the latter. But Go doesn't have this luxury (intentionally, for the same reason as C does it).

Re: .NET for Beginners (2020)

#139
post #89

.NET definitely has a messy past but someone arriving today probably has the easiest time ever getting started because so much has changed to become a single streamlined product. All these opinions are weighed down by the very history that beginners don't have. The expansive standard library, web/desktop/mobile/gaming output, Visual Studio (Code) IDEs, fantastic in-depth guides and documentation [1], dev evangelists…

Gave it a serious go but it still lives inside the Windows + Visual Studio bubble. Trying to use .NET on Linux with Visual Studio Code is pain: .NET developers expect you to learn APIs through intellisense and don't publish API docs, Windows tutorials assume you're running Visual Studio, and a lot of MS's own API docs are bewildering with .NET jargon that you won't understand.

For a typed language completion like Intellisense is a very important tool for any developer. There is limited completion support available in VS Code. If you want a proper IDE for .NET on Linux, try out JetBrains Rider. It is not free, but great.

I don't understand what you dislike about the API documentation Microsoft provides with .NET, it's not always perfect, but I would say it has nearly 100% coverage: https://docs.microsoft.com/en-us/dotnet/api/

And because .NET used to be Windows only there are a lot of Windows tutorials. But you can anyway skip them, as they mostly describe the old .NET 4.x. Find newer .NET Core tutorials. Even if they provide you screenshots of Visual Studio on Windows, you can do all of it with any text editor. Some scaffolding you maybe need to do on the command line.

Re: .NET for Beginners (2020)

#140
post #88

Earlier quoted context omitted.

What was the error? Also like the others say, F# on dotnet is like Groovy for the JVM. It's nowhere near the popularity. Any reason you didn't try C# instead?

It seems like you understand the story for both of them. Any reason why F# is not a valid starting point language on Mac?

It's valid, just clunky to get going the first time. F# dev team is only ~7 people at MS, the rest is community supported projects and github issues. So while F# devs measure in the 10,000s, C# devs measure in the 100,000s
Post reply on HN