e5x0のブックマーク (1,284)

  • 正しく評価される自己評価の書き方 - るさんちまん

    はじめに 会社員として働く上で評価は最も大きな関心事の1つでしょう。評価によって自身の職位や給料が決まるのでそれも当然です。 しかしながら、「納得感のある評価を受けられていますか?」と問うと明確にYesと答えられる人は稀でしょう。「成果を出したのに正しく評価されていない」と不満を持っていたり「評価は偉い人が勝手に決めるものだから…」と諦めている人もいるのではないでしょうか。少なくとも過去の私はそうでした。 そもそも、評価をどのように受けるべきか指導や研修を受けたことはありますか?私にはその記憶はなく、自身が評価者の立場になって初めて評価というシステムに真剣に向き合うことになりました。 評価の際に被評価者としてできることは、評価者に自分の成果や成長を適切にアピールすることです。そして、アピールの方法として最も確実かつ重要なのは伝わる自己評価を書くことです このエントリは、被評価者が評価者に正

    正しく評価される自己評価の書き方 - るさんちまん
    e5x0
    e5x0 2024/09/22
  • インデックスとは何?MySQL(InnoDB)とPostgreSQLのインデックスの違いとは?調べてみました

    はじめに こんにちは。calloc134 です。 前のハッカソンイベントで、UUID をプライマリキーに利用するかどうかの議論がありました。 結果的にはあまりパフォーマンス要件の高くないアプリケーションであったため、プライマリキーとして UUID を採用することにしたのですが、イベント終了後に気になったため、調査を行いました。 今回は、この調査の結果を元に、MySQL と PostgreSQL におけるインデックスの内部構造の違いと、UUID をプライマリキーにする際の問題についてまとめてみたいと思います。 インデックスの概要 インデックスとは インデックスとは、データベースのテーブルに対して、アクセスを高速に行うための指標となる構造のことです。 インデックスとは日語で索引ですが、まさに辞書の索引のように、アクセスにおいての手助けをしてくれます。 より具体的に解説すると、データベースにお

    インデックスとは何?MySQL(InnoDB)とPostgreSQLのインデックスの違いとは?調べてみました
    e5x0
    e5x0 2024/09/20
  • Goのsql.DBは、いつプールに戻しているのか

    はじめに 鍵を閉め忘れたような気がして心配になるように、リソースを後始末していたか心配になることはありませんか。 「習慣的にdeferでCloseしてるからリークしないはずたけど。あれ?トランザクションはしてなかったかも。ん?Closeないの!?」 Goの標準ライブラリの database/sql で中心となる sql.DB ではデフォルトでコネクションプールが使われるようになっていて明示的な操作は不要です。 ではいったい、どのタイミングでプールに返却されているのか、パターンを整理してみました。 準備 挙動の確認でINSERTやSELECTを実行するため、PostgreSQLに簡易なテーブルを作成しました。 CREATE TABLE shop ( id serial PRIMARY KEY, name text NOT NULL, created_at timestamp with tim

    Goのsql.DBは、いつプールに戻しているのか
    e5x0
    e5x0 2024/09/15
  • 普通の人が注文住宅で99点をとる方法

    資産シミュレーション編生活費を1年間記録して月平均を出す資産シミュレーションサイトかファイナンシャルプランナーに頼んで生涯のプランを計算する家に使える金額を一旦弾き出すイニシャルコストとランニングコストに分けて考える イニシャルコストは土地代や建築費やローンの初期費用などランニングコストは固定資産税や電気代、修繕費など何年住むか考えるハウスメーカー訪問編性能を確認する 電気代や冷暖房器具代のランニングコストに影響修繕費を確認する 特に外壁や屋根の修繕費は高くつくので何年持つのか要確認建築費を確認する 設備代が含まれていたりしなかったりするので注意2、3社に絞り込んでおく土地選び編ハザードマップを確認する表層地盤のゆれやすさマップを確認する 大地震の恐れがある場合は耐震等級3が必須(2では家にヒビが入る)ハウスメーカーにこの土地ならどんな家が建つかを確認する ハウスメーカーが近所に家を建てた

    普通の人が注文住宅で99点をとる方法
    e5x0
    e5x0 2024/09/12
  • MySQL 8.0 は遅くなってきてる?何故?(2)

    前のエントリの続きです。 念を押しておきますが、このブログの「内容は個人の考えであって、所属組織とは方針が異なる」と考えてください。 さて、MySQL 8.0.xの単スレッド性能がどんどん遅くなってきた要因は幾つかありそうなので切り分けていきたいと思います。 まずは、数年前のエントリ「やはりC++はCよりも遅い?」の影響をできるだけ正確に見積もりたいところです。実行バイナリの最適化レベルを合わせて比較して初めて、ロジックの劣化が判るわけです。コンパイラのオプションの範疇でできるだけ最大の最適化を行って計測したいところです。いくつか試した結果、clangのPGO+LTO が手軽な中では最も効果があったのでそれで同じ計測をしてみましょう。(GCCのPGO+LTO と clangのPGOのみ はこれよりも少し劣ったのでとりあえず。) (補足) PGO は、一旦ターゲットとなる処理をプロファイリン

    MySQL 8.0 は遅くなってきてる?何故?(2)
    e5x0
    e5x0 2024/09/11
  • 関数型プログラミングの設計テクニック

    書籍『関数型ドメインモデリング』や、原著者のサイト https://fsharpforfunandprofit.com/ に書いてある内容の紹介です。 2024/09/07 Learn Languages 2024 https://event.ospn.jp/odc2024/session/…

    関数型プログラミングの設計テクニック
    e5x0
    e5x0 2024/09/10
  • research!rsc: Coroutines for Go

    This post is about why we need a coroutine package for Go, and what it would look like. But first, what are coroutines? Every programmer today is familiar with function calls (subroutines): F calls G, which stops F and runs G. G does its work, potentially calling and waiting for other functions, and eventually returns. When G returns, G is gone and F continues running. In this pattern, only one fu

    e5x0
    e5x0 2024/09/07
  • "SRE" doesn't seem to mean anything useful any more

    This seems to be a thing now: someone finds out that you worked as an SRE ("site reliability engineer", something from the big G back in the day) somewhere, and now all you're good for is "devops" - that is, you're going to be the "ops bitch" for the "real" programmers. You are the consumer. They are the producer. They squeeze one out and you have to make it sing and dance. You keep things running

    e5x0
    e5x0 2024/09/06
  • C言語1000行でテキストエディタを作るチュートリアルをやった

    結果的に1200行を越えましたが。 kilo 成果物はこれ↓ 参考サイトはこれです↓ インスパイア元↓ 感想 C言語は10年ぶりくらいに書いた 進めていくうちになんとなく思い出すことができた 最初にちゃんと授業で学んだ言語なので懐かしく思った Cに出会っていなければプログラミングしてなかったかもしれないので感慨深い しかしこのレベルのメモリ管理は正直たいへん 「この関数で確保したメモリはこっちの関数で開放されるので問題ありません」みたいな この調子でやっていったらバグる未来しか見えない 1000行・1ファイルというコンセプトは良いのだがファイル分けて管理したいナ〜〜と思った 配列や文字列の操作、メモリ管理がやりやすい別の言語で書き直したい Cを書くの大変だな…という感想を持った 速さはともかく他の言語で書きたい もっとimmutableに… お手よりも行数が増えた 1行のif文などでもブ

    C言語1000行でテキストエディタを作るチュートリアルをやった
    e5x0
    e5x0 2024/09/05
  • 初心者がプログラミングを学ぶときに最も効果的な方法は「写経」だと思う|shi3z

    プログラミングの勉強方法で最も効果がない方法は「写経」です。コードを記憶しても無駄です。実際のプログラミングでは記憶にないコードを作り出さなければいけないからです 「写経」はタイピング速度の向上やキーワードを覚える効果はあるかもしれませんが、肝心のプログラミングには役に立ちません — Koichi Nakashima (@ko1nksm) September 3, 2024 こういうエントリを見かけたので。 僕は1990年代からプログラミングを人に教える仕事をしています。最初は中学の時に技術家庭科の授業を先生から任されて同級生にプログラミングを教えることから始まりました。その後、色々な方法を試しましたが、結論としてプログラミング初心者は写経した方が結局は上達が速いと今は考えています。 それが特に強く感じられたのは2015年頃から色々な人にAI関連のプログラミングを教え始めた頃です。 AI

    初心者がプログラミングを学ぶときに最も効果的な方法は「写経」だと思う|shi3z
    e5x0
    e5x0 2024/09/05
  • Interview Preparation Guide: Learning How to Learn

    As a dev, learning is one of the most wanted skills as new things keep coming out. You will need this during the job-hunting process to relearn a lot of things learn how to tell your own stories learn how to interview and more.... But do you ever wonder how do we learn at the best? To learn that you need to learn how to learn (yeah kind of recursive, but I promise this is not an infinite loop). Th

    Interview Preparation Guide: Learning How to Learn
    e5x0
    e5x0 2024/09/01
  • ソースコードをリポジトリ丸ごとLLMに読んでもらう方法

    はじめに ソースコードをLLMに読んでもらうとき、単一ファイルだと楽なのですが、GitHubのリポジトリのように複数ファイルから構成されるプロジェクトだと困ってしまいますね。 リポジトリごとLLMに読んでもらえるようにいい感じにテキスト化できると良いですね。そんなソフトがありました。しかも2つ。 両方ともほとんどコンセプトは同じです。特に後者のgenerate-project-summaryは使い方も含めて、自分のやりたいことが、すでに開発者の清水れみおさんが以下の記事にまとめていました。 なので、あんまり書く必要ないのですが、せっかくなのでgpt-repository-loaderの使い方と、出力したファイルの別の活用方法について書いてみたいと思います。 gpt-repository-loaderでリポジトリをテキストに変換 使い方はREADMEに書いてあります。シンプルなソフトなので、

    ソースコードをリポジトリ丸ごとLLMに読んでもらう方法
    e5x0
    e5x0 2024/08/31
  • 障害対応を属人化させない。「全員インシデントコマンダー」体制を根付かせた、山本五十六の格言【NewsPicks SRE 安藤裕紀】 | レバテックラボ(レバテックLAB)

    TOPインタビュー障害対応を属人化させない。「全員インシデントコマンダー」体制を根付かせた、山五十六の格言【NewsPicks SRE 安藤裕紀】 障害対応を属人化させない。「全員インシデントコマンダー」体制を根付かせた、山五十六の格言【NewsPicks SRE 安藤裕紀】 2024年8月26日 ユーザベース NewsPicks事業 SREチームリーダー 安藤 裕紀 大手SIerで10年半エンジニア/アーキテクトとしてアプリケーション開発、インフラ構築、クラウド活用コンサルティングなど大企業の技術支援を行った後、2021年10月に株式会社ユーザベースに入社。プロダクト開発組織のSREチームでインフラや開発基盤を担当。シニアエンジニア、テックリードを経て、チームリーダーに。2024年からはプラットフォームエンジニアリングのグループマネージャーも兼務。 X Docswell GitHub

    障害対応を属人化させない。「全員インシデントコマンダー」体制を根付かせた、山本五十六の格言【NewsPicks SRE 安藤裕紀】 | レバテックラボ(レバテックLAB)
    e5x0
    e5x0 2024/08/31
  • 最強のクエリビルダ「kysely」の紹介 ~薄いORMを探して~

    はじめに こんにちは、畑田です。 最近、RDBを使用しているプロダクトをリプレイスする機会がありました。 このプロジェクトの目標は今現在の使用や実装方針をできるだけそのままに、インフラと技術だけをリプレイスするというものでした。 もちろん、インフラや技術を刷新するということはその上に乗るアプリケーションの実装にも必ず影響を及ぼします。その中で出来るだけ現状の仕様に寄せる試みを行いました。 元のプロジェクトPHPで書かれており、DBのへの通信においても、文字列とsprintfなどを使用し、生のSQLを書いてpg_queryで実行していました。 私はこれを再現する最も安全な方法を探しました。 Prismaなどを用いたactive record形式のORMを使用するより、SQLに近い書き味のクエリビルダーを求めてkyselyに辿り着きました。 あまり情報が第三者からの情報が出てきていないように

    最強のクエリビルダ「kysely」の紹介 ~薄いORMを探して~
    e5x0
    e5x0 2024/08/28
  • エンタープライズJavaで使えるORM「uroboroSQL」まとめ(リバイバル) | フューチャー技術ブログ

    記事は「珠玉のアドベントカレンダー記事をリバイバル公開します」企画のために、以前Qiitaに投稿した記事を7年ぶりに改訂したものです。 筆者自身もコミッターとして関わるJavaDB永続化ライブラリ「uroboroSQL」の紹介です。 https://github.com/future-architect/uroborosql はじめにエンタープライズシステム開発では、まだまだJavaで作られていることが多く、システム特性上、やはりRDBを利用するケースが多いですよね。 Amazon AuroraやCloud Spannerといったプロダクトに注目が集まるのも、時代の変化とともにDBも並列分散型でスケールアウトはしたいけれども、トランザクションもSQLも使いたいというCAP定理を覆す特徴を持っていることが要因だと思います。 2016/12/24にクリスマス・イブにCockroachDB

    エンタープライズJavaで使えるORM「uroboroSQL」まとめ(リバイバル) | フューチャー技術ブログ
    e5x0
    e5x0 2024/08/28
  • サイバーエージェントはHBaseからTiDBへ移行、大規模データ処理基盤における検証結果を明かす

    性能と運用面での変化はどれくらい? 移行における要点整理 記事公開日:2024年8月27日 2024年7月3日に開催された「TiDB User Day 2024」では、オープンソースのNewSQLデータベース「TiDB」が、実際にどのように使われているか、ユーザーによる事例などを通して紹介された。サイバーエージェント グループIT推進部 データプロダクトユニットの渡邉敬之氏からは、「大規模データ処理基盤におけるHBaseからTiDBへの移行事例」と題して、HBaseの課題と移行先となったTiDBの選定理由が明かされた。さらにHBaseからTiDBへの移行方法、移行後の性能と運用面での変化なども紹介してくれた。 老朽化したHBaseのデータ処理基盤をTiDBに移行 渡邉氏が所属するグループIT推進部のデータプロダクトユニットは、「データの力で事業成長を加速させる」をミッションに掲げている

    サイバーエージェントはHBaseからTiDBへ移行、大規模データ処理基盤における検証結果を明かす
    e5x0
    e5x0 2024/08/28
  • 音を鳴らす

    JavaScriptで音を鳴らすことができます。ご自分の耳が何Hzまで聞こえるか試してみてください(23000Hzまで聞こえたというかたがおられたので24000Hzまでに増やしてみました)。 1000 Hz Stop 4000 Hz 8000 Hz 10000 Hz 11000 Hz 12000 Hz 13000 Hz 14000 Hz 15000 Hz 16000 Hz 17000 Hz 18000 Hz 19000 Hz 20000 Hz 21000 Hz 22000 Hz 23000 Hz 24000 Hz 仕組みはソースを見てください。ほぼChatGPT 4oに書いてもらいました。最初はボタンの数が少なかったこともあってChatGPTはボタン一つ一つに id を付けていたのですが、ボタンの数が増えると厄介なので、this を使ってくださいと指示したら、こうなりました。

    e5x0
    e5x0 2024/08/26
  • SQL Has Problems. We Can Fix Them: Pipe Syntax In SQL

    Philosophy We strive to create an environment conducive to many different types of research across many different time scales and levels of risk. Learn more about our Philosophy Learn more

    e5x0
    e5x0 2024/08/25
  • Haystack

    An IDE built on top of a canvas, Haystack takes care of the tedious and confusing parts of coding for you

    Haystack
    e5x0
    e5x0 2024/08/25
  • Linuxサーバーの最適化: vmstatとiostatを活用した性能分析と対処法 - Qiita

    Linuxサーバーの最適化: vmstatとiostatを活用した性能分析と対処法 0.目的 インフラ開発者として、必須な性能分析を身につけることを目的としています。 カーネルパラメータをチューニングをする際に性能分析を前提とし、分析結果からチューニングしていきますが、具体的な指標というものが少ないので参考になれば幸いです。 基的なvmstatの使い方については、ちょっとググればいくらでも出てくるので割愛します。 「Linuxカーネルパラメータのチューニング&設計」でロードアベレージが高い状態にある場合、次のアクションとしてCPU使用率の確認が必要となりますので、vmstatの結果分析および対処法について深堀していきます。 よって、vmstatの結果分析と対処法を理解すると性能試験を実施した際のその対処法とカーネルパラメータによるチューニングする対象が理解できるかと思います。 1.パフォ

    Linuxサーバーの最適化: vmstatとiostatを活用した性能分析と対処法 - Qiita
    e5x0
    e5x0 2024/08/24