Ważny nietechniczny kurs dla programistów? [Zamknięte]

22

Jaki rodzaj nietechnicznego szkolenia sugerujesz programistom? Przykładem może być kurs z wystąpień publicznych, umiejętność prezentacji, angielski, pisanie tekstów biznesowych lub cokolwiek niezwiązanego z samym programowaniem lub inżynierią oprogramowania.

Louis Rhys
źródło

Odpowiedzi:

45

Wszystko, co związane z komunikacją, jak wystąpienie publiczne, byłoby świetne. Będziesz uważany za DUŻO cenniejszego jako programista, jeśli będziesz w stanie dobrze komunikować się ze swoim zespołem i interesariuszami tworzonego oprogramowania. Brak umiejętności komunikacyjnych absolutnie zahamuje Twój rozwój w tej dziedzinie.

Mark Freedman
źródło
+1 i dodam pisanie techniczne (niekoniecznie pisanie biznesowe) jako kolejny cenny podzbiór tej odpowiedzi „komunikacyjnej”.
BlairHippo
+1, spotkałem tylu dobrych programistów, którzy boją się przejąć prowadzenie, tylko dlatego, że boją się rozmawiać przed ludźmi. Co jest stratą dla nich i dla branży.
Zekta Chan,
22

Projekt graficzny. Wypróbuj to na początek: http://net.tutsplus.com/articles/lectures/design-for-developers/ .

Oprogramowanie (i ogólnie każdy produkt) musi być nie tylko użyteczne i funkcjonalne, ale także „ładne”, aby móc sprzedawać, i taka jest smutna prawda.

dukeofgaming
źródło
9
Nie ma sensu - każdy programista może wykonać projekt graficzny bez żadnego wysiłku. Na przykład właśnie wymyśliłem genialną kolorystykę w kilku chwilach - cyjan i magenta! (spowiedź - myślę, że IBM wynalazł ją jako pierwszą dla grafiki CGA). Profesjonalni graficy są tak zachwyceni programistami, że używają terminów takich jak „kolory programistów” jako znak ich głębokiego szacunku.
Steve314,
2
Formalna wiedza na ten temat może przezwyciężyć i powtórzyć te chwile inspiracji. Założę się, że jest też wielu grafików, którzy mówią, że „każdy grafik może tworzyć strony internetowe”, ponieważ mają pewną wiedzę flashową, mogą używać Dreamweaver i używać skryptów dla PHP. Ale masz rację.
dukeofgaming
7
+1 Zgadzam się z księciem tutaj. Wielu programistów uważa , że potrafią projektować graficznie. Istnieje jednak ogromna różnica między profesjonalnym projektantem graficznym a programistą, który uważa, że ​​może po prostu projektować skrzydła.
Warto przeprowadzić
2
Bardzo przydatne jest połączenie silnych umiejętności projektowych z silnymi umiejętnościami programistycznymi. Umiejętności się uzupełniają. Ważne jest również, aby zdać sobie sprawę, że za designem kryje się nauka. To nie wszystko jest kreatywne i artystyczne. Istnieje powód, dla którego łatwiej jest utworzyć stronę z odpowiednio traktowanym typem.
Andy Fleming,
1
Projektujesz :) programmers.stackexchange.com/questions/32674/…
Łukasz Madon
18

Biznes

Największym problemem, jaki widziałem, gdy ludzie wychodzili prosto ze studiów (w tym ja kilka lat temu), jest to, że chcą pisać fajne aplikacje bez względu na to, czy pomagają firmie zarabiać pieniądze, czy nie. Aby naprawdę być deweloperem rockstar w oczach wszystkich, musisz być świetnym programistą (aby zauważyli to inni programiści) i zarabiać lub oszczędzać pieniądze firmy (aby zauważali to ludzie biznesu)! Kiedy możesz to zrobić, przygotujesz się nie tylko na wielkie możliwości kariery, ale także na ludzi biznesu, którzy zaczną Cię SŁUCHAĆ! Czemu? Ponieważ zapewniasz wartość. Nawet start-upy, które piszą o zabawnych aplikacjach, koncentrują się przede wszystkim na stworzeniu czegoś opłacalnego.

