タグ

ブックマーク / qiita.com (1,527)

  • インシデント発生時に電源を入れたままにすべきか問題 - Qiita

    はじめに とあるセキュリティインシデントにおいて、サーバを電源ケーブルごと引き抜いたという対応が行われ、X(Twitter)ではこの対応について賛否両論が見られました。このうち電源を入れたままにすべきという人の意見には、「マルウェアの中にはシャットダウンすることで自分自身を削除し、感染痕跡を削除するものがある」「メモリを調査すべきなのでシャットダウンすべきではない」のような意見が見られました。 記事では実際にメモリからどのような情報がわかるか、そしてメモリダンプを解析することの有用性と課題について記載します。 メモリフォレンジック セキュリティインシデントにおいてはフォレンジック調査が行われる場合があります。フォレンジック調査には、HDDやSSDのようなストレージを調査対象とするディスクフォレンジック、パケットキャプチャやNetFlow、ProxyやFWのログのような通信を対象とするネッ

    インシデント発生時に電源を入れたままにすべきか問題 - Qiita
    fuyu77
    fuyu77 2024/06/18
  • RailsのActiveRecordのインスタンス生成コストを抑止する - Qiita

    RailsのActiveRecordのインスタンス生成は重い。 大量のインスタンスを生成すると、性能が劣化しがちになる。 参照用データであればJSONに変換してキャッシュに入れるなどの工夫もあるかと思いますが、全部それで対応するのはなかなかしんどい。 インスタンス生成コストをこんな感じで抑えられるよっていうひとつのやり方。 書いててなかなか最低なやり方だなと思ったが、背に腹は代えられない。悪手なので、どうしてもって場合用 前提 Railsガイドにある関連をサンプルにする。環境はRails 4.1.8 class Customer < ActiveRecord::Base has_many :orders, dependent: :destroy end class Order < ActiveRecord::Base belongs_to :customer end

    RailsのActiveRecordのインスタンス生成コストを抑止する - Qiita
  • なぜsortコマンドはuniq機能を含んでいるのか?(Unix哲学はどこ行った!?) - Qiita

    Unix 哲学的に考えれば、行を並び替える sort コマンドと重複行を取り除く uniq コマンドは別のコマンドであるべきなように思えます。しかし sort コマンドには -u オプションとして uniq コマンドに相当する機能が組み込まれています。なぜそうなっている(そうなってしまった)のかを「ソフトウェア作法(さくほう)」を参照しながらこの記事で明らかにしたいと思います。 関連記事 Unix哲学「一つのことをうまくやる」は単機能のコマンドを作ることではない 「誰」がuniq機能をsortコマンドに組み込んだ!? 熱烈的な Unix 哲学の信者は「どうせ Unix 哲学を理解しない GNU が便利だと思ってオプションを追加したのだろう」と考えるかもしれません。しかし uniq 機能が組み込まれたのは Version 7 Unix、つまり Unix の開発者が組み込んだのです。これは 1

    なぜsortコマンドはuniq機能を含んでいるのか?(Unix哲学はどこ行った!?) - Qiita
    fuyu77
    fuyu77 2024/05/31
  • [メモ] 各種チェックデジットの計算方法 - Qiita

    チェックデジットの計算方法 桁数の多い数字を扱う場合、誤り検知用にチェックデジット(検証番号)といわれるものがあります。大抵は末尾についていたりします(末尾以外にある場合もあります)。 いくつか計算方法をメモしておきます。 以下の計算の元になる数値は、チェックデジットを除いたものです。 実運用上は、少しだけ違う変形版のチェックデジットが使われていることがあります。 参考 モジュラス10 ウェイト2・1分割(Luhn formula) 数値の各桁に、下の桁から2・1・2・1・…の順番に係数(ウェイト)を掛けます。 各桁の結果が2桁の場合には、十の位と一の位を分けて足し合わせます(分割)。 それぞれの合計を求めます。 合計を10で割り、余りを求めます(モジュラス)。 この余りを 10 から引いたもの(10 - 余り)がチェックデジットです。ただし余りが0の場合はチェックデジットも「0」になりま

    [メモ] 各種チェックデジットの計算方法 - Qiita
    fuyu77
    fuyu77 2024/05/24
  • RailsのActiveRecordのcount、length、sizeメソッドの違い - Qiita

    はじめに いよいよダットのターンです!たまにはRailsについて書かずHTMLJavascriptばかりの記事を投稿したので今回はRailsのメソッドについて説明させていただきます。 開発者としてはこれらのメソッドを触ったことがあるはずですね。風通はこの三つの中に勝手に選んでどっちでも使って無事で計算されるので大丈夫と思いましたが、実はそうでしょうか?実際は場合によって返った結果も変わって実行する時間も異なる可能性があります。さっそくですが、始めましょう! 概要 この記事はこれらのメソッドがRubyに使われる時を気にしないでActiveRecordに使用する時だけ中心してください。結局、アソシエーションの中に幾つのレコードがあるか教えてくれますが、内部の処理がちょっと違います。 例えば、このモーデルとリレーションがあります。

    RailsのActiveRecordのcount、length、sizeメソッドの違い - Qiita
  • 30歳エンジニア転職で役に立たなかった経験と役に立った経験 - Qiita

    はじめに いつも聞いているポッドキャスト番組で、エンジニア転職について生々しくリアルな話が聞けたので、紹介します。今の自分がやっている仕事が市場価値を上げられているのか? と日々の業務を振り返るきっかけになりました。詳しく知りたい方は是非、聞いてみて下さい。 転職の前提 かいちさん(転職した人)の紹介 情報系の大学院卒 中堅のバックエンド・エンジニア(30代) 社会人7年目 主に使っている言語: python, PHP アジャイル開発ができることを転職の軸に据えた 転職して感じたこと ① 30代は中堅の仕事を求められる → リーダー的立場が求められる ② 若い時の業務経験が転職の際に活きてくる → 20代はとにかく挑戦する回数を増やそう ③ 転職はどのタイミングでやってくるかわからない → 常に職務経歴書を更新し続けよう 結論 重要なポイント ・チームで開発した経験があるか? ・AWSなど

    30歳エンジニア転職で役に立たなかった経験と役に立った経験 - Qiita
  • 「JavaScriptで要素をドラッグして移動する簡単な方法」という記事が初耳だらけだった件 - Qiita

    はじめに まず↓の記事を見てない方はぜひ見てください! 自分にとってはこの記事には「えっ、ナニコレ!」なテクニックが多く、特に解説もなかったのでいろいろ調べてたら休日が消えてました... なのでその時間の供養もかねて、自分が知らなかった部分を中心に、僭越ながら元記事の解説を書いてみたいと思います。 ちなみに、以下が元記事のコードそのままを実装したものです。たしかに掲載コードだけで要素がグリグリ動きますね。 See the Pen js-drag-move-original by www-tacos (@www-tacos) on CodePen. 初耳1: $img まずコードのここ <img id="$img" src="https://js.cx/clipart/ball.svg" width="40" height="40"> <script> $img.onpointermove

    「JavaScriptで要素をドラッグして移動する簡単な方法」という記事が初耳だらけだった件 - Qiita
  • JavaScriptで要素をドラッグして移動する簡単な方法 - Qiita

    要素をドラッグして移動することは、JavaScriptにおいて頻出パターンです。 しかし、それを簡単に実現するコードは意外と知られていません。 <img id="$img" src="https://js.cx/clipart/ball.svg" width="40" height="40"> <script> $img.onpointermove = function(event){ if(event.buttons){ this.style.left = this.offsetLeft + event.movementX + 'px' this.style.top = this.offsetTop + event.movementY + 'px' this.style.position = 'absolute' this.draggable = false this.setPointe

    JavaScriptで要素をドラッグして移動する簡単な方法 - Qiita
    fuyu77
    fuyu77 2024/02/26
  • イベントハンドラの関数名についての雑記 - Qiita

    今日のXでは、イベントハンドラの関数名についての話題を見ました。元の投稿はこちらです。要するに、次のhandleClickのようなhandleイベント名という命名は良くないということです。 const handleClick = () => { ... }; <button type="button" onClick={handleClick} /> これについて少し考えたので、せっかくなのでアウトプットしておくことにしました。 この記事の目的 考えたことを頭の中に残しておくのがもったいないので、文章の形にしておく。 色々な意見が出る問題であり、ベストな答えは無いので各々好きにすれば良いということを、読者に理解してもらう。 とはいえ、筆者の考えに納得して同じ考えの人が多いと嬉しいので、なるべく納得してもらう。 筆者の考え 自分の考えとしては、むしろhandleClickいいじゃん! どんど

    イベントハンドラの関数名についての雑記 - Qiita
    fuyu77
    fuyu77 2024/01/29
  • イベントハンドラの関数名についての雑記 - Qiita

    今日のXでは、イベントハンドラの関数名についての話題を見ました。元の投稿はこちらです。要するに、次のhandleClickのようなhandleイベント名という命名は良くないということです。 const handleClick = () => { ... }; <button type="button" onClick={handleClick} /> これについて少し考えたので、せっかくなのでアウトプットしておくことにしました。 この記事の目的 考えたことを頭の中に残しておくのがもったいないので、文章の形にしておく。 色々な意見が出る問題であり、ベストな答えは無いので各々好きにすれば良いということを、読者に理解してもらう。 とはいえ、筆者の考えに納得して同じ考えの人が多いと嬉しいので、なるべく納得してもらう。 筆者の考え 自分の考えとしては、むしろhandleClickいいじゃん! どんど

    イベントハンドラの関数名についての雑記 - Qiita
    fuyu77
    fuyu77 2024/01/27
  • フリーWi-Fiを使ったら秘密情報を抜かれる経路にはどのようなものがあるか - Qiita

    ゴールデンウィークのはじめ(4月29日)に投稿された以下のツイートですが、5月7日20時において、1,938.8万件の表示ということで、非常に注目されていることが分かります。 我が名はアシタカ!スタバのFreeWi-Fiを使いながら会社の機密情報を扱う仕事をしてたら全部抜かれた。どうすればよい! pic.twitter.com/e26L1Bj32Z — スタバでMacを開くエンジニア (@MacopeninSUTABA) April 29, 2023 これに対して、私は以下のようにツイートしましたが、 これ入社試験の問題にしようかな。『スタバのFreeWi-Fiを使いながら会社の機密情報を扱う仕事をしてたら全部抜かれた』と言う事象に至る現実的にありえる脅威を説明せよ。結構難しいと思いますよ。 https://t.co/LH21zphCTV — 徳丸 浩 (@ockeghem) April

    フリーWi-Fiを使ったら秘密情報を抜かれる経路にはどのようなものがあるか - Qiita
    fuyu77
    fuyu77 2024/01/09
  • Ruby | 再定義できる演算子 で組み込み演算子風のメソッドを定義する #ruby - Qiita

    概要 再定義できる演算子 で組み込み演算子風のメソッドを定義する Ruby の演算子はメソッドのシンタックスシュガー 多くの言語では論理演算子や算術演算子などは、言語の組み込み機能であり、 通常の関数やメソッドとは別の扱いであると思います。 Ruby の場合、これらの演算子の多くが、ただのメソッドとして定義されています。 + 演算子を利用した文字列の結合の例 例えば Ruby で文字列を結合する際に利用される + 演算子は実際の所 String#+ という String のメソッドに過ぎません。 print "hoge" + "hage" # => hogehage # 上記は以下のシンタックスシュガー print "hoge".+("hage") # => hogehage

    Ruby | 再定義できる演算子 で組み込み演算子風のメソッドを定義する #ruby - Qiita
    fuyu77
    fuyu77 2023/12/28
  • PumaでWARNING: Detected 1 Thread(s) started in app boot がでたときの対処法 - Qiita

    PumaでWARNING: Detected 1 Thread(s) started in app boot がでたときの対処法Railspuma 結論 (大半の場合は)無視してOK。 preloadを指定し、かつ、workersに1より大きい値を指定しているとこの警告が表示される。しかし、ただの警告でしかなく、何もしなくても問題はない。 この警告がでる理由 Pumaの再起動時に既に存在するスレッドが見つかるとこの警告が表示されるが、そのスレッドがmasterプロセス内のスレッドなのかforkされたプロセス内のスレッドなのかPumaには分からない。 そのため、この警告は「スレッドが見つかった」という文字通りの意味でしかなく、preload_app!の指定とworkersに1より大きい数の指定を同時にしていると、必ず表示される無視してもよい警告ということになる。 情報元 ! WARNING:

    PumaでWARNING: Detected 1 Thread(s) started in app boot がでたときの対処法 - Qiita
    fuyu77
    fuyu77 2023/12/26
  • Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル) - Qiita

    Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル)oracleWeb この記事は、 JPOUG Advent Calendar 2023 24日目の記事です。 23日目は multilayer さんの記事『OCIのLanding Zoneについて調べてみた!』でした。 想定読者 ファントムファイルについてよく知らない、帳票の扱い方をあまり考えたことがない人 イントロダクション 皆さん、世の中のWebシステムで利用される画像や帳票ファイルがどこに保存されているかご存知でしょうか? 帳票や大きな画像ファイルなどを扱う際、大きく分けて2つの設計方針があります。 ・DBに直接保存する ・DB外部に保存し、パスなどをDBに保存する オライリーのSQLアンチパターンの、”ファントムファイル”という章にはこのあたりのことが書いています。 [Amaz

    Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル) - Qiita
    fuyu77
    fuyu77 2023/12/25
  • サンプルコードでわかる!Ruby 3.3の主な新機能と変更点 - Qiita

    はじめに Rubyは毎年12月25日にアップデートされます。 Ruby 3.3は2023年12月25日に正式リリースされました。 この記事ではRuby 3.3で導入された変更点や新機能について、サンプルコード付きでできるだけわかりやすく紹介していきます。 ただし、すべての変更点を網羅しているわけではありません。個人的に「Railsアプリケーションの開発時に役立ちそうだな」と思った内容をピックアップしています。記事で紹介していない変更点も多数ありますので、以下のような情報源もぜひチェックしてみてください。 動作確認したRubyのバージョン 記事は以下の環境で実行した結果を記載しています。 フィードバックお待ちしています 文の説明内容に間違いや不十分な点があった場合はコメント欄から指摘 or 修正をお願いします🙏 それでは以下が編です! 言語仕様の変更→なし Ruby 3.3では言語

    サンプルコードでわかる!Ruby 3.3の主な新機能と変更点 - Qiita
    fuyu77
    fuyu77 2023/12/24
  • 転職活動を10年続けてたら人生行き詰ってきた話 - Qiita

    この記事はエンジニア転職 Advent Calendar 2023の11日目になります。 10日目はnewtaさんの「やりたいことをするための環境を探そう」でした。「野球をやっててもサッカーはうまくならない」というのには膝を叩いて納得してしまいました。確かにその通りですね。今後の参考にしたいと思います。 さて、この記事はアラフィフのおっさんエンジニアによる転職失敗談です。皆様の成功談のなかで恐縮ですが、他人の失敗から学べることもあると思いますので、よろしければご覧ください。 ざっくり自分の経歴 新卒でベンチャー企業に就職。約10年働くも倒産で解雇フリーランスエンジニアになる。約10年働くも諸事情で廃業。 派遣でエンジニアとして働く。合間に転職活動も行って、何度か転職したこともあるけれど諸事情で数年で退職を繰り返すこと約10年。現在も転職活動中。 トータルで約30年のキャリアがあるわけ

    転職活動を10年続けてたら人生行き詰ってきた話 - Qiita
    fuyu77
    fuyu77 2023/12/13
  • Twitterカードが貼られたツイートはすべて詐欺です、という時代 - Qiita

    最近見つけた現象で既に論じられているかと思ったがちょっと解説が見つからなかったのでまとめておく。 手短に X(旧Twitter)クライアントで表示されるTwitterカードについてカードに表示されるドメインとは違うページにリンクさせる手法が存在する この手法は第三者のTwitterカードを利用することができる つまり悪用者は第三者のTwitterカードを表示させながら自身の意図するページに閲覧者を誘導することができる これはフィッシングの手法になりうる 見つけたツイート 以下のツイートはGoogleBloomberg、日経ビジネスのTwitterカードが添付されているがクリックするとそれらとは異なる情報商材サイトにジャンプする。リンク先に危険な仕組みはないと思われるがクリックは自己責任で。念を入れたい人は curl -L で。 PCブラウザでカーソルを合わせてもXの短縮URLサービスであ

    Twitterカードが貼られたツイートはすべて詐欺です、という時代 - Qiita
  • CloudFront+S3でSPAのルーティングをする方法(2021) - Qiita

    はじめに 基的な構築方法は省略 ルーティング問題 URLを/foo /bar の用に Router系でパス指定した場合、ローカルやNginx等では動いてたのにCloudFrontだと、403エラーになるという問題が起きる。これを回避するために CloudFrontで403エラーが発生したら /index.html に転送するという方法がよく行われている(というか自分もVue Routerで下記などの事例を参考に適用していた)。 なんでも200 OK問題 ファビコンをちゃんと用意してないとブラウザーが/favicon.icoを引っ張ってくるが/index.htmlHTMLが転送される。(まあ、アイコンとして表示されないけど気持ち悪い) 脆弱性検知ツール等がデバッグ用とか管理用のファイルとかのよくあるパスでアクセスしてきて、それに対して200で応答を返すので、そのファイル消したほうが良いっ

    CloudFront+S3でSPAのルーティングをする方法(2021) - Qiita
  • Othello is Solved 論文解説 (私見) - Qiita

    今朝起きたら、とんでもない論文を見つけました。 Othello is Solved ゲームの オセロが"解かれた(弱解決)" というのです。飛び起きました。それで、16時まで二度寝してから読みました。 注意すべきは、この論文が査読を経て公開されているわけではないこと、つまり形式上特にチェックを受けたものではないことです。ただ、タイトルからして非常に衝撃的ですので、個人的に読んでみました。この記事では、私がこの論文(およびソースコード)を読んでわかったことを、なるべくわかりやすくまとめます。随時更新します。 余談ですが、このタイトルはどうやら、チェッカーというゲームが以前弱解決された際の論文"Checkers Is Solved"のオマージュだろうという話です。 この記事には専門用語が出てくるので、最後の方に基礎知識として重要な用語や知識をまとめました。 お詫びと訂正 この記事の内容は、私が

    Othello is Solved 論文解説 (私見) - Qiita
    fuyu77
    fuyu77 2023/11/06
  • 自分が今開発チームを持つとしたらどういうチームを作るかまとめ - Qiita

    多分、3年後に同じ内容で記事を書こうとすると違ったものになるんだろうと思いつつ、間違いを正しながらブラッシュアップしていけたら良いというマインドで今正しいと思うことを記していこうと思います 共通マインド 心理的安全なチームであること 心理的安全なチームとは決して生ぬるく仲良しなチームの事ではない 活発に意見・議論することで最適解を導き出し、納得感を持って仕事ができる環境であること(結果的に仲良しであることは大歓迎) リスク提言を賞賛するべし、結果的に起きなかったことに後ろ指をささず、単純に喜ぼう 指摘があることをそれ自体が素晴らしいことであると理解しよう 「なんとなくダメな気がする」という指摘には掘り下げる努力をみんなでしよう マネージャーやリーダーは権力者ではなく、ただの役割である マネージャーやリーダーがこう言うから正しいという誤解はなくそう マネージャーやリーダーが間違ったことを言っ

    自分が今開発チームを持つとしたらどういうチームを作るかまとめ - Qiita
    fuyu77
    fuyu77 2023/10/28