Soldato
- Joined
- 24 Sep 2007
- Posts
- 5,180
Wouldn't C# or Java be a bit tough to learn as someone with zero knowledge on computer languages?
No.
Wouldn't C# or Java be a bit tough to learn as someone with zero knowledge on computer languages?
So you're saying that even if I want to become a software developer or a DBA, I can access those career paths through support roles within a company? as well as other I.T roles
1. What would be the best steps for me to take in the next year or so in order to obtain a software developer job (realistically of course)?
2. Would learning Python over the next year be the best first step?
Rossuk89 if you want to have a bash at programming there are lots of free courses from some of the best Uni's in the world.
You could check out cs50 for a beginner course -
https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
I understand. I just keep reading about Python being a good language to learn to understand concepts and theories.
Wouldn't C# or Java be a bit tough to learn as someone with zero knowledge on computer languages?
Rossuk89 if you want to have a bash at programming there are lots of free courses from some of the best Uni's in the world.
You could check out cs50 for a beginner course -
https://www.edx.org/course/introduction-computer-science-harvardx-cs50x
sorry, forgot to reply to this
At some companies, yes. I'm not taking about support in general but specifically application support where you'll interact a lot with developers etc..
I'm not sure what would necessarily be best but if I were in your situation I'd probably look at some EDX/Coursera/Udacity certificates - maybe one of the Udacity Nanodegrees would be worth a look as they also have a career service and involve building a bunch of projects you could then show to an employer. You could then look at working on some personal projects too and publishing them... I can't say for sure but that ought to at least land you an interview somewhere for some junior role.
As for language I think any of Java, Python and C# initially would be fine - you might be constrained intiially by whatever the MOOC certificate you chose to pursue uses anyway. I'd also get various basic technical skills up to scratch - learn about databases, networking etc..
^^^ that is probably a good place to start... (similar courses on udacity and coursera too)
Just one note - if you've got the time available... MOOCs are often watered down in comparison to proper university courses. For example if you want the full fat Stanford introduction to Computer Science courses then they're available here:
https://see.stanford.edu/Course
you won't get a certificate but they're the actual lectures given to Stanford students.
Same applies to the machine learning course on coursera and the full Stanford version contained there if you do that later on.
I think Python would be a particularly bad language to start with. It's fine as a scripting/web programming language, but I think it teaches some bad habits if it's your first language.
I started with python and switched to java after doing some reading and job searching in my local area, barely any job adverts asked for experience with python. Potentially a good thing to have though as it could make you stand out a little but primarily they'll be looking for skills in the languages they ask for.
I've not done CS50 but it seems like it would be a good intro, yes these courses will tend to have small assignments etc.. to complete. It is usually free to watch the videos but some of them charge for certificates. If the marking/assessment is done by a human too then you'll need to pay too. But generally the lectures/teaching material is free. you don't have to have a certificate but it might be useful to have one or two and just self study other things... the SEE courses I linked to don't have certificates but are a solid introduction to computer science (they cover Java in the first course then C++ in the second two + some LISP)... you'll not get a bit of paper but you'll certainly get some good learning material there. On the other hand having a certificate from a udacity nanodegree complete with coursework could be useful... then maybe try your own projects too.
I just want to learn the one that will most likely land me a junior developer role and get me an interview to be honest.
It depends on the course - you're asking questions now that you could find the answer to by looking on the websites of the specific courses. Yes I think something like the CS50 course, SEE courses and maybe a udacity nanodegree would be a good start, that is why I suggested them. As for how employers will look at them, that will vary - some employers clearly value udacity nanodegrees for example, if you look on the website you'll see some of the modules are created by employers. Likewise there are employers creating industry related courses on EDX too. Other employers might not have even heard of them.
These aren't generally considered to be the equivalent of formal education though, I wouldn't want to give that impression, but they're at least a way of demonstrating that you've studied something (especially if you've got coursework, projects etc.. to show for it). So even if an employer isn't familiar with MOOCs being able to explain what you've learned or being able to show what you've created could be useful regardless.
Java or C#
They're basically interchangeable for beginners.
Possibly C++ if you're feeling more adventurous.
It's interesting to read how people who have a good understanding of one language can learn another one quite fast.
This is a function that calculates the factorial in C#.public static int factorial(int n) {
int fact = 1;}
for (int i = 1; i <= n; i++) {
fact *= i;}
return fact;
This is a function that calculates the factorial in C++.public static int factorial(int n)
{int fact = 1;}
for (int i = 1; i <= n; i++)
{fact *= i;}
return fact;
int factorial(int n);
int factorial(int n)
{int fact = 1;}
for (int i = 1; i <= n; i++)
{fact *= i;}
return fact;
factorial n :: Integer -> Integer
factorial n = product [1..n]