Ryan Hayes
źródło
+1 za to - odszedłem od programowania, aby spędzić kilka lat jako menedżer produktu, a po powrocie zauważyłem, że uderzające jest to, jak mało inni programiści wiedzieli lub dbali o możliwość sprzedaży oprogramowania. Przestałem mówić o funkcjach w nowych cyklach wydań i zacząłem mówić o korzyściach biznesowych.
Kevin
1
Najlepszym krótkim (zbyt krótkim) wstępem do zrozumienia twojego pracodawcy dla mnie było To, co Twój dyrektor chce wiedzieć od Ram Charan - amazon.com/What-CEO-Wants-You-Know/dp/0609608398/… - - możesz przeczytać w 15 minut, ale możesz pomóc nowemu lub młodemu deweloperowi zrozumieć, o co tak naprawdę chodzi w tym „dużym obrazie”.
mctylr
+1 Wąski koncentruje się tylko na pracy technicznej i zapomniałem spojrzeć na termin biznesowy, w którym zatopiono wiele dobrych projektów. Pomyśl w innych butach (zwłaszcza klientach), produkuj świetne oprogramowanie.
Zekta Chan
12

Umiejętności asertywności - należy tutaj zauważyć, że „asercja” NIE odnosi się w żaden sposób do „agresji”.

Chociaż jest to ogólna gama „umiejętności miękkich”, uważam, że szkolenie to jest bardzo korzystne, szczególnie jeśli chodzi o programistów.

Co najmniej z mojego doświadczenia, właśnie natknąłem się na zbyt wielu programistów, którzy woleliby uniknąć konfrontacji z kimś na tematy, które mogą być nawet lepiej poinformowani ze względu na ich naturę, co jest szkodliwe dla całego zespołu.

Taki kurs koncentruje się głównie na ludziach, którzy wypowiadają się na ich temat i udzielają im podstawowych wskazówek, jak upewnić się, że twoje poglądy / opinie nie zostaną zasypane tylko z powodu dużych ust w zespole, którzy mogą być lepsi od innych, gdy przedstawiają swoje zdanie przez.

Jagmag
źródło
9

Logika. Algebra. Statystyka. Rachunek różniczkowy. Język angielski. Krytyczne myślenie. Fizyka? Analiza behawioralna?

To zależy od tego, w co chcesz się dostać i od czego jesteś naturalnie dobry. Istnieje wiele kursów, które w jakiś sposób przyniosą Ci korzyści. Wiele odpowiedzi sugeruje kursy komunikacyjne, które wydaje się, że już znasz - poza tym, zastanów się długo, jak chcesz zastosować programowanie i weź udział w kursach, które uzupełniają Twój cel.

Carson Myers
źródło
Wiele z nich ma charakter techniczny, a nie o to chodziło w pytaniu.
David Thornley,
Prawdopodobnie statystyki, angielski, analiza zachowań (psychologia / socjologia) nie są tematami „technicznymi” zwykle związanymi z programowaniem. Jeśli każdy programista przeczytał „ Jak kłamać ze statystykami” i zrozumiał wystarczająco dużo psychologii, aby zrozumieć, że nie wszyscy myślą i zachowują się tak, jak robią to, wierzę, że świat może być (nieco) lepszym miejscem.
mctylr
Założyłem, że „techniczny” oznacza właściwie pracę z programowaniem i komputerami ...
Carson Myers
Fizyka? Oszalałeś? era po stronie serwera, zostaw c ++ w spokoju!
IAdapter
7

Typografia

Typografia to bardzo ważny obszar! Zrozumienie typografii może pomóc ci zrozumieć, jak zrobić więcej użytecznego oprogramowania, a także sprawić, by wyglądało dobrze! Nawet jeśli nie bierzesz lekcji, dobrze jest czytać dalej i może dać ci przewagę.

Wielkie książki typograficzne:

Myślenie z typem

Elementy stylu typograficznego

Artykuły online:

http://en.wikipedia.org/wiki/Typography

http://www.informationarchitects.jp/en/the-web-is-all-about-typography-period/

DesignerGuy
źródło
Chociaż całkowicie się zgadzam, twierdzę, że jest to podzbiór grafiki, który również znajduje się na liście.
Orbling
To prawda, ale chciałem to podkreślić, ponieważ uważam, że jest to jedna z najważniejszych, jeśli nie najważniejsza część projektu.
Andy Fleming,
4

Psychologia.
Twórcy oprogramowania potrzebują zrozumienia, co motywuje ludzi i dlaczego postępują tak, jak robią.

