Пол Грэм Java және «хакер» бағдарламалау тілдерінде (2001)

Пол Грэм Java және «хакер» бағдарламалау тілдерінде (2001)

Бұл эссе бірнеше әзірлеушілермен Java-ға біржақты көзқарас туралы әңгімелердің нәтижесі болып табылады. Бұл Java-ны сынау емес, керісінше «хакер радарының» айқын мысалы.

Уақыт өте келе хакерлер технологияның ненің жақсы немесе жаман екенін жақсы сезінеді. Мен Java-ны күмәнді деп санайтын себептерді анықтауға тырысу қызықты болуы мүмкін деп ойладым.

Кейбір оқырмандар мұны бұрын ешкім жазбаған нәрсе туралы жазуға тұрарлық әрекет деп санады. Басқалары мен ештеңе білмейтін нәрселер туралы жазып жатырмын деп ескертті. Сондықтан, мен Java (мен ешқашан пайдаланбаған) туралы емес, «хакер радары» туралы (ол туралы көп ойладым) жазғанымды түсіндіргім келеді.

«Кітапты мұқабасына қарап бағалама» деген сөз кітаптар бос картон мұқабаларында сатылған кезде пайда болды, оны сатып алушы өз қалауы бойынша таңып алады. Ол кездері мұқабасына қарап кітап туралы ештеңе айта алмайтын едің. Содан бері баспа ісі айтарлықтай дамыды және қазіргі баспагерлер мұқабаның көп нәрсені айтуы үшін бар күш-жігерін жұмсайды.

Мен кітап дүкендерінде жеткілікті уақыт өткіздім және мен баспагерлер маған айтқысы келетін барлық нәрсені түсінуді үйрендім деп ойлаймын, мүмкін одан да көп. Кітап дүкендерінен тыс уақытта өткізген уақытымның көп бөлігі компьютер экрандарының алдында өтті және мен белгілі бір дәрежеде технологияны оның мұқабасына қарап бағалауды үйрендім деп ойлаймын. Бұл таза сәттілік болуы мүмкін, бірақ мен шынымен нашар болып шыққан бірнеше технологиялардан аулақ болдым.

