タグ

ブックマーク / www.clear-code.com (19)

  • OSS開発に参加する方法 - 2024-09-18 - ククログ

    こんにちは。7月にクリアコードに入社した藤田です。 クリアコードでは「フリーソフトウェアで稼ぐ」という理念をもとに、さまざまな活動がオープンになっており、 OSS開発もその一環です。 私が所属するチームは、Fluentdという拡張性の高いOSSのログ収集ソフトウェアを扱っています。 クリアコードに入社するとともに、新たなOSSに挑戦しております。 そこで、この記事では私なりのOSSに参加する方法についてご紹介したいと思います。 この内容に沿って作業されると、すぐにPull Requestを作成することができるかと思います。 それを足がかりにより大きな課題へ挑戦してみてください。 クリアコードでOSS開発 私が所属しているFluentdチームは、Fluentdの導入支援や運営サポートなどの エンタープライズサポートをベースに、Fluentdをオープンに開発しています。 我々の活動は http

    OSS開発に参加する方法 - 2024-09-18 - ククログ
    Nyoho
    Nyoho 2024/09/18
  • 研鑽Rubyプログラミング - 2023-04-27 - ククログ

    Rubyコミッターの須藤です。 2023年4月に「すでにRubyをよく知っている」人向けの書籍研鑽Rubyプログラミングが出版されました。私はRubyをよく知っているので読む資格があるはず! 内容 Jeremy Evansさんはもりもりコードを書いているRubyコミッターです。そんな人が書いた内容なので、上級者なら知っていそうだけど中級者は知らないかも?というレベルの情報がバンバン出てきます。初心者はついていけないでしょう。あるいは書いている内容を鵜呑みにしてしまうかもしれません。 しかし、ここに書いている内容を鵜呑みにしてはいけません。サブタイトルが「実践的なコードのための原則とトレードオフ」とある通り、一部は「原則」としてベースの考えとしてもいいものですが、そうでないものは「トレードオフ」として考えなければいけません。「トレードオフ」ということはあちらを優先するとこちらがおろそかになる

    研鑽Rubyプログラミング - 2023-04-27 - ククログ
    Nyoho
    Nyoho 2023/04/28
    おもしろ
  • おすすめ.ssh/config設定 - 2023-04-03 - ククログ

    はじめに つい先日、GitHubのRSA SSHホスト鍵が突如差し替えられるという一件がありました。 We updated our RSA SSH host key 詳細に関しては識者による解説に委ねますが、ちょうどタイムリーな話題だったので、SSHをより安全に利用するという観点でおすすめ設定についていくつか紹介します。 なお、クリアコードではSSH以外にもおすすめzsh設定やおすすめEmacs設定という記事も公開しているので参考にしてみてください。 2023年5月11日更新:StrictHostKeyCheckingをyesにする場合の安全なknown_hostsの更新方法について追記しました。 おすすめ設定について クリアコードでは、.ssh/configのおすすめ設定を https://gitlab.com/clear-code/ssh.d にて公開しています。 これは、社内で.ss

    おすすめ.ssh/config設定 - 2023-04-03 - ククログ
    Nyoho
    Nyoho 2023/04/04
  • 2022年のApache ArrowのPMC chairの成果 - 2022-12-27 - ククログ

    前半は2位・3位ですが、後半は1位です。これは、今年の4月からApache Arrowの開発に使える時間が増えたからです。具体的に言うと、Apache Arrowの最新情報(2022年5月版)に書いた通り、Voltron Dataさんが資金援助してくれています。(私のApache Arrow関連の開発にお金を払ってくれています。)Apache Arrowの開発を仕事にしたい人は採用情報、特にApache Arrow関連業務の採用情報を参照してください。 では、これらのコミットでどのような改良をしたかを自慢します。 GLib/Rubyバインディングの改良 私がApache Arrowの開発に参加している一番のモチベーションはRubyです。Rubyでもデータ処理できるようにしたくてApache Arrowの開発に参加しています。そのためにRubyから使えるApache Arrowの機能を増やし

    2022年のApache ArrowのPMC chairの成果 - 2022-12-27 - ククログ
    Nyoho
    Nyoho 2023/01/11
  • リーダブルコードの解説 - 2012-06-11 - ククログ

    注: 記事中の「解説」の部分のライセンスは「Creative Commons 表示 - 非営利 - 継承」です。「解説」は「クリアコード」(「ClearCode Inc.」)によって変更されています。変更前の原著作者は「オライリー・ジャパン」です。「Creative Commons 表示 - 非営利 - 継承」なので再配布や変更や翻訳などはライセンスに従って自由に行えますが、営利目的で利用することはできません。 https://amazon.co.jp/dp/B0064CZ1XEの翻訳である「リーダブルコード」が今月(2012年6月23日)発売されます。すでに予約できるようです。 https://amazon.co.jp/dp/4873115655 書の内容は原書の紹介記事を参照してください。 日語版の訳者は角さんです。これまでの訳書と同様にとても読みやすく訳されています。翻訳なので読

    リーダブルコードの解説 - 2012-06-11 - ククログ
  • リーダブルなコードを書く習慣の身に付け方・実践の仕方 - 2021-09-22 - ククログ

    結城です。 2021年9月13日から14日にかけて、東京都立大学の大学院生向け特別講義として「リーダブルコード演習」を実施しました。 演習の内容は、当社でこれまでにも行ってきているリーダブルコードワークショップを、プログラミング経験が比較的浅い・プログラミングの量がまだそれほど多くない方向けに調整した内容としました。 この記事では、実施した演習の概要と、今回意識した点を紹介します。 文が長いため、目次を用意してみました。 発端 演習の構成 座学パート リーダブルなコードを書く意義について リーダブルコードを実践するためにまず取り組むべきこと 実際の現場での「コードがリーダブルでなくなってしまった」「リーダブルになるよう改めた」実践例 最初の実装 リーダブルでなくなった実装 リーダブルさを取り戻すための改修 コードがリーダブルでなくなっていってしまう要因 壊すのが怖くて、見て見ぬフリ 恐怖

    リーダブルなコードを書く習慣の身に付け方・実践の仕方 - 2021-09-22 - ククログ
    Nyoho
    Nyoho 2021/09/26
    受けたい
  • ノータブルコード1 - printfの縦揃え - 2020-01-14 - ククログ

    リーダブルコードの解説の著者の須藤です。リーダブルコード編ではプログラマそれぞれがリーダブルなコードを書く方法を紹介しています。リーダブルコードの解説ではチームでリーダブルなコードを書く方法を紹介しています。 では、その次のステップはなんでしょう。それは「チーム外とリーダブルコードの知見を共有する」です。情報を提供するところに情報は集まります。自分たちがリーダブルコードの知見を発信することで知見が集まります。集まるのを待つだけではなく自分から知見を探しにいけばさらに知見を集められます。チーム内だけで知見を共有していると、限られたコンテキストでの知見しか得られなくなってしまいます。チーム外の知見も活用することでチームに新しい知見を導入できます。 たとえば、Ruby on Railsを使ってWebアプリケーションだけを書いている場合はそのコンテキストの知見ばかり集まります。しかし、その知見

    ノータブルコード1 - printfの縦揃え - 2020-01-14 - ククログ
    Nyoho
    Nyoho 2020/01/17
  • Apache Arrowの最新情報(2019年9月版) - 2019-09-30 - ククログ

    Apache ArrowのPMC(Project Management Commitee、プロジェクト管理チームみたいな感じ)のメンバーの須藤です。 みなさんはApache Arrowを知っていますか?Apache Arrowは数年後にはデータ処理界隈で重要なコンポーネントになっているだろうプロジェクトです。データ処理界隈に興味がある人は知っておくと役に立つはずなので1年ほど前にApache Arrowの最新情報(2018年9月版)をまとめました。この1年ですごくよくなったので2019年9月現在の最新情報を紹介します。 私は、PMCの中では唯一の日人1で、コミット数は2番目に多い2ので、日ではApache Arrowのことをだいぶ知っている方なはずです。Apache Arrowの情報は日語ではあまりないので日語で紹介します。 ちなみに、英語ではいろいろ情報があります。有用な情報源は

    Apache Arrowの最新情報(2019年9月版) - 2019-09-30 - ククログ
    Nyoho
    Nyoho 2019/10/02
  • OSSへフィードバックしてみたいけど、英語でどう書けばいいのか分からない - 2019-07-12 - ククログ

    結城です。 ここまで、OSSへのフィードバックをやってみようとした時に躓きがちなポイントについて、フィードバックするトピックの見つけ方、報告に盛り込むとよい内容、その情報の送り届け先の選び方の知見をそれぞれ述べてきました。 ところで、それらの技術的な内容以前のハードルとして、言語の壁という物もあります。実際にOSS Gateワークショップでも、フィードバック内容をまとめた後、英語でそれを書き直すという段階で手こずっておられる方がかなり多い印象があります。 ITエンジニア向けに「こういう英語表現を覚えよう」という情報を紹介する記事は時々見かけます。ですが、ワークショップでビギナー参加者の方が英語を書くのに苦労している様子を実際に見ている印象では、必要なのはそういった記事で紹介される「実際の現場でよく使われる単語や熟語の情報」ではなく、「実際の現場で英文を書く時に行われる考え方の解説」の方であ

    OSSへフィードバックしてみたいけど、英語でどう書けばいいのか分からない - 2019-07-12 - ククログ
  • Ruby 2.6.0とtest-unitとデータ駆動テスト - 2018-12-26 - ククログ

    Rubybundled gemのtest-unitをメンテナンスしている須藤です。 歴史 test-unitはxUnitスタイルのテスティングフレームワークです。Rubyのテスティングフレームワークの歴史(2014年版)にまとめてある通り、Ruby体に標準添付されています。 Rubyに標準添付されているライブラリーには実は次の3種類あります。 ただの標準添付ライブラリー(例:URI) requireするだけで使えるライブラリー default gem(例:csv) requireするだけで使えるライブラリー RubyGemsで更新できる Gemfileでgemを指定しなくても使える bundled gem(例:test-unit) requireするだけで使えるライブラリー RubyGemsで更新できる どれも標準添付ライブラリーなのでrequireするだけで使えます。違いはRubyG

    Ruby 2.6.0とtest-unitとデータ駆動テスト - 2018-12-26 - ククログ
  • Ruby 2.6.0とより高速なcsv - 2018-12-25 - ククログ

    Rubyの標準添付ライブラリーのcsvをメンテナンスしている須藤です。 歴史 csvは名前の通りCSVを読み書きするための便利ライブラリーです。 もともとRuby体とは別に開発されていたのですが、Ruby 1.8.0のときにRuby体にバンドルするようになりました。dRubyやREXMLがRuby体にバンドルされたのも同じタイミングです。Ruby 1.8.0のときにバンドルするライブラリーをすごく増やしたのです。(その頃の様子がわかるURLをここに置いておきたかったけど見つけられなかった。。。) Rubyではcsvのようにrequireするだけで使えるライブラリーを「標準添付ライブラリー」と呼んでいます。Stringのようにrequireしなくても使えるライブラリーは。。。なんだろう。組み込みクラスかしら。 その後、Ruby 1.9.0のタイミングで実装をFasterCSVに置き換え

    Ruby 2.6.0とより高速なcsv - 2018-12-25 - ククログ
    Nyoho
    Nyoho 2018/12/26
    CSVのパースの高速化の話初めて読んだ。面白かった。
  • RubyKaigiのCFPへの応募例 #rubykaigi - 2017-06-06 - ククログ

    須藤です。関西Ruby会議2017が終わってからRubyKaigi 2017の発表を応募しました。 RubyKaigi 2017のCFPがでています。CFPとはもともと(?学会の文脈で)はCall For Papersの略ですが、RubyKaigiの文脈ではCall For Proposalsの略で、「RubyKaigiでの発表を募集しています」という意味です。RubyKaigi 2017の発表の応募は6月17日まで受け付けています。 応募する人が増えるといいなぁと思うので、実際の応募例として私のRubyKaigi 2015からRubyKaigi 2017の分の応募内容を紹介します。どうしてRubyKaigi 2015の分からかというと、CFPアプリケーションができて応募の記録が残るようになったのがRubyKaigi 2015からだからです。 項目 実際の応募内容を紹介する前に、どのような

    RubyKaigiのCFPへの応募例 #rubykaigi - 2017-06-06 - ククログ
    Nyoho
    Nyoho 2017/06/06
    レベルが高すぎる。こりゃわしには無理じゃわ
  • 書き捨てのRubyスクリプトをgemにするときの育て方の一例 - 2016-09-08 - ククログ

    Rubyでちょっとしたこと、例えばテキスト処理などをしたくてスクリプトを書くことはよくあります。そんなスクリプトは意外と再利用したくなるものです。しかし、作業用ディレクトリに適当なファイル名で保存していたりすると探し出すのは困難ですし、コマンドラインにワンライナーで書いたものだとそもそも残っていないこともあります1。別のPCでの再利用も、それらの保存方法では当然ながら不可能でしょう。 そこで、どこか整理された場所に保存しておいて再利用に備えたいのですが、保存先が問題になります2。そんなとき、私は次のような理由からgemRubyGems)にしてしまうことにしています。手元ですぐに実行できますし、別の環境へのインストールも簡単です。また、他のRubyプログラムへの組み込みもコピペせずに実現できます。もちろん他の人が使えるようになるというメリットもあるのですが、自分の用途に限っても長い目で見れ

    書き捨てのRubyスクリプトをgemにするときの育て方の一例 - 2016-09-08 - ククログ
    Nyoho
    Nyoho 2016/09/09
    参考になる。わしもわしわしスクリプトをgem化してみよう。
  • Mewで色付きでコミットメールを表示する方法 - 2015-03-17 - ククログ

    普通のフリーソフトウェアの開発のように、クリアコードでの開発では他の人のコミットを読むことは当たり前です。コミットを読むコストを下げるため、コミットメールを利用しています。 コミットメールを使うとコミットされたら随時メールで通知がくるので、push型の読み方になります。自分でそれぞれのリポジトリーをgit log・svn logするpull型の読み方に比べて、自分でそれぞれのリポジトリーのコミットを取得する手間がない分、コミットを読むコストが下がります。 クリアコードではGitのコミットメールはclear-code/git-utilsに置いているスクリプトで送信しています。このスクリプトはtext/plainとtext/htmlのmultipart/alternativeなコミットメールを送信することができ、text/htmlの方はdiffに色を付けるというような整形をしています。 Ema

    Mewで色付きでコミットメールを表示する方法 - 2015-03-17 - ククログ
    Nyoho
    Nyoho 2015/03/19
  • Rubyのテスティングフレームワークの歴史(2014年版) - 2014-11-06 - ククログ

    2014年12月にRuby 2.2がリリースされる予定です1。 Ruby 2.2にはRuby 1.9.1のときに外されたtest-unitというテスティングフレームワークが再びバンドルされる予定です。Rubyのテスティングフレームワーク周りに詳しくない人にはよくわからない状況でしょう。そこで、Rubyのテスティングフレームワークの歴史を説明することで状況を整理します。 名称の整理 この説明の中ではたくさんのテスティングフレームワークが登場します。似たようなものもあるため、最初にテスティングフレームワークの名称を整理します。この説明の中で登場する名称は次の通りです。 RubyUnit Lapidary rubyunit Test::Unit test/unit test-unit miniunit minitest RSpec 違いがわかりますか?ざっくり説明すると次の通りです。 RubyU

    Rubyのテスティングフレームワークの歴史(2014年版) - 2014-11-06 - ククログ
  • メタプログラミングをして割に合うかの判断基準:処理を1箇所に局所化できるか - 2014-01-16 - ククログ

    毎日他の人のコミットをながめる文化で生活していると、理由は浮かばないけど「ん?このコミットはなんか気になる」と感じるようになります。それは、新しいことを知ることができたコミットだったり、真似したくなるようなコードが入っているコミットだったり、なんかまずそうな気がするコミットだったり、様々です。 「ん?」と感じてコミットを見直してみても、何が気になったか自分でもすぐにわからない場合があります。そんなとき、気になったことをコミットした人に伝えるために、コミットへのコメントをまとめ始めます。「コミットした人に伝えるため」というように、他の人に伝えようとすることがポイントです。他の人に伝えるためにまとめようとすると、思いの外なにが気になったかまとまるものです。 今回は、メタプログラミングを使ってコードを整理したコミットで「ん?」と感じたときのことについて紹介します。このおかげで「メタプログラミング

    メタプログラミングをして割に合うかの判断基準:処理を1箇所に局所化できるか - 2014-01-16 - ククログ
  • 採用情報 - クリアコード

    ソフトウェア開発者採用 クリアコードのミッションは、自由なソフトウェアとビジネスを両立させることです。 この目標を実現するために、様々なソフトウェアの設計・開発・サポートに携わっていただきます。 クリアコードでソフトウェア開発者として働くと次のようなメリットがあります。 業務の成果を公開できる クリアコードでは、業務の成果をできるだけ自由なソフトウェアとして広く公開しています。 開発の成果がオープンになることで、技術者としてのキャリア形成に繋がるのはもちろん、自由なライセンスで公開するために依存ライブラリにも自由なソフトウェアを使うので、その調査や改修を通じて、他の人が書いたコードから学ぶ機会も多いのが特長です。

    採用情報 - クリアコード
    Nyoho
    Nyoho 2013/03/01
  • ifとreturnの使い方 - 2012-03-28 - ククログ

    はじめに わかりやすいコードを書くことはソフトウェア開発において大切なことです。では、具体的にわかりやすいコードとはどんなものでしょうか?その観点はいろいろなものがあります。その中で今回はifとreturnの使い方に注目します。 ifとreturn プログラミング言語とは、コンピューターの作業の処理手順を書くためにあります。その処理手順は複数にわかれています。その複数の処理手順を順番に実行していくことでコンピューターは作業をこなしていきます。 プログラミング言語にはいろいろな処理手順を書くためにifとreturnと呼ばれる機能があります。ある処理手順をある時だけ実行したい場合には、ifを使います。その時以外はその処理手順は実行しません。また、続きの処理手順があるがその時点で実行を中断したい場合には、returnを使います。続きの処理手順は実行しません。ifとreturnと組み合わせることで

    ifとreturnの使い方 - 2012-03-28 - ククログ
    Nyoho
    Nyoho 2012/03/29
  • Emacs実践入門 - おすすめEmacs設定2012 - 2012-03-20 - ククログ

    2012年3月にEmacsの入門書が技術評論社から出版されました。 https://amazon.co.jp/dp/9784774150024 インストール方法やファイルの開き方などから始まっていて初心者向けの始まり方になっています。それでは初心者向けなのかというとそうでもなく、中盤から後半はrequireしないと使えないElispを使った拡張方法の紹介になっています。 おそらく、初心者の人は1/3か1/2くらい進んだところで一度脱落するのではないでしょうか。逆に、ある程度知っている人は中盤から後半にかけて興味のある話題が増えていくことでしょう。脱落してしまった人は、しばらく前半の機能でEmacsを使って、慣れてきてから再挑戦するとよいでしょう。 後半の拡張方法の紹介部分では多くの方法を紹介するためか、1つ1つの方法については簡単に紹介する程度にとどまっています。よりつっこんだ使い方までは

    Emacs実践入門 - おすすめEmacs設定2012 - 2012-03-20 - ククログ
    Nyoho
    Nyoho 2012/03/21
  • 1