Python: Future jako główny język programowania? [Zamknięte]

14

Po przeczytaniu jakiegoś materiału Python i zobaczeniu kodu Python kilka lat temu postanowiłem dać mu wir. Postanowiłem zacząć od Pythona, aby rozwiązać problemy z Project Euler i byłem pod wielkim wrażeniem tego języka. Od tego czasu zacząłem uczyć się Django, a teraz używam go głównie w aplikacjach internetowych. Chciałbym mieć program kariery w tym języku, ale obawiam się, że przyszłość tego języka jest obecnie niepewna. Biorąc pod uwagę Google i inne duże firmy, może pojawić się nadzieja. Co sądzisz o Pythonie, czy widzisz wiele możliwości pracy?

Chris
źródło
4
@chrisw: Proszę usunąć „Dla tych z was, którzy mogą nie wiedzieć, co to jest Project Euler ... Tak więc, mówiąc to”. Link jest wystarczający. Skoncentruj się na pytaniu, pomijając osobiste pochodzenie.
S.Lott,
2
@ S.Lott Masz przedstawiciela do edycji pytań, być może powinieneś z nich skorzystać. Zaproponowałem wspomnianą edycję.
Mateusz
Dzięki, zmiana została wprowadzona. Nadal jestem trochę nowy, więc doceniam tę informację.
Chris
8
@ S.Lott Nie, ale poprawiasz pytanie i przyjemny komentarz „Zredagowałem to, ponieważ X” jest równie budujący.
Mateusz
1
@Matthew Read: być może „równie budujący” dla niektórych. Inni wydają się uczyć lepiej poprzez ćwiczenia praktyczne. Poza tym w niewygodny sposób przepisuję pytania w dużym stopniu. Uważam, że wiele pytań jest bardzo mylących i muszę poprosić o wyjaśnienia. Inni ludzie - wyraźnie - są znacznie mądrzejsi w odgadywaniu intencji pytania. Wolę zadawać pytania i prosić o zmiany, ponieważ mogłem w ogóle nie zrozumieć pytania.
S.Lott,

Odpowiedzi:

21

Nawet jeśli Python (lub jakikolwiek inny język) przestanie być używany, nie sądzę, że marnowanie czasu na naukę tego języka. Podstawowe zasady programowania są zawsze takie same, a najtrudniejsza część (modelowanie tego, co chcesz osiągnąć) to coś, co zawsze pozostanie bez względu na to, jakiego języka używasz. Techniczne niuanse danego języka mogą nawet pomóc Ci szybciej nauczyć się innego języka lub dać ci pomysły na wdrożenie się w języku itp.

Jak wielokrotnie podkreśla Steve McConnell w „Code Complete”, powinieneś programować w swoim języku, a nie w jego języku.

Omar Kohl
źródło
2
To nie odpowiada na pytanie PO (choć nie jestem zwolennikiem). Do wyboru jest wiele języków programowania, które zapewnią cenne doświadczenie w nauce nowych języków; jeśli masz ograniczony czas, musisz przejść do innych kryteriów.
jprete
@jprete: Jeśli jednak w krótkim okresie pojawią się zlecenia, przyjdzie czas na naukę następnego języka.
David Thornley,
10

Rynek pracy dla Pythona nie jest tak duży w porównaniu z głównymi językami, takimi jak Java, ale prawdopodobnie oznacza to, że jest stosunkowo stabilny (ponieważ istnieje niewielka konkurencja i praca musi zostać wykonana).

jwenting
źródło
5
Rynek pracy jest mniejszy niż dla Javy; oznacza to mniejszy popyt, ale także mniejszą podaż. Nie musi to oznaczać, że będzie trudniej (lub łatwiej) znaleźć pracę. FWIW, czytałem, że pracodawcy używający języka Python wspominają, że łatwiej jest znaleźć dobrych programistów Python niż dobrych programistów Java, właśnie z tego powodu.
Tom Anderson,
2
@TomAnderson Popieram to. Widziałem wystarczającą liczbę „programistów PHP”, którzy pokazują swoje prawdziwe kolory dwa tygodnie po raz kolejny [Drupal | Joomla | itp.] wskaż i kliknij „ninja” (ugh). Przypadek i punkt, większy popyt oznacza więcej pośpiechu i bezwstydnego samomarkowania nieistniejących umiejętności w talencie. Zdaję sobie sprawę, że mogę brzmieć gorzko, ale przynajmniej jestem tego świadomy.
Droogans,
9

