ブックマーク / irof.hateblo.jp (8)

  • 脱ブランチファースト - 日々常々

    あるいは「プルリクエストをやめてみた」 チーム構成とかにもよるんだろうけど。Gitかつフォークされないプロダクトでの話です。OSSとかは全然話は変わります。 問題とアプローチ (2019-10-25T15:20 追加) 表出している問題と、ここでのアプローチを書いておきます。 ブランチファースト(造語) 「ブランチファースト」はこのエントリでの造語です。コードベースに変更を加える際に「まずブランチを作成する」から始めることを指します。 作業単位でブランチを作成、ブランチでコードを変更してプルリクエスト、レビューを経てメインライン( master ブランチ)に反映までがブランチファーストのスコープになります。 よくあるスタイルだと思いますし、ブランチだけ作成して変更せずプルリクエストを作成する拡張もありますね。 プルリクエストを挟まずにメインラインにマージするものは含みません。 ……名前微妙

    脱ブランチファースト - 日々常々
    kybernetes
    kybernetes 2019/10/26
    要は「ブランチを作らなくても共同開発ができるようにコードを保つことが,結果的にプロダクトを健全にすることにつながる」ということだと思うのだが,どこまで適用できるかは不明
  • 変更前をコメントアウトして残す習慣は未だ根強い (2012年現在) - 日々常々

    2020-03-11追記: タイトルの「未だ」がいつなのかわかりづらいので「2012年現在」を追加しました。 バカバカしい話ですが、ソースコードをSubversionなどでバージョン管理しているにもかかわらず、未だ修正前をコメントアウトして残す習慣は残っているところも多々あります。こういうのです。 // 2012/08/15 irof 修正開始 // hoge = fuga(1); hoge = fuga(2); // 2012/08/15 irof 修正終了 見た事無い方は、そのまま見ないままで生きていかれることを切に願います。 コメントの修正がある場合 2012/07/21にあった、SCMBCでこんなツイートがありまして。 この時点でお見せしたのはこんな感じ。 // 2012/07/21 削除開始 // // 間違ったコメント // 2012/07/21 削除終了 someMethod

    変更前をコメントアウトして残す習慣は未だ根強い (2012年現在) - 日々常々
  • 職業PGにわかるFizzBuzz - 日々常々

    なんかFizzBuzzが書けないPGがどーとか定期的に話題になってるけど、私に言わせれば説明の仕方が悪い。 こうすれば誰でも書ける。 これだから最近の若いもんは……。 GoogleDocsのスプレッドシート、方眼紙作るのに向いてませんね……。

    職業PGにわかるFizzBuzz - 日々常々
  • チームでフォーマッターを使うときのあれこれ - 日々常々

    (見やすいコードのために出来るたった一つのこと - 日々常々 の続きみたいなもの) 「フォーマッターを使わないなんてありえないよねー」とか思ってたけど、意外と使っていないプロジェクトは多いのかもしれない。思い返せば、私の経験上も多くのプロジェクトで使ってなかった。なので導入する時にあったあれこれを思い出しつつ書いてみる。 必ず同じ定義を使用する 必ず全員同じ定義でフォーマットしましょう。 個々人の好みはあるとは思いますが、それ以上に共通したものを使うことのメリットの方が大きいはずです。 これから導入する場合、まずはその言語で一般的っぽい定義を手に入れ、既存のコードをフォーマットしながら微調整するのがいいです。 なるべく早いうちに導入する 可能な限り早く導入しましょう。途中からの導入も可能ではあります(後述)が、それでもなるべく早期に導入しているほうが、余計なコストもかかりません。 何よりチ

    チームでフォーマッターを使うときのあれこれ - 日々常々
  • テストが間違ってたら? - 日々常々

    「テストが間違ってたらどうするんだ」 自動テストの話をするとよく言われます。テストが間違ってたらわからないじゃないか。手動テストであれば、注意深く目で確認していれば間違いに気づけると言う主張です。 「目で確認していれば気づける」のは間違いではありません。必ず気付けるわけではありませんが、十分な知識を持った人が、十分な集中力と責任感をもってエビデンスを確認すれば、誤りに気付ける可能性は高いと思います。 品質(主に機能性)を目的とした自動テストでも、それを行う必要があります。それがテストコードのレビューです。 手動テストの場合、テスト実施前に手順や確認項目のレビュー、実施中の確認、実施後のエビデンス確認と、人が確認するタイミング*1が三カ所あります。 これに対し自動テストの場合、テストが書かれた時のみ。実行中は勿論、実行結果の確認に注意はありません。ただ成功か失敗かだけなので。ならば、テストコ

    テストが間違ってたら? - 日々常々
  • 見やすいコードのために出来るたった一つのこと - 日々常々

    タイトルは釣りっぽいですけど、結構まじめ。 フォーマッターを使用すること。 これが全てです。「スペースがどうこう」とか「括弧の位置がどうこう」とかどうでもいいです。そんな美的感覚でかわるような枝葉の話に結論は出ません。 コードフォーマッターを使用してください。そのプロダクトを通して、統一された同じフォーマッターでフォーマットすること。コードはそれだけで格段に見やすくなります。個々人が好き勝手にやったり、気をつけたり、CheckStyleなどでの見た目の警告を処理したり……そんなのしてたら不統一で見難いコードにしかなりません。 個人個人での見やすさとかはあります。当然です。例えば変数代入のイコールの位置がそろってる方が見やすい人もいます。変数宣言は1行開いてた方がいいって人も、メソッド間は2行開いてた方がいいとか、賛同できませんけどそんな人も居ます。そう言うときは自分専用にフォーマットして、

    見やすいコードのために出来るたった一つのこと - 日々常々
  • プログラマになろう - 日々常々

    もうすぐ4月になると言う事で、時事ネタ。コの業界、特にエンタープライズなSIerやその協力会社なんかに就職される方向けに、夢や希望をなるべく潰さないつもりで書いてみる。 PGになってはいけない SIer用語でPGって言葉があります。あとSE、PL、PMとかありますけど、序盤は関係ありません。これらは契約形態は違うのですが、作業内容よりも主に単価で分けられます。で、PGは「末端作業員」と言う意味です。 PGはプログラマではありません。プログラマに失礼です。PGにプログラムは作れません。また、PGはコーダーでもありません。PGにコードは書けません。PGはSEの指示の元、似た事をしている既存システムのコードを切り貼りして、それっぽく動くものを作る下請け作業員でしかありません。そこに創造的な仕事は一切ありません。多くのPGは自らの意思か外部からの圧力によって、思考を放棄もしくは停止しています。PG

    プログラマになろう - 日々常々
  • Javaっぽいプログラマになる方に薦める5冊 - 日々常々

    いきなりぶっちゃけますが、5冊で足りる訳がありません。でもいきなり難攻不落の城を見せ付けられても困ります。数が多いとそれだけで「うわ、こんな読まないといけないの!?」と思ってしまうものです。なので、私がこれまで読んできたの中から5冊だけピックアップしてみました。ここに挙げたものが全てではありません。これらを読むことで次のに手が伸びるようになると幸いです。学習は継続しなければ意味がありません。だからこそスタート地点はしっかりした方がいいと思います。 ※プログラミングを全く知らない人は対象にしていませんので、悪しからずご了承下さい。最低限の文法等は修得していて、何かしらのシステム開発に携わっている、携わろうとしている、そういう方向けです。 達人プログラマー ソフトウェア開発は技芸です。技芸と言うことは達人が居ます。その域を知って目指すことで、プロフェッショナルな開発者になれると思います。意

    Javaっぽいプログラマになる方に薦める5冊 - 日々常々
  • 1