゜フトりェアの自由の日





今日はリチャヌド・ストヌルマンのアむデアのすべおのファンにずっお特別な日です。 1983幎以来、この男はフリヌ゜フトりェア運動の䞻芁なむデオロギヌ家です。 そしお今日は、この同じ自由の10呚幎蚘念日である蚘念日ずなりたす。



フリヌ゜フトりェアの基準は、広範な資本䞻矩の条件䞋ではかなりワむルドに芋えるずいう事実にもかかわらず、これはGNU / Linux、Apache Webサヌバヌ、Wikipediaを実行するMediaWiki゚ンゞンなどの有名なプロゞェクトの出珟ず成功した開発を劚げたせんでした。 これはほんの䞀郚ですが、䞀般的に、無料で配垃されるプログラムは無数にすぎたせん。 私自身は過去にオヌプン゜ヌス゜フトりェアの熱烈なサポヌタヌでした。特に、それはすべおMandrake Linuxで始たり、Arch LinuxずAwesomeタむルりィンドりマネヌゞャヌの構成の無制限の仕䞊げで終わりたした。 圓時、圌は友人の䜕人かをこの宗教に改宗させ、Linuxを䞡芪のラップトップに眮きたした。 怒りは収たり、Ubuntuの新しいバヌゞョンの埌ろに座っおも安心したした。 :)



フリヌ゜フトりェアの動きはナニヌクな珟象になりたした。 コミュニティが䜜成したアプリケヌションを毎日䜜成および改善する䞖界䞭の倚数のプログラマヌを集めたす。 完璧に磚きをかけ、新しい機䌚を䞎えたしょう。 そしお、圌らの仕事、むニシアチブ、および無関心なアプロヌチのおかげで、今日、私たちは倚くのアプリケヌションを、それらの商業的なクロヌズドの察応物よりも悪くなく、倚くの堎合より良く機胜させおいたす。 そしお、それらの胜力はしばしばそれらを䞊回りたす。



Mail.Ru Groupには、フリヌ゜フトりェアの䜜成ず改善に関䞎する倚くのプログラマもいたす。 私たちのブログの最埌の投皿で、Alexander Emelin は圌のオヌプン゜ヌスプロゞェクトCentrifugeに぀いお話をしたした 。 䌑日に特別に、私たちは他の埓業員に、STRが圌らの仕事でどのように圹立っおいるか、そしお圌らの仕事の䞀郚に぀いお話をするように頌みたした。



Mail.Ru Mailテストグルヌプの責任者であるVladimir Dubrovin @ z3apa3a



私はオヌプン゜ヌス゜フトりェア、オヌプン゜ヌス゜フトりェア、オヌプン゜ヌス゜フトりェアをずっず䜿っおきたので、「仕事で助けられた」は状況に合わず、私はそこに䜏んでいるず蚀えたす。 私自身は、クロスプラットフォヌムプロキシサヌバヌ3proxyのプロゞェクトを開発しおいたす。これは、アプリケヌショントラフィックの管理、぀たり、さたざたな基準ずアプリケヌションプロトコルに埓っおトラフィックを考慮、制限、フィルタリング、リダむレクトできるプロキシサヌバヌです。 FreeBSD、NetBSD、Fedora、Gentoo、AltLinuxのポヌトに含たれおいたす。 FreeRADIUSプロゞェクトに長い間取り組んできたしたが、Postfix、Sendmail、Courier-IMAP、およびその他の有名なプロゞェクトの゜ヌスコヌド監査ず個別のパッチを行いたした。



Artem Vybornov @vibornoff、プヌシキンスタゞオのリヌドプログラマヌ



毎日私は仕事でオヌプン゜ヌス゜フトりェアを䜿甚しおいたす。 はい、䞀般的に、オヌプン゜ヌス゜フトりェアのむンフラストラクチャはすべお回転しおいたすが、それなしではどうでしょうか そしお、私がasmCryptoを持っおいるプロゞェクト-ブラりザ甚の暗号化、それは同様のラむブラリよりも数倍速く動䜜し、すでに倧芏暡な実装がありたすが、少し改良するず、W3C Web Crypto API暙準を実装するこずがわかりたす。



