"Kompetentność" uczących się programowania

"Kompetentność" uczących się programowania

Wątek przeniesiony 2016-02-06 18:37 z Nietuzinkowe tematy przez somekind.

0

Od dłuższego czasu (~ 2 lata) przeglądam te forum jak i kilka innych dotyczących programowania nie tylko PL. Zauważyłem, że u osób uczących się programować jest tendencja do zakładania tematów na forach internetowych takich jak choćby 4P prosząc innych 1) o pomoc w rozwiązaniu zadania, bo nie potrafi wykonać, 2) pomoc w znalezieniu zazwyczaj banalnego błędu, 3) pomoc w napisaniu jakiś funkcji, 4) i inne. Większość zakładanych tematów obejmuje proste programy, a nie skomplikowane algorytmy czy inne twory, gdzie pomoc bardziej doświadczonych może być cenna.

90 - 95% zakładanych tematów można rozwiązać korzystając z posiadanej książki (o ile jest dobra) czy przeglądając jakieś dobre kursy dostępne w sieci.

Ktoś kto chce zostać programistą powinien tak proste problemy rozwiązywać sam, a nie szukać pomocy u osób trzecich.

Jakie macie zdanie na ten temat? Sam rozpoczynając naukę z 3 lata temu C++ przerobiłem jeden kurs dostępny w sieci, kupiłem nie pamiętam teraz 3 - 4 książki (w tym jedna dla średnio zaawansowanych) i starałem uczyć się zgłębiać dany temat w nich wszystkich, a pojawiające się problemy podczas pisania jakiegoś programu byłem w stanie rozwiązać posiadając te książki, a nie szukając porad w sieci: założenie tematu, opisanie problemu -> więcej czasu, niż znalezienie go w posiadanych książkach.

Przykładowe, ostatnie tematy z interesującego mnie działu zatem C++
http://4programmers.net/Forum/C_i_C++/266092-przypisywanie_do_napisu_wartosci_liczbowej
http://4programmers.net/Forum/C_i_C++/266073-inny_wynik_niz_powinien (o ten się uczy. Bardzo banalny problem do rozwiązania wystarczy przeczytać porządny kurs w sieci czy dobrze rozdział w książce)
http://4programmers.net/Forum/C_i_C++/266068-suma_cyfr_w_zmiennej_string

szarotka
To ma być nietuzinkowy temat? hmmmm Odnośnie twoich spostrzeżeń, ludzie po prostu są leniwi a większość nie chce sie nauczyć, tylko zaliczyć przedmiot jak najmniejszym wysiłkiem, nie angażując mózgu.
0

Po co kurs jak jest forum? Poza tym nie każdy ma czas się uczyć, np. studenci.

1

Ta... na forum nauczysz się programować. Co za bzdurna odpowiedź. Co robią studenci?? Uczą się tak?

szarotka
Wyluzuj. Sarkazm.
KA
KA
  • Rejestracja:prawie 12 lat
  • Ostatnio:prawie 5 lat
  • Lokalizacja:Warszawa
  • Postów:1683
1
Wielki Orzeł napisał(a):

Ta... na forum nauczysz się programować. Co za bzdurna odpowiedź. Co robią studenci?? Uczą się tak?

Wyluzuj. Wiele fajnych rzeczy można usłyszeć albo nauczyć się na forum. nauczyć się czegoś można się nawet w toitoi zależy od podejścia. a Ty masz chyba mentalność taką, że niczego byś się nie nauczył


