Codecademy Forums

What is the best Path to learn Python?

I’ve wanted to learn Python for a few years now because I want to have this skill as a way to make money and have a solid career in programming. I’m currently a Cybersecurity Account Manager “Sales” and I need to be strategic with my time and courses because I don’t have much free time. I want to spend 5 to 7 hours a week on learning Python and want to know what is the best training to take here at Codecademy? Also, if I just learn at Codecademy is it possible with only this training to be job-ready?

I look forward to your recommendations and advice.

/Brandon

this question has been answered several times already? The answer won’t change if you keep asking the question.

seems to be unclear, but it was an earlier topic you created i was referencing:

Does the Python Course Prepare you for Work

there is no way to shortcut experience and practice.

Just get started and see if its challenging enough/you learn enough, otherwise find something more challenging. This image came to mind based on your question:

4 Likes

Are you having a rough day or do you personally not like the question? I didn’t see an answer when I did a search through the forum to answer this question

For example
No, Codecademy will not be enough education or training to be job-ready. Codecademy is only enough to give you a foundation from there you will need to read this book… take these other training courses… as well Codecademy’s sample projects we make you do are not enough, you will also need to develop other projects like…

I guess you did not understand my question and actually proved my point about regarding being strategic. To give you an analogy that you relate to coding. This is like me as a client saying I need a website created. You as the developer saying “Ok, without asking me any questions or scoping out what I am using the website for, what colours I want, what images…etc.” Then designing a website and coming back to me saying “What do you think about this one…” me telling you that is not right and you and I go back and forth wasting a lot of time versus if you would have scoped out the project it would be more efficient and the project would be completed in a shorter amount of time.

a more accurate quote is “you fail to plan you plan to fail”

.

1 Like

I think what @stetim94 is trying to say here is that this question has already been answered multiple times (go ahead and search it), and he doesn’t want to answer it again. Which makes sense to me… I would advise going ahead and seeing if the answer is already posted on the forums; if not then you can come back here.

Basically, look at the course estimation of how long it is. That’s about how long it will take, and there is no getting around that if you actually want to learn. If you have 5-7 hours a week free to devote to the course, then you’ll actually learn something, but don’t go looking for ways to do this course quicker(I’m specifically thinking of the Python 3 which is 25 hours long).

For course recommendations, I would advise taking the Python 3 course(if you don’t have Pro like me, take Python 2 instead). This course will take you from the fundamentals to the more advanced and will teach you most of the stuff you need to know. You said that you don’t have a whole lot of time and I can totally understand that. Unfortunately, there(like I said before) is no shortcut. If you want to learn Python, you have to devote a lot of time to it.

Hope this Helps!

4 Likes

Thanks @stevencopeland for your response.

I did do a search and as I mentioned I wasn’t able to find a detailed answer regarding Python as I provided an example. Don’t get me wrong I might have missed it but from my search I wasn’t able to find a detailed answer to provide that type of insight.

I think there I might not be clear “I need to be strategic with my time and courses because I don’t have much free time.” Let me clarify. “I need to be strategic with my time” meaning I have about 1 hour a night to studying Python programming and with all the resources, books, online courses, YouTube videos I don’t have the time to do a trial and error to try to figure out what might be a good resource to learn from. Also, without knowing Python programming at all, knowing what is a good resource. They all might sound good to me but end up being either to advanced, too technical…etc This could take months with the limited amount of time I have just to figure out what is a good resource/training. Now doing a Google search I have found different books and online courses but they seem subjective on which one to start with. Codecademy has come up as a good starting point. I just want to make sure that I am not spending 3 months on Codecademy and find out that I took the wrong program in Codecademy. I should have taken another program that would have provided the education I needed which is now going to be another 3 months to 6 months. So it’s not how fast, it’s more not picking the wrong resource and finding out I personally choose the wrong resource/training and waisted my own time.

I am sure we have all been there through IT. We get one book read through it and it’s good, but then you find another resource which you wish you would have started with because it covered everything in the first resource and do so much more.

I agree with you I know learning Python will take work and time. I planning the next 6 months to 1 year just to get the basics down. I appreciate how much work it takes.

Quick question, what about the “Full Catalog” the Computer Science or Data Science programs? Would they not be a better path to take?

3 Likes

Oh, I see what you mean… I can understand why you’d want to pick the right topic then!

I think so, because those paths are completely dedicated to learning python(or at least the computer science one is), and they’ll take you on a deeper dive than just the regular python course. The reason I didn’t recommend those was because I hesitate to recommend paths without knowing whether you are a Pro user. But if you are, I definitely recommend taking the path that says it will teach you what you want to know.

3 Likes

yeah I have made that mistake before on different IT topics and spent months on learning. Then someone pop’s up and mentions a better resource.