Eduard Iskandarov @toidi、スパム察策グルヌププログラマヌ



オヌプン゜ヌスが私たちのすべおです。 システムの倚くの堎所でオヌプン゜ヌス゜フトりェアを䜿甚しおいたす。 デヌタ凊理および芖芚化システムから始たり、特定のラむブラリで終わりたす。 私自身は、グロヌバルな協力ずいう発想の支持者です。成功したアむデアず実装は、匷迫的なマヌケティングではなく、瀟䌚ぞの有甚性のために広く普及するこずができたす。 䞀方、オヌプン゜ヌスの支揎の䞋で開発された゜フトりェアプロゞェクトは非垞に粘り匷く、コミュニティずビゞネスの䞡方にずっお倧きなプラスになるこずは間違いありたせん。 プロゞェクトが本圓に興味深い堎合は、コミュニティが発生したす。コミュニティでは、必芁に応じお、新しいリヌダヌが登堎したり、プロゞェクトが「予算」を立おお、新しいアむデアをテストたたは開発できたす。



オヌプン゜ヌスがコヌドを䜿甚する胜力に小さな制限を課すこずは非垞に重芁です。 オヌプン゜ヌスの成果を䜿い始めお、あなたはすでにコミュニティの䞀員ずなり、朜圚的な貢献をしたす。 しかし、別のこずは、あなたがアクティブな参加者になるずきです。 そしお、プロゞェクトの開発に倚くの時間ず個人的な時間を費やす必芁はありたせん。遭遇するプロゞェクトの短所のチケットを開始するだけで開始できたす。



䜜業に必芁な堎合は、自分で゜ヌスコヌドを把握しおから、その䜜業をプロゞェクトに送信しおください。 人々はあなたに感謝し、プログラミングのスキルが向䞊したした。 さらに、雇甚䞻が人気のある゜ヌスコヌドホスティングサヌビスのプロファむルを芁求し始めおいるこずは泚目に倀したす。たた、堅実なプロファむルを遞択するこずで、奜みに合わせお遞択できたす。 あるいは、オヌプン゜ヌスプロゞェクトを䞭心にビゞネスを組織しおいるかもしれたせん。 ずころで、アクションの巚倧なフィヌルドがありたす。 十分なリク゚ストを甚意しおください。



Dmitry Korobkin @Octane、プロゞェクトプログラマヌ回答



私はJavaScriptプログラマなので、ほが毎日、倚くのオヌプン゜ヌスモゞュヌルを含むnpmパッケヌゞマネヌゞャヌを䜿甚しおいたす。 オヌプン゜ヌス゜フトりェアは、毎日の仕事に圹立぀ず蚀えたす。 Gruntを䜿甚しおプロゞェクトを収集し、 UglifyJSを䜿甚しおjsファむルを瞮小し、 スタむラスでnibず組み合わせおスタむルを蚘述したす。 䞊蚘に加えお、Mail.Ru Groupで取り組んでいる珟圚のプロゞェクトは、 Backbone 、 jQuery 、 Lo-Dash 、 LMD 、 Fest 、 FileAPIなどのオヌプン゜ヌス゜リュヌションに基づいおいたす。



私のnpm-piggyバンクには、オヌプン゜ヌスモゞュヌルes6-promisesもありたす-ECMAScript 6暙準のPromiseコンストラクタヌの芪友です。他の同様の芪友ずは異なり、私の実装するのは暙準メ゜ッドのみです。したがっお、Promise.castたたはPromise.anyはありたせん。すべおのブラりザでPromiseのサポヌトが導入されたす。ポリフィルは安党に削陀でき、コヌドを䜿甚しお曞き換える必芁はありたせん。 Polyfilは、ブラりザヌずNode.jsモゞュヌルの䞡方で機胜したす。 非同期はsetImmediateを䜿甚しお実珟されたす。



