|
24 June 2015 Edit :
I'm not sure anyone's interested but I wanted to keep you all posted: - After a few weeks of flip-flopping around and procrastinating, I finally got to it. - I'm currently reading a book presenting the general principles behind object oriented programming. It's very high level stuff, not specific to a language (has examples in C++, Python, PHP, Java, etc). It's really interesting because I had never done any object oriented programming before. Provides a good overview of the principles behind, what it can/cannot do, etc - I'm also doing the codeacademy Python course. It started off really slow and easy, but I stuck to it and now we get into more advanced stuff. I can't wait to get to the part that really interests me: reading and writing outside data files. Anyway, it feels good "getting my hands dirty" (figuratively of course) and diving into the code. I recommand codeacademy for that: it really requires you to type a lot of stuff. Even if it's easy, and very step-by-step (sometimes too slow to my liking), it does require you to really type it out a lot. Which is good, practice makes perfect !
I plan to finish the codeacademy course by next week. Once this is done, I think i'll have enough understanding of coding to move on to more advanced lesson. Maybe the course LaLush recommended, as it seems super interesting. A friend of mine recommended an online course about Machine Learning too, so I'm still on the fence regarding the next step.
Again, thanks to all !
----------------------------------------
Hi TL !
I'd like to learn how to program in Python. I'm at work so I can't get into lengthy details about the "why" and the "how", but I'm really interested in learning how to program stuff.
Edit: more details about the "why" part below, for those interested + Show Spoiler + Basically, I'm unhappy at my current job. I'm a Control Systems engineer in a french firm that makes airplane engines. I don't know, it just feels like what I'm doing isn't really challenging intellectually. I mean it can get pretty complicated at times (not as often as you would think though), but the complicated parts are more related to "how to make everyone agree together" rather than on real technical problems.
I've always liked maths (and physics) during my studies. I still do, a lot. I like the abstracts notions, complex theoretical problems, etc. I also kinda regret not properly knowing how to program. It's a skill that I'd like to master (because I think it's is becoming almost an obligation to follow and understand all the scientific and technological progresses in our current world). And after going to family and friends for advice, I think the best move right now for me would be to completely switch careers. I'm still young enough (27 y/o, 4 years of professional experience), and I think it could really be more fulfilling and I could be happier. I'd like to go towards something a bit more abstract, more math-y. I was thinking about trying to find a job related to the "Big Data", or something along those lines. My plan isn't yet fully fleshed out, but I haven't felt as energized and enthusiastic since I made this decision, so I guess it is a sign I'm headed in the right direction.
In order to do that though, I'd need at least a few relevant skills to that field. I'm sure I'll be able to value the skills I've learned in the aeronautical industry, but I still need to know a bit of programming for my profile to be at least somewhat relevant to a company that works in the "Big Data" field. Also, even if I don't end up switching career and stay at my current job, knowing how to programm stuff can always be handy.
So, here I was, knowing that I needed to learn at least one programming language, preferrably Object Oriented (I only did a bit of C until now). I'm not entirely sure of why I chose Python rather than any other Object Oriented language, but you gotta start somewhere, right ? Also, I hear people at my job (or even during my studies) doing "python scripts" to help automatize some of their calculations and tasks, so I told myself it was a place as good as any to start. Hence here I am, asking you advice TL !
I've had a 60h C course in school (4-5 years back), so I think I know the basic concepts behind programming (loops, variables, parameters, functions, etc), but now I want to get properly into it.
I'm not really sure why I chose Python rather than C++ or something else, but could anyone point me towards useful ressources to learn Python ? I'm looking for anything from books, MOOCs, tutorials, anything.
If you have tips as well, I'll be very glad :-)
I'll post more details about why I'd interested in programming when I'm home (if anyone is interested ^^ )
Thanks in advance guys (and girls) !
<3
YoShi
------------ Edit1: Sorry to the BW fans, I didn't mean to mislead you :p Edit2: thanks to all who responded ! I'll check out all of what you've linked and I hope it's OK if I contact you guys through PMs if I have more specific questions about the courses/tutorials you have linked. Edit3:
|
Hi, I did this online course and it was pretty good: https://www.coursera.org/course/programming1 (Learn to program the fundamentals). It was very meticulous, so you might not have to watch every video in depth, but it's thoroughness is good and you can be selective. Though the course is already over, I think you can still take it - it's a bunch of video lectures and assignments, and I think they just grade those automatically.
There's also codecademy, I've never tried their python course, but they're courses are much more jump in and jump out and probably faster and easier, if not quite as in depth. hope this helps.
|
United States24495 Posts
|
United Kingdom10443 Posts
I found this was a great way to learn , just working through these
http://codingbat.com/python
once I finished those I moved on to
https://projecteuler.net/
helps learn python and also makes you think about the problem as often you can't brute force the solution. Also with people posting solutions it helps you learn proper formatting and code etiquette so your solution is as understandable and efficient as possible
|
On May 29 2015 20:29 Ziggareto wrote:Hi, I did this online course and it was pretty good: https://www.coursera.org/course/programming1 (Learn to program the fundamentals). It was very meticulous, so you might not have to watch every video in depth, but it's thoroughness is good and you can be selective. Though the course is already over, I think you can still take it - it's a bunch of video lectures and assignments, and I think they just grade those automatically. There's also codecademy, I've never tried their python course, but they're courses are much more jump in and jump out and probably faster and easier, if not quite as in depth. hope this helps.
I'm also taking some python courses on coursera, and in my opinion they've proven a really good way of getting into it.
The courses I'm currently taking are offered by Rice University as part of a "specialization" of 7 different courses, each building upon what you learned in the previous one.
https://www.coursera.org/specialization/fundamentalscomputing2/37?utm_medium=courseDescripTop
In the first course (two part course) they teach you the basics by letting you program small games using their GUI (Pong, Asteroids, Memory, Blackjack, etc). They teach you how the data types/structures in Python work and are used, along with objects/classes.
I'm currently doing the second course (principles of computing, also two parts). More focused on math. First assignment was creating your own 2048 game. You're basically applying what you learned in the previous course without the hand-holding. It hammers in how to use lists, dictonaries, tuples, sets in practical applications. You get to try your hand at tree-search and monte carlo applications.
The third two-parter course is in Algorithmic Thinking. Not taken it yet but intending to.
|
|
Man I went into this blog with no doubt in my mind that I could use my Python knowledge .. left disappointed
|
I thought this was about BW
|
Someone should write a new language called Fighting Spirit
|
On May 31 2015 00:12 Ilikestarcraft wrote: Someone should write a new language called Fighting Spirit I'd prefer a language called Circuit Breaker.
|
Just do project euler in Python: https://projecteuler.net/
Google what you don't know, and hack things together. This will help you learn the available libraries, which is 80% of programming in Python.
|
www.codingame.com and some python tutorials. Complete the game challenges in python. I learned a fair amount of Ruby this way.
|
United Kingdom10443 Posts
On May 31 2015 19:45 Gowerly wrote:www.codingame.com and some python tutorials. Complete the game challenges in python. I learned a fair amount of Ruby this way.
This website is so awesome, thanks for the recommendation.
|
On May 29 2015 21:21 LaLuSh wrote:Show nested quote +On May 29 2015 20:29 Ziggareto wrote:Hi, I did this online course and it was pretty good: https://www.coursera.org/course/programming1 (Learn to program the fundamentals). It was very meticulous, so you might not have to watch every video in depth, but it's thoroughness is good and you can be selective. Though the course is already over, I think you can still take it - it's a bunch of video lectures and assignments, and I think they just grade those automatically. There's also codecademy, I've never tried their python course, but they're courses are much more jump in and jump out and probably faster and easier, if not quite as in depth. hope this helps. I'm also taking some python courses on coursera, and in my opinion they've proven a really good way of getting into it. The courses I'm currently taking are offered by Rice University as part of a "specialization" of 7 different courses, each building upon what you learned in the previous one. https://www.coursera.org/specialization/fundamentalscomputing2/37?utm_medium=courseDescripTopIn the first course (two part course) they teach you the basics by letting you program small games using their GUI (Pong, Asteroids, Memory, Blackjack, etc). They teach you how the data types/structures in Python work and are used, along with objects/classes. I'm currently doing the second course (principles of computing, also two parts). More focused on math. First assignment was creating your own 2048 game. You're basically applying what you learned in the previous course without the hand-holding. It hammers in how to use lists, dictonaries, tuples, sets in practical applications. You get to try your hand at tree-search and monte carlo applications. The third two-parter course is in Algorithmic Thinking. Not taken it yet but intending to.
Sounds really interesting !
I'm curious about the workload though. How much are we talking about here ? I'm still working my current job, so if it requires like 20h+ per week, I'm not sure I can work it in my schedule. I wouldn't want to get burned out after two of trying :D
|
I recommend the udacity introductory course for building a search engine, cs101 or whatever it's called; it's a gentle intro in python, and really well made. Check it out
Udacity dot com
|
On June 01 2015 20:18 LoneYoShi wrote:Show nested quote +On May 29 2015 21:21 LaLuSh wrote:On May 29 2015 20:29 Ziggareto wrote:Hi, I did this online course and it was pretty good: https://www.coursera.org/course/programming1 (Learn to program the fundamentals). It was very meticulous, so you might not have to watch every video in depth, but it's thoroughness is good and you can be selective. Though the course is already over, I think you can still take it - it's a bunch of video lectures and assignments, and I think they just grade those automatically. There's also codecademy, I've never tried their python course, but they're courses are much more jump in and jump out and probably faster and easier, if not quite as in depth. hope this helps. I'm also taking some python courses on coursera, and in my opinion they've proven a really good way of getting into it. The courses I'm currently taking are offered by Rice University as part of a "specialization" of 7 different courses, each building upon what you learned in the previous one. https://www.coursera.org/specialization/fundamentalscomputing2/37?utm_medium=courseDescripTopIn the first course (two part course) they teach you the basics by letting you program small games using their GUI (Pong, Asteroids, Memory, Blackjack, etc). They teach you how the data types/structures in Python work and are used, along with objects/classes. I'm currently doing the second course (principles of computing, also two parts). More focused on math. First assignment was creating your own 2048 game. You're basically applying what you learned in the previous course without the hand-holding. It hammers in how to use lists, dictonaries, tuples, sets in practical applications. You get to try your hand at tree-search and monte carlo applications. The third two-parter course is in Algorithmic Thinking. Not taken it yet but intending to. Sounds really interesting ! I'm curious about the workload though. How much are we talking about here ? I'm still working my current job, so if it requires like 20h+ per week, I'm not sure I can work it in my schedule. I wouldn't want to get burned out after two of trying :D Depends on the person and the course. For someone slow like me, many coursera programming courses take 10 hr a week or more once they get rolling.
Codeacademy takes 6 hours total (excluding my many breaks) and it has built in archiving for every course. Which is nice so I can take them on my own schedule.
|
Italy12246 Posts
Codeacademy is supposed to be really good to learn programming. I'm actually going to learn Python myself this summer because im seriously terrible at programming and what little c++ i need is kind of pointless for the stuff i should be able to code.
|
On June 01 2015 20:18 LoneYoShi wrote:Show nested quote +On May 29 2015 21:21 LaLuSh wrote:On May 29 2015 20:29 Ziggareto wrote:Hi, I did this online course and it was pretty good: https://www.coursera.org/course/programming1 (Learn to program the fundamentals). It was very meticulous, so you might not have to watch every video in depth, but it's thoroughness is good and you can be selective. Though the course is already over, I think you can still take it - it's a bunch of video lectures and assignments, and I think they just grade those automatically. There's also codecademy, I've never tried their python course, but they're courses are much more jump in and jump out and probably faster and easier, if not quite as in depth. hope this helps. I'm also taking some python courses on coursera, and in my opinion they've proven a really good way of getting into it. The courses I'm currently taking are offered by Rice University as part of a "specialization" of 7 different courses, each building upon what you learned in the previous one. https://www.coursera.org/specialization/fundamentalscomputing2/37?utm_medium=courseDescripTopIn the first course (two part course) they teach you the basics by letting you program small games using their GUI (Pong, Asteroids, Memory, Blackjack, etc). They teach you how the data types/structures in Python work and are used, along with objects/classes. I'm currently doing the second course (principles of computing, also two parts). More focused on math. First assignment was creating your own 2048 game. You're basically applying what you learned in the previous course without the hand-holding. It hammers in how to use lists, dictonaries, tuples, sets in practical applications. You get to try your hand at tree-search and monte carlo applications. The third two-parter course is in Algorithmic Thinking. Not taken it yet but intending to. Sounds really interesting ! I'm curious about the workload though. How much are we talking about here ? I'm still working my current job, so if it requires like 20h+ per week, I'm not sure I can work it in my schedule. I wouldn't want to get burned out after two of trying :D
It says 7-10 hours per week.
I didn't have any background in programming and I found it fairly easy the first couple of weeks (took me maybe 3-4 hours/week for the first couple assignments). The only thing I'd done before was the codeacademy python tutorial (good but very basic imo).
Now in the later courses it actually takes me closer to 7-10 hours. It's free and the courses repeat and run every 2 months or every 3 months. So there's really no reason not to sign up and try and see if you like it. It's basically 60-90 minutes worth of video lectures each week, a quiz/homework, and then a programming assignment that's related to the lectures.
You can definitely manage the first course with your background. It's starts off very basic and they show you most of what you need to do. Perfect for someone who's not already a programming wiz. Perhaps it sounds more difficult than it is from my first description. You don't program the games from the ground up by yourself (not in the first courses). They usually provide some basic templates and tell you how the program should be structured, what parts/functions it needs.
|
|
Thanks for the suggestion ! It does looks like it really starts from the bottom though, and I already have a (small) experience with programming. So I'm not sure about this course. Seems like I already know a few of those things !
|
|
|
|