Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 6 years ago.
Improve this question
So I'v been learning how to program for about a month now. I just finished reading 'Invent your own games with python'. Before the book I had never seen a line of code. After reading the book I'm able to read code and understand what's going on. But that's about it. I got the syntax down and can use all the flow statements. I'm still not able to create my own projects and when I try to do a challenge online, I just sit there and stare at it not knowing where to start. Is this normal? Is this one of those things where one day I'm gonna wake up and It's gonna click in head. Any suggestions as too what I can do accelerate my learning?
I think you've reached the bliss point between knowing how to write Python and how to actually program.
Python is the tool, programming is the practice.
I was in your shoes a few months ago (I had finished Data Structures and Algorithms in Python, also a good book). I decided to look online for areas to practice and understand programming problems as well as improve my math skills (math shortcuts come in handy). Nothing really clicks until you've gotten a few projects accomplished.
Designing a game IS HARD and it may not be the best place to start but if that's where you want thing to click I'd highly recommend breaking games down as a programmer might: take a feature of a game, say SimCity's Sim.
What features in OOP terms does this feature have as attributes?
What does the object do?
What external classes/objects affect this object?
What does this object externally impact?
Since you're learning Python, learning how to use the OOP paradigm is crucial and designing projects around it allow you to use Python with greater strength.
It's absolutely normal to look at a problem and have no idea where to start.
That's a lack of experience. Get some.
This is where I start if I want to get a feeler for a new language: https://projecteuler.net/
There's plenty of resources online to test your skills and there's probably an offline community near you.
Yes, this is perfectly normal for any beginner.
What you need to do is just continue doing what you are doing.
The beginning will be difficult learning curve so aim for more beginner/basic level questions (i.e.: beginner level online challenges).
Develop plenty of your own programs for fun and whenever you get stuck ask online.
When other people answer your questions online look for the most elegant solutions (i.e.: quickest execution time, neat coding style, etc...) and try remember their solutions.
The fastest way (in my opinion) to learn code is to build your own programs for fun. Just never give up no matter how hard and frustrated it gets.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 days ago.
Improve this question
I am a sort of experienced python programmer. I will quickly describe my situation. For a hobby programming was always nice. I then started working at a company that did lots of manual excel processing. One day I mentioned that I could probably automate this with python.
Things led to another and now there is python doing the excel work multiple times a day running from an Intel NUC i deployed as a small server. It has been some work figuring everything out but the money has been good as well, no complaints.
They are quite happy with me and have lots of different plans.
They want me to design a website where the employees can fill out a form daily and the data can be used elsewhere. However, I've done some html and css programming in highschool, but I know there needs to be a back-end to at least save the data that gets filled.
I dont know where to start. I know SQL is the #1 language in data processing and PHP in handling the back-end. But I already know python which also can do back-end operations.
I have two direct questions but also looking for advice on the whole situation. Feel free to just point anything out; I will read every comment.
My questions:
Could I run the webserver from my Intel NUC? Or is this generally seen as bad practice? Also, is it true that I would only need the domain if I run the webserver myself?
Is it worth it to learn SQL and PHP or should I stick to python?
I have tried looking online but found countless of resources. I would like to create a large database with lots of data I can use anytime. I think SQL is good for this but not looking to waste time.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 21 days ago.
Improve this question
I recently started developing games on Godot after 3 months of Python experience. Is it good to learn Python before jumping into GDscript? If not, how different are the two? Is it okay to first learn Python in preparation?
Thank you! :)
I decided I should watch the official GDscript tutorials that the Godot channel put out, I have not finished it entirely as it is very long, so I was wondering if someone on the forum could answer :)
Is it good to learn Python before jumping into GDscript?
It is not necessary. It is arguably good, but not because of it being Python specifically. Any prior programming experience will transfer well.
If not, how different are the two?
They have similar syntax. Keywords are different.
In general it is easy to translate algorithms from Python to GDScript. However, it might result in a suboptimal GDScript/Godot solution.
A common experience among beginners has been implementing things in GDScript to later discover that Godot already have a built-in way to do it that is both more convenient and more efficient (I'm not saying this is always the case, but that it is very common). Please notice that is not so much learning GDScript, but learning Godot.
Don't expect any advanced Python to work on GDScript. The reason being that GDScript semantics are closer to Java or C#.
I want to mention that in GDScript you are free to specify types or omit them from your code (in which case it behaves as a dynamically typed language). In general I encourage to use types, it allows for static analysis (and starting from Godot 4 it should give you better performance too).
Is it okay to first learn Python in preparation?
You can learn whatever. Learning Python first is OK. It will not hinder your experience with GDScript.
With that said, I want to point out that GDScript is a good entry level programming language. You can jump into GDScript without prior programming knowledge.
Is there any good sources such as books or writing that I should refer to?
While it is off-topic to ask for learning material on this site, it is OK to recommend…
There is a canonical answer: Tutorials and resources.
I decided I should watch the official GDscript tutorials that the Godot channel put out, I have not finished it entirely as it is very long
Do as you wish. People have different preferences for learning.
Some of us rather have a project to motivate us, and learn the things we need to get it done. Other prefer to explore and experiment the options. Others prefer to have tutor that guide them.
It is all valid.
If I were you, I would go with GDScript basics and jump in. But I'm not you.
so I was wondering if someone on the forum could answer :)
This is not a forum. This a Q&A site. Open ended conversations do not work well here.
With that said, I would like to point you to: the official Godot forum. See the Godot's community page.
I would also want to point out that despite GDScript being the intended and preferred way to use Godot, you don't have to. Yes, you might even use Python. And yes people coming from Unity might use C#. See using different programming language in godot game engine?. If you plan to do something like that, I would still encourage to give GDScript a try.
Godot documentation is very clear, well organized and straigthforward.
You definately should take a look at it. If you just casualy read the General and Getting Started section from the navbar you probably gonna learn lots of things. Godot Docs
If somehow you still are doubtfull about GDScript, the docs also have a section under the Scripting link dedicated to it's introduction and other stuff. GDScript Docs
Have fun! :)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 2 years ago.
Improve this question
I am a high school student, and I have just finished 4 free youtube courses on python, along with a "beginners guide to python" book, and I am a little lost. I understood the language quite well and enjoyed learning it. My question is: what do I have to learn in order for me to start designing and building things with python. Just to be clear, I am not talking about complicated things such as websites or machine learning applications. I am talking about simple games and apps so that I can form a better understanding of software development through practical experience. I honestly thought this is where the course and book would get me by now. I feel like my understanding of python is great (for a beginner). I understand all of the fundamental terms and definitions of the language, and I can answer questions other students may have about directories, methods, strings and so on without trouble. I just have no idea where to begin designing and building real things that can test my knowledge as a programmer.
I understand that I have a lot to learn. I just have no discernible vision as to how I can become better without practicing what I learn.
I am grateful for any advice you can provide on how I can resolve this issue, as well as any book recommendations or helpful links for learning resources.
Thank you for your time.
There are lots of fun ways! Try some of Swagart's books (Automate the Boring Stuff with Python, etc). By all means try making a basic web application with Flask. Try making a game with Pygame (Al Swagart's pygame book is good for that). Try interfacing a database directly with sqlite3. The possibilities are endless. Don't stick to just raw python, the best way to get experience is to use external modules and apply your knowledge to them. If you need to write Python for a job they will want you to be using something or other to do something or other and the only way to be able to say "Oh yes I can learn this module you're using for webdev/game/anything" is to have experience learning new modules and use cases.
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 7 years ago.
Improve this question
First, to give you a slight bit of background on me:
Perl is technically the first language I was introduced to, but I quickly migrated to Python when I found how clean and easy it is to write. I've now been working in Python for about 8 months, and I feel that I'm reaching an 'intermediate' stage. I have the language syntax, data-structures, and memory usage principles pretty much down, and now I'm starting to get into things such as algorithmic design and some of the slightly deeper topics like function closures.
I'm teaching myself C++ on the side, and I'll be honest, it feels tedious and extremely obtuse to me. It might be how new I am too it still, but I have to force myself to practice C++ whereas I can barely get enough coding in Python. I've heard people say it's good to learn to give you a baseline knowledge about computers and memory management, so my question is if I should "catch-up" in C++ to where I'm at in Python before continuing? I think the convenience of Python is making it hard to learn C++ as a second language.
I feel you should try to fully master one language before advancing to another. If you juggle too many at the same time you will just mix up their syntax and spend a lot of time becoming a jack of all trade and a master of non.
Closed. This question is off-topic. It is not currently accepting answers.
Want to improve this question? Update the question so it's on-topic for Stack Overflow.
Closed 9 years ago.
Improve this question
One of my web apps receives a lot of article submissions, some of them written not very well. How possible is it to create a tool to recognize "good" vs. "bad" writing just by providing it with a corpora of good and bad articles?
Note that these articles (at least the ones already processed) have been reviewed and graded, so in theory I could use these numbers to confirm output.
I don't have a background in creating "learning" algorithms, so even just a pointer to a foundational book on the subject would be helpful, particularly one written for the Python language.
I think that this would be a difficult learning algorithm to undertake. However, if you did want to have a go or are just interested to learn about the subject Coursera offer a number of free online courses that are worth checking out.
This course is not currently running for assignments etc, but you can watch the lectures in preview mode, from what I have seen this is well suited to beginners:
https://class.coursera.org/machlearning-001/lecture/preview
If you want some practice then I would highly recommend taking a look at Kaggle (http://www.kaggle.com/) which runs open competitions for data science / machine learning problems. Some of the competitions even have sample code to get you started, the titanic competition has some sample code in Python, although the problem being worked on is considerably simpler than the problem you have proposed.