Paul Graham om Java og "hacker" programmeringsspråk (2001)

Paul Graham om Java og "hacker" programmeringsspråk (2001)

Dette essayet vokste ut av samtaler jeg hadde med flere utviklere om temaet skjevhet mot Java. Dette er ikke en kritikk av Java, men snarere et tydelig eksempel på "hacker-radaren".

Over tid utvikler hackere en nese for god – eller dårlig – teknologi. Jeg tenkte det kunne være interessant å prøve å skissere årsakene til at jeg finner Java tvilsom.

Noen som leste den så på det som et bemerkelsesverdig forsøk på å skrive om noe som aldri har vært skrevet om før. Andre advarte om at jeg skrev om ting jeg ikke visste noe om. Så for sikkerhets skyld vil jeg presisere at jeg ikke skriver om Java (som jeg aldri har jobbet med), men om "hacker radar" (som jeg har tenkt mye på).

Uttrykket «ikke døm en bok etter omslaget» stammer fra en tid da bøker ble solgt i blanke pappomslag som kjøperen bundet etter hans smak. På den tiden kunne du ikke se en bok på omslaget. Siden den gang har imidlertid forlagsbransjen utviklet seg kraftig, og moderne forlag strekker seg langt for å sikre at omslaget sier mye.

Jeg har tilbrakt mye tid i bokhandler, og jeg tror jeg har lært meg å forstå alt forlagene vil fortelle meg, og sikkert litt til. Mesteparten av tiden jeg tilbrakte utenfor bokhandler, ble tilbrakt foran dataskjermer, og jeg antar at jeg til en viss grad lærte å bedømme teknologi etter omslagene. Det kan være blind flaks, men jeg har klart å unngå noen få teknologier som viste seg å være veldig dårlige.

