Czy nauka programowania w Google ma znaczenie dla programisty? [Zamknięte]

15

To nie jest debata na temat używania Google jako dobrego lub złego dla programistów. Prosimy uprzejmie powstrzymać się od tego w swoich odpowiedziach.

Większość ludzi (zdecydowana większość osób korzystających z Internetu) korzysta obecnie z Google. Mówię o tym, 20 porad dotyczących bardziej efektywnych wyszukiwań w Google .

  1. Pytanie: Jak myślisz, jak ważne jest to dla programisty?
  2. Pytanie: W jaki sposób wyszukiwanie z doświadczeniem (więcej wiedzy na ten temat) wypada w porównaniu z efektywnym wyszukiwaniem, czyli wyszukiwaniem przez osobę doświadczoną w porównaniu z wyszukiwaniem osoby, która może wyszukiwać lepiej. Pod względem wydajności lub jakości .
  3. Pytanie: Czy uważasz, że należy tego nauczać w szkołach programistycznych, na stażystach lub stażystach? Uprzejmie powstrzymaj się od dyskusji na temat rozwijania zależności od Google w celu rozwiązywania problemów. 1) Nie o to chodzi w tym temacie 2) jeśli nie potrafią rozwiązać problemów, przez większość czasu nie zostaną zatrudnieni .
  4. Pytanie: Czy tego uczy się już w dobrych szkołach programistycznych?

Uwaga:

  • Trzeba przyznać, że artykuł nie jest niczym nowym.
  • Na niektóre pytania w witrynie udzielono odpowiedzi za pomocą prostej wyszukiwarki Google opublikowanej przez programistów, którzy mogliby po prostu lepiej ją wyszukać . Niezależnie od oczekiwania osobistego kontaktu z odpowiedziami, większość z nich była po prostu prawdziwymi odpowiedziami na bezpośrednie lub nieudane wyszukiwania.
  • To może być powszechna wiedza dla dobrych programistów. Ale IMHO nie dzieje się tak średnio.

    Istnieje różnica między

Googling
wprowadź opis zdjęcia tutaj

I wydajne wyszukiwanie

wprowadź opis zdjęcia tutaj

Aditya P.
źródło
4
Powód odmowy głosowania jest prosty Uwaga na początku tematu.
Aditya P
@ Steve, opinie negatywne bez komentarzy nie stanowią problemu. Dyskusja na ten temat w przeszłości na Meta, jeśli jesteś zainteresowany: meta.stackexchange.com/questions/61596/…
jzd
4
@Aditya, byłem głosem negatywnym, a powód nie ma nic wspólnego z notatką na początku. Czułem, że to pytanie nie było przydatne. Głosuję na pytania, które są przydatne lub dobrze napisane, i głosuję na pytania, które są złe lub nieprzydatne.
jzd
4
@Aditya, tak, ale to jest strona z pytaniami, a nie strona z dyskusjami. Potrzebujesz konkretnego pytania, które może mieć konkretną odpowiedź.
jzd
1
Kiedy byłem młody, w szkole średniej nauczano „wyszukiwania w Internecie”. To był cały miesiąc. Obecnie stwierdzam, że nikt poza deweloperami, których znam, nie zdaje sobie sprawy, że wyszukiwarki mają operatorów.
Steven Evers,

Odpowiedzi:

8

Pytanie: Jak myślisz, jak ważne jest to dla programisty?

Bardzo ważne. Nie można pamiętać wszystkiego o programowaniu w twojej głowie, a Internet jest największą dostępną biblioteką pomocy. Nieocenione jest szybkie i skuteczne znalezienie tego, czego szukasz.

Pytanie: W jaki sposób wyszukiwanie z doświadczeniem (więcej wiedzy na ten temat) wypada w porównaniu z efektywnym wyszukiwaniem, czyli wyszukiwaniem przez osobę doświadczoną w porównaniu z wyszukiwaniem osoby, która może wyszukiwać lepiej. Pod względem wydajności lub jakości?

