Is C# better than Python?

In this video we look at an overview of the similarities and differences between two of the worlds most popular programming languages, C# and Python.
🕐 Video Time Indexes
-------------------------------------
00:00:00 - Introduction
00:00:47 - C# and Python first Released - Brief Overview
00:01:50 - Similarities between C# and Python
00:02:54 - Main Differences between C# and Python
00:07:19 - What C# and Python are known for - Brief Summary
00:08:15 - Why Choose One Language over the Other?
Support the Channel 👍
------------------------------------
Buy me a Coffee ☕️
🔗 www.buymeacoffee.com/GavinLon
PayPal
🔗 www.paypal.com/paypalme/GavinLon
🪙 BitCoin
12JZYMiRq5YRDN5R5zuyYt7jMN8eTpkgns
Please follow me on Twitter @GavinLonDigital
Links Referenced in this video
-------------------------------------------------
Nuget Packages
🔗learn.microsoft.com/en-us/dot...
.NET Assemblies
🔗learn.microsoft.com/en-us/dot...
CIL Code - Common Intermediate Code
🔗learn.microsoft.com/en-us/dot...
AOT - Ahead-of-Time Compilation
🔗learn.microsoft.com/en-us/dot...
Full Playlist - C# for Beginners Course
------------------------------------------------------------
🔗 • Unity for Beginners (C...
Free Courses and Educational Videos - Gavin Lon
-------------------------------------------------------------------------------
Blazor (Webassembly) Shopping Cart Application full playlist
🔗 • Blazor (WebAssembly) a...
Full playlist - Let's Build an ASP .NET Core MVC Web Application on .Net 5
🔗 • Part 1 - Overview - Le...
Full playlist - Advanced C# Course
🔗 • Introduction - Advance...
Full playlist - C# for Beginners Course
🔗 • C# for Beginners - Par...
Blazor Server App on .NET 6 Course - FreeCodeCamp
🔗 • Blazor Server App with...
🎶All Music in this Video was Created by Gavin Lon

Пікірлер: 84

  • @OmbasaGeoffrey
    @OmbasaGeoffrey7 ай бұрын

    i choose c#

  • @GavinLon

    @GavinLon

    7 ай бұрын

    I like both languages - but my preference is definitely C#! :)

  • @avinashmendse4370
    @avinashmendse43707 ай бұрын

    i will choose C# for enterprise application. For data processing I will prefer Python

  • @GavinLon

    @GavinLon

    7 ай бұрын

    I love this comment because it alludes to the fact that the requirement is often the best driver as to which technology should be chosen.

  • @JaimeHaddad

    @JaimeHaddad

    6 ай бұрын

    Completely agree with your comment. Both are great programming languages but it will depend on what will be your final objetive.

  • @filaz5087
    @filaz50872 ай бұрын

    I think C# is a good choice because it is multi-paradigm, have performance, stability, and versatility, in addition to the support it has from Microsoft, we already have ML .NET and I think it will increasingly have greater influence on AI. But for some projects I think Python could be better option because there are a lot of libraries and good frameworks for Python, but for production in a large scale projects C# with .NET are better option.

  • @coverstack6157
    @coverstack61573 ай бұрын

    I had been a programmer (preferably windows app) since year 2000, started with pascal, c, c++, visual foxpro, tried also delphi and using visual basic until 2009. When the insurance company I had been working told us to create new app for their insurance system, our team decided to go for C# without looking back 🥰 Haven't tried python for production development, but in my opinion it is much easier to code and debug using C#. Really loved curly brackets, since it is easier and faster to find a conditional scope, haha 😉😊🥰I will choose C# any day.

  • @hammeedabdo.82
    @hammeedabdo.827 ай бұрын

    Both of them are distinguished in some areas, as you mentioned in the video, and your choice depends on your needs, but in general C# performs it better and faster than Python, and closer in syntax to Java or C++. Please,We would a comparison video between Blazor and other frameworks.

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Absolutely! Great comment! :)

  • @HMan2828

    @HMan2828

    5 ай бұрын

    Blazor is an absolute blast, it blows everything else out of the water... There are so many "failed" web frameworks built on JS, it feels insanely liberating just dumping C# right into the HTML instead of having to deal with the shortcomings and particularities of a hundred different flavors of JS...

  • @fabricehategekimana5350
    @fabricehategekimana53507 ай бұрын

    In my case I am biased because I was looking for a low level programming language with a good implementation of functional programming and I find that rust is my best choice (I use it for personal projects). I use python for my studies but I was impressed by the power of C# and his rich features

  • @GavinLon

    @GavinLon

    7 ай бұрын

    I must admit, I'm intrigued by Rust. Python is definitely a great first language to learn. A learner can learn all the fundamentals of programming using an easy to read and write language like Python. When the learner is fairly proficient with Python, the learner can then move on to for e.g. statically typed (better performing) languages like C# or Java. As.I said in the video, I personally believe, that C# is also a pretty good first language to learn too.

  • @fabricehategekimana5350

    @fabricehategekimana5350

    7 ай бұрын

    @@GavinLon I agree. C# seems to be a good language to start compared to languages like java (that seems to have a little bit of boilerplate) or rust (that have a steep learning curve). Did you heard about Nim ? Some people claims that his syntax is as easy as python but it seems to lack in the community/resources department

  • @GavinLon

    @GavinLon

    7 ай бұрын

    @@fabricehategekimana5350 thanks for your comment! I've never heard of Nim, but am always interested in learning about new technologies so will definitely investigate this. Thank you! :)

  • @johnmaguire2185

    @johnmaguire2185

    7 ай бұрын

    Just started to learn code using C#. Why would an independent newbie choose Python?

  • @GavinLon

    @GavinLon

    7 ай бұрын

    @@johnmaguire2185 My advice would be to stick with learning C#. You can always learn Python later. One criteria for learning Python as a first programming language is that the syntax is simpler than in C# but I believe C# is still an easy language to learn for a first language.

  • @JaimeHaddad
    @JaimeHaddad6 ай бұрын

    I like both programming languages, both have strengths and weakness but will depend on my objectives. The only concerning part for me is using Python for Enterprise development where I need to keep control of all of dependencies updates to avoid conflicts with my libraries when these receive newer versions. I know there ways to manage this but I feel safer with C# within the .NET environment.

  • @GavinLon

    @GavinLon

    6 ай бұрын

    I agree. Large applications with many dependencies to worry about, in my opinion, are easier to maintain over time when created using C# and .NET. Why make life any more difficult that it has to be :)

  • @pashkett
    @pashkett7 ай бұрын

    Thanks for your job. Believe it would be useful for newcomers that want to start learning programming I am using C#

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Awesome! Thanks for your feedback and you are very welcome! :)

  • @embossCoder
    @embossCoder7 ай бұрын

    Its the matter of preference. And i prefer c# for its clarity

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Absolutely - they are both great programming languages but sometimes its just down to personal preference :)

  • @christsciple
    @christsciple7 ай бұрын

    I'm a software engineer and data architect. Most places I've worked at use both Python and C#. They do great in the areas they're specifically developed for; Python for data handling/ETL and ML, C# for application development.

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Thank you for this informative comment. It seems that Python is still the most popular language for ML applications, and in some cases is used for other backend tasks. So perhaps if developers learn both Python and C#, it might give the developers a bit more of an edge in the market. :)

  • @christsciple

    @christsciple

    7 ай бұрын

    @@GavinLon For sure! Most data engineers utilize both languages for data analysis and ETL (especially if you're an SSIS user!). Python will continue to lead in ML for at least the next 5 - 10 years if not more simply because of it's robustness, ease-of-use, and plethora of ML libraries that are tailored for it. I wouldn't mind seeing more serious rivals challenge it's position in the future!

  • @iswilson
    @iswilson5 ай бұрын

    As a beginner backend developer, I have learnt Nodejs and looking for a second language to add to my stack. Between Python and C#, which of these two would you recommend.

  • @warny1978

    @warny1978

    Ай бұрын

    What do you want to do with your code ? If you don't know, i'll suggest C#, just because it is staticaly typed. It prevents a lot of errors, but it makes code prototyping a little more difficult. Code prototyping is writing code to see how it works, or if it works, before writing code with the right guidelines.

  • @astrahcat1212
    @astrahcat12126 ай бұрын

    I've been developing games in Unity for well over a decade, using C#, I like it it does what it needs to, but the problem I have is that if I was using an interpreted language like Python or Javascript for the game logic, I probably would have taken years less time to get more done. Interpreted languages are better for game development, then, in my opinion. You need a C++ backend if you want to get on consoles (full portability), a potential thing you could do is to use PyGame, that uses a C++ backend using SDL2, include the source in your project folders. What I wanted to do for future games, since I work on 3D games, is to use Blender for level editing, export to a text file, then read from it into PyGame. To be honest using this way it would have been faster for development than using Unity overall.

  • @GavinLon

    @GavinLon

    6 ай бұрын

    Sounds very interesting. I'm no expert when it comes to PyGame, but do have a fair amount of experience with Unity and Blender. Thank you for your point of view! I also really enjoy creating and modelling in Blender! In fact Blender could be given as a great reason to learn Python! :)

  • @dirkschannel5817
    @dirkschannel58177 ай бұрын

    I use and like both. Besides web development I use them for different use cases. We automated our infrastructure with python - things where performance is not an issue. There is no real versus…

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Sounds sensible! Both technologies are powerful but using each of them appropriately based on their strengths can yield optimal results!

  • @HMan2828
    @HMan28285 ай бұрын

    Just to clear up a tiny little thing, C# is statically typed, but DOES support late binding through the dynamic type... As in, in C# you have the option, vs in Python it is always dynamically typed...

  • @GavinLon

    @GavinLon

    5 ай бұрын

    In Python you can use static type hints but only to verify correctness of the source code at compile time. Python is a dynamically typed language. C# is statically typed but the dynamic type can be used for dynamic typing (in order circumvent the type system).

  • @vxsniffer
    @vxsniffer29 күн бұрын

    1:45 boolean values in Python starts with capital letter (True/False)

  • @GavinLon

    @GavinLon

    29 күн бұрын

    That's true, I mean True. Sorry about that! Oops, my bad!

  • @abbassiziad1379
    @abbassiziad13794 ай бұрын

    C# as a language is great and the DotNet ecosystem is well established. but, it is only suitable for enterprise-level projects and it is used only by Microsoft. I think the learning curve of Dotnet framework is big enough to Think 1000 times before wasting your time learning it. This time could be used to learn or doing many other things.

  • @GavinLon

    @GavinLon

    4 ай бұрын

    Thanks for your comment :) I respectfully disagree with almost everything stated in your comment (of course I do agree that C# is a great language) but I do appreciate you taking the time to comment. DotNet is very versatile and the learning curve is not so steep in my opinion. :)

  • @broadshare
    @broadshare7 ай бұрын

    They are both great programming languages which can be used for different purposes based on the application. I use both but C# is my main programming language

  • @GavinLon

    @GavinLon

    7 ай бұрын

    I agree! They are both great programming languages that can be used for a multitude of different types of requirements. Perhaps Python is a better choice for some requirements and C# for others :)

  • @rafapioli75

    @rafapioli75

    7 ай бұрын

    Me too!

  • @ulrich-tonmoy
    @ulrich-tonmoy7 ай бұрын

    Really Unity now For game dev i would suggest C++ or the scripting language of the engine of your choice

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Unity is great for C# developers. If you are proficient in C++ then Unreal Engine is also an amazing game engine to learn.

  • @hotlineoperator
    @hotlineoperator4 ай бұрын

    I choose C#, even there are thinks I do not like - { curly braches } - syntax where my variable name is somewhere in the middle, not in first - Microsoft, not fan of update policy, and UI

  • @GavinLon

    @GavinLon

    4 ай бұрын

    Thank you for providing your personal thoughts on C#. I also choose C# :)

  • @fakeITDevTeam
    @fakeITDevTeam7 ай бұрын

    I prefer to use structured languages/frameworks, like c#/dotnet, typescript/angular. It will be easier (for me) to maintain more complex projects.

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Really great point! I totally agree!! Facilitating Easy maintenance is super important especially for large projects.

  • @hmdz150
    @hmdz1502 ай бұрын

    C# is a more beautiful language but Python is a more practical tool; I learned C# about 20 years ago when the language was version 1.0 . It was one of the hottest programming language of its time and made life much easier for C++ developers who wanted to use the dot net framework to develop applications for Windows. But it was only after I learned Python and worked with the open source community that I realized thing could be done much faster (in Python) than they could in C#. Python is a much more practical language (for me) mainly due to its vast ecosystem and free libraries available. There is almost a Python library for anything you can imagine. And Python code runs (almost) on any operating system. I have developed many more projects in Python that made their way to the market and became running systems than I did with C#. You worry about performance of your code? There is a Python library for it too!

  • @GavinLon

    @GavinLon

    2 ай бұрын

    Thanks so much for this detailed comment. I really enjoyed reading it! :)

  • @JohnSmith-po5pj
    @JohnSmith-po5pj7 ай бұрын

    me personally, Python is my least favorite language of all.... I use c# daily, and front end libraries

  • @GavinLon

    @GavinLon

    7 ай бұрын

    That's a strong view. Thank you for sharing! My main language for frontend and backend programming is C# :)

  • @FilipCordas

    @FilipCordas

    7 ай бұрын

    python is God awful only reason someone uses it is because he wants to impress non-programmers that you do something smart. All good Python is written in c.

  • @mehmeteminkrgn4108
    @mehmeteminkrgn41086 ай бұрын

    I am a Pythonian here to learn C#. Hi.

  • @GavinLon

    @GavinLon

    6 ай бұрын

    Great! You are very welcome! :) Hi back at you!

  • @zimcoder
    @zimcoder7 ай бұрын

    Yes

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Short answer but to the point! Thank you! :)

  • @FilipCordas
    @FilipCordas7 ай бұрын

    You can do same terrible dynamic stuff in c# it's just not used much because dynamic is terrible.

  • @GavinLon

    @GavinLon

    7 ай бұрын

    That is true. In C# you can use the dynamic type or simply define variables as objects and avoid strongly typing your variables altogether but of course by doing that you are just circumventing the benefits of using a strongly typed language. Strongly typing your code ensures better performance and better robustness at runtime! :)

  • @Doggy_Styles_Coding
    @Doggy_Styles_Coding7 ай бұрын

    Why did the Python programmer get lost in the forest? Because they couldn't find the right path and kept getting "None"!

  • @GavinLon

    @GavinLon

    7 ай бұрын

    lol - Hopefully jokes like these won't start any trouble in the comments section :)

  • @ZombieJig
    @ZombieJig6 ай бұрын

    The best first language to learn is C. I wouldn't want to write C on a day to day basis but in terms of learning the fundamentals you can't go wrong.

  • @GavinLon

    @GavinLon

    6 ай бұрын

    My first language was actually C and then Visual Basic! You are right it is an excellent first language because so many languages are of course based on C. :)

  • @omerbirler2351
    @omerbirler235122 күн бұрын

    Is this even a question? It would be more meaningful if we compare it over Java

  • @GavinLon

    @GavinLon

    22 күн бұрын

    I think it is a worthwhile comparison - the video highlights important differences like dynamically typed vs statically typed (and the significants of this).

  • @WaliaIbex
    @WaliaIbex7 ай бұрын

    I like k it is superior .

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Very obscure language :)

  • @ahmedbenissa5982
    @ahmedbenissa59824 ай бұрын

    Comparing the two is an insanity

  • @GavinLon

    @GavinLon

    4 ай бұрын

    lol - well I think it is potentially a good way to teach the fundamental differences between a popular dynamically typed programming language and a statically typed programming language.

  • @SrinivasGanta-tm1zh
    @SrinivasGanta-tm1zh2 ай бұрын

    C#, ez

  • @drewsarkisian9375
    @drewsarkisian93757 ай бұрын

    No.

  • @GavinLon

    @GavinLon

    7 ай бұрын

    Okay :)

  • @babutschi
    @babutschi8 күн бұрын

    Python is the most overrated programming language ever

  • @vitalyl1327
    @vitalyl13273 ай бұрын

    Python is a very low bar. Chances are that any randomly chosen language will be better than Python.

  • @amiriko6220
    @amiriko62203 ай бұрын

    C# much more better language as it runs much faster than Python and fully OOP, it has truly primitive type and can save data on stack while python cannot.

  • @GavinLon

    @GavinLon

    3 ай бұрын

    It surprises me that C# isn't more popular. I think it is likely to become way more popular in the near future!

  • @iswilson
    @iswilson5 ай бұрын

    As a beginner backend developer, I have learnt Nodejs and looking for a second language to add to my stack. Between Python and C#, which of these two would you recommend.

  • @GavinLon

    @GavinLon

    5 ай бұрын

    Python is a great languages but I admittedly have a bias toward C# and .NET. For backend I would recommend C#, it's dynamically typed which means better performance and also potentially greater robustness at runtime! Its easy to debug and also has the support of Microsoft! Python is perceived to be easier to learn, but I think C# is a fairly easy language to learn :) If you are going into data science and machine learning, perhaps Python is a better choice although you can also use C# for those purposes.

  • @iswilson

    @iswilson

    5 ай бұрын

    @GavinLon ok. My only concern with C# is that I use Ubuntu and I feel like C# and its frameworks would work better on windows than other platforms.

  • @GavinLon

    @GavinLon

    5 ай бұрын

    @@iswilson .You can certainly run .NET on Ubuntu although I haven't yet personally done so. My recommendation is to perform a test, with basic C# code on Ubuntu and see if it performs as expected. You could do the same with Python. Learning both Python and C# is another option - this can make you more marketable as a developer :)