PROGRAMY NA ZAMÓWIENIE, ZALICZENIA STUDENCKIE, KONFIGURACJA SERWERÓW, SYSTEMÓW I BAZ DANYCH, STRONY INTERNETOWE, POMOC W PROGRAMOWANIU, POPRAWIENIE I OPTYMALIZACJA APLIKACJI
JAVA, C++, LINUX, WWW, SQL, PYTHON
POSIADAM KOMERCYJNE DOŚWIADCZENIE
TANIO, SZYBKO I PORZĄDNIE
Z KOMENTARZAMI OBJAŚNIAJĄCYMI KOD
PISZ NA PRYWATNĄ WIADOMOŚĆ
CENY JUŻ OD 49,99ZŁ ZA PROGRAM
ZAJMIJ SIĘ TYM CO CIĘ NAPRAWDĘ INTERESUJE!
Zobacz pozostałe 3 komentarze
woolfik
Ja się zastanawiam czego się można w ToiToi nauczyć? Wstrzymywać oddech na dwie minuty? ;]
szarotka
woolfik No przecież najlepsze pomysły wtedy przychodzą.
woolfik
@szarotka w normalnym kibelku w domu/pracy ok ale w ToiToi?
szarotka
@woolfik, bo ty nie rozumiesz kobiet
KM
  • Rejestracja:ponad 10 lat
  • Ostatnio:prawie 4 lata
  • Postów:473
0

@WielkiOrzeł

Masz trochę racji, ale dla kogoś całkowicie „zielonego” poszukiwanie informacji, rozwiązywanie problemów może być trudniejsze z powodu braku warszatatu. Ty oceniasz sprawę tak, jakbyś miał ten sam warsztat co teraz, ale wiedzę na poziomie newbiego. Tak nie jest, warsztat też trzeba sobie wyrobić. Ja może jest trochę bardziej wyrozumiały ale to dlatego, że sam pamiętam, jak jakiś czas temu nie do przejścia były dla mnie problemy, które teraz potrafię rozwiązać. (a dotąd uważam się za początkującego). W czasie, kiedy zaczynałem stawiać pierwsze ify, to problem ze scanf("%c") zamiast scanf(" %c") zatrzymałby mnie na dobre. I przypuszczam, że sam bym tego nie rozwiązał, bo nie wiedziałbym, czego szukać, a strony takie jak cppreference byłyby dla mnie nie do przełknięcia z powodu nagromadzenia nieznanych mi słów i konstrukcji języka programowania.

Dostosowuj wymagania do umiejętności.

edytowany 1x, ostatnio: kmph
shagrin
  • Rejestracja:prawie 17 lat
  • Ostatnio:około 6 lat
  • Lokalizacja:Norwegia, Stavanger
3

Po to jest dział Newbie- tam wszyscy stawiają pierwsze kroki, i jeśli nawet pytania są trywialne, będziemy na nie odpowiadać, a przynajmniej podpowiadać gdzie i jak szukać odpowiedzi. Jeśli komuś to przeszkadza, nie musi tego działu śledzić.

Warto jednak zauważyć, że często do tego trywialnego problemu, pojawia się wyjaśnienie dlaczego tak to działa. Znalezienie w książce rozwiązania i skopiowanie do swojego projektu nie wiele da.
Uważam, że wytłumaczenie istoty zagadnienia jest bezcenne jeśli chodzi o naukę (nie tylko) programowania, a tłumaczenia z książek nie zawsze są wyczerpujące i zrozumiałe dla wszystkich, albo po prostu ich brakuje.


PrzemolPrzemol
  • Rejestracja:ponad 9 lat
  • Ostatnio:prawie 9 lat
  • Postów:225
0

Ja się poniekąd z autorem tematu zgadzam mimo, że sam rozpoczynając naukę C++ (nie tak dawno temu) kilkukrotnie pytałem się na forum. Jednak z chwilą czasu postanowiłem rozwiązywać problemy samodzielnie co zdecydowanie wychodzi mi na plus. Jak zacząłem jeszcze intensywniej myśleć, dlaczego to nie działa, a jak można by to zrobić krócej zaczęło mi to wychodzić na plus. Zaopatrzyłem się w 4 książki (Szkoła Programowania ; Programowanie. Teoria i praktyka z wykorzystaniem C++ ; Język C++. Kompendium wiedzy ; C++ dla każdego) i na podstawie tych czterech książek rozwiązuje wszelkie swoje problemy bez angażowania czasu na zakładanie tematów na forum i oczekiwania na odpowiedź (mimo, że szybka jest).


