タグ

ブックマーク / qiita.com (191)

  • MySQLでわざとデッドロック発生させて挙動を確認してみた - Qiita

    概要 RDB(リレーショナルデータベース)を運用していると、複数のトランザクションが同じデータに同時アクセスしようとする場合に「デッドロック」が発生することがあります。デッドロックとは、あるトランザクションが必要とするリソースが別のトランザクションによってロックされ、さらにそのトランザクションも他のリソースのロック解除を待っているため、互いに進行できなくなってしまう状態を指します。

    MySQLでわざとデッドロック発生させて挙動を確認してみた - Qiita
    rx7
    rx7 2024/11/10
  • Web系エンジニア最低限入れておくべき Chrome 拡張機能3選 - Qiita

    概要 Web ブラウザではすっかりお馴染みの Google Chrome ですが、開発者ツール(DevTools)だけでなく、拡張機能にも導入すると非常に便利なものがたくさんあります。 その中でも、Web系の開発をするエンジニアなら、是非入れておきたいオススメの Google Chrome 拡張機能について紹介します。 尚、いずれも無料で利用可能です。 IT エンジニア界隈では、既にどれも有名なものばかりですが、これから Web 系の開発をする方は是非お試しください。 当はもっとたくさんオススメしたい拡張機能がありますが、ひとまず今回は3つ紹介します。 Wappalyzer(ワッパライザー) 「Wappalyzer(ワッパライザー)」は、現在表示している Web ページで使われている技術(言語、フレームワーク、プラットフォーム、分析ツール、その他のサービス)を一覧表示してくれる拡張機能

    Web系エンジニア最低限入れておくべき Chrome 拡張機能3選 - Qiita
  • エンジニアにも知って欲しいChatGPT基本テクニック - Qiita

    はじめに ChatGPTブームがひと段落した感がありますが、周りのエンジニアChatGPTを活用している姿をあまり見みません。 基的なテクニックを理解すれば、エンジニアこそChatGPTを活用できると思うので、普段使用しているテクニックをいくつかピックアップして紹介します。 プロンプトの記載方法 Markdown記法で指示する 色々なところで紹介されていますが、回答や処理の精度を上げる方法としてChatGPTへの指示にMarkdown記法を使用することがオススメされています。 例えば下記のような文章による指示を行おうとした場合

    エンジニアにも知って欲しいChatGPT基本テクニック - Qiita
    rx7
    rx7 2024/07/02
  • RAGの実装戦略まとめ - Qiita

    それでは以下、簡単なデモを含めながら個別に説明していきます。 1. ハイブリッドサーチ こちらは、性質の異なる複数の検索方式(例えばベクトル検索とキーワード検索)を組み合わせて検索精度を向上させる手法になります。 各検索方式単体の場合に比べ、性質の異なる検索方式を組み合わせ、ある種いいとこ取りをする事で、検索性能の向上が期待できます。 今回はBM25でのキーワードベースの類似度検索と通常のベクトル検索を組み合わせていきます。 BM25について簡単に説明しておくと、文脈や文章構造は完全に無視した上で、文書内の単語を全てバラバラに分割し、文書内の各単語の出現頻度と文書間におけるレア度を加味した特徴量を算出します。 つまり、特定の文書内の各単語の数をカウントしてヒストグラムを作れば、似たような文書には同じような単語がよく出るはずなので(同じようなヒストグラムの形になるので)、類似度が高くなる性質

    RAGの実装戦略まとめ - Qiita
    rx7
    rx7 2024/05/10
    良エントリ
  • CloudFrontだけで短縮URLサービス作ってみた。 - Qiita

    はじめに 短縮URLは、オンラインの情報共有において欠かせない存在になっています。 しかし、その便利さの裏でセキュリティ上の問題も指摘されていることがあります。 例えば、QRコードを介した不正サイトへの誘導事例などが報告されています。 原因は「短縮URL」か? QRコードから不正サイトへ誘導される事例が相次ぐ オートバックスセブン、学習院大学も こういったこともあり、エンジニアの皆様は自作されることも多いのではないでしょうか? 自作短縮URLサービスに関して様々なアーキテクチャがある中、CloudFront大好きな私は、エッジロケーションで完結するのでは?と考えました。 そう、CloudFront KeyValueStore + CloudFront Functionsならね。 URLの実態をCloudFront KeyValueStoreに保存し、CloudFront Functions

    CloudFrontだけで短縮URLサービス作ってみた。 - Qiita
    rx7
    rx7 2024/01/08
    "KeyValueStoreの容量は最大5MBまでとなっており、大規模な運用には制限がある"
  • 祖母が就寝するとDBインサートができなくなる - Qiita

    世の中には、一見関係なさそうな物理現象がITシステムに不可思議な影響を及ぼすことがあります 例えば,500マイル以上離れた場所にメールが送れないという話だったり 中国人のAさんがお茶を入れると会社のネットが繋がらなくなる という話があります。 私の場合は、祖母が就寝するとDBインサートが失敗する、という状況でした 実家の見守りシステム 問題が起きているのは、離れた実家にいる一人暮らしの祖母の状態を見守るために作成した自作のシステムです。 気温や湿度、CO2濃度、明るさ、部屋のドアの開閉、冷蔵庫の開閉の状況をモニタリングできるようにしています。 Raspberry Piに各種センサが接続され、定期的にInfluxDBに送信し、Grafanaという可視化ツールでいつでも見られるようにしています。 これらの情報を見ることで、祖母の家の部屋の温度が適切か、活動しているか、部屋にいるかなどが分かりま

    祖母が就寝するとDBインサートができなくなる - Qiita
    rx7
    rx7 2024/01/08
    タイトルに釣られて全部読んでしまった。てっきり根っこのアダプタのコンセントを毎回抜くお方なのかと思ったら全然違った。
  • セキュリティーチェックシートという闇への防衛術 - Qiita

    といった感じです。(この例、下で問題例として取り上げるため、実はおかしなチェック内容にしています。) "No.~基準"までがシートに記載されていてます。回答する発注先企業は"Yes,No,N/A"を3択で✅をつけ、備考欄にNoやN/Aの理由のほか、注記を記載できます。こういう項目が20~500項目あるExcelのシートに、発注先企業の回答担当は自社の状況、対応を確認しながら、ひたすら記載してゆくわけです。 知ってる人は知っているが、知らない人はぜんぜん知らない 最近参加したエンジニアがぞろぞろいらしたカンファレンスで、私が 「……あの セキュリティーチェックシート ってあるじゃないですが、あの 面倒なアレ です。アレにこの規格を採用するよう書いてあったら、各企業に規格の採用が広がるかもですね。あはは。」 と話したことがありました。その瞬間、 嫌なことを思い出したのか顔を曇らせたり苦笑いをす

    セキュリティーチェックシートという闇への防衛術 - Qiita
    rx7
    rx7 2023/11/09
    違和感が綺麗に言語化されている... (以降、自粛)
  • 2022年に最も悪用された脆弱性12選 - Qiita

    アメリカ合衆国サイバーセキュリティ・社会基盤安全保障庁が、先日2023/08/04に2022 Top Routinely Exploited Vulnerabilitiesというレポートを公開していました。 2022年に最も悪用された脆弱性トップ12がリストアップされているようです。 以下では該当の脆弱性をそれぞれ紹介してみます。 理論上危険とか原理上危険とかではなく、実際に使われた脆弱性ということなので、対策する必要性は極めて高いといえるでしょう。 心当たりのある人はすぐに対処しましょう。 2022 Top Routinely Exploited Vulnerabilities CVE-2018-13379 Fortinet社のVPN機器FortiGateに存在する脆弱性で、VPNのログイン情報を抜かれます。 VPNでなりすまし放題ということなわけで、極めて重大な脆弱性と言えるでしょう。

    2022年に最も悪用された脆弱性12選 - Qiita
  • 【完全保存版】GPT を特定の目的に特化させて扱う (Fine-tuning, Prompt, Index, etc.) - Qiita

    【完全保存版】GPT を特定の目的に特化させて扱う (Fine-tuning, Prompt, Index, etc.)OpenAIChatGPTlangchainGPT-4LlamaIndex 生成AIカンファレンス 〜徹底解剖「トップランナーから見た日が挑む生成AIの最前線」〜 日時:5月8日(水) 10:00-18:30 形式:オフライン・オンラインのハイブリッド開催 場所:東京大学伊藤謝恩ホール(オンライン参加の方は配信URLをお送りします) 参加方法:下記イベントページより申込 ChatGPT に代表される今日の AI ブームを牽引しているのは 大規模言語モデル(Large-scale Language Model, LLM) と言っても過言ではないでしょう。LLM とは大量のテキストデータを使ってトレーニングされた自然言語処理のモデルで、代表的なものに、GPT(OpenAI

    【完全保存版】GPT を特定の目的に特化させて扱う (Fine-tuning, Prompt, Index, etc.) - Qiita
  • StackOverflowからのコピペをやめろ。今すぐにだ。 - Qiita

    Original article:https://dev.to/dotnetsafer/rip-copy-and-paste-from-stackoverflow-trojan-source-solution-4p8f その昔コピペできない文章というものがありました。 実際は単にフォントを変えているだけというものですが、人間の目に見える文字と実際の文字が異なることを利用した攻撃の一種と見ることもできます。 さて、最近になって似たような攻撃に関する論文が公開されました。 人間には見えない文字を織り交ぜることによって、一見問題ないコードが実は脆弱になってしまうというものです。 ただ論文は堅苦しいうえに長くて読むのがつらいので、具体的に何がどうなのかよくわかりません。 平易に解説している記事があったので紹介してみます。 以下はDotnetsafer( Twitter / GitHub / Web

    StackOverflowからのコピペをやめろ。今すぐにだ。 - Qiita
    rx7
    rx7 2022/10/27
    目に見えない制御文字があるかも、という話。なるほど。
  • IPアドレスの例示で xxx.xxx.xxx.xxx を使うな - Qiita

    悲劇は起こった… ある日のLINE A氏「IPアドレスについて教えて欲しい!」 B氏「IPアドレスっていうのは xxx.xxx.xxx.xxx っていうフォーマットの…」 A氏「このリンクなに?」ポチー \フワーオ♡/ B氏(YABE) 何が起こったのか LINETwitter などの SNS は投稿されたリンクを自動的に飛べるようにしてくれます。 今回不幸なことに、この .xxx というドメインは存在し、xxx.xxx というドメインは登録されていました。 参考: ドメイン (domain)とは |「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典 ドメイン名の種類 JPNIC そして .xxx ドメインの用途はよりによって… 用途 登録対象 > アダルトエンタテイメント業界用 < >> アダルトエンタテイメント業界用 << >>> アダルトエンタテイメント業界

    IPアドレスの例示で xxx.xxx.xxx.xxx を使うな - Qiita
    rx7
    rx7 2021/12/15
    これ昔使っちゃってたな。。。
  • なぜエンジニアが作る画面はダサいのか…?「理由」と「対策」を徹底解説【エンジニア向け画面デザイン講座】 - Qiita

    なぜエンジニアが作る画面はダサいのか…?「理由」と「対策」を徹底解説【エンジニア向け画面デザイン講座】UXUIDesignUIデザイン画面設計 1.はじめに エンジニアの私がデザインを気で勉強した結果、デザイナーとエンジニアはそもそも思考が大きく違っているということがわかりました。 今回は「それ」をデザインに苦手意識のあるエンジニア方にも理解してもらえたらと思い、わかりやすくまとめてみました。 2.アプリの画面デザインを考えてみよう まず、こんなアプリを考えてみてください。 フィットネストレーナーが使うアプリ トレーニングルームでお客様とお話しながら使う 端末はタブレット そして 会員の個人情報確認 前回までのトレーニング状況の確認 次回の予約受付 といったことをします。 使える情報としては、こんな感じです。 あなたならどう画面デザインをするか、もしお時間があったら考えてみてください。

    なぜエンジニアが作る画面はダサいのか…?「理由」と「対策」を徹底解説【エンジニア向け画面デザイン講座】 - Qiita
  • M1 Pro + Docker for Macが遅い - Qiita

    M1とDocker for Macの組み合わせが遅い1。遅すぎる。ただでさえDocker for Macは遅いのにM1と組み合わせることで更に悪化する。大枚はたいて買ったM1 Proでアプリケーションのベンチマークとったら (3年前の) Intel Macbook Proの構成より遅くて衝撃を受けた。そしてDocker for Macを削除した。 検討したツール dockerがないと仕事中やることないので代替ツールを探した。 ツール名 仕組み メリット デメリット Watch Star Issues

    M1 Pro + Docker for Macが遅い - Qiita
    rx7
    rx7 2021/11/27
  • 「技術的負債」への処方箋と「2つのDX」 - Qiita

    はじめに 稿は、日経クロステックにて筆者が昨年連載していた3回分の記事一部変更して1つにまとめたものです。 https://xtech.nikkei.com/atcl/nxt/column/18/01394/ 有料記事として配信されておりますが、無料でも閲覧できるようにということで日経クロステック様に許可を得てQiitaにも掲載しています。 第1回:技術的負債はなぜ生じるか。 第2回:ソフトウエア開発を「制御」する意外な処方箋 第3回:技術的負債への取り組みはなぜ「2つのDX」につながるのか。 第1回:技術的負債はなぜ生じるか。 年間12兆円ものマイナスの影響をもたらす技術的負債(あるいはレガシーシステム)はどのように生まれるのでしょうか。それを防ぐ方法はあるのでしょうか。第1回は、技術的負債をとりまく歴史をたどりながら、ソフトウェアエンジニアではない人にも理解できるようにその正体に迫り

    「技術的負債」への処方箋と「2つのDX」 - Qiita
  • なぜ、ソフトウェアプロジェクトは人数を増やしても上手くいかないのか - Qiita

    はじめに ソフトウェアプロジェクトには不思議な性質があります。現状のスケジュールに課題を感じて、短くするために人員を投下しても、なかなか思い通りに短くならない。それどころか悪化してしまうことがあります。場合によってはプロジェクト自体が破綻して失敗してしまうことすらあります。 今回は、このようなソフトウェアプロジェクトに潜む直感に反する性質を数理的なモデルを介して理解していく試みです。ある種の思考実験としてお楽しみください。 宣伝 Qiitaさんとコラボ企画でアドベントカレンダーをつくりました。 DXをめちゃくちゃ改善した話を募集しています。 https://qiita.com/advent-calendar/2021/dx-improvement 10人の妊婦がいても1ヶ月で一人の子供は生まれない これは誰かの技術力やプロジェクトマネジメント力に欠陥があるのではなく、「人月の神話」で有名な

    なぜ、ソフトウェアプロジェクトは人数を増やしても上手くいかないのか - Qiita
  • Firefoxは危険なJavaScriptに対応しない - Qiita

    Firefox / Safari MozillaはMozilla Specification Positionsというリストを公開しています。 IETFやW3C、TC39などが提唱しているWeb技術に対して、Mozillaはどのように評価しているかという立ち位置を表明したものです。 あくまで現時点での評価であり、もちろん今後の仕様変更などに伴い評価は変わる可能性があります。 Mozilla's Positions Mozillaはどのように評価しているかの分類。 under consideration 評価の検討中。 important 優れた概念であり、Mozillaにとっても重要である。 worth prototyping 優れた概念であるが、プロトタイプを作成し、フィードバックを得て磨きをかける必要がある。 non-harmful 有害ではないが、良いアプローチではなく、取り組む価値

    Firefoxは危険なJavaScriptに対応しない - Qiita
  • Google Chromeが勧める広告技術FLoCのまとめ - Qiita

    この1・2週間で一気に話が広まったせいで今さらなかんじになってしまった感もありますが、FLoCの話のまとめです。 サードパーティーCookieの代替としてGoogleが導入を進めているFederated Learning of Cohortsですが、とにかく大不評です。 FLoCについて FLoCとは 非常にざっくりFLoCを説明すると、ユーザを嗜好でグルーピングしてグループID(cohort ID)を発行し、そして広告会社にはグループIDだけを渡すよ、というものです。 お前ロリコングループな、お前は巨乳グループな、などと分類されるわけです。1 ブラウザからWebサイトに渡されるのはグループIDだけなので、そのグループ内の誰であるかを特定することはできません。 木を隠すなら森の中ということですね。 どうしてFLoCが必要になったのか 今後使えなくなるサードパーティCookieの代替手段とし

    Google Chromeが勧める広告技術FLoCのまとめ - Qiita
  • マイクロサービスアーキテクチャの経済と適応度 - Qiita

    はじめに マイクロサービスアーキテクチャは、独立してデプロイ可能で疎結合サブシステム群によってサービス開発を行うというアーキテクチャパターンです。現在のソフトウェアサービス開発では欠かすことができない考え方です。 従来では一定のコストが掛かり、またパフォーマンス上の問題もあったため、必要に応じての分割には難しい側面も多かったのですが、様々なエコシステムの発達によってわずかな機会費用で実現できるようになってきました。もちろん分散システムとしての質的な難しさやアーキテクチャの移行の質的な難しさは解決したわけではありませんが、手軽にコンテナレベルで分割された様々なサービスを作成することのコストは急速に下がってきました。 これらが、うまくサブドメイン境界によって分割されることで、ある開発チームが知らなければならない情報が制限されるため、スピード感のある開発力を維持しながら開発組織のスケールでき

    マイクロサービスアーキテクチャの経済と適応度 - Qiita
  • フロントエンドを100倍速くした( ^ω^) - Qiita

    おはようございます、なのくろです。年の瀬ですね。 この記事は ABEJA Advent Calendar 2020 の最終日です。 追記:おかげさまで Qiita LGTM賞 を受賞いたしました、ありがとうございます! 私は2020年01月にABEJAへ入社しました。チームではフロントエンド開発全般を任されています。 参入してちょうど1年が経過しましたので、今年取り組んだことをまとめました。 「フロントエンドを100倍速く」というタイトルは誇張気味なのですが、難しいことはせず、基的なパフォーマンス改善を素直に実践したという話を書きます。 稿では事例とやったことを紹介するのみですが、何かしらの知見や改善のきっかけに役立てば幸いです。 サービスについて 話をする前に、どんなサービスを開発しているかについて少しだけ触れます。 ABEJA社では「Insight for Retail」という、小

    フロントエンドを100倍速くした( ^ω^) - Qiita
  • テックリードになって気をつけていること - Qiita

    フューチャーアドベントカレンダー2020の24日目です。 はじめに フューチャーに入ってテックリード(社内だとアーキリーダーと呼ぶことも多い)のような役割をし始めて4,5年ほど経過しました。 いくつかの案件を回して自分なりに汎化・パターン化してきた部分も増えてきたので、気を付けていることをまとめました。 テックリードとは エンジニアのためのマネジメントキャリアパス――テックリードからCTOまでマネジメントスキル向上ガイド によると、以下のように説明されています。 テックリードはエンジニアの階層におけるランクのひとつではなく、シニアのレベルに達したエンジニアが担うことのできる職責群である 技術的なプロジェクトの管理者 部下に効率良く仕事を割り振って自身の負担を適宜軽減するよ う心がける チーム全体の生産性に照準を定め、しかるべき成果を上げるよう全力を尽くさなければならない 管理やリーダーシッ

    テックリードになって気をつけていること - Qiita
    rx7
    rx7 2020/12/26