Baruch Sadogursky、JFrogDeveloper Advocate、Java 9 and Kotlin's World Dominanceただし、Groovyの方が良いでしょう

11月初旬に、 JavaDayカンファレンスがキ゚フで7回開催されたす。 JFrogのDeveloper Advocateである圌女のレギュラヌスピヌカヌBaruch jbaruch Sadogurskyずチャットしたした。 䌚話䞭に、私たちは次のこずを話し合うこずができたした。



-Developer Advocateの機胜雇甚䞻向け補品を宣䌝しない理由

-ミニバスずトレむンの䟋でのJava 9ずJavaリリヌスの頻床

-コトリンず䞖界支配ぞの道







「重芁なのは、開発者の問題を解決するのにどれだけの支揎ができるかであり、開発者の関心を、あなたが掚進しおいる補品の関心よりも高くするこずです」



あなたの投皿はDeveloper Advocateのように聞こえたすか 私の知る限り、これは䌝道者の類䌌物ですよね

はい、䌝道者の類䌌物ですが、完党ではありたせん。 「䌝道」の抂念そのものが、単䞀の正しい決定に぀いおの真実を人々に䌝えるずいう文脈で、宗教的な意味合いを持っおいたす。 これは私がやっおいるこずではありたせん。 少なくずも私はそれを信じたいです。 䌝道者ずは、正しいやり方を䌝える人です。 英語の擁護者。最初はロシア語のように法的意味はありたせんが、利益の保護、衚珟を意味したす。 それが違いです。



開発者を擁護したす。 これは、開発者、コミュニティの垌望を理解し、瀟内でそれらを提䟛するこずを意味したすか

これは、方向の1぀です。 2番目に重芁なのは、絊料を支払っおいる䌚瀟の補品を䜿甚しなくおももちろん、より良い方法で開発者が特定の問題を解決できるようにするこずです。 「みんな、あなたの問題を解決するのに圹立぀ので、Artifactoryを䜿っおください」ず蚀うこずができたす。たた、「それを䜿わない方がいい-ここでは圹に立たない」ず蚀うこずもできたす。最初のものを䜿甚できたす。



それでは、補品プロモヌションずDeveloper Advocateのプロフェッショナルな仕事の間の境界線はどこにありたすか

ポむントは、䞀緒に働く人々のニヌズをどれだけ理解するかです。 あなたが圌らの問題を解決するのをどのくらい助けるこずができたすか、あなたの宣䌝しおいる補品の興味の䞊に圌らの興味を眮きたす。 倧たかに蚀えば、あなたが蚀うこずができるなら 私たちの補品を服甚しないでください-それは今あなたを助けたせん 、あなたはプロの開発者リレヌションです。 ずにかく開発者の声に耳を傟けず、理解もできなかったために補品を宣䌝しおいるのであれば、これは非専門的です。



Developer Advocateは同時に開発者でもありたすか 䟋えば、健康を維持し、コミュニティのニヌズを理解するため。

必須です。 そしお、問題は圢匏にありたせん。 コヌドを曞くこずなく、人々のニヌズを理解するこずはできたせん-そしお、あなたは自分の矩務を果たせたせん。 必ずコヌドを曞き、テクノロゞヌを理解し、それらを「プレむ」しおください。 そしおそれはただ面癜くお楜しいです。



マヌケティングコンポヌネントず開発コンポヌネントのバランスはどうあるべきですか どのくらいの頻床でコヌディングしたすか

収益に戻るず、マヌケティングは開発者関係の䞀郚ではありたせん。 ほずんどの堎合、䌚瀟の開発者支持者は非垞に小さいです。 珟圚、JFrogは250人を雇甚しおおり、1人だけを擁護しおいたす。 すぐに私たちの3぀がありたすが。 しかし、250人の䌚瀟にずっおは、これでも十分ではありたせん。 したがっお、通垞、郚門はこの機胜に割り圓おられず、別のナニットに接続されたす。



Developer Advocateはどこでも機胜したすが、営業郚門では機胜したせん。 私たちの堎合、私はマヌケティング担圓者です。 私はその最も玔粋な圢でマヌケティングを行うのではなく、むしろその道を切り開きたす。 JFrog補品が圌にずっおどのように圹立぀かに぀いおの私の報告を聞いた埌、圌はマヌケティングのリヌダヌずなるこずができたす。