Jeśli dobrze rozumiem to pytanie, wolę być bardziej kompetentny w wyszukiwaniu w ogólności niż wiedzieć, czego szukam. Jeśli jestem bardziej wydajny w wyszukiwaniu, mogę znaleźć wszystko. Jeśli mam większą wiedzę na temat jednego tematu, dobrze go szukam w tym temacie.

Dla mnie wiedza o tym, jak szybko i sprawnie znaleźć to, czego szukasz, jest lepsza niż po prostu wiedza w głowie. Jest bardziej aktualny w Internecie, prawdopodobnie dokładniejszy i może być pokazany innym jako dowód. Ponadto, o wiele mniej musisz pamiętać.

Pytanie: Czy uważasz, że należy tego nauczać w szkołach programistycznych, na stażystach lub stażystach?

Tak, należy tego absolutnie nauczać we WSZYSTKICH szkołach, nie tylko w szkołach programujących. Umiejętność prowadzenia skutecznych badań jest niezbędna w codziennym życiu (ok, może nie jest niezbędna ... ale zdecydowanie warto o tym wiedzieć).

Na przykład kilka dni temu prowadziłem badania nad automatycznym czerpaniem kuwet dla kotów i mogłem szybko uzyskać listę zalet / wad recenzowanych przez użytkowników dla każdej kuwety dla kota zamiast listy miejsc sprzedaży. oszczędność czasu i pieniędzy.

Pytanie: Czy tego uczy się już w dobrych szkołach programistycznych?

Szkoła programowania, do której chodziłem, zaczynała każdy program od klasy rozwiązywania problemów. Obejmowało to podstawowe umiejętności badawcze online oraz inne materiały. Byłbym rozczarowany, gdyby NIE uczono umiejętności wyszukiwania online w żadnej szkole wyższej.

Rachel
źródło
8

Każdy (każdy, kto korzysta z Internetu) korzysta obecnie z Google.

Nie, nie robią tego. Nie robię tego, ale jestem trochę stronniczy na korzyść innej wyszukiwarki :-)

1. Pytanie: Jak myślisz, jak ważne jest to dla programisty?

Aby móc korzystać z wyszukiwarki? Bardzo.

2. Pytanie: W jaki sposób wyszukiwanie z doświadczeniem (więcej wiedzy na ten temat) wypada w porównaniu z efektywnym wyszukiwaniem, tj. Wyszukiwanie przez osobę doświadczoną w porównaniu z wyszukiwaniem osoby, która może wyszukiwać lepiej. Pod względem wydajności lub jakości. ?

Nie mam pojęcia, podejrzewam, że zarówno programiści mają wiedzę na ten temat, jak i jak korzystać z wyszukiwarki.

3. Pytanie: Czy uważasz, że należy tego nauczać w szkołach programistycznych, na stażu lub na poziomie stażysty?

Dla każdego, kto korzysta z Internetu, jest to raczej umiejętność życiowa, na przykład efektywne korzystanie z poczty elektronicznej. Może może zająć niewielką część wykładu wprowadzającego, ale nie jest to wystarczająco temat, aby wyraźnie dodać go do sylabusa. Myślę, że byłoby to coś, co stażysta lub stażysta podjąłby w pracy dzięki pracy z bardziej doświadczonymi programistami.

4. Pytanie: Czy w dzisiejszych czasach uczy się tego w dobrych szkołach programistycznych?

Nie wiem, mam nadzieję, że uczeń lub nauczyciel może odpowiedzieć na to pytanie. Myślę, że masz rację, to prawdopodobnie coś, czego warto nauczyć uczniów.

Steve
źródło
Byłem głównie żartobliwy, wiedziałem dokładnie, co masz na myśli, ale udział GOOG w rynku nieco spadł na niektórych rynkach.
Steve
@ Steve Haigh - jakiej wyszukiwarki używasz? Jakie widzisz korzyści? Dzięki.
skaz
4
Używam Binga. Korzyścią jest to, że mój CEO nie będzie na mnie krzyczeć.
Steve
1
@ Steve - musiał sprawdzić w tym celu swój profil. Wydaje się dość sprawiedliwe :-)
Rory Alsop,
W odniesieniu do 2 IMHO wydaje się, że tak nie jest. Dotyczy to dobrych programistów.
Aditya P
3