Leander Khaliullov @khaliullov、スパム察策グルヌププログラマヌ



長い間、オヌプン゜ヌス゜フトりェアの䜿甚に぀いお話すこずができたす。最も簡単なこずは、たずえば、倚くのプロゞェクトでPerlを䜿甚しおいたこずです。オヌプン゜ヌスで、異なるプラットフォヌムに移怍されたした。 nginxを䜿甚するず、httpd Apacheは誰も驚かないでしょう。実際、倚くのサむトがそれらに取り組んでいたす。 たた、フロント゚ンドずバック゚ンドの䞡方で異なるオヌプン゜ヌスフレヌムワヌクを䜿甚しおいたす。 䞀般的に、フリヌ゜フトりェアなしで生掻するこずがどれほど難しいかは想像できたせん もちろん、私は自分でいく぀かのプロゞェクトを助けようずしたしたが、パッチ/機胜をパッチするためにコミッタヌになるほどで​​はありたせんでしたudpxy、Icecast、Asuswrt RT-N56Uなど、どこでも少しず぀。 私は自分のオヌプン゜ヌスプロゞェクトを持っおいないので、perlachkaのこのペアのモゞュヌルをあたり重芖したせんでしたが、それがどれほど重芁であるかをたすたす理解しおおり、オヌプン゜ヌス゜フトりェアの原則に埓うように努めたす。



最埌に混乱したのは、 デバむス:: GembirdからのEnerGenie EG-PMS-LANの管理でした 。 誰もが圌が興味を持っおいるこずに少し貢献しようずするなら、これらのプロゞェクトはより速く発展するでしょう。



Nikolay Timchenko @nickynick、モバむルアプリケヌションMy.Comのプログラマヌ



iOS甚に開発しおいたす。 数幎前、このコミュニティのオヌプン゜ヌス文化自䜓は存圚しおいなかったず蚀えたす。 もちろん、いく぀かの重芁なプロゞェクトがありたしたが、サヌドパヌティのコヌドをプロゞェクトに含めるための賢明なメカニズムすらありたせんでした-倚くの開発者は゜ヌスコヌドを愚かにコピヌし、それに満足しおいたした。 しかし、その埌、RubyGems / npmのような䟝存関係マネヌゞャヌが登堎し、通垞の状態に慣れおいる他のプラットフォヌムの開発者が埐々にクロヌルし、向きを倉えたした。



私のプロゞェクトでは、かなりの量のオヌプン゜ヌスコヌドを䜿甚しおいたすが、次に接続される各ラむブラリはプロゞェクトの郚分的な制埡の喪倱であるこずを理解するこずが重芁です。 よく知られおいるffmpegやロヌカルGPUImage高性胜画像凊理甚のラむブラリなど、特定の機胜に関連するものは本圓に䞍可欠です。 たた、ロヌカルRxの生たれ倉わりであるReactiveCocoaを䜿甚するず、さたざたなナヌザヌアクションに察する状態や反応に関連する非垞に䞍快なUIコヌドを゚レガントに解くこずができたす。



あるボリュヌムで、私は十分に倚数のプロゞェクトに貢献したしたが、私が参加する人気のあるプロゞェクトが2぀ありたす。 これはMasonryであり、AutoLayout画面䞊にビュヌを配眮するためのメカニズムの䟿利なラッパヌです。Mantleは、生掻を楜にし、定型コヌドの数を枛らすこずを目的ずした軜量モデルフレヌムワヌクです。 最近、私は自分のプロゞェクトをいく぀かリリヌスしたしたが、近いうちに本番環境に移行しお宣䌝したいず思っおいたす。 たずえば、 ArrayDiffは、挿入、削陀、および曎新の圢匏で2぀の配列間の差を効率的に蚈算する小さなギズモです。



Marat Radchenko @slonopotamus、Allodsチヌムのリヌドプログラマヌ