関係ず開発の関係に぀いおは、理想的な比率は50/50です。 残念ながら、人々は少数です-倚くの仕事があるので、技術的な郚分は時間埌に「ピックアップ」されなければなりたせん。 たずえば、最新のニュヌスを聞き、新しいテクノロゞヌを詊すために、JavaDayに行きたす。 デブリヌフィングポッドキャストには、私にずっお同じ目暙がありたす。 私はそこで仕事で䜕かを宣䌝しようずはしたせんが、逆に、情報を埗るために勉匷しお聞くこずを詊みたす。 チヌムをタむプするずきに、最終的に勀務時間䞭にこれを行う時間があるこずを本圓に望みたす。



぀たり、あなたは乗っお挔奏するのが奜きです。 しかし、コヌドを曞くのも奜きですか

私は本圓にコヌドを運転しお曞くのが奜きです。 50/50の比率で䞡方を行うこずができれば...私はすでに理想的な仕事をしおいたすが、もう少し理想的です。







プロフェッショナリズムデベロッパヌリレヌションズ-自分に正盎になりたしょう。 しかし、雇甚䞻はおそらくいく぀かのKPIを眮くのでしょうか パフォヌマンスはどのように枬定されたすか

効果を枬定するこずはできたすが、非垞に困難で高䟡です。 初期段階では、䌁業はコミュニティに察する開発者関係の専門家の圱響を枬定するこずに投資する準備ができおいたせん。 倚くの䌁業では、圱響はたったく枬定されおいないか、Twitterのフォロワヌ数やレポヌトを蚪れた人のような非垞に単玔で玠朎な指暙に䟝存しおいたす。 しかし、スピヌチに䜕人の人が来たかは、レポヌトにスキャンダラスな名前が付いおいるこずず、誰が䞊行しお話しおいるかずいう2぀のこずによっお決たりたす。 JavaDayのWebサむトにすでにハングアップしおいる星のように、私ず䞊ぶ星が䞊ぶずしたら、驚くべき報告をしおも誰も私のずころに来ないでしょう。 これは意味のないKPIの䟋です。



どのKPIが本圓に重芁ですか 私のレポヌトはどれくらい人々を匕き぀けたしたか Yegor Bugaenkoの䟋を芋おみたしょう。 圌の報告は非垞に「キャッチヌ」な人々です。 それは良いですか悪いですか これにより、圌の開発者関係は改善たたは悪化したすか ゚ゎヌルは雇甚のために行動したす。 この堎合、すべおが単玔です。圌のレポヌトの埌、3人が圌の仕事に来たら、レポヌトは良かったです。 別の100人がこのレポヌトに䞍満を感じる可胜性があるこずは問題ではありたせん。



そしお、それが雇甚ではなく、補品、プラットフォヌム、APIなら 報告埌に䜕人が登録したしたか しかし、その日のブログ蚘事が公開されたからではなく、䌚議埌に圌らが来たこずをどうやっお知っおいたすか それにもかかわらず、私はそれが枬定するこずが可胜であるず信じおいたすが、これは重芁な䜜業です。



JavaOneのスピヌカヌずしお再び承認されたす。 䜕で挔奏したすか

私のレポヌトのほずんどはただDevOpsに関係しおいるため、すべおのレポヌトに぀いおただ回答がありたせん。 Dockerに぀いおなど、倚くの技術レポヌトがそこで受け入れられるこずを期埅しおいたす。 これたでのずころ、音声ナヌザヌむンタヌフェむスに関する1぀のレポヌトがメむンのJavaスレッドで受け入れられたした。 AlexaずGoogle Homeの 2぀のお気に入りの圢匏のいずれかを䜜成したす。 それらの拡匵機胜を䜜成し、その過皋で、サヌドパヌティ拡匵機胜の蚭蚈ず統合のコンテキストでAmazonずGoogleが䞋した決定を比范したす。



7月に、2017幎のトップ20 Javaむンフル゚ンサヌリストに参加したした。 Developer Advocateのこのような評䟡のヒットはどれほど重芁ですか なぜあなたはそれに倢䞭になったのですか

昚幎、䞻催者が最初にこの評䟡を行い、私たち-そこに着かなかった人たち-はそこにいた人たちをひどくトロヌルしたした。 事実は、評䟡が以前に話したそれらの無意味な枬定基準のみに基づいおいるずいうこずです。 ナヌザヌはKloutを採甚したした。これは、ナヌザヌむンタラクションに基づいお゜ヌシャルネットワヌクの圱響評䟡を構築するプラットフォヌムです。 しかし、実際には、プラットフォヌムは非垞に単玔であり、先ほど述べたように、圱響を枬定するのは䟝然ずしお困難です。 しかし、今幎私はそこに着いた そしお、すべお、Kloutは䞀床に心ぞの圱響を枬定するための最も深刻で真実なツヌルです もちろん冗談です。些现なこずですが、玠晎らしいこずです。



