RailsClub'Moscow 2014Ravil Bayramgalinのむンタビュヌ

こんにちは



今週の終わりに、 RailsClubカンファレンスが開催されたす。 ゲストは荷物を詰めたすここでは、アヌロンパタヌ゜ンがロシアに行くずツむヌトしたした。 そしお、あなたに䌚えるのを楜しみにしおいたす



Oh My Statsの䞻任開発者であるRavil Bayramgalinの開発者であるEvil Martiansの開発者に、生掻ずプログラミングに぀いおいく぀か質問をしたした 。 Ravilは、Ruby on Rails、rack、cassandra-rb、sidekiqなどを含む40以䞊のオヌプン゜ヌスプロゞェクトに貢献しおいたす。 面癜かった



画像



今䜕に取り組んでいたすか



特定の長所ず短所を備えたプロトタむプキュヌむングシステムで䜜業しおいる興味深いこずから、残りは秘密ですD



あなたの仕事の最高の郚分ず最悪の郚分は䜕ですか



最良の郚分は、分析ず反映です。 アヌキテクチャ、API、コヌド線成、最適化、バグなど䜕でも構いたせん。 最悪の郚分は、単玔なテンプレヌトタスクに出くわすこずですが、膚倧な時間コストがかかりたす。



今のあなたの人生/キャリアの䞻な達成は䜕だず思いたすか



近い将来にアヌロン・パタヌ゜ンを抱きしめる機䌚。 数癟のherokuサヌバヌでクロヌラヌを起動した埌、ランブルレヌル䞭にGitHubが䞍泚意にダッシュしたこずも思い出に残るむベントでした;



あなたの意芋では、RubyずRuby on Railsは今埌どのような方向に発展するでしょうか



ルビヌから始めたしょう。



新しい倧きな倉化が続く次の方向は競争です。 誰もがすでに知っおいるように、Matzは数ヶ月前に、競争の蚀語に新しい抜象抂念を远加し、GILを削陀したいず曞いおいたす。



コミュニティでは、最初のトピックに関するアむデアが長幎にわたっお非垞に銖尟よく調査されおいたすその結果、競争のためにあらゆる皮類のプリミティブず抜象化を提䟛する非垞に匷力な開発チヌムを持぀䞊行ルビヌgemがありたすたずえば、゜フトりェアトランザクションメモリやデヌタフロヌなど、 。



しかし、GILを削陀するずいう決定は、䜕らかの皮類のラむブラリをrubyカヌネルにコピヌするだけではなく、倉曎の深刻さを瀺しおいたす。 これは、Matzが長い間拒吊しおいた小さなロックに関するものではありたせん。 Sa田浩䞀ko1、Matzaチヌムの3人のメンバヌの1人の最新のプレれンテヌションから刀断するず、個別のメモリず共有メモリの限られた領域を持぀モデルを埅っおいたす。 おそらく、俳優の助けを借りお、個別の蚘憶が提瀺されたす。 共有メモリぞのアクセスはおそらく䜕らかの保護メカニズムを䜿甚するため、アクタヌは远加の通信モヌドで通垞のスレッドを取埗したせん。 しかし、そのような劥協が実際に機胜するかどうかはわかりたせん。



Tony Arcieriセルロむドで最もよく知られおいるからの提案関連オブゞェクトを特定のスレッドにバむンドする機胜他のスレッドからアクセスするずきに自動的に゚ラヌを䞊げるにより、珟圚のアクタヌおよびチャネルの実装は、非垞に効率的か぀簡単な方法でスレッド間でデヌタを分離する問題を解決できたす。



最終的にどちらの方法が遞択されるかは問題ではありたせん。䞻なこずは、競争分野での察話が始たっおいるこずであり、以前の議論たずえば、借り換えでは、Matzが建蚭的な察話の準備ができおいるこずを瀺しおいたす正匏な蚘憶モデルが掚進されるこずを願っおいたす。



根本的な解決策を恐れたり、期埅したりしないでください。 Matzが䞋した決定は十分に進化的であるため、コミュニティ党䜓が前進し、移行が困難なためバヌゞョンごずに断片化するこずはありたせん。



したがっお、蚀語の倧幅な倉曎の分野では、おそらくこれは近い将来すべおです。 瀟䌚がRuby 2.xをサポヌトするだけでなく、キヌワヌド、前眮詞、改良などの新しい機胜の䜿甚に関しお合意が圢成されるように、時間を䞎える必芁がありたす。 したがっお、5本のレヌルで5本の2.2ルヌブルしかサポヌトされないずいうニュヌスは良いこずです。



幞いなこずに、各リリヌスにはコミュニティからのフィヌドバックの結果ずしお生成されたそのような倉曎が十分にありたす。 䞻なこずは、stdlibの段階的な近代化が進行䞭であるこずです。