職堎では、次のような状況が発生したした。プログラマヌはGitを望み、デザむナヌずアヌティストはただコミットしたいだけです。 数か月間Gitで生掻しようずしたしたが、うたくいきたせん。 マヌゞに関する䞍断の問題、奇劙な状態の䜜業コピヌの䜜成、倚くの吊定性、「SVNを返す」ずいう嘆願。 グヌグルは、急速に動く SubGitプロゞェクトがあるこずを瀺したしたが、ただ攟棄されたそしおPythonで激しく枛速しおいる git_svn_serverずgithubのsvnプロトコルのサポヌトがあり、GitHub Enterpriseの䞀郚ずしお倚くのお金のためにのみ提䟛したす。



圌らはカブをひっかいた埌、「たあ、私たちはプログラマヌだ」ず蚀った。 そしお、svnのふりをしお、gitリポゞトリのフロント゚ンドであるgit-as-svnが生たれたした。 機胜チェックアりト/曎新、ログ、非難、コミット、名前倉曎怜出、svneolスタむル、gitフック、LDAP経由の認蚌、郚分チェックアりト、スパヌス䜜業コピヌsvn --depth /-set-depth 、gitサブモゞュヌル。 ベンチマヌクでは、ネむティブsvnを比范したす堎合によっおは远い越しさえしたす。 その過皋で、圌らはsvnに想像を絶する莅沢を発芋したした。これは別の投皿に倀したす。



PSはい、それはJavaで曞かれおいたす。これは予枬䞍可胜なGCを持ち、RAMを食べるのが倧奜きなものです。 もちろん、おっぱいのほうが良かったかもしれたせんが、2぀で地獄になったら、1か月間これをすべお眮くこずになりたす。



Andrey Kutuzov @dystheist、Mail.Ru Search蚀語孊者



可胜な限り、私は垞にフリヌ゜フトりェアを䜿甚しようずしたす。 これは、第䞀に、私の意芋では、倫理的に正しいこずであり、第二に、プロプラむ゚タリよりも䟿利で、高速で、柔軟性が高いこずです。



私たちの応甚怜玢蚀語のグルヌプMail.Ruは、ほがすべおのタスクでフリヌ゜フトりェアを䜿甚しおいたす。 たずえば、セマンティックマヌクアップRDF、microdataなどを備えたWebペヌゞを分析および解析するための品質ナヌティリティが本圓に必芁でした。 これは、このデヌタを䜿甚しお怜玢スニペットやその他の重芁なものを䜜成するために必芁です。 私たちの遞択は、Apache Software Foundation、そしおもちろんコミュニティによっお開発された、 any23の無料ラむブラリにありたした。 たったく埌悔しおいたせんでした。any23はワヌクフロヌに完党に統合されおいたした。 私たちは圌女の仕事の論理を理解し、圌女が䜕か間違ったこずをした堎合でも、圌女のコヌドをわずかに修正するこずは問題ではありたせんでした。 珟圚、圌女の助けを借りお、䜕癟䞇ものドキュメントが定期的に凊理され、怜玢ナヌザヌは矎しく有益なスニペットを受け取りたす。



私自身はプロのプログラマヌではないず考えおいたすが、他の人に圹立぀ものを曞くこずがある堎合は、垞に無料ラむセンスで投皿しおいたす。 最埌に完了したプロゞェクトから、ロシア語のテキストの照応の自動解決システムを思い出すこずができたす。 照応は、単語通垞は代名詞自䜓は重芁ではなく、別の単語ぞのポむンタにすぎない堎合の蚀語珟象です。 たずえば、「恐竜は通りを歩いおいたした。 ペティアは圌を芋お青ざめた「圌」ずいう蚀葉は恐竜を瀺しおいたす。 このような関係を定矩するこずは、倚くの蚀語タスクにずっお重芁です。 マックス・むオノフず私は、ロシア語の任意のテキストの照応関係を正確に区別するシステムを構築したした。 コンピュヌタ蚀語に関する䌚議「Dialogue」でプロゞェクトを発衚し、いく぀かの改善を行い、githubに投皿したした。 珟圚、私たちが知る限り、これはロシア語の照応接続の唯䞀の自由に利甚可胜な怜出噚です。 こちらで詊しおみるこずができたす 。 私たちはコメントずコミットに非垞に喜んでいたす。 :)



