Turn on thread page Beta
    • Thread Starter
    Offline

    8
    ReputationRep:
    (Original post by Priyanboss517)
    Yeah for some reason as well i enjoy maths. Probably the subject i enjoy the most. Its the opposite here for me with physics and chemistry. I find thay physics just doesn't go well with me here as chemistry is doable for me although it requires so much time to understand.
    Well, if you have any Physics question then, you could ask me and I'll see if I can help you with it
    Offline

    12
    ReputationRep:
    (Original post by owenlearnstopun)
    Well, if you have any Physics question then, you could ask me and I'll see if I can help you with it
    Yeah definitely. Chemistry does have some emission and absorption spectrum calculations as well as pv=nrt and all of the gas equations.
    • Community Assistant
    Offline

    19
    ReputationRep:
    Community Assistant
    Which exam board are you actually doing? I presume it's not OCR since we can do Java in the OCR program, not to mention that there's a project also involved.
    Offline

    18
    ReputationRep:
    (Original post by Priyanboss517)
    Exactly how hard is it to learn how to program??
    It depends what you mean by "hard" and it depends what you mean by "learn how to program". In terms of difficulty, it's about the same as learning a new foreign language, or learning to play a musical instrument, or even learning a trade skill such as carpentry or plumbing.

    Have a look at this link: http://norvig.com/21-days.html

    If you want to learn how to "be a programmer" (which is typically what most people mean by 'learn how to program'), there are a whole bunch of skills you need to learn:
    • The syntax and rules of at least one programming language (A full, turing-complete programming language such as Python, C, Java, C#, C++, etc. Not languages like HTML or CSS - those aren't "programming" languages, although they are useful to know if you're interested in web development).
    • Computational thinking (a.k.a. how to think algorithmically about solving problems) - https://en.wikipedia.org/wiki/Computational_thinking
    • Data modelling - i.e. looking at a problem and being able to model that problem using some kind of data structure
    • Basic computer science concepts - i.e. How computers actually work
    • Boolean logic
    • Analytical skills - i.e. learning to look at a complex "real world" problem and interpret that problem as something you can solve using a computer
    • Know how to approach problem solving using a "divide and conquer" strategy (picking a complex problem and dividing it until you arrive at small, simple solvable problems)
    • Using programming tools for writing/building code, troubleshooting errors and "debugging" a faulty program.
    • Learning how to structure code you write to reduce the number of logic errors, eliminate edge cases, and to ensure a program is always "well behaved", doing things that a user would expect it to do.

    A lot of those things just take time because they're new concepts that you'll probably have never encountered before in any other subject while growing up - if this is your first time learning programming, then you just need a lot of time to get your head around a lot of new ideas; once you've gotten the basics, it takes potentially many years of practice to gradually improve and refine your programming skills. It requires a lot of persistence and a lot of patience. It also involves a lot of reading, and a lot of time searching for answers in google, or on sites like StackOverflow.
    Offline

    12
    ReputationRep:
    (Original post by winterscoming)
    It depends what you mean by "hard" and it depends what you mean by "learn how to program". In terms of difficulty, it's about the same as learning a new foreign language, or learning to play a musical instrument, or even learning a trade skill such as carpentry or plumbing.

    Have a look at this link: http://norvig.com/21-days.html

    If you want to learn how to "be a programmer" (which is typically what most people mean by 'learn how to program', there are a whole bunch of skills you need to learn:
    • The syntax and rules of at least one programming language (A full, turing-complete programming language such as Python, C, Java, C#, C++, etc. Not languages like HTML or CSS - those aren't "programming" languages, although they are useful to know if you're interested in web development).
    • Computational thinking (a.k.a. how to think algorithmically about solving problems) - https://en.wikipedia.org/wiki/Computational_thinking
    • Data modelling - i.e. looking at a problem and being able to model that problem using some kind of data structure
    • Basic computer science concepts - i.e. How computers actually work
    • Boolean logic
    • Analytical skills - i.e. learning to look at a complex "real world" problem and interpret that problem as something you can solve using a computer
    • Know how to approach problem solving using a "divide and conquer" strategy (picking a complex problem and dividing it until you arrive at small, simple solvable problems)
    • Using programming tools for writing/building code, troubleshooting errors and "debugging" a faulty program.
    • Learning how to structure code you write to reduce the number of logic errors, eliminate edge cases, and to ensure a program is always "well behaved", doing things that a user would expect it to do.

    A lot of those things just take time because they're new concepts that you'll probably have never encountered before in any other subject while growing up - if this is your first time learning programming, then you just need a lot of time to get your head around a lot of new ideas; once you've gotten the basics, it takes potentially many years of practice to gradually improve and refine your programming skills. It requires a lot of persistence and a lot of patience. It also involves a lot of reading, and a lot of time searching for answers in google, or on sites like StackOverflow.
    Wow, thanks this is really useful! This definitely seems complex. It’s just the amount of time it takes to get used to and fluent that bothers me. The reason being is I’m thinking of doing computer engineering at university and I don’t know if it will be the best idea to take the course with minimal knowledge in these languages. The fact that you have all of these other things to learn and coursework, I don’t know if there will be enough time to learn in from scratch. What do you think? Because that’s the only thing that bothers me. Also, does it take time to the point where you can’t really live or spend free time relaxing?
    Offline

    18
    ReputationRep:
    (Original post by Priyanboss517)
    Wow, thanks this is really useful! This definitely seems complex. It’s just the amount of time it takes to get used to and fluent that bothers me. The reason being is I’m thinking of doing computer engineering at university and I don’t know if it will be the best idea to take the course with minimal knowledge in these languages. The fact that you have all of these other things to learn and coursework, I don’t know if there will be enough time to learn in from scratch. What do you think? Because that’s the only thing that bothers me. Also, does it take time to the point where you can’t really live or spend free time relaxing?
    Don't worry about the time it takes - it's the same with everything you might ever learn. Learning a foreign language is a really good analogy actually, because the time you might take to become perfectly fluent in a new language is also a long time - but with that said, you could take a foreign language course and learn enough from that course in 6 months to start to have some basic conversations with people (e.g. asking for food, drink, tickets, etc.).

    As far as I know, nearly all university Computing/CompSci courses start out by assuming students have zero programming knowledge, so if you're starting out from that point, then it shouldn't be a problem. The whole point of going to university and being given homework, lessons, coursework, lectures, etc is to use those things to learn. Anyway, part of the reason for giving students coursework/projects is that students are expected to go away and learn things for themselves using the coursework - that's the reason you often get several months to complete it.

    Of course, any kind of learning you might do related to programming before starting university might be helpful (e.g. Codecademy interactive tutorials for learning a programming language, or slightly bigger edX courses like CS50 from Harvard: https://www.edx.org/course/cs50s-introduction-computer-science-harvardx-cs50x )

    Universities definitely do not expect you to be any kind of "zen master" at programming before starting your first year; in fact, most of the things you learn in the first year of a degree are similar to the kinds of things you'd have learned in A-Level Computer Science (which also assumes no previous knowledge).

    Also, I think the experience of most graduates is that they find 3 years studying at university still leaves them with a lot of stuff to learn; just enough understanding and knowledge to get themselves into a good 'graduate' level job. Most graduates starting their first job often find that they have a lot to learn; employers often expect graduates to need a couple of years working in a full-time software engineering job after graduating before they're really "ready" to be left alone working on bigger, more complex problems. But that's a long way off, so don't worry about that yet
    Offline

    12
    ReputationRep:
    (Original post by winterscoming)
    Don't worry about the time it takes - it's the same with everything you might ever learn. Learning a foreign language is a really good analogy actually, because the time you might take to become perfectly fluent in a new language is also a long time - but with that said, you could take a foreign language course and learn enough from that course in 6 months to start to have some basic conversations with people (e.g. asking for food, drink, tickets, etc.).

    As far as I know, nearly all university Computing/CompSci courses start out by assuming students have zero programming knowledge, so if you're starting out from that point, then it shouldn't be a problem. The whole point of going to university and being given homework, lessons, coursework, lectures, etc is to use those things to learn. Anyway, part of the reason for giving students coursework/projects is that students are expected to go away and learn things for themselves using the coursework - that's the reason you often get several months to complete it.

    Of course, any kind of learning you might do related to programming before starting university might be helpful (e.g. Codecademy interactive tutorials for learning a programming language, or slightly bigger edX courses like CS50 from Harvard: https://www.edx.org/course/cs50s-introduction-computer-science-harvardx-cs50x )

    Universities definitely do not expect you to be any kind of "zen master" at programming before starting your first year; in fact, most of the things you learn in the first year of a degree are similar to the kinds of things you'd have learned in A-Level Computer Science (which also assumes no previous knowledge).

    Also, I think the experience of most graduates is that they find 3 years studying at university still leaves them with a lot of stuff to learn; just enough understanding and knowledge to get themselves into a good 'graduate' level job. Most graduates starting their first job often find that they have a lot to learn; employers often expect graduates to need a couple of years working in a full-time software engineering job after graduating before they're really "ready" to be left alone working on bigger, more complex problems. But that's a long way off, so don't worry about that yet
    Thanks, that is reassuring. This really is helpful so thank you for the advice! I mean, I’m definitely going try get the gist of things in my free time and learn things myself before hand. What is best best language to start of in? I’ve heard python is probably the simplest form of the languages. Do you also have to pay for these programs?
    Offline

    12
    ReputationRep:
    do you have any past paper questions or typical-like exam questions that can help me for my revision? I'm also doing A2 CS but with AQA exam board and since it is a new spec, there is not enough resources out there
    Offline

    18
    ReputationRep:
    (Original post by Priyanboss517)
    Thanks, that is reassuring. This really is helpful so thank you for the advice! I mean, I’m definitely going try get the gist of things in my free time and learn things myself before hand. What is best best language to start of in? I’ve heard python is probably the simplest form of the languages. Do you also have to pay for these programs?
    No you don't need to pay anything for any of the major programming languages (Python, Java, C, C#, C++ - all the tools for those are freely available).

    Python is definitely a good language to start with, and there's plenty of free resources to get you going. e.g.
    MIT course (free course, the paid certificate is optional): https://www.edx.org/course/introduct...itx-6-00-1x-11
    Codecademy Python (Ignore the paid-for bits. Runs in the browser, nothing to install): https://www.codecademy.com/learn/learn-python
    Official "getting started" Python page: https://www.python.org/about/gettingstarted/

    There's not really a "best" language to start out with. Python and Java are probably the two most common however; Python tends to be one of the most learner-friendly languages around because its syntax is rather clean and simple.
    Offline

    12
    ReputationRep:
    (Original post by winterscoming)
    No you don't need to pay anything for any of the major programming languages (Python, Java, C, C#, C++ - all the tools for those are freely available).

    Python is definitely a good language to start with, and there's plenty of free resources to get you going. e.g.
    MIT course (free course, the paid certificate is optional): https://www.edx.org/course/introduct...itx-6-00-1x-11
    Codecademy Python (Ignore the paid-for bits. Runs in the browser, nothing to install): https://www.codecademy.com/learn/learn-python
    Official "getting started" Python page: https://www.python.org/about/gettingstarted/

    There's not really a "best" language to start out with. Python and Java are probably the two most common however; Python tends to be one of the most learner-friendly languages around because its syntax is rather clean and simple.
    I'll probably start with one of them then. So you can literally download it from the internet?
    Offline

    18
    ReputationRep:
    (Original post by Priyanboss517)
    I'll probably start with one of them then. So you can literally download it from the internet?
    Yes - you just need the Python interpreter, and ideally an IDE (Integrated Development Environment - basically a set of tools which help you write code and give you a more 'user friendly' experience than just writing everything in Nodepad..).

    Have a look at the official website for latest version of the Python interpreter (currently 3.6.4):
    https://www.python.org/downloads/

    If you want a free Python IDE, have a look at PyCharm Community (this is entirely optional, and the MIT course might use a different IDE as well, but PyCharm is a decent tool for general Python stuff):
    https://www.jetbrains.com/pycharm/download/
    https://www.jetbrains.com/help/pycharm/first-steps.html (getting-started guide)
    Offline

    12
    ReputationRep:
    (Original post by winterscoming)
    Yes - you just need the Python interpreter, and ideally an IDE (Integrated Development Environment - basically a set of tools which help you write code and give you a more 'user friendly' experience than just writing everything in Nodepad..).

    Have a look at the official website for latest version of the Python interpreter (currently 3.6.4):
    https://www.python.org/downloads/

    If you want a free Python IDE, have a look at PyCharm Community (this is entirely optional, and the MIT course might use a different IDE as well, but PyCharm is a decent tool for general Python stuff):
    https://www.jetbrains.com/pycharm/download/
    https://www.jetbrains.com/help/pycharm/first-steps.html (getting-started guide)
    Right, I definitely have a look thanks!
    • Thread Starter
    Offline

    8
    ReputationRep:
    (Original post by EmilySarah00)
    Which exam board are you actually doing? I presume it's not OCR since we can do Java in the OCR program, not to mention that there's a project also involved.
    Yea, im doing cambridge international
    • Thread Starter
    Offline

    8
    ReputationRep:
    (Original post by zahlicious)
    do you have any past paper questions or typical-like exam questions that can help me for my revision? I'm also doing A2 CS but with AQA exam board and since it is a new spec, there is not enough resources out there
    same here, there are not many exam papers. You could search for CIE A Level computer science past papers.
    Offline

    13
    ReputationRep:
    (Original post by zahlicious)
    do you have any past paper questions or typical-like exam questions that can help me for my revision? I'm also doing A2 CS but with AQA exam board and since it is a new spec, there is not enough resources out there
    For AQA significant parts of the spec have remained the same, or similar. So I'd advise using the old spec past papers, but working out where the specs differ and not worrying about picking up marks for the no longer relevent questions (although being able to answer them anyway is never going to put you at a disadvantage) as well as seeking out questions for the new areas and expanded areas of the new spec. You may be able to find questions on these topics in other exam board papers, or through completing worksheets (my college have provided ones which have been created for the text book we use)

    Also due to the fact that the A Level is now linear you can use the the new spec AS papers as revision too as they'll cover some of the topics in the A2 paper
    Offline

    12
    ReputationRep:
    (Original post by owenlearnstopun)
    same here, there are not many exam papers. You could search for CIE A Level computer science past papers.
    thanks! I was thinking to check out other exam boards with similar topics
    Offline

    12
    ReputationRep:
    (Original post by Faction Paradox)
    For AQA significant parts of the spec have remained the same, or similar. So I'd advise using the old spec past papers, but working out where the specs differ and not worrying about picking up marks for the no longer relevent questions (although being able to answer them anyway is never going to put you at a disadvantage) as well as seeking out questions for the new areas and expanded areas of the new spec. You may be able to find questions on these topics in other exam board papers, or through completing worksheets (my college have provided ones which have been created for the text book we use)

    Also due to the fact that the A Level is now linear you can use the the new spec AS papers as revision too as they'll cover some of the topics in the A2 paper
    thanks! I've already made notes from the entire book. And completed most questions in the textbook and all the specimen papers on the website for my revision for my A2 mock and last year's AS mock. The thing is I can't find the old spec anymore. I think the aqa website removed it. So I was thinking to just check out other exam boards with similar topics.
    • Thread Starter
    Offline

    8
    ReputationRep:
    (Original post by zahlicious)
    thanks! I was thinking to check out other exam boards with similar topics
    yea, we use AQA and Edexel past papers sometimes too. They are mostly the same. By this point, hopefully you will know what you are supposed to know, so that you could just skip the questions that you are not required to know
    Offline

    12
    ReputationRep:
    (Original post by owenlearnstopun)
    yea, we use AQA and Edexel past papers sometimes too. They are mostly the same. By this point, hopefully you will know what you are supposed to know, so that you could just skip the questions that you are not required to know
    Haha thank you so much!! yeah I do, hopefully, wish me luck
    • Thread Starter
    Offline

    8
    ReputationRep:
    (Original post by zahlicious)
    Haha thank you so much!! yeah I do, hopefully, wish me luck
    good luck man!
 
 
 
Poll
Who is most responsible for your success at university

The Student Room, Get Revising and Marked by Teachers are trading names of The Student Room Group Ltd.

Register Number: 04666380 (England and Wales), VAT No. 806 8067 22 Registered Office: International House, Queens Road, Brighton, BN1 3XE

Write a reply...
Reply
Hide
Reputation gems: You get these gems as you gain rep from other members for making good contributions and giving helpful advice.