Gdy zostaniesz poproszony o utworzenie systemu XYZ i poprosisz go o to w języku Python przez PHP lub Ruby, jakie są główne cechy, o których możesz wspomnieć, gdy wymagają wyjaśnienia?Jak sprzedawać Python klientowi/szefowi/osobie
Odpowiedz
Jest to jedna z tych spraw, które naprawdę sprowadzają się do osobistych preferencji lub szczegółów sytuacyjnych. Jeśli jesteś bardziej komfortowy i doświadczony w Pythonie, powiedz to. Czy proszą o usprawiedliwienie, ponieważ są bardziej komfortowe w jednym z innych środowisk? Kiedy skończysz, czy system zostanie przekazany komuś innemu na długoterminową konserwację?
Jeśli poprosisz Cię o skorzystanie z technologii lub języka, który nie jest Ci tak dobrze znany, upewnij się, że wiedzą z góry, że zabierze Ci to więcej czasu.
Skoncentruj się na krótszym czasie potrzebnym do opracowania/prototypu i prawdopodobnie łatwiejszej konserwacji (żadna z powyższych opcji nie może dotyczyć Rubiego).
Uznałbym, że używanie pythona w nowym projekcie jest całkowicie zależne od tego, jaki problem próbujesz rozwiązać za pomocą Pythona. Jeśli chcesz, aby ktoś się z tobą zgadzał, powinieneś użyć pythona, a następnie pokaż mu, w jaki sposób funkcje Pythona odnoszą się właśnie do tego problemu.
W przypadku tworzenia aplikacji internetowych w Pythonie, porozmawiaj o WSGI i innych bibliotekach internetowych i frameworkach, które mogłyby ci ułatwić życie. Jedną z notatek dla Pythona jest to, że większość frameworków do programowania w Pythonie może być podłączona do dowolnego bieżącego projektu. Z rubinem na szynach praktycznie pracujesz w DSL, że każdy, kto użyje twojego projektu, będzie musiał się uczyć. Jeśli znają pythona, mogą dowiedzieć się, co robisz z django, itd. W jeden dzień.
Mówię tylko o tworzeniu stron internetowych, ponieważ wydaje się, że właśnie nad tym będziesz pracował nad zobaczeniem ruby, Pythona i PHP na tej samej liście. Prawdziwą wiadomością, która jest ważna jest zastosowanie do tego, co lubisz w pythoniu bezpośrednio na jakiś problem, który próbujesz rozwiązać.
Zgadzam się z mreggen. Powiedz im, pracując w Pythonie, możesz szybciej załatwiać sprawy. Szybsze załatwianie spraw oznacza, że pieniądze są oszczędzane przez klienta. W najmniejszym stopniu oznacza to, że pracujesz z językiem, w którym czujesz się bardziej komfortowo, co oznacza szybszy rozwój, debugowanie i czas refaktoryzacji. Mniej czasu zajmie sprawdzanie dokumentacji na temat funkcji, której można użyć do znalezienia długości ciągu znaków itp.
Jest to jeden z preferowanych języków w Google - kilka lat wyprzedza Ruby pod względem "dojrzałości" (co to naprawdę znaczy - ale menedżerowie tacy jak oni). Ponieważ jest to preferowane przez Google, możesz też uruchomić go w Google App Engine.
Mircosoft obejmuje także język Python i wkrótce pojawi się v2.0 IronPython. Pracują też nad implementacją Ruby, ale wersja Pythona jest daleko i jest "gotowa na primetime". Daje to możliwość łatwej integracji z kodem .NET, a także możliwość pisania aplikacji RIA po stronie klienta w Pythonie po dostarczeniu Silverlight 2.
Najlepszą sprzedażą Python, jaką kiedykolwiek widziałem, był menedżer z naszej grupy, który miał młodą córkę. Użył wyceny przypisanej do Einsteina:
Jeśli nie możesz wyjaśnić czegoś sześciolatkowi, naprawdę nie rozumiesz tego sam.
Następnych kilka slajdy swojej prezentacji pokazał, jak udało mu się uczyć swoje córki niektóre podstawowe Pythona w czasie krótszym niż 30 minut, z przykładami kodu pisała i wyjaśnienia, co zrobił.
Zakończył prezentację obrazem swojej córki i cytatem "Programowanie jest fajne!"
Skoncentruję się na przyjazności dla użytkownika Pythona i bogactwie bibliotek i frameworków. Istnieje również wiele małych bibliotek, których nie można uzyskać w innych językach, i trzeba by napisać samodzielnie (to jest How a C++ developer writes Python).
Powodzenia!
Podaj im fragment kodu w każdej (nie więcej niż na stronie), który wykonuje jakąś fajną funkcję, która im się spodoba. (np. pokaż wartości odstające w zbiorze danych).
Pokaż im każdą stronę. Jeden w PHP, Ruby i Python.
Zapytaj ich, które są najłatwiejsze do zrozumienia/przeczytania.
Powiedz im, dlaczego chcesz używać Pythona. Jest to łatwiejsze do odczytania, jeśli nie napisałem to, łatwiejsze, mniej buggy i szybciej budować możliwości, ponieważ jest to najbardziej elegancki (pythonic)
Choć Wszystkie 3 języki są uniwersalne i stosowane na całym świecie przez programistów, Python nadal mają pewne zalety w stosunku do pozostałych dwóch. Jak z mojego osobistego doświadczenia: -
- Non-programiści kochać ją (większość „em wybrać Python jako pierwszego języka komputerowego, sprawdź ten infographic php vs python vs ruby tutaj)
- Wiele ram (Można zautomatyzować swój system zadania mogą rozwijać aplikacje dla sieci i Windows/mac/android OSE)
- Making OpenCV Aplikacje łatwiej niż MATLAB
- Testowanie odbywa się łatwo (można pracować na Selen dla wszelkiego rodzaju testów internetowej)
Koncepcje OOPS są teraz śledzone przez większość języków, więc dlaczego Python może pozostać w tyle! Dziedziczenie, abstrakcja i enkapsulacja są również śledzone przez Python.
Python od teraz jest podzielony na dwie wersje, które nie różnią się zbytnio pod względem wydajności, ale funkcji. Python2.x i Python 3.x oba mają taką samą składnię, z wyjątkiem niektórych stwierdzeń, takich jak: -
- print "..." w Python2.x i print() w Python3.x
- raw_input() w języku Python2.x i () w języku Python3.x (na uzyskanie danych wejściowych użytkownika)
W końcu klient dba tylko o pieniądzach i Python pozwala wiele zaoszczędzić w porównaniu do PHP i Ruby, ponieważ zamiast zatrudniania doświadczonych programistów, można dokonać newbie uczyć się i używać Pythona fachowo.
UWIELBIAM to. Dzięki za udostępnienie! – jathanism