オヌプン゜ヌスの玠人-3幎で孊んだ教蚓

ずいぶん前の2014幎に、CビュヌをTypeScriptコヌドにオヌバヌクロックする小さなナヌティリティを䜜成したした。 圌女は私に倚くの時間ず神経を節玄したした。 それで、2015幎9月に、「実隓を膝の䞊に眮く」こずを䜕らかの消化可胜な圢匏にしお、GitHubに泚ぐこずにしたした。 それで、オヌプン゜ヌス゜フトりェアの開発ぞの私の玠人の参加が始たりたした。 時間が経ちたした。 そしお、昚日、このプロゞェクトのリポゞトリで、぀いに蚘念日、300回目のコミットが登堎したした。 この重芁なむベントに関連しお、「産業の発展のために」䜕かを開発するこずを突然考えた堎合、あなたが盎面しなければならないこずに぀いおの私のアマチュアの経隓を共有したいず思いたす。 私はいく぀かの図の抂芁を説明し、いく぀かのクヌルなストヌリヌを語り、たた、オヌプン゜ヌスプロゞェクトを䜜成し、サポヌトせずにどのようなものかに぀いおの印象を共有したす。 ママ、パパ、ロヌン 䌚瀟のサポヌト、支払い、そしお...そしお自由時間。 猫の䞋に来お、垭に着き、始めたしょう。







「良いこずをする」



たず、GitHubには9,000䞇を超えるリポゞトリがありたす。 それらのいく぀かは知られおおり、いく぀かはあたり知られおおらず、いく぀かは䞀般にプラむベヌトです。 倧衆の人気を考慮しお、Githubは課題のために孊生、講矩のために教垫、チュヌトリアルのために本の著者、そしお法埋のために愛奜家によっおさえ䜿甚され始めたした。 これがコヌドずプロゞェクトのすごい深aだず想像しおみおください ただし、ゞャヌナリストがすぐにあなたに愛着を持ち、有名なリポゞトリに名前を付けるように求めたら、すぐに電話をかけるずいうコニャックのボトルを入れたす...たあ、15-30の呚りです。 これはどういう意味ですか これは、GitHubが゜フトりェア補品の巚倧な宇宙であり、そのほずんどが著者のみに知られおいるこずを意味したす。 そしお、おそらく友達に5-10。







この矀衆の䞭で倚かれ少なかれ目立぀ようになるこずは非垞に難しい、ず私は蚀いたす。

䞖界䞭のすべおのナヌザヌの銀行カヌドのデヌタを盗んでGitHubに投皿したずしおも、 あなたは犁止され、起蚎されたす 誰もこれに気付かないでしょう 。 なぜ私はそのような明癜なこずを蚀っおいるのですか そしお、ここ...圌らは明らかではありたせん 特にこれらの行の著者にずっお:)特に3幎前。 それから、本圓に圹に立぀こずをしたり、タグを瀺したり、READMEを曞いたりしお、人々は自分ですべおを芋぀け、すべおを自分でダりンロヌドするだけで十分だず単玔に信じたした。 たあ、真剣に、47行のコヌドで本質的に構成されるいく぀かの皮類の巊パッドが1000個の星を獲埗したので、私のギズモは開発を客芳的に簡玠化するものです-そう、300が入力されたすよね







うヌん...いいえ。 残念ながら、これは機胜したせん。 巊パッドは2014幎に䜜成され、2016幎の有名なむベントたで誰にも明らかに知られおいたせんでした 。 星の分垃図を芋るず、非垞に䞍幞な時期にほが90床で離陞するこずがわかりたす。 この玠晎らしいストヌリヌから明らかにいく぀かの悲しい結論がありたす。







適切なマヌケティングがなければ、あなたの䞖界での最高のアむデアは芋過ごされおしたいたす。

ブラックPRもPRです。

垞にクレむゞヌな数の星がプロゞェクトの成功を瀺唆しおいるわけではありたせん。

しかし、すべおがそれほど悪いわけではありたせん。 あなたがすでにこれに぀いお萜ち蟌む準備ができおいるなら、私のアドバむスはあなたのハンカチずすすり泣くための枕を脇に眮くこずです。







䜕か䟿利なこずをしおください。 たず第䞀に-自分に圹立぀。

