
Peter Holmes
0
3438
36
Wszystko, co musisz wiedzieć o dobrym życiu, możesz uzyskać z programu komputerowego. Nie wierzysz mi? Czytaj.
Gdy zaczynałem jako dziecko jako programista, wystarczyło skopiować kopiujące słowa i symbole z czasopisma komputerowego, abyśmy wraz z bratem mogli zaopatrzyć naszego starego Franklina 64 w podwójny napęd dyskietek i zagrać śliczną cyfrową melodię na nas. W tamtych czasach nie było wielu lekcji życia, które pozwalałyby rozróżnić ten tajemniczy tekst.
Wiele lat później, w licealnej klasie Pascala, sprawy zaczęły wyglądać inaczej. Poznawanie instrukcji IF i pętli FOR zaczęło wywoływać filozoficzne połączenia synaps, z których byliby dumni Walt Whitman i Robert Frost. Okej, trochę przesadzam, ale te spostrzeżenia były całkiem fajne.
Tak, wiem, to dość nerdy rzecz do powiedzenia - ale prawda jest taka, że w kodzie jest dużo mądrości… podczas gdy oświadczenia, tablice, metody, obiekty i tak dalej. W rzeczywistości wiele rzeczy, których nauczyłem się o zarządzaniu życiem, pochodzi bezpośrednio z nauki różnych języków programowania.
Schematy blokowe upraszczają wszystko
Wielu programistów zaczyna używać schematów blokowych na długo przed tym, zanim zaczną pisać jeden wiersz kodu. Powodem tego jest to, że próba napisania całego programu naraz może wydawać się naprawdę przytłaczająca, szczególnie gdy program ma wykonać dość złożone zadania.
Programiści podejmą się tego dużego, gigantycznego projektu oprogramowania, a następnie podzielą je na mniejsze komponenty, którymi można lepiej zarządzać - na przykład budować samochód, najpierw budując każdy wymagany komponent, a następnie składając je wszystkie razem. Każdy komponent jest blokiem (lub kilkoma blokami) kodu, który przyjmuje określone zestawy wartości wejściowych lub akcji, a następnie wykonuje pewne zadanie wyjściowe. W tym komponencie programista prześledzi logikę od wejścia do wyjścia za pomocą schematów blokowych.
Schematy blokowe pomagają postępować zgodnie z logiką w formacie wizualnym, który jest znacznie łatwiejszy do zrozumienia niż w przypadku próby napisania go w tekście lub po prostu przedmuchania kodu i wymyślenia go w trakcie pracy. Powód, dla którego programiści nie rozumieją logiki “w locie” to dlatego, że logika, która pojawia się później, często zależy w dużej mierze od decyzji, które podejmiesz w sprawie obsługi wcześniejszej logiki w programie. Zdecyduj wcześniej źle, a możesz zaprogramować się w ślepy zaułek.
To samo dotyczy życia. Kiedy podejmujesz decyzję o spłacie długu Zrób osobisty budżet w programie Excel w 4 łatwych krokach Zrób osobisty budżet w programie Excel w 4 łatwych krokach Czy masz tak długi dług, że spłacenie go zajmie dekady? Czas ustalić budżet i zastosować kilka sztuczek Excela, aby szybciej spłacić swój dług. , kupowanie domu Najlepsze bezpłatne strony internetowe do znalezienia wykluczonych domów Najlepsze darmowe strony internetowe do znalezienia wykluczonych domów lub jak poradzić sobie z każdą inną złożoną sytuacją życiową, a nawet jak zarządzać projektem Trello - wyjątkowy, prosty i wydajny system zarządzania projektami od A Good Home Trello - wyjątkowy, prosty i wydajny system zarządzania projektami z dobrego domu Czy nazwisko Joel Spolsky ma dla Ciebie znaczenie? Jeśli tak, zechcesz przeczytać ten post, ponieważ pokazuje on najnowszy i największy projekt Spolsky'ego. A jeśli nie, powinieneś wiedzieć, że to… w pracy. Wszystkimi pozornie niemożliwymi do wykonania zadaniami można lepiej zarządzać, kiedy usiądziesz, położysz pióro na papierze i narysujesz kreatywny schemat blokowy. 5 kreatywnych schematów blokowych usprawniających pracę i życie 5 kreatywnych schematów blokowych usprawniających pracę i życie, kiedy pomyśl o dobrej zabawie, jaka jest pierwsza rzecz, jaka przychodzi ci na myśl? Prawdopodobnie nie schemat blokowy? każdego kroku w procesie lub decyzji. Pomoże Ci to podjąć decyzję o wszystkich możliwych wyborach lub przewidzieć wszystkie możliwości na każdym etapie, a następnie prześledzić różne scenariusze. Podobnie jak w przypadku programowania, zrozumienie, w jaki sposób wczesne wybory mogą wpłynąć na wyniki później, pomoże ci wcześnie podejmować znacznie lepiej wykształcone decyzje.
Wszystko ma swoje miejsce
Ilekroć zaczynasz pisać skrypt lub program, pierwszym krokiem jest zawsze tworzenie zmiennych. W programowaniu występują zmienne różnych typów. Masz ciągi znaków do przechowywania tekstu, liczby całkowite do przechowywania liczb nie dziesiętnych, podwójne lub warianty do obsługi większych liczb, a następnie masz tablice, struktury i więcej. Chodzi o zdefiniowanie zmiennej odpowiedniej dla danego zadania. Na przykład, jeśli wynikiem działania funkcji jest imię osoby, to zmienna łańcuchowa jest tym, czego chcesz.
To samo dotyczy organizacji życia, niezależnie od tego, czy jest to dom, czy biuro. Ty wybierasz rozmiar pojemników na rzeczy na podstawie tego, ile musisz przechowywać. Mały, przezroczysty plastikowy pojemnik na produkty suche lub półka z dobrze oznakowanymi pojemnikami na przyprawy w celu zaoszczędzenia miejsca. W biurze chcesz przechowywać codzienne dokumenty robocze w szufladzie na biurku, ale wrażliwe dokumenty biznesowe przechowujesz w zamkniętej szafce. Właściwy pojemnik na wszystko i wszystko ma swoje właściwe miejsce - to motto dobrze zorganizowanego życia.
Ponownie użyj modułów programu, aby zaoszczędzić czas
Każdy dobry programista w końcu uczy się pewnych bloków kodu, zwanych inaczej “Funkcje” może być ponownie użyty w wielu programach. Na przykład, jedną funkcję do konwersji z Fahrenheita na Celsjusza można użyć w każdym tworzonym programie, który wymaga ukończenia tego rodzaju zadania. Ta funkcja jest po prostu modułem, który mierzy temperaturę w stopniach Fahrenheita i zwraca ją w stopniach Celsjusza. Funkcja może zawierać pewną liczbę wierszy kodu, ale dlaczego miałbyś ponownie tworzyć te wiersze kodu dla każdego napisanego programu, skoro możesz po prostu zapisać je raz jako program “moduł”, a następnie włóż ten moduł do wszelkich przyszłych programów, które będą go potrzebować?
Henry Ford powiedział kiedyś o swoim słynnym Modelu T., “Każdy klient może pomalować samochód na dowolny kolor, pod warunkiem, że jest czarny.”
Powodem tego jest to, że Ford wymyślił sposób montażu samochodów i wyprowadzenia ich szybciej za drzwi, jeśli mógłby ponownie użyć tego samego sprzętu (i tego samego koloru farby) bez konieczności ponownego tworzenia procesu za każdym razem, gdy produkowano nowy samochód. To dało początek linii montażowej i zrewolucjonizowało przemysł motoryzacyjny. W ten sam sposób możesz stosować tę zasadę we wszystkich obszarach swojego życia, w których ciągle wykonujesz to samo zadanie. Automatyzacja jest kluczem do sukcesu, więc jeśli możesz znaleźć sposoby automatyzacji zadań w swojej pracy, które wykonujesz wielokrotnie - możesz sprawić, że Twój dzień będzie bardziej wydajny i zaoszczędzić czas.
Dokumentuj wszystko
Czasami programiści mogą po prostu latać przez pisanie kodu bez dokumentowania ani jednej rzeczy. To kuszące, ponieważ w każdej chwili dokładnie wiesz, co chcesz, aby program robił i jak chcesz to zrobić. Dokumentowanie programu wymaga czasu. Musisz opisać, w jaki sposób i dlaczego wykonujesz każdy krok. Wydaje się to wtedy bezcelowe, ale miesiące później, kiedy zdecydujesz się ponownie użyć tego kodu lub zmodyfikować go w innym celu, może to oznaczać różnicę między próbą zapamiętania, co do cholery robiłeś z każdą linią kodu, a szybkim uzyskaniem wracaj do prędkości z całą intencją logiki.
Ta drobiazgowa dokumentacja może pomóc w każdej dziedzinie życia, od śledzenia urodzin i rocznic, po dziennik codziennych transakcji biznesowych i dlaczego je wykonałeś. Codzienne życie może zamienić się w mijający dzień, a decyzje przychodzą i odchodzą jak liście wiejące na wietrze. Naiwne i nieefektywne jest ufanie tylko pamięci, aby pamiętać, dlaczego uczestniczyłeś w niektórych spotkaniach lub dlaczego dokonałeś pewnych zakupów. Dziennik codzienny Przewodnik dla dziennikarzy cyfrowych dla początkujących Przewodnik dla dziennikarzy cyfrowych dla początkujących Prowadzenie prywatnego dziennika to świetny sposób na rozwijanie umiejętności pisania, rozlewanie myśli, pragnień, zmartwień i przemyśleń na papierze. Sam akt pisania może często pomóc w przemyśleniu… lub rejestrowanie może znacznie przyczynić się do uwolnienia umysłu na ważniejsze rzeczy.
Zawsze zostawiaj sobie drogę ucieczki
Jednym z najczęstszych błędów programisty amatora jest nieskończona pętla. Jest to sytuacja, w której warunek konieczny do wyjścia z pętli nigdy tak naprawdę nie ma miejsca, więc program pozostaje w tej pętli i nigdy się nie kończy - zużywa 100% procesora komputera i prawie całkowicie blokuje komputer, dopóki nie zabijesz proces.
Lekcja, której musi nauczyć się programista amator, polega na tym, że za każdym razem, gdy tworzysz pętlę do wykonania jakiegoś zadania, które pochłania dużo mocy procesora, ważne jest, aby wprowadzić zawór zwalniający. Innymi słowy, zamiast opierać pętlę While na tym, czy obliczenia przekraczają pewną wartość (której w niektórych przypadkach może nigdy nie osiągnąć), dobrym pomysłem jest wprowadzenie bardzo podstawowej liczby pętli, a następnie dodanie warunku wtórnego, w którym Pętla musi się zakończyć, jeśli przekroczy pewną absurdalną liczbę pętli, nigdy tak naprawdę nie powinna osiągnąć, jeśli wszystko działa dobrze.
Jak może się to odnosić do prawdziwego życia? To pokazuje, że nawet jeśli uważasz, że masz wszystko zaplanowane idealnie, wszystko może pójść nie tak. Jednym z przykładów może być planowanie tygodniowego urlopu rodzinnego w najpiękniejszym, relaksującym tropikalnym raju, po to, by cały tydzień padało. Pomysł “droga ucieczki” w życiu trzeba myśleć o “najgorszy przypadek” scenariusz, a następnie wymyśl, jak możesz uniknąć tej sytuacji lub jak najlepiej ją wykorzystać, jeśli się spełni.
Życie nie zawsze jest przewidywalne, a niektóre z najlepiej opracowanych planów można łatwo rozwikłać, nawet jeśli uważasz, że nic nie może pójść źle. Planowanie najgorszego przypadku zapewni, że nie skończysz martwy w wodzie, gdy wydarzenie, którego się nie spodziewałeś, rzeczywiście się spełni.
Zwolnij pamięć po zakończeniu
Ostatnią lekcją życia, która wychodzi z programowania, jest sprzątanie po sobie. W programie musisz otworzyć strumień do pliku wyjściowego, utworzyć dużą tablicę wypełnioną punktami danych i innymi rzeczami, które zajmują pamięć komputera i zasoby. Czysty program to taki, który zamyka te strumienie wyjściowe lub opróżnia te tablice po zakończeniu ich działania. Chodzi tutaj o uniknięcie typowego problemu ze źle napisanymi aplikacjami, znanego jako wyciek pamięci.
Na przykład w prostej aplikacji VB wyczyścisz tablicę w następujący sposób:
Erase ArrayDin
Lub zamknij strumień plików taki jak ten:
FileClose (1)
To brzmi jak coś, co pewnie słyszałeś od swojej matki, kiedy byłeś młodszy, prawda? Posprzątaj swój pokój. Odłóż ubrania. Zrób swoje naczynia. Jednak posunął się o krok dalej, odkładając narzędzia, których obecnie używasz do danego zadania, nie tylko utrzymuje porządek w domu i miejscu pracy, ale także pozostawia dużo miejsca na szybsze wykonanie następnego projektu. Pozostawienie rzeczy w pobliżu tylko marnuje miejsce i czas, gdy nie możesz znaleźć tego, czego potrzebujesz później.
Dolna linia
Prawda jest taka, że nie ma tylko sześciu lekcji życia, których można nauczyć się sztuki programowania - jest ich o wiele więcej. Jeśli chodzi o organizację, planowanie, opracowywanie strategii i oszczędzanie zasobów, programiści komputerowi to zrozumieli. Z nauki języka programowania należy się wiele nauczyć. Którego języka programowania należy się nauczyć w zakresie tworzenia oprogramowania? Jakiego języka programowania należy się nauczyć w zakresie tworzenia oprogramowania? Zaczynając na ścieżce programowania, ważne jest, aby mądrze zainwestować swój czas w wybranie czegoś, co w obu przypadkach przyniesie korzyści w najbliższej przyszłości, z widocznymi wynikami na platformie…, poza samym programowaniem. W rzeczywistości dlatego każde dziecko powinno uczyć się co najmniej jednego języka programowania w szkole - ponieważ po zajęciu się sztuczkami w branży szybko staje się oczywiste, że możesz używać tych samych sztuczek w wielu innych częściach swojej szkoły życie.
Jakie są inne lekcje życia, dla których znalazłeś analogię w świecie programowania?
Kredyty graficzne: Schemat blokowy w Shutterstock, kod JavaScript w Shutterstock, programowanie kodu HTML w Shutterstock, kod programu na monitorze przez Shutterstock, Pavel L Photo i wideo / Shutterstock.com