Åñëè âû èç òåõ, êòî «ðàáîòàë åù¸ Òàì-Òî!» è «äåëàë åù¸ Òî-Òî!», à ñåé÷àñ ñ÷àñòëèâî îòäûõàåòå íà ïåíñèè — ýòà ñòàòüÿ íå äëÿ âàñ. Ïðîñòî ñïàñèáî çà òðóä è ïðèìèòå ìîè ïîçäðàâëåíèÿ. Íî åñëè æå âû, êàê è ÿ, äàæå ñòàâ íåìíîãî ñòàðøå âñ¸ åù¸ îùóùàåòå ñòðàñòü ê ïðîãðàììèðîâàíèþ, ðàäóåòåñü âèäó êîäà è íå ìîæåòå óñòîÿòü ïåðåä æåëàíèåì íàïèñàòü åù¸ ÷òî-íèáóäü, òîãäà ïðîäîëæàéòå ÷èòàòü.
Áîëüøóþ ÷àñòü ìîåé æèçíè ÿ ïðîðàáîòàë ðàçðàáîò÷èêîì ïðîãðàììíîãî îáåñïå÷åíèÿ. Íî îäíàæäû, óæå ïîä êîíåö ìîåãî ÷åòâ¸ðòîãî äåñÿòêà, ÿ ïîïàëñÿ íà óäî÷êó ïðåäïðèíèìàòåëüñêîé íàæèâû. ß òîãäà ïîâåðèë, ÷òî ñîçäàâàòü ñîáñòâåííûå êîìïàíèè — ýòî êðóòî. ß íàøåë íåìíîãî âåí÷óðíîãî êàïèòàëà è îðãàíèçîâàë ïàðó íåáîëüøèõ ñòàðòàïîâ äëÿ ðåàëèçàöèè ñîáñòâåííûõ èäåé. È âîò ÿ ñòàë, êàê ìíå êàçàëîñü, íîðìàëüíûì CEO è íå òàêèì óæ ïëîõèì ìåíåäæåðîì. È, õîòÿ ÿ óæå íå ïèñàë êîä ëè÷íî, ÿ ìîã íàíèìàòü õîðîøèõ ïðîãðàììèñòîâ, óïðàâëÿòü êà÷åñòâîì ïðîåêòîâ è âíåäðåíèåì èííîâàöèé.
ß ñìèðèëñÿ ñ ìûñëüþ, ÷òî ìîé ëó÷øèé êîä óæå íàïèñàí — â ïðîøëîì. Ìíå áûëî óæå 54 ãîäà (íåìàëî!) è ÿ, âåðîÿòíî, óæå íå ìîã ïèñàòü êîä òàê æå õîðîøî, êàê è ðàíüøå. Êòî çíàåò — ìîæåò áûòü ó ìåíÿ óæå íà÷àëà îòêàçûâàòü ïàìÿòü, íó èëè ÿ ïðîñòî âûó÷èë âñ¸, ÷òî áûë ñïîñîáåí â æèçíè âûó÷èòü. Ìîé íàñòðîé ïîäêðåïëÿëñÿ íàáëþäåíèÿìè îêðóæàþùåé ìåíÿ ðåàëüíîñòè. Âñå íîâûå òåõíîëîãèè âûãëÿäåëè äëÿ ìåíÿ ÷óäàêîâàòî. ß íåíàâèäåë Node.js. ß ñ÷èòàë âñå ôðåéìâîðêè äëÿ âåá-ðàçðàáîòêè óæàñíûìè. È ÿ ñåòîâàë íà òî, ÷òî êëàññè÷åñêèå ñïîñîáû ðàçðàáîòêè ÏÎ ðàçðóøèëèñü è ïðåâðàòèëèñü â íàáîð êëèøå, êîòîðûå íûí÷å âïàðèâàþòñÿ ïîä óìíûìè íàçâàíèÿìè òèïà Agile èëè «ýêñòðåìàëüíîå ïðîãðàììèðîâàíèå». ß ñêó÷àë çà äíÿìè, êîãäà ëþäè ïèñàëè ñïåöèôèêàöèþ íà áóäóùåå ÏÎ, ïðîãðàììèðîâàëè, à çàòåì òùàòåëüíî òåñòèðîâàëè åãî. È êîãäà â êàæäîé ñòàòüå íå áûëî òûñÿ÷è æàðãîííûõ ñëîâå÷åê.
Îäíàæäû âå÷åðîì ìû ñìîòðåëè ñòàðûé äîáðûé Çâ¸çäíûé Ïóòü è Äæåéìñ Êèðê ñêàçàë, ÷òî îí ñòàíîâèòñÿ ñòàðûì è âûäûõàåòñÿ. Åìó òóò æå âîçðàçèë Ñïîê, êàê îáû÷íî, â ñâî¸ì óâåðåííîì è ëîãè÷íîì ñòèëå:
«Ïðèíèìàòü ïîâûøåíèå áûëî Âàøåé îøèáêîé. Êîìàíäîâàíèå êîðàáë¸ì — Âàøà åäèíñòâåííàÿ è ëó÷øàÿ èç âîçìîæíûõ ñóäüáà.»
ß ïðîïóñòèë îñòàòîê ôèëüìà — äóìàë îá ýòîé ôðàçå. À íå ñäåëàë ëè ÿ òîé æå âåùè? Íå çðÿ ëè ÿ ïåðåøåë ê ðàáîòå ìåíåäæåðà (â êîòîðîé áûë ëèøü óìåðåííî õîðîø), âìåñòî òîãî, ÷òîáû îòäàòüñÿ ñâîåé ñóäüáå è òàëàíòó? Ê ñ÷àñòüþ, âñêîðå ÿ íàøåë îòâåò íà ýòîò âîïðîñ è îí áûë: «Äà, çðÿ». ß çàáûë, ÷òî íàïèñàíèå êîäà è áûëî òîé ñàìîåé ìîåé «åäèíñòâåííîé è ëó÷øåé èç âîçìîæíûõ ñóäüáîé», à íàïèñàííûé ìíîþ êîä áûë ñàìûì âàæíûì ìîèì òâîðåíèåì â æèçíè. Ìîÿ ïåðâàÿ êîìïàíèÿ áûëà ïîñòðîåíà âîêðóã êóñêà íàïèñàííîãî ìíîþ êîäà, è äàæå ñåãîäíÿ êîå-÷òî èç íåãî âñ¸-åù¸ ðàáîòàåò. È âîò ïîñëå íåêîòîðîãî ïåðèîäà ñàìîêîïàíèÿ ÿ âûáðîñèë âñå ñâîè ñòåðåîòèïû î òîì, ÷òî «èíäóñòðèÿ óæå íå òà». ß íà÷àë ó÷èòü íîâûå ÿçûêè ïðîãðàììèðîâàíèÿ. Ìíå ïîâåçëî è åù¸ äî òîãî, êàê ìíå ñòóêíóëî 57 ÿ çàêîí÷èë ðàçðàáîòêó îäíîãî èç ëó÷øèõ ïðîãðàììíûõ êîìïîíåíòîâ, êîòîðûé ìíå äîâåëîñü íàïèñàòü â æèçíè. Ýòî áûë ïðîäóêò äëÿ íåáîëüøîãî ìåñòíîãî ñòàðòàïà. Îí áûë õîðîø: â í¸ì áûëà èäåÿ, àðõèòåêòóðà, ðåàëèçàöèÿ. Îí, â êîíöå êîíöîâ, äåéñòâèòåëüíî ÷òî-òî çíà÷èë!
 èòîãå ÿ ðåøèë íàïèñàòü íåñêîëüêî ìûñëåé äëÿ òåõ ëþäåé, êîòîðûå â ñèëó ñâîåé ïðîôåññèè è âîçðàñòà óæå íàõîäÿòñÿ ñî ìíîé â îäíîé ëîäêå èëè îêàæóòñÿ òàì ðàíî èëè ïîçäíî.