あなたの人生が喜びではない゜フトりェア補品なしで掚定しおください。 ここであなたは個人的にこの投皿を読んでいたす。 どのアプリケヌション、フレヌムワヌク、サヌビス 地獄 行方䞍明ですか 仕事や日垞生掻で。 あなたはそれを理解したしたか 玠晎らしい。 グヌグルでハンマヌし、あなたの芁求で発行からそれが憂鬱で吹き飛ばされお䞍鮮明になったら-先に行っおください リポゞトリを起動し、IDEを開いお曞き蟌みたす。 あなたが倢芋たものを曞き、収集し、レむアりトしたす。 答えは簡単です。もしあなたのプロゞェクトが特にあなたに利益をもたらすなら、䞖界䞭で、おそらくこれを助けおくれおあなたに感謝する人が1000人か2人いるでしょう。 このような聎衆が初めお十分になるず確信しおいたす。 次に、小さなこず次第です。圌らの功瞟をこれらすべおの玠晎らしい人々に䌝え、道に飛び散らないようにするこずです。







パンツなしのPR



䞀郚の䌁業はこの慣行を持っおいるず聞きたした。 むンタビュヌで候補者が圌のオヌプン゜ヌスプロゞェクトに蚀及した堎合、次の段萜で「星の数」、「ダりンロヌドの数」、「䜿甚されおいるラむブプロゞェクトの数」ずいうトピックに぀いお圌が十字架に぀け始めたす。 ですから、私はあなたに責任を持っお宣蚀したす。あなたはそのような質問者に迅速か぀決定的な蚀語運動を送り、立ち䞊がっおむンタビュヌを蟞め、この䌚瀟の名前を氞久に忘れお、友人にそれを䌝えなければなりたせん。 マネヌゞャヌたたはそこでむンタビュヌする人がそのような質問を思い぀いた堎合、ほが絶察確率で、圌はフリヌ゜フトりェアの開発に問題を抱えたこずはなく、マヌケティングに぀いお聞いたこずもないし、党䜓ずしお圌が発する音をほずんど重芁芖しない。 これでの䜜業は機胜したせん。







悲しいこずですが、明らかに事実です。人気のある倧芏暡なプロゞェクトの背埌にある私の芳察によれば、䌁業はどういうわけか立っおいたす。

たずえば、盎接開発資金の圢でプロゞェクトが勀務時間䞭に行われた堎合、事実䞊支払われたす。 はい、はい、「あなたのプロゞェクトのための金曜日」があっおも-䜕、あなたはそれが予算内にないず思いたすか たたは情報サポヌトの圢匏蚘事、䌚議、ビデオ。 たあ、たたは「スタッフ」によるサポヌトの圢で、「ノァシャ、オレグが圌のプロゞェクトで機胜を䜜るのを手䌝っおください。」 たた、このようなプロゞェクトに関係する郚門党䜓が存圚する堎合、EntityFrameworkや.NET Coreなどのオヌプン゜ヌス開発の資金調達の非垞に率盎なケヌスは蚀うたでもありたせん。 たたは、䞀床にここで陰謀理論家は「誰がこれから利益を埗るか」ずいう質問をするかもしれたせんが、我々はそれに着きたす。







䌚瀟は私にリ゜ヌスを提䟛したした。ただし、生きおいる人の私の開発の無料テストを陀きたす。 いいえ、私は文句を蚀いたせん-私自身がこれを䞻匵したした。そのため、開発に察するすべおの暩利ず制埡は私にありたす。 そしお、この4幎間、請負業者ずの関係が私を぀なげおきた䌚瀟にずっお、ITはそれほどコアビゞネスではありたせん。 どういうわけか人々をそらすのは䞍䟿です。 䞀般的に、最終結果は次のずおりです。䌚瀟は同情的であり、道埳的にサポヌトし、ラむブナヌザヌでプロゞェクトをチェックおよび実行する独自のシステムを提䟛したす。 その代わりに、サポヌト、バグ修正、協議、実装、スタッフトレヌニングの優先暩を取埗したす。 Bozhechki、私は䞻芁なむンテグレヌタヌの蚀葉を蚀いたすが、私のプロゞェクトでは玄5000行テストなししかありたせん。







䌁業の助けに぀いおの叙情的な䜙談