En av disse teknologiene viste seg å være Java for meg. Jeg har ikke skrevet et eneste program i Java, og har bare skummet dokumentasjonen, men jeg har en følelse av at det ikke er bestemt til å bli et veldig vellykket språk. Jeg kan ta feil – å lage spådommer om teknologi er en farlig virksomhet. Og likevel, et slags vitnesbyrd om epoken, her er grunnen til at jeg ikke liker Java:

  1. Overdreven entusiasme. Disse standardene trenger ikke å pålegges. Ingen prøvde å promotere C, Unix eller HTML. Sanne standarder er satt lenge før folk flest hører om dem. På en hackers radar ser Perl ikke mindre ut enn Java på grunn av sine fordeler.
  2. Java sikter ikke høyt. I den opprinnelige beskrivelsen av Java uttaler Gosling eksplisitt at Java ble designet for å være enkelt for programmerere som er vant til C. Den ble designet for å være en annen C++:C med noen få ideer lånt fra mer avanserte språk. I likhet med skaperne av sitcoms, fast food eller reiseturer, designet skaperne av Java bevisst et produkt for folk som ikke var like smarte som dem selv. Historisk sett har språk utviklet for andre mennesker mislyktes: Cobol, PL/1, Pascal, Ada, C++. De vellykkede var imidlertid de som skaperne utviklet for seg selv: C, Perl, Smalltalk, Lisp.
  3. Skjulte motiver. Noen sa en gang at verden ville bli et bedre sted hvis folk bare skrev bøker når de hadde noe å si, i stedet for å skrive når de hadde lyst til å skrive en bok. På samme måte er grunnen til at vi stadig hører om Java ikke fordi de prøver å fortelle oss noe om programmeringsspråk. Vi hører om Java som en del av Suns plan om å ta på seg Microsoft.
  4. Ingen elsker henne. C-, Perl-, Python-, Smalltalk- eller Lisp-programmerere er forelsket i språkene sine. Jeg har aldri hørt noen erklære sin kjærlighet til Java.
  5. Folk blir tvunget til å bruke det. Mange jeg kjenner som bruker Java, gjør det av nødvendighet. De tror det vil gi dem finansiering, eller de tror det vil appellere til kundene, eller det er en ledelsesbeslutning. Dette er smarte mennesker; hvis teknologien var god, ville de brukt den frivillig.
  6. Dette er en rett til mange kokker. De beste programmeringsspråkene ble utviklet av små team. Java er drevet av komité. Hvis det viser seg å være et vellykket språk, vil det være første gang i historien at en komité har laget et slikt språk.
  7. Hun er byråkratisk. Fra det lille jeg vet om Java, virker det som det er mange protokoller for å gjøre hva som helst. Virkelig gode språk er ikke sånn. De lar deg gjøre hva du vil og står ikke i veien for deg.
  8. Kunstig hype. Nå prøver Sun å late som om Java er fellesskapsdrevet, at det er et åpen kildekode-prosjekt som Perl eller Python. Og likevel styres utviklingen av et stort selskap. Så språket risikerer å vise seg å være den samme kjedelige elendigheten som alt som kommer ut av innvollene i et stort selskap.
  9. Den er laget for store organisasjoner. Store selskaper har ulike mål med hackere. Bedrifter trenger språk som har rykte for å være egnet for store lag med middelmådige programmerere. Språk med egenskaper som hastighetsbegrensere på U-Haul lastebiler, advarer tullinger mot å forårsake for mye skade. Hackere liker ikke språk som snakker ned til dem. Hackere trenger makt. Historisk har språk skapt for store organisasjoner (PL/1, Ada) tapt, mens språk skapt av hackere (C, Perl) har vunnet. Årsak: Dagens unge hacker er morgendagens CTO.
  10. Feil folk liker henne. Programmererne jeg mest beundrer er generelt ikke gale etter Java. Hvem liker henne? Drakter, de som ikke ser forskjell på språk, men stadig hører om Java i pressen; programmerere i store selskaper, besatt av å finne noe bedre enn til og med C++; altetende studenter som vil elske alt som vil skaffe dem jobb (eller ende opp i en eksamen). Meningene til disse menneskene endres med vindens retning.
  11. Foreldrene hennes har det vanskelig. Suns forretningsmodell er under angrep på to fronter. Billige Intel-prosessorer som brukes i stasjonære datamaskiner har blitt raske nok for servere. Og FreeBSD ser ut til å bli et like godt server-OS som Solaris. Suns annonsering innebærer at du trenger Sun-servere for applikasjoner i produksjonsgrad. Hvis dette var sant, ville Yahoo vært først i køen til å kjøpe Sun. Men da jeg jobbet der, brukte de Intel- og FreeBSD-servere. Dette lover godt for Suns fremtid. Og hvis solen går ned, kan problemer dra Java ned til bunnen.
  12. Kjærlighet til Forsvarsdepartementet. Forsvarsdepartementet oppfordrer utviklere til å bruke Java. Og dette ser ut som det verste tegnet av alle. Forsvarsdepartementet gjør en utmerket (hvis dyr) jobb med å beskytte landet, de elsker planer, prosedyrer og protokoller. Kulturen deres er helt motsatt av hackerkulturen; når det kommer til programvare, har de en tendens til å satse feil. Det siste programmeringsspråket Forsvarsdepartementet ble forelsket i var Ada.

Vær oppmerksom på at dette ikke er en kritikk av Java, men en kritikk av omslaget. Jeg kan ikke Java godt nok til at jeg kan like eller mislike det. Jeg prøver bare å forklare hvorfor jeg ikke er interessert i å lære Java.

Det kan virke forhastet å avvise et språk uten engang å prøve å programmere i det. Men det er dette alle programmerere må forholde seg til. Det er for mange teknologier til å utforske dem alle. Du må lære å bedømme etter ytre tegn om det vil være verdt tiden din. Med like hast forkastet jeg blant annet Cobol, Ada, Visual Basic, IBM AS400, VRML, ISO 9000, SET Protocol, VMS, Novell Netware og CORBA. De appellerte bare ikke til meg.

Kanskje jeg tar feil når det gjelder Java. Kanskje et språk fremmet av ett stort selskap for å konkurrere med et annet, utviklet av komité for massene, med mye hype, og elsket av Forsvarsdepartementet, vil likevel vise seg å være et pent, vakkert og kraftfullt språk som jeg med glede vil programmere i . Kan være. Men det er veldig tvilsomt.

Takk for oversettelsen: Denis Mitropolsky

PS

Kilde: www.habr.com

Legg til en kommentar