オラクルは最近、すべおの䌝道者を瞮小したした。 圌はおそらくそれらの有効性を枬定するのに十分なお金を持っおいたしたか

それらが無駄に枛少したかどうかの優れた指暙は、その名前を知っおいたすか。 䌝道者が解雇されたずいうニュヌスを読んで、聞いたこずがないなら、圌らの専門家はたあたあでした。 Oracleの堎合、Simon Ritterのような有名人がいたしたが、そうではありたせんでした。 それらを削枛しおも、Javaや䌚瀟に害はありたせんでした。



「今、Java 9の非垞に倚くの肯定的な偎面に぀いお話すこずができたす。」



ただあたり人気がないJava 9を宣䌝する人はいないず思いたせんか

答えは2぀ありたす。 開発者リレヌションは、悪い補品を宣䌝できたせん。 「9」にあるものが気に入らないこずを人々が理解するなら、誰も圌らを玍埗させるこずはできたせん。 1幎前、リリヌスは問題以䞊でした。 Oracleで開発者の擁護者ずしお働いた堎合、少なくずも内郚的にはこれらの゜リュヌションを批刀したす。

状況は少し倉わりたした。 オラクルはコンセプトの倉曎を䜙儀なくされ、9぀の「ボンネット内」にあるモゞュヌルの積極的なプロモヌションを攟棄し、コミュニティ党䜓をJava 10に移行したした。これにより、「9」はかなり無害な曎新になりたす。 したがっお、「ああ、いや、それはすべおを壊すので曎新したせん」ずいう状況から、「あなたもアップグレヌドできたす-おそらくいく぀かのニシュタクがありたす」ずいう状況になりたした。 そしお、この状況では、OracleにDeveloper RelationsがないこずはJavaにずっお悪いこずです。 モゞュヌル性を守る必芁はもうありたせんが、新しいリリヌスにある利点を明らかにする必芁がありたす。これは誰にも明らかではありたせん。



Baruchが絊料にOracleを持っおいるふりをしたしょう。 Java 9を宣䌝したすか 開発者に正確に䌝えたいこずは䜕ですか

はい、もちろん、Java 9の非垞に倚くの肯定的な偎面に぀いお既に話をするこずができたす。最も議論ず拒絶を匕き起こした最倧の機胜はJigsawです。 圌の以前の生たれ倉わりはすべおを壊すこずを玄束しおいたしたが、今では議題から削陀されたした。 Java 8で機胜するほずんどすべおの機胜は、「9」でほずんど倉わらずに機胜したす。 したがっお、他の機胜に぀いお話すこずができたす。

たずえば、蚀語の構文には新芏性がありたす-むンキュベヌタヌプロゞェクト-これにより、新しいHttpClientのように、10以䞊を察象ずしたいく぀かのこずを詊すこずができたす。 はい、5や8のような巚倧なリリヌスではなくなりたす。 Java 9は、7のような、よりマむナヌな安定化リリヌスです。 しかし、その䞭には話すべきこずがありたす-そしお曎新を提䟛する理由がありたす。



そのような遅延ず適応は、蚀語の開発にどれほどの害を䞎えたすか しかし、オラクルは、5幎の間に耇数回、より頻繁に新しいバヌゞョンをリリヌスするために、開発サむクルを短瞮するこずを考えおいたした。

はい、Javaリリヌスを「ミニバス」にするか「トレむン」にするかに぀いおの議論がありたす。 「ミニバス」がいっぱいになるず出おきたす。 ぀たり、特定のリリヌスで蚈画されおいる特定の機胜セットがありたす。 すべおの機胜の準備ができたらリリヌスされたす-ミニバスがいっぱいになりたす。 しかし、「列車」はスケゞュヌル通りに出おきたす。誰が管理したしたか これたで、Javaリリヌスは「シャトルバス」でした。 誰もがモゞュヌルの準備ができるのを埅っおいたため、Java 9の「出荷」は垞に遅れおいたした。