bestattendance
źródło
nie wszyscy programiści pracują w microsoft = P
dan_waterworth
@dan_waterworth, nie zgadzam się, myślę, że wszyscy programiści mają obowiązek wobec swoich użytkowników, aby byli humanitarni . Również zrozumienie niektórych psychologii może pomóc niektórym programistom w interakcji z ludźmi w organizacji, którzy nie są tak czysto abstrakcyjni lub skupieni intelektualnie, ale mają kluczowe znaczenie dla przetrwania organizacji. Oczywiście Abnormal Psychology można traktować dla własnej przyjemności z samodiagnozy.
mctylr
@mctylr, cóż, to był żart, ale ... nieważne.
dan_waterworth
3

W zależności od tego, co rozumiesz przez „nietechniczny”, głosuję umiejętności pisania technicznego. Mark Freedman ma rację, wspominając (interpersonalne) umiejętności komunikacyjne, ale umiejętności pisania technicznego są również ważne dla programisty.

Co więcej, każdy komentarz dodany do kodu jest fragmentem pisma technicznego. Ponadto, bez względu na to, jak dobre są twoje umiejętności komunikacji mówionej, bardzo ważne jest pisemne wyjaśnienie tego, jakie rozumiesz wymagania, które inni mogą zrozumieć - nawet bez tego, nawet jeśli początkowa komunikacja mówiona była idealna, twoje i twoi szefowie / klienci postrzegają to, co powinieneś robić, że z czasem dryfuje w różnych kierunkach.

Steve314
źródło
3

Testowanie i profilowanie osobowości

Ważne jest zrozumienie osobowości, tendencji i chemii. Pomoże Ci zrozumieć, jak być bardziej produktywnym indywidualnie i jako zespół.

Czytaj więcej:

http://en.wikipedia.org/wiki/Personality_test

Test osobowości Myersa-Briggsa

Keirsey Temperament Sorter

Profile DISC

Andy Fleming
źródło
Czy decydujesz się na uniknięcie kogoś z silnym I? T? osobowość, która nie pasuje do twojego obecnego zespołu? A może dyskryminujesz osobę z autystycznym zaburzeniem spektrum, która została zasadniczo zmuszona do przyjęcia stylu podobnego do I? T? IIRC, oceniam jako maksymalnie I i T, z pewnym uprzedzeniem w stosunku do N i P. Wiele osób z ASD ma podobny wzór, wynikający z wszystkiego, jak inni reagują na niepełnosprawność. Ekstremalny introwertyczny (nie ekstrawertyczny) i myślący (nie czujący) nie pomagają mi nawiązywać przyjaźni. Większość zespołów twierdzi, że nie pasuję do tego konkretnego zespołu.
Steve314,
1
+1 Podoba mi się to, bardzo pomocne przy rekrutacji - rzeczywiście, znam potencjalnych pracodawców, którzy będą prowadzić Myers-Briggs na wszystkich kandydatach, a zwykle także na Keirsey. Osobiście trochę się zmieniam, ponieważ mam tendencję do przekraczania granic - J zawsze, silniejszy I niż E, zwykle chodzę TN, jeśli pytania dotyczą rzeczywistej pracy, SF, jeśli opieka duszpasterska.
Orbling
Nie zgadzam się Chociaż rozumiem, że testy psychometryczne mogą być pożytecznym ćwiczeniem dla jednostki, ich wartość jest, moim zdaniem, zbyteczna w zatrudnianiu HR pod względem ich skuteczności. Myślę, że prawdziwą wartością podstawową jest zrozumienie / zapamiętywanie, uznanie i nauka pracy z (tj. Współpracować lub wykorzystywać mocne strony) osobowości innych ludzi i nauczyć się wykorzystywać swoje mocne strony. Tj. Nie wszyscy myślą / działają / zachowują się tak jak ty, ale jesteś najbardziej produktywny, kiedy pracujesz w sposób, który odpowiada twojej osobowości (w granicach rozsądku i zdrowej równowagi).
mctylr
3

Podstawowe kursy finansowe - kategoria jest nieco szeroka, ale szanse są dość duże, że większość programistów pracujących dla dużej firmy, która nie produkuje oprogramowania jako produktu, będzie musiała napisać kod, który przeprowadzi obliczenia finansowe. Podobnie, gdy zaczniesz wspinać się po szczeblach kariery, możesz zostać wezwany do opracowania podstawowych budżetów dla swojej grupy. Wreszcie, dostarczają one również przydatnych informacji dla twoich budżetów domowych, abyś wiedział, gdzie inwestować pieniądze w celu uzyskania krótkoterminowych zysków i stabilności długoterminowej (tj. Dla konta emerytalnego).

rjzii
źródło
3

Według mnie Malowanie i gotowanie. Sprawia, że ​​stajemy się bardziej cierpliwi i pozwala nam się zrelaksować.