しかし、MRI自䜓の開発ずランタむムを分析するための远加ツヌルの分野では、すべおのバヌゞョンが改善され続けおいたす。

stackprof gem著者-github゚ンゞニアおよびrubyコントリビュヌタヌのAman Guptaの助けを借りお、rubyでのメ゜ッドの実行ずオブゞェクトの割り圓おのトレヌスず監芖がこれたで以䞊に簡単になりたした。プロファむルダンプのむンタラクティブな分析を簡単にするために欠けおいるのはWebむンタヌフェむスのみです。



最も可胜性が高いのは、MaichiがAOTを陀倖しおいないにもかかわらず、KoichiのMRI甹JITコンパむラヌが将来を期埅しおいるこずです。



この朗報にもかかわらず、私はルビヌの将来の開発ずjrubyを結び付けたす。 しかし、jrubyだけでなく、トリュフの䞊にグラヌルずサブストレヌトVMず組み合わせお。 私たちのコミュニティは、Oracle Labs VM Research郚門の優秀な人材が、ルビヌ甚のVMの開発ず最適化の分野で理論的基盀を砎るこずに決めたこずを非垞に幞運でした。 Chris Seatonブログをフォロヌするこずをお勧めしたす。このブログでは、Rubを1桁高速化する方法に぀いお説明しおいたす。 通垞のjrubyずのもう1぀の違いは、速床の䜎䞋を䌎わないC拡匵のサポヌトです。 2015幎に䞀般公開される予定です。 MRIのように、わずかに遠い将来にスタヌトアップ時間を達成する蚈画がありたす機胜のプロトタむプで実蚌されおいるように、これは達成可胜です。



レヌルに぀いお。



今幎の春に予定されおいる5番目のレヌルから、䞻に、以前に蚀及したRubyの以前のバヌゞョンのサポヌトの䞭止に関連するAPIの衚面的な曎新を期埅しおいたす。 より倚くの文字、プリペンドを䜿甚した単玔なロゞック、キヌワヌド匕数などを䜿甚したよりクリヌンなメ゜ッド。



アヌロン・パタヌ゜ンラック2.0のリヌダヌシップのもずで思い浮かぶこずを願っおいたす。 束葉杖なしでストリヌミングを維持するこずは、問題の最も簡単な説明です。 幎末には、HTTP 2.0の安定した仕様がリリヌスされ、ストリヌミングを䜿甚した堎合でも芁求/応答圢匏では䞍十分です。 Webマシンやhttp-2 gemがしようずしおいるHTTPセマンティクスのネむティブサポヌトは、さたざたな特定のタスクの゜リュヌションを簡玠化したすが、䞀般的なIPAを耇雑にしたす。



レヌルず䞊行しお、関連するむンフラストラクチャは匕き続き開発されたす。 ドッカヌに基づいお、䞀方ではアプリケヌションに必芁なすべおのサヌビスずラむブラリヌRubyバヌゞョンを含むを完党に提䟛する開発ツヌルがありたすが、他方では、それらの操䜜は完党に透過的ですプロゞェクトフォルダヌに移動し、セットアップを蚘述したしたそしお、必芁なすべおのサヌビスが䞊昇し、ルビヌ、バンドル、レヌル、およびその他のバむナリが実行䞭のむメヌゞにプロキシされたす。 開発者システムは垞にクリヌンであり、プロゞェクトは垞に任意のシステムで実行する準備ができおおり、開発に違いはありたせん。 展開領域では、Dockerぞの切り替えも倚くの利点をもたらしたすが、そのためには、その䞊に高レベルのツヌルが必芁です。これは、展開、ダりンタむムなしの切り替えずロヌルバックのプロキシ、ログの収集、クラりンの制埡などを担圓したす。



鉄道アプリケヌションの新しい芏則の圢成は完党ずはほど遠いものであり、䞀般的な考え方は明確ですが、詳现に぀いおは䞀般的に受け入れられおいるコンセンサスはありたせん。 トレむルブレむザヌgemなどのより包括的なアプロヌチは、倚くの芏則が最も効果的に機胜するため、普及する可胜性が高くなりたす。 同じ逞品には、より優れたモゞュヌル性を達成したいコミュニティに根付くこずができる抂念のアむデアがありたすが、本栌的なサヌビスのオヌバヌヘッドや通垞の゚ンゞンが過剰であるず芋なされる状況に垞に察応できるわけではありたせん。



おそらく将来的には、クラむアントずのデヌタフロヌを構築するためにレヌルに抜象化が远加されたすサヌバヌずクラむアント間のリアクティブな通信の実隓は、ルビヌコミュニティのフレヌムワヌク内でのみ芋おも、voltrbは非垞に急速に普及したしたが、開発の非垞に初期の段階。



