ブックマーク / zenn.dev/takaha (8)

  • AIにお任せして、Gitコミットメッセージを書かなくなってしまった。

    前提 お使いのPCにNode.jsがインストールされていることが前提条件になります。 インストールされていない方は、拙著で恐縮ですがこちらをご参照ください。 方法 aicommitsを利用します。 事前にOpenAIAPIKeyを取得する。 npm install -g aicommits aicommits config set OPENAI_KEY=***********************

    AIにお任せして、Gitコミットメッセージを書かなくなってしまった。
    toshikish
    toshikish 2023/06/09
  • 『Sustainable Web Development with Ruby on Rails』はRails使ってるなら絶対面白いと思う

    『Sustainable Web Development with Ruby on Rails』はRails使ってるなら絶対面白いと思う David Bryant Copelandの『Sustainable Web Development with Ruby on Rails』を読んでいますが、このめちゃめちゃ面白いですね。 Railsの設計で悩んだことのある人なら絶対読んで損はないというか、共感したり反発したりにやにやしたりで楽しめると思います。RailsというかWebアプリ開発の歴戦の勇士(正直あまり若くなく、つらい経験を重ねてきた生き残り的な人)が語るベストプラクティス感があります。 書の構成 大きく3部構成です。 Introduction その名の通り導入です。書の目的、Railsのアーキテクチャの紹介と、ビジネスロジックの話など。 「Sustainable」とは何か? とい

    『Sustainable Web Development with Ruby on Rails』はRails使ってるなら絶対面白いと思う
    toshikish
    toshikish 2022/05/20
  • Rubyアンチパターン: なんでもHash

    ソフトウェアの内部では、データを様々な形に加工しつつ、あちこちに受け渡して再利用します。そのためのデータ構造として、RubyではHashクラスのオブジェクト(他の言語ではMapだったりDictionaryだったり連想配列だったりします)を使うことはよくあります。 単体の数値や文字列ではなく、それらを組み合わせたデータを扱う際には、Hashオブジェクトが便利です。 しかし、あらゆる場面でHashを駆使しようとすると、利便性よりも弊害が大きくなります。 典型的な症状 あちこちで同じだったりちょっと違ったりするHashオブジェクトを引き回していたりします インスタンス変数が少なく(あるいはまったくなく)、その代わりとしてメソッド引数のHashオブジェクトにいろんなデータを渡していたりします 1つのHashオブジェクトのキーとして、文字列やシンボル、さらにはそれ以外のクラスのオブジェクトが使われて

    Rubyアンチパターン: なんでもHash
    toshikish
    toshikish 2022/04/11
  • docker-mailserverをさくっと立ち上げる(令和4年2月版)

    はじめに これまでG Suiteでメールアカウントの運用をしてきました。独自ドメインも使えるうえに無償だったのでとても重宝していましたが、無償利用も2022年5月で終わりそうな状況です(2022年2月時点)。 このご時世、うかつにメールサーバを自前で建てるのも大変そうだし、どこかによさそうなコンテナイメージはないものか探したところ、docker-mailserverが全部入り&お手軽でよさそうでした。 令和4年2月版として、ソースを漁りながら利用方法調査したので、まとめておきます。 docker-mailserver これはなにもの? メール送受信に必要なものがまるっと一式入った便利なイメージです。元はtvial/docker-mailserverという名前だったようです。 pros さくっとpostfix, dovecotを立ち上げられる fail2ban, DNSBLもオプションで有効

    docker-mailserverをさくっと立ち上げる(令和4年2月版)
    toshikish
    toshikish 2022/02/12
  • 2021年の「オブジェクト指向」を考える

    きしださんが先日もたのしいお題を投下されていました。 出遅れましたがこのネタについて少し掘り下げてみます。 念のため個人的なスタンスをあらかじめ表明しておくと、オブジェクト指向に対してはそれなりに好意的ですが、別に時代の最先端だとかソフトウェア開発に必須の知識というほどではない(でも知っておくと便利というか、知らないと不便なこともあるかもしれないのでわざわざ避けるのはおすすめしない)というくらい温度感です。 オブジェクト指向 is 何 そもそも「オブジェクト指向」という言葉自体、座りの悪い言葉です。 意味が明確なのは「オブジェクト指向プログラミング(OOP)」、「オブジェクト指向プログラミング言語(OOPL)」、「オブジェクト指向設計(OOD)」「オブジェクト指向分析(OOA)」といった「オブジェクト指向なんとか」の方で、それらをふわっとまとめた(ような気がする)単語が「オブジェクト指向」

    2021年の「オブジェクト指向」を考える
    toshikish
    toshikish 2021/10/10
  • 開発者向けのテストの本いろいろ

    なんかおすすめなテストないですかねえ? と、某所で(テストをメインの業務にするのではなく)普通に開発をされている方に聞かれたので、 プログラミングは普通にできる テストについては学んだことはない とはいえテストエンジニアになるわけではなく、開発者としてテストが知りたい という人向けに、2021年現在で普通に入手できるをいくつか挙げてみます。

    開発者向けのテストの本いろいろ
    toshikish
    toshikish 2021/02/17
  • MatzにrejectされたES6風HashリテラルをこっそりRubyで使う

    ES6風Hashリテラルとは ここで言う「ES6風Hashリテラル」というのは、ES6(ES2015)でobject property shorthandとして導入された省略記法です。 最近のJavaScriptを使っている人なら見慣れた記法ですね。Rubyでもこういう風に書けると便利そう、と思う人はもちろんいるわけで、この記法を取り入れるべく過去にもbugs.ruby-lang.orgで提案がありました。が、残念ながら今のところrejectされたままです。 Feature #11105 ES6-like hash literals https://bugs.ruby-lang.org/issues/11105 Feature #15236 add support for hash shorthand https://bugs.ruby-lang.org/issues/15236 似た記法

    MatzにrejectされたES6風HashリテラルをこっそりRubyで使う
    toshikish
    toshikish 2020/10/12
  • 著名なオープンソースRailsアプリのapp/以下を見る

    Railsにおける app/ とは app/はRailsのアプリケーション用ディレクトリで、普通のRailsアプリケーションでは、この下にmodels,controllers,viewsを含めた様々なディレクトリが作られます。 基的には新しいディレクトリを追加する必要はないのですが、アプリケーションが複雑になると、Railsを拡張するべくここにアプリケーション固有のディレクトリを作って、その下に関連するファイルを置くことがあります。 中には、servicesやserializersのように、多くのRailsアプリケーションで見られるものもあれば、完全にアプリケーション独自のものが作られることもあります。また、アプリケーションによっては独自のディレクトリは一切作らないものもあれば、大量に作るものもあります。それぞれアプリケーションの開発方針によるものです。 記事では、比較的有名なOSSの

    著名なオープンソースRailsアプリのapp/以下を見る
    toshikish
    toshikish 2020/10/11
  • 1