1. Âû çíàëè, íà ÷òî èä¸òå
Ïî ìåðå òîãî, êàê ìû ñòàíîâèìñÿ ñòàðøå, ìû âñå óñòà¸ì. Ìû óñòà¸ì îò áåñêîíå÷íîé òðàòû âðåìåíè ñ ìèíèìàëüíûì ðåçóëüòàòîì. Ìû óñòà¸ì âèäåòü îäíè è òå æå îøèáêè, ñëó÷àþùèåñÿ ñíîâà è ñíîâà. Ìû íà÷èíàåì ãîâîðèòü âåùè âðîäå «æèçíü ñëèøêîì êîðîòêà äëÿ ýòîãî». È ïî ìåðå òîãî, êàê íàøè çíàêîìûå ïðèáëèæàþòñÿ ê âûõîäó íà ïåíñèþ, ìû ÷àñòî ëîâèì ñåáÿ íà çàâèñòè ïî îòíîøåíèþ ê èõ íà䏿íûì, ñêó÷íûì ðàáîòàì, êîòîðûå âñêîðå äàäóò èì âîçìîæíîñòü âûéòè íà çàñëóæåííûé îòäûõ. Ñàìà èäåÿ íà÷àòü âñ¸ çàíîâî, ñíîâà ïîòðàòèòü ñëåäóþùèå 20 ëåò íà ýòî ïóòåøåñòâèå êàæåòñÿ íåëåïîé, íå íàõîäèò ïîíèìàíèÿ ó ñåìüè (îñîáåííî åñëè å¸ ÷ëåíû íå çàäåéñòâîâàíû â ðàçðàáîòêå ÏÎ).
Äà, êîãäà ìû âñïîìèíàåì î âðåìåíàõ, êîãäà ìû òîëüêî íà÷èíàëè ïèñàòü ÏÎ, ýòî áûëî íåâåðîÿòíî çàõâàòûâàþùå. Òåõíîëîãèè ñîçäàâàëèñü è ìåíÿëèñü íà ëåòó. Òàê ìíîãî ïðîáëåì åù¸ ïðåäñòîÿëî ðåøèòü, íîâûå âûçîâû âîçíèêàëè êàæäûé äåíü, ïðèõîäèëîñü ÷òî-òî èçîáðåòàòü è ïåðåèçîáðåòàòü. Ðàçðàáîòêà ïðîãðàììíîãî îáåñïå÷åíèÿ áûëà íîâîé ãðàíèöåé ïîçíàíèé ÷åëîâå÷åñòâà, ãäå ïîñòîÿííî ïðîèñõîäèëè îòêðûòèÿ è âîçíèêàëè âîçìîæíîñòè. Äëÿ ìíîãèõ èç íàñ ïðåáûâàíèå íà ýòîì ñâåðêàþùåì îñòðèå ïðîãðåññà ñòàëî ÿð÷àéøèì ñîáûòèåì è ïåðåæèâàíèåì â æèçíè. Íàñ ýòî ïðèâëåêàëî. À ñåé÷àñ, äðóçüÿ ìîè, ìû ïðèåõàëè. Ìû óæå íå ìîëîäû è ó íàñ äîñòàòî÷íî îïûòà, îøèáîê, à çíàíèé î òîì, êàê ðàáîòàþò êîìïüþòåðû íà íèçêîì óðîâíå ó íàñ çíà÷èòåëüíî áîëüøå, ÷åì â ñðåäíåì ó ëþäåé â íàøåé ñôåðå. ×òîáû îñòàâàòüñÿ íà êîíå, âàì íóæíî íàó÷èòüñÿ ìûñëèòü èíà÷å, ÷åì âû ïðèâûêëè ýòî äåëàòü. Âàñ íå äîëæíà ïóãàòü íåîáõîäèìîñòü âûáðîñèòü èç ãîëîâû âñ¸, ÷òî âû çíàëè äî ýòîãî è âûó÷èòü íîâûé ÿçûê âðîäå Swift, Python èëè Go. Äà, íà ýòî ìîãóò óéòè ãîäû. Âû áóäåòå äåëàòü îøèáêè, íîâûå îøèáêè, êàêèå âàì äî ýòîãî íèêîãäà íå ïðèõîäèëîñü äåëàòü. Âàì ïðèä¸òñÿ çàäåðæèâàòüñÿ è ðàçáèðàòüñÿ, ÷òîáû ïîíÿòü êàêîé èíñòðóìåíòàðèé íà ñåãîäíÿøíèé äåíü ÿâëÿåòñÿ ñàìûì àêòóàëüíûì. È åù¸ âû áóäåòå íàáëþäàòü, êàê ìîëî䏿ü îáãîíÿåò âàñ, íå ïîòîìó ÷òî îíà óìíåå èëè íàñòîé÷èâåå, à ïîòîìó, ÷òî íå áîèòñÿ ñ ãîëîâîé îêóíóòüñÿ â êàêóþ-íèáóäü íîâîìîäíóþ òåõíîëîãèþ, êîòîðîé 3 ìåñÿöà íàçàä è âîâñå åù¸ íå ñóùåñòâîâàëî. Íî ýòî èìåííî òà àòìîñôåðà, êîòîðàÿ âàì è íóæíà. Ñíîâà. Òàê æå, êàê áûëî òîãäà, êîãäà âû òîëüêî íà÷èíàëè.
Ýòî òî, íà ÷òî âû ïîäïèñûâàëèñü. Åñëè âû äåéñòâèòåëüíî õîòèòå áûòü ïðîãðàììèñòîì — îòáðîñüòå ñîìíåíèÿ, îòáðîñüòå ñòðàõ ñòàðåíèÿ è íå ïåðåæèâàéòå ïî ïîâîäó òîãî, ÷òî âàø âûáîð îòëè÷àåòñÿ îò âûáîðà âàøèõ ñâåðñòíèêîâ. Ïðîñòî ñòàíîâèòåñü ñíîâà íà ñòàðò ýòîé áåãîâîé äîðîæêè è íàñëàæäàéòåñü òåì ôàêòîì, ÷òî æèçíü òî÷íî íå çàêàí÷èâàåòñÿ, ïîêà âû áåæèòå. Îíà òîëüêî íà÷èíàåòñÿ!
2. Ïðèìèòå Õàîñ
Åñòü òàêàÿ ñòàðàÿ ïîãîâîðêà: «÷åì áîëüøå âñ¸ ìåíÿåòñÿ, òåì áîëåå î÷åâèäíî, ÷òî âñ¸ îñòà¸òñÿ íåèçìåííûì». Ïðîãðàììèðîâàíèå âñ¸ åù¸ îñòàåòñÿ ïðîãðàììèðîâàíèåì, òàê? Íà ñàìîì äåëå âñ¸ ìåíÿåòñÿ íå òàê êàðäèíàëüíî, êàê ìíîãèå èç íàñ îæèäàëè. Íàïðèìåð, ìû äóìàëè, ÷òî ïðîãðàììèðîâàíèå ê ýòîìó âðåìåíè ñòàíåò ïîëíîñòüþ ïîíÿòíûì è äåòåðìèíèðîâàííûì. Ýòîò ïðîãíîç íå èñïîëíèëñÿ. Ìû äóìàëè, ÷òî âðåìÿ áàãîâ îñòàíåòñÿ â ïðîøëîì, íî áàãè âñ¸ åù¸ æèâóò â ñîâðåìåííûõ ïðîãðàììàõ. È åù¸ ìû äóìàëè, ÷òî íàìíîãî ìåíüøå ïðèä¸òñÿ òðàòèòü âðåìåíè íà ïåðåáîð âîçìîæíûõ ðåøåíèé è îòáðàñûâàíèå òóïèêîâûõ âàðèàíòîâ. Íî âñ¸ ýòî ïî-ïðåæíåìó ñ íàìè.
Íî ñ äðóãîé òî÷êè çðåíèÿ, ìíîãîå âñ¸-òàêè èçìåíèëîñü. Êîãäà ÿ ïèñàë ñâîè ïåðâûå ïðîãðàììû, çàïóñêàëèñü îíè íà íàó÷íîì êàëüêóëÿòîðå îò HP, âñå ïðîãðàììèñòû, êîòîðûõ ìîæíî áûëî óâèäåòü, íîñèëè áåëûå ëàáîðàòîðíûå õàëàòû, à îïåðàöèîííàÿ ñèñòåìà Unix (íîâåéøàÿ íà òî âðåìÿ) ñîñòîÿëà èç 20 000 ñòðîê êîäà. Äàæå â ñåðåäèíå 80-ûõ ðàçðàáîòêà ÏÎ áûëà äîâîëüíî ñòðàííîé, ðåäêîé è èçîëèðîâàííîé ïðåäìåòíîé îáëàñòüþ. Äîìàøíèå êîìïüþòåðû, õîòÿ è ïîëó÷èëè óæå äîñòàòî÷íóþ äëÿ ðàçðàáîòêè ÏÎ ìîùíîñòü, âñ¸ åù¸ íå äàâàëè äîñòóïà ê èíñòðóìåíòàì, çíàíèÿì è ñðåäñòâàì, íåîáõîäèìûì äëÿ ýôôåêòèâíîãî îáó÷åíèÿ ïðîãðàììèðîâàíèþ.
ß íå çíàþ, ñêîëüêî â ìèðå áûëî ïðîãðàììèñòîâ, êîãäà ÿ íà÷èíàë ýòèì çàíèìàòüñÿ â 80-å ãîäû, íî èõ òî÷íî áûëî íå òàê óæ ìíîãî. Äî 1988 ãîäà èõ êîëè÷åñòâî äàæå íå îòðàæàëîñü â ñòàòèñòèêå, ñîáèðàåìîé Áþðî Òðóäîâîé Ñòàòèñòèêè. Ê òîìó âðåìåíè ïðîôåññèîíàëüíûõ ïðîãðàììèñòîâ â ÑØÀ ñòàëî 100 000 ÷åëîâåê, è òîëüêî 7000 èç íèõ áûëè óðîâíÿ «senior».
Èíäóñòðèÿ, ê êîòîðîé ÿ ïðèñîåäèíèëñÿ, áûëà èíäóñòðèåé ñïåöèàëèñòîâ. Îáÿçàòåëüñòâà è äèñöèïëèíà áûëè îñíîâíûìè òðåáîâàíèÿìè. Ñåãîäíÿ ïîñëåäíåå èññëåäîâàíèå IDC íàñ÷èòàëî â ìèðå 18 ìèëëèîíîâ ïðîãðàììèñòîâ è ïðèìåðíî ïîëîâèíà èç íèõ íå ÿâëÿþòñÿ ïðîôåññèîíàëüíûìè ðàçðàáîò÷èêàìè. ßäðî îïåðàöèîííîé ñèñòåìû Linux ñîñòîèò èç 9.8 ìèëëèîíîâ ñòðîê, íàïèñàííûõ áîëå ÷åì 6000 àâòîðîâ. À êðîìå íåãî íà Ãèòõàáå åñòü åù¸ 10 ìèëëèîíîâ ðåïîçèòîðèåâ, â êîäîâîé áàçå Google — 2 ìèëëèàðäà ñòðîê êîäà. Ñåãîäíÿ ïèøåòñÿ ìíîãî êîäà. Óæàñàþùå ìíîãî êîäà.
Ýòè îøåëîìëÿþùèå öèôðû ïîêàçûâàþò îáùèé óðîâåíü èíòåðåñà ê ïðîãðàììèðîâàíèþ è êîìïüþòåðíîé ãðàìîòíîñòè. Stackoverflow ðàïîðòóåò î 32 ìèëëèîíàõ àêòèâíûõ ïîëüçîâàòåëåé â ìåñÿö, è òîëüêî 26% èç íèõ èç ÑØÀ. È çíàåòå ÷òî? Òîëüêî 5% èç ýòèõ ëþäåé ñòàðøå 55 ëåò. Êîãäà-òî äîñòóï ê ìèðó ðàçðàáîòêè ÏÎ òðåáîâàë äèñöèïëèíû, ñàìîîòäà÷è è äîðîãîãî îáîðóäîâàíèÿ, à ñåãîäíÿ 80% àìåðèêàíöåâ èìåþò äîñòóï êî âñåìó íåîáõîäèìîìó ïðÿìî íå âûõîäÿ èç äîìà. È ýòèì ïîëüçóåòñÿ ìîëîäîå ïîêîëåíèÿ, âûòåñíÿÿ èç ïðîôåññèè ñâîèõ ðîäèòåëåé.
Ñåãîäíÿøíÿÿ èíäóñòðèÿ ñîâåðøåííî íå ïîõîæà íà òó, êîòîðóþ ÿ ïîìíþ. Ñåãîäíÿ ðàçðàáîòêà ÏÎ — ýòî ÷òî-òî âðîäå ýêñòðåìàëüíîãî âèäà ñïîðòà. Êòî-óãîäíî ìîæåò íà÷àòü ýòèì çàíèìàòüñÿ, íàïèñàòü êàêîé-òî êîä, áûòü íåîñòîðîæíûì, óïàñòü ñî ñêàëû è ðàçáèòüñÿ ê ÷åðòÿì. Ýòî íå ñëó÷àéíî, ÷òî â ñîâðåìåííîì Agile èñïîëüçóþòñÿ òåðìèíû âðîäå «ñïðèíò» è «ñõâàòêà» (scrum). Âàì ëó÷øå ïðèâûêàòü ê íèì, ïîñêîëüêó íàâûêè êîäèíãà ñòàíîâÿòñÿ óæå áàçîâîé ãðàìîòíîñòüþ. Åñëè êàæäàÿ øêîëà íà ïëàíåòå ó÷èò äåòåé ïðîãðàììèðîâàíèþ ñ 10 ëåò, âñêîðå ñåãîäíÿøíèå 18 ìèëëèîíîâ ïðîãðàììèñòîâ ñòàíóò êàïëåé â ìîðå. Òå èç íàñ, êòî èìååò íåêîòîðûé îïûò, ïîíèìàþò, ÷òî ýòî îçíà÷àåò.  ñðåäíåì êàæäîå ïðèëîæåíèå, ñ êîòîðûì âàì ïðèä¸òñÿ ñòîëêíóòüñÿ, áóäåò êóñêîì… áóäåò íå î÷åíü âûñîêîãî êà÷åñòâà. Êàê è â ëþáîì ìàññîâîì ñïîðòå, áîëüøèíñòâî ó÷àñòíèêîâ áóäåò àìàòîðàìè, ëèøü íåêîòîðûå èç íèõ áóäóò ïîäàâàòü íàäåæäû, à óæ äî óðîâíÿ ó÷àñòíèêîâ Îëèìïèàäû äîáåðóòñÿ è âîâñå åäèíèöû. ×òîáû ïðåóñïåòü ñåãîäíÿ, âàì íóæíî îòáðîñèòü âñå ïðåäóáåæäåíèÿ î ðàçðàáîòêå ÏÎ è ïðèíÿòü õàîñ.
Èç-çà âñåãî ýòîãî õàîñà ìèð ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ ïðåäñòàâëÿåò ñîáîé ñåãîäíÿ èçðÿäíóþ ìåøàíèíó. Ëþäè èçîáðåòàþò âåëîñèïåäû, êîòîðûå ìû óñïåøíî ïðèìåíÿëè åù¸ äåñÿòèëåòèÿ íàçàä. Îíè ïèøóò ÿâíî èçáûòî÷íûå áèáëèîòåêè. Îíè ñîçäàþò íîâûå òåõíèêè, êîòîðûå íå îáÿçàòåëüíî ëó÷øå ñòàðîãî ñïîñîáà äåëàòü ÷òî-òî ïîäîáíîå.
Íî êðîìå òîãî âîçíèêàþò è ïîòðÿñàþùèå íîâûå èäåè, ïðèäóìàííûå ëþäüìè, êîòîðûå ìûñëèëè âíå îáùåèçâåñòíîãî áàçèñà. ßçûêè âðîäå Go óñòðàíÿþò öåëûé ðÿä ñëîæíîñòåé, ïðèâíåñ¸ííûõ êîãäà-òî êëàññè÷åñêèì ÎÎÏ è îòêðûâàþò ïóòü ê íîâîé, ïðåêðàñíîé ïðîñòîòå. Ñîïðîãðàììû ìåíÿþò ñàìó ïàðàäèãìó òîãî, êàê ëþäè äóìàþò î ìíîãîïîòî÷íîñòè. Ìû æèâ¸ì â çîëîòîé âåê ðàçðàáîòêè ïðîãðàììíîãî îáåñïå÷åíèÿ è èíñòðóìåíòû äëÿ ðàáîòû äîñòóïíû êàæäîìó.
×òîáû îñòàâàòüñÿ â èãðå, âàì íóæíî ïðûãíóòü íà ïîëå, ñõâàòèòü ìÿ÷ è íà÷àòü èãðàòü ñ îñòàëüíûìè èãðîêàìè, äàæå åñëè îíè íà 30 ëåò ìîëîæå. ß äàæå áîëüøå ñêàæó: ìû, ñòàðøåå ïîêîëåíèå, íåñ¸ì íà ñåáå îáÿçàííîñòü äîáàâèòü íàø îïûò è ìóäðîñòü êî âñåì ýòèì ñîâðåìåííûì êîäîâûì áàçàì è íîâûì ïðîåêòàì. Ýòî ìîæåò óìåíüøèòü õàîñ â íåêîòîðûõ ëîêàëüíûõ òî÷êàõ è ïîâûñèòü øàíñ óñïåõà íåêîòîðûõ ïðîåêòîâ. Ìîæåò áûòü äàæå íàøèõ.
Òàêèì îáðàçîì, âìåñòî òîãî, ÷òîáû â øòûêè âîñïðèíèìàòü êàæäûé íîâûé òåðìèí è òåõíîëîãèþ, î êîòîðîé âû óñëûøèòå îò ìîëîäîãî ïðîãðàììèñòà, êîòîðûé òîëüêî ÷òî ïåðåèçîáð¸ë íå÷òî î÷åâèäíîå — îáíîâèòå ñâîè âíóòðåííèå ôèëüòðû. Ó÷èòåñü âèäåòü áóäóùèõ ïîáåäèòåëåé è ó÷èòåñü ïîìîãàòü òåì, êòî ñòàíåò Îëèìïèéñêèì ÷åìïèîíîì — âû ñî ñâîèì îïûòîì ìîæåòå ýòî ñäåëàòü. ß óâåðåí, ÷òî òåìà ãëóïîñòè ìîëîäîãî ïîêîëåíèÿ ïðîãðàììèñòîâ áóäåò ãîðÿ÷åé íà ñëåäóþùåì ñúåçäå Ñòàðûõ Ïðîãðàììèñòîâ, íî ëè÷íî ÿ â ýòîì ñúåçäå ó÷àñòâîâàòü íå ñîáèðàþñü. È âàì íå ñîâåòóþ.
3. Òî, ÷òî âû âûáðàñûâàåòå, áîëåå âàæíî, ÷åì òî, ÷òî âû îñòàâëÿåòå
Ìîÿ ëþáèìàÿ ïðîãðàììåðñêàÿ ïîãîâîðêà ãëàñèò: «Ïðîãðàììíîå îáåñïå÷åíèå ÷àùå ñòàíîâèòñÿ ëó÷øå îò óäàëåíèÿ êîäà, ÷åì îò åãî äîáàâëåíèÿ». Òî æå ñàìîå êàñàåòñÿ è æèçíè, îñîáåííî æèçíè ïðîãðàììèñòà. Êîëè÷åñòâî âåùåé, êîòîðûå ñëåäîâàëî áû èçó÷èòü — óìîïîìðà÷èòåëüíî. Âñ¸, ÷òî îñòàíàâëèâàåò âàñ îò òîãî, ÷òîáû ýòî ñäåëàòü, áóäü òî âàøà ñòàðàÿ ïðîãðàììà èëè ñòàðàÿ èäåÿ — òîðìîçèò âàø ïðîãðåññ.
Åñëè âû óæå îïûòíûé ïðîãðàììèñò, â âàøåì èíñòðóìåíòàðèè åñòü óæå ìíîãî âåùåé, êîòîðûå ïðîâåðåíû âðåìåíåì è òî÷íî ðàáîòàþò. Ýòî âàøà óäà÷à è îäíîâðåìåííî âàøà îãðîìíàÿ ïðîáëåìà. ×àñòî ÿ ìîãó íàïèñàòü ôóíêöèþ äëÿ ïàðñèíãà ÷åãî-íèáóäü áûñòðåå, ÷åì íàéòè è ïîäêëþ÷èòü ñîîòâåòñòâóþùóþ áèáëèîòåêó. À êðîìå òîãî, äàæå åñëè ÿ ðåøó èñïîëüçîâàòü áèáëèîòåêó, ÿ çàõî÷ó áûòü óâåðåííûì, ÷òî îíà äåëàåò ñâîþ ðàáîòó ïðàâèëüíî è ïîä «ïðàâèëüíî» çäåñü ÿ èìåþ â âèäó «òàê, êàê ýòî ñäåëàë áû ÿ». È âîò ïîñòåïåííî ÿ íà÷àë çàìå÷àòü, ÷òî ìîè èíñòèíêòû óñòàðåâàþò. ß äîëæåí èìïîðòèðîâàòü îïåíñîðñíóþ áèáëèîòåêó è ïîïðîáîâàòü å¸. È åñëè îêàæåòñÿ, ÷òî îíà ÷òî-òî äåëàåò íå âåðíî, ÿ äîëæåí ïîïðîáîâàòü óëó÷øèòü å¸, ÷òîáû ñîçäàòü íåêîòîðûå àðòåôàêò ïåðåèñïîëüçóåìîãî êîäà, ÷óòü-÷óòü ëó÷øåãî êà÷åñòâà, ÷åì îí áûë äî ìîåãî âìåøàòåëüñòâà.
Ïîäõîä «ýòî ïðîâåðåíî âðåìåíåì è ðàáîòàåò õîðîøî» ÷àùå âñåãî ãëàâíûé âðàã èííîâàöèé. Åäèíñòâåííûé íàñòîÿùèé ïóòü âïåð¸ä — ýòî ïîäâåðãàòü âñ¸, ÷òî âàì èçâåñòíî, ïîñòîÿííîìó ñîìíåíèþ. Òîëüêî ïîñëå òîãî, êàê âû ïîïðîáóåòå êàêîé-íèáóäü íîâûé ïóòü ðåøåíèÿ ïðîáëåìû, óçíàåòå åãî ïëþñû è ìèíóñû, ìîæíî áóäåò ðåøàòü áðàòü ëè ñòàðûé ïðîâåðåííûé ñïîñîá èëè ïðåäïî÷åñòü íîâèíêó. Ýòî ñîçäà¸ò â âàøåì ìîçãó ýôôåêòèâíûé è ãèáêèé ôèëüòð «çíàþ, ïîòîìó ÷òî òîëüêî ÷òî ïîïðîáîâàë» âìåñòî íåýôôåêòèâíîãî áóíêåðà «çíàþ, ïîòîìó ÷òî ìíîãî ëåò òàê äåëàë è ðàáîòàëî».
×àñòî äàííûé ïîäõîä áóäåò ñòîèòü âàì âðåìåíè è òîëêàòü âàñ íàçàä, ê ñòàðûì ïðèâû÷êàì è ïîäõîäàì. ×àñòî íîâèíêè äåéñòâèòåëüíî áóäóò ìåíåå ñòàáèëüíû èëè ãèáêè è âû ðåøèòå íå îòêëîíÿòüñÿ îò êëàññè÷åñêîãî ïóòè. À èíîãäà áóäåò íàîáîðîò. È, êàê ÿ óæå ãîâîðèë ðàíüøå, ýòî òî, íà ÷òî âû ïîäïèñûâàëèñü, êîãäà âûáèðàëè ïóòü ïðîãðàììèñòà.  êîíöå êîíöîâ ïðè èñïîëüçîâàíèè äàííîãî ïîäõîäà âû âäðóã îáíàðóæèòå, ÷òî â âàøåì ïðèâû÷íîì íàáîðå èíñòðóìåíòîâ âäðóã ïðèáàâèëîñü ïàðó íåïëîõèõ áèáëèîòåê, íåñêîëüêî ïîëåçíûõ óòèëèò, òî-ñ¸, îäíî-äðóãîå-òðåòüå. À çíà÷èò — âñ¸ áûëî íå çðÿ.
4. Âû íèêîãäà íå áóäåòå «ñëèøêîì ñòàðûì»
Ïðåäñòàâüòå íà ñåêóíäî÷êó, ÷òî âàì ñíîâà 20 ëåò. Âû ãäå-òî íà âòîðîì êóðñå óíèâåðñèòåòà, îáíàðóæèâàåòå, ÷òî âàì íå òîëüêî íðàâèòñÿ ó÷èòüñÿ ïèñàòü ïðîãðàììû, íî âû óæå äàæå êîå-÷òî ìîæåòå íàïèñàòü. È èíîãäà äàæå ïîëó÷àåòñÿ íåïëîõî. Âîêðóã ñåáÿ âû âèäèòå ëþäåé ñâîåãî âîçðàñòà, êîòîðûå ñ âîñòîðãîì ñìîòðÿò â áóäóùåå. Íåêîòîðûå èç íèõ äàæå íà÷èíàþò ðàáîòàòü èëè ñîçäàþò ñîáñòâåííûå ïðèëîæåíèÿ, ñ íàäåæäîé, ÷òî èç ýòîãî êîãäà-íèáóäü âûðàñòåò áèçíåñ. Êîãäà Äæîíó Ìåéåðó áûëî 19 ëåò, åãî êîìïàíèÿ TapMedia óæå èìåëà îêîëî 40-à ïðèëîæåíèé â Apple App Store.
Ïåðåìàòûâàåì âïåð¸ä.
×òî òàêîãî áûëî ó òîãî 20-ëåòíåãî ïàðíÿ, ÷åãî âû ñåãîäíÿ íå èìååòå? Âîò ÷òî: áåññòðàøèå è áåçãðàíè÷íûé ýíòóçèàçì. Íî ó âàñ âåäü ñåãîäíÿ åñòü íå ìåíåå ïîëåçíûå âåùè: îïûò, çíàíèÿ, âñå âàøè îøèáêè è âñå âàøè óñïåõè — öåííåéøèé áàçèñ!
Åñëè 20-ëåòíèé ìîæåò âûïóñòèòüñÿ è èìåòü óñïåøíûé ñòàðòàï åù¸ äî òîãî, êàê åìó ñòóêíåò 25, òî âû ýòî ìîæåòå è ïîäàâíî! Âàì íå íàäî ïðîâåðÿòü âñå âîçìîæíûå ïóòè — ÷àñòü èç íèõ âàìè óæå ïðîéäåíà è âû çíàåòå, ÷òî òàì æä¸ò ïðîâàë. Ó âàñ åñòü êàêîå-íèêàêîå ïðåäñòàâëåíèå íå òîëüêî î ïðîãðàììèðîâàíèè, íî è î ìåíåäæìåíòå, ðèñêàõ, äåíüãàõ.
Íå âàæíî, ñêîëüêî âàì ëåò, âàø ñëåäóþùèé óñïåøíûé ïðîãðàììíûé ïðîäóêò âñåãî â ïàðå ëåò îò âàñ, åñëè âû ïîñòàâèòå ñåáå íóæíóþ öåëü è ïîéä¸òå ê íåé. Îòïðàâüòå ñâîèõ äåìîíîâ íà ÷åðäàê ñîçíàíèÿ. Äà, âû ñòàíîâèòåñü ñòàðøå, âñå ñòàíîâÿòñÿ, ýòîãî íå îñòàíîâèòü. Íî ïî÷åìó áû ïî õîäó ýòîãî äåëà åù¸ è íå äîñòè÷ü ÷åãî-íèáóäü çíà÷èìîãî? Õóæå-òî îò ýòîãî íå ñòàíåò.
Äîñòèæåíèÿ íå òîëüêî äëÿ ìîëîäûõ. Àðòóð Ðóáèíøòåéí, îäèí èç âåëè÷àéøèõ â ìèðå ïèàíèñòîâ, ðàäîâàë ìèð ñâîåé çàìå÷àòåëüíîé èãðîé 80 ëåò. Äæóëèÿ ×àéëä (øåô-ïîâàð, àâòîð êóëèíàðíûõ êíèã è âåäóùàÿ êóëèíàðíûõ òåëåïåðåäà÷) íèêîãäà íå ãîòîâèëà äî 40 ëåò. Ðîæå ñîçäàë ñâîé çíàìåíèòûé òåçàóðóñ òîëüêî â 73 ãîäà.
Òàêèì îáðàçîì, åñëè âû äóìàåòå, ÷òî ñîçäàíèå êîìïàíèé è íàïèñàíèå ïðîãðàììíîãî îáåñïå÷åíèÿ — òîëüêî äëÿ ìîëîäûõ, âàì ñëåäóåò îñîçíàòü, ÷òî äàííûé áàðüåð ëèøü â âàøåé ãîëîâå. Åñòü, ïðàâäà, îäèí ìîìåíò, êîòîðûé ñ ïðèõîäîì âîçðàñòà íåëüçÿ èãíîðèðîâàòü. ×òî ïðèâîäèò íàñ ê ñëåäóþùåìó ïóíêòó.
5. Âàøå çäîðîâüå — âàø íîâûé áèçíåñ-ïàðòí¸ð
Ïîìíèòå òå âðåìåíà, êîãäà âû ìîãëè ïèñàòü êîä âñþ íî÷ü íàïðîë¸ò è ýòî âàñ ñîâåðøåííî íå íàïðÿãàëî? Ïîãðóæåíèå â êîä áûëî ïîëíûì, à ýíåðãèè õâàòàëî äî ñàìîãî óòðà, äà åù¸ è íà âåñü ñëåäóþùèé äåíü. Ñòîë, çàâàëåííûé áàíêàìè êîëû è îñòàòêàìè ïèööû, ïîìíèòå?
Òàêîãî áîëüøå íå áóäåò.
Âàøà ñåãîäíÿøíÿÿ ðàáîòà íå áóäåò ïîñòðîåíà òàê, êàê ýòî áûëî òîãäà. Äà, ýòî áûëî âîñõèòèòåëüíî, íî òîãäà âàøå òåëî âàì ýòî ïîçâîëÿëî, à ñåé÷àñ — óæå íåò. Ñåãîäíÿ âàø îðãàíèçì — îí êàê ïàðòí¸ð â áèçíåñå: èíîãäà ïîìîãàåò, à èíîãäà è íå ïîçâîëÿåò ñäåëàòü ÷òî-òî îïàñíîå. Ýòî ôàêòîð, êîòîðûé âàì íåîáõîäèìî ó÷åñòü â âàøèõ ïëàíàõ.
Ïðèçíàêè ýòîãî î÷åâèäíû äëÿ áîëüøèíñòâà èç íàñ. Íà÷èíàþò áîëåòü ìûøöû, î êîòîðûõ âû äàæå íå çíàëè, ÷òî îíè ó âàñ åñòü. Äîêòîð íàñòàèâàåò, ÷òîáû âû ñáðîñèëè âåñ è äåëàëè áîëüøå óïðàæíåíèé. È êîãäà îêóëèñò âïåðâûå ïðîèçíîñèò ñëîâî «î÷êè» âðåìÿ âîêðóã çàìåäëÿåòñÿ è âû âèäèòå äâèæåíèÿ åãî ãóá â slow motion, ïîêà âû îáäóìûâàåòå óñëûøàííîå.
Åñëè âû íå èìååòå êàêèõ-íèáóäü ñåðü¸çíûõ áîëåçíåé — âñå ýòè ïðèçíàêè íîñÿò ñèìâîëè÷åñêèé õàðàêòåð. Êàæäûé õîðîøî èíôîðìèðîâàííûé ÷åëîâåê çíàåò, ÷òî ìíîãèå ôèçè÷åñêèå ïðîáëåìû ìîæíî ðåøèòü óïðàæíåíèÿìè, äèñöèïëèíîé è íåêîòîðûì èçìåíåíèåì ïðèâû÷íîãî îáðàçà æèçíè.
Ñòàðåíèå íåñ¸ò â ñåáå öåëûé íàáîð íîâûõ èñïûòàíèé, íî çàáîòà î ñâî¸ì çäîðîâüå ïðåæäå âñåãî äåëàåò ðåøåíèå è âñåõ îñòàëüíûõ ïðîáëåì ïðîùå. Õîðîøåå ñîñòîÿíèå çäîðîâüÿ äåëàåò ëþáóþ íîøó ëåã÷å, à ëþáîé ðèñê — ìåíåå ïóãàþùèì. Äà, äëÿ ýòîãî ïðèä¸òñÿ ïîðàáîòàòü íàä ñîáîé. Ïîòðåáóåòñÿ äèñöèïëèíà.
Èíîãäà ñåðü¸çíûì ïðåïÿòñòâèåì ìîæåò ñòàòü íåîáõîäèìîñòü ñíîâà áðàòü íà ñåáÿ ðèñêè. Âåäü íà íàñ óæå ëåæèò òàêàÿ îòâåòñòâåííîñòü — íàøè ñåìüè, äåòè, ôèíàíñîâûå îáÿçàòåëüñòâà. Ñ âîçðàñòîì âñ¸ ýòî âîñïðèíèìàåòñÿ âñ¸ ñåðü¸çíåå è ñåðü¸çíåå. Âåðíóòüñÿ ê òîìó, ñ ÷åãî òû íà÷èíàë ìíîãî ëåò íàçàä ìîæåò ïîêàçàòüñÿ áåçîòâåòñòâåííûì. Íî ïîäóìàéòå âîò î ÷¸ì: âîçâðàùåíèå ê èñòîêàì ïðîãðàììèðîâàíèÿ â çðåëîì âîçðàñòå îçíà÷àåò, ÷òî âàì íèêîãäà íå ïðèä¸òñÿ óõîäèòü íà ïîêîé. Íèêîãäà íå áóäåò «ÿ ñëèøêîì ñòàð äëÿ âñåãî ýòîãî» — âñåãäà áóäåò ÷åìó ó÷èòüñÿ, è âñåãäà áóäåò, ÷òî äåëàòü. Òî ñèÿþùåå âîñõèùåíèå, ñ êîòîðûì âû ïèñàëè êîãäà-òî ñâîè ïåðâûå ñòðîêè êîäà íà ñâîåì ïåðâîì ÿçûêå, ìîæåò ñíîâà áûòü ó âàñ â áóäóùåì.
Âûâîäû
ß íàäåþñü, âñÿ ýòà ïèùà äëÿ ìîçãîâ íàïîìíèëà âàì, ÷òî íèêîãäà íå áûâàåò ñëèøêîì ïîçäíî. Íå âàæíî, ÷òî òàì ó âàñ áûëî â ïðîøëîì — íà íèâå ïðîãðàììèðîâàíèå âñåãäà áóäåò ÷åìó ïîó÷èòüñÿ, è âñåãäà áóäåò íàä ÷åì ïîðàáîòàòü. Åñëè âû áèçíåñ-ïðîãðàììèñò, òî âàì ëè íå çíàòü, â êàêîì õàîñå íûí÷å ïðåáûâàåò ðàçðàáîòêà âñåãî áèçíåñ-ñîôòà. Åñëè âû âåá-äèçàéíåð, òî ÿ óâåðåí, ÷òî äàæå â Web 8.0 âñ¸ áóäåò âñ¸-åù¸ íåâåðíî. À åñëè âû iOS ðàçðàáîò÷èê, òàê ìîæåò áûòü íàïèøåòå ìíå íàêîíåö íîðìàëüíûé ïî÷òîâûé êëèåíò, à? ß áû ñ óäîâîëüñòâèåì íà òàêîé ïîñìîòðåë.
https://habrahabr.ru/company/infopulse/blog/275951/