Ponieważ lubisz język - po prostu go używaj. Nie martw się o to, co robi cała branża.

Użyłem Pythona w ostatnim projekcie, ponieważ potrzebowałem tylko języka skryptowego. Nie chciałem zajmować się ide / kompilacją. Nie chciałem też, żeby miało to coś wspólnego z siecią, jak javascript lub php. Potrzebowałem tylko ogólnego języka skryptowego. Python był więc idealny do moich zadań.

Tylko moje przemyślenia na ten temat: używaj języków, ponieważ je lubisz lub POTRZEBUJESZ ich. Twórz projekty korzystające z tych języków i dowolnie dodawaj te języki, które znasz. Nie specjalizuj się tylko w jednym języku. Poznaj kilka najważniejszych. Języki pojawiają się i wychodzą z mody przez cały czas, więc najlepiej nie wkładać wszystkich jajek do jednego koszyka. Ale jeśli potrzebujesz użyć określonego języka, skorzystaj z niego.

Python jest świetny, bardzo popularny i bardzo przenośny. Mam Python działa zarówno na moich komputerach Mac, jak i PC. http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html


źródło
5

Nie ma wątpliwości co do przyszłości Pythona, która nie jest wspólna dla wszystkich innych głównych języków programowania. Jest to jeden z języków o najniższym ryzyku pod względem szansy na brak zwrotu z zainwestowanego czasu.

Adam Crossland
źródło
Wydaje mi się, że moje pytanie dotyczyło raczej pewności rynku pracy, czy warto poświęcić czas na naukę i opanowanie?
Chris
3