In progress: C++ || Asm
NE
  • Rejestracja:ponad 9 lat
  • Ostatnio:około 8 lat
  • Postów:186
0

Nie wiem, czy ta młodzież teraz jakaś bardziej leniwa i roszczeniowa, ale też mnie te skrajności denerwują. Ja chyba nigdy nie napisałam na żadnym forum (poza forum roku) prośby o pomoc w programowaniu.


(konto nieaktywne)
czysteskarpety
czysteskarpety
  • Rejestracja:prawie 10 lat
  • Ostatnio:ponad 4 lata
  • Lokalizacja:Piwnica
  • Postów:7697
1

najlepsze są tematy "coś mi nie wychodzi" i zero kodu, przykładu, strony, itp. :D


Ensiferra
  • Rejestracja:około 9 lat
  • Ostatnio:około 7 lat
  • Postów:6
0

Jasne, są też leniwi i ci, którzy muszą napisać program na zaliczenie "na wczoraj", ale nie wrzucajmy wszystkich do jednego wora.

Im młodszy język, tym trudniej o porządny podręcznik. Ogólnie jest ich mało, a niektóre jeszcze zawierają błędy (do tego piję: http://4programmers.net/Forum/Edukacja/266643-ruby_ksiazka). Jak oprzesz naukę na takim błędnym przewodniku, to zostaje potem prostowanie rzeczy po forach.


Teach a men to reason and he will think for a lifetime.
fasadin
"Im młodszy język, tym trudniej o porządny podręcznik" nie prawda. po Polsku nie ma dobrej ksiazki o C++
NE
@fasadin Co jest złego w symfonii Grębosza?
fasadin
1. Uczy C z klasami zamiast c++ 2. Nie ma nic o c++11. 3. Nie ma nic o RAII 4. Skupia sie na matematycznym aspekcie ktory nie jest potrzebny w programowaniu tak bardzo) 5. jest przestarzala 6. Nie ma templatow 7. Nie ma prostych wzorcow i pokazaniu jak sie buduje aplikacje 8.Uczy "zlych" technik (nie pamietam dokladnej strony... a ksiazki juz nie mam). Juz duzo lepsza jest praty c++ jednak nadal jej brakuje do dobrej ksiazki o C++ (bo jest po prostu przestarzala)
kaczus
@ness najkrócej można napisać jest bardzo nieaktualna
flowCRANE
Moderator Delphi/Pascal
  • Rejestracja:ponad 13 lat
  • Ostatnio:około 7 godzin
  • Lokalizacja:Tuchów
  • Postów:12164
10

W większości można się z pierwszym postem zgodzić (reszty nie czytałem - TL;DR), jednak to:

Ktoś kto chce zostać programistą powinien tak proste problemy rozwiązywać sam, a nie szukać pomocy u osób trzecich.

jest założeniem kolejnej osoby na forum, która czegoś nie rozumie;

Serwis 4programmers to nie jest serwis tylko i wyłącznie dla programistów obecnych i przyszłych; Sporo ludzi zakłada sobie tutaj konta i wątki bo ma styczność z programowaniem, natomiast programistami zostać wcale nie chcą; Do tej grupy mogą się zaliczać przede wszystkim uczniowie szkół średnich i studiów;

Sporo wątków już pojawiło się, w których od doświadczonych klepaczy padały komentarze - "zostaw programowanie, bo to nie dla Ciebie"; A jakie były często odpowiedzi? "Ale ja nie chcę być programistą - takie mam zadanie na studiach, muszę zrobić, oddać i zaliczyć";

Bierzcie to też pod uwagę, że nie każdy marzy aby zostać "koderem".


Pracuję nad własną, arcade'ową, docelowo komercyjną grą z gatunku action/adventure w stylu retro (pixel art), programując silnik i powłokę gry od zupełnych podstaw, przy użyciu Free Pascala i SDL3. Więcej informacji znajdziesz na moim mikroblogu.
edytowany 3x, ostatnio: flowCRANE
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)