タグ

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

  • おすすめ.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 - ククログ
    atsushifx
    atsushifx 2023/04/03
  • 「雑に立てられるissue」で疲弊しないためにOSS開発者ができること - 2021-12-04 - ククログ

    要約:OSS開発プロジェクト運営者の側でとれる対策はいくつかあるよ。issueは基準を設けてどんどん閉じてしまおう。GitHubならActionsで自動化も簡単だよ。自動テストを整備するように、必要なコストだと思って割り切るといいよ。 結城です。 GitHub Actionsに関することならなんでもありらしいアドベントカレンダーとのことでしたので、ほんのちょっとかすっているだけではありますが、4日目にエントリーさせて頂きます。 「軽率に寄せられる報告や要望がOSS開発者を疲弊させる」という問題について語るOSS開発者は少なくないです。私の観測範囲内では最近も、イシュートラッカーにissueを立てようとすること自体に待ったをかける記事1や、「要望には初手で『なぜ自分で実装しない?』と訊ね、次に『継続的にメンテナンスしてくれるの?』と訊ねるドライな対応がおすすめ」という趣旨に受け取れる発言など

    「雑に立てられるissue」で疲弊しないためにOSS開発者ができること - 2021-12-04 - ククログ
  • ノータブルコード2 - 斬新なコメントでコードの可読性を高める - 2020-01-15 - ククログ

    この新しいコーナー「ノータブルコード」では、私たちが開発の折々に目にした興味深いコードをご紹介しています。世の中の実際のプロジェクトから、興味深い素材を肩の凝らない形でご紹介していきたいと思いますので、楽しみにしていてください。 Brubeck - 創造的なコメントで見通しを良くする 第2回目に紹介するのは、GitHubが開発したStatsD互換サーバー Brubeck からの一コマです。 int brubeck_statsd_msg_parse(struct brubeck_statsd_msg *msg, char *buffer, char *end) { *end = '\0'; /** * Message key: all the string until the first ':' * * gaugor:333|g * ^^^^^^ */ { msg->key = buffer

    ノータブルコード2 - 斬新なコメントでコードの可読性を高める - 2020-01-15 - ククログ
    atsushifx
    atsushifx 2020/01/18
    自分だったら、BetterCとしてC++を使ってインライン関数使うかな。プロダクトにもよるがC#でもいいかも
  • 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 - ククログ
    atsushifx
    atsushifx 2014/11/07
    Rubyのテストコード自体がレガシー化してる。破綻する前にテストコードを直した方がいいと想うけど難しいんだろうな
  • メタプログラミングをして割に合うかの判断基準:処理を1箇所に局所化できるか - 2014-01-16 - ククログ

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

    メタプログラミングをして割に合うかの判断基準:処理を1箇所に局所化できるか - 2014-01-16 - ククログ
    atsushifx
    atsushifx 2014/01/17
    メタプログラミングというよりはリファクタリングしすぎとかデザインパターン適用しすぎとかの問題に見える。こういうのはバランスが大事で、文章などにアウトプットすることが自分の考えを明確にする
  • いいアドバイスをもらうための相談の仕方 - 2012-12-05 - ククログ

    物事の進め方や問題の解決の仕方などを決めるとき、他の人に相談します。しかし、いざ相談してみると、うまく相談できずに、もどかしい思いをしたり、相談の時間がいたずらに長くなって相談相手に迷惑をかけてしまったりすることがあります。うまく相談できていないときは、自分の状態をうまく伝えられず、相談相手を困らせたり、役に立たないアドバイスをもらったりします。 相談する目的はいいアドバイスをもらうことです。「いいアドバイス」とは、「自分の状態を良くするのに役立つアドバイス」です。いいアドバイスをもらうと、相談した自分の状態をいい方向にもっていくことができるからです。いいアドバイスをもらうためには、相談の仕方に気をつける必要があります。今回は、他の人に相談していいアドバイスをもらうための相談の仕方について説明します。 いいアドバイスをもらうためには伝える情報に気をつける いいアドバイスをもらうためには、相

    いいアドバイスをもらうための相談の仕方 - 2012-12-05 - ククログ
    atsushifx
    atsushifx 2012/12/09
    レビューなどにも通じる
  • クリアなコードの作り方: 余計なことを書かない - 2012-05-21 - ククログ

    FileUtils.mkdir_p assets_path unless FileTest.exist? assets_path このコードを元に、「余計なコードを書かない」ことがどうして大事かを説明します。 余計なコード まずは、どこが余計なコードなのかを考えてみましょう。このコードではFileUtils.mkdir_pとFileTest.exist?メソッドを使っています。 FileUtils.mkdir_pは引数で指定されたディレクトリがなかったら親ディレクトリも含めて作成するメソッドです。すでにディレクトリが存在した場合は何もしませんし、エラーにもなりません。mkdir_pというメソッド名はmkdir -pコマンドが由来でしょう。 FileTest.exist?は引数で指定されたファイルが存在したら真を返すメソッドです。 このコードではunless FileTest.exist?の

    クリアなコードの作り方: 余計なことを書かない - 2012-05-21 - ククログ
  • The Art of Readable Code - 2012-03-05 - ククログ

    2011年11月に「理解しやすい、読みやすいコードはどのように書けばよいか」という内容のがO'Reillyから出版されました。(英語です。) https://amazon.co.jp/dp/9780596802295 英語なので読む人はいないでしょうが紹介します。読みやすい英語で書かれているので、「読みやすいコードだけではなく英語の勉強にも興味がある」という人にはちょうどよいでしょう。ページ数も200ページにいかないぐらいとコンパクトにまとまっています。 さて内容ですが、第一部が「SURFACE-LEVEL IMPROVEMENTS」です。見た目をよくしようという話です。具体的な内容は読んでもらうとして、まず、見た目のよさから入っているところが「わかっている感」をだしていますね。 読みやすいコードにするテクニックはいろいろありますが、まずは見た目が整っていないと、どんなにテクニックを駆使

    The Art of Readable Code - 2012-03-05 - ククログ
    atsushifx
    atsushifx 2012/04/18
    ebookで半額だったので買ったのにまだ読んでない。ちなみに変数名が読みやすいようにといった感じのプログラミングリテラシーの基礎が書いてあるので初心者にこそ読んでほしい
  • コミットメッセージの書き方 - 2012-02-21 - ククログ

    はじめに 「分かりやすいコードを書く」、「コードと一緒にテストも書く」等はソフトウェア開発において大切なことです。しかしそれと同じくらい大切なことして「分かりやすいコミットメッセージを書く」があります。これはあまり着目されていなく、見過ごされていることです。 今回は、コミットメッセージの分かりやすさの大切さ、そして、分かりやすくするための書き方を説明します。 コミットメッセージとその大切さ バージョン管理システムとコミット 現在、ほとんど全てのソフトウェア開発ではSubversionやGitなどのバージョン管理システムを使っています。バージョン管理システムを使うことによるメリットというのは、ソフトウェアの変更が記録されていくことにあります。 具体的なメリットは3つあります。 ソフトウェアの調査がしやすくなることです。現時点でのコードと、そして変更の履歴とを組み合わせることで、それらから非常

    コミットメッセージの書き方 - 2012-02-21 - ククログ
    atsushifx
    atsushifx 2012/02/22
  • groongaで高速な位置情報検索 - 2011-09-13 - ククログ

    groongaのドキュメントにも位置情報検索について書かれているのですが、情報の更新が追いついていないため情報が不足しています。そこで、ここに現状に合わせたgroongaの位置情報検索についての情報をまとめておきます。なお、ここにまとめた内容もドキュメントに反映させる予定です。 できること groongaには位置情報を用いた検索機能がついています。位置情報を用いた検索では索引を利用するため、全文検索と同じように高速に検索することができます。ただし、PostGISやMySQLのように1線や面などもデータとして保持できるというわけではなく、点のみをデータとして保持できます。よって、groongaにできることは以下の通りです。 指定した四角の中に含まれている座標を持つレコードを検索する。 指定した円の中に含まれている座標を持つレコードを検索する。 座標間の距離を計算する。 ある座標からの距離が近

    groongaで高速な位置情報検索 - 2011-09-13 - ククログ
    atsushifx
    atsushifx 2011/09/21
  • おすすめzsh設定 - 2011-09-05 - ククログ

    他の人がzshを使っているのを見ていると、「もっと便利に使えるのに」と、もやっとしたり、「え、その便利な機能ってなに?」と、発見があったりします。だれかに「この設定をすると便利ですよ」と話しやすくするために、今のzshのおすすめ設定をここに記しておきます。 もし、Emacsも使っている場合はおすすめEmacs設定もどうぞ。 ディレクトリ構成 長年漬け込んできたzshの設定がそこそこの量になっているので、以下のようなディレクトリ構成にして分類しています。主に、zsh標準機能の設定と追加パッケージの設定を分けるためにこうしています。 ~ ├── .zshrc # シェルを起動する毎に読み込まれる。 │ # ~/.zsh.d/zshrcを読み込んで │ # 標準機能の追加設定を行う。 ├── .zshenv # ログイン時に一度だけ読み込まれる。 │ # ~/.zsh.d/zshenvを読み込ん

    おすすめzsh設定 - 2011-09-05 - ククログ
    atsushifx
    atsushifx 2011/09/05
  • 1