Coffeehouse Thread

84 posts

"Microsoft Out of Favor With Young, Hip Developers"

Back to Forum: Coffeehouse
  • User profile image
    Shining Arcanine

    http://developers.slashdot.org/story/10/07/06/2140253/Microsoft-Out-of-Favor-With-Young-Hip-Developers

     

    It looks like Microsoft is losing mindshare in people coming out of college. I cannot say that this is surprising, although the connection that is made between that and the KIN phone is something I find surprising, as I had no idea that it even existed before it was cancelled.

     

    If Microsoft is losing mindshare in this area, then what languages are the people coming out of college using? At my university, all of the computer science majors graduate with a certain level of proficiency in Java, because it is required in almost all programming courses in the curriculum, with the exception of games programming. If young developers are not using Microsoft software, then I know for certain that they are not using .NET. In which case, are these developers doing programming in C/C++, Java or some other language, like Python or Objective C?

  • User profile image
    spivonious

    I had zero exposure to Microsoft languages before my first job out of college. My education helped to me to quickly grasp VB6 and later VB.NET so I was up-and-running at my job in less than 30 days.

  • User profile image
    itsnotabug

    at my college, mis/cis (ie... school of business) students were automatically enrolled in msdnaa in the intro programming classes. the required courses include vb.net, c# and ms-sql exposure all using ms tools had through msdnaa.

     

    computer science (ie... school of engineering) students have access to msdnaa but are not automatically enrolled. they have to seek it through the university student liason if they want access to ms tools (most do it just to get the os and other niceties).  computer science students intro classes were taught with python, then different track options for java and c++, depending on the student's choice. of course nothing stops a cs/engineering student from taking an mis/cis course, but since it wasn't a requirement of the degree, it rarely happened and vice/versa (mis/cis students rarely took cs classes).

  • User profile image
    Bas

    Hey guys I haven't seen a lot of scare-stories about dwindling interest for Microsoft technologies lately, can anyone recommend some?

  • User profile image
    algorith

     The university I attend does C/C++ for most courses (x86 and MIPS for low level courses) in the CS program and all Linux (Redhat to be specific) with g++ and Emacs based. We have some teachers who are Linux lovers, going as far as to distribute discs of the OS in class, others don't care. Since I have a minor in MIS (Business college), I took 2 programming classes there, and they use VB for one class and Java for the other, but MIS majors are not coders per se. 

     

     I've been doing C# after getting into XNA. I wanted to learn some new tech in the summer and decided on C# because MS gives me a free copy of VS2010 and C# is an accessible and productive language. Being hooked ever since. But most students don't care for MS technologies since the school stays clear of it. I think the Dreamspark and MSDNAA initiatives are a good start, XNA is also a nice push. MS needs to show how easy it is to build complex apps with their tools to win over more students. 

  • User profile image
    JeremyJ

    An anti-Microsoft article from slashdot?  Say it isn't so!

  • User profile image
    Dr Herbie

    Meh.

     

    There has always been a conflict between what's taught on a CS Course and what business wants out of developers.

    15 years ago there were articles complaining that CS graduates were terrible developers; they got CS Degrees that taught them how to design a CPU, or mathematically prove an algorithm was correct, but that didn't teach them how to follow a spec from a client.

     

    Now CS degrees have moved the skillsets they teach closer to what business wants, and it's just the toolset that differs. Business isn't going to suddenly change its ways to suit the CS courses taught.

     

    Herbie

     

  • User profile image
    exoteric

    Bas said:

    Hey guys I haven't seen a lot of scare-stories about dwindling interest for Microsoft technologies lately, can anyone recommend some?

    If you don't love open-source software when you're young, you have no heart.

    If you don't love some Microsoft software when you're older, you have no brains.

     

    Keep on loving! Wink   (sorry)

  • User profile image
    brian.​shapiro

    What makes them hip?

  • User profile image
    blowdart

    brian.shapiro said:

    What makes them hip?

    Not using fuddy duddy MS platforms.

     

    Oh. Hey. Wait a minute ....

     

  • User profile image
    Maddus Mattus

    Since when is socks and sandals out?

  • User profile image
    ManipUni

    I cannot speak to this article but I know a lot of college graduates and people in masters programs, I would say C#, VB.Net, and Java are all very popular. The reason why is very simple - all three are free to learn and have great resources for students. Universities seem to be adopting C# from Java however.

     

    I'm not sure what a "young, hip developer" is. I think "hip developer" is an oxymoron within its own right.

     

    It is worrying how unpopular ASM, C/C++, and other lower level languages are outside of the elite technology schools - some of which barely give a good programming education as is.

     

    edit: Seems the NY piece is a bunch of lies that misquoted Tim O' Reilly. What he actually said was that young startup companies are very interested in mobile platforms - iOS 4.0 and Android. Which sounds like it could be true, mobile platforms are cheap relatively speaking to create revenue generating software for. I would say that Microsoft might be falling behind in that area as they lack any real competition in the mobile area (despite what you read on the C9 forums)/

  • User profile image
    jamie

    ManipUni said:

    I cannot speak to this article but I know a lot of college graduates and people in masters programs, I would say C#, VB.Net, and Java are all very popular. The reason why is very simple - all three are free to learn and have great resources for students. Universities seem to be adopting C# from Java however.

     

    I'm not sure what a "young, hip developer" is. I think "hip developer" is an oxymoron within its own right.

     

    It is worrying how unpopular ASM, C/C++, and other lower level languages are outside of the elite technology schools - some of which barely give a good programming education as is.

     

    edit: Seems the NY piece is a bunch of lies that misquoted Tim O' Reilly. What he actually said was that young startup companies are very interested in mobile platforms - iOS 4.0 and Android. Which sounds like it could be true, mobile platforms are cheap relatively speaking to create revenue generating software for. I would say that Microsoft might be falling behind in that area as they lack any real competition in the mobile area (despite what you read on the C9 forums)/

    for us it was different .... all design students - in all colleges - are taught on MACs - illustrator.

     

    we were a web shop - and pc design ad shop.  the photoshop work learned was good - but illustrator in our world is like a word perfect file in a word shop = akkk!

     

    the only thing i hate more than ballmer is illustrator Tongue Out   bloated eps - die! die! die!

     

    * i agree with jobs again = adobe SUCKS  (eps = die   PFB = die  FLV = die etc)

     

  • User profile image
    magicalclick

    UC never used VS anyway. Community college on the other hand are more MS oriented.

     

    Leaving WM on 5/2018 if no apps, no dedicated billboards where I drive, no Store name.
    Last modified
  • User profile image
    Bass

    There was actually a .NET class at the University I went to. It was only an elective though.

     

    I agree it's because Univerisites perfer open source. CS depts (or at least good ones) are all about scientific collaboration and openness. Microsoft's vast assortment of binary blobs really doesn't fit into that.

  • User profile image
    PaoloM

    Whups.

     

    http://www.google.com/buzz/timoreilly/j61qZ42h6rB/Frustrated-by-flamebait-NY-reporting-in-Microsoft

     

    Congrats for falling for this so easily, Shining Arcanine. Expressionless

  • User profile image
    Larry Osterman

    Dr Herbie said:

    Meh.

     

    There has always been a conflict between what's taught on a CS Course and what business wants out of developers.

    15 years ago there were articles complaining that CS graduates were terrible developers; they got CS Degrees that taught them how to design a CPU, or mathematically prove an algorithm was correct, but that didn't teach them how to follow a spec from a client.

     

    Now CS degrees have moved the skillsets they teach closer to what business wants, and it's just the toolset that differs. Business isn't going to suddenly change its ways to suit the CS courses taught.

     

    Herbie

     

    Interesting. I was interviewing a lot of those graduates 15 years ago and I don't remember ever having that problem.  Most of the people I interviewed were bright, enthusiastic and knew the kinds of things I expected them to know. 

     

    That might be the result of really good pre-screening on the part of HR though.

     

    What worries me is the number of new developers I see that don't seem to have a grasp of fundimentals.  Developers who would write:

    void MyFunction(string input)
    {
        string dest;
        int dotIndex;
        while ((dotIndex = input.find(".")) != string::npos)
        {
            dest.push_back(input.substr(0, dotIndex-1);
            dest.push_back("\.");
            input.erase(0, dotIndex);
        }
    }

    instead of:

    void MyFunction(string input)
    {
    string dest;
    const char *inputString = input.c_str();
    int dotIndex;
    while (*inputString)
    {
    if (*inputString == '.')
    {
    dest.push_back('\');
    }
    dest.push_back(*inputString);
    inputString += 1;
    }
    }

    Note: Forgive the typos above - this is a real example of code someone wrote during an interview (resurrected from memory, so the code is likely to not work).  Even if the code isn't used in a performance critical area, IMHO the original example isn't nearly as clear as the second one (the first one also isn't correct since it doesn't copy the string if there aren't any '.' characters, but we won't go there).

     

  • User profile image
    Sven Groot

    Larry Osterman said:
    Dr Herbie said:
    *snip*

    Interesting. I was interviewing a lot of those graduates 15 years ago and I don't remember ever having that problem.  Most of the people I interviewed were bright, enthusiastic and knew the kinds of things I expected them to know. 

     

    That might be the result of really good pre-screening on the part of HR though.

     

    What worries me is the number of new developers I see that don't seem to have a grasp of fundimentals.  Developers who would write:

    void MyFunction(string input)
    {
        string dest;
        int dotIndex;
        while ((dotIndex = input.find(".")) != string::npos)
        {
            dest.push_back(input.substr(0, dotIndex-1);
            dest.push_back("\.");
            input.erase(0, dotIndex);
        }
    }

    instead of:

    void MyFunction(string input)
    {
    string dest;
    const char *inputString = input.c_str();
    int dotIndex;
    while (*inputString)
    {
    if (*inputString == '.')
    {
    dest.push_back('\');
    }
    dest.push_back(*inputString);
    inputString += 1;
    }
    }

    Note: Forgive the typos above - this is a real example of code someone wrote during an interview (resurrected from memory, so the code is likely to not work).  Even if the code isn't used in a performance critical area, IMHO the original example isn't nearly as clear as the second one (the first one also isn't correct since it doesn't copy the string if there aren't any '.' characters, but we won't go there).

     

    I would've just written:

     

    void MyFunction(const string &input)
    {
    }

     

    Since both functions you wrote actually don't have any externally visible effects. Tongue Out Also you need to escape the backslash.

     

    Seriously though, I can understand how someone might want to use find for this problem, but erase? Surely most people that know about find should know it accepts a second parameter to tell you where to start searching?

     

    Also if this is really performance critical I wouldn't let dest auto-resize like that, I'd call string.reserve with at least the size of the input string. And I'd make input a const reference parameter. Smiley

     

    And lastly, I'd use wstring. Death to ANSI code pages! Wink

Comments closed

Comments have been closed since this content was published more than 30 days ago, but if you'd like to continue the conversation, please create a new thread in our Forums, or Contact Us and let us know.