Artem Drozdov @Artyomcool、Android甹Mail.Ru゚ヌゞェント開発グルヌプの責任者



「ケヌス」ず呌ぶこずは非垞に困難です。 私たちは、プロゞェクトで最も重芁な堎所をすべおオヌプン゜ヌスラむブラリに結び付けおいたす。 そしお、䞀般的に、Androidはそうです。 圌は完党にやや寛倧であり、これはしばしば手元にありたす。 以䞋は、この䜜業で䜿甚されるオヌプン゜ヌスプロゞェクトの郚分的なリストです。



LibPhoneNumberは、ナヌザヌが入力した電話を解析するカテゎリから、囜/郜垂コヌドなどを抜出するために、電話番号を操䜜する機䌚を提䟛するGoogleラむブラリです。



GreenDao-コヌド生成に基づいたAndroid甹ORM。 少し䞍噚甚ですが、そこにあるすべおのORMLiteよりもはるかに高速に動䜜したす。 開発者はやや奇劙です。 フォヌクが䜜成されたずき、圌らは基本的にプヌル芁求を受け入れたせんでした。 今、圌らは同意したすが、スキャンされた眲名枈みの契玄曞を送信するこずになりたす。 そのバヌゞョンでは、コヌド生成は手䜜業で開始されたすが、これもたた、1䞖玀に枡る組立システムがダヌドにある堎合は少し奇劙です。 gradle-pluginレベルでのアセンブリをサポヌトするフォヌクから分岐したした。これにより、アセンブリ䞭に適切なコヌドを自動的に生成できたす。 デヌタベヌススキヌマを倉曎するほずんどの堎合に自動アップグレヌドが芋られ、カスタムシリアラむザヌでデヌタを保存/ロヌドする機胜が远加されたしたこれにより、Kryoを䜿甚しお、シリアル化されたデヌタをできるだけ早く保存/ロヌドできるようになりたす、耇合むンデックスを操䜜するgradleプラグむンの機胜が拡匵されたした。



GSON-基本的にここで説明するこずはありたせん。JSONを操䜜するために最も䜿甚されるラむブラリの1぀です。 ガベヌゞコレクションに関しお最適化されおいるため、これが垞に問題ずなる携垯電話での䜿甚を掚奚できたす。



Kryoは、任意のオブゞェクトをシリアラむズ/デシリアラむズするための最速のラむブラリです。 ずおも快適です。



グアバ-たた、䞀般に、説明するものはありたせん。倚くのナヌティリティがあり、暙準Javaでは単に十分ではありたせん。



Gson-XMLは少し議論の䜙地のあるラむブラリですが、XMLの逆シリアル化のためにGSONを開発時間の芳点から迅速に投入できたす。



AndroidAnnotationsは単なるものです。 Java、特にAndroidに非垞に特城的なコヌドを実行しおいる倚数の絶察に䜕も取り陀くこずができ、実際に䜜業に集䞭できるようにするコヌド生成に基づくラむブラリ。 以䞋を含む倧芏暡なAndroidアプリケヌションの適切なアヌキテクチャの䜜成ずサポヌトを簡玠化したす。 䟝存性泚入を提䟛したす。 UIの操䜜、特に独自のコンポヌネントの䜜成が簡単になりたす。 䞀般に、AndroidAnnotationsを䜿甚しないAndroidでの生掻は非垞に困難です。



それぞれが非垞に圹立ちたす。 特にAndroidAnnotationsなので、このプロゞェクトに察しお比范的頻繁にプルリク゚ストを行いたす。



My Worldのシステムプログラマ、 Pavel Cherenkov @pcherenkov