Podejrzewam, że jednym z problemów z Google i innymi silnikami z perspektywy programisty jest to, że są zbyt głupie. Gdzie jest na przykład znak zmiany znaczenia, aby wyszukać osadzone „.”? a.c, a\.ci a.cwszystkie dają ten sam wynik - frustruje Cię, gdy chcesz wyszukać konkretny przełącznik polecenia lub kod błędu itp. Wyszukiwanie zaawansowane nie daje w tym miejscu większej elastyczności.

Google, z parserem wyrażeń regularnych, byłby znacznie bardziej użyteczny z perspektywy programisty i nie musiałby obniżać komfortu użytkowania dla użytkowników nietechnicznych.

Czy trzeba tego wyraźnie uczyć? Nie jestem pewien, ponieważ większość techników mojego znajomego jest świadoma - i |przełączników itp. Do wyszukiwania. To jedna z rzeczy, których naturalnie próbujesz, prawda?

Matt
źródło
1
Google ma stronę wyszukiwania kodu, która pozwala używać kodu RE do wyszukiwania kodu, ale są one znacznie droższe niż ich standardowe wyszukiwanie (nie pasuje do normalnych rozproszonych strategii indeksowania), więc mogę zrozumieć, dlaczego nie jest włączona funkcja każdy.
Donal Fellows,
3

Tak, Googlingu należy uczyć, ale jest on już nauczany w większości szkolnych programów nauczania K-12 (może niekoniecznie w najlepszy sposób, ale to inna sprawa). W miejscu pracy potrzebne jest zachęcenie .

Umiejętności badawcze są nauczane w podstawowym programie tutaj w Vancouver. Kiedyś były to badania biblioteczne za moich czasów, ale teraz zajmują się także badaniem sieci - i obejmuje to myślenie o słowach kluczowych. Niestety, wielu 12-latków jest bardziej biegłych w rozróżnianiu takich rzeczy jak eseje, badania i raporty niż wiele osób na moim uniwersytecie. Myślę więc, że edukacja na tym froncie zmierza we właściwym kierunku.

Googlowanie samo w sobie nie jest trudne do opanowania, nawet przy wszystkich modyfikatorach i operatorach boolowskich. To łatwiejsze niż korzystanie z biblioteki, a oni spędzili około tygodnia, ucząc mnie, jak to zrobić.

Myślenie o trafnych słowach kluczowych jest częściowo podzbiorem umiejętności „Googling”, ale myślę, że ważniejsze jest to, jak bardzo rozumiesz sąsiednie tematy - to znaczy twoją znajomość dziedziny.

Jeśli ludzie w pracy nie wiedzą, jak korzystać z Google, aby znaleźć informacje o konkretnym problemie programistycznym, to na początku może im brakować zrozumienia tej dziedziny.

Rei Miyasaka
źródło
1

Po pierwsze, myślę, że pytanie szkół programistycznych zależy od tego, gdzie jesteś. W Stanach Zjednoczonych wiele zadań związanych z programowaniem dotyczy tylko osób z 4-letnim dyplomem, więc w najlepszym razie jest to osoba z wykształceniem informatycznym, w przeciwnym razie mogą nawet nie wziąć udziału w zajęciach z informatyki. W ramach standardowego programu komputerowego nie ma instrukcji, jak szukać odpowiedzi. Zasadniczo wyszukiwanie informacji (gdzie można dowiedzieć się czegoś o wyszukiwaniu słów kluczowych) jest do wyboru. Więc prawdopodobnie nie otrzymują formalnych instrukcji w szkole. Nie jestem pewien, czy jest to coś, czego należy się uczyć w szkole, ponieważ większość szkół jest zajęta wkuwaniem podstaw i innych rzeczy (i nawet nie robi świetnej roboty ...). Również wielu programistów nie pochodzi z informatyki. Jest to coś, co ktoś szybko nauczy się na przykład ... Np. Zadaje swojemu współpracownikowi pytanie, a następnie współpracownik pyta, co powiedział internet (lub Google / Bing / Ask / itp.). Bardzo szybko nauczą się prosić Google / Bing przed przyjściem do współpracownika.