ああ、ずおも興味深い事䟋がありたした。 2015 Studio、2017 Community Editionを賌入したしたが、さらにJetBrainsのReSharperを䜿甚しおいたす。 そしお、私もそれを買いたした。 他にも、Azureにアカりントを持っおいたす。ここでは、私に関する情報、プロゞェクトぞのリンク、ドキュメントが蚘茉されたシンプルなWebサむトがありたす。 そこにありたす。 JetBrainsには、オヌプン゜ヌス開発者向けの無料ラむセンスプログラムがありたす。 たあ、私は考えおいる-それを䞎えお、私はそれを修正したす。 かなりの金額ですが、節玄したす。 ReSharperをプレれントしたす。 どうしお それから、必芁な䜏所に手玙を曞きたした。 のように。 私はそのようなプロゞェクトずオヌプン゜ヌスのようなプロゞェクトをやっおいたす。 圌らが蚀うには、ラむセンスを䞎えたす。 答えはこれです







オヌプン゜ヌスプロゞェクトをチェックしお、JetBrainsのオヌプン゜ヌスラむセンスプログラムのすべおの芁件を満たしおいるかどうかを確認したした。

プログラムのルヌルに埓っお、プロゞェクトが有料サヌビストレヌニング、コンサルティングなどを提䟛する堎合、䞀般的な条件で無料ラむセンスを発行できないこずをお知らせする必芁がありたす。

あなたのプロゞェクトのりェブサむトで芋るこずができるように、それはいく぀かの商甚サヌビスを提䟛したす http://www.Enhanced-sc.com/Info/Contact 、したがっお、残念ながら、あなたの無料のオヌプン゜ヌスラむセンスを提䟛するこずはできたせんプロゞェクト。

぀たり、詳现を省略したす。 本質的に、圌らは私のサむト3.5アノニマスが蚪問するサむトでそれを気に入らなかった。 サヌビスのコストや特定の条件のいずれもありたせん-単に、「急に必芁になったら-曞いおください、同意したす」ず圌らは蚀いたす。 ご存知のように、もちろん、提案は受け取られおいたせん。 私はJetBrainsの埓業員であり、短い通信で説明しようずしたした。 最終的に私はこの答えを埗たした







あなたのプロゞェクトが商甚サヌビスを提䟛しおいない堎合は、りェブサむトから商甚セクションを削陀しおください。それを行ったらお知らせください。オヌプン゜ヌスラむセンスを発行したす。

「たあ、気にしない」ず思ったのは、「幎間200ドルReSharperのラむセンスのコストず匕き換えに、サむトから商甚オファヌの公開に関する情報を削陀する必芁があるこずを意味したすかいいえ、皆さん、これはあなたぞのオファヌです。しないでください。」 そしお圌は察話を続けたせんでした。







もちろん、倚くの質問がありたす。たず、 倪らないように、開発䞭に䜿甚するこずが掚奚される倩囜のマナはどれくらいですか 私のプロゞェクトが私が働いおいる䌚瀟で䜿甚されおいるが、空き時間に開発しおいる堎合-これは商甚サヌビスの提䟛ず芋なされたすか 第二に 私のプロゞェクトがビゞネスで䜿甚されおいない堎合-それは無甚ですか JetBrainsは䟡倀のないプロゞェクトに資金を提䟛する準備ができおいたすか そしお、履歎曞に自分のオヌプン゜ヌスプロゞェクトを衚瀺しお、雇甚される可胜性が増えた堎合、これも商甚利甚ですか 履歎曞にも衚瀺されないのでしょうか しかし、䌁業が情報提䟛者を情報的にサポヌトするこずも起こりたす。これもたた、単に別の圢のお金なのでしょうか 明確にする必芁がありたす 私は䜕も理解しおいたせん。







䞀般的に、ご存じのずおり、私は昇進ずPRだけの課題に盎面したした。 私が最初に思い぀いたのは、それをすべお䜿甚する方法を曞くこずでした。 ここで、私はチヌトし、有甚なものず有甚なものを組み合わせるこずにしたした-私はHabrでRTに関する最初の蚘事を曞きたしたUFOが招埅されたした。 このアむデアは「やった」PRではあたりありたせんでしたが、少なくずもロシア語のドキュメントのようなものをハブに眮くこずにしたした。 私の同僚は党員ロシア出身なので、少なくずも小さなマニュアルが必芁でしたが、通信や音声で党員に説明したくはありたせんでした。 そのため、最初の3぀の蚘事が誕生したしたが、それは聎衆に冷ややかに受け入れられたした。 これは理解できるこずです-habrコミュニティの誰かにずっお有甚である可胜性は䜎いので、私はこれに぀いお心配したせん。







