Git Product home page Git Product logo

courses-introduction-to-python's Introduction

courses-introduction-to-python's People

Contributors

amy-datacamp avatar bgordts avatar chapmanj-2810 avatar datacamp-content-creator avatar datacamp-machine-user avatar filipsch avatar gor181 avatar hermansje avatar isserp avatar izzyweber avatar jakemoody avatar jasminludolf avatar jng985 avatar joycechiu avatar jsaddlemyer avatar karawoo avatar klmedeiros avatar machow avatar matsuim avatar mcls avatar ncarchedi avatar nicksolomon avatar nunorafaelrocha avatar richierocks avatar saciestudio avatar shoninouye avatar timsangster avatar vvnkr avatar will-so avatar yashasroy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

courses-introduction-to-python's Issues

Be careful with tone

"Python is getting funkier by the minute, but fear not" and similar phrases should probably be excised - one good rule of writing is that if something isn't still witty the fifth time you say it aloud, it should be cut.

learnpython.org: Classes_and_Objects static var represented as instance var

Hi, not sure if I should address the issue here, but maybe you can redirect :)

in https://www.learnpython.org/en/Classes_and_Objects
in Accessing Object Variables
in 3-rd exercise

class MyClass:
    variable = "blah"

    def function(self):
        print("This is a message inside the class.")

myobjectx = MyClass()
myobjecty = MyClass()

myobjecty.variable = "yackity"

# Then pring out both values
print(myobjectx.variable)
print(myobjecty.variable)

explanation does'nt mention, that new instance variable is created (and overrides static variable for that instance)
And doesn't mention possibility of MyClass.variable = "asdf"

imo, instead should be introduced

    __init__(self):
         self.variable = "blah"

Add units to variable names throughout ch4

There are sooo many feedback message from students in non-US countries saying that height and weight are the wrong way round. the issue is that they see heights in inches of 70 or so, and assume that they are weights in kg.

The text explains the units to them several times, but so solve the problem completely, we need to write the variable names as height_in and weight_lb throughout the whole chapter.

Explain why slices are inclusive:exclusive

I've found that Python's inclusive:exclusive convention for slices confuses every newcomer, particularly those with backgrounds in MATLAB and other languages that are inclusive at both ends. There are several made-up explanations for why Python works this way: including any explanation at this point will help novices remember the rule.

Later, the notes say that "The start index will be included, while the end index is not" - should change to say "the value at the start index..." and likewise for the end (since another common confusion is between indices and the values they select).

Add memory diagrams when explaining copying vs. aliasing

The most effective way to explain the difference between copying and aliasing is with diagrams. If they haven't been introduced earlier, the section "Inner workings of lists" is a good place: without pictures of what slicing does (creates a new list whose elements alias values from the source list), most learners won't understand why a[:] creates a copy, or why list(some_existing_list) does.

Consider switching to "universally serious" examples

Sports examples (e.g. baseball) may lack cross-cultural appeal, and while sports is big business, it is typically regarded as less "serious" than some other fields. Things like health care data, on the other hand, are cross-culturally comprehensible and universally regarded as "serious".

Inconsistent use of underscore

Chapter 2 introduces a variable areas_1, but earlier, we had el1 and el2 without the underscore - pick one style and stick to it. (Separating words with underscores is slightly more readable for non-native speaks of a language than runningWordsTogether, but consistency trumps both.)

Incorrect validation for upstairs

When the user omitting the begin index on slicing lesson there's no validation for upstairs, the exercise asks for:
Create upstairs again, as the last 4 elements of areas. This time, simplify the slicing by omitting the end index.

Do not use term "iterable"

ex5 of Chapter 2 uses the term "iterable", but neither the concept nor the term have been introduced.

`help(complex)` is terrifying

Chapter 2 has learners run help(complex) - the output is pretty dense even for someone familiar with Python. Can we introduce help with something (much) simpler?

Only use `()` after function name when calling it

It's common in some technical documentation to write f() to mean "the function f". However:

  1. It's then confusing for readers whether f() means "the function" or "a zero-arg call to the function".
  2. This confusion becomes a lot worse when doing higher-order functions.
  3. It's inconsistent: we don't write a[] to mean "the array a".

Strongly recommend changing house style so that f is "the function as a thing" and f() is "the function called without arguments".

Chap 2 - Session Keeps Timing Out

Background
"Hi, for some reason in Python class after I listened to the next session I’m able to run code but the submit answer seems to fail. Restart allows to run code again but I can’t submit the answer."

Replicate

I can confirm when inputting the accurate code to exercise:
https://campus.datacamp.com/courses/intro-to-python-for-data-science/chapter-2-python-lists?ex=2

The system accepts the code, lets me know I've passed but when I check the outline of the course it resets back to looking as if I never submitted an answer for that exercise:

screen shot 2018-08-09 at 11 32 33 am

screen shot 2018-08-09 at 11 32 54 am

UID: 2692990

Zendesk Information

Linked with zendesk ticket: 109989

Exercise 4-6 is confusing

I found exercise 6 of chapter 4 (on constructing arrays) confusing - I'll try to come up with an alternative.

Use concrete examples to introduce lists

First example of lists is [a, b, c], but those are abstractions: better to introduce with something concrete to reduce cognitive load in novices.

Later, the example is [el1, el2, el3], which is probably even harder to understand: el is presumably an abbreviation for element, but given how verbose we are with naming things elsewhere, it's unlikely that novices will clue to that - they will probably also be wondering whether they missed the definition of el1 somewhere.

Stick to single-quoted strings

By default, Python 3 displays strings using single quotes. We should therefore use single-quoted strings everywhere in our code (except when demonstrating that double quotes also work) to reduce cognitive load.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.