Bardzo ważne jest, aby móc wyszukiwać odpowiedzi w wyszukiwarce, ponieważ wiele razy system operacyjny / biblioteka wyrzuca dziwny komunikat o błędzie, który nie wskazuje, co go spowodowało. Szybkie wyszukiwanie w Google ujawnia mnóstwo innych osób z tym samym problemem i często znajdziesz rozwiązanie, które działa. W przeciwnym razie możesz zadzwonić do sprzedawcy i zapłacić fortunę, aby dowiedzieć się, co się dzieje… Nadal istnieje równowaga. Bardzo łatwo jest stracić dużo czasu na wyszukiwanie lub rozpocząć czytanie wielu debat na temat właściwego rozwiązania i bardzo łatwo stracić dzień. Ważne jest, aby być ukierunkowanym.

Nie sądzę, że bycie dobrym poszukiwaczem może zastąpić zdobywanie doświadczenia w danym obszarze. Nauczyciele w mojej szkole lubią się wyśmiewać z ludzi, którzy na egzaminy domowe po prostu coś znajdują i wycinają / wklejają z Internetu. Czasami to, co znaleźli, jest nawet istotne, ale ludzie nie zadali sobie trudu interpretacji materiału i wygenerowania odpowiedzi, po prostu wycięli i wkleili cały akapit / artykuł. Więc w przypadku programów kończysz się bałaganem, jeśli nie masz wystarczającej wiedzy, aby ocenić, które wyniki są dobre, a które nie. Często, gdy szukam czegoś nowego, moim pierwszym krokiem jest Wikipedia, a następnie może niektóre źródła, aby uzyskać trochę tła. Gdy już to zrobisz, wyszukiwanie jest znacznie łatwiejsze. Jeśli naprawdę nic nie wiesz, być może nawet nie znasz poprawnej odpowiedzi. Nawet gdy szukam określonego komunikatu o błędzie, czasem jest to spowodowane kilkoma rzeczami ... Zawężenie potencjalnych rozwiązań wymaga niewielkiej wiedzy na ten temat. Odkąd pojawił się Google, zauważyłem, że proste wyszukiwania często działają najlepiej. W przeszłości musiałeś być bardziej sprytny ze słowami kluczowymi / + i - operatorami ... Ale w Google dość często proste pytanie „Jak zaimplementować sortowanie bąbelkowe” lub nawet „sortowanie bąbelkowe” zapewni Ci dokładnie to, czego chcesz. W dawnych czasach być może trzeba było powiedzieć kąpiel bąbelkową lub coś takiego ... teraz często nie ma takiej potrzeby. Ale w Google dość często proste pytanie „Jak wdrożyć sortowanie bąbelkowe” lub nawet „sortowanie bąbelkowe” zapewni dokładnie to, czego chcesz. W dawnych czasach być może trzeba było powiedzieć kąpiel bąbelkową lub coś takiego ... teraz często nie ma takiej potrzeby. Ale w Google dość często proste pytanie „Jak wdrożyć sortowanie bąbelkowe” lub nawet „sortowanie bąbelkowe” zapewni dokładnie to, czego chcesz. W dawnych czasach być może trzeba było powiedzieć kąpiel bąbelkową lub coś takiego ... teraz często nie ma takiej potrzeby.

Cervo
źródło
+1 za wskazanie ulepszenia wyszukiwarki
Aditya P
1

IMHO to mniej ważne niż kiedykolwiek.

Gdy koszty wyszukiwania i przepustowości maleją, zdolność silników do zapewnienia wystarczającej ilości wskazówek w celu wyeliminowania wyników wyszukiwania pozwala zachować większą swobodę, ponieważ eliminuje opóźnienia związane z dokonywaniem błędnego wyszukiwania i otwieraniem niewłaściwej wartości.

Google instant (i odpowiedniki w innych wyszukiwarkach) pozwalają zawęzić wyszukiwanie znacznie szybciej, ponieważ możesz zobaczyć wiele wyników. „Zobacz podgląd strony bez klikania” pozwala uniknąć marnowania czasu na otwieranie złych wyników. Możliwość blokowania niektórych witryn pozwala blokować bzdury.

Uri
źródło