Learnt C# in school for about two years, then once I went to University they taught us Java. The entire time I was looking at the syntax for Java and going "This was so much easier in C#"
I had a database integration course that let you choose between Java and C#, I chose C# for every lab and was out of there in a third of the allotted time
Same. I love C#. Only language I’ve enjoyed. JS, HTML, CSS, and Python all are annoying, and C++ syntax is weird to me. C# is so good, even though I only started using it in March of 2022.
@@razzledev I like the C family honestly, especially C and C#. C# was the language I started with, and C I've been learning in my electronics course. I really enjoy C#, it's fun and very useful for a variety of different programs!
As someone who has used c# for more than a decade now I'll say it has its pain points and it can be very verbose but it's still my goto as I've used it for so long.
I've tried C# before for making games with Unity, and i didn't liked. I don't hate C#, i just don't like languages like C# or Java that forces you to write OOP code.
The C# ecosystem is gargantuan. People wrongly believe it is Microsoft-owned propietary software for Windows only. On the other hand, it is entirely X-Plat and Microsoft engaages its entire OS community and updates the langauge regularly with correct, robust, and very powerful features and frameworks.
@@segsfault I would say that it is just like java but with barely any cross platform support, it's basically a windows language as mono is not so great while making a native project imo
I love C# because it is easy, powerful and has a huge ecosystem, meaning you can do everything you want in it. There are even parser libraries (ANTLR being a notable example) and OS Frameworks (I think it’s called Cosmos)
I got into programming by making mods for Minecraft back in the day, so going from Java -> C# was relatively painless. As I dug deeper I found so many little things that I loved about C# that I never knew I was missing in Java. Operator overloading, out variables, delegates, and ref keyword are ones that I've found very useful. I'm sure there's tons more buried in the ecosystem that I'm yet to discover but overall I find it fantastic. I'm not a professional in any capacity and so I'm still wrapping my head around lower level programming concepts, which has made learning Rust for instance a pretty long slog. C# to me is that perfect mix of power and ease of use.
This comment is almost exactly how it went for me too. Started with Minecraft Server plugins, then was "forced" to learn C# for school and started absolutely loving it.
Time is going forward, your skill and understanding is growing up. Nobody knows what features of other languages you gonna find usefull and easy in future.
Wow amazing guys. I’m learn C# with such an hard thing to understand right now. I some times get frustrated but I’ll keep trying to get it. I’m just a beginner, I’ve learning for almost 1 month.
C# Is just much better compared to java. They have done extensive work over the past few years not only making the language itself more expressive, but also making the runtime much faster. I love it!
I love both but I got to disagree, Java in my opinion still takes in most cases, It has way more frameworks and libraries and generally bigger community, And the logic of the compiler is way better in inheritance (override, non-modifiers fields, final, interfaces). AND the most important thing THE BEST DOCUMENTATION OF ANY LANGUAGE EVER
@Ahmed El Ashry if you think java running through the JVM is anywhere close to the same speed as bite compiled code, you should look again. And why so hostile? You sound like a joy to work with.
@Ahmed El Ashry About 10 years professionally - 18 total. Excluding some corner cases, c# is anywhere from 33% to 300% faster. And I'm basing this off benchmarks that don't include the Performance gains from the past three years. C# has gotten much faster as of late.
I've been gunning at C# for the past 8 years and its my main language. You can into some issues (without realizing) that I thought were very interesting that I havne't seen before and took an approach to some of your code that reminded me of myself back in the day. I had a good laugh watcing this one!
I've been using C# as my primary programming language for the past year and is for sure the language I know the most, I love it; I can do everything I want with it and the language keeps getting faster and faster with every new update + I personally find the C# syntax and coding conventions to be the best of all languages.
Yeah C# is really amazing and easy, i learned it as my first language years ago and still use it to this day for most of my projects. You can create projects really easily and quickly its unreal!
I nearly passed out when I saw dynamic. If a type is dynamic, the compiler doesn't care what you do to it. So you can write absolute jibberish that means nothing and shouldn't compile, but it will compile anyway. If you are unsure about the type that gets returned, or you don't care for specifically specifying the type, use the var keyword
dynamic is runtime, the errors will be caught at runtime, not so great in my opinion, however var assigns datatype at compile time. Dynamic is assigned at runtime.
@Fernando Figueredo agree 100%. It is not a Java clone and was never meant to be. ALL languages borrow from and are influenced by other languages. Literally all of them. But then a language will expand, add it's own features and make it's own path into the development community. I find that the only people saying language X is a clone of language Y are the people who either don't know X or Y or simply don't understand how a language is developed. To say that C# is a clone of Java is to admit you either don't know C# or haven't followed it's development for at least the past 15 years now. Even with C# 2.0 back in '04 (or '05), C# was showing signs of coming into it's own.
@Fernando Figueredo Yeah, when c# had generics(and lambda later), java fanboys are arguing whether to copy those from c#. and java's got a fake Object generic, which is totally useless.
My main programming language is C++ but I also have used Java for a few years and always when using C# it feels like heaven. Like fr the languages syntax feels so good everytime I use it I feel like I fluently speak C# if you know what I mean because I have a scope and everything I expect from the language it does exactly like I expect it.
Been learning C# since March of 2022. I love it. It’s so intuitive, powerful, and has great syntax. I’ve tried a few other languages and nothing beats C# for me. My most recent app is where I really got more of the C# syntax and dug deeper into it, and I enjoy programming with it every time.
I was a long time java dev and the switch to c# for a lot of my projects made me realize how many problems java has that I just lived with. Operator overloads are so amazing!
Another thing about C# that made me like it a lot are properties, which are really concise ways of creating variables for objects. It's kind of like a 1 line setter and getter that is very flexible
I just watched this video and was about to comment about properties and then realized i already watched this video and already commented about properties💀
I've just started my first dev job at a company that use C# a lot! I really like the way creating APIs works compared to what I was doing with JS in my own time and I really like Xunit - the C# testing library, but my gripe would be the quirkiness of VS and the build times on large projects.
I literally only know C# because with what I do I’ve never really needed to learn another language lmao, would be nice to know JavaScript and C++ though
For JSON you can use System.Text.Json instead of using a library. Parsing is done using JsonSerializer.Deserialize(" ... json here ... ") and serialization is done using JsonSerializer.Serialize(obj). You need to replace T with a class or a struct that follows the JSON schema (if you define an object make sure you use properties instead of fields with public setters and getters). You can rename properties using the "[JsonPropertyName]" attribute, or pass options as a second argument to Deserialize or Serialize for a different naming convention. If you don't want to define a custom type for objects you can use IDictionary or Dictionary. You can parse arrays as IEnumerable, List or T[].
That opening slide has me cracking up hahahahah. Subbed for that. I'm learning now. We were started off (at bootcamp) with DSA in python, which was cool, but of course we didn't learn all of python - I'm not the code 5 hrs everyday type. Now it's JS which is its own beast. First order functions caught me by surprise. Callback everything, and leaning to try and get comfortable with stuff whose inner working I know very little about - passing req and response to app.get() in express, for example. Have I checked the documentation? Of course not. Loads of work for me to do, and I've been a lazy and thus inept programmer thus far, and perhaps the grass will always be greener, but I'd much rather be learning a "real" language - ie, C# or Java, so C#.
they are really not comparable, ive used rust at work but can't reccomend for any medium-big project, the ecosystem is too young and a lot of things are missing, too bad, i'm waiting for it
@@sharkpyro93 I agree, they are different in their targets and the Rust eco system is young. I disagree that it isn't good for larger projects as I am currently writing an operating system and a game in it and like I said, loving it
@@EBookCo sure but for anything that you could just use a garbage collected language, you really should use one of that, my last experience was at work i made a very high performant web api and it was a miserable experience, took 2 months, lack of documentation that goes beyond a basic hello world example, immature ecosystem, impossible to find any answer on stackoverflow, don't get me started on db orms...all this made me switch to go and i rewrote the whole thing in 2 weeks (with tests included) with no prior experience in go, and the performance were on par with the rust version, its really not a solution for everything
love c#, maybe the fact that it was the first programming language i learned has something to do with that, but nothing i've tried afterwards comes close in terms of flexibility, organization and overall being so nice.
C# has a lot of powerful features that help it leave a fantastic first impression (like LINQ, null-coalescing/-conditional operator, optional method parameters, 'out'-parameters, object/collection initializers, the 'yield'-keyword, generic type constraints. I unconditionally love all of these) But with great power comes great responsibility. Operator overloading, partial classes and extension methods have very valid uses, but also allow you to craft horrendous nightmares no one should be subjected to. Consequently I have "regressed" back to using Java wherever I can. As they say, from constraints emerges creativity.
the one feature I miss so much when I go back to java is every variable having a built in getter and setter that you override when needed. I wish I could have all the time I've spent writing .get and .set methods in java back lol
@@woofcaptain8212 really? I'm not sure about other IDEs, but in IntelliJ I just do alt+insert -> generate getters/setters -> select fields -> done. Alternatively there is "Project Lombok" which generates getters/setters based on annotations during compilation - which reduces the amount of *visible* boiler-plate code. (I'm not a fan of it personally, but some people clearly are interested in it)
wow nice timing! i just started using c# a week ago and i made similar experiences. right now i am trying to build a backed for my react app using c#. just a fun project to see how well the language does :)
One thing I hate about C# is that you cannot deep copy your objects. You end up making functions that copy the individual attributes of your class, or having to get into memory copying which is quite a tangent. It is such an important tool, made me look to other languages for bigger projects.
it can be done in 3 ways : 1 manual (tedious indeed, but performant) 2 binary serialization (less tedious, less performant) 3 reflection, less work but least performant.
I love C#, it just feels so right. I've been using it on/off for about 2-3 years now, since that's the language the Unity game engine uses. I've fiddled with some Python, but it just didn't feel the same
Not really, unity uses mono / .NET framework which is a separate beast from .NET core / .NET 5+, it might share the same language version up to a point, but that's about it.
@@KieranDevvs It's still C#. Unity itself uses C++ under the hood, but the language used for making your player move etc is just C#. Doesn't matter how it's compiled or how the garbage is collected.
@@Hietakissa No really its not... The BCL is what makes people like the language, the BCL wildly differs from framework to core. .NET framework sucks, core is a god send. Just because the language syntactically looks the same, doesn't mean you have the latest C# features and it doesnt mean its the same experience. I mean look at the nuget package references on framework, it's so bad. Maybe you don't know the grass is greener on the other side if you've never used .NET outside of unity.
@@KieranDevvs I've made some simple console applications and the experience was the exact same, Unity uses C#8, so it's not missing many features on that front
I like C#. Made an app with it, and a few projects and libraries. It's quite easy and intuitive, while still having many features and decent performance. And it gets better and better with each new version.
C# has nullable reference types. There is also a System.Text.Json namespace with the new Json parser and stuff. In the upcoming version of C# working with Json in string literals will be a lot easier!
Its great working with C#, its a good language, I think for smaller programs a small file structure would be good I guess its implemented in 6.0, but needs better work with JSON files, Command shell, sensors and bluetooth devices.
@@epsi I'm on Windows 11 myself, taskbar can be moved back to it's proper position and most other crappy stuff can be fixed by changing registries or 3rd party software.
I started programming in c#, made some good projects in it (one thats consistently used in a community now) and it was a very good experience. Now though, ive started using rust and im loving it. I dont think im going back to c# in a while. I havent used any other low level languages like C and C++ but it seems like rust is by far the best option in that space now, especially if youre not too used to c++ idioms. Rust even often feels generally easier to use than even though its just zero cost abstractions unlike c# lol. I'd highly recommend trying rust. its been the most loved programming language for many years in a row for a reason.
@@thisisnotok2100 its for tool assisted speedruns. It automatically generates near perfect inputs for playing a certain game mechanic as fast as possible, with pretty easy setup
i've used it at work but it was a miserable experience, we needed a high performant web api, i used actix web and diesel, took 2 months because i was also learning in the process, then switched to go with no prior experience in go and rebuilt the whole thing in 2 weeks with test coverage with similar performance, the ecosystem is immature, most libraries are unmantained for years, or the complete lack of documentation that goes beyond an hello word example, it was so messy and full of boilerplate that made me miss java, and you know its a problem when you miss java you know the shit is real
@@sharkpyro93 I know rust is more of a commitment, has some unique ideas and isnt good if you dont properly learn it before going into actual projects, but that sounds like the worst honest experience ive ever heard of rust.
@@theroboman727 the code itself was just right, just the language itself that requires alot of boilerplate with its crazy syntax at times that is hard to look at, hundreds and hundreds of loc for a stupic jwt middleware, or for example i also don't really understand how a really poor documented library as diesel is considered the "go to" library for db interaction: it lacks async, the documentation is basically nonexistent and not clear, it has obscure errors with like 35 line of the same error in the console stack trace that i solved after hours just by guessing, if you have any problem or need an example for a basic usage like getting nested related structs from a query, good luck, basically zero result on google, and god forbid if you need help with a super niche error case... also the testing is something that the rust community really dislike, every time someone come with testing in a discussion it gets downvoted to the oblivion because "rust does not need testing, its a perfect language with safety" or "not everything needs to be tested", to me this just shows that most rustaceans use rust just for small projects or hobby projects, i was sold in the beginning but after this ijust use it for high performance agents or for one off script
About async: Any method can be set to an async method. Any code inside of it that supports the awaiter class can be used. Like the File.CopyAsync method can be inside of a “private async void SomeMethod()” it’s really great when doing file copy operations that may take time, instead of doing it the old finished way with a “Thread.Sleep”.
C# was the first language that made me fall in love with programming. I started 2 years ago and have never stopped using it since! I personally derive a lot of enjoyment through making my code clean and I think the language allows you to do so quite easily.
@@theairaccumulator7144 I feel like that is something you could probably say about java/kotlin but yeah I absolutely agree. I cannot handle doing web frontend because of javascript. I don't know if it also goes the other way around though.
The way C# introduced async/await and Tasks is also great, it’s such a pleasant and easy experience to get Asynchronous code to work. It’s basically just as easyto write asynchronous code and it is to write synchronous code, which can’t be said for all languages
@@lou6916 not "tap tap" it's "Tab Tab(double Tab, like double mouse click)", cw is a snippet in Visual Studio for Console.WriteLine(), Tab autocompletes your input and double Tab executes snippet. Same thing with ctor, it's a snippet for constructor.
Exactly the same. I agree Js is Shit. But Python? shouldn't it be the language that should be breaking the market with AI stuffs? I'm a C# developer BTW
I got into C# when I inherited a .NET project. I had experience with TypeScript, and it made it super easy to learn C#. The syntax is really close to TypeScript!
Except not, u don't have to use such names if u don't want to, it's up to your team to make proper architecture using comfy naming conventions. I literally never been using such long names and I'm working on projects with millions of lines of code.
@@_dyats oh okay, then I didn't understand u correctly. Yes, you are right, there are quite a lot of keywords compared with some other languages, but in my own experience and opinion, there is no more than what we need and an IDE writes most of them for me. Just for the example u gave, visibility (optional) quite important, async (optional) yea could be some heuristic to determine it but yea, Task - return type I definitely want to have it there, name of method - no comment, parameters - who ever said u got to have billion of them, there are only as many as u put.
Going from dynamic typed/Multi Paradigm in Python to C# was a bit to wrap my head around. Once the object oriented concepts sunk in though, things started to flow really easily. There is still a ton of functionality I have yet to learn, but I really do like the language. Fast, efficient, and able to target multiple platforms. The GUI framework selection is pretty lacking for the Linux side of things, but other than that I have no complaints I have found yet.
java dev here, C# is perfect for packaging my java programs into exe files so I recommend learning even the slightest bit of C# even if you already code in another language.
C# is my main language and it's awesome to see new people joining the community!! Welcome! I tried sending a couple of helpful hints, but it seems like TH-cam didn't like it (they were all very positive, so I'm not sure why, sorry!).
You may enjoy working with the .NET 5 default projects a bit better, especially for smaller projects - they allow you to use global scope, so you can ignore things like namespace and the main class. Obviously, a preference thing.
hi, i'm completely new to programming but have a project in mind for which i might need to learn C#, do you recommend starting with it or going for an "easier" and more used language like python to get the basics?
@@gerardonavarro3400 I wouldn't say python is necessarily more "used", it just depends on your use case. If you're looking for a single project, I'd try to research what language is common for the type of project you want to make. C# is a great all-around language though - it does web, desktop, mobile, IoT, gaming, console apps, background aps, cloud-hosted apps, etc., so it really does do most things any other language will do for you. That doesn't necessarily mean it's the best for your scenario though. Would you mind sharing a bit more info about the project? I might be able to nudge you in the right direction.
I find it interesting how you can see the js "accent" in your c# code. When I write c# i probably have a java accent. Ps : don't use dynamic. It's terribly slow. Even slower then python.
python in and of itself isn't a slow language but it is slowed down significantly by imported packages especially if those aren't installed and you're using a web-based IDE like replit. Also, unlike languages such as C# and C++, python is an INTERPRETIVE language, not a COMPILED language which means its simple, efficient, but slow. im not saying other languages are inefficient though, as python obviously can get the job done just like any other language
"I don't really know how async works" After more discussions than I can count on my hand about async/await in my 10 years of C# professional programming experience neither do I man. Neither do I.
@@davydorynbaev I develop in several languages. Is not that I'm a Python fan boy. It is simply an stupid criticism. You can say Python is slow, you can say it is not good for concurrency... But what he said is simply absurd and meaningless. What does he mean when he says he cannot do stuff? They did Instagram eg.
Hahaha i used brocodes tutorial as well and managed to finish my 1st ever project fully, a small game in unity. For the first time i felt competent, thanks brocode
you should try rust its a lot of fun :) its got a steep learning curve, but genuinely once you get the hang of it, its really not that hard and has a load of features that make it way easier to bug fix and develop than c++ (even though the concepts are more difficult to begin with)
but muh 5 page compiler error messages that contain no useful information but are technically right and muh segmentation fault when i do an "off by one" mistake (honestly fuck C++)
C# was the first language I learned thanks to high school, been programming for over 6 years now and tried all sorts of other languages (C, Haskell, Python, JS, TS, Java, ...), none of them are as versatile and also nice to use as C#. You wanna work with high abstractions? C# You wanna work low level with native libraries, pointers and structs? C# Need performance? C# Wanna make games? C# Wanna write a web server with an API? C# Wanna make a native UI app? C# It can do pretty much all of it and even AOT compile. Anyone who prefers Java over C# has a stockholm syndrome
C# is great! You can do anything from web apps, to mobile apps, to videogames and now even IA. It is being updated regularly and since it is made by one of the biggest software companies in the world you can guarantee it is not going to die anytime soon.
Few things to note. You could have used dotnet 6.0 framework to get a much easier learning curve. As it does not require the whole main function logic, and also simplifies a fair bit of syntax. As for handling JSON... Yeah the documentation is weak.. :( it relies on you knowing how to use attributes on properties. When you know that it becomes simple, just stick [JSON object("its name in the JSON file")] above the attribute and it will map to the field or slap [JSON constructor] onto the class constructor of an object to parse JSON if you also need to transform incoming data.
im a hobbyist c# programmer and msot of the stuff you went through in thsi vid i had no idea about xD as in stuff like header file and what you wanted the console app to do xD understood the actual coding tho (for the most part)
C# was the first language i learnt (actually, taught myself), and over the years I have come to love it. The .Net framework (and now .Net Core) provides a brilliant feature set that 'just works' (unlike some languages..... java). The latest versions of the C# language (C# 10) (actually, >c#9) have some really great operators for arrays that let you do ranges and indexing like you would in python (try doing that in java in a single line of code). C# also has the incredibly useful (and incredibly dangerous) 'dynamic' keyword as well as allowing unsafe code, this has been so useful for me when working with generic programming, once again another thing you cant do in C#s main rival, java. I will note however, C# does lack in one area, and that is cross platform UI support, yes there are very powerful frameworks out there, and for 99% of cross platform use cases, they are perfect, UNLESS you need 3D... in which case, just give up, there is no mature, easy to use cross platform way to do 3D views with say, openGL in C#, not yet anyway, i believe .Net MAUI is going to solve this, but for now you have to bodge solutions with skia and other stuff that doesnt work properly. This has been a huge limiting factor for me in a recent project, so much so i just went and learnt the Qt framework, and kind of decided C++ is basically as good as C# if you know what you are doing (and lets you be more 'creative' with your memory management and unsafe code).
openTK is an openGL implementation in C# (among openCL and openAL). It is cross platform, and overall extremely great. I would definitely recommend trying it.
Using C# all the way till now. Once Java programmer said it will take 2 weeks to get same functionality of 2 days C# written page/ menu, so, why should I change? Hehe. Psssttt I am just lazy to learn honestly.
Quick question, but what do you mean by “python can’t do anything”. I get it is not for performance intensive tasks but this is the first time I have heard someone say python is limited.
even with the performance intensive tasks i do not fully agree. A good written Code can be faster as bad written C Code*. + you can cheat with Modules like Cython ;) In the end to really write good Code you need to understand your Hardware completly and what is happening behinde. *obv. a well written C Code will out perform Python heavily
@@meerpirat3418 yeah I’m just interested in what it is that he believes python can’t do, because as far as I know it can do most things maybe not the best in every scenario but it can do most things decently. So I’m curious.
Learnt C# in school for about two years, then once I went to University they taught us Java. The entire time I was looking at the syntax for Java and going "This was so much easier in C#"
Java is famous for huge boilerplate code.
I had a database integration course that let you choose between Java and C#, I chose C# for every lab and was out of there in a third of the allotted time
How? I love both, but C# is so much cleaner than Java.
@@caporaldxl835 That's what they're saying. :^)
@@Dxpress_ lol, I reread that sentence three times before I commented and I still misunderstood it xD
I have been a C# developer since 2015ish and I find myself continually coming back to the language. Such a joy to program in, in my opinion.
absolutely
Same. I love C#. Only language I’ve enjoyed. JS, HTML, CSS, and Python all are annoying, and C++ syntax is weird to me. C# is so good, even though I only started using it in March of 2022.
@@razzledev same
@@razzledev I like the C family honestly, especially C and C#.
C# was the language I started with, and C I've been learning in my electronics course. I really enjoy C#, it's fun and very useful for a variety of different programs!
i like C# and C++ and C and rust
everyone hates C# until they try it and realise it’s really good
fax
As someone who has used c# for more than a decade now I'll say it has its pain points and it can be very verbose but it's still my goto as I've used it for so long.
... until you realize that C#-IDEs are slow as dogshit
I've tried C# before for making games with Unity, and i didn't liked. I don't hate C#, i just don't like languages like C# or Java that forces you to write OOP code.
OOP is never good.
The C# ecosystem is gargantuan. People wrongly believe it is Microsoft-owned propietary software for Windows only. On the other hand, it is entirely X-Plat and Microsoft engaages its entire OS community and updates the langauge regularly with correct, robust, and very powerful features and frameworks.
@@segsfault I’ll pass
@@segsfault its literally the other way, C# is Java but good
@@segsfault I would say that it is just like java but with barely any cross platform support, it's basically a windows language as mono is not so great while making a native project imo
@@idkidk9204 it's fully crossplatform tho?
@@idkidk9204 it’s fully cross platform.
I love C# because it is easy, powerful and has a huge ecosystem, meaning you can do everything you want in it. There are even parser libraries (ANTLR being a notable example) and OS Frameworks (I think it’s called Cosmos)
it's one of the best designed languages out there. A minor gripe of mine is that data oriented design is awkward with it.
I don't know if it's just me but I've had problems learning it.
@@swoxplr Did you use Visual Studio or just a standalone ide?
@@swoxplr what problem? im curious
@@askeladden450 Lol. It's java, only for windows. Hf writing java with a slower runtime and a more limited usecase.
I only discovered your channel a couple of days ago but I've really enjoyed binge watching all of your videos! Keep up the good work, mate!
Thank you!
I got into programming by making mods for Minecraft back in the day, so going from Java -> C# was relatively painless. As I dug deeper I found so many little things that I loved about C# that I never knew I was missing in Java. Operator overloading, out variables, delegates, and ref keyword are ones that I've found very useful. I'm sure there's tons more buried in the ecosystem that I'm yet to discover but overall I find it fantastic. I'm not a professional in any capacity and so I'm still wrapping my head around lower level programming concepts, which has made learning Rust for instance a pretty long slog. C# to me is that perfect mix of power and ease of use.
Pointers are also very useful in weird edge cases too.
@@mihailmojsoski4202 I C what u mean
This comment is almost exactly how it went for me too. Started with Minecraft Server plugins, then was "forced" to learn C# for school and started absolutely loving it.
Time is going forward, your skill and understanding is growing up. Nobody knows what features of other languages you gonna find usefull and easy in future.
Wow amazing guys. I’m learn C# with such an hard thing to understand right now. I some times get frustrated but I’ll keep trying to get it. I’m just a beginner, I’ve learning for almost 1 month.
C# is just lovely, everything is so intuitive and organized
C# Is just much better compared to java. They have done extensive work over the past few years not only making the language itself more expressive, but also making the runtime much faster. I love it!
That's one of the biggest differences, c# is MUCH faster than java.
Wasn't that only after they made .Net Core open source, just like java used to be? ;)
I love both but I got to disagree, Java in my opinion still takes in most cases, It has way more frameworks and libraries and generally bigger community, And the logic of the compiler is way better in inheritance (override, non-modifiers fields, final, interfaces).
AND the most important thing THE BEST DOCUMENTATION OF ANY LANGUAGE EVER
@Ahmed El Ashry if you think java running through the JVM is anywhere close to the same speed as bite compiled code, you should look again. And why so hostile? You sound like a joy to work with.
@Ahmed El Ashry About 10 years professionally - 18 total. Excluding some corner cases, c# is anywhere from 33% to 300% faster. And I'm basing this off benchmarks that don't include the Performance gains from the past three years. C# has gotten much faster as of late.
As someone who has used Java, C# was like Java but without the pain and suffering.
C# is the best programming language ever created.
I've been gunning at C# for the past 8 years and its my main language. You can into some issues (without realizing) that I thought were very interesting that I havne't seen before and took an approach to some of your code that reminded me of myself back in the day. I had a good laugh watcing this one!
I always love seeing people getting introduced to C#. It's so great.
I've been using C# as my primary programming language for the past year and is for sure the language I know the most, I love it; I can do everything I want with it and the language keeps getting faster and faster with every new update + I personally find the C# syntax and coding conventions to be the best of all languages.
Yeah C# is really amazing and easy, i learned it as my first language years ago and still use it to this day for most of my projects. You can create projects really easily and quickly its unreal!
I nearly passed out when I saw dynamic.
If a type is dynamic, the compiler doesn't care what you do to it. So you can write absolute jibberish that means nothing and shouldn't compile, but it will compile anyway.
If you are unsure about the type that gets returned, or you don't care for specifically specifying the type, use the var keyword
rider bugs you to use var in method bodies
dynamic is runtime, the errors will be caught at runtime, not so great in my opinion, however var assigns datatype at compile time. Dynamic is assigned at runtime.
C# is quite nice. From what I know it was designed to basically be a better version of Java with more extensive frameworks and operated by microsoft.
imo it's an aweful copy of a bad language.
@@thegrandnil764 I personally wouldn't call it an awful copy but it's not my first choice for languages. Also I'm far from a Java fan
It wasnt even made to be better. Microsoft just wanted to use Java, but they werent allowed some use of it that I forgot.
@Fernando Figueredo agree 100%. It is not a Java clone and was never meant to be. ALL languages borrow from and are influenced by other languages. Literally all of them. But then a language will expand, add it's own features and make it's own path into the development community. I find that the only people saying language X is a clone of language Y are the people who either don't know X or Y or simply don't understand how a language is developed. To say that C# is a clone of Java is to admit you either don't know C# or haven't followed it's development for at least the past 15 years now. Even with C# 2.0 back in '04 (or '05), C# was showing signs of coming into it's own.
@Fernando Figueredo Yeah, when c# had generics(and lambda later), java fanboys are arguing whether to copy those from c#. and java's got a fake Object generic, which is totally useless.
My main programming language is C++ but I also have used Java for a few years and always when using C# it feels like heaven. Like fr the languages syntax feels so good everytime I use it I feel like I fluently speak C# if you know what I mean because I have a scope and everything I expect from the language it does exactly like I expect it.
I personally have been using C# for around a year and i love it. You can make a lot with it and it's quite easy.
Shoutout to anyone that started coding with BASIC, Visual Basic 6, or Delphi. You will all be remembered!
I started with 'DarkBasic', very strange language based on basic for making games.
@@astrahcat1212 I remember that language and engine very well! Good times.
Been learning C# since March of 2022. I love it. It’s so intuitive, powerful, and has great syntax. I’ve tried a few other languages and nothing beats C# for me. My most recent app is where I really got more of the C# syntax and dug deeper into it, and I enjoy programming with it every time.
I was a long time java dev and the switch to c# for a lot of my projects made me realize how many problems java has that I just lived with. Operator overloads are so amazing!
Another thing about C# that made me like it a lot are properties, which are really concise ways of creating variables for objects. It's kind of like a 1 line setter and getter that is very flexible
I just watched this video and was about to comment about properties and then realized i already watched this video and already commented about properties💀
I remember when I switched from Python to C#, I instantly loved it way more. Then I switched to C++ and honestly, very good decision
I've just started my first dev job at a company that use C# a lot! I really like the way creating APIs works compared to what I was doing with JS in my own time and I really like Xunit - the C# testing library, but my gripe would be the quirkiness of VS and the build times on large projects.
C# cured my Java fatigue, if there's such a thing. Really enjoying learning C#.
I primarily code in C# (yes worked on other languages as well) and C# is the sexiest language of all
I literally only know C# because with what I do I’ve never really needed to learn another language lmao, would be nice to know JavaScript and C++ though
For JSON you can use System.Text.Json instead of using a library.
Parsing is done using JsonSerializer.Deserialize(" ... json here ... ") and serialization is done using JsonSerializer.Serialize(obj).
You need to replace T with a class or a struct that follows the JSON schema (if you define an object make sure you use properties instead of fields with public setters and getters).
You can rename properties using the "[JsonPropertyName]" attribute, or pass options as a second argument to Deserialize or Serialize for a different naming convention.
If you don't want to define a custom type for objects you can use IDictionary or Dictionary.
You can parse arrays as IEnumerable, List or T[].
Really enjoy C# and would honestly suggest it as a first language while learning basic Comp Sci concepts
It’s exactly the same experience to Java for comp sci.
That opening slide has me cracking up hahahahah. Subbed for that. I'm learning now. We were started off (at bootcamp) with DSA in python, which was cool, but of course we didn't learn all of python - I'm not the code 5 hrs everyday type. Now it's JS which is its own beast. First order functions caught me by surprise. Callback everything, and leaning to try and get comfortable with stuff whose inner working I know very little about - passing req and response to app.get() in express, for example. Have I checked the documentation? Of course not. Loads of work for me to do, and I've been a lazy and thus inept programmer thus far, and perhaps the grass will always be greener, but I'd much rather be learning a "real" language - ie, C# or Java, so C#.
0:14 It's the other way around. It's TypeScript that is a lot like C# as TS is derived from C# and created by the same guy too, Anders Hejlsberg.
Everything's relative it seems
He's really good at 'expanding' on things huh 🤔
Csharp seems like an alright language until you learn it is cross-platform and you can pretty much do any project imaginable (including games)
Absolutely!
I used to use C# and really quite enjoyed it. In the last few years however I have transitioned towards Rust and I cannot recommend it enough.
What kind of work do you do with Rust, just started learning it.
they are really not comparable, ive used rust at work but can't reccomend for any medium-big project, the ecosystem is too young and a lot of things are missing, too bad, i'm waiting for it
@@sharkpyro93 I agree, they are different in their targets and the Rust eco system is young. I disagree that it isn't good for larger projects as I am currently writing an operating system and a game in it and like I said, loving it
@@lardosian I am programming an operating system and working on a game in it. I've also written web servers and a DHCP server I use daily.
@@EBookCo sure but for anything that you could just use a garbage collected language, you really should use one of that, my last experience was at work i made a very high performant web api and it was a miserable experience, took 2 months, lack of documentation that goes beyond a basic hello world example, immature ecosystem, impossible to find any answer on stackoverflow, don't get me started on db orms...all this made me switch to go and i rewrote the whole thing in 2 weeks (with tests included) with no prior experience in go, and the performance were on par with the rust version, its really not a solution for everything
love c#, maybe the fact that it was the first programming language i learned has something to do with that, but nothing i've tried afterwards comes close in terms of flexibility, organization and overall being so nice.
Hey C/C++ are even more flexible (can be as organized too) but kinda "less nice"
C# has a lot of powerful features that help it leave a fantastic first impression (like LINQ, null-coalescing/-conditional operator, optional method parameters, 'out'-parameters, object/collection initializers, the 'yield'-keyword, generic type constraints. I unconditionally love all of these)
But with great power comes great responsibility. Operator overloading, partial classes and extension methods have very valid uses, but also allow you to craft horrendous nightmares no one should be subjected to.
Consequently I have "regressed" back to using Java wherever I can. As they say, from constraints emerges creativity.
My favorite feature would be pointers and fixed size buffers
the one feature I miss so much when I go back to java is every variable having a built in getter and setter that you override when needed. I wish I could have all the time I've spent writing .get and .set methods in java back lol
@@woofcaptain8212 really? I'm not sure about other IDEs, but in IntelliJ I just do alt+insert -> generate getters/setters -> select fields -> done.
Alternatively there is "Project Lombok" which generates getters/setters based on annotations during compilation - which reduces the amount of *visible* boiler-plate code. (I'm not a fan of it personally, but some people clearly are interested in it)
I am using C and C++ in uni, but C# will always remain my favorite one!
wow nice timing! i just started using c# a week ago and i made similar experiences. right now i am trying to build a backed for my react app using c#. just a fun project to see how well the language does :)
C# is a great language for backends. I have yet to find something better.
react.. meh
@@Sife-db blazor team
0:02 To be completely fair, TS is waaaay better than JS.
C# is the greatest human invention in the multiverse, to the end of time.
best language for game dev imo
20+ years software engineer here
been using c# as part of my toolset since 2003
that probably says everything about the language
I'm trying to find at least one comment which says C# is bad just as language X. No luck.
c hashtag will always have a special place in my heart
c sharp*
@@idkwhatnameishouldputhere3004 C hashtag* idk what you are talking about
You mean c tic-tac-toe?
@@gbagba81 Oh right, yes that is what I meant, sorry for the confusion
@@gbagba81 c checkmate
One thing I hate about C# is that you cannot deep copy your objects. You end up making functions that copy the individual attributes of your class, or having to get into memory copying which is quite a tangent. It is such an important tool, made me look to other languages for bigger projects.
There's a ton of ways / librairies to solve that problem. Even with the built-in seralizers.
But I agree that it is sometimes a pain.
It's a result of the inevitable dangers exposed by higher privileges. If you want to play those games use C++.
it can be done in 3 ways : 1 manual (tedious indeed, but performant) 2 binary serialization (less tedious, less performant) 3 reflection, less work but least performant.
C# is accually very cool if you know how to use it correctly.If you dont however,your feet blows up
Thanks for the like!
I'm not sure what do you mean by the last part. C# is not C++, you can't mess up (Unless if you're writing unsafe code)
C# is really a great language. It makes programming a pleasure.
I love C#, it just feels so right. I've been using it on/off for about 2-3 years now, since that's the language the Unity game engine uses. I've fiddled with some Python, but it just didn't feel the same
Not really, unity uses mono / .NET framework which is a separate beast from .NET core / .NET 5+, it might share the same language version up to a point, but that's about it.
@@KieranDevvs It's still C#. Unity itself uses C++ under the hood, but the language used for making your player move etc is just C#. Doesn't matter how it's compiled or how the garbage is collected.
@@Hietakissa No really its not... The BCL is what makes people like the language, the BCL wildly differs from framework to core. .NET framework sucks, core is a god send. Just because the language syntactically looks the same, doesn't mean you have the latest C# features and it doesnt mean its the same experience. I mean look at the nuget package references on framework, it's so bad. Maybe you don't know the grass is greener on the other side if you've never used .NET outside of unity.
@@KieranDevvs I've made some simple console applications and the experience was the exact same, Unity uses C#8, so it's not missing many features on that front
Great video, I look forward to seeing more of your content when you return to youtube in June. Good luck with exams.
I like C#. Made an app with it, and a few projects and libraries. It's quite easy and intuitive, while still having many features and decent performance. And it gets better and better with each new version.
another ksp fan
C# has nullable reference types.
There is also a System.Text.Json namespace with the new Json parser and stuff. In the upcoming version of C# working with Json in string literals will be a lot easier!
As a .net developer, I find it satisfying that even during these days people are finding their solution in C#
Its great working with C#, its a good language, I think for smaller programs a small file structure would be good I guess its implemented in 6.0, but needs better work with JSON files, Command shell, sensors and bluetooth devices.
there are great JSON libraries for C#
Also CommandDotNet
The centered taskbar. This causes me great pain.
@@epsi I'm on Windows 11 myself, taskbar can be moved back to it's proper position and most other crappy stuff can be fixed by changing registries or 3rd party software.
I did PHP, nodejs to C#. Was trying Go and Rust but I decided to stick to C#
I started programming in c#, made some good projects in it (one thats consistently used in a community now) and it was a very good experience. Now though, ive started using rust and im loving it. I dont think im going back to c# in a while. I havent used any other low level languages like C and C++ but it seems like rust is by far the best option in that space now, especially if youre not too used to c++ idioms. Rust even often feels generally easier to use than even though its just zero cost abstractions unlike c# lol.
I'd highly recommend trying rust. its been the most loved programming language for many years in a row for a reason.
What project did you make? Sounds cool as h*ck
@@thisisnotok2100 its for tool assisted speedruns. It automatically generates near perfect inputs for playing a certain game mechanic as fast as possible, with pretty easy setup
i've used it at work but it was a miserable experience, we needed a high performant web api, i used actix web and diesel, took 2 months because i was also learning in the process, then switched to go with no prior experience in go and rebuilt the whole thing in 2 weeks with test coverage with similar performance, the ecosystem is immature, most libraries are unmantained for years, or the complete lack of documentation that goes beyond an hello word example, it was so messy and full of boilerplate that made me miss java, and you know its a problem when you miss java you know the shit is real
@@sharkpyro93 I know rust is more of a commitment, has some unique ideas and isnt good if you dont properly learn it before going into actual projects, but that sounds like the worst honest experience ive ever heard of rust.
@@theroboman727 the code itself was just right, just the language itself that requires alot of boilerplate with its crazy syntax at times that is hard to look at, hundreds and hundreds of loc for a stupic jwt middleware, or for example i also don't really understand how a really poor documented library as diesel is considered the "go to" library for db interaction:
it lacks async, the documentation is basically nonexistent and not clear, it has obscure errors with like 35 line of the same error in the console stack trace that i solved after hours just by guessing, if you have any problem or need an example for a basic usage like getting nested related structs from a query, good luck, basically zero result on google, and god forbid if you need help with a super niche error case...
also the testing is something that the rust community really dislike, every time someone come with testing in a discussion it gets downvoted to the oblivion because "rust does not need testing, its a perfect language with safety" or "not everything needs to be tested", to me this just shows that most rustaceans use rust just for small projects or hobby projects, i was sold in the beginning but after this ijust use it for high performance agents or for one off script
About async: Any method can be set to an async method. Any code inside of it that supports the awaiter class can be used. Like the File.CopyAsync method can be inside of a “private async void SomeMethod()” it’s really great when doing file copy operations that may take time, instead of doing it the old finished way with a “Thread.Sleep”.
Just a note: never use async void. Always return a Task.
I liked this video because you mentioned my favorite teacher "Bro Code"❤
C# was the first language that made me fall in love with programming. I started 2 years ago and have never stopped using it since! I personally derive a lot of enjoyment through making my code clean and I think the language allows you to do so quite easily.
Agreed!
Quite a bad first language. It teaches you a lot of bad habits that need to be forcefully forgotten to learn anything else.
@@theairaccumulator7144 I feel like that is something you could probably say about java/kotlin but yeah I absolutely agree. I cannot handle doing web frontend because of javascript. I don't know if it also goes the other way around though.
@@theairaccumulator7144 can i get examples? is there a better alternative for a first learning language?
I started in Lua, Python and js, gonna try C# wish me luck
The way C# introduced async/await and Tasks is also great, it’s such a pleasant and easy experience to get Asynchronous code to work. It’s basically just as easyto write asynchronous code and it is to write synchronous code, which can’t be said for all languages
Tipp instat of writing Console.Writline, you can write
cw tab tab
(I'm not the best in English)
Yes, cw (tap tap) Very useful...
@@lou6916 not "tap tap" it's "Tab Tab(double Tab, like double mouse click)", cw is a snippet in Visual Studio for Console.WriteLine(), Tab autocompletes your input and double Tab executes snippet. Same thing with ctor, it's a snippet for constructor.
"If you dont know what c# is, imagine java "
-Junferno
im confused as to why python "can't do anything"? Isn't it like the most versatile language there is lmao?
I was quite confused by that line as well, as I was under the impression that you can do whatever with python.
Exactly the same. I agree Js is Shit. But Python? shouldn't it be the language that should be breaking the market with AI stuffs? I'm a C# developer BTW
I got into C# when I inherited a .NET project. I had experience with TypeScript, and it made it super easy to learn C#. The syntax is really close to TypeScript!
If I recall correctly, TS was created by one of the C# developers.
Makes sense. ¯\_(ツ)_/¯
Because both Typescript and C# were initially designed by the same person, Anders Hejlsberg, who also designed Turbo Pascal/Delphi.
win forms c# trying to get mouse position and bounds hurts me
The only one disadvantage. You have to write tooooo much words
public async Task SuperDuperMethodLongestNameInTheWorld(billion parameters)
And you can't write code without classes which is also takes lines of code
Except not, u don't have to use such names if u don't want to, it's up to your team to make proper architecture using comfy naming conventions. I literally never been using such long names and I'm working on projects with millions of lines of code.
@@rikk0011 I'm talking about too much keywords, at least it could be easier if you don't have to write public every time
@@_dyats oh okay, then I didn't understand u correctly. Yes, you are right, there are quite a lot of keywords compared with some other languages, but in my own experience and opinion, there is no more than what we need and an IDE writes most of them for me.
Just for the example u gave,
visibility (optional) quite important,
async (optional) yea could be some heuristic to determine it but yea,
Task - return type I definitely want to have it there,
name of method - no comment,
parameters - who ever said u got to have billion of them, there are only as many as u put.
@@rikk0011 regarding Task name parameters you are right, but everything that goes before, can be annoying
I'm about to learn C# Always wanted my own game with it
I''ve been using c# for 1,5 years now and never done a language before. Now i already got a job in c# so im very thankfull for this language
That's why I've always liked the language! It's so simple and easy to read. :)
I like C#. It's probably my most used language ever
C# is what feels like Java was always trying to achieve, but cleaner
Going from dynamic typed/Multi Paradigm in Python to C# was a bit to wrap my head around. Once the object oriented concepts sunk in though, things started to flow really easily.
There is still a ton of functionality I have yet to learn, but I really do like the language. Fast, efficient, and able to target multiple platforms.
The GUI framework selection is pretty lacking for the Linux side of things, but other than that I have no complaints I have found yet.
java dev here, C# is perfect for packaging my java programs into exe files so I recommend learning even the slightest bit of C# even if you already code in another language.
PascalCase for functions is really weird
The only downside of c# is the part where you sell your soul to Microsoft
C# is my main language and it's awesome to see new people joining the community!! Welcome! I tried sending a couple of helpful hints, but it seems like TH-cam didn't like it (they were all very positive, so I'm not sure why, sorry!).
You may enjoy working with the .NET 5 default projects a bit better, especially for smaller projects - they allow you to use global scope, so you can ignore things like namespace and the main class. Obviously, a preference thing.
Also, newtonsoft is a great package for working with JSON
hi, i'm completely new to programming but have a project in mind for which i might need to learn C#, do you recommend starting with it or going for an "easier" and more used language like python to get the basics?
@@gerardonavarro3400 I wouldn't say python is necessarily more "used", it just depends on your use case. If you're looking for a single project, I'd try to research what language is common for the type of project you want to make. C# is a great all-around language though - it does web, desktop, mobile, IoT, gaming, console apps, background aps, cloud-hosted apps, etc., so it really does do most things any other language will do for you. That doesn't necessarily mean it's the best for your scenario though. Would you mind sharing a bit more info about the project? I might be able to nudge you in the right direction.
I find it interesting how you can see the js "accent" in your c# code. When I write c# i probably have a java accent. Ps : don't use dynamic. It's terribly slow. Even slower then python.
python in and of itself isn't a slow language but it is slowed down significantly by imported packages especially if those aren't installed and you're using a web-based IDE like replit. Also, unlike languages such as C# and C++, python is an INTERPRETIVE language, not a COMPILED language which means its simple, efficient, but slow. im not saying other languages are inefficient though, as python obviously can get the job done just like any other language
If anyone is looking for books on the language, the C# Yellow Book by Rob Miles, is a great read.
C# (aka Microsoft Java) is definitely my favourite language 🙌
Been a C# dev for 2 years and I love it
C# is already installed in Windows but only up to .Net Framework 4.8 and C# 5.0 which is outdated
but is enough at the beginning of learning
I've tried all the other popular programming languages. C is still my homie
"I don't really know how async works"
After more discussions than I can count on my hand about async/await in my 10 years of C# professional programming experience neither do I man. Neither do I.
ever since they introduced dynamic syntax I've never found a decent use for it, I tend to avoid using it as much as possible
Dynamic was introduced for interop with Excel, that's it. Each day you don't use dynamic keeps the doctors away !
@@MaximilienNoal amen to that
"python can't do anything"
thank you for wasting only 2 seconds of my time before I knew to shut down the tab. If only everyone did it like you!
😂 python fans
All those triggered Python devs in the comments, I love it
@@davydorynbaev I develop in several languages. Is not that I'm a Python fan boy. It is simply an stupid criticism. You can say Python is slow, you can say it is not good for concurrency... But what he said is simply absurd and meaningless. What does he mean when he says he cannot do stuff? They did Instagram eg.
If you come from TS the similarities aren’t that surprising, since both languages are designed by the same person. Anders Hejlsberg at Microsoft.
Your good grade given to c# makes me feel proud, as if I developed it, however I just use it.
Really cool channel nice work mate!
Hahaha i used brocodes tutorial as well and managed to finish my 1st ever project fully, a small game in unity. For the first time i felt competent, thanks brocode
you should try rust
its a lot of fun :)
its got a steep learning curve, but genuinely once you get the hang of it, its really not that hard and has a load of features that make it way easier to bug fix and develop than c++ (even though the concepts are more difficult to begin with)
but muh 5 page compiler error messages that contain no useful information but are technically right and muh segmentation fault when i do an "off by one" mistake
(honestly fuck C++)
C# was the first language I learned thanks to high school, been programming for over 6 years now and tried all sorts of other languages (C, Haskell, Python, JS, TS, Java, ...), none of them are as versatile and also nice to use as C#.
You wanna work with high abstractions? C#
You wanna work low level with native libraries, pointers and structs? C#
Need performance? C#
Wanna make games? C#
Wanna write a web server with an API? C#
Wanna make a native UI app? C#
It can do pretty much all of it and even AOT compile.
Anyone who prefers Java over C# has a stockholm syndrome
Bro Code is the best teacher LOL
C# is great!
You can do anything from web apps, to mobile apps, to videogames and now even IA.
It is being updated regularly and since it is made by one of the biggest software companies in the world you can guarantee it is not going to die anytime soon.
Few things to note. You could have used dotnet 6.0 framework to get a much easier learning curve. As it does not require the whole main function logic, and also simplifies a fair bit of syntax.
As for handling JSON... Yeah the documentation is weak.. :( it relies on you knowing how to use attributes on properties. When you know that it becomes simple, just stick [JSON object("its name in the JSON file")] above the attribute and it will map to the field or slap [JSON constructor] onto the class constructor of an object to parse JSON if you also need to transform incoming data.
im a hobbyist c# programmer and msot of the stuff you went through in thsi vid i had no idea about xD as in stuff like header file and what you wanted the console app to do xD understood the actual coding tho (for the most part)
C# was the first language i learnt (actually, taught myself), and over the years I have come to love it. The .Net framework (and now .Net Core) provides a brilliant feature set that 'just works' (unlike some languages..... java). The latest versions of the C# language (C# 10) (actually, >c#9) have some really great operators for arrays that let you do ranges and indexing like you would in python (try doing that in java in a single line of code). C# also has the incredibly useful (and incredibly dangerous) 'dynamic' keyword as well as allowing unsafe code, this has been so useful for me when working with generic programming, once again another thing you cant do in C#s main rival, java. I will note however, C# does lack in one area, and that is cross platform UI support, yes there are very powerful frameworks out there, and for 99% of cross platform use cases, they are perfect, UNLESS you need 3D... in which case, just give up, there is no mature, easy to use cross platform way to do 3D views with say, openGL in C#, not yet anyway, i believe .Net MAUI is going to solve this, but for now you have to bodge solutions with skia and other stuff that doesnt work properly. This has been a huge limiting factor for me in a recent project, so much so i just went and learnt the Qt framework, and kind of decided C++ is basically as good as C# if you know what you are doing (and lets you be more 'creative' with your memory management and unsafe code).
unity comes to mind for 3d, though that obviously can come with a lot more bloat than you might want in some use cases.
@@woofcaptain8212 yeah, unity is bloated badly , and being a game engine isnt suitable where you need 3D elements embedded in a mainly 2D application.
openTK is an openGL implementation in C# (among openCL and openAL). It is cross platform, and overall extremely great. I would definitely recommend trying it.
Hi Lewis, what about Avalonia UI (and their new XPF) or Uno Platform?
Using C# all the way till now. Once Java programmer said it will take 2 weeks to get same functionality of 2 days C# written page/ menu, so, why should I change? Hehe. Psssttt I am just lazy to learn honestly.
What is the song name at 2:47. I know I have it on soundcloud but forgot about it, its so good.;p
I've pretty much only programmed in C++ so maybe I'll have to give C# a try.
How did you discover Coding? and what is you favourite Programming Language? Btw Keep goin, ur awesome!
Quick question, but what do you mean by “python can’t do anything”. I get it is not for performance intensive tasks but this is the first time I have heard someone say python is limited.
even with the performance intensive tasks i do not fully agree. A good written Code can be faster as bad written C Code*. + you can cheat with Modules like Cython ;)
In the end to really write good Code you need to understand your Hardware completly and what is happening behinde.
*obv. a well written C Code will out perform Python heavily
@@meerpirat3418 yeah I’m just interested in what it is that he believes python can’t do, because as far as I know it can do most things maybe not the best in every scenario but it can do most things decently. So I’m curious.