Od dłuższego czasu jest głównym językiem programowania. Jest to piąty najpopularniejszy język (po Javie, C, C ++ i C #), a jego udział w rynku stale rośnie. Więc nie martwiłbym się wcale o przyszłość Pythona.

vartec
źródło
3

Jest popularny, a potem jest najbardziej popularny. Nie ma wątpliwości, że Python jest popularnym językiem. To po prostu nie jest najbardziej popularny. Wybór języka, ponieważ jest najpopularniejszy, jest strategią OK, ale nie jest to jedyna strategia. Rozważać:

  • W moim mieście (Seattle) miesięcznie można zobaczyć dziesiątki reklam z pytaniem o tło w Pythonie. Oznacza to, że prawdopodobnie istnieją tysiące miejsc pracy w Pythonie na całym świecie.
  • To powiedziawszy, jest o rząd wielkości więcej zadań dla PHP, C # lub Java.
  • Istnieją jednak rzędy wielkości, w których więcej programistów PHP, C # i Java konkuruje o te zadania.

Jeśli jesteś przeciętnym lub poniżej przeciętnym młodszym programistą, pracującym na rynku, który obsługuje tylko rozwój oprogramowania typu line-of-busines, to tak, możesz skupić się na PHP, Java lub C #. Jednak jeśli jesteś ponadprzeciętnym programistą na dużym rynku, możesz wyróżnić się z tłumu, dodając języki takie jak Python do swojego zestawu narzędzi. Jeśli jesteś świetnym programistą z długim i udanym doświadczeniem, możesz specjalizować się w MUMPS lub FORTRAN II lub INTERCAL i nadal znajdować pracę.

Charles E. Grant
źródło
2

Czy widzisz tam wiele możliwości pracy?

Zdefiniuj wiele. Jeśli nie jest to poziom PHP ani ASP, to jest dla mnie przyzwoita do małych możliwości pracy. Jeśli nie mogę wybrać miasta, w którym będę mieszkać i znaleźć pracy dla tego języka programowania, to jest kilka imo.

Możesz samemu to ocenić: http://www.indeed.com/jobtrends?q=php%2C+scala%2C+ruby%2C+python%2C+javascript&l=

Jako przyszły główny język programowania: Moim zdaniem, tylko jeśli naprawią rozdźwięk między 2.6 a 3.0. Podobnie jak w przypadku konwersji wszystkich istniejących bibliotek do wersji 3.0.

Tutaj: http://python3wos.appspot.com/

mityczny programista
źródło
+1: niezły wykres. Oto ta sama tabela z C, C ++ i C # dodanymi do poprzednich języków. Interesujące jest dla mnie to, że zapotrzebowanie na C ++ pozostało względnie stabilne, a podczas gdy Javascript i C # zaczęły się z tym samym tempem wzrostu, C # wyrównał się i zapotrzebowanie na JS nadal rośnie.
oosterwal 17.03.11
Spróbuj SQL, na pewno będzie tam z C.
mityczny programista
1

Nie musisz wybierać między Pythonem a jakimś innym językiem. Języki przychodzą i odchodzą. Otrzymałem wynagrodzenie za programowanie w FORTRAN, C, C ++, Ada, Emacs-LISP, Tcl, Java, Perl, Python, Ruby, JavaScript, Groovy i kilku innych. Istnieje wiele zespołów, które szukają dobrych ludzi, zakładając, że dobrzy ludzie szybko będą produktywni w każdym języku. Odkryłem, że takie zespoły są bardziej zabawne niż ludzie próbujący zatrudnić programistę <insert-popular- language> .

Kevin Cline
źródło
-1

Python to świetny język i genialny ekosystem. Popularność Pythona wynika z łatwości użycia, gotowości do obsługi wielu platform i ogromnego zestawu bibliotek. Python działa powoli, podobnie jak wszystkie interpretowane języki, ale łatwo można go rozszerzyć za pomocą modułu ctypes. W Pythonie są ogromne nakłady akademickie i wiele bibliotek naukowych oznacza, że ​​będzie doskonałą alternatywą dla MATLAB i MAPLE na uniwersytetach. Pod względem rozwoju produktu Python świeci w Internecie. To jedna z wielu dobrych platform. Z powodów, z którymi się nie zgadzam, wiele dużych firm i szpitali nadal używa JAVA i ASP w Internecie zamiast w Pythonie. W pewnym stopniu ogranicza to możliwości zatrudnienia Pythona. Podczas gdy indywidualni programiści są bardzo zainteresowani Python / Django, szczególnie w przypadku wdrażania w silniku aplikacji Google, zespoły programistów często używają tych bardziej złożonych narzędzi. Wielką wadą Pythona jest to, że nie jest to najlepsze do tworzenia „aplikacji” na iPhone'a, telefon z Windows, tablety itp. Wydaje się, że dużym impulsem w programowaniu jest pisanie aplikacji, które można dystrybuować na iOS , Windows Mobile lub Android. I to nie jest domena Pythona. Wolę na przykład zhakować Pythona niż na przykład cel C, prawdziwy bałagan w języku, jeśli mnie pytasz, ale szał wokół aplikacji na iPhone sprawia, że ​​cel C jest bardziej popularny i być może bardziej przydatny. Windows Mobile lub Android. I to nie jest domena Pythona. Wolę na przykład zhakować Pythona niż na przykład cel C, prawdziwy bałagan w języku, jeśli mnie pytasz, ale szał wokół aplikacji na iPhone sprawia, że ​​cel C jest bardziej popularny i być może bardziej przydatny. Windows Mobile lub Android. I to nie jest domena Pythona. Wolę na przykład zhakować Pythona niż na przykład cel C, prawdziwy bałagan w języku, jeśli mnie pytasz, ale szał wokół aplikacji na iPhone sprawia, że ​​cel C jest bardziej popularny i być może bardziej przydatny.


źródło