69. Why Should I Choose C# As My Programming Language?

Поділитися
Вставка
  • Опубліковано 27 гру 2024

КОМЕНТАРІ • 306

  • @emreaka3965
    @emreaka3965 3 роки тому +41

    I have used Python, Java, JavaScript, C# and I love C# more than any of them in the list. That is the only reason I keep learning C#. "I try to become back-end dev."

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +3

      Great!

    • @franciscoflamenco
      @franciscoflamenco Рік тому +1

      I've used them all except for C# (which I'm considering to learn at the moment) and I'm not surprised that you like C# better than Java or JavaScript.
      I do love Python though, so I wonder if I can come to like C# better than that.

  • @adeizayusuf
    @adeizayusuf 3 роки тому +59

    My first love is Java, just moved to c# and I'm actually loving it.

    • @PerryCodes
      @PerryCodes 3 роки тому +4

      Same here. When I first saw Java and experienced the "everything is an object" paradigm, I was in love!! I think Microsoft saw a lot of VB developers like myself jumping ship over to Java, so they set out to make something that would be close enough to it - but added something extra, and in my opinion better. And for me, that strategy worked. Haven't looked back since!

    • @FiveNineO
      @FiveNineO 3 роки тому +1

      Even though I've been programming C# professionally for years now I still feel drawn back to Java from time to time, even if I do miss several features when I do

    • @Qrzychu92
      @Qrzychu92 3 роки тому

      @@PerryCodes why did you skip Kotlin?

    • @eylonemuskson4177
      @eylonemuskson4177 3 роки тому

      Java? #shivers

    • @PerryCodes
      @PerryCodes 3 роки тому

      @@Qrzychu92 Kotlin wasn't even close to being around at the time. I started using Java before 1.0 was released. Worked concurrently with Java and VB6 (depending on whether it was web or desktop) up to the early days of .NET. I used VB.NET for a short time, but once I started using C# there was no looking back. Unless I'm doing something small(ish) and could really speed things up with a dynamically-typed language (where I'd use Python), C# checks all the boxes for me!

  • @veoquenoesunproblema
    @veoquenoesunproblema Рік тому +10

    From a self taught to University student, I can say, Tim is the guy that have had explained the most about each topic, it is like seeing a summary video of a full semester the key aspects that you need to understand from the topic he is talking about.

  • @TheStripe123
    @TheStripe123 3 роки тому +10

    I have been a professional c# developer since it came out. I have been a developer since around 85. C# is the right tool for everything in user space. Blew my mind when I was able to compile to Linux a few years back. Just so good its ridiculous

  • @alno1
    @alno1 3 роки тому +67

    I am choosing c# because it is sitting on a huge ecosystem, backed by a company that will not die anytime soon. I'm betting on longevity.

  • @Str4yshot
    @Str4yshot 3 роки тому +50

    I used Java a good bit in school then got on internship doing C# and it just felt like a straight upgrade across the board.

    • @alexvanheerden5702
      @alexvanheerden5702 3 роки тому +13

      Haha, I had the same experience, Java in college then internship and job in C# and I've never looked back.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +8

      Thanks for sharing.

    • @TheHarirak
      @TheHarirak Рік тому +2

      Me​ too, java, But​ After​ I​ try​ c#1.0-1.2! I​ loved it.

    • @milannikolic3371
      @milannikolic3371 Рік тому

      Hi im an aspiring software developer, started with c now learning c# . Since c# and java are pretty similar to what i hear why is c# considered a better option by so many people ?

    • @syedburhanofficial
      @syedburhanofficial Рік тому

      I am on the same way. :)

  • @kumarcgowda
    @kumarcgowda 3 роки тому +26

    My regular go to UA-camr for C#. Your knowledge is very mature and the explanation is very elegant. Love your videos, Sir!

  • @mrsajjad30
    @mrsajjad30 3 роки тому +5

    I am a C# developer and at some point switched to JavaScript ( For cross platform as there was no .Net Core then ) and developed a desktop application using electronJS but my app was not compatible with the new version of electronJS in just three months. Therefore, C# with Microsoft on its back is an advantage because your code will be compatible mostly. If not then there will be a tool to port your old code to the next version. And if non of the above works, you will have a good documentation to help you out. And if all fails, believe me help will be on its way.

  • @le_Bizarre
    @le_Bizarre 2 роки тому +4

    I would add a very important reason why I would chose a language and not an another: a teacher I love. Whether he is a person or a book, the right teacher can make me chose one language if I hesitate between many.
    And here is a fifth reason: whether or not I feel part of the community of the language users. For example, I could not feel I belong to the html/css/javascript community, especially when javascript frameworks emerged.

  • @williameisenman5538
    @williameisenman5538 3 роки тому +3

    My career is the same as yours. Thank you for explaining what I have practiced for these many years so eloquently. I hope that others realize the benefits of thinking as you do.

  • @JFRsAlive
    @JFRsAlive 3 роки тому +9

    The ending seconds though :D Good video!

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +9

      Whoops. Forgot to cut the end.

  • @WillEhrendreich
    @WillEhrendreich 3 роки тому +7

    Seriously love c#, I am really happy with it in so many ways, and I am so excited that they are really focused on getting some of those great functional style ideas in the language lately. The pattern matching is freaking great, so succinct and readable, and yet, because of the default case implementation, if something happens that you don't expect, you're still not sacrificing any of the full-featuredness.
    I love lambdas like mad, and I had such a hard time understanding them at first, but now that I have a grasp on what's going on, I see how absolutely brilliant they are as an idea.
    I'm trying to get more a grasp on things like expression trees and source generators, and I am looking forward to some nicer tooling for all of that.
    Anyway, thanks for the training!

  • @satori8626
    @satori8626 Рік тому +1

    The access to high quality programming lessons on your channel, is one of the main reasons that I am working in C#.

  • @ReSpawNnL
    @ReSpawNnL 3 роки тому +8

    Coming from 15 years PHP to C#. Job opportunities here in The Netherlands are fairly similar. Really starting to like the language and syntax, not so different from PHP 8 but then again, both have come a long way.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      Thanks for sharing.

    • @dbdejonge2081
      @dbdejonge2081 17 днів тому

      Learned Basic, then Turbo Pascal, VBA, PhP: you can read C# easily.

  • @sindiinbonnienclyde
    @sindiinbonnienclyde 3 роки тому +4

    C# is wonderful, use it everyday and feel like I learn something new all the time.

  • @bjbell52
    @bjbell52 Рік тому +1

    One of the biggest problems I faced as a computer consultant was the fact that I wasn't the one who picked the language/development tool. My first job was to write an application to track a 3 million dollar parts crib. What I NEEDED was a relational database. What was picked for me was a flat file database named Q&A 4 because the purchaser who oversaw the crib belonged to a bowling league and they used Q&A 4 to keep track of the peoples' scores. I managed to make it work by creating a script that, at the end of the day, would use to parts DB to update all the other tables in the system.

    • @IAmTimCorey
      @IAmTimCorey  Рік тому +1

      One of my first jobs was working as an employee of a consulting company for six years. I stopped counting after writing production code in my 24th different language.

  • @fernandorojas375
    @fernandorojas375 3 роки тому +2

    I moved from VB to C#, at the beginning I found it hard to understand but now I love it.

  • @jeffreyphipps1507
    @jeffreyphipps1507 3 роки тому +3

    I would have to agree. I learned assembly language on various processors and to cross develop with macros when I started, but learned COBOL and I loved it. Then I learned Pascal and loved it more. Then I learned C and loved it more. I learned Java along the way. It was OK, but I didn't love it. When I learned C# I fell deep for it. Over the years, I have learned over 30 programming languages. Some were more enjoyable than others.

  • @tedstidham
    @tedstidham 3 роки тому +5

    Similar path of language evolution. Mine was qb45, vb 1-6, vb.net, now c#.net love C#.

  • @Intel-i7-9700k
    @Intel-i7-9700k 27 днів тому

    Got my first job in machine vision, and everything is in C#. Industrial protocols, vision software, and Windows UIs. Great language all around, and the code looks very aesthetic as well.

  • @coderbdev
    @coderbdev 3 роки тому +2

    Sounds like we took a similar path :). I got into C# when it came out in Beta, and once it was good to go, I switched :)

  • @KarlTH2005
    @KarlTH2005 3 роки тому

    Also one had 21 years on experience in VB and now developing im C#! Great to hear not to be alone.

  • @S3Kglitches
    @S3Kglitches 3 роки тому +2

    Thanks for great philosophy. And I'm with you in the "meh Java". Having worked in Java and now in C#.
    I cannot name many things which would be better in Java than in C# other than more old libraries and the the idea of the free open source world at the same time when we had full Windows reliance. But that is over now.

  • @jorgerojo3246
    @jorgerojo3246 3 роки тому +3

    I been working on C# for 11 years now and I still loving it, I'm glad is growing to the next level of multi platform support

  • @arcohrs
    @arcohrs 3 роки тому +3

    Great video as always!
    I started learning Python first and switched to C# because it's what was used in my first software developer job and I've just run with it since. It's funny how despite a person's preference or experience, opportunity can really be the main driving force behind language uptake. Granted if I hated C# I probably wouldn't have stayed in a job working on it though too

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      Opportunity is always a big driver.

  • @pazzuls1120
    @pazzuls1120 3 роки тому +10

    As a new developer, I'm facing a problem with the mindset that I need to learn nonstop if I stop, I just feel missing something or doesn't feel right!! Can you give some advice.

    • @adeizayusuf
      @adeizayusuf 3 роки тому +9

      You're right about learning nonstop, you have to keep learning but practice is more important, the only reason you feel this way is because you're trying to learn too many things at the same time, just focus on a programming language at a time, focus on a particular framework or concept, don't rush yourself, we can't learn it all. Wish you all the best.

    • @pazzuls1120
      @pazzuls1120 3 роки тому +2

      @@adeizayusuf thank buddy!!

    • @roko567
      @roko567 3 роки тому +4

      That's not a problem. That's how it is. You need to be learning nonstop, especially when just starting out.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +10

      You do need to continue to learn and grow. However, approach it as a marathon, not a sprint. Don’t exhaust yourself trying to hurry up and learn everything. Learn a bit at a time and let it sink in.

    • @davinozen
      @davinozen 3 роки тому +1

      You do need to learn non stop as a developer but when starting out it’s best to get comfortable with each thing you learn first before moving on. It makes the things you need to learn in the future easier to understand. I’m learning C# right now but because I’m comfortable in Python and C++ the concepts are easier for me since I can equate it to something I already know. Don’t be hasty when learning programming.

  • @mrf7283
    @mrf7283 3 роки тому +1

    Another good and balance episode. In this episode I felt audio was little perturbed. Some background noise is there.

  • @bobclemens8065
    @bobclemens8065 3 роки тому +2

    Some people are concerned about the constant stream of new features in C#, and that it's becoming overly complex, and hard to keep up with. I personally love the language and most of the new features, but I sometimes think it would be overwhelming for an entry level person. (Despite the new "top-level statements" feature.) I've heard people say just use a subset, like just through C# 7, but then what if you have to maintain code that uses the full feature set?

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      Change is inevitable and important. A language has to grow and evolve with the times. Otherwise, it falters and fails and gets pushed aside. If that happens, your investment in the language mostly goes away since the market starts to dry up for jobs in that language. Yes, keeping up with the changes can be difficult but it is a part of being a developer. In the case of C# and .NET, changes come once a year. That isn't a big deal, really. It isn't a constant flood of new changes. Yes, if you try to keep track of the pre-release versions of things then changes come more quickly but that's not wise.

    • @bobclemens8065
      @bobclemens8065 3 роки тому +1

      @@IAmTimCorey I'm not concerned for myself as a developer, rather my concern is for the ongoing viability of the language, if it's not embraced by new developers because it gets the reputation of being "too complex". Talking to developers and reading on-line, I think there's definitely a growing sentiment that the constant barrage of new features is making the language bloated and difficult to learn.

  • @mrKaniyaw411
    @mrKaniyaw411 Рік тому

    You explained everything well especially for beginners. I like your videos and will work hard to be like you if not more than you soon.

  • @Swanseaguy1979
    @Swanseaguy1979 2 роки тому

    I just started an evening class at my local community college. Gonna see where this takes me

  • @PerryCodes
    @PerryCodes 3 роки тому +1

    Don't think this has been mentioned, but the majority of Visual Studio is now written in C# (using WPF, I believe, for the UI). I doubt the C/C++ compilers are... but most everything else is probably C# (if anyone know more details on this, please comment!). Seeing killer software like Visual Studio written in a certain language is a definite testament to that language.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      Yep, Visual Studio is C#/WPF primarily.

    • @santhnu
      @santhnu Рік тому

      @@RooterDelWifiXs Really? in what way? I think it's better than the Eclipse/IntelliJ for Java though

  • @DevlogBill
    @DevlogBill 2 роки тому +3

    Hi Tim, since December 2021. I've been learning JavaScript, HTML and CSS. I love the syntax of C# because the way the language is structured and also, I wouldn't mind learning C# for game development as a hobby. Getting to the point I want to become a web developer. Question? If I learn C# how much JavaScript, HTML and CSS should I know? Also, when should I begin to learn C#? Also, Do I even need JavaScript for web development if I learn C#?
    I already know JavaScript fundamentals. But I don't know high order array functions, modules, state management, and my skills in constructor functions and class function suck. I know HTML very well and CSS I am decent. I know flexbox but I suck at grid. Finally, I don't know a library or a framework like React. Finally, I know the language, but I don't feel 100% comfortable with JavaScript.
    I could use your guidance, with what I know already for almost the 6 months of as a self-taught developer in JavaScript. How should I learn C# and the tech required for this technology?

    • @IAmTimCorey
      @IAmTimCorey  2 роки тому +10

      I'll do my best to give you general advice that will apply. You will need to figure out what will be best for you. If your goal is to become a web developer, you need to identify what type of web developer. Do you want to be a front-end developer (focused mainly on writing JavaScript in a framework like React, Angular, or Vue), a front-end designer (focused mainly on making things look good using HTML and CSS, possibly with Figma or Photoshop), a back-end developer (focused mainly on business logic and data access using JavaScript or C# or another language), or a full-stack developer (someone who can do a bit of everything - HTML, CSS, JavaScript, and C# or other backend language)?
      Here are my thoughts on that list - full-stack is crazy-difficult to do right away. It takes knowing multiple languages and frameworks really well. I find that it is better to move toward full-stack by picking one of the other stacks first and adding to it. I'm assuming you aren't anticipating doing design-only work, so we can ignore front-end designer. That leaves back-end and front-end developer.
      Here's my personal opinion - the market is full of rookie front-end developers. I personally think that starting with the back-end development will give you a more solid foundation, it will give you a broader reach, and it will allow you to grow into a full-stack more easily.
      I would recommend learning C# because it will give you the skills you need to be a developer doing just about anything (desktop, web, mobile, IoT, Cloud, etc.) That way, you can have a broader reach when looking for a job (unless you choose not to, but it will be your choice). Your HTML and CSS skills will serve you well when working with C# web applications.
      There are a couple different ways you can learn C#. The most important thing, though, will be to practice everything you learn no matter how you approach it. That practice will be the difference between thinking you know something and actually knowing it.
      The first way you can learn C# is to piece it together on your own. This is how I learned. It can be tricky, but you can definitely do it. I recommend you start by learning C# syntax. Start small (variables, if/else, loops, lists/arrays, etc.) and practice everything in the Console app project type. That will keep things simple. From there, learn how to debug C# applications. Learn about breakpoints and other Visual Studio features that will make your life easier when debugging. Then learn about object oriented programming. It is important that you understand OOP because you cannot gain the true power of C# without knowing it well. Learn about static vs instantiation, interfaces, inheritance, abstract classes, overloads, value types vs reference types, and more. From there, start learning the various project types. Up until now, I would recommend you stick with the Console app project type because it keeps things simple. Now you should learn about the class library, the five ASP.NET Core web project types, and the desktop project types (WinForms, WPF, and maybe UWP). I know you don't anticipate doing desktop development, but you should at least build a few just so you know how they work. That broadens your skills and it sets you up for success in the future. After that, focus on data access. Learn how to talk to SQL, SQLite, MySQL, MongoDB, CosmosDB, text files, and APIs at the very least. Learn how to use Dapper and Entity Framework (at least the basics). Learn what LINQ is and how to use it. By this time, your brain should be crammed full of things that you have learned. You should also have about 100 practice projects under your belt (tiny ones that just focus on the code, not on doing anything useful). Build a few small projects that actually do something to practice putting the various pieces together.
      A second way to learn is to go through a course. I sell the C# Mastercourse, where I follow the above plan (plus a LOT more) and teach you step-by-step: www.iamtimcorey.com/p/c-mastercourse
      Whichever way you choose, you can do web development with C# that can be back-end focused, front-end focused, or full-stack focused without ever leaving C#. You don't NEED JavaScript in a lot of cases. Some people still prefer it, and that's fine. You can integrate Angular, React, or Vue into the front-end of a C# web application quite easily.

    • @DevlogBill
      @DevlogBill 2 роки тому +3

      @@IAmTimCorey Wow, thank you so much for the excellent advice! I greatly appreciate all the wisdom you have offered. I will look over your link for the course and I will journal the proper course to take for learning C#. I will try to learn everything you texted me to gain a better understanding of the path I need to take and next week Friday I will begin my learning Path in C#, thank you for the guidance.
      Truthfully, I am more focused on mastering a few things versus having a broad spectrum of knowledge. You were correct I am not interested in web Designing I am interested in web development and I wouldn't mind starting as a back-end developer and Desktop development sounds pretty interesting as well. My end goal truthfully is not to fail but to reach my goal as a software developer. I am eager to learn. Well on the positive side at least I will be learning a language with an authentic OOP language versus a prototypical language.
      After I am finished writing you this message. I will check out your site. Also, I already purchased just the other day the Headfirst C# book. I guess this will be my starting point? Thank you once again, I am truly thank for your wisdom and guidance.

    • @Ricocase
      @Ricocase 8 місяців тому

      @@IAmTimCoreywhich language is well versed in generative ai or coding halftime updates in sport video games? I want to build a startup. Java vs c#

  • @jeffg6924
    @jeffg6924 3 роки тому +8

    I'm a Sr Software Engineer... I've been around long enough to hear the dinosaurs griping about the object oriented non-sense that C++ was pushing on everyone and how the world would function just fine on C. Having spent over a decade of java development professionally, I do have a strong preference for C#.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      Thanks for sharing.

    • @Vreth6
      @Vreth6 3 роки тому +1

      I've been programming for 20+ years, and I was indoctrinated that OOP is "how we write software now" so that was all I did for many years. Then I started listening to other developers and having an open mind, and then I saw that among other things, functional programming and programming in C without classes can do anything that OOP can do, sometimes even more performant.
      Don't stick to just one paradigm your whole career and think it's the key to all answers.
      I'm mainly a C# developer nowadays, but both C++ and C are fine, C++ is not automatically better than C at anything just because it's OOP.
      C# has been moving away from being so tied to the OOP ideas for a long time now, and that is one of the main reasons i'll keep betting on C# in my work-life, it's not a one-trick pony.

    • @jeffg6924
      @jeffg6924 3 роки тому

      @@Vreth6 Well when you have complete control over gc and low level caches, you can increase performance. Which is why that is still possible in C++ and which is why most MCUs will maintain the C/C++ naive code. I am not sure what you mean that C# is moving toward procedural. Even the .NET seems to be pushing a more OOP approach towards wrapping the markup code. It might render down to a markup on the client, but from the developer's point of view, its going more and more towards wrapping markup away and handling the markup in the framework.

  • @DrorF
    @DrorF 2 роки тому

    7:45 There were books written in C# ?! Wow, that would probably be a hell of a read! 😜

  • @linting
    @linting 3 роки тому +1

    My first seriously learned is Java. Now I am using C# and might always do! :) It is cool!

  • @aeterna_victrix
    @aeterna_victrix 3 роки тому +1

    I have tried many times with other languages but they all never "sit right" with me. Many would consider C# to be overly verbose but I actually find this makes it easier to understand instead of harder. I've tried to get into JavaScript and PHP but the syntax honestly makes me cringe. Not to mention the developer experience using Visual Studio IDE.

  • @bobweiram6321
    @bobweiram6321 3 роки тому +2

    Bjarne Stroustrup, the inventor of C++, said, 'inside C++, there's a simpler language dying to come out.' He's right--it's C#. I wish it was a first class language of the web, mobile and desktop.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      It is a pretty great language.

    • @bobweiram6321
      @bobweiram6321 3 роки тому

      @@IAmTimCorey Unfortunately, some of the language features like records makes no sense to me. It seems like they added it to make the C# more functional programming friendly. That's fine, but why not just add a modifier to classes and structs.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      Did you see my video on records? ( ua-cam.com/video/9Byvwa9yF-I/v-deo.html )
      Records are basically just modifiers on classes (and structs in .NET 6). They are just classes with extra "stuff".

    • @bobweiram6321
      @bobweiram6321 3 роки тому

      @@IAmTimCorey Yes, but why introduce a new datatype instead of a new modifier like:
      public immutable [class/struct] Dog {
      }
      Records don't work with classes and structs interchangeably. You can't inherit from a record , nor can a record inherit from either a class or struct.

  • @ameeradel4835
    @ameeradel4835 3 роки тому +1

    hello Tim,
    i m currently being offered a contract to be a product manager and i would like to understand the basics or the common rules of being one, obviously this is my first time going over such contract and i would like to be thourough with contract.
    i understand that companies have their own idea of contracts, still, some points should be common and if not, is there a standard contract that one can agree upon.
    always a fan

  • @ivannuzhyn4668
    @ivannuzhyn4668 2 роки тому

    You got me, will try C#

  • @BogLungu
    @BogLungu 3 роки тому

    Love your shirt 👔! Love your content!

  • @m3xpl4y
    @m3xpl4y 3 роки тому

    Nice said Mr. Corey, thank you

  • @timlawrence7204
    @timlawrence7204 3 роки тому +1

    Hey Tim love your videos and I’ve taken some of your training courses. You talked about C# being on all kinds of platforms. I’m curious, do you know if C# is being used at all in the Blockchain space? I’ve tried looking it up and I don’t see a whole lot.

  • @BloodHaZaRd666
    @BloodHaZaRd666 3 роки тому +1

    My first Kang I used was C and then passed almost 9 years in C++. Currently i use C# and seriously I get get off of C++
    I prefer C++ but dont hate C# But I really do about Java

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +2

      I'm glad you found what you like.

    • @TheBrainDunne
      @TheBrainDunne 3 роки тому

      Aymen, I have a similar feeling. I also like go and elixir.

  • @veoquenoesunproblema
    @veoquenoesunproblema Рік тому +1

    When you see C# or Java you see very stable and backed languages by companies, when you see some other languages everyday you see a lot of instability to look for the flavor of the month because of need trends and forks of same languages over and over haha

    • @santhnu
      @santhnu Рік тому

      True, problem is support. Microsoft or Oracle(Java) for that matter will provide support that others don't (JavaScript/Python). Good luck debugging production issues with dynamically typed languages.

  • @محمداحمد-ظ1ن4ح
    @محمداحمد-ظ1ن4ح Рік тому

    that is fantastic video thanks very much

  • @beater6967
    @beater6967 3 роки тому +3

    C# as a language is very good but the supporting features and tools on Linux is poor and confusing. Until the Linux commuity adopts C# (which will not happen) it's never going to beat the PHP, Java,Python, etc on Linux. For example just try to find a Linux shared hosting provider that supports .Net Core. None.

  • @설리-o2w
    @설리-o2w 3 роки тому +2

    Corey you a good man :)

  • @kiPROBRos
    @kiPROBRos 3 роки тому

    I'm first teaching PHP5, HTML, CSS3 but i love c#.

  • @softwaretechnologyengineering
    @softwaretechnologyengineering 3 роки тому

    The limited platform scope I think makes .Net a poor choice. However .Net Core is really a game changer, now it can run on a much wider array of platforms and as a production language C# can start to compete properly with the likes of Java.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      It would only be a poor choice if you actively needed your application on other platforms. For instance, ASP.NET (the .NET Framework version) might only run on Windows servers, but it still supports any client. Xamarin always worked on iOS and Android. The only non-cross-platform client-facing piece was desktop apps and console apps. Even those worked on the most common operating system on the planet for business. Yes, .NET Core extends the reach to more platforms but that doesn't mean that the .NET Framework was a "poor choice" before.

    • @softwaretechnologyengineering
      @softwaretechnologyengineering 3 роки тому

      @@IAmTimCorey Fair point. But I am thinking about it from the perspective of finding work. The more uses for a language you specialise in and places that language can execute, the more opportunity for work there is. I ended up in .net not necessarily by choice but that's just sort of how my career panned out. I think you are looking at it from a business/employer perspective, which is valid too. Although my thoughts on that perspective is to choose the technology based on the available talent pool. No point building some sweet Haskell app if you can't find the programmers to scale out the business.

  • @MercyFromOverwatch2
    @MercyFromOverwatch2 3 роки тому

    Thank you Tim very good video

  • @juboraj1494
    @juboraj1494 3 роки тому

    Thank you sir for your valuable speech.

  • @shayanhdry6224
    @shayanhdry6224 2 роки тому

    thank you , can I do asp.net core projects ; mvc-rest api-ef core-entity-linq ... on Mac?

    • @shayanhdry6224
      @shayanhdry6224 2 роки тому

      I really love javascript for web web development but I can't choose between asp.net core and node js can you help me?

  • @michaelhenry4667
    @michaelhenry4667 3 роки тому +1

    Hello sir. I love c#. I now want to insert graphs and visualize the data through c#. But I have no idea how to insert graphs and charts in c#. Can you please make a video or atleast leave a comment about how can I do the data visualization in c# and what are the best possible options.
    Love you sir❤️❤️

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      I will add it to the list. Thanks for the suggestion.

    • @michaelhenry4667
      @michaelhenry4667 3 роки тому

      @@IAmTimCorey Thank you

    • @techno7761
      @techno7761 3 роки тому

      You have to use WPF with its classes: Canvas, Line, Ellipse, Polyline,...
      You can develop your own charts or you can use 3-d party controls like SciCharts.

  • @abofahad1149
    @abofahad1149 3 роки тому +1

    Awesome, as usual Mr. Tim corey
    This is the best answer I've heard ever about the Byzantine controversy on which best programming language. Three major factors should guide you to the right choice. Just answer these three questions frankly and go.

  • @josephjoestar995
    @josephjoestar995 Рік тому

    Is it good (over others) for data engineering?

    • @IAmTimCorey
      @IAmTimCorey  Рік тому

      It isn’t about which one is best. It is about which one do you prefer. In your career, you will probably end up working with multiple languages.

    • @josephjoestar995
      @josephjoestar995 Рік тому

      @@IAmTimCorey I didn’t ask about which is best, I’m asking if it has good application for processing data. E.g. I know using C# with spark applications is very lacklustre compared to something like PySpark

    • @IAmTimCorey
      @IAmTimCorey  Рік тому

      Sorry for the confusion. Whey you asked if it was "good over others", in my mind that means "which is the best". How good C# is in a "data engineering" depends a lot on the meaning. Some people use that term to mean "big data" like Machine Learning. C# has some really powerful tools for ML. If you are talking about processing enterprise data (the typical process of ingesting information, running it through business logic, and then storing it in a database) then C# also is really good at that.

  • @randomCADstuff
    @randomCADstuff 3 роки тому

    C# is easy to learn if you're familiar with C++; would you say the opposite is also true?

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      Learning a programming language gives you the knowledge of how to assemble logic. That applies to any other programming language, regardless of the syntax. The syntax similarities of C++ and C# make even that transition easier.

    • @randomCADstuff
      @randomCADstuff 3 роки тому

      @@IAmTimCorey My current goal is to just work with API's (and pretty simply stuff at that) but watching your video's I'm really gaining interest in C# (and programming in general). Enough so much that I might set higher goals (maybe transitioning to C++). Syntax itself isn't my bottleneck so much as piecing everything together. A few years ago I started to learn C# but was so confused about .NET framework that I threw in the towel; your video on the .NET confusion cleared that up really well! C++ being so similar to C# that the transition would be quite easy, save for memory management? Would you say that requires a big leap in ability/knowledge level?

  • @faicalammisaid3705
    @faicalammisaid3705 3 роки тому

    Nice episode I loved it thank you sir 🙏

  • @secharom
    @secharom 3 роки тому

    Thank you! 😊

  • @tiernanmorgan1753
    @tiernanmorgan1753 3 роки тому

    I've been trying to learn cross platform mobile apps with c# in xamarin forms and all ive noticed its really not compatible with anything cool and if it is such as mapbox its really glitchy. also not many resources online to learn c# above a basic level that are streamlined. but I'm still trying to learn it. always down to hear differing opinions though.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      Xamarin is becoming .NET MAUI in Q2 2022. At that point, it will be much more widely useful. They will still focus first on business use-cases so some of the "cool" things might not work but you should have all you need for a traditional business application.

  • @justcurious1940
    @justcurious1940 Рік тому

    C# looks interesting, I'm currently learning C so I can move to C ++ later, but I might just move to C# directly.

    • @IAmTimCorey
      @IAmTimCorey  Рік тому +1

      Sounds good.

    • @justcurious1940
      @justcurious1940 Рік тому +1

      @@IAmTimCorey sounds depressing, why would anyone learn C in 2023.

  • @hameedajiboro5733
    @hameedajiboro5733 2 роки тому

    How can I learn C#

    • @IAmTimCorey
      @IAmTimCorey  2 роки тому

      Here you go: ua-cam.com/video/hnjly9iBHso/v-deo.html

  • @dbdejonge2081
    @dbdejonge2081 17 днів тому

    Expected more why using C# over C++, PhP. Shy to explain why C# is better 🤔

    • @IAmTimCorey
      @IAmTimCorey  17 днів тому

      I get that, but that's not really a thing. That's like saying "a hammer is better than a screwdriver." Different languages have different strengths, but "better" isn't a great descriptor. A car and a truck will perform differently in different situations, which means one is not better than the other. That's an apples to oranges comparison. You probably don't want to tow large trailers with a car and a car will probably give you much better gas mileage for your commute. Each has its strengths depending on the situation. Languages are the same way. I personally like C# a lot and have used it primarily whenever I could in the past 15+ years (when it first came out, I didn't primarily use it). But that doesn't mean that I didn't use other languages. I've used PHP in the past 5 years and I just had dinner with a guy who built his site using PHP in the past year. I wouldn't push him to change that. In fact, I'm interested in seeing more of how he did it because it might be a solution for one situation I have coming up.
      When you are choosing a language, you need to choose one that you like, that you can get a job using, and that is continuing to grow. C# is definitely growing and changing. You can definitely get a job with C#, although each area will be different. So it comes down to if you like it.
      Personally, I like it because I can work on almost any platform using one language. I don't have to switch languages to work on client-side web, or on Mac, or on Linux, or in the cloud, or on the desktop, or on a mobile device. That's pretty incredible, and it makes me more efficient as a developer.

  • @neolegionar
    @neolegionar 3 роки тому

    Love your content !

  • @CAPS_AMERICA
    @CAPS_AMERICA 2 роки тому

    Hey Tim, should I accept a job offer that uses older tech but pays decently and the company is stable enough to last several decades, then I can upskill on my own with tech stack Im interested in, OR stay jobless indefinitely until I find a job that uses new tech and hope that by joining them I'll get to acquire the skills, possibly?

    • @IAmTimCorey
      @IAmTimCorey  2 роки тому +1

      I only have a little bit to work on, so you need to take this as just one opinion and make your own choice. However, it would seem that taking a paying job that will give you work experience is better than not having a job. You can continue to look while working for the new job. That will allow you to have money while you search. It will be important that you develop and practice your skills in newer technologies. Just remember that a LOT of jobs use older technologies. That's common because upgrading versions can be difficult.

    • @CAPS_AMERICA
      @CAPS_AMERICA 2 роки тому

      ​ @IAmTimCorey Thanks heaps Tim, your advice is much appreciated, as I consider you an authority on anything .Net/Core., and the old tech I'm talking about is web forms - VB net and net Framework, this company has a long list of inhouse-built systems a decade old, used by many departments and so they can't just upgrade/abandon these as I believe they don't have the budget to do so yet, but they are looking at Blazor for their R and D in a couple of years, as they told me. I guess it's better to have something to pay the bills for now and just resume my learning on my own free time and pace.

  • @wsitech
    @wsitech 3 роки тому

    Why do you think that C# took off instead of VB.NET? Why is it that VB and VBA which I use a lot as an Access developer, is considered by many the "annoying little brother" of programming languages?

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      I think C# fit better into the community (C, C++, Java, etc.) with its syntax so it was an easier transition to come from other languages and start in on C#. For instance, a lot of colleges teach Java, which means it isn't that big of a leap to C#. VB is really a Microsoft-only thing. It isn't very common to learn it in school and there aren't many languages that are similar to it (outside of the other "flavors" such as VBA).

  • @davidalderman3881
    @davidalderman3881 3 роки тому +1

    Tim, I actually still have a copy of VB3, which ran on Windows 3.1! LOL

  • @dimitridoroshko
    @dimitridoroshko 3 роки тому +1

    I love C#, but I don't like what it's used for: mainly backend for enterprise companies, I'm more of a visual person, so maybe I should stick with JavaScript, which I don't really like compared to C#. Let me know what you think of that down below in the comments. Thanks!

    • @focl2003
      @focl2003 3 роки тому +2

      I used to say to my colleagues, backend is like going to the gym to lift weights and frontend is like going to have a haircut. No offense here, we all need the visuals and we love it too.

    • @dimitridoroshko
      @dimitridoroshko 3 роки тому

      @@focl2003 writing Html+Css isn't the only thing regarding frontend development. Complex logic can still be in frontend as well. Maybe you think about frontend as of 1990-2010 frontend when there wasn't too much complex business logic. It's grown a lot since then.

    • @veec1539
      @veec1539 3 роки тому +1

      Blazor is an option if you like c# and frontend.

    • @dimitridoroshko
      @dimitridoroshko 3 роки тому

      @@veec1539 or TypeScript

    • @focl2003
      @focl2003 3 роки тому

      @@dimitridoroshko Yes, I'm sure of that.

  • @HuyNg2603
    @HuyNg2603 3 роки тому

    I am starting my career as a C# developer, and I am planning to use a Macbook with Apple Silicon to work. Can I have your advices in .Net development using Apple Silicon? Thank you!

    • @dimitridoroshko
      @dimitridoroshko 3 роки тому +1

      I'm sorry, but your first name is an obscene word in my native language...

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 роки тому +1

      That platform should be fine. Tim has MANY students/coders on Apple products.

    • @nghuwei
      @nghuwei 3 роки тому +1

      I believe c# or .net dev in Mac is pretty well supported. M1 arm is well supported with the new launching of .net 6 in coming months . I’m planning to develop on Mac as well.

    • @petrzurek5713
      @petrzurek5713 3 роки тому

      @ghost mall just this week, I was developing a small tool in C# and . Net Core 5 on my Macbook Pro 16 using JetBrains Rider - I dont generally like virtualization - but man that development experience using Rider was smooth as silk. Can’t recommend it enough.

  • @Donkle365
    @Donkle365 3 роки тому

    Can you explain why you like C# more than Java although you say that they're practically the same?

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      The code is very similar. However, the ecosystems are very different. I wasn't a fan of the JVM. I also wasn't a fan of the IDE options. On the other side, I like the power of Visual Studio. I also like Microsoft's focus on open-source contributions.

  • @gledsonduarte7177
    @gledsonduarte7177 3 роки тому +1

    The sad part is when you spend 5 days making a job interview test using great C# techniques and after you get hired you spend most you day leading with legacy C/C++. The bills need to getting paid.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      Yeah, that can be discouraging (it happened to me too).

  • @DJ.JINUUU
    @DJ.JINUUU 2 роки тому

    Hi Tim, I live in the Czech republic. I am working in the automotive industry as a quality engineer however, I would like to become IT Developer, Therefore i am studying WPF which I am interested in now. 1. Can I become a C# WPF Software developer as a junior developer by studying myself? 2. Is it good to study WPF which is still demanding in IT industry? 3. Can you please give me some advice to become IT Developer?

    • @IAmTimCorey
      @IAmTimCorey  2 роки тому +1

      1. Yes, you can. I did. I am fully self-taught in C#. By that I mean that I didn't go to school for it, or a bootcamp for it. However, I did learn from a lot of people on UA-cam, in blogs, and in books.
      2. There is a demand for everything. How much of a demand depends on a lot of factors, including what area you are in. Just remember, you only need one job, not millions. The less jobs there are in a field, the better in some ways. Less jobs means less competition. So learn what you want to work in for the next few years. Then apply for jobs using it.
      3. Keep learning, even after you get a job. Jobs come and go. Be prepared for your job not being there by keeping yourself trained. Your employer is not responsible for your education, you are. When you learn something, practice it. Otherwise, you haven't really learned something. Until you practice it, you won't know if you missed a part, if it works like you think it does, and what the edge cases are. It makes your learning feel slower, but it actually grows your skills much faster than someone who watches videos and thinks they have learned topics.

    • @DJ.JINUUU
      @DJ.JINUUU 2 роки тому

      @@IAmTimCorey Thank you very much. for me, honestly i work 10 hours a day, so it is a bit tough time to study after work.. but i really want to become IT developer THANK YOU VERY MUCH !!

  • @manuelgamezz
    @manuelgamezz 3 роки тому

    In the past time I was a vb developer, but i learn c# with the blog el guille from spain. And now I love c#, I'm testing net core blazor i really like. Thanks for sharing Tim, congratulation for your personal advice.

  • @ProgrammingNoob
    @ProgrammingNoob 3 роки тому +1

    Can you make a tutorial on Identity server

  • @PerryCodes
    @PerryCodes 3 роки тому +2

    Tim: There are some people that love a language you hate.
    Me: (screams) PHP!

    • @adeizayusuf
      @adeizayusuf 3 роки тому +1

      😂 😂 😂 I hate PHP 😂 😂

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +2

      And see, I don’t mind PHP. In fact, there are times when it is really useful to me.

  • @Sardor_Boboyev
    @Sardor_Boboyev Рік тому

    Please guys give me advice. I’m a new developer and I don’t choose any types of language which is the best language why I don’t choose exact language because I'm afraid to choose a specific language if you good advice tell me

    • @IAmTimCorey
      @IAmTimCorey  Рік тому

      There isn't a "best" language. Figure out what is popular in your area and what you enjoy. The intersection of those two can be a good option.

  • @earlblamier
    @earlblamier 5 місяців тому

    I used and love Python, and learning JavaScript and of course C# cross platform and Gaming!

  • @warlockCommitteeMeeting
    @warlockCommitteeMeeting 3 роки тому

    ty Tim

  • @kremelkeyz5985
    @kremelkeyz5985 2 роки тому

    Hey tim can I learn c# as my first language?

    • @IAmTimCorey
      @IAmTimCorey  2 роки тому

      Absolutely. I think it is a great first language. You can definitely learn it on your own, or if you want an easier path, you can take this course, which will take you from knowing nothing to being real-world ready as a developer: www.iamtimcorey.com/p/c-mastercourse

    • @kremelkeyz5985
      @kremelkeyz5985 2 роки тому

      @@IAmTimCorey wow really fast reply I have been really wondering what language to start with all I can hear from people is learn python start with html, the javascript I learned html,Css back in 2017 but I dropped and went to wordpress but just drag and drop nothing much until recently I completed my diploma In electrical engineering I want to do something that I feel will be of relevance and also will help he get into a software engineering pat. I thank you for your point of view...

    • @kremelkeyz5985
      @kremelkeyz5985 2 роки тому

      I would suggest you also put a roadmap to different paths because over here in Kenya bootcamps show learn git shell, then mvc I dont know what that is but I think a roadmap would be nice thanks.

  • @maurotorres5675
    @maurotorres5675 Рік тому

    I was hoping you would go into more detail about what you dont like in Java and also cover Python, because it seems like Python is taking off right now.

    • @IAmTimCorey
      @IAmTimCorey  Рік тому +1

      I'm not big on bashing other languages. Each language has its quirks and its value. Which you choose often comes down to personal preference.

  • @gamewood7800
    @gamewood7800 3 роки тому

    Sir can anybody advise me, is it possible to get a remote job with c#. I live in a 3rd world country and if I can make 12000$ annually then it would be more than enough for me. So right now I love unity development. Working on my first mobile commercial game.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      It is possible, but it is not easy.

  • @AvgDan
    @AvgDan 3 роки тому

    I like C# but sure wish it had VB's "Select Case" which is superior to "switch".

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      Why is that?

    • @AvgDan
      @AvgDan 3 роки тому

      @@IAmTimCorey Let's say you have a few number ranges you want treated the same. In VB you could have a very easy to read line "Case 2 to 3, 5 to 12, 15 to 20" match the ranges you want, whereas it's messy looking in C#.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      You can do this: case (>= 2 and =5 and =15 and

    • @AvgDan
      @AvgDan 3 роки тому

      @@IAmTimCorey I'll admit, C# switch got better at this with VS2017 / C# 7. Can you have a variable in a case statement in C# now, or is that still a problem?

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      It can use constants but not variables.

  • @elitetechacademy
    @elitetechacademy 2 місяці тому

    Thank you

  • @georgekerwood9100
    @georgekerwood9100 3 роки тому +4

    Why choose C#? Because then you can watch Tim Corey videos… duh!

  • @0xkodesage
    @0xkodesage 3 роки тому +2

    😇 C# is my Baby😘😍

  • @christianmagnus1003
    @christianmagnus1003 3 роки тому

    I start with scheme, later c++, Java desktop, later python web, Javascript and now i work with c# ,😁

  • @Mausar17
    @Mausar17 3 роки тому +1

    No one:
    Me watching this right after applying for a COBOL position: ಠ_ಠ

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому

      That can be a great niche opportunity, though.

    • @Mausar17
      @Mausar17 3 роки тому

      @@IAmTimCorey Thanks haha, my real love is C# so I'm thinking of doing stuff with it on the side.

  • @trondharaldsaltnes5122
    @trondharaldsaltnes5122 Рік тому

    You should go with Db instead :)

  • @ProgrammingNoob
    @ProgrammingNoob 3 роки тому +6

    I love C#

  • @TonoNamnum
    @TonoNamnum 3 роки тому

    Another reason is the IDE. I don't dislike java as much as eclipse lol.

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      I agree. I love Visual Studio.

  • @astrahcat1212
    @astrahcat1212 Рік тому

    Game programming (graphics programming) C++ HLSL and GLSL os the way to go, everything else C#.

  • @bhuwanmaharjan397
    @bhuwanmaharjan397 3 роки тому +2

    First comment. Oops second!!

  • @mouayadkhashfeh4967
    @mouayadkhashfeh4967 2 роки тому

    I know alot of people refuse to use C# because they hate Microsoft!!
    I really feel all of them think that hating Microsoft makes thim looks smarter and unique!!
    I did an interview with biggest Dutch company in the Netherlands who uses Java, the interviewer told me "you can switch to Java easily since Microsoft has copied Java as it is and made some stupid changes and called it C#"!!!

    • @IAmTimCorey
      @IAmTimCorey  2 роки тому

      Yeah, that's a pretty poor mindset.

  • @laythabdulkareem1887
    @laythabdulkareem1887 Рік тому

    Don't you think learning Python is way better than learning C#?? And why??

    • @IAmTimCorey
      @IAmTimCorey  Рік тому +1

      Comparing languages to find the "better" one is not going to end in any value. For example, if I compared C# to Python, and I've developed in both professionally, I would say that C# is WAY better because I've made hundreds of thousands of dollars developing for it and I've only made a few thousand in Python. But that's clearly ridiculous because it is my experience and not indicative of your experience or anyone else's. Instead, you need to pick the language that you prefer to work in. Who wants to be miserable but employed when they can be happy and employed? Personally, I don't like the work typically associated with Python, but I love the work typically associated with C#. I do like how C# still keeps my options open, since I can build for practically any platform (natively), but you need to figure out what criteria you want to evaluate them on and which one works best for you.

  • @goatnamese
    @goatnamese 2 роки тому

    C# Bonus - If you ever wanna get into games, Unity Game Engine uses C#!

    • @IAmTimCorey
      @IAmTimCorey  2 роки тому

      Yep. I'm actually considering covering Unity at some point.

  • @lixiang7349
    @lixiang7349 3 роки тому +1

    Why do you always have a worried look

  • @King-Merlin
    @King-Merlin 3 роки тому

    Deploying your projects to windows 11 store 👈Next Topic #Csharprocks #Alllanguagesrock

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      We will probably cover that at some point.

    • @King-Merlin
      @King-Merlin 3 роки тому

      @@IAmTimCorey awesome 👍

  • @ButchCassidyAndSundanceKid
    @ButchCassidyAndSundanceKid 3 роки тому +1

    C# is only good for writing applications. In terms of speed it's slower than C++/Fortran. It's also not very good at Data Science/Machine Learning area. I assume as long as Microsoft is around, C# developers wouldn't have trouble finding jobs.

    • @pedersenlasse
      @pedersenlasse 3 роки тому

      Well, the world needs applications.

    • @bity-bite
      @bity-bite 3 роки тому

      C# sometimes performs faster than C++, hint: Look at the gRPC benchmarks

    • @tomthelestaff-iamtimcorey7597
      @tomthelestaff-iamtimcorey7597 3 роки тому +1

      You seem to have a very specific perspective or lens thru which you are looking at things.

  • @shahabjoon201
    @shahabjoon201 3 роки тому

    Perfect

    • @IAmTimCorey
      @IAmTimCorey  3 роки тому +1

      Thanks!

    • @shahabjoon201
      @shahabjoon201 3 роки тому

      @@IAmTimCorey
      Thank you,
      I have learnt a lot from you, sir.

  • @MercyFromOverwatch2
    @MercyFromOverwatch2 3 роки тому

    👏👏👏

  • @harrisonwell1719
    @harrisonwell1719 3 роки тому

    C# is a great language and still growing and improving.