実䟋2001幎、Red Hat 7.3は私を助けおくれたした。 危機があり、私は倱業したした。 私は叀い、䜎電力のコンピュヌタヌを持っおいお、新しいコンピュヌタヌのためのお金がたったくありたせんでした。 Red Hatをむンストヌルし、むンタヌネット䞊で仕事を芋぀け、履歎曞を䜜成し、POSIX互換システムでメヌルずプログラミングを行うための非垞に有胜な環境を手に入れたした。



GPLv3のフレヌムワヌク内には、非垞に広くIPTV愛奜家の間で知られおいる小さなオヌプン゜ヌスプロゞェクトがありたす。udpxyは、マルチキャストストリヌムのプロキシサヌバヌです。 このプロゞェクトは、2008幎にAsus Wl-500gルヌタヌのナヌティリティずしお開始され、アプリケヌションは「Olegからの」オヌプンファヌムりェアに含たれおいたした。 珟圚、udpxyは「ホヌム」wifiルヌタヌのさたざたなファヌムりェアに暙準で含たれおおり、IPTVナヌザヌおよびプロバむダヌによっお䜿甚され、倚くのIPTV OTT゜リュヌションのサヌバヌ郚分はそれに基づいおいたす。 このアプリケヌションは、ネットワヌクを操䜜するためのPOSIX APIをサポヌトするほずんどすべおの最新のOSおよびハヌドりェアプラットフォヌムで動䜜するようにコミュニティフォヌスによっお、別々のブランチで適合されたした。



Arseniy Zhizhelev @primetalk、Allodsチヌムのシニアプログラマヌ



゜フトりェアの自由ずはどういう意味ですか



さたざたな分野のプロ仕様の゜フトりェアを無制限に無料で䜿甚できたす。 私の䞻な掻動のために゜フトりェアOS、䌚蚈゜フトりェア、アンチりむルスを賌入する準備ができおいるずいう事実にもかかわらず、時には関連分野からタスクが発生したす。 そしおそれらを解決するために、私は本栌的なプロの゜フトりェアを䜿甚したいず思いたす、そしお、賌入は䞍採算です。



任意の再構成を䜿甚する暩利。 システム管理の目的のために、異なるプログラムのセットでいく぀かの隔離されたコンテナを蚭定する必芁がありたす。 フリヌ゜フトりェアUbuntuの堎合、この機胜は利甚可胜です。 そしお、プロプラむ゚タリな゜フトりェアをどうするか 排他的暩利の所有者はこの䜿甚を蚱可したしたか 圌はそれをたったく予芋したしたか



明確で暙準化されたラむセンス契玄。 ラむセンス契玄で悪魔に魂を売る矩務の欠劂。 通垞、最新のオヌプン゜ヌス゜フトりェアには、暙準ラむセンスの1぀が付属しおいたす。 これらのラむセンスを䞀床調べお、違いを理解し、この問題に戻るこずはほずんどありたせん。 所有暩のある゜フトりェアの堎合、所有者は毎回、萜ずし穎を含む新しいラむセンスを発明したす。 条項がラむセンス契玄に意図的に導入され、健党な人が決しお同意しない堎合がありたす。



゚ントリヌレベルのナヌザヌ向けに蚭蚈された人為的な制限の欠劂。 技術的に機胜を開発した補品のバヌゞョンがリリヌスされ、ラむセンスでは特定の䜿甚が犁止されおいたす。 . , , . , .



. , Jabber, Skype', .



. Skype , . ?



. Ubuntu , . , . .



:



. , , . , . , SynapseGrid , . Functional reactive programming, . , . , API.



, - — , (), «» .



, . patch' , , .



, , .. - . , , , .



(@blackm00n), My.Com:



iOS, . , 20 . - , .



? , libPhoneNumber-iOS . JSON Mantle . , CoreData, mogenerator . Masonry AutoLayout . WebSocket, SocketRocket . , , , cocoapods , . , .



, :

QTree-objc — - Quadtree. : (, ..), . , , , . . .

AKNumericFormatter — , .. .

AKTransliteration — , ru <-> en .



, , ! , IT , . よろしくお願いしたす



?



All Articles