ドキュメントに぀いお



私のフレヌムワヌクの䜿甚方法に関する知識を人々に提䟛するのがいいずいう考えは、最終的に次の圢匏でそれを定匏化するたで私を䌑たせたせんでした。







ここにドキュメントがあるものがありたすプロゞェクトコヌドなしでは圹に立たず、プロゞェクトコヌドなしでは圹に立たないのです。

玠晎らしいアむデアですが、ドキュメントを曞くこずに぀いおは壊滅的に少ししか知りたせんでした。 文曞化されおいないコヌドに関するメチコフずゞョヌクに加えお、メ゜ッドを蚘述するために動詞を䜿甚する必芁があり、コンストラクタヌを文曞化する必芁はないず考えられおいたした。 これに぀いおは、おそらく私の知識は尜きたした。 私はREADMEの最初のバヌゞョンを䜜成し、プロゞェクトの説明を蚘入し、考え始めたした。







アマチュアはどのようにドキュメントを曞くのですか もちろん、doxygenを通じお、プログラマヌは他に䜕を考えるこずができたすか すぐに蚀っおやった。 私の目暙は、XMLDOCJavadocのような、Cのみをギャグするこずで、Releaseのアセンブリが「公開されおいるメンバヌのコメントの欠萜に぀いお」を出さないようにするこずでした。







- C# , , "", . , internal



private



C#. : 150 ( — 250), 700 260 . - . , .







20 , - , . , , ? , . . , : — . : MSDN! .







"Gets or sets whether..." — - !

, .







30 , - " ". , , , . , , internal



( package



Java). , ! . , .







, , .







, ! doxygen .

, reference-, doxygen-, 150 , enum-, . — ! XMLDOC- , "" . , .







XMLDOC-, , . Autofac, ReadTheDocs.ord. reStructuredText. , . ? . ? ? , ? ? .







chebureque, . , . , , . , . , 
 , , ! , , , . . , .







, — . .

: , github wiki markdown- , . , , , , GitHub. . .







image







. -, , . , - . .











. 9 NuGet, , . , 2016 -. ( ?) !







?

"european it conferences 2016" . C# TypeScript. web, , , , IoT. , . , ! , , , , , " ". " ", " ", " ". , ! ", -, !". .







, , DeveloperDays 2016 . — ? , . , , — , 10 . — , . , , . , . . , , , .







— — — .

— , ! ! —
 . , — , . .

. NuGet , 10 . , . , , issues! : . , . , faq, , , , .







StackOverflow! , !

C#- TypeScript, . — ! README , Support policy. StackOverflow , . FAQ. RSS .









, RT StackOverflow — , . ! stargazers Barclays Microsoft. — , , , , , 
 ! , Insights , JIRA - .







StackOverflow , , . . issues , - . . - . , - . , , ( , — ) , .







TDD — , .

— - , - . ,







image







, -. ( ), — 10, 99% - .







-, , C# TypeScript . , !







RT, dnx, .NET Standard, 3 .NET Core, 20 TypeScript , .

, - .NET Core :)









, , . , ( !). , , 
 - ? , : , , , . ( .NET Core, ). ? , .







3 . ? ? ! . , . . zip- — GitHub ! , , , OSS- - .







opensource- ? .

?

OSS : (opensource ) ( ). Microsoft OSS — .NET Core "Microsoft loves Linux" MS-, — Azure . — ! , .







opensource. -, Percona mysql, , " ". , , mysql , . mysql .







, OSS- , , . — : OSS- , . , .







OSS, , — , , , Apache Harmony, Sun Microsystems JRE ( , -).







OSS , . - — , , " " — . . — , , " — , " .. .







OSS — , . — - . , user group, community, , . — , . - . "member of something user group, contributor".







- OSS- , , , . .







, — . , , , . , — .

, , community. — , , , , — , , .







, , , — , , linux. "" Linux. , — . . - , " ", , opensource . . , . , .







. - , - " opensource", — .







, .

opensource, " " opensource- — , .







: OSS- OSS- — . , . .

, , , , " " " opensource". , OSS, . . , , . . , . , — . ? ...







, . :









GitHub, NuGet.







!








All Articles