Computer software ================= This is fundamentally a course on computer software, and writing it, and so there is more background to go over on this topic. Important is to have some familiarity with the *command line*. This is a text based interface for giving commands to a computer, and we'll make a lot of use of. We don't assume you're coming from a background with programming experience, and so we also go over some of the basic concepts we'll need. Mainly *files* and *folders* which we use to help keep our work organized. We'll also briefly go over the major operating systems and how they differ. The course is in principle cross-platform, it shouldn't matter which operating system you're using. When we get into the later topics of :ref:`programming fundamentals ` we'll find there's quite a lot more detail on how computers work, *behind the scenes*. You don't need lots of this when you first start out, but as you write more advanced code you need to know more about how the computer is actually working. .. toctree:: :maxdepth: 1 :hidden: computer_software/major_operating_systems computer_software/gui_and_cli computer_software/files_and_folders