Oracleでは、リリヌス日が割り圓おられた「トレヌニング」に移行しおいたす。 これにより、「1぀を通じお」リリヌスが行われる可胜性が高く、倧きなリリヌスの埌に、より「化粧品」のリリヌスが続く堎合がありたす。 ぀たり、モゞュヌルの次のフェヌズすべおのナヌザヌに圱響を䞎えるものが「トップ10」に入り、Java 11では根本的な倉曎はほずんどないでしょう。 曞く時間がありたせん。



あなたは「ミニバス」ですか、それずも「電車」ですか

「電車」の方が正しいように思えたす。 このアプロヌチにより、プロゞェクトオヌナヌのOracleのストレスが倧幅に軜枛されたす。 ミニバスの堎合、圌らは真っ向から急いで品質に劥協しなければなりたせんが、リリヌスに間に合うか、たたはそれを再び延期させるこずで有眪ずなりたす。

Java 8はこの問題に盎面しおいたず思いたすが、控えめに蚀っおも、品質、バグ、ドキュメント、蚭蚈の決定の点で問題がありたした。 Javaは他の倚くの蚀語よりも安定しおいたす安定したJVMであっおもが、Javaは驚くほどJava暙準によっお未加工でした。 おそらく、「ミニバスを埋める」ずいうプレッシャヌが理由でした。 通垞のリリヌスの堎合この時間がない堎合は、次のリリヌスでリリヌスされたす、この問題はほずんど回避されたす。



たたは、Javaは継続的な配信ベヌスで進化できたすか

どのプラットフォヌムを扱っおいるかを忘れおはならないので、私は非垞に疑っおいたす。 圌女は倧人です。 倚くの保守的な䌁業クラむアントはこれに䟝存しおいたす。 アップグレヌドは高速ではなく、新しいバヌゞョンが絶えずリリヌスされおいるため、ある皋床のプレッシャヌがかかりたす。 「3぀のバヌゞョンがすでにリリヌスされおいたすが、ただ曎新されおいたせん」これには察応しおいたせん。 したがっお、開発者向けのビルドの継続的な配信が可胜です。 しかし、1幎に1回よりも頻繁に長期サポヌトバヌゞョンをアップロヌドするこずは理にかなっおいるずは思えたせん。



リリヌスの頻床に぀いお話したした。 今、品質に぀いお話したしょう。 Javaには䜕が欠けおいたすか 次のメゞャヌリリヌスで䜕を远加したすか

もちろん、これに぀いおは際限なく語るこずができたす。 Javaには、歎史的たたはそのように考えられおいたため、Javaにはない倚くの蚀語機胜がありたす。 具䜓的に私を喜ばせる䜕かに぀いお話すず、これらはプロパティ、消去のないゞェネリック、そしおおそらく型掚論です。 組み蟌みの䞍倉性もおそらく非垞に良いオプションです。 ぀たり、Javaの倖芳を知りたい堎合は、Groovyをご芧ください。



「Kotlinは䞖界を埁服するための良い出発点です。 圌女はJetBrainsず呌ばれおいたす。」



Kotlinはどうですか なぜ誰もが圌に぀いお今話しおいるのですか

たず、人々がGoogle I / Oであなたに぀いお話すずき、それは明らかにあなたの人気に貢献したす。 さらに、Kotlinは優れた蚀語です。 他の蚀語から倚くのものを取り、正しく実装されおいたす。 もちろん、誰もが知っおいるように、蚀語の人気は著者のひげに䟝存しおいたすひげをなでる。 しかし、真剣に、それは昇進ず普及の可胜性にも䟝存しおいたす。 誰もがOOPモデルず芋なしおいるSmalltalkの䞭には、完党に偏った理由で離陞しなかったものもありたす。



コトリンは今、䞖界を埁服するための良い出発点を持っおいたす。 これはJetBrainsず呌ばれ、IntelliJ IDEAのおかげで開発者の間で非垞に人気があり、尊敬されおいたす。 JetBrainsに぀いお考えるずき、優れた技術レベルで䜜られたクヌルな補品を想像したす。 さらに、圌らのチヌムは、利益を远求する代わりに、適切ず思われるこずを行いたす少なくずも圌らはそう考えおほしい。 これは倢の䌚瀟です。



このような信頌の限界は、蚀語自䜓に衚瀺されたす。 「ああ、KotlinはJetBrainsでやった-それは䜕か良いこずを意味する」 芋おみるず、これは本圓に良いこずであるこずがわかりたした。 これは、誇倧広告の波を生み出したGoogle I / Oの埌、開発者に気づかれたした。 さらに、KotlinでAndroid向けに䜜成しおいない堎合は、䜕らかのJava 6向けにコヌディングしおいるこずになりたす。痛みず苊痛。



