ブックマーク / soudai.hatenablog.com (23)

  • 具象と抽象の往復を私達はカンファレンスを通じて学んでいるんだ - PHPカンファレンス小田原編 - そーだいなるらくがき帳

    PHPカンファレンス小田原(以下 ぺちこん小田原)に行ってきた。 このブログはその熱量の高さを思い出しながら、小田原駅前のスタバで書いてる。 カンファレンスで話をしたこと 懇親会キーノートで内省を勝ち取る、そのためには具象と抽象を往復して具象化の引き出しと抽象化の概念の理解を深めようという話をした。 そのために日報や週報からふりかえりし、能力を獲得していく。という話。 でもこれ、カンファレンスに参加すること自体が具象と抽象のスキルを強く獲得するチャンスだなって思ったので、感想と合わせて書く。 ちなみに文章中に出てくる経験学習モデルの話はスライドで説明している。 speakerdeck.com 経験という具象を疑似体験として聴く カンファレンスに行くと色んなセッションを聴くことができる。 もちろんぺちこん小田原でも最高だった。 至極のセッションの中で自分の中のベストトークを選ぶとしたらたつき

    具象と抽象の往復を私達はカンファレンスを通じて学んでいるんだ - PHPカンファレンス小田原編 - そーだいなるらくがき帳
    kumokaji
    kumokaji 2024/04/14
  • キャッシュを活用するために必要な知識と勘所 - そーだいなるらくがき帳

    どうもキャッシュバスターズ、 id:Soudai です。 Cache(以下、キャッシュ)は特定の場面に置いて劇的な効果を発揮し、様々な問題を解決する反面、新たなコンポートやミドルウェアが追加され、複雑性が上がり、運用のレベルが上がるため、扱いに注意する必要があります。 キャッシュを活用することで、パフォーマンスの改善や負荷軽減が行われ、コンピュータリソースの最適化によるサーバコストの削減や、レスポンスの改善によるユーザエクスペリエンスの改善がされます。 反面、その劇的な効果に毒され安易に多用すると、サービスが強くキャッシュに依存してしまい、非常に壊れやすくなり、運用が難しくなってしまいます。これをWeb界隈では「キャッシュは麻薬」と比喩されて、戒められてきました。 そのためキャッシュを使わずにサービスが運用できるのであれば使わないに越したことはないのですが、ある一定以上の規模になった際にコ

    キャッシュを活用するために必要な知識と勘所 - そーだいなるらくがき帳
  • 私と誰かとPHPカンファレンス福岡 #phpconfuk - そーだいなるらくがき帳

    俺たちのPHPカンファレンス福岡が帰ってきた!ってことで福岡遠征全編の話を感想を書きます。 phpcon.fukuoka.jp 俺と id:uzulla とYou Tube 水曜日から入って5日間、ホテルが真横ってこともあって毎日uzullaさんとなんらかで会っていた。 飲みに行ったり、イベント行ったりと様々あったけど、特に毎朝一緒にコーヒーを飲みに行ってYou Tubeの収録をしていた。 意外とめちゃめちゃいい話をしているのでみんなも見てほしい。 soudai.hatenablog.com 朝早起きしてランニングする人もいたけど、こうやって散歩してコーヒー飲んで公園で雑談して1時間くらいで解散するのもなかなか楽しいのでオススメ。 カンファレンス以外の時間も色んな過ごし方ができるのでまだまだやりこみ要素がある。 あとそろそろスタバから案件来てほしい。 コーヒー1年間無料とかで良い。 俺とp

    私と誰かとPHPカンファレンス福岡 #phpconfuk - そーだいなるらくがき帳
    kumokaji
    kumokaji 2023/06/27
  • 自分を必要以上に過小評価することは、あなたを認めてくれている人にとっても失礼だよって話 - そーだいなるらくがき帳

    クライアント先の社内ポエムだけど必要になることがあったので転記した。 @nekoya さんにお願いしたらそちらも公開してくれた。:圧倒的感謝: @nekoya さんの話がとても良かったので僕もポエムを書いてみる。 zenn.dev 僕もその昔はもちろん駆け出しのエンジニアで自信が無くて自分を低く見積もったり、ある程度自信があっても 謙虚であることが美徳 と思って自分を敢えて卑下するなんてことをよくやっていた。 脳ある鷹は爪を隠す、なんていうけど確かに周囲に低能力だと思われていたほうが便利なシーンもあるにはある。 しかし少なくとも社会で働く上で 自分の能力を適切に評価する ことは自分にとっても会社にとっても重要なことだ。 その前提の上で、自分を過小に評価することは、あなたの仕事の成果に対して高評価し、認めてくれている人たちにとっては裏切り行為と言える。 例えばとても良い仕事をしたのにも関わら

    自分を必要以上に過小評価することは、あなたを認めてくれている人にとっても失礼だよって話 - そーだいなるらくがき帳
  • 表示順という属性を別テーブルに分ける - そーだいなるらくがき帳

    最近、この説明を複数回したので記事にする。 要約 普段は 今北産業 派なのだが、3行考えるのが面倒なため、今後は大人の表現を使う。 「今北産業」をスタートアップ語にすると「マジ価値サマリー」になるらしい ちなみにここだけの話ですが、大人語にすると「要約」になります pic.twitter.com/Q8SflvBX7c— ところてん (@tokoroten) 2022年1月24日 画面に表示したい順(以下、表示順)は振る舞いの属性なので分ける 似たような振る舞いに関わる属性は別テーブルにわけると良い 普通に正規化しましょうって話。 表示順をカラムを追加して表現する よくあるテーブルは画面情報と合わせて表示順カラムがあるパターン。 こういうテーブルを作って SELECT * FROM items ORDER BY display_order_number; で表示順に取り出すパターン。 表示順

    表示順という属性を別テーブルに分ける - そーだいなるらくがき帳
  • 第32回世界コンピュータ将棋選手権 2位でした #wcsc32 - そーだいなるらくがき帳

    ニ番絞りのインフラ担当 id:Soudai です。 最後の最後、dlshogiの神の一手、166手目△4九角を見逃したニ番絞りが大逆転負けして2位でした。 live4.computer-shogi.org 皆さんが今一番見たいヤツです #wcsc32 pic.twitter.com/YyfharxoCa— 48@💙💛 (@bleu48) 2022年5月5日 昨年は二次予選敗退からの2位と考えると大躍進ですが内容が内容だけに悔しいですね。 soudai.hatenablog.com 前回の反省を生かしたGCP そーだいさんは失敗から学ぶので去年の失敗は繰り返しません https://t.co/dOP65vDQjV— そーだい@初代ALF (@soudai1025) 2022年5月2日 前回は当日の朝に作ろうとして大失敗したので事前に作るように調整しました。 世界コンピュータ将棋選手権まで

    第32回世界コンピュータ将棋選手権 2位でした #wcsc32 - そーだいなるらくがき帳
  • 判断と決断の違いと決断のコツ - そーだいなるらくがき帳

    判断と決断の話の違いはこのツイートの通り。 判断の話で言うとぼくはそーだいさんがしてくれた「判断と決断は違う」という話がだいぶ実になっていて、「情報を集めれば理屈で答えが出せるのが判断、今は情報を集めることができない中で答えを出さないといけないのが決断、リーダーがやらなければならないのは決断」という話をかなり大事にしている— しんぺいくんさん (@shinpei0213) 2021年12月10日 決断のコツ 結論から言えば、決断のコツは失敗できるようにすることだ。 失敗できる状態なら決断することができる。 そして素早くアクションして、失敗のフィードバックを受け取ることで新しい決断をすることができる。 そーだいさんがぼくに教えてくれた二大大事なこと「判断と決断は違う」と「ロールバック可能なことはどんどん試せばいい、ロールバックが難しいことは慎重に」です— しんぺいくんさん (@shinpei

    判断と決断の違いと決断のコツ - そーだいなるらくがき帳
    kumokaji
    kumokaji 2022/01/04
  • Howだけ考えると複雑さを導入して仕事が増える - そーだいなるらくがき帳

    昨日、リモート雑談会の中で id:katzchang がめっちゃ良いことを言ってたので自分のためにも、みんなのためにもここに残す。 結論 作業を増やすことに敏感な人は少ない。 仕事と作業を同じと捉えていて、作業をすると仕事の進捗があると感じてしまう麻薬みたいなのはある。 それによって複雑さを導入して仕事、作業を増やす。 当に必要なの作業を減らしてビジネスを前に進めることに注力する。 それが仕事をするってことだよな。— そーだい@初代ALF (@soudai1025) August 13, 2020 ちゃんとWhyを意識して、問題の質を理解し、解決することで、不要な作業を減らし、仕事を減らしていくことがITを活用する上で肝要である。 仕事を増やさない これは当に大事。 例えばリリース手順書を作りました!ってなると作業の内容が変更になるたびに手順書のメンテナンスをしなければいけない。 そ

    Howだけ考えると複雑さを導入して仕事が増える - そーだいなるらくがき帳
  • 課題を管理して実行して達成するための手順 - そーだいなるらくがき帳

    今年、この話を何度か別々の人にすることがあってずっと纏めようと思っていたのだけど一年が終わってしまうので来年の自分のために今書いてしまう。 目新しいことは何一つ無いのだけど、大切なことだし、意外と社会人になってしまうと教えてもらえないことも多いみたいなのでここでまとめる。 表題のこと、つまりやりたいことを実現するために必要なことは、そんなに難しいことじゃなくて以下の条件を満たし、実行することが大事だ。 やりたいこと=課題をタスクに分解する タスクを実行できるだけのリソース(時間・お金・体力など)を割り当てる 実行する これだけなんだ。仕事だってなんだって一緒なんだけど、だけどこれを日常的に実現することが難しい。 だからどうやって実現していくか?って説明のために、自分がやってることを書く。 課題を整理する 仕事と作業は違うという話がある。 トヨタでは最初にそれを教わるらしい。 www.har

    課題を管理して実行して達成するための手順 - そーだいなるらくがき帳
    kumokaji
    kumokaji 2020/12/31
  • 独立して半年が経ったので振り返り - そーだいなるらくがき帳

    オミカレを退職して独立し、そして半年が経った。 2月に独立したが、新型コロナによっていろんなことが変わった影響も踏まえつつ、振り返りをする。 前回 何やってるの? VOYAGE GROUPとの関わり Classiとの関わり サブスレッドとの関わり ユースタイルラボラトリーとの関わり 残りの会社は? ウィルポートとの関わり 半年経ってわかったこと やはり働き過ぎる オフィスは必要 リモートワークで上手くいくには信頼貯金が必要 休息は大事 次の半年へ 前回 soudai.hatenablog.com 何やってるの? 多くの人の疑問に答える形でいうとWeb系事業会社のお手伝いをしてる。 具体的な仕事は以下のようなタスク。 チームメンバーとして実際の開発の関わる アーキテクチャの設計やレビュワー チームビルディングや改善のフォロー 何でも相談役 受託開発 これらを常時でいうと5社くらいでやってて、

    独立して半年が経ったので振り返り - そーだいなるらくがき帳
    kumokaji
    kumokaji 2020/08/06
  • 文系でもプログラマになれるのか - そーだいなるらくがき帳

    ブログについたコメントに対する自分なりの考えを書く。 soudai.hatenablog.com 私は文系の大学生ですが、プログラミング興味を持ちプログラマになりたいと考えています。 とても難しい事は理解していますが、プログラマに就職するのは やはり難しいでしょうか? もし可能性があるとしたら、就職先の探しかたや見分け方などの ことを教えてください? お願いします。 文系でもプログラマを始めとするソフトウェアエンジニアになれるか?の答えは なれる。 例えば自分の周りでも id:daiksy さんとか @shinpei0213 さんは文系出身のソフトウェアエンジニアだしプログラミングしている。 もっと言えば自分自身、高卒エンジニアなので学歴がネックでプログラマになれないということは無い。 だがソフトウェアサイエンスをしっかりと学んだ人からするとスタートラインは後ろである、という事実はあるし、

    文系でもプログラマになれるのか - そーだいなるらくがき帳
  • Batchの監視 ~ mkr wrapとhorensoを使いこなす - そーだいなるらくがき帳

    帰ってきたMackerel監視シリーズ *1です。 この記事は Mackerel アドベントカレンダー 2019 の14日目です。 qiita.com 昨日はmattnさんの Mackerel を使って10分でメトリクス監視を始める手順 - Qiita でした。 それでは14日目は Batchの監視 です。 MackerelにはBatchの監視をするための仕組みとして mkr のcommandのオプションの mkr wrap があります。 例えば次のようなワンライナーのcommandを実行すると失敗時にCRITICALを飛ばし、次回の成功時に自動的にalertを閉じてくれます。 # cat test.php #!/usr/bin/php <?php // 終了ステータスを1にする exit(1); # mkr wrap -a --note="testなのじゃ" -- ./test.php

    Batchの監視 ~ mkr wrapとhorensoを使いこなす - そーだいなるらくがき帳
  • CPUの監視 ~ mackerel-plugin-multicoreを読み解く - そーだいなるらくがき帳

    この記事は Mackerel プラグインアドベントカレンダー(全部CRE) の11日目です。 qiita.com soudai.hatenablog.com それでは11日目は mackerel-plugin-multicore です。 mackerel-plugin-multicoreはマルチコアのCPUを監視するためのプラグインです。 Mackerelではmackerel-agentが送るシステムメトリックスでもCPUの使用率を見れます。 しかし、個々のCPUの利用状況を見ることができません。そこでmulticoreプラグインの出番なのです! github.com インストールと設定手順 multicoreのプラグインは /proc/stat の中身を可視化してくれるプラグインです。 プラグインはプラグイン集として提供しているパッケージの mackerel-agent-plugins

    CPUの監視 ~ mackerel-plugin-multicoreを読み解く - そーだいなるらくがき帳
  • 障害から学ぶクラウドの正しい歩き方について考える - そーだいなるらくがき帳

    AWSで大きな障害が発生したこの機会に、自分がクラウドと正しく付き合っていくために必要なことを考える。 piyolog.hatenadiary.jp ちなみに稼働率 99.99% くらいを目指していくために必要な事を考える。 必要な稼働率を見極める 今回は 99.99% くらいを目指すと言ったが、実際に自分たちにとってどのくらいの稼働率を目指すか?ということはとてもとても大切だ。 幸い、今回自分は影響がなかったが、当に完璧か?と言われるとそうではない。 まず弊社の場合、マルチリージョンではないので東京リージョンが落ちたら落ちる。 これを許容できない場合に99.99%を目指せるか?というと正直厳しい。 しかしサイトの規模はそんなに大きくないのでデータサイズも現実的に転送出来る範囲で、コンポーネントも少なく、TerraformやAnsibleによって再構築しやすい状態は整っている。 そのため

    障害から学ぶクラウドの正しい歩き方について考える - そーだいなるらくがき帳
    kumokaji
    kumokaji 2019/08/24
  • 初心者をプログラマーにできるかどうか - そーだいなるらくがき帳

    blog.3qe.us これを読んだ感想文を書く。 結論、大量生産は無理やろとは思う。 少なくとも、「プロ」としてお金をもらって高品質なソフトウェアを0から書けるようになるにはセンスが必要だ。 そもそもそのレベルには私もなっていない。 ただ今あるモノになんとなく機能を追加するレベルに引き上げる術はもっとあると思う。 経験則でなんとなくその例をあげる。 ペアプロ OJTに近いとも言えるし、一番わかりやすい。 ここでペアプロはハローワールドまでの環境構築や実装までを各要素を説明しながらやることを指す。 まずはメンター側が目の前で順番にやってみる。 で次にメンティに同じことをさせる。 そうすると絶対詰まる。 Error: variable 'a' is undefined, line 24 こういうエラーが出るとまず英語を目の前で読む。 で理由を順番に説明して24行目を一緒に読む。 根気よく教え

    初心者をプログラマーにできるかどうか - そーだいなるらくがき帳
  • 正しいデータは正しい設計に宿る - そーだいなるらくがき帳

    って話をbuilderscon 2018でします。 builderscon.io 当日利用する資料はこちら。 speakerdeck.com 私のセッションはbuildersconの最終セッション。 皆さん素晴らしいセッションが並ぶ中で選択肢に迷ってる方も居ると思います。 だから先に公開しておきますのでこれをご覧になって、他のセッションに行くというのも有りだと思います。 あと事前に去年のトークを見てくれると当日はより理解が深まると思います。 同じ話を2回しても皆さんにとって勿体無いのでリファクタリングの細かい前提の話は当日はしません。 soudai.hatenablog.com 動画はこちら。 www.youtube.com これを見て、面白そうだなって思ったらぜひ、遊びに来てください。 僕が知ってるRDB設計、そしてRDBの歩み方を全てお伝えします。 あなたの新しい道の一歩目をご用意しま

    正しいデータは正しい設計に宿る - そーだいなるらくがき帳
  • バージョン違いのPostgreSQLをロジカルレプリケーション - そーだいなるらくがき帳

    PostgreSQL 10 から PostgreSQL 11へのロジカルレプリケーションを試した。 結論 簡単に出来る。 PostgreSQLのロジカルレプリケーションは元々バージョン違いを考慮してるのでPostgreSQL 10でのロジカルレプリケーションの設定と何も変わらない。 パブリッシャ(マスタ側)が10でサブスクレイバ(スレーブ側)が11を指定するだけ。 テーブル単位で出来るのでストリーミングレプリケーションとはそこも違う。 何が嬉しいか ロジカルレプリケーション自体のメリット・デメリットはここでは論議しない。 バージョン違いのPostgreSQLでレプリケーション出来るということはMySQLのようにレプリケーションでデータを複製しておき、フェイルオーバーさせることで停止時間を極小化してバージョンアップ出来るということ。 やり方 一番簡単なシンプルなやり方を記載する。 なお、前提

    バージョン違いのPostgreSQLをロジカルレプリケーション - そーだいなるらくがき帳
  • PostgreSQLの内部構造と監視の話 - そーだいなるらくがき帳

    Geeks Who DrinkとPostgreSQL Conference Japan 2017での資料です。 nulab.connpass.com PostgreSQL Conference Japan 2017 (2017-11-03) | 日PostgreSQLユーザ会 詳しく知りたい人は下記のがおすすめです。 ただし注意点は9.3相当なのでプロセスの仕組みがちょっと違います。 待望の新刊出ました!10系ベースなのでぜひ読んでみてください。 ※2018/10/07 追記 読み応えのある内容になったかなと思います。レベル感で言えばOSS DB Goldの試験出る範囲です。特に内部構造は覚えて置いて損は無いでしょう。 speakerdeck.com 内部構造の中で取り扱っていないところにAUTOVACUUM、TOASTとレプリケーションがあります。AUTOVACUUMはPostgre

    PostgreSQLの内部構造と監視の話 - そーだいなるらくがき帳
  • ユーザ情報を保存する時のテーブル設計 - そーだいなるらくがき帳

    はじめに ※この発言は個人の見解であり、所属する組織の公式見解ではありません 用法用量を守り、個人の責任で業務に投入してください 参考資料 2024/02/14追記 実際のテーブル設計の詳細はこちらを参考にどうぞ。 agilejourney.uzabase.com 要件 User情報を保存するときにどのようなテーブル設計を行うか 今北産業で頼む テーブルに状態を持たせず状態毎のテーブルを作る 状態が変わればレコードを消して別のtableに作る tableの普遍的な情報は別に持たせる 僕の考えた最強のDB設計 PostgreSQLをベースの雑なER図を作った。 これを元に話を進める。 table構成 users 親tableであり、すべてのユーザはここに属する。 基はINSERTのみでUPDATE、DELETEを考慮しない。 user_detail userに付随する詳細の情報がここに登録

    ユーザ情報を保存する時のテーブル設計 - そーだいなるらくがき帳
  • PHPerのためのWebサービスのモニタリングの話 - そーだいなるらくがき帳

    PHPerKaigi 2018でタイトルの登壇をしてきました。 phperkaigi.jp 登壇内容は下記の通りです。 speakerdeck.com 伝えたいことはスライドに大体あるし、勘所については過去のブログでもまとめています。 soudai.hatenablog.com 昨今のWebサービスは外部のサービスと連携し合うのは当たり前ですし、自分たちのサービスが違うサービスによって影響を受けたり、影響を与えたりすることも当たり前になっています。更にサービスは常に機能を追加・変更・削除することで進化しているのですからモニタリングの対象も常に変化しているはずです。ですのでWebサービスとしてどのようにあるべきかというところがモニタリングの勘所となります。もう少し説明するとサービスはServerに紐付いていないがシステム全体に影響するメトリックもありますよね?それも勿論モニタリングしましょう

    PHPerのためのWebサービスのモニタリングの話 - そーだいなるらくがき帳