Мен үшін осындай технологияның бірі Java болды. Мен Java тілінде бірде-бір бағдарлама жазған жоқпын және тек құжаттаманы қарап шықтым, бірақ менің ойымша, бұл әсіресе сәтті тіл болу үшін тағайындалмаған. Мен қателесуім мүмкін - технологияларды болжау қауіпті бизнес. Дегенмен, бұл уақыттың бір түрі - мен Java-ны неге ұнатпаймын:

  1. Шамадан тыс ынта. Нағыз стандарттарды енгізудің қажеті жоқ. Ешкім C, Unix немесе HTML тілін алға жылжытуға тырыспады. Шынайы стандарттар көптеген адамдар олар туралы естігенге дейін белгілі болды. Хакерлердің радарында Perl Java-ға ұқсамайды, тек өзіндік ерекшеліктерімен.
  2. Java жоғары мақсат қоймайды. Түпнұсқа Java сипаттамасында Гослинг Java тілі C тіліне үйренген бағдарламашыларға оңай болу үшін жасалғанын ашық айтады. Ол басқа C++: C болуы үшін жасалған, жетілдірілген тілдерден алынған бірнеше идеялары бар. Ситкомдарды, фаст-фудты немесе туристік пакеттерді жасаушылар сияқты, Java-ны жасаушылар саналы түрде өздерінен интеллектуалды адамдар үшін өнімді әзірледі. Тарихи түрде басқалар қолдану үшін әзірленген тілдер сәтсіз болды: Cobol, PL/1, Pascal, Ada, C++. Табыстылар, алайда, олардың жасаушылары өздері үшін әзірлегендері болды: C, Perl, Smalltalk, Lisp.
  3. Асқынған ниеттер. Кезінде бір кісі айтыпты ғой: «Адамдар жазғысы келгенде жазбай, айтары бар кезде ғана кітап жазса, дүние жақсы болар еді. Сол сияқты, біз Java туралы үнемі еститін себебіміз олар бізге бағдарламалау тілдері туралы бірдеңе айтқысы келгендіктен емес. Біз Java туралы Sun компаниясының Microsoft-қа қарсы әрекет ету жоспарының бөлігі ретінде естиміз.
  4. Бұл ешкімге ұнамайды. C, Perl, Python, Smalltalk немесе Lisp жазатын бағдарламашылар өз тілдерін жақсы көреді. Мен ешкімнің Java-ға деген сүйіспеншілігін мойындағанын естіген емеспін.
  5. Адамдар оны қолдануға мәжбүр. Java-ны қолданатын мен білетін адамдардың көбісі мұны қажеттіліктен жасайды. Олар бұл қаржыландыруды алуға көмектеседі деп ойлайды немесе бұл клиенттерге ұнайды деп ойлайды немесе бұл басқару шешімі. Бұл ақылды адамдар; егер технология жақсы болса, олар оны өз еркімен қолданар еді.
  6. Бұл көптеген аспаздар жасайтын тағам. Ең жақсы бағдарламалау тілдерін шағын командалар әзірледі. Java-ны комитет басқарады. Егер ол сәтті болса, тарихта бірінші рет комитет мұндай тілді жасады.
  7. Бұл бюрократиялық. Java туралы аз білетінімнен кез келген нәрсені істеуге арналған көптеген протоколдар бар сияқты. Шынымен жақсы тілдер ондай емес. Олар сізге қалаған нәрсені жасауға мүмкіндік береді және сіздің жолыңызға кедергі жасамайды.
  8. Жасанды шу. Қазіргі уақытта Sun Java-ны қауымдастық басқаратындай етіп көрсетуге тырысады, бұл Perl немесе Python сияқты ашық бастапқы жоба. Дегенмен, дамуды үлкен компания басқарады. Демек, тіл үлкен компаниядан шығатын сол бір түтіккен апатқа айналуы мүмкін.
  9. Ол ірі ұйымдарға арналған. Ірі компаниялардың хакерлерге қарағанда мақсаттары әртүрлі. Компаниялар орташа бағдарламашылардың үлкен топтары үшін қолайлы болу үшін беделі бар тілдерді қалайды. U-Haul жүк көліктеріндегі жылдамдықты шектегіштер сияқты сипаттамалары бар тілдер, олар ақымақтарды тым көп зиян келтіруге жол бермейді. Хакерлер олармен сөйлесетін тілдерді ұнатпайды. Хакерлер билікті қалайды. Тарихи түрде ірі ұйымдарға арналған тілдер (PL/1, Ada) жеңілді, ал хакерлер жасаған тілдер (C, Perl) жеңді. Себебі: бүгінгі кәмелетке толмаған хакер ертеңгі КТО.
  10. Ол дұрыс емес адамдарға жүгінеді. Мені ең жақсы көретін бағдарламашылар әдетте Java-ға қызықпайды. Кімге ұнайды? Тілдер арасындағы айырмашылықты көрмейтіндер, бірақ Java туралы баспасөзде үнемі еститіндер; ірі компаниялардағы бағдарламашылар, тіпті C++-тен де жақсырақ нәрсені табуға құмар; өздеріне жұмысқа орналасатын кез келген нәрсені жақсы көретін (немесе емтиханға қатысатын) барлығын жейтін мектеп бітірушілер. Бұл адамдардың пікірлері желмен өзгереді.
  11. Оның ата-анасы қиын кезеңдерді бастан кешіруде. Санның бизнес моделіне екі бағытта шабуыл жасалуда. Үстел компьютерлерінде қолданылатын арзан Intel процессорлары... серверлерFreeBSD серверлер үшін Solaris сияқты жақсы ОС-қа айналып бара жатқан сияқты. Sun жарнамасы кәсіпорын деңгейіндегі қосымшалар үшін Sun серверлері қажет болатынын білдіреді. Егер бұл рас болса, Yahoo Sun-ды сатып алу үшін бірінші кезекте тұрар еді. Бірақ мен сол жерде жұмыс істеген кезде олар Intel серверлері мен FreeBSD-ны пайдаланды. Бұл Sun үшін қайғылы белгі. Ал егер Sun істен шықса, мәселе Java-мен бірге істен шығуы мүмкін.
  12. Қорғаныс министрлігінің махаббаты. Қорғаныс министрлігі әзірлеушілерді Java пайдалануды ынталандырады. Және бұл ең жаман белгі сияқты. Қорғаныс министрлігі елді қорғаудың тамаша (егер қымбат болса) жұмысын атқарады; олар жоспарларды, процедураларды және хаттамаларды жақсы көреді. Олардың мәдениеті хакерлердікіне мүлдем қарама-қайшы; бағдарламалық жасақтамаға келетін болсақ, олар дұрыс емес ставкаларды жасауға бейім. Қорғаныс министрлігі ғашық болған соңғы бағдарламалау тілі Ада болды.

Назар аударыңыз, бұл Java сыны емес, оның қаптамасының сыны. Мен Java тілін ұнату немесе ұнатпау үшін жеткілікті білмеймін. Мен Java тілін үйренуге неге ынталы емес екенімді түсіндіруге тырысамын.

Тілді бағдарламалауға тырыспай-ақ тастау асығыс болып көрінуі мүмкін. Бірақ мұны барлық бағдарламашылар істеу керек. Олардың барлығын үйрену үшін тым көп технологиялар бар. Сіз бірдеңенің сіздің уақытыңызға тұрарлық екенін сыртқы түріне қарап бағалауды үйренуіңіз керек. Мен Cobol, Ada, Visual Basic, IBM AS400, VRML, ISO 9000, SET протоколы, VMS, Novell Netware және CORBA, соның ішінде басқалардан бас тартуға асықтым. Олар маған жай ғана ұнамады.

Мүмкін мен Java туралы қателескен шығармын. Бәлкім, бір ірі компания екінші компаниямен бәсекелесу үшін ілгерілететін, көпшілікке арналған комитет әзірлеген, көп айқай-шумен және Қорғаныс министрлігі жақсы көретін тіл, соған қарамастан, мен қуана бағдарламалайтын ұқыпты, әдемі және күшті тіл болып шығуы мүмкін. Бірақ бұл өте күмәнді.

Аударма үшін рахмет: Денис Митропольский

PS

Ақпарат көзі: www.habr.com

DDoS қорғауы бар сайттар үшін сенімді хостинг, VPS VDS серверлерін сатып алыңыз 🔥 DDoS қорғанысы, VPS VDS серверлері бар сенімді веб-сайт хостингін сатып алыңыз | ProHoster