Kugathasan Abimaran
źródło
4
+1 za wzmiankę o hobby. Skupienie się tylko na „użytecznej” wiedzy może sprawić, że ludzie będą zbyt wąsko nastawieni, a hobby to naprawi.
Goran Jovic
2
  • Języki obce!
  • Miałem kurs na studiach pod nazwą „Informatyka i ludzkość”, w którym rozmawialiśmy o byciu odpowiedzialnym jako programista (np. Obawy dotyczące prywatności).
  • Business Administration (np. Księgowość, HR) pozwala lepiej zrozumieć swoich szefów i klientów.
  • Elektronika sprawia, że ​​lepiej rozumiesz swoje narzędzia.
EricSchaefer
źródło
2

Ekonomia i biznes, ponieważ właśnie dlatego programiści mają pracę. Ponadto ich zrozumienie prawie zawsze olśniewa nietechnicznych menedżerów i właścicieli firm, ponieważ są tak przyzwyczajeni do słuchania tylko technicznych wypowiedzi od programistów i administratorów systemów.

bogeymin
źródło
2

Tańczy na pograniczu kwestii technicznych i nietechnicznych, ale jeśli Twoja szkoła oferuje coś w stylu interakcji człowiek-komputer (HCI) lub coś innego związanego z projektowaniem interfejsu użytkownika, skorzystaj z niej. Oto kilka cennych rzeczy.

BlairHippo
źródło
2

Dziwi mnie, że nikt nie wspominał o poprawie znajomości języka angielskiego.

Ciągle jestem zaskoczony liczbą otrzymanych CV / CV, które są prawie nieczytelne.

Jeśli zaczynasz jako czysty technik, jest mało prawdopodobne, że zakończysz karierę przy użyciu tego samego zestawu umiejętności. Nadejdzie czas, kiedy będziesz musiał napisać raport (lub wiele raportów), które wymagają zapisania dużej ilości słów na papierze.

Problemem, z którym możesz się spotkać, jest znalezienie odpowiedniego kursu.

Fortyrunner
źródło
1

Prawo

Jest wiele przedmiotów, które powinien znać specjalista w dziedzinie informatyki, w rzeczywistości nasz zawód, podobnie jak większość zawodów związanych z doradztwem biznesowym, wymaga znacznego zakresu wiedzy we wszystkich dziedzinach, które spotykamy i analizujemy.

Jednak prawo jest tym, które wyróżniłbym jako konieczność.

Nasz zawód znajduje się na pierwszej linii w szybko zmieniających się ramach prawnych, własność intelektualna jest dobrze znanym przykładem, ale istnieje wiele różnych kwestii prawnych, które pojawiają się z dnia na dzień. Zgodność z przepisami, ważne i nieważne klauzule umowne, prawo kredytowe, jeśli pracujesz w handlu elektronicznym, ochrona danych.

Myślę, że wszyscy specjaliści IT, a na pewno starsi inżynierowie oprogramowania, powinni przejść podstawowe szkolenie prawne i przestrzegać obowiązujących przepisów w swoich obszarach. Mój uniwersytet miał go w obowiązkowym programie dla studentów studiów magisterskich w zakresie informatyki, przydaje się to regularnie. Zwykle riposte polega na tym, że „dział prawny sobie z tym radzi”, tak, mogą nie zdawać sobie sprawy, że istnieje problem stworzony przez oprogramowanie, chyba że pracownicy są wystarczająco świadomi, aby je o tym powiadomić - a ponadto zwykle jest to źródło głowa na bloku do krojenia.

Orbling
źródło
1

Oszacowanie

Nienawidzimy tego, ponieważ tak niewielu z nas to rozumie. Zrozum to i nie jest to aż tak bolesne.

MIA
źródło
1

Chociaż nie będę kwestionować znaczenia umiejętności komunikacyjnych zarówno w formie pisemnej, jak i werbalnej, jeśli masz szansę wziąć udział w kursie interakcji człowiek-komputer, uważam, że okaże się to bezcenne. Niektóre z najtrudniejszych problemów, które widzę w pracy, zwykle polegają na próbie ustalenia, czego chce użytkownik, gdy on nawet nie zna siebie. Opracowanie intuicyjnych interfejsów użytkownika, które działają dobrze i dokładnie tak, jak oczekuje użytkownik, jest naprawdę trudne.

