As I continue to teach myself coding on my deployment I have come across a few things that are helpful when learning to code without internet. So far I have been deployed for almost 6 months and have had a total of about 10 days where I could connect my laptop to the internet. My goal in this article is to share what I have found to be the most beneficial things to download as well as print in the limited time that you have and then how you can use them to practice without a connection.
If you just want to get started as fast as possible and you’re not really worried about what language you learn. I’ve found that most computers have some version of Python installed on them.
If you have a windows computer press Win+R > type powershell > Enter/OK
Type python --version
If you have a Mac go to Finder > Applications > Utilities > Terminal
Type python –-version
If python is installed on your computer it will show you the version of python that you are running for example:
Python 3.7.3
If you do not have python installed you can install it here:
https://www.python.org/downloads/
Once you have Python installed you can use Python’s IDLE or Integrated Development and Learning Environment.
I suggest going to this website and printing the whole webpage (it’s about 16 pages long). It will explain how to get started using the IDLE much better than I can in this article. https://realpython.com/python-idle/.
However, if you have the time it's better to download a text editor such as Sublime Text or Pycharm.
https://www.jetbrains.com/pycharm/
You will also need a quick beginner's guide to get you started with the syntax and some things that Python is capable of. You can dowload this guide and review it whenever you get stuck.
https://www.tnstate.edu/faculty/fyao/COMP3050/Py-tutorial.pdf
I HIGHLY recommend Python Crash Course by Eric Matthes. If you can get a copy of it you can code through about half of it and learn all of the basices before actually needing the internet. However, you need to download the .zip file that contains all of the images and things that you use for the projects. Both are below.
https://ehmatthes.github.io/pcc/
I would then print out a few sites with projects that have the code posted just so that you can follow along. It’s good to see some progress when you’re first starting. I would build a project with the code in front of me and then I would try to build it without the code. This will help you understand what keywords do what. You will inevitably miss something and have to fix it. That’s the best way to learn. If you’re really stuck you can always go back and compare what you have against the code that you have printed, but it’s good to try to solve it yourself first.
Here is a website that you can print that has 10 projects with code:
Another thing to do is to print out some coding challenges with answers. This will force you to think more analytically and really break things down. Like before, try as hard as you can to solve the problems, but if you’re making no progress look at the answer. By doing this you’ll ensure that you remember the solution, because essentially, in the game of solving the problem, you lost. You won’t want to “lose” in the future, so you will remember the solution.
Here is an amazing github repository with 100+ beginner python challenges with the solutions:
To run your code, go to the Mac Terminal of Windows Powershell, type Python
and then drag your file from wherever you saved it into the window and press Enter.
In my opinion, getting started with Python is probably the easiest route when you don’t have internet for very long. Most of the time it’s already installed, it’s a pretty straightforward language to learn, and the community for Python is amazing.
However, if you have a little extra time I would recommend either getting Sublime Text editor or Pycharm.
These are editors that will allow you to write code and see where you may have made mistakes as well as move around the code a little easier.
I hope that this helps a few people that really want to get started, but don’t know what to do. Having unreliable internet or just not being able to connect very often can really slow down your progress. If you follow what I have laid out above and stick with it not only will you learn to code, but you will feel confident about your abilities because you are actually seeing progress.