Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Can you learn both full stack web development and traditional desktop application programming?

Discussion in 'General Discussion' started by CodeSlug, Oct 9, 2021.

  1. CodeSlug

    CodeSlug

    Joined:
    Feb 17, 2018
    Posts:
    132
    In my country most jobs are for full stack, some jobs are for if you have lots of experience as a software developer and know C, C++ etc

    BUT my Degree in Information Systems requires me to learn C and Python for Hacking and also MATLAB for Image Processing.And lots of Python for Machine Learning and Web Design

    So what does one do here?

    I was given advice on reddit that trying to learn both will end in failure and that you need to focus on either Full Stack or traditional software development because either will take a lifetime to master.
     
  2. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    Python is used with Unity, and having C experience is entirely useful for pretty much anything that has it in the name.
     
  3. CodeSlug

    CodeSlug

    Joined:
    Feb 17, 2018
    Posts:
    132
    Ok thanks, so you are saying it is entirely possible to be a full stack developer and a application developer?

    Where I live there are lots of shipping companies that are always looking for either full stack devs or application devs.
     
  4. hippocoder

    hippocoder

    Digital Ape Moderator

    Joined:
    Apr 11, 2010
    Posts:
    29,723
    You need to be really clear what your target career is first.
     
    Joe-Censored and angrypenguin like this.
  5. stain2319

    stain2319

    Joined:
    Mar 2, 2020
    Posts:
    417
    In the beginning you're not expected to know or learn everything. It sounds like you're at the beginning of a degree program. The reason you're being told to take classes in all those areas isn't because you're going to master them all. The idea is to expose you to various disciplines and different aspects of the field.

    As you gain education and experience you will likely find yourself drawn in one direction or the other and it may not even be the direction you thought of when you first started. Your job right now is just to gain a broad understanding of many related concepts. Specialization and focus on a particular sub-category will come in time.
     
  6. angrypenguin

    angrypenguin

    Joined:
    Dec 29, 2011
    Posts:
    15,514
    I'm not one of them, but I know people who've learned both of these areas and it certainly hasn't ended in "failure". Also, you don't really need to "master" something to work in the relevant field effectively. These fields are all constantly evolving anyway. You'll never finish learning them.

    If your goal is to get a job sooner rather than later then I agree that, in addition to your formal education, focusing on learning whatever gives you more opportunity for employment is a good plan. If that means you need some web apps in your portfolio then learning C/C++ is not the shortest path to achieve that, learning how to make web apps is. And starting with tools you're most likely to get employed to use is a smart move.

    That's to start with. In the long term, learning a bunch of different tools, environments and languages is great. It'll equip you to learn new tools more quickly when the need arises, see things from more perspectives, approach problems in a broader variety of ways. It'll help you avoid "Law of the Instrument"-based mindsets, and potentially better equip you to take a lead position in multi-disciplinary teams (though technical knowledge is only one part of that).
     
    stain2319 and CodeSlug like this.
  7. Owen-Reynolds

    Owen-Reynolds

    Joined:
    Feb 15, 2012
    Posts:
    1,921
    That seems more like career advice, not technical. People hiring a Senior Full Stack Engineer like to see that you've got 2 years job experience with every cloud system, every minor web language and framework and so on, even if you could learn most of them in a week. Your last 2 jobs should have been Jr. Stack Engineer and Stack Engineer, for the appropriate # of years. Working at a game company would tend to be a minus (unless you were running their servers). As a practical matter, a dedicated working Full Stack Engineer might have a relationship with people at microsoft or Amazon, for when Cloud problems occur ... and other things you can't teach yourself.
     
    Martin_H and Joe-Censored like this.
  8. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    This industry changes very quickly. The plentiful jobs today, won't necessarily be the same in a few years. A few years ago, jobs for maintaining Unity projects may have asked specifically for JS experience. Today exactly 0 of those same jobs do.
     
    Martin_H likes this.
  9. pekdata

    pekdata

    Joined:
    Mar 16, 2019
    Posts:
    114
    For me most learning always happened during work and it was always just random things what the company needed at the time or what some customer needed. I learned to do something for some project and then possibly never touch it again. It's not all going to be hugely beneficial afterwards. I'm not complaining though it just happens that way.
     
    Ryiah and stain2319 like this.
  10. stain2319

    stain2319

    Joined:
    Mar 2, 2020
    Posts:
    417
    This describes most of my career pretty well.

    Sir Richard Branson has been quoted as saying, "if someone asks you if you can do something, just say yes, then figure out how to do it."

    Obviously this won't be good advice for a surgeon, but in my career in software and IT it has served me incredibly well.
     
    zombiegorilla and Ryiah like this.
  11. kdgalla

    kdgalla

    Joined:
    Mar 15, 2013
    Posts:
    4,357
    My degree focused on software development in C and C++. My first job was in web development. The company had a server admin, though, so I wasn't working full-stack (more like 80% stack).

    Anyway, it took me less than two months to get comfortable. learning C# and Javascript, event-based-programming, client vs. server-side content, all that stuff. The skills that you learn in one discipline significantly carry over to the other. They're basically just variations on the same thing.
     
  12. Owen-Reynolds

    Owen-Reynolds

    Joined:
    Feb 15, 2012
    Posts:
    1,921
    That seems more like advice for a company -- get the contract and then figure out a way to either do it or at least get some of the money and blame someone else. A famous example is after IBM bought a BASIC interpreter from early microsoft (just Gates&Allen) they asked if those two had an operating system. They didn't, but lied and said they did. Then they pirated one (they actually borrowed the code from IBM's first choice, CP/M). When IBM found out they were in too deep and didn't need the bad press, so paid off Gary Kildall (who wrote CP/M).

    For a trained software person it's not so much "yes, I can do [that thing I can't do]". It's more that most computer stuff isn't that different. You can almost always skim it and say, for example, "OK, angular is a fake back-end like REACT and I already know javascript and that pipes are a trap; so it's fine". Or Swift has these long explanations of its pointer types but it boils down to "reference counting" if you've learned that system.
     
  13. Lurking-Ninja

    Lurking-Ninja

    Joined:
    Jan 20, 2015
    Posts:
    9,913
    Ouch. You know that this story is completely not true?
    - Gates & Allen referred IBM to Kildall
    - Kildall didn't take the meeting seriously
    - Gates & Allen did not steal CP/M code, they bought 86-DOS, which had the same interface, but not the same code and made by Tim Paterson
    - Kildall never sued either Paterson or Microsoft (which means it was never proven that any of the CP/M code was copied) and AFAIK not even IBM
    - there was one attempt to look into this, fairly recently, one forensic researcher found no copy in source code (although the guy worked for and against Microsoft before, so his research may or may not accurate)
    - the only things was proven that some API was very similar (but also API look and feel does not fall under copyright - although this decision was made after the events, so maybe a court in the 90-ies would have decided the other way - I love the US judiciary system...)

    I'm not against holding people accountable for their actions, especially not overpowered people, but I also would like to stay with the facts.
     
    Last edited: Oct 16, 2021
  14. Owen-Reynolds

    Owen-Reynolds

    Joined:
    Feb 15, 2012
    Posts:
    1,921
    If you're interested I think "ShowStopper" has the details, or another early book about microsoft. The story about Kildall not taking it seriously is fake (supposedly he was flying an airplane when they came to his house; but that's silly -- IBM had telephones -- they didn't cold-call people at their houses). My recollection is IBM finally found out microsoft didn't actually write that OS, they tracked down who did, found out QDOS probably copied enough from CP/M, and paid them off. Another really fun part is microsoft's contract with QDOS -- I think they were going to pay a royalty per customer, but technically there was only 1 customer -- IBM (who then sold it to their customers). You come to the obvious conclusion -- the leader of microsoft was, much like Steve Jobs, great at making shady deals and only so-so technically.

    Bu the point is a _company_ can lie and say "yes" when the answer is really "no". Gates doing that is what started microsoft. Whereas an employee can't do that trick -- they can't buy a new skill the way an company can hire someone new.
     
  15. zombiegorilla

    zombiegorilla

    Moderator

    Joined:
    May 8, 2012
    Posts:
    8,969
    Me too. My first job as an engineer was from doing just that. I was savvy with spreadsheets and some hardware tech, and my manager asked if could write Pascal applications. I said yes. After work that weekend I bought 3 books on it and had a very, very long weekend. This was a while ago, I don't think I could get away with it today.


    It absolutely is possible. I know many people who can/have/do both. They are amazing programmers, but still it is doable if you put in the effort.
     
    Lurking-Ninja likes this.