• Visitors can check out the Forum FAQ by clicking this link. You have to register before you can post: click the REGISTER link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below. View our Forum Privacy Policy.
  • Want to receive the latest contracting news and advice straight to your inbox? Sign up to the ContractorUK newsletter here. Every sign up will also be entered into a draw to WIN £100 Amazon vouchers!

C# for new projects? Wise choice in the new cloud world?

Collapse
X
  •  
  • Filter
  • Time
  • Show
Clear All
new posts

    C# for new projects? Wise choice in the new cloud world?

    At my current gig my departments management have made the decision to build new projects using .Net and c# as the language. I personally can't help but think this is a bit of a strange choice. My main reason being that the cloud is basically Unix with Windows Server taking more and more of a back seat. Containers are also a major part of the new dev stack and, as far as I am aware, Windows containers are still not as functional as their Linux counterparts.

    Yes, .Net Core is multi platform .... but would guys choose it for green field (eventually cloud ... AWS and GCP) projects?


    #2
    Originally posted by mogga71 View Post
    At my current gig my departments management have made the decision to build new projects using .Net and c# as the language. I personally can't help but think this is a bit of a strange choice. My main reason being that the cloud is basically Unix with Windows Server taking more and more of a back seat. Containers are also a major part of the new dev stack and, as far as I am aware, Windows containers are still not as functional as their Linux counterparts.

    Yes, .Net Core is multi platform .... but would guys choose it for green field (eventually cloud ... AWS and GCP) projects?
    What language would you use instead - they really aren't many that allow static binding that don't have similar issues.

    For reference everything I do is usually in c# - I'm just comfortable with it and Kestrel is a great web engine provided you place a nginx or apache in front of it.
    merely at clientco for the entertainment

    Comment


      #3
      Originally posted by eek View Post

      What language would you use instead - they really aren't many that allow static binding that don't have similar issues.

      For reference everything I do is usually in c# - I'm just comfortable with it and Kestrel is a great web engine provided you place a nginx or apache in front of it.
      Thanks for the response eek.

      Personally don't think static binding is a real issue. Pros and cons with both that and dynamic binding?

      I would probably just opt for Python these days. A large part of modern development work centres around simple APIs retrieving and sending data to and from databases and messaging systems. Python's FastAPI is the puppies nuts for this.

      For the record, I am mainly a database guy.

      Comment


        #4
        I'd use C# personally but then I know C# well (secondly only to C++ which I personally wouldn't choose!)
        My worry with all the trendy languages is they seem to announce another one every month. You learn a new language, find some devs, then in 5 years it's a relic. Meanwhile C# will still be here in 5 years.
        Originally posted by MaryPoppins
        I'd still not breastfeed a nazi
        Originally posted by vetran
        Urine is quite nourishing

        Comment


          #5
          Originally posted by d000hg View Post
          I'd use C# personally but then I know C# well (secondly only to C++ which I personally wouldn't choose!)
          My worry with all the trendy languages is they seem to announce another one every month. You learn a new language, find some devs, then in 5 years it's a relic. Meanwhile C# will still be here in 5 years.
          Python will still be around - but it's Python and given that it believes white space is for anything beyond layout - I avoid it like the plague.

          All the OP is really doing here is looking for a reason to pick his pet language rather than another person's favourite - but c# has a lot of buy in from firms because well it's been around a long time and doesn't have the this weeks framework is xyz that Javascript / Node is prone to.

          merely at clientco for the entertainment

          Comment


            #6
            Originally posted by eek View Post

            Python will still be around - but it's Python and given that it believes white space is for anything beyond layout - I avoid it like the plague.

            All the OP is really doing here is looking for a reason to pick his pet language rather than another person's favourite - but c# has a lot of buy in from firms because well it's been around a long time and doesn't have the this weeks framework is xyz that Javascript / Node is prone to.
            God, I hate Python so much.

            Comment


              #7
              Originally posted by vwdan View Post

              God, I hate Python so much.
              even Microsoft are pushing it as a cloud scripting language.
              See You Next Tuesday

              Comment


                #8
                Originally posted by eek View Post

                Python will still be around - but it's Python and given that it believes white space is for anything beyond layout - I avoid it like the plague.

                All the OP is really doing here is looking for a reason to pick his pet language rather than another person's favourite - but c# has a lot of buy in from firms because well it's been around a long time and doesn't have the this weeks framework is xyz that Javascript / Node is prone to.
                LOL ... Not really eek ... my pet language is GO. I actually rather like c# but my major concern is it's place in an increasingly Unix based server environment.

                Comment


                  #9
                  I have never understood these types of discussion. Just choose the most appropriate language for the task in-front of you. C# is actually pretty good. It is well maintained, tried and tested and well integrated with a major operating system. 5 minutes googling shows that around 25% of servers serving the internet are windows. That is a massive number of windows servers. Why wouldn't you choose a programming language created by the same vendor as your OS?

                  C# isn't going anywhere. If you want to write desktop app (and yes, even now people use desktop apps), what is there better for your solution?

                  My current project is implemented all in GO. It works for us, tiny docker containers or lambda functions. But that was a decision made on an evaluation of what we were doing. If we were doing something integrating MS Exchange or their AD federation for example, why would I not use C#?

                  Comment


                    #10
                    Originally posted by RasputinDude View Post
                    I have never understood these types of discussion. Just choose the most appropriate language for the task in-front of you. C# is actually pretty good. It is well maintained, tried and tested and well integrated with a major operating system. 5 minutes googling shows that around 25% of servers serving the internet are windows. That is a massive number of windows servers. Why wouldn't you choose a programming language created by the same vendor as your OS?

                    C# isn't going anywhere. If you want to write desktop app (and yes, even now people use desktop apps), what is there better for your solution?

                    My current project is implemented all in GO. It works for us, tiny docker containers or lambda functions. But that was a decision made on an evaluation of what we were doing. If we were doing something integrating MS Exchange or their AD federation for example, why would I not use C#?
                    The thing is all managed services in AWS run on Linux only. Yes you can run AWS Lambda using .Net core on Linux, but the results of running .Net on Windows isn't always the same as running .Net on Linux. For example, all locale names and codes are different between the OS.

                    C# is a 2nd class citizen to AWS managed cloud services.

                    If the primary goal is a fully managed AWS solution, C# and .Net core are not the best fit.

                    Python is probably the best language for 100% AWS solutions.
                    First Law of Contracting: Only the strong survive

                    Comment

                    Working...
                    X