Skip to main content

The learning journey

As you progress through the rest of the book, don’t be afraid if the concepts don’t
seem to fit together well the first time. When you were learning to speak, it was
not a problem for your first few years you just made cute gurgling noises. And it
was OK if it took six months for you to move from simple vocabulary to simple
sentences and took 5-6 more years to move from sentences to paragraphs, and a
few more years to be able to write an interesting complete short story on your own.
We want you to learn Python much more rapidly, so we teach it all at the same
time over the next few chapters. But it is like learning a new language that takes
time to absorb and understand before it feels natural. That leads to some confusion
as we visit and revisit topics to try to get you to see the big picture while we are
defining the tiny fragments that make up the big picture. While the book is written
linearly and if you are taking a course, it will progress in a linear fashion, don’t
hesitate to be very non-linear in how you approach the material. Look forwards
and backwards and read with a light touch. By skimming more advanced material
without fully understanding the details, you can get a better understanding of
the “why?” of programming. By reviewing previous material and even re-doing
earlier exercises, you will realize that you actually learned a lot of material even if
the material you are currently staring at seems a bit impenetrable.
Usually when you are learning your first programming language, there are a few
wonderful “Ah-Hah!” moments where you can look up from pounding away at
some rock with a hammer and chisel and step away and see that you are indeed
building a beautiful sculpture.
If something seems particularly hard, there is usually no value in staying up all
night and staring at it. Take a break, take a nap, have a snack, explain what you
are having a problem with to someone (or perhaps your dog), and then come back
it with fresh eyes. I assure you that once you learn the programming concepts in
the book you will look back and see that it was all really easy and elegant and it
simply took you a bit of time to absorb it.

Comments

Popular posts from this blog

Special Permissions in linux

The setuid permission on an executable file means that the command will run as the user owning the file, not as the user that ran the command. One example is the passwd command: [student@desktopX ~]$ ls -l /usr/bin/passwd -rw s r-xr-x. 1 root root 35504 Jul 16 2010 /usr/bin/passwd In a long listing, you can spot the setuid permissions by a lowercase s where you would normally expect the x (owner execute permissions) to be. If the owner does not have execute permissions, this will be replaced by an uppercase S . The special permission setgid on a directory means that files created in the directory will inherit their group ownership from the directory, rather than inheriting it from the creating user. This is commonly used on group collaborative directories to automatically change a file from the default private group to the shared group, or if files in a directory should be

The Seven-Step Model of Migration

Irrespective of the migration approach adopted, the Seven-step Model of Cloud Migration creates a more rational point of view towards the migration process and offers the ability to imbibe several best practices throughout the journey Step 1: Assess Cloud migration assessments are conducted to understand the complexities in the migration process at the code, design and architectural levels. The investment and the recurring costs are also evaluated along with gauging the tools, test cases, functionalities and other features related to the configuration. Step 2: Isolate The applications to be migrated to the cloud from the internal data center are freed of dependencies pertaining to the environment and the existing system. This step cuts a clearer picture about the complexity of the migration process. Step 3: Map Most organisations hold a detailed mapping of their environment with all the systems and applications. This information can be used to distinguish between the

RequestsDependencyWarning: urllib3 (1.24.1) or chardet (3.0.4) doesn't match a supported version

import tweepy /usr/lib/python2.7/dist-packages/requests/__init__.py:80: RequestsDependencyWarning: urllib3 (1.24.1) or chardet (3.0.4) doesn't match a supported version!   RequestsDependencyWarning) Traceback (most recent call last):   File "<stdin>", line 1, in <module>   File "/usr/local/lib/python2.7/dist-packages/tweepy/__init__.py", line 14, in <module>     from tweepy.api import API   File "/usr/local/lib/python2.7/dist-packages/tweepy/api.py", line 12, in <module>     from tweepy.binder import bind_api   File "/usr/local/lib/python2.7/dist-packages/tweepy/binder.py", line 11, in <module>     import requests   File "/usr/lib/python2.7/dist-packages/requests/__init__.py", line 97, in <module>     from . import utils   File "/usr/lib/python2.7/dist-packages/requests/utils.py", line 26, in <module>     from ._internal_utils import to_native_string   File "/usr/lib/python2.

tag