Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

Re: What language should I learn?

by Jenda (Abbot)
on Jan 08, 2012 at 15:44 UTC ( #946874=note: print w/replies, xml ) Need Help??

in reply to What language should I learn?

Depends a lot on the operating system(s) you expect to need the apps to run at. I would not say the transition from Perl is easy, but C# is finally worth looking at after the addition of generics, lambdas, anonymous types, extension methods and rudimentary type inference.

Shame there's a lot of cruft in the libraries from the old times. Especially the lack of generic types at the time the libraries were designed forced lots of "suboptimal" decisions. So they force you to typecast where there should be no need to, they force you to implement arcane interfaces where a simple lambda would be much more convenient, ...

And the Roslyn project that'll let you hook into the compilation process looks quite interesting.

Enoch was right!
Enjoy the last years of Rome.

Replies are listed 'Best First'.
Re^2: What language should I learn?
by nikosv (Chaplain) on Jan 08, 2012 at 18:06 UTC

    Aside from that C# is a modern and flexible language you might also get to to choose it, or another .NET language for that matter, because of .NET's solid ASP.NET MVC or ADO.NET frameworks

    Especially the lack of generic types
    generics might be good for most occasions but they cannot do math, so you either have to rely to trickery or,ironicaly, to the dymanic type!

    Another criteria for choosing a language is if you can forsee if it will last against time, something that Perl has proven, while you can never be sure with Microsoft.
    There is even talk of Dumping .NET and its managed environment as a whole and go back to native code and C++ !

    ++ for the Roslyn link

      The linked article, while quite interesting and certainly at least partly true, does make some weird statements.

      To be clear HTML/JavaScript is unproven technology.

      Huh... what?!? This August 2011 Web Server Survey found nearly two hundred million active sites running different webservers. That tells me that at least HTTP and HTML are used by millions of people. And this statistics page know of at least 1,659,185 sites using Javascript.

      It may be relatively unproven technology for Microsoft, since - for the longest time - they brewed their own soup called "Internet Explorer 6". But in the last few years they gotten rather good at adhering basic standards.

      If the future of Windows apps is HTML5/JavaScript then Windows has no future.

      What the...? At the time of writing this node, there is a whole caboodle of spezialized hard- and software that only runs on windows which will probably take decades to replace. Microsoft's market share may drop in the regard of "number of windows installation" or they may not. On the other hand, in respect to gaming and office solutions they are a strong contender - especially if they really start pushing HTML/Javascript based SaaS.

      As for the notion that client-side operating system choice will get more and more irrelevant: Yes, i hope so. That's why i try to develop everyone of my projects when possible as a web based tool. It saves in continuous porting to different operating systems - and leaves the user a choice, because all (s)he needs is a HTML compatible browser. The application doesn't limit the user preference on the prefered operating system anymore, and i don't have to care either.

      Whatever is really going to happen, the next few years will be interesting.

      "Believe me, Mike, I calculated the odds of this succeeding against the odds I was doing something incredibly stupid… and I went ahead anyway." (Crow in "MST3K The Movie")

      ADO.Net itself was a big step ... in the wrong direction. LINQ to SQL and Entity Framework/LINQ to Entities may use some part of the ADO.Net libraries internally, but thanks god give you a saner API.

      I don't understand what do you mean by your "generics might be good for most occasions but they cannot do math".

      The article sounds hugely exaggerated. C# ain't going anywhere any time soon. See eg. Building your first Windows Metro style app using C#, C++, or Visual Basic

      See? WinForms are gone, WPF is gone, but the language under the UI may still be C#.

      Enoch was right!
      Enjoy the last years of Rome.

        ADO.Net itself was a big step ... in the wrong direction

        I will disagree with that,it is valuable when you want to be in control of your SQL and data access and bindings,while I generally don't like ORM's like EF

        I don't understand what do you mean by your "generics might be good for most occasions but they cannot do math"
        check Math on Generics with C#’s dynamic keyword

        See? WinForms are gone, WPF is gone, but the language under the UI may still be C#.
        On the other hand are gone VB6, IronRuby,IronPython,Mono?,Silverlight?,while COM+ is resurected from the dead!History has a habit of repeating itself.And there is a strong push towards C++ as a mainstream language for the win platform

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://946874]
[Your Mother]: Stick with what you know. Or post a SOPW and if it's not complicated I guarantee someone will answer; me if it's straightforward and no one else gets it better first.
[1nickt]: ++YourMother (Grammar Vigilante of Bristol)
[Lady_Aleena]: Um, how does grep do multiline? print "$file:$_" if grep { /get_(array|hash| data)\(.+\)/ } $_; only returns the same 18 lines the command line grep does.
[Lady_Aleena]: my scratchpad has what I have so far.
[choroba]: what do you mean by multiline?
[Discipulus]: thanks 1nickt!
[choroba]: grep is a filter, it selects elements from a list based on a boolean condition
[moritz]: you need to read the file in one go to do a multiline regex match
[erix]: ha ha, I like the Vigilante
[Lady_Aleena]: Forget it. I'm getting angry with it.

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (11)
As of 2017-05-23 19:45 GMT
Find Nodes?
    Voting Booth?