2021年12月1日のブックマーク (5件)

  • ファイルパーミッションでスロットがしたい - Qiita

    この記事は2021年Goアドベントカレンダー1日目の記事です。 ファイルパーミッションでスロットするコマンドラインツールを作りました。 経緯 ある日、サーバ上のとあるファイルの実行権限を変更する事がありました。 $ ls -lah sample_cmd -rwxr--r-- 1 jiro4989 jiro4989 0 Nov 21 15:14 sample_cmd* $ chmod 0777 ./sample_cmd $ ls -lah sample_cmd -rwxrwxrwx 1 jiro4989 jiro4989 0 Nov 21 15:14 sample_cmd* この chmod 0777って数字が3つ並んでるからパチスロみたいだなーーーと唐突に思いました。1 (パチスロやったことないですが) じゃあ、「ファイルのパーミッションをスロットで設定できたらテンション上がって地 味なサ

    ファイルパーミッションでスロットがしたい - Qiita
    cocoasynn
    cocoasynn 2021/12/01
  • DynamoDBで分散ロックを実現するsetddblockと現代版アクセスカウンター - KAYAC engineers' blog

    こんにちは。今年からアナリティクスエンジニアを名乗ろうとしてる池田です。 こちらは、KAYAC Advent Calendar 2021 1日目の記事です。 この記事では、setddblockという分散ロックを実現するためのツールと、その動作試験のために現代版アクセスカウンターを作成した話をします。 setddblock 皆様がcronなどで定期実行のスクリプトを実行する場合、同時実行されては困るものはどうしていたでしょうか? daemontoolsのsetlock というツールを使って同時実行を防いでいたことがある方も多いと思います。 http://cr.yp.to/daemontools/setlock.html このsetlock はローカルのファイルシステム上にロックファイルを作成し、ロックファイルの作成が成功したら指定されたコマンドを実行するというツールです。 例えば1分ごとに起

    DynamoDBで分散ロックを実現するsetddblockと現代版アクセスカウンター - KAYAC engineers' blog
    cocoasynn
    cocoasynn 2021/12/01
  • こんにちわ、5年前にお世話になっていた開発者のものです - Money Forward Developers Blog

    こんにちは マネーフォワードでVPoEをしています、渋谷(@ryoff) です。 この記事はマネーフォワードアドベントカレンダー2021🎄の1日目の記事です。 私は戻ってきた アドベントカレンダーなにか書こうかな、って悩んでたんですが、実は最近、VPoE業務をしながら、とあるプロダクトのチームリーダーも兼務し始めたので、その話を書こうと思います。 実はこのプロダクト、自分が2014年にマネーフォワードに入社後に立ち上げを経験したプロダクトでして、2016-2017年ぐらいに次期リーダーに託して自分は別の業務に移っていきました。 エンジニアのキャリアにおいて、1つのプロダクトに関わり続ける事はむしろ珍しく、数年で別の業務、もしくは、別の会社へと移っていくことも多いのではないかと思います。 過去自分が関わったプロダクトに戻ってくる、という経験は珍しいので、 過去自分が関わったコード・設計・チ

    こんにちわ、5年前にお世話になっていた開発者のものです - Money Forward Developers Blog
    cocoasynn
    cocoasynn 2021/12/01
  • 2021年スタディスト開発部に起きた5つの変化

    cocoasynn
    cocoasynn 2021/12/01
  • Goの構造体の使われ方の設計 | フューチャー技術ブログ

    Goで構造体を設計する場合、オブジェクト指向的な「型ごとの責務の分担」以外に、「どのように使われるものか」を考える必要があります。 ポインタで扱うのか? 値として扱うのか? 両方許可するのか? 値として扱える場合にimmutable(変更不可能)なオブジェクトとするのか、mutable(変更可能)なオブジェクトとするのか 値として扱える場合にゼロ値での動作を補償するかどうか 他の言語で言うと、C#の構造体とクラスの違い、C++のデフォルトコンストラクタあたりに頭を悩ませたことがある人にはおなじみかもしれませんが、Goでもいくつか考慮が必要になります。 ポインタ型として扱う必要があるケースまず最初に決断できる方針としては、ポインタ型でのみ扱うかどうかです。 内部にスライスやmap、ポインタなどの参照型な要素を持っていれば、基的にポインタ型でのみ扱う構造体になります。これらの要素を持っていた

    Goの構造体の使われ方の設計 | フューチャー技術ブログ
    cocoasynn
    cocoasynn 2021/12/01