Yeah I have no problem paying for the Pro course as long as like you understand I’m going to get a good foundation to be able to apply after I’m done. I do appreciate it’s only the beginning and there is so much more to learn. I just want to make sure once I’m finished this program I can hit the ground running and start working, even if it’s smaller projects and jobs I don’t care, just as long as I can start working.

To be honest I’m doing this for a few reasons

  1. I work in Cybersecurity sales and my job is very volatile. If I don’t hit my numbers I get let go. So I want to work on programming now while I’m working so that I have options if I am out of work.

  2. I have heard rumours that Python is used in Cybersecurity for pentesting, scripting, data analytics…etc so working on this skill now I feel will help me with job security later. Either finding a job or free lancing. This way I’m truly never out of work.

This is why I am planning this out and trying to be mindful of my time because while I am doing this I am also working and learning about Cybersecurity i.e. CISSP, NDR, EDR, SIEM, IAM, PAM…etc

1 Like

I was going to reply here and ask “Why Python?”, but I think you’ve covered this off pretty well here…

Python, as a language, is getting continually more popular because it’s versatile and pretty ■■■■ powerful. You can do a lot with it, and it’s certainly useful in the cybersecurity space.

That being said, cybersecurity is a pretty broad field. I’d say that Python is certainly not a bad place to start, and it’s a very straightforward language to learn as a beginner.

I don’t think, though, that you’re asking - or we’re answering - the right question.

Before we get to the question of whether, or how and where, you ought to learn Python, it would be a good idea for you to ask yourself another question - what do I want to be doing in cybersecurity?

For example do you want to be working for a cybersecurity firm, carrying out pen tests or vulnerability analysis for the firm’s customers? Perhaps you’d prefer to be in an analyst position, working in a SOC and keeping everything as secure as possible? Or do you envision yourself as a bug hunter, tracking down as-yet-undiscovered flaws or exploits in other peoples code?

If you know what you want to achieve, we can probably give you better advice on how to get there.

Equally, if you’re not aiming to end up in the cybersecurity space but you just want to get work as a developer, knowing that means we can advise accordingly. :slight_smile:

There are other cybersec qualifications besides the CISSP, and it’s not a cert for everyone! :slight_smile:

4 Likes

Good question, I am working towards managerial/consulting roles for Cybersecurity because my position is “Cybersecurity Account Manager” but the company I am working for is more hunting than farming. So I’m doing more cold calls and building up opportunities. The past company I worked for I was doing more account managing which was going through a advisory role and helping accounts with their Cybersecurity solutions. I am working towards more of that role. While having a back-up on a technical side this way if anything happens I have a technical background that I have developed that I can use. I use to be in IT support so it’s in my wheel house just haven’t been doing much of it in the past 4 years. That is why I wanted to focus on Python programming like you mentioned, over time if I can develop the skills needed in Python it will still keep me in the Cybersecurity industry just in a different way. What interest me is pen testing, AI and machine learning. Seeing these new technologies coming out more is interesting to see how they work.

Right now I want to get a strong foundation with Python so that I can understand the language. Once I have that foundation then look at what directly I want to take Python.

Yes, I agree there are many different cybersec certification/qualification. I am just going for the CISSP currently because it holds a little weight in the consulting/managerial side of Cybersecurity when speaking to Directors, VP’s, C-Suite people as I’m sure you know.

1 Like

With regards to the pen testing aspect, if you’re thinking of getting in with a consultancy firm and running the tests against customer infrastructure then quite a lot of it likely relies on pre-built kit. Stuff like Kali, as well as the myriad frameworks for prodding various things, would be good to look into alongside the Python.

Important note: It should be obvious, but don’t point any security tools - however innocuous or “harmless” you think they are - at other people’s gear without prior, well documented, permission. (@brandonkr I assume you know this, so it’s more for anyone else who might read this down the line. :slight_smile:)

Python on its own probably wouldn’t set you up to go properly bug hunting, though, if you were thinking of going fishing for zero-days.

Either of the Python courses - Python 3 is a Pro only course, I think - or the Comp Sci Path would probably be good for that. I haven’t done any of the Paths, but the standalone language courses cover the basics to a good extent. I’d couple it with stuff like CodeWars, getting familiar with the Python Docs, and books.

CISSP is a well regarded cert, for sure. You should keep in mind, though, that the passing the CISSP exam is only part of the journey.

CISSP requires you to have 5 years or more of paid work experience across at least 2 of the 8 knowledge areas. (A relevant 4-year degree course, or certain other professional certifications in relevant areas, can be counted as one year of experience.)

Even then, you don’t get the full CISSP until your work experience has been checked and verified by someone else who’s already accredited by (ISC)2… so it’s not an easy cert to get, but I think that’s part of why the CISSP (as well as the other (ISC)2 certs) are well regarded!

