Jak każda jedna rzecz w informatyce tak i tutaj możemy podzielić opisywaną sytuację na dwie kategorie. Tym razem mówimy o… użytkownikach korzystających z komputera. Dzielą się oni bowiem – jak już wspomniałem – na dwie kategorie. Pierwszą z nich są użytkownicy zwykli, włączają oni komputer po to by zrobić co mają zrobić, albo żeby pograć, albo żeby porozmawiać z kimś. Nie interesują się tym „jak to działa”, ważne dla nich jest tylko żeby działało. Drugą kategorią użytkowników są użytkownicy dociekliwi. Cechują się tym, że lubią grzebać w programach i zastanawiać się nad tym jak działa dana aplikacja. Ci szczególnie komfortowo czują się korzystając z linuxa.
Sam system bowiem jak i 90% aplikacji dostępnych na niego jest rozpowszechniana na licencji Open Source. Znaczy to mniej więcej tyle, że dostajemy nie tylko program zupełnie za darmo, ale otrzymujemy przede wszystkim program z otwartym kodem źródłowym, tak abyśmy mogli zaglądać do wnętrza plików i ewentualnie modyfikować te programy według własnego uznania. Zarówno edytując gotowe już programy jak i zaczynając tworzyć absolutnie nowe, autorskie aplikacje wkraczamy w świat programistyki. Programistyka to nauka o programowaniu (cytując encyklopedię). Samo programowanie zaś to nic innego jak sposób tworzenia aplikacji w oparciu o algorytmy.
Algorytm natomiast to dokładny sposób na opisanie a następnie rozwiązanie problemu krok po kroku. Przykładowo, aby zrobić program dodający trzeba przygotować algorytm, w którego skład wchodzić będą następujące operacje: uruchomienie programu, podanie jednej liczby, podanie drugiej liczby, wykonanie działania i wydrukowanie wyniku. Gdy mamy przygotowany już algorytm możemy przejść do zapisania go w jednym z wielu języków programowania. Gdy już zaprogramujemy całe działanie należy program skompilować czyli przekształcić go na formę wykonywalną. Wtedy to zapisany przez nas kod programu konwertowany jest w język binarny, który następnie – podczas uruchamiania aplikacji i korzystania z niej – jest przesyłany w czasie rzeczywistym do procesora, a następnie do pamięci RAM umożliwiając działanie aplikacji.
Chcąc nauczyć się programować nie są potrzebne specjalne kwalifikacje, tak naprawdę jedyne co potrzebujemy to książki, tudzież tutorialu gdzie opisana będzie struktura interesującego nas języka oraz silna wola i „tęgi” umysł. Dlaczego tęgi umysł? Ano dlatego, że programowanie łączy się przede wszystkim ze zdrowym i logicznym myśleniem oraz z masą obliczeń. Wszystko bowiem musimy robić małymi kroczkami łącząc ze sobą w coraz większe skrypty aż w końcu połączyć te większe skrypty w jeden wielki program.
Bardzo łatwo się pomylić dlatego nie możemy zapomnieć o tym, że po każdej większej modyfikacji naszej aplikacji powinniśmy sprawdzić czy ona działa. Programy możemy tworzyć nawet w notatniku, ale zaleca się korzystać ze specjalnych środowisk programistycznych. Pozwalają one na wykorzystywanie gotowych już bibliotek, tagują kawałki kodu tak, aby te były czytelniejsze oraz pozwalają na „szybką” kompilację tymczasową i sprawdzenie czy program działa (po zakończeniu działania programu zaś skompilowany kod jest usuwany).