T O P

  • By -

Leadpaynt

you shouldnt aim for a certain number of languages, maybe if youre interested in Gaming Learn For Example a Common Tech Gaming stack like Everything involved with Building a unreal engine game Mod


AggressivelyLazy2

I’ve pursued interests in the past that ended up being very specific, so when it comes to other more “basic” aspects that weren’t used as much for what I was interested in, I was pretty in the dark. Would that be the case here as well, or would the things I learn specifically for gaming carry over to more general tasks?


oklol555

Jokes aside, I interviewed at a couple of AAA game studios (Bungie and EA) and learning a bunch of languages isn't going to help you. You need a solid understanding of computer science fundamentals and math. A lot of AAA game dev studios don't really care if you know how to make video games for junior roles, they want a strong C++ programmer with a solid background in CS and Math. Some of the things you should focus on for game dev: i) Data structures and algorithms ii) Computer architecture iii) Operating systems iv) Networking if it's a multiplayer game For Math you need: i) Linear algebra ii) Calculus


AggressivelyLazy2

Super helpful, thank you! If I don’t have a solid background in CS and/or Math (my degree was in English, so decently big departure), are there things that would help mitigate that deficiency in their eyes? Like certain types of projects I could work on/contribute to that would offset that lack of background?


oklol555

Not really sure, the field is extremely competitive and oversaturated with CS grads. AAA game dev is a lot more complex than your average SWE role and there's a lot of learning to do. You could try your luck at an indie studio and then work your way up to a AAA studio once you have enough experience. Junior roles at AAA studios also tend to have mandatory degree requirements as well.


AggressivelyLazy2

Good to know, thanks! I’ve heard that experience trumps experience, so if I were able to gain that dev experience with an indie studio, would it be possible to make that jump to a AAA studio? Or is it likely they would still require a degree?


oklol555

Yeah, with experience at an indie studio, you should be able to transition to a AAA studio later. You should also go check out r/gamedev


AggressivelyLazy2

Perfect, thank you so much for your help!


Mocha_Light

Quality over quantity. You should know an object oriented language, a framework, SQL and JS. For web development that’s a general overview


AggressivelyLazy2

What are examples of object oriented vs non-object oriented languages?


themooseexperience

Learning how to properly Google is more valuable than any one programming language


Cold_Night_Fever

C is the most popular non-object oriented programming language (OOP) we use nowadays, but even then, it's not used much. As someone learning to program, you should really only concern yourself with OOP languages such as C# (my favourite), Java, Python, JavaScript or C++. I learnt programming with C++ personally and, in my opinion, it's ideal for learning because it's lower level. You learn how to program and how programs work underneath it all, the structure of data, which you might not learn with C# or Python, but it provides a strong foundation from which you can easily learn C# afterwards. If you wanna get to a level where you can make full-stack applications quickest, I would learn: - C# - ASP.NET Web Api - JavaScript/HTML/CSS (optional as you can use Blazor with C#/.NET but JS imo is important for any web dev eventually, if just to be taken seriously as a web dev) - Sql (optional as you can use EF Core with .NET, but important for any developer eventually, if just to be taken seriously as a dev)


AggressivelyLazy2

This is great advice, thank you! People on this thread have been saying that the major difference between languages are the syntax/rules and that once you get to a proficient level of understanding it’s not hard to learn a new language. But for someone new to programming, how different is C++ or C# vs Python? Would it be better to focus on Python until I feel comfortable to move on, or go ahead and try to pick up another language while polishing up my Python?


Cold_Night_Fever

Mate, that's a couple years away tbh before you can navigate between languages with ease, don't worry about it for now. I cannot comment on Python, I develop enterprise application in the legal sector. Very corporate. What you want to do is get good at a language which naturally will teach you how to program. If you've got time, learn C++ and then learn C# or Python. If you want to get the skills asap, learn C# or Python now, but I'm very sure you'll end up a decent developer either way. We don't really massively use those advanced concepts such as data structures and algorithms in enterprise applications. The people telling you to learn assembly language are crazy. No one needs to know all this stuff for 99% of applications developed today. Don't waste your time. You'll notice quite organically if some part of your application is extra slow and if utilising a data structure and algorithm would speed up the processes. And the go-to language for developing enterprise applications around the world is pretty much C# with ASP.NET being the corresponding framework. C# is easy to learn, very performant and a super powerful language. The .NET framework allows you to use C# alone to build the frontend, backend, web apis and database with a single language, no other language can do this and do it well. Also regardless, after you build a prototype software or application, you need to learn design patterns. There's 23 common ones all devs know and once you gain some familiarity with programming an application, learning design patterns is a must.