Pemdas
źródło
1
  • Myślę, że powinieneś mieć dobre hobby, więc lepiej naucz się uprawiać sport (na świeżym powietrzu, więc również ćwicz)
  • Naucz się muzyki lub spróbuj pisać wiersze, prozy, scenariusze do dramatu (uczenie się tych rzeczy poprawi Twoją kreatywność, która moim zdaniem jest najbardziej potrzebna dla programisty lub dowolnej osoby)
  • Matematyka (zdecydowanie zalecane)
  • umiejętności mówienia i komunikowania się
Keshan
źródło
0

Latem 2010 r. Wziąłem kurs „Komunikacja międzynarodowa”. Chodziło o różne tematy: jak się komunikujesz, jak jeden obiekt może wzbudzać przeciwne uczucia dla różnych ludzi, jak być miłym, jak pozostać na temat / zmienić temat, aby inni zaakceptowali. Pomaga mi nawet w codziennym życiu.

Konstantin Petrukhnov
źródło
0

Niektóre odpowiedzi tutaj sugerują projektowanie graficzne lub typografię przy założeniu, że pomoże to w tworzeniu lepszych GUI i zapewni lepsze wrażenia użytkownika.

Niektóre uniwersytety faktycznie oferują kursy z GUI Ergonomia, które mogą być jeszcze lepsze, chociaż nie jestem pewien, jak „nietechniczne” można to rozważyć;)

Mchl
źródło
0

Debata.

Pomaga ci nauczyć się, jak badać i rozwijać argument, który pomoże ci ogromnie pomóc w przyjęciu pomysłów przez organizację, w której pracujesz.

HLGEM
źródło
0

To zależy od tego, co chcesz zrobić ze swoim życiem. Ale oto kilka dobrych ogólnych:

  • Komunikacja grupowa. Jako programista prawdopodobnie będziesz pracować w grupach przez większą część swojej kariery. Korzystne byłoby poznanie interakcji między grupami i komunikacji.
  • Ekonomia. Poleciłbym kurs ekonomii inżynieryjnej obejmujący takie tematy, jak analiza wartości bieżącej i przyszłej, stopy zwrotu, koszty cyklu życia, decyzje projektowe i tak dalej. Jednak należy podjąć pewien rodzaj ekonomii, nawet jeśli jest to tylko mikroekonomia lub makroekonomia.
  • Zachowań organizacyjnych. Wziąłem kurs OB i jest to w dużej mierze kurs psychologii stosowanej i socjologii, biorąc pojęcia psychologiczne i socjologiczne i stosując je do działania organizacji.
  • Pisanie techniczne lub pisanie instrukcji technicznych. Chociaż każdy kurs pisania byłby dobrym pomysłem, pisanie techniczne nie tylko poprawiłoby twoje umiejętności pisania, ale także pomogło ci w tworzeniu dokumentacji technicznej, co możesz robić w pracy.
Thomas Owens
źródło
0

Każdy przyzwoity jakość work-life balance kursy, warsztaty, a nawet książki mogą być pomocne, aby podkreślić znaczenie, i przypominają nam (nas wszystkich), jak ważne jest to na dłuższą metę do utrzymania zrównoważonego życia, więc nie kończy się wypalony, rozwiedziony i cierpiący na poważne zaburzenia depresyjne sam i zwolniony.

W trudnych czasach ekonomicznych może to być jeszcze ważniejsze, ze względu na ogromną presję, aby oszukać tę równowagę dla tego, co zwykle fałszywą nadzieją bezpieczeństwa (jeśli sytuacja jest naprawdę tak niepewna, w większości i tak ostatecznie się nie powiedzie).

Unikaj wszelkich szkoleń lub seminariów, które są zbyt chwytliwe lub zorientowane na szybką naprawę, ale moim zdaniem najlepszym rozwiązaniem jest prosta równowaga zorientowana na zdrowy rozsądek.

Mctylr
źródło
0

1 Muzyka
2 Umiejętności językowe i komunikacyjne + Wszystkie strony koncepcyjne wdrożone przez stackexchange są warte wzięcia udziału

rev Jigar Joshi
źródło
0

Marketing i reklama

Programiści, którzy wykonują aplikacje WP7, iOS, Android ... Może zwiększyć liczbę sprzedaży.

Łukasz Madon
źródło
0

Fotografia.....

Przynajmniej dla mnie, ponieważ sprawia mi to radość, a czasem poważnie myślę o tym jako o alternatywnym nośniku.

Mówiąc bardziej ogólnie, wszystko oprócz komputerów, którymi jesteś zainteresowany.

PS: Nauka innego języka wcale nie jest złym pomysłem.

Prasham
źródło