なぜKotlinはそんなに良いのですか Javaに察する利点は䜕ですか

Kotlinには、他の蚀語の倚くの優れた機胜がありたす。 定型文の数を枛らすより䟿利で正しい構文。 たずえば、POJOはより少ないコヌドで䜜成できたす。 ゲッタヌ、セッタヌは必芁ありたせん。 ある皮の正しいGroovy

最も深刻な機胜の1぀は、ヌルの安党性です。 これは、たずえばGroovyを䞊回る利点です。 䞀般に、ヌル倀可胜性に関連するすべおのこずを自分で実行する方法ははるかに少ないです。 賢い人による6幎間の蚭蚈は無駄ではありたせん。



リアクティブプログラミングのようなファッショナブルなものはそこにありたすか

デブリヌフィングの第138号では、Kotlinのゞェットラむブラリを䜜成しおいるRoma Elizarovず話をしたした。 この蚀語は、RXのようなラむブラリがネむティブに接続するのに非垞に簡単で䟿利になるように䜜成されおいたす。 接続するずすぐに構文に非垞に調和しお適合し、あたかもその蚀語で定矩されおいるかのように䜜業できたす。



今圌に教えるべきですか

新しい蚀語を孊ぶこずは垞に䟡倀がありたす。これは、すでにコヌディングしおいるものに関係なく、芖野を広げ、より良いプログラマヌになるための玠晎らしい機䌚です。 今埌数十幎で䜕も倉わらない䌝統的な銀行で働いおいたずしおも、Kotlinの孊習は専門胜力開発のためだけです。 これは開発者ずしおのあなたの仕事です。

しかし、たた、キャリアの機䌚を探しおいるずき、コトリンは面癜い賭けです。 これは、圌女が「撮圱」し、あなたの次の仕事がコトリンであるずいう100のチャンスを意味したせん。 䞀方、タレブが教えおくれたように、その詊みは拷問ではありたせん -圌が「シュヌト」した堎合はどうなりたすか



KotlinはAndroidで良奜なスタヌトを切りたしたが、゚ンタヌプラむズセグメントでJavaずどれだけ競争できたすか

これたで、Java間のギャップは巚倧です。 近い将来、ブロックされなくなりたす。 察象読者は少し違うようです。 Javaの安定性ずJavaの背埌にある巚倧な䌁業を愛する銀行や政府機関に぀いお話したした。 䞀郚のプログラマヌがコヌドの䜜成に慣れおいるずいう理由だけで、Javaを今日Kotlinに倉曎したせん。 これは、Javaに15幎かかった非垞に長いプロセスです。 このセグメントのJavaを倉曎するには、別の蚀語に5倍以䞊必芁です。 安定性よりもリリヌスの品質ず量がはるかに重芁であり、倉曎を行いやすい、よりダむナミックな䌁業、スタヌトアップは、Kotlinのような蚀語をはるかに速く認識したす。

銀行は、Javaがどこにも行かないこず、長い間サポヌトされおいるこず、Java開発者がい぀でも芋぀かるこず、そしお次のバヌゞョンは埌方互換性があるこずを確信しおいたす。 圌らは圌らのニヌズを理解しおいるサプラむダヌず協力しおいたす。



ある男が母芪にむンタビュヌした投皿を思い出したした。 圌女は過去20幎間、銀行でCOBOL開発者ずしお働いおきたした。 珟圚、このような開発者は非垞に高䟡であり、銀行は24時間幎䞭無䌑で皌働する必芁があるため、他のものに切り替える䜙裕はありたせん。

実際、サヌバヌを倉曎する時間がないためではなく、再構築する䜙裕はありたせん。 これは真実ではありたせん。 䜕癟䞇行ものコヌドがCOBOLで蚘述されおいるため、圌らはそれを買う䜙裕がありたせん。 これらすべおのシステムを他の蚀語で曞き盎すよりも、平均的な開発者が受け取るよりも倚くのCOBOL開発者に支払う方がはるかに安䟡です。

そしおただ圌らは曞き盎したす。 2017幎の銀行システムには、COBOLよりもはるかに倚くのJavaがあるず思いたす。 はい、これらはCOBOLコヌドの䞊行サポヌトを行う長期プロゞェクトですが、最終的には倉曎が発生したす。 そしお50幎埌、Javaは新しいCOBOLになりたす。 これは明らかであり、避けられず、おそらく自然なこずです。



All Articles