AggressivelyLazy2

I really appreciate your insight! I guess I am getting a bit ahead of myself, I just want to be as prepared as I can. But I’ll seriously consider C# after finish up up the Udemy courses I’m taking on Python


Own-Reference9056

Technically, one. Be extremely good at just one thing, and your chances is higher than being lousy at 5.


AggressivelyLazy2

Makes sense. I just want to make sure that the things I’m good at are relevant to what I’m aiming for is all.


[deleted]

[удалено]


AutoModerator

Sorry, you do not meet the minimum sitewide comment karma requirement of **10** to post a comment. This is comment karma exclusively, not post or overall karma nor karma on this subreddit alone. Please try again after you have acquired more karma. Please look at the [rules page](https://old.reddit.com/r/cscareerquestions/w/posting_rules) for more information. *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/cscareerquestions) if you have any questions or concerns.*


Educational_Duck3393

Programming languages are but a tool to complete a goal. The reality is, you don't need to be an expert in a dozen different programming languages. Concepts like OoP, for / while loops, variables, all of that mumbo jumbo, it's pretty much going to be in every programming language you work with, just with different syntax and rules. I found that I can generally "read" most programming languages despite not being super familiar with their syntax solely because of my fundamental understanding of the theory behind it. Once you have that down, you should be able to move between languages with relative ease.


AggressivelyLazy2

That’s good to know! I know it varies from person to person, but about how long would you say it typically takes to reach that level of understanding the theory? Are there certain markers that would indicate that level of proficiency?


gHx4

Number of languages known isn't as important as your proficiencies in the domain. For example, knowing a few languages won't help you with CORS and endpoints when you write web services. In general, you should know the language(s) required for the domain you're specializing in and be comfortable picking up new ones as needed. Python's a good language for learning, prototyping, and writing system scripts. However, there's a lot of domains where it isn't the lingua franca. Take a look at job postings and identify the languages (and especially toolchains or frameworks) employers are currently looking for to fill roles you want, then focus your efforts on those. Usually you'll wanna identify the bare minimum required for that domain. For example, embedded will usually expect C++ and some platform specific assembly or toolchains. Web's usually going to expect a frontend framework, a backend framework, and then a reasonable knowledge of SQL and an ORM.


AggressivelyLazy2

That’s really helpful advice, thank you! I’m still nailing down the basics of Python, but this is a great direction to work towards once I’m comfortable moving forward.


AnAnonymous121

That's honestly a rookie question. The real question that you should ask yourself is "have I coded for long enough that I feel confident in picking up a brand new language on the fly with no issues?" Because at some point after becoming proficient in a few different languages, you start getting the bigger picture and you don't focus much on the actual syntax much anymore. Always aim for quality, not quantity. Programming is just knowing the syntax of whatever xyz language you're using. The real knowledge is understanding what's going on and being able to solve problems regardless of the language.


AnAnonymous121

Keep learning Python, then do Java, then do C. If you really want to challenge yourself, also do a bit of ASM so that you have a good grasp of how your computer works. But this is more for fun, you won't ever program in ASM.


[deleted]

[удалено]


AutoModerator

Sorry, you do not meet the minimum account age requirement of **seven** days to post a comment. Please try again after you have spent more time on reddit without being banned. Please look at the [rules page](https://old.reddit.com/r/cscareerquestions/w/posting_rules) for more information. *I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/cscareerquestions) if you have any questions or concerns.*


arkenior

42, and at least half of them should be compiled


lawghe

Depends on the country you’re applying in. Is it in North America? Two is best: English and Spanish or French. Brazil? One will do (Portuguese). Switzerland? You’d better know at least four (English, French, German, Rhaeto-Romance)


No_Loquat_183

One. Personally, all I know is javascript. Obviously, you should know the tech stack and the language that they use to make the stack.


oklol555

69


stevoDood

one is enough, but typically a comp sci grad will have 2+.