Jakie jest zaangażowanie Oracle w Javę? [Zamknięte]

15

Dużo inwestujemy w Javę, ale po ostatnich doświadczeniach i przeczytaniu odpowiedzi Joonas na to pytanie:

Gdybyś użył tych flag w Javie 6, mógłbyś doświadczyć nie tylko awarii, ale także nieprawidłowego wykonania pętli, czyli błędów w obliczeniach, z powodu niewielkiej aktualizacji z 6u19 do 6u20 (w przybliżeniu).

... i powiązany post na blogu o znaczących problemach z Javą 7 spowodował, że martwiliśmy się o jakość Java.

Czy Oracle rozwiązuje te problemy? Jakie zapewnienia zapewnił Oracle, aby zapewnić dobrą obsługę Java w przyszłości?

Dakotah North
źródło

Odpowiedzi:

36

Zasiadam w Komitecie Wykonawczym Java SE / EE jako przedstawiciel rezerwowy dla londyńskiej grupy użytkowników Java (zwanej także LJC). Regularnie rozmawiam zarówno z członkami społeczności open source (w tym Apache), jak i pracownikami Oracle o OpenJDK, relacjach ze społecznością i podobnych tematach. Lubię myśleć, że mam neutralny pogląd na ten temat, YMMV.

W skrócie

Oracle nie może sobie pozwolić na awarię Javy - cała ich działalność związana z oprogramowaniem działa na nim, jest w nim wbudowana i oddycha. Jeśli zawiedzie, Oracle ma poważne kłopoty, a Larry nie wydaje się być osobą, która strzeliłaby sobie w stopę.

Tak więc myślę, że to jest przelotny i choć część (większość?) Winna powinna spoczywać na Oracle, powinna też leżeć trochę na większych projektach, które nie wypróbowały RC.

Czy Oracle może lepiej współpracować ze społecznością, aby zapewnić wykonanie tego poziomu testów? Tak , ale czasami jest to ulica dwukierunkowa. Nie zapominaj, że Java jest ogromna . Jest to najpopularniejszy język w historii (opinia nienaukowa) i kto wie, ile bilionów dolarów i miliony różnego rodzaju oprogramowania jest w nim wbudowanych lub uruchomionych.

Pokażcie mi zespół programistów, który może twierdzić, że w tej skali są wolne od błędów, a zjem swoją czapkę. Na przykład JVM ma ponad 1000 osoboletniego wysiłku i wciąż się liczy - sprawia, że ​​myślisz, że nie!

Długa odpowiedź

OK, więc było dużo FUD w tym temacie, co wydaje mi się trochę irytujące, ponieważ media głównego nurtu wydają się skakać na czymkolwiek w dzisiejszych czasach, aby zbić Javę i oczywiście Oracle. [rant] Większość mediów technicznych wydaje się odmawiać przyjścia na konferencje, poczytania protokołu ze spotkania JCP lub porozmawiania z niezależnymi liderami JUG lub przeprowadzenia jakichkolwiek rozsądnych badań, aby uzyskać zrównoważony pogląd [/ rant].

  • To błąd, tak, który jest bardzo poważny w przypadku niektórych projektów
  • Istnieje obejście, którego można użyć natychmiast
  • Jest już na to poprawka
  • Nie zabija kociąt
  • Tak, powinieneś najpierw to przetestować - jest to wersja .0!

Nie zrozum mnie źle - Oracle popełniło wiele błędów i nadal będzie to robić. Nikt nie jest doskonały, a ich zainteresowania nie zawsze będą zgodne z każdym innym dostawcą, użytkownikiem, programistą.

Wydaje mi się, że społeczność Java może wyciągnąć z tego lekcję i uzyskać więcej projektów testujących kompilacje OpenJDK i JDK podczas ich opracowywania. Mam nadzieję, że Oracle podejmie wysiłki, aby to poprawić.

Niektóre ogólne gadanie o Oracle, Javie i społeczności

Oracle bardzo się starają i wiele się nauczyły od pierwszych dni, kiedy to przejęły.

Dobre rzeczy:

  • Spójrz na liczbę zatwierdzeń w OpenJDK przez pracowników Oracle
  • Spójrz na liczbę pracowników zatrudnionych w Javie
  • Spójrz na jasne stanowisko firmy, które Oracle raz po raz deklaruje, a mianowicie: „Zachowaj Javę jako platformę numer 1, kropka”.
  • Spójrz na nowy invokedynamickod bajtowy w JVM dostarczony z Javą 7, zmianę, która pozwala wielu językom stać się pierwszorzędnymi obywatelami JVM.
  • Red Hat, IBM, SAP i Apple dołączają do OpenJDK
  • Wkładają wiele wysiłku w JUG-y, java.net jako platforma hostingowa, uruchomiły nowy magazyn Java i sponsorują prawie każdą konferencję, na którą się udam. Niektóre z tych wysiłków były nieco mylące lub źle komunikowane :-), ale większość z nich ma sens i naprawdę przynosi korzyści społeczności.

Potrzeba ulepszenia rzeczy:

Tak, teraz zanim zabrzmię jak ukryta marionetka medialna Oracle.

  • Prawdopodobnie powinni byli wstrzymać się z tym wydaniem. Pamiętaj, że późniejsze bety i RC były już od jakiegoś czasu, być może niektóre z tych projektów mogły zaangażować się w testowanie kompilacji wcześniej - IIRC Oracle poprosiło całą społeczność o wypróbowanie tego.

  • Oracle nadal ma wiele do czynienia ze społecznością i restrukturyzacją JCP oraz sposobem działania JSR ( JSR 348 to początek, proszę się zaangażować!). To oczywiście ostatecznie obejmie świeżą dyskusję na temat ograniczeń FOU dotyczących licencjonowania TCK i innych przykrych rzeczy prawnych, które spowodowały złą krew w Apache i Google.

  • Słabo radzili sobie z wieloma projektami typu open source (przychodzą na myśl Jenkins / Hudson, Open Office i MySQL), szczególnie po stronie komunikacji. Podczas ostatniego OSCON, starszy menedżer Oracle wyjaśnił, że wiele z tych projektów istnieje w ich własnym silosie biznesowym Oracle, że nie ma ogólnej strategii dotyczącej otwartego oprogramowania na słowo, stąd obserwujemy zachowanie lewej / prawej ręki. Resztą jest to, że Oracle nie rozumie społeczności open source, ale czuję, że stają się o wiele lepsi i istnieje wola.

Martijn Verburg
źródło
+1 bardzo pomocne. Po prostu wskazując, myślę, że C obecnie klasyfikuje się jako najpopularniejszy język w historii. Nie Java.
jsternberg,
@ jsternberg Nie jestem w 100% pewien mojego oświadczenia - ale myślę, że teraz jest więcej linii Java? Heck, który naprawdę liczy;). W każdym razie zredagowałem swoją odpowiedź.
Martijn Verburg
1
@Martijn Verburg, @ jsternberg: jest więcej linii kodu maszynowego x86, kod maszynowy ergo jest najpopularniejszym językiem na świecie.
Lie Ryan,
Może gdyby Larry objął prowadzenie w tym ... youtube.com/watch?v=BeP6CpUnfc0&feature=related
Joe Internet
@Lie Ryan Touche :-)
Martijn Verburg,