Co robisz, gdy musisz pracować nad projektem w języku, którego nienawidzisz?


14

Niedawno zostałem przydzielony do pracy nad projektem napisanym w PHP . Nie mogę tego zmienić i nie mam zamiaru naprawdę próbować.

Nie może to jednak być rzadki scenariusz. Jak zmotywujesz się do pracy nad projektem, gdy kod, na który patrzysz i który produkujesz stale, sprawia, że ​​chcesz płakać?

EDYTOWAĆ:

Należy zauważyć, że jest to właściwie jedyna praca na terenie kampusu, która obecnie robi wszystko, co jest związane z oprogramowaniem, więc „zmiana pracy” nie jest tak naprawdę opcją :(


6
Zaciskasz zęby, wykonujesz swoją pracę i znajdujesz sposób na odpowietrzenie
Shog9,

3
Czy znasz ostatnio sytuację makroekonomiczną? Policz swoje błogosławieństwa, że masz pracę.
Macneil,

@Macneil: Trudno będzie znaleźć pracę z takim pesymistycznym podejściem. Poważnie, głównym powodem, dla którego mam tę pracę, jest to, że jest w kampusie.
Billy ONeal

2
(a) ssać, (b) próbować to zmienić lub (c) wyjść. Przy oczywistych odpowiedziach wydaje się to bardziej rantem niż pytaniem.
Aaronaught,

@Aaronaught: Wiele pytań wydaje się „oczywistych”, więc niektórzy ludzie. Oczywiście nie myślałem, że to „oczywiste”, bo inaczej nie zadałbym tego pytania.
Billy ONeal,

Odpowiedzi:


5

Moją radą byłoby znieść to, tylko jeśli zobaczysz korzyść z nauki czegokolwiek z języka i wszystkich procesów lub wzorców wykorzystywanych w projekcie. Możesz coś z tego zyskać.

Alternatywą, jeśli nie masz dość ryzyka, jest poszukiwanie innej pracy. Co jest z pewnością dobrym pomysłem, jeśli brak motywacji zostanie sprowadzony nie tylko z powodu zastosowanej technologii, ale również z powodu braku zrozumienia dobrych praktyk ze strony współpracowników. Powinny być lepsze rzeczy do zrobienia niż stagnacja swoich umiejętności programistycznych. Jeśli niczego się nie uczysz lub nie czerpiesz korzyści z pracy: znajdź lepszą pracę.


Nie mam wielkiego wyboru, jak znaleźć lepszą pracę - potrzeba czegoś na terenie kampusu naprawdę ogranicza rzeczy.
Billy ONeal

4

Jeśli jest to kontrakt, projekt krótkoterminowy lub coś, co od czasu do czasu będziesz musiał wesprzeć, po prostu ugryź kulę i zrób to , oczywiście.

Jeśli nie, poszukaj innej pracy lub spróbuj wyjaśnić, dlaczego ten język może być przeszkodą na dłuższą metę (jeśli możesz).


W pierwszym przypadku chodzi o bycie profesjonalistą, a nie narzekanie na osobiste preferencje. W drugim przypadku chodzi o zadowolenie z pracy i życia .


Jeśli potrzebujesz motywacji, powiedziałbym, że zacznij próbować znaleźć kawałki, które lubisz w języku, i rozpocznij z nią osobisty projekt zwierzaka, abyś miał silniejszą motywację do głębszej nauki. Staraj się robić z nim rzeczy, które lubisz. Jeśli podoba Ci się TDD, skup się na poprawie zasięgu testu itp.

Ale w końcu będziesz musiał ugryźć kulę.


3

Projektujesz język programowania, którego chcesz używać, a następnie piszesz kompilator, który wyświetli język, którego nie chcesz używać.

Przynajmniej tak zrobili ci faceci:

  • haXe atakuje PHP, Flash, JavaScript, C ++ i Neko; może JVM w przyszłości
  • Wasabi atakuje VBscript, JavaScript, PHP4, PHP5 i .NET
  • Scriptol atakuje PHP i C ++
  • CoffeeScript celuje w JavaScript

4
Powinno to być prawidłowym wyborem tylko wtedy, gdy nikt inny nie pracuje (lub nie będzie działał) nad projektem w „normalnym” języku, ponieważ kompilacja krzyżowa wygląda fatalnie. Po drugie, chcesz to zrobić tylko dla zabawy i mając dużo czasu na rękach. Jeśli właśnie ukończyłeś czterotygodniowy projekt, nie ma miejsca, aby najpierw napisać kompilator.
Tim Büthe,

2
To okropny wybór. Widziałeś gówno, które wylewa się z nich?
Josh K

Dodaj JavaScript kierowany na GWT do powyższej listy.
funkybro,

-1: Z wyżej wymienionych powodów nie polecam tego, z wyjątkiem szczególnych okoliczności, takich jak automatyczne generowanie parsera.
juhist

1
To nie jest opcja, jeśli utrzymujesz istniejący kod.
mouviciel

3

Odbierz swoje CV i zacznij szukać innej pracy. PHP jest potężnym językiem, ale jego składnia jest gówniana i niespójna. W tym samym czasie rozpocznij projekt domowy w języku, w którym chcesz pracować, i jeśli możesz dołączyć do projektu open source.

powodzenia.


2

Naprawdę? Robisz to, co robisz, kiedy MUSISZ pracować nad tym, czego nienawidzisz. Zaciskasz zęby, kopiesz i wykonujesz pracę.

... lub nauczysz się trochę łatwiej!


1
... i aktualizujesz swoje CV i wypuszczasz czujki.
John R. Strohm,

1

Jak długo trwa projekt? Jeśli jest krótki, po prostu uśmiechnij się i zrób to i pomyśl, czy to dobrze wznowi wypełniacz. Jeśli długoterminowo, szukałbym innej pracy.


1

Jeśli Twój pracodawca zmusza cię do regularnej pracy przy użyciu narzędzi, których „nienawidzisz” (co jest bardzo silnym pojęciem), to być może jesteś w złej pracy?

Bycie pragmatycznym jest niezbędne dla profesjonalizmu.


1

To okazja do nauki.

Przypomina mi się kilka rzeczy:

  • Po pierwsze: jak lepiej działać w zestawie narzędzi, z którym pracujesz, tylko dlatego, że to, co już jest mniej niż wspaniałe, nie oznacza, że ​​to, co produkujesz, musi być. Możesz nawet znaleźć rzeczy, które lubisz (chociaż staram się zapamiętać jakieś z Dibola ...).

  • Po drugie: waga argumentu za nieużywaniem tego zestawu narzędzi w przyszłości, jeśli możesz powiedzieć, że użyłeś czegoś w trywialny sposób, że ma to wady i zalety, to masz znacznie większą szansę przekonania czegoś, co jest negatywne takie samo zdanie ma wartość.

Jako profesjonalista musisz zasadniczo się zamknąć i zacząć z tym żyć - im szybciej to zrobisz, tym szybciej wrócisz do używania zabawek, które ci się podobają. Nie oznacza to, że nie powinieneś wyrażać swojego nieszczęścia kierownictwu na początku i na końcu. Ale prawdopodobnie nie w środku.


0

Jeśli buduję coś, co ktoś chce, używając języka, który moim zdaniem jest w stanie zrealizować projekt bez zbyt wielu problemów, mogę to przełamać. Martwi mnie to, że chcą funkcjonalności, która może być niemożliwa / praktyczna lub trwa dłużej niż zwykle.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.