2 Likes

oh for sure there is much more to pen testing then just knowing how to code. I just want to get the Python foundation because it gives me options.

I sat beside two pen testings for 6 months and asked lots of questions. Even between them both they had different skill sets.

On my list of books to buy are these two once I learn the foundation of Python first.

Black Hat Python: Python Programming for Hackers and Pentesters

Violent Python: A Cookbook for Hackers, Forensic Analysts, Penetration Testers and Security Engineers

Very good point to make because too many people start pointing tools at areas they shouldn’t and even though they are just learning there is legal repercussions. As well the effects you can have on what you are pointing at can be severe and cause an outage and maybe worse.

As for the CISSP I totally agree it’s only the start, as you know we never stop learning and developing.

I have about 4 years of paid work experience across a few of the domains and I have a certification that knocks off a year. When I take the exam and pass I would be a CISSP Associate until I was able to get the full 5 years of work experience which wouldn’t take me that long working in the industry now… I hope. Once you pass the exam you have 6 years to get the 5 years of experience. I would just need 1 maybe, 2 years depending on what they accept.

I worked with and know a few CISSP’s who I have already asked if they would be my sponsor. They know what I have done and would be willing to be my sponsor. Thank you for reminding me of what needs to be achieved.

1 Like

No Starch books are pretty good, tbh. :+1:

Good. :+1: They’ll likely be able to recommend some good learning resources to you, as well.

Hopefully that wouldn’t be too tricky, especially as you’re already working for a company in the sector.

Tbh, sounds like you’ve got the hard bit sorted.

Going back to the question at hand, then - learning Python. If you’re wanting to test the water a bit, the Python 2 course doesn’t need a Pro sub. There’s some differences between Python 2 and 3, but tbh they’re not huge. The Python 2 course, without Pro, covers the basics and can be done quite quickly - though, obviously, people learn at different rates etc .

If you get on well with the Python 2 stuff, you can go Pro after that and do the Python 3 or Comp Sci path. The CS path covers more advanced topics than the standalone Python course, and I think there’s some overlap. It’d definitely get you flexing the sort of problem solving you’d need, though. Once you’ve got that, tbh, other languages are easy… if you needed them. :slight_smile:

1 Like

Good to know you recommend the Starch books.

yeah they were talking about OSCP and work towards that if I want to do pen testing.

I hope not, the good thing is this is the career I enjoy just need to get some more foundation.

hmm Python 2 or Python 3 or Computer Science path. I’m debating about doing the Computer Science path to give me a good strong foundation in the mindset of a programmer while learning Python to a level that it appears I can use once the 20 weeks completed. I’m not to worried about the investment because I am using to paying for courses, books, resources…etc. I just make sure it is worth the investment and I will be able to make my money back after I am done. As you know when you get some certifications you either ask for a raise at work or start looking for a different job that will pay you more for your knowledge.

Thank you @thepitycoder this conversation has been very helpful. Now it’s time to do the hard part and do the work. Planning is easy, doing the work is hard.

2 Likes

I would also love to hear from someone who has no programming background who took the “Computer Science path” and their experience afterwards. Did they start working? Or did they feel they didn’t know much and had so much more to learn?..etc.

2 Likes

Lucky you, i stumbled with this post the same day i finished Comp Sci path without prior coding experience.

Well, everyone’s experience is different. Im planning to learn enough programming to make a career change next year, and the Comp Sci path gave me a very good understanding about programming.

I can just say i’m glad i took this course because they lead you through core concepts of programming (data structures, search algorithms, Big O Notation, etc). Everything is python-focused so you will be fine since you want to learn Python.

What is a Programming Language without real applications anyway? go for it.

2 Likes

Hey @corotox thank you for your response. How do you feel after completing the Computer Science Path. Have you been working on projects do you feel you have a good base?

I’m doing beginner projects (the ones posted with the name “Comp Sci independent project” on this forum). I did project 1 and its posted here too. I’m doing right now project #2 blackjack. To be honest, i should have done these projects a while ago, but i was so focused learning that i postponed them).

I will be doing a lot of practice right now to help me retain most concepts possible, i think i would be able to provide better feedback regarding projects in the short-mid term (1 month, 2?). I will ensure to post them here in the forums to help other learners and ofc help myself when feedback comes.

So right now, practice-related i’m at beginner level. Ofc i did all the projects through the Comp Sci path, they are focused on teaching and give you directions, which is fine. But since you won’t have such help in real life it’s key to start building projects on your own.

I should have started practicing before, but well, i’m self learning so i just learned that practice is as important as grabbing new concepts haha. Anyway, there is a ton of resources that will surely help me in projects, but at this point, i feel that it will be more superficial, because I already have a better understanding of programming. It is much simpler when you know what you are looking for.