これが頭に浮かんだ最初のものです。 考えおみるず、興味深い方向性ず開発がたくさんあり、それらに぀いお長い間話すこずができたす。私は垌望する人ず話をするのがうれしいです:)





あなたの意芋では、RubyずRuby on Railsの開発者のコ​​ミュニティが珟圚盎面しおいる最も重芁な問題は䜕ですか



私の意芋では、これはオヌプン゜ヌス文化の曖昧さです。 ゚コシステムはコミュニティの手によっお圢成され、すべおの人の矩務はそれを開発するこずであるこずを芚えおおくこずが重芁です。 倚くの人は、゜リュヌションに参加するのではなく、単に゚コシステムずオヌプン゜ヌスの問題を回避しようず努力したす時には苛烈な批刀を䌎う。



これを解決する方法がわかりたせん。 ハッキングは、ランタむムの調査ず問題の解決を容易にするのに圹立぀ように思われたすが、それをさらに簡単にするツヌルが必芁であるこずを意味したす。 仕事の゚チケットのレベルで䌝統が存圚するのであれば、それは実珟䞍可胜ではありたすが、玠晎らしいこずです。仕事の代わりに、すべおのRubyプログラマヌは時間を費やしお、盎面しなければならない問題を芋぀け出すこずができたす。 瀟内たたはIRCチャネルでのメンタヌの存圚。 そしお、圌らが粟神をさらに広めるために䜕をしたかずいうトピックに関するナビキタス出版物。 1幎に1日ず思われるかもしれたせんが、もっず始めるには必芁ではありたせん。そしお、これは最も難しいこずです。





指を向けお「コヌドを曞く必芁がある」ず蚀うこずができる逞品はありたすか



宝石はチヌムワヌクの結果であり、特定の手曞きのコヌドは個人のスタむルを反映しおいるので、 頭に浮かぶ人々のいく぀かのgithubのニックネヌムをリストしたす evanphx 、 eregon 、 banister 、 dkubb 、 ConradIrwin 、 amatsuda 、 mbj 、 solnic 、 jeremyevans 。





あなたはオヌプン゜ヌスに倚くの貢献をしおいたす。 なぜあなたはこれをしおいるのですか、なぜ他の人にやる䟡倀があるのですか



これは、問題が発生しお空き時間があるずきに行いたす。 火星人では、オヌプン゜ヌスコヌドでの䜜業がほが必須であるため、オヌプン゜ヌスでの䜜業時間の無駄を正圓化する機䌚に加えお、定期的な材料コンテストずボヌナスがありたす。



コミュニティ党䜓が小さなステップで前進するため、䞀般的には残りをお勧めしたす。さらに、問題を十分に理解する必芁がありたす。぀たり、スキルを高める必芁がありたす。





Ruby / RoRに぀いお䜕を読みたすか ブログ、リ゜ヌス、本



さたざたなブログ、ツむッタヌ、メヌリングリスト、長い間蓄積しおきたメヌリングリスト。



数幎前に曞いたコヌドに恥をかいおいたすか



それは起こらない-もし今違うやり方で曞くなら、それは私の心に新しい情報があるこずを意味するが、すべおを知るこずは䞍可胜なので、無知を恥じる䟡倀はない、䞻なこずはあなたの魂を入れるこずだ:)



プログラミング以倖に䜕をしたいですか



珟圚の経枈改革に぀いお読み、珟圚の政府を批刀しおくださいD



むンタビュヌありがずうございたす



䌚議では、Ravilがビッグデヌタに぀いお話したす9月27日、Digital October Centerで。 プログラム党䜓はRailsClub 2014 Webサむトにありたす。



参加の登録ず支払い- こちら。

チケットはほずんど残っおいたせん



スポンサヌ



ゞェネラルスポンサヌ-Toptal

ゎヌルドスポンサヌ BoookmateずFunBox

シルバヌスポンサヌ AT-Consulting and Lookatme

人事パヌトナヌ DigitalHR

䞻催者







Undev.ruは、Ruby、Objective-C、C ++、C、JavaScriptの匷力な開発チヌムです。 圌らは、むンタヌネットを介したテレビ攟送のためのナニヌクな技術プラットフォヌムの䜜成に取り組んでいたす。 このプラットフォヌムに基づいお、Web Elections 2012、SPIEF、バンクヌバヌおよびロンドンオリンピアヌドの攟送、および同様の芏暡のいく぀かのプロゞェクトなどの倧芏暡プロゞェクトが行われたした。







Evroneは、RoR、Clojure、およびScalaの開発チヌムです。 RailsClubのコミュニティ愛奜家および垞蚭オヌガナむザヌ。



railsclub.ruのニュヌスレタヌにサむンアップしおニュヌスレタヌを最新の状態に保ち、最新情報を入手しおください。

RailsClub.ru

twitter.com/railsclub_ru

facebook.com/railsclub



All Articles