Catch up on stories from the past week (and beyond) at the Slashdot story archive


Forgot your password?
Education The Internet Technology

Ask Slashdot: It's 2014 -- Which New Technologies Should I Learn? 387

An anonymous reader writes "I've been a software engineer for about 15 years, most of which I spent working on embedded systems (small custom systems running Linux), developing in C. However, web and mobile technologies seem to be taking over the world, and while I acknowledge that C isn't going away anytime soon, many job offers (at least those that seem interesting and in small companies) are asking for knowledge on these new technologies (web/mobile). Plus, I'm interested in them anyway. Unfortunately, there are so many of those new technologies that it's difficult to figure out what would be the best use of my time. Which ones would you recommend? What would be the smallest set of 'new technologies' one should know to be employable in web/mobile these days?"
This discussion has been archived. No new comments can be posted.

Ask Slashdot: It's 2014 -- Which New Technologies Should I Learn?

Comments Filter:
  • by crutchy ( 1949900 ) on Wednesday January 22, 2014 @06:27AM (#46033937)

    dunno what retard modded parent down... maybe he's just an asphole

    as much as javascript is as shit as python, it's like that annoying relative that you just can't get rid of so you may as well get used to

    client-server has been at the forefront for years and will continue to be the case, particularly as clients evolve in the mobile arena the only fixed baseline is the trusty ol' web browser

  • JS and HTML5 (Score:3, Insightful)

    by Anonymous Coward on Wednesday January 22, 2014 @06:38AM (#46033983)

    By what you said, I guess I would recommend you to start with HTML 5 and Javascript. Both are growing, well stabishled, not very hard to learn and very usefull (for desktop, mobile and even server-side using node.js).
    Learning something about OOP is good too. I love Ruby, so that's my first choice. But java and others are ok too.

    Good luck.

  • Javascript! (Score:4, Insightful)

    by Anonymous Coward on Wednesday January 22, 2014 @06:41AM (#46033993)

    Learn Javascript. It's everywhere:
    * client-side in browsers as little helper fragments attached to buttons, etc
    * used for building rich client applications within browsers
    * can be used server-side with things like Node.js
    * is embedded as a scripting language into various tools

    And it's actually not a bad language. The underlying concepts are simple and elegant, although some features for large-scale programming are lacking (no module system, etc).

    It's also fun to learn, because you can achieve interesting/amusing results within a browser with just a few lines of javascript.

    With some solid javascript knowledge for both client and server-side style code, a lot of job opportunities will open. Learning something like Python is an alternative, but even then employers who look for Python programmers for web-based apps will usually also want javascript skills...

  • by rodrigoandrade ( 713371 ) on Wednesday January 22, 2014 @06:41AM (#46034001)
    You got 15 years experiene writing C code, good luck finding a "whiz kid" who can do it better than someone who's been doing it for that long.

    You said it yourself, C isn't going away anytime soon. Stick to it as your bread and butter.

    If you want to learn to program for Android/iOS, that's great, but do it as a hobby. Employers nowadays want 10 years experience on a tech that's only been available for 5 years (yes, it's that crazy), so by the time you get up to speed, the market will have already moved on to the next shiny thing.

    You started with "It's 2014..." What will you do in 2025? Like I said, when it comes to your bread and butter, stick to what you know best.
  • by Viol8 ( 599362 ) on Wednesday January 22, 2014 @07:01AM (#46034059) Homepage

    ... learn C++, Objective C or Java, all of which should cover you for mobile development in one form or another. And if you learn C++ you'll be a bonus to any project that hires you since too many C++ devs these days don't have a clue about low level bit twiddling or memory management - its all frameworks and objects for them without a real appreciation of whats going on under the hood.

    If its web you want then HTML5/javascript.

  • by cyborg_zx ( 893396 ) on Wednesday January 22, 2014 @07:05AM (#46034077)

    Pretty much - let the hipsters chase the shiny tech. When the littered remains of abandonded technologies is cleared away the old stalwarts will still be there because there hasn't been any *real* innovation in languages for a long time. The basics were invented early on.

  • mobile devices. (Score:3, Insightful)

    by hooiberg ( 1789158 ) on Wednesday January 22, 2014 @07:06AM (#46034085)
    Make sure not to mistake 'technologies' for 'programming languages'. For now, I would say programming on mobile devices. Now that many people have mobile phones with apps and all that, and tablets becoming fairly popular. Learn what has to be taken into account with mobile device architectures, and learn the languages used to program on them.
  • by ebno-10db ( 1459097 ) on Wednesday January 22, 2014 @07:32AM (#46034173)

    Employers nowadays want 10 years experience on a tech that's only been available for 5 years (yes, it's that crazy)

    a/k/a H-1B job listings - meant only to prove that there are no Americans to fill the job. The real disadvantage Americans have is that we have no time portals which allow you to get 10 years of experience with a 5 year old technology. Some other countries are obviously filled with these time portals, as companies are able to find people meeting the job qualifications in those countries.

    FWD.US is obviously on the wrong tack with their "think of the children approach", when what we need is a program to make time portals widely available.

  • by GauteL ( 29207 ) on Wednesday January 22, 2014 @07:33AM (#46034175)

    Unless you are simply passionate about web technologies and just really want to work with it, stop trying to chase the latest and greatest here. You will find it remarkably hard to compete for the Javascript/web/whatever jobs as the 20 year old wizz-kids will have more experience than you in web-stuff but will probably need much less money.

    Instead focus on improving what you already do, and expand into new areas of the embedded sphere. All that fancy web tech will in the end use and require embedded devices. We will get many more embedded devices, rather than fewer of them. Furthermore, try to expand your embedded domain knowledge. Perhaps there are some really exciting new embedded devices (drones, wireless home management devices, etc) you'd enjoy working on as a hobbyist? Expand into other embedded languages as necessary to work on the range of devices you like (i.e. Objective-C if you want to write iOS apps). You will only really learn properly if you have something concrete you want to do anyway.

    The point is; unless you hate what you're doing, you should work on ways to make all those 15 years of embedded experience count. Chasing some Javascript web-stuff will not achieve that.

  • Re:Universal... (Score:5, Insightful)

    by Opportunist ( 166417 ) on Wednesday January 22, 2014 @07:40AM (#46034201)

    If you can lie and bullshit people into thinking you know what you're doing while at the same time you can keep talking and talking 'til they believe you based on how they don't have the foggiest idea what you're talking about but can't afford to look like they don't because they think their job depends on understanding you 'cause, well, you're expensive... ...congrats, you're a consultant.

  • by Tom ( 822 ) on Wednesday January 22, 2014 @07:58AM (#46034271) Homepage Journal

    Check if there's a Free Software project you're interested in, or you have a project of your own that would benefit.

    Learning is one thing, practical experience is what matters. So unless you actually use those skills, they are close to worthless. And learning and using something is a lot easier if it is linked to something that matters to you.

  • by olau ( 314197 ) on Wednesday January 22, 2014 @08:21AM (#46034355) Homepage

    Python is a really nice language. For a Python backend, you could start with the Django tutorial []. Go through that and a Python tutorial, and try to remember not to program Python as you would C, and you'll have a good start.

    For the front end, you'll need to spend some time with HTML, and learn a bit of Javascript/jQuery for any dynamic parts. And if you want it to look any good (and you should care about this because people on the web are generally less forgiving of not caring about the looks), you'll also need to figure out how to mimic a graphical style from a designer with CSS. For hobby stuff, you can just mimic some existing designs, if you're doing it as a business you'd probably want to pay someone to come up with the design, or buy a pre-existing one.

    It sounds like a lot of work, but Python + Django is actually lots of fun because you can get a lot done in little time (there's a video of someone doing a wiki site in 20 minutes), and the whole front-end thing is also quite fun because a browser is an interactive beast so you can quickly change things around and see things happen graphically.

  • by Taco Cowboy ( 5327 ) on Wednesday January 22, 2014 @08:54AM (#46034501) Journal

    The question that TFA asked "Which technology should I learn" is in itself, a wrong question.

    The author should have asked him/herself "What do I want to do 10 / 20 / 30 years from now?" and then proceed from there.

    There will always be technologies - many old technologies will still be around and some new technologies will be discovered / created - and once the author knows what kind of situation he/she wants to be in the future, he/she can start picking which route to go

    Many people have chosen the wrong tech and end up in the wrong career, but at the end of the day, it's up to that person to "right the wrongs" and to make the best situation out of the mudane, for its his/her life and he/she should be the master of his/her own life

    Take me, for example. Some 40 years ago I ended up in the States and did not know what to do. At that time there wasn't much for me to chose - genetic wasn't available, laser tech wasn't mature, and many fields were closed to me, a person who is not a born American.

    So I ended up in computing. I dabbled in both hardware and software ever since.

    Would I choose computing if I got the chance to start over ? Perhaps not. But, as I have said, back in the early 70's there wasn't a lot of tech fields opened to a nerdy kid from China.

  • by Anonymous Coward on Wednesday January 22, 2014 @09:10AM (#46034571)

    Which really just means that he posts things that go against the groupthink so prevalent here. It's why I post anonymously now. It seems that anyone not interested in a self congratulatory circle jerk is expeditiously shoved in a corner on this site.

  • by JoeMerchant ( 803320 ) on Wednesday January 22, 2014 @09:54AM (#46034837)

    For the next 30 years, 2014 to 2044, you should know: basic health and hygiene, home maintenance and construction, cooking, gardening, maybe farming and animal husbandry if you are going to own some land.

    It doesn't hurt to understand finance, a little bit about the legal / political system.

    If you don't want to be held hostage every time your car breaks down, learning some mechanical skills is good too.

    Oh, yeah, and these computer things - that's a good way to earn money, use your brain in the manner of the oldest profession: become whatever people are paying for, and be ready to change and adapt as the market changes. Look back to 1984, predict from that point what skills you should have learned for 2014, the next 30 years are going to be just as volatile on the tech front, but those other skills have been valuable assets for hundreds of years (70ish for the cars), and will continue to be valuable into the future.

  • by hodet ( 620484 ) on Wednesday January 22, 2014 @10:29AM (#46035043)

    Along these lines, I once heard someone say that asking what the world needs is the wrong question. You should ask yourself what you are passionate about, then do that, because what the world needs is people with more passion.

  • by digitalchinky ( 650880 ) on Wednesday January 22, 2014 @10:31AM (#46035059)

    Correct. But, you could flip that around and ask yourself how many times during the last decade or so have you done things the harder way, or reinvented the wheel, because you didn't understand HTTP headers well enough to leverage existing functionality?

    I write medical imaging software, most MR / CT studies have anywhere from one to a few thousand images, every server call you can avoid makes for a happy radiologist. This might mean wedging various DICOM fields in the headers when thumbnails are downloaded so you can rapidly populate the UI, build up annotation layers, sort thumbnail stacks, all kinds of cool stuff.

  • by Opportunist ( 166417 ) on Wednesday January 22, 2014 @11:40AM (#46035681)

    As a C programmer, I had to descend into the depths of ASM about twice in the decade I have been developing. But KNOWING about it sure helped me avoid stack overflow security errors, mostly because I knew just why they pose a security threat.

    The point is not that you have to USE it. The point is to know about the basics to understand WHY you do some of the things you do the way you do them. Rote programming is one of the problems of our times, where programmers do stuff a certain way because they were taught to do it that way without understanding the basic idea behind the reason to do it that way.

  • by Dareth ( 47614 ) on Wednesday January 22, 2014 @12:30PM (#46036205)

    The guy just wants to publish a mobile app and get rich... using "the smallest set of 'new technologies" possible.

    The answer is obviously the entire iPhone/Pad development environment and the entire android development environment.

    No need to worry about blackberry or windows phone so that cuts down the requirements a little bit.

Honesty is for the most part less profitable than dishonesty. -- Plato