Oto moje zdanie po kilku nieudanych próbach i kilku całkiem dobrych próbach:
Programowanie to rozwiązywanie problemów.
Zacznij od konkretnych rzeczy, które są zaprogramowane, z których korzystają na co dzień - przeglądarka internetowa (facebook), telefon komórkowy, kasa fiskalna itp. Zdobądź je, aby podały wiele przykładów. Ustal, że wszystkie te rzeczy mają rodzaj komputera. Sercem komputera jest procesor.
Procesor jest jak bardzo szybki, ale bardzo głupi pracownik. Jeśli podasz mu jakieś instrukcje, zrobi to dokładnie tak, jak mówisz. Nie zrobi nic więcej i nie powie ci, czy coś, co kazałeś zrobić, było złe. Ten procesor robi jednak wszystko - jeśli powiesz mu dokładnie, jak to zrobić, może zadzwonić lub umieścić zdjęcie w wiadomości e-mail.
Zapytaj ją, jak powie bardzo szybkiemu, ale bardzo głupiemu pracownikowi, aby kupił puszkę z napojem z automatu z napojami. Gdy zacznie opisywać kroki („Włóż pieniądze do maszyny i naciśnij przycisk.”) Zacznij rozdzielać je jak program („Co to są pieniądze? Jak włożyć pieniądze do maszyny? Kiedy wkładam pieniądze do maszyny i naciśnij przycisk w tym samym czasie nic się nie dzieje. ”). Jeśli masz tablicę, zacznij od lewej z jej pierwszym zestawem instrukcji. Gdy je poprawi, umieść nową, większą listę po prawej stronie. Kiedy masz dobry zestaw instrukcji, zacznij uogólniać elementy („Wyjmij pieniądze z kieszeni i wyjmij napój gazowany z tacy brzmi podobnie - jakie części są takie same / różne?”) Weź uogólnienia i umieść je na środku i skreślić elementy, które teraz obejmują. Spróbuj w końcu związać elementy, aby pasowały do jej oryginalnych instrukcji, podobnie jak wywołania funkcji. Inne dobre ćwiczenia: napisz list, przejdź przez drzwi, narysuj okrąg / kwadrat / trójkąt.
Programowanie polega więc na rozwiązywaniu problemów: dzieleniu problemów na części, identyfikowaniu wspólnych części i grupowaniu tych części z powrotem w celu rozwiązania problemów. Wkrótce dowiadujesz się, że niektóre części są wspólne dla wielu problemów, a następnie zaczynasz układać części, aby rozwiązać problemy, o których nawet nie wiedziałeś, że masz.
Okej, w tym momencie może zrozumieć, ale pewnie się nudzi. Kontynuuj z zestawem ciekawych przykładów programowania. Shadery i związany z nimi kod wizualny są łatwe do pokazania - możesz umieścić zdjęcie i zacząć wprowadzać w nim zmiany za pomocą bardzo małych zmian kodu. Jeśli wyraziła zainteresowanie Facebookiem, pochwal się rozmową z Facebookiem przez REST, aby zobaczyć dane znajomych znajomych (6 stopni) Jeśli lubi gry wideo, pochwal się kilkoma demonstracjami gier typu open source wraz z kilkoma fragmentami ich kodu i tym, jak pomagają w grze. Zakończ to, pokazując kilka bezpłatnych narzędzi i zasobów, które mogłaby zbadać w domu. (Python, C # itp.)
Moje nieudane próby: próba wyjaśnienia obliczeń pi (pytali), gra planszowa C-Jump http://c-jump.com/ (nie dostali jej i instrukcje były błędne), i kodowanie na żywo 2d gra (po prostu nie mogła zainteresować, bez względu na to, jak małe kroki robiłem między demami).
Powodzenia!