並び順

ブックマーク数

期間指定

  • から
  • まで

281 - 320 件 / 817件

新着順 人気順

Qiitaの検索結果281 - 320 件 / 817件

  • ベテランエンジニアも意外と知らない「パッケージ管理システムの仕組み」 - Qiita

    この記事はNuco Advent Calendar 2023の16日目の記事です。 1. はじめに 世の中には、複雑な計算や面倒な分析を1行で済ませてくれるような便利なパッケージが数多くあります。それらをインストールするときには、以下のようなOSやプログラム言語に応じた簡単なコマンドを実行していることでしょう。 あなたがパッケージをインストールする裏で、それらのパッケージを管理するシステムが地獄のような処理を人知れず行なっていることはご存知でしたか? 本稿ではそんな縁の下の力持ちであるパッケージ管理システムが、一体どのような仕組みで動いているのか、その全貌を明らかにしていきたいと思います! 弊社Nucoでは、他にも様々なお役立ち記事を公開しています。よかったら、Organizationのページも覗いてみてください。 また、Nucoでは一緒に働く仲間も募集しています!興味をお持ちいただける方

      ベテランエンジニアも意外と知らない「パッケージ管理システムの仕組み」 - Qiita
    • より良い Git コミットメッセージを書こう - Qiita

      より良いコミットメッセージを残すことは Git を使った開発をする上で重要なことです。優れたコミットメッセージは、それを読んだ人がコードを理解するのに大いに役立ちます。 では、どのようなメッセージが良いもので、どのようなメッセージが悪いものなのでしょうか? それについて掘り下げていきたいと思います。 基本的な Git Commit Message の書き方 詳しいところは、以下の3サイトを参照してください。特に「How to Write a Git Commit Message」には基本がすべて書かれています。 How to Write a Git Commit Message https://cbea.ms/git-commit/ Gitのコミットメッセージをうまく作成する7つのルール (「How to Write a Git Commit Message」の和訳記事) https://

        より良い Git コミットメッセージを書こう - Qiita
      • Amazon の 2段階認証 突破の噂についての仮説 と 2段階認証で意識すること【2FA/2SV/MFA】 - Qiita

        Amazon の 2段階認証(2SV)が突破された? Amazon の 2段階認証(2SV) が突破されたのではないかという件が話題になっています。 私もこれについてはとても気になっており、できるだけ早く真相が解明されることを願っています。 そこで、ふと疑問に感じたことが、2SV は何をどの程度防いでくれるのかということです。 ここでは、Amazon を例に、いろんなことを考えていきたいと思います。 フィッシングの前には無力 まず、2SVの突破と言っても様々な手口があります。 徳丸先生の動画が示す通り、中継型フィッシングであれば、自ら正しい認証情報を入力することになるので、2SVを設定していようがいまいが突破されてしまいます。 フィッシングではなく、かつ、TOTPでも突破されたケースも 今回の被害者には、中間者攻撃やフィッシングを受ける状態になかったと仰っている方がいました。 なので、何か

          Amazon の 2段階認証 突破の噂についての仮説 と 2段階認証で意識すること【2FA/2SV/MFA】 - Qiita
        • C言語の知られザル・許されザル仕様 - Qiita

          はじめに どうも、y-tetsuです。 かれこれC言語には、10年以上携わっているのですが、最近ふと学びなおしをしています。 「Cクイックリファレンス第2版」これを完走めざして読み始めました。全816ページの超大作! 先は長いので、日頃からかたわらに置いておき、表紙の牛さん(雌牛)と目が合ったら黙って少し読むようにしています。 言語の"歴"だけは長い筆者ですが、この本をちらっと読んだだけでもいまだに知らなかったことが結構潜んでいました。意外と己の"目"ってザルでした。 そんなこんなで学びなおしのため、今回は筆者が感じたままの知られザルそして許されザルなC言語の仕様について、備忘録を残します。 知られザル仕様 恥ずかしながら、今まで存じ上げザルだったシリーズ。 ダイグラフ 名前からして???だったんですが、キーボードによっては存在しない記号を別の2文字で表わすためのものだそうです。 !?…っ

            C言語の知られザル・許されザル仕様 - Qiita
          • AWSの生成AIで社内文書検索! Bedrockのナレッジベースで簡単にRAGアプリを作ってみよう - Qiita

            生成AI、流行ってますね! 今みんながやってる「社内文書検索」アプリ、いわゆるRAGアーキテクチャをAWSで簡単に作ってみましょう。1時間程度でサクッと試せるハンズオンです。 そもそもBedrockって何だっけ? こちらの資料で紹介していますので、お時間ある方はご覧ください! 0. 事前説明 このハンズオンで実施することは以下です。 今回作成するアプリケーションの構成イメージ 1. 環境準備 以下の部分を作成していきます。 1-1. AWSアカウント作成 以下の手順でAWSアカウントを新規作成してください。 クレジットカード情報が必要です。ログイン用のEメールアドレスとパスワードをお忘れなく! ※アカウント作成を複数名で同時に実施する場合、同じネットワークを利用すると不正検知に引っかかり、SMS認証から先にうまく進めない可能性があります。20名を超える場合は、会場Wi-Fiとテザリングを使

              AWSの生成AIで社内文書検索! Bedrockのナレッジベースで簡単にRAGアプリを作ってみよう - Qiita
            • rebase 教から脱退します - Qiita

              rebase で色々あったので、備忘録として簡単に書いていきます。 前提背景 開発作業中、元のブランチに変更があった場合、私は変更を取り込むために常に rebase を使用します。これを選ぶ主な理由は「コミットログが見やすく保たれるため」です。 Gitには同様のコマンドとして merge がありますが、これは変更を取り込む際にマージコミットを作成する点が異なります。私はマージコミットによってコミットログが煩雑になると感じています。 このような理由から、私はrebaseを積極的に使用しています。 何があったのか 簡単に言うと、レビュー中にブランチ元の変更があったので、 git rebase からの git push -f origin [ブランチ名] やったらレビュアーのコメントが吹き飛びました。 いやー、めっちゃ怒られたよね💦 原因 「レビュー中」という状況がまずかった。 コードを共有し

                rebase 教から脱退します - Qiita
              • リーダー経験ゼロのエンジニアがチームのリーダーに挑戦して、自己組織化したチームに近づいた話 - Qiita

                1. はじめに 1年前の入社4年目の私は、開発チームのリーダーの経験はなく、また、スプリントの計画も立てたことが無いような状態でした。 そんな状態で、突然リーダーとしてプロジェクトの意思決定をすることになりました。 自分に務まるかとても不安で、恐怖すら感じていました。 実際にやってみると、これまでいかに作業者視点で物事を考えていたか、プロジェクト全体が見えていなかったのかを痛感しました。 現在では、マネージャーが休みや出張で不在の場合でも、私がいればうまくチームメンバと協力して開発を進めてくれると言っていただけるまでになりました。 それと同時に、より楽しく開発できるようになりました。 本記事では、私がリーダーとして振舞うことになった経緯と、その振る舞いの具体例を紹介します。 同じような開発者の方の参考や励みになればと思います。 2. チームの背景 1年前当時の私が所属しているチームは以下の

                  リーダー経験ゼロのエンジニアがチームのリーダーに挑戦して、自己組織化したチームに近づいた話 - Qiita
                • 初心者大学生が作った機械学習ライブラリがGitHubでスター数300を超えた話 - Qiita

                  この記事について この記事では、プログラミング初心者の大学生である(であった)私が試行錯誤しながらなんとかスター数300越えのOSSライブラリを作った過程をまとめたものです。ライブラリ自体はまだまだ発展中のためこの記事も適宜更新してく予定です。ライブラリ自体の詳細というよりも、自作OSSの認知度を上げで他の人に使ってもらうために有用そうな知見をまとめていこうと思います。 ライブラリの概要 今私が作っているのは、AIJackという、機械学習モデルがもつセキュリティ・プライバシー上の脆弱性についての各種攻撃・防御手法を実験するためのPythonツールです。既存のライブラリの多くは特定の種類の攻撃や防御に特化したものが多く、複数のタイプの攻撃・防御を組み合わせて実験するためにはいくつものライブラリを組み合わせる必要がありました。そこでAIJackでは、できる限り統一的なAPIで様々な攻撃・防御手

                    初心者大学生が作った機械学習ライブラリがGitHubでスター数300を超えた話 - Qiita
                  • HTML,CSS初めて1ヶ月ぐらいの人に知って欲しいCSS設計のこと - Qiita

                    「HTML,CSSだって難しいよ!」 初心者でも始めやすいって言ったの誰ですかね。最初は覚えるのに必死だし、少しわかるようになったかな?で始めたサイト制作(コーティング)もエラーだらけで頭を抱える日々。そんな修行を耐えているみなさんに知ってほしい、CSSの設計についてお話できたらなと思います。概念的なこと中心になりますので細かいことは下記の参考文書をご覧ください。 『インプレス社 Web制作者のためのCSS設計の教科書 モダンWeb開発に欠かせない「修正しやすいCSS」の設計手法 谷拓樹著 2022年発行第1版』 注意 作者自身もプログラミング初めて1ヶ月の超初心者です。HTML、CSSを使ってデザインカンプを元にサイトを作れるぐらいのレベルです。なので僕より歴長い人はスルーしてもらっていいです。まだ初めたばかりの人は追いついてきてください。僕は先に行ってます。 初め 壊れない完璧な設計を

                      HTML,CSS初めて1ヶ月ぐらいの人に知って欲しいCSS設計のこと - Qiita
                    • ぬるいエンジニアの生態 - Qiita

                      Qiitaで周りを見るとほんとすごい人ばっかりですよね。 しかし、凡百のエンジニアもいます。 私はとくに大手につとめているわけでもなく、さりとてイケイケスタートアップでもなく、AtCoderで色をもっているわけでもありません(※あったらいろいろはかどると思います)。 フツーなりに、「エンジニアになってみてよかった」、と思ってはいたりするので、ぬるいエンジニアの生態をご紹介します。 ロールモデルにはならないけどサンプルにはなるんじゃないかなー。 自己紹介 新卒から5年~くらい、北海道の中小企業につとめています。 北の大地にいると、「S県」などであらわされる匿名性がちょっとうらやましいです。 春からシーランド公爵(になる予定)! どうしてエンジニアを選んだのか 大学は地方国公立で、文系です。 完全に未経験からこの業界に入りました。 しいて言えばパソコンで遊ぶのが好きだったので、基本的な操作はで

                        ぬるいエンジニアの生態 - Qiita
                      • ExcelでCSVファイルを「0落ち」や「文字化け」なしで開く方法 - Qiita

                        はじめに CSVファイルをExcelで開こうとしたとき、電話番号や郵便番号の先頭のゼロ(0)が自動的に消えてしまったり、文字化けしてしまう...。そんな悩みをお持ちの方はいませんか?この記事では、データを正確に保持しながらCSVファイルを開く方法を簡潔にご紹介します。 1.CSVファイルとは そもそもCSVファイルって何?というところから説明します。 CSVはComma Separated Value(カンマで区切られた値)の略であり、CSVファイルはテキストデータの各項目を、カンマ(,)で区切って表現したファイルです。 言葉では理解しにくいので、画像で見てみましょう。 まず、こちらがExcelでCSVファイルを開いたときの画像です。 普段、Excelでデータを作成・編集しているときと同じように見えますよね?CSVといっても、特に変わったことはなさそうです。 では、Windowsの「メモ帳

                          ExcelでCSVファイルを「0落ち」や「文字化け」なしで開く方法 - Qiita
                        • 【サイバーセキュリティ】SOCによる24時間365日監視は本当に必要なのか再考してみる - Qiita

                          はじめに 近年、サイバーセキュリティに対する意識の高まりを感じている。 国会では「セキュリティ・クリアランス制度」なるものの検討が進んでおり、誰もが知っているような上場企業であれば当たり前のようにサイバーセキュリティ対策を専門で行う部門が設置されるようになってきた。 筆者が実際にクライアントと会話していても、以前のように「サイバーセキュリティ対策の必要性がわからない」というケースは減ってきており、「サイバーセキュリティ対策をとりあえずやりたい」という経営層が増えているようにも感じる。 そして、需要が高まれば供給側の企業も増えるのが資本主義の性(さが)である。 大手SIerやコンサルティング会社はこぞってサイバーセキュリティ分野への増員に力を入れている。 サイバーセキュリティ分野を得意としたベンチャー企業の上場事例も多数見受けられる。 そんな中、近年急速に拡大しているビジネスが24時間365

                            【サイバーセキュリティ】SOCによる24時間365日監視は本当に必要なのか再考してみる - Qiita
                          • 本当のAWS基礎 昭和~平成~令和の時代の変遷システムの変化と今昔物語 - Qiita

                            内容 社内でAWS知らない人でもこれだけは覚えていてほしいという動画を作成して欲しいとリクエストあり。その内容を資料化したものです。小学生の子供に説明してみましたがになんとなくAWSが分かったと言っていたので今回は結構分かりやすくまとめられたと思います。 システムを構築する時 システムを構築する際、サーバやネットワークなどのインフラが必要になります。昭和の時代は物理サーバを買ってきてラックマウントしてネットワークに接続してと物理的な作業が多く発生していました。 その後、物理サーバの上に仮想的なサーバを作成できる仮想化技術の発展により、仮想サーバが主流となりました。最初に物理サーバを用意して、仮想化基盤を構築する必要があります。仮想化基盤構築後は、新しいシステムを作りたい場合はすぐに仮想サーバの準備を行うことができ、物理環境の時と比較すると大きな進展がありました。 仮想化基盤を自社で構築する

                              本当のAWS基礎 昭和~平成~令和の時代の変遷システムの変化と今昔物語 - Qiita
                            • Azureで生成AIアプリ開発に入門したい人に朗報! 鉄板の解説書が出ました✌️ - Qiita

                              2023年10月からの景品表示法の改正に伴う注記:この記事は技術評論社様より献本をいただき、発売前の書籍レビューをするものです。 来週1/24にMicrosoft社のAzureクラウドで生成AIアプリケーションを開発する人向けの入門書籍が発売されます。 幸運なことに、著者の一人である吉田真吾さんのご厚意で発売前献本の機会に預かりましたので、先行レビューということでみなさんに紹介させていただきます! Azure OpenAI ServiceではじめるChatGPT/LLMシステム構築入門 永田 祥平 (著), 伊藤 駿汰 (著), 宮田 大士 (著), 立脇 裕太 (著), 花ケ﨑 伸祐 (著), 蒲生 弘郷 (著), 吉田 真吾 (著) - 技術評論者より2024/1/24発売予定 通称「ドーナツ本」です。おそらくOpenAIのロゴが某ドーナツ屋さんのフレンチ●ルーラーに酷似していることか

                                Azureで生成AIアプリ開発に入門したい人に朗報! 鉄板の解説書が出ました✌️ - Qiita
                              • 【超初心者向け】Pythonのテストの書き方(pytest, unittest) - Qiita

                                概要 pythonでテストコードを書くときがありますが、(筆者のように)超初心者からすると難しい用語や書き方がたくさん並んでいてハードルが高いです。 テストコードの入口となる最低限(最低限過ぎるかもしれませんが)の書き方を備忘を兼ねて書きます。 pythonでのテストコードを書く時のライブラリの種類 筆者が簡単に調べたところ、2つのライブラリがよく使われているようです。 unittest : python標準ライブラリ。インストールが必要ない。pytestと比較すると、柔軟なテストケースを書きづらい。 pytest : サードパーティ製のライブラリ。インストールの必要がある。柔軟なテストケースが書ける。pythonのテストコードを書く時のデファクトスタンダートになりつつある模様(これが本当かは確認していないですが、そういう記述を見かけることが多かったです)。 筆者個人としては、以下の3つの

                                  【超初心者向け】Pythonのテストの書き方(pytest, unittest) - Qiita
                                • 作りたいものは作り始める前に今すぐにデプロイしよう - Qiita

                                  株式会社ゆめみの23卒 Advent Calendar 2023 の 22日目の記事を書きました はじめに 今見ているあなたは趣味で行った開発の中でデプロイしユーザーに使ってもらった経験はありますか? 「趣味で開発してたものはあるが、実際にデプロイしたことがない」「デプロイしたものもあるが、デプロイできるまでやり通すことの方が珍しい」という方がほとんどだと思います。 また趣味で行っている開発についての話題になると、「やる気があるうちにデプロイした方が良いよね~」みたいな話題になると思うのですが、そう思っていながらも実際に意識して取り組む方はなかなかいないと思います。 今年の趣味開発を考えている時に Discord で使用できる Bot を作成して運用したいな~と思っていたのですが、私も趣味で開発していたものを途中でやめてしまうことがほとんどだったので、今回の開発はまずデプロイという事を意識

                                    作りたいものは作り始める前に今すぐにデプロイしよう - Qiita
                                  • MacでLocalでLLMを走らせるならLM Studioが楽。 - Qiita

                                    MacでLocal LLM そこそこRAMの大きなMacbook proが手に入ったので、ローカルでのLLM実行を試すことにした。 しかし、MacのGPUを有効化させることのできるローカル環境を整えるまでに、思いのほか苦労したので、メモとして記しておく。 とりあえず、以下の3つの選択肢を試した。 open interpreter text-generation-webui LM Studio で、結局のところ現状まともに動作してくれたのは、LM Studioだけだったのだが、それぞれの所感について示しておく。 1: open interpreter open interpreterそのもの説明については、Qiitaにもいくらでも記事があるのでここでは省略する。 例えば以下の記事など。 https://qiita.com/ot12/items/d2672144b914cb6f252f htt

                                      MacでLocalでLLMを走らせるならLM Studioが楽。 - Qiita
                                    • 高速化のエンジニアリング。注文してから0.722秒。100倍速いぞ!Python : 75.884 C++ : 3.392   JIT Python : 0.722 JITコンパイラで高速化されたコードを自動生成するツール。 - Qiita

                                      アリスは驚きと興奮を抑えきれませんでした。彼女はすぐに新しいコードを試し、その速さに目を見張りました。今まで数時間かかっていた計算が、ほんの数分で終わったのです。 翌日、アリスはこの発見を友人たちに話しました。友人たちも同じように魔法の本を使い、彼らのコードを高速化しました。こうして、プログラミング王国全体で「JITの魔法の本」が広まりました。 やがて、アリスは王国のプログラミング大会で優勝し、JITの魔法の本の力をさらに広めることになりました。彼女は「JITの守護者」として称えられ、プログラミング王国はかつてない繁栄を迎えました。 アリスはいつも心に誓いました。どんなに強力なツールも、それを使う人々の努力と情熱があってこそ、本当の力を発揮するのだと。彼女の言葉は次世代のプログラマーたちに伝わり、JITの魔法の本は永遠に受け継がれていくのでした。 前回のあらすじ。 Python count

                                        高速化のエンジニアリング。注文してから0.722秒。100倍速いぞ!Python : 75.884 C++ : 3.392   JIT Python : 0.722 JITコンパイラで高速化されたコードを自動生成するツール。 - Qiita
                                      • エラーが出たら喜べ。エラーをちゃんと出せ。 - Qiita

                                        どうもエラーを出すもしくはエラーが出るのが怖いという人がいるみたい。例えば改修を行うときに既存部分でエラーが出ないことを最優先にして増築を行いいびつな構造を生み出すとか、単純に例外を全然使わないとか。エラーが出ると、「うわ、エラーになった。手間かけさせやがって面倒だなぁ…」みたいな感覚があって、とにかく自分がコードを書くときも一切例外を投げないというスタンスをとりがちなのかもしれない。 私はここで、適切にエラーが出てくれるのはむしろ喜ばしいことであり、自分がコードを書くときも積極的にエラーを出すようにすべきだ、という主張をする。 関数定義のドキュメンテーションの一部 ある関数の中身で一番最初に書くべき処理は何か、それは引数のチェックをして条件を満たさなければエラーを出すことである。例えば文字列は特定の形式になってなければならないとか、数値に最大値最小値があるとか、これらは関数の入力の前提条

                                          エラーが出たら喜べ。エラーをちゃんと出せ。 - Qiita
                                        • 優秀と噂なCohere社のCommand R+でRAGチャットボットを簡単に構築して体験しよう! - Qiita

                                          1. はじめに Cohere社が最近リリースしたLLMのCommand R+がGPT4に迫る性能を発揮していたり、RAG利用での性能で話題となっています。 そのCommand R+でRAGを体験できるチャットアプリの実装がLightningAIにてチュートリアルが公開されています。 これを身近な環境で動かしてみたいと思います。 このチャットボットでCohere社の以下のモデルが使われています LLM: Command R+ Embed: embed-english-v3.0 / embed-multilingual-v3.0 Reranker: rerank-english-v3.0 / rerank-multilingual-v3.0 以下の動画のようにブラウザでPDFファイルをアップロードしてチャットで問い合わせができます。 2. 必要なもの 以下の2つを準備しましょう。 Cohere

                                            優秀と噂なCohere社のCommand R+でRAGチャットボットを簡単に構築して体験しよう! - Qiita
                                          • Rust と OS の知識 0 からはじめるRustで始める自作組込みOS入門 - 前半(スケジューラの実装まで) - Qiita

                                            きっかけ・読んでいく本 うさねこらーじの Discord サーバーで、いろいろな先輩たちに技術のことを教えてもらっています。 https://discord.gg/RMq7e5qbQj このなかで、著者の garasubo さんにサポートしてもらいながら以下の本の内容を実装しているのですが、 Rust の知識も OS の知識もない私にとっては内容がかなり高度なので、補助のためにこのブログを作成しています。 Rustで始める自作組込みOS入門 https://amzn.asia/d/ebuOUM1 ぜひこの本を読みながらこのブログを参照していただけると嬉しいです。 第 2 章 ベアメタルで Hello World 単語のかみくだいた説明 ベアメタルプログラミング OSのない環境で実行するためのプログラムを書くことです。この環境下では CPU ごとに決まった動作(たとえば、決まったアドレスにあ

                                              Rust と OS の知識 0 からはじめるRustで始める自作組込みOS入門 - 前半(スケジューラの実装まで) - Qiita
                                            • まるで詩のような日本語で書いたプログラム - 実際に動きます - Qiita

                                              はじめに 日本語プログラミングの議論が続いていますが気分転換にこんな奇抜なプログラムはどうでしょうか。 経緯 木村 明さん 1 の傑作かつ芸術的な日本語プログラムに「ポエム(Poem)」があります。 1986年に作られました。当時はPC-9801やFMRなどMS-DOS環境のPCが全盛で、このプログラムもPC-9801向けに書かれていました。プログラムは大変面白いのですが、そのような事情で現在では実際に動かすことはできず長いこと眠っていました。 一方で、Mindのほうは長らく開発していたGUI版が動き始め、Poemが使うグラフィック描画もできるようになったことから、Poem を実際に動かしてみたくなりました。9801グラフィックの互換処理を差し込むことでなんとか動かすことができました。動いたときは「ああ、こんなプログラムだったな」とちょっと感動しました。 公開について 氏の許可を得てソース

                                                まるで詩のような日本語で書いたプログラム - 実際に動きます - Qiita
                                              • ダイソーの在庫検索APIを叩く - Qiita

                                                const md5 = text => fetch('https://md5sum.deno.dev/' + text).then(r=>r.text()) // 店舗コード const str_cd = '002870' // yyyyMMdd:hhmmss sources\com\locationvalue\ma2\extensions\ScreenExtensionsKt.java:78 const request_datetime = new Date().toLocaleString('sv').replaceAll(/-|:/g, '').replace(' ', ':') // ジャン const sku_cd = ['4549131971149'] await fetch('https://zaikoapp.plat.daisojapan.com/api_get_store

                                                  ダイソーの在庫検索APIを叩く - Qiita
                                                • Terraform職人のためのOpenTofu入門 - Qiita

                                                  この記事は クラウドワークス Advent Calendar 2023 シリーズ1 の 4日目の記事です。 はじめに 「父さんな、Terraform職人やめてお豆腐職人で食っていこうと思うんだ」と言いたいだけの @minamijoyo です。 2023年8月HashiCorpはこれまでMPL2のOSSライセンスで公開していた主要製品をBSL(Business Source License)に変更することを発表し、Terraformはv1.6.0からOSSではなくなりました。 このライセンス変更を受けて、OSS版のTerraformを求める人たちで、MPL2時点のコードベースからforkしたOpenTofuの開発が進められています。 HashiCorpのBSLは、実質的に競合他社の商用利用に制限をかけたもので、ほとんどの一般的なユーザに直接的な追加の制限はありませんが、間接的にTerrafo

                                                    Terraform職人のためのOpenTofu入門 - Qiita
                                                  • 正規表現ミスって一晩誰もサービスにログインできなくしてしまった話 - Qiita

                                                    はじめに この記事は、本番環境などでやらかしちゃった人 Advent Calendar 2023の11日目です。 どうも、@_tinojiと申します。実に4年ぶりにアドベントカレンダーに参加しました。 正規表現で1文字消し忘れて、なんぴとたりともサービスにログインできない状態にしてしまったという話をします。正規表現にはまじで気をつけましょうという教訓になれば・・・ 犠牲となったログイン画面 とあるtoBなWebサービスを開発していたときの話です。法人のユーザーが使う管理画面的なイメージです。 当然ログイン機能があって、至って普通なログインなのですが1つだけ特徴がありまして、ログイン画面のURLをアカウントごとに変えています。https://example.com/<uuid>/loginみたいな感じですね。 あまり見ない形式ではありつつも、個別のUUIDを特定されない限りログイン画面に対し

                                                      正規表現ミスって一晩誰もサービスにログインできなくしてしまった話 - Qiita
                                                    • 現場で必要になるswaggerの知識 - Qiita

                                                      前回は「今日から始めるswagger入門」という最低限書けるようになっておいた方が良い物をこちらの記事で解説させてもらいました 今回は、筆者が4〜5年ほど現場で見てきたswaggerを元に、現場で必要になるswaggerの知識をまとめましたので、ぜひご覧になっていただけると嬉しいです! タグ付け pathsに書かれている各APIendpointをタグ付けしてグルーピングする目的で使用されます 現場では大量のAPIendpointを設計していくこととなるので、多くなってくると大変見辛くなってきます それをグルーピングすることにより見やすくしようということです openapi: 3.0.3 info: title: test-api version: 0.0.1 # ここから tags: - name: user description: ユーザー情報 # ここまで paths: /users

                                                        現場で必要になるswaggerの知識 - Qiita
                                                      • Cursorエディタで開発を爆速化しよう! - Qiita

                                                        初めに 最近Visual Studio Codeの代わりとなりえるCursorというエディタが 話題になりつつあります! AI搭載機能がついているということで、好奇心だけが取り柄の私は 早速触ってみました。 結果開発の効率がかなり上がるのでは? と思い記事にしてみました! Cursorとは? CusorはAnysphereが開発したエディタツールであり、 Visual Studio Codeが基になっています(VScodeのフォーク)。 また公式には、下記の記載があります。。 AI とのペアプログラミング用に設計されたエディターでソフトウェアをより迅速に構築 んん? AIとペアプロという意味深な記載が。。 もう少し特徴を具体的にします。 Cursorの特徴 ・・・少しだけイメージできてきたでしょうか? ChatGPTを利用している方も多いかとは思いますが、エディタで使えると 開発効率が上が

                                                          Cursorエディタで開発を爆速化しよう! - Qiita
                                                        • WebAssembly の過去・現在・未来 - Qiita

                                                          はじめに WebAssembly (略して Wasm) では WASI や WIT、 Component Model など様々な仕様があります。 それぞれが登場した背景、モチベーションなどを理解することでなんとなく概要を掴んでいくことができるのではないかと考えたため、過去・現在・未来と時間軸で整理してみました。 まず Wasm とその特徴に関して簡単に紹介した後、Wasm の過去として生まれた背景やモチベーションを紹介します。 そして現在の Wasm がなぜ注目を集めているのか、そして現在策定中の仕様と目指している未来について紹介します。 WebAssembly とはなにか WebAssembly はスタックベースの仮想マシン用バイナリ命令フォーマットの仕様です。Wasm と略されます。 Wasm ファイル(Wasm モジュール)は一般に .wasm という拡張子で表されるバイナリファイル

                                                            WebAssembly の過去・現在・未来 - Qiita
                                                          • Windows 11 では 7z をコマンドラインでも圧縮・解凍できるようになっていた - Qiita

                                                            Windows 11 23H2 以降、エクスプローラーが 7z、tar などの解凍に対応しました。さらに、Build 25992 では圧縮も可能となったようです。7-zip を追加インストールしなくてもこれらのアーカイブを取り扱えるのは嬉しいですよね。 1 一方で、PowerShell の Expand-Archive コマンドレットは拡張されておらず、ZIP 形式の解凍しかできません。 GAC Version Location --- ------- -------- False v4.0.30319 C:\Program Files\WindowsApps\Microsoft.PowerShell_7.… OperationStopped: File 'E:\test\archive.7z' does not appear to be a valid zip archive. せっかく

                                                              Windows 11 では 7z をコマンドラインでも圧縮・解凍できるようになっていた - Qiita
                                                            • 「システム構築はどこから始めるべきだろうか。システム構築が終わったらこうなる、というストーリーを語るところからだ。」 - Qiita

                                                              「システム構築はどこから始めるべきだろうか。システム構築が終わったらこうなる、というストーリーを語るところからだ。」アジャイル要求ユーザーストーリー はじめに ◆この記事は何? アジャイル開発における「要求」や「ユーザーストーリー」を細分化する記事です。 ◆対象は? 要求やユーザーストーリーを整理する方 アジャイル開発に関わる方 ◆ねらいは? アジャイル開発に関わる方が、何気なく使っている「要求」や「ユーザーストーリー」の解像度を上げること エンジニア人生に影響を与えたフレーズ 「システム構築はどこから始めるべきだろうか。システム構築が終わったらこうなる、というストーリーを語るところからだ。」は、書籍『テスト駆動開発』に出てくるフレーズです。 そして書籍『テスト駆動開発』の中で、私が最も印象に残っている文章です。 この文章に出会ってから、私は「言われた通りにシステムを作る」から脱却して、「

                                                                「システム構築はどこから始めるべきだろうか。システム構築が終わったらこうなる、というストーリーを語るところからだ。」 - Qiita
                                                              • チームで開発するならDev Containersで環境構築工程をスキップしませんか? - Qiita

                                                                読み飛ばしてください みなさまどうも。 限界派遣SESと言われて心が折れるnikawamikanです。 最近、学生さんと一緒になんやかんや開発することがあり、その中で使ってみてよかった技術の中にDev Cointanersと言われる技術があります。 VSCode限定ではありますが、開発環境の差異を可能な限り埋めてくれるスゴイやつです。 さらに言えば新たにチームに参加するメンバーに開発環境の構築を逐一説明する必要もなくなるので、入れ替わりの激しい限界派遣SESにこそ使う技術です。 本題 前提として以下の環境はインストールされているものとします。 Docker docker compose (WindowsやMacの場合DockerDesktopをインストールしているのでインストール不要のはずです) VSCode OSは上記がインストールできるのであればわりとなんでもOKだと思います(例外はど

                                                                  チームで開発するならDev Containersで環境構築工程をスキップしませんか? - Qiita
                                                                • 3 台の Raspberry Pi で始める自宅 Kubernetes クラスタの構築 - Qiita

                                                                  はじめに 最近 Raspberry Pi を3台購入し、自宅に Kubernetes クラスタを構築しました。 この記事ではその体験記を共有します。 また、自宅 k8s を構築する際に参考になる記事になる事も目指しています。 モチベーション 仕事で GCP 上で Kubernetes を使ったので、個人で Kubernetes クラスタを構築してさらに学習を深めたいと思いました。 実務ではクラウドサービスを使いますが、維持費が高額です。一日システムを立ち上げておくだけで数千円、一ヶ月では数万円かかってしまいます。 minikube などを用いてローカル環境で Kubernetes を動かすこともできますが、シミュレーター上の動作になってしまうので、どうせなら実際の環境に近いものを構築したいと思いました。 そこで、Raspberry Pi を用いることで、実際の環境に近い学習環境を構築してみ

                                                                    3 台の Raspberry Pi で始める自宅 Kubernetes クラスタの構築 - Qiita
                                                                  • シェル芸の可読性を向上させるマルチライナー記法のススメ - Qiita

                                                                    マルチライナー記法とは? マルチライナー記法とは、その名の通りシェル芸をワンライナーではなくマルチライナー(複数行)で書くことです。長すぎる行をワンライナーで書くと以下のように横スクロールが必要になって非常に読みにくくなります。(コードは Convert long single line command to a bash shell script より借用。長いコードとして利用しているだけで中身に意味はありません)。マルチライナー記法はこのようなワンライナーを読みやすく書くことです。 nice --20 iperf3 -c somelocation.com -f k | while IFS= read -r line; do echo "$(date) $line"; done | tee onespeed.txt | tee -a speeds.txt; sleep 30 ;cat o

                                                                      シェル芸の可読性を向上させるマルチライナー記法のススメ - Qiita
                                                                    • 評価されるエンジニアの特徴とは - Qiita

                                                                      こんにちは、Crane&Iの藤島です。 この記事で3記事目となりますが、少しずつ、自分の書くスタイルが定まってきたかなと感じます。 ありがたいことに、SEを取りまとめる事業統括という立ち位置を頂きながらお仕事をしているので、 私のこれまでのエンジニア、人生経験を交え、キャリア形成に結びつくような有益な情報をお伝え出来たらいいなと思いながら、文字を打っています。 今回は「評価されるエンジニアの特徴」に焦点を当てていきたいと思います。 最初に ちょっとした誤解を招く表現をするかもしれません。 斜め読みで構いませんので、一応、最後まで読んでください。 言い訳はちゃんと書きます(笑) 突然ですが、私は「贔屓(ひいき)」をする人間です。 併せてお伝えしますが、「えこ贔屓」は好みません。 というか、立場上、それを許されておりません。 ※「贔屓」と「えこ贔屓」は似ているようでまったく意味が違います。 贔

                                                                        評価されるエンジニアの特徴とは - Qiita
                                                                      • プロ驚き屋AIをチームのSlackに招待しタイムラインを荒らす - Qiita

                                                                        20XX 年、我々人類は進化著しい AI に驚くしかない日々が続いています。ソーシャルメディアに驚きがあふれインプレッションを競う様はまさに大海賊時代、いいねの海賊王に俺はなる、とばかり飛びぬけて耳目を引く超新星 ( スーパールーキー ) が頭角を現しています。 「プロ驚き屋」としばしば称されるルーキーたちは X ( 旧 Twitter ) のタイムラインに現れては情報の正確性を重んじるエンジニアや研究者を戸惑わせます。チームやコミュニティ内の Slack はそうした喧噪から離れたオアシスといえるかもしれません。そんなオアシスにプロ驚き屋を召喚しタイムラインを荒らすのが今回の目的です。次に実際の例を示します。 なかなか模倣できているのではないでしょうか。オアシスは今、ジャングルに変わりました。私たちが生きている世界では正確で吟味された情報だけにアクセスしたいという願いは実現されないので、現

                                                                          プロ驚き屋AIをチームのSlackに招待しタイムラインを荒らす - Qiita
                                                                        • スターの多い順にブコメを並び替える

                                                                          FANZAの検索結果から熟女を除外するブックマークレット がうまく動いたので、気を良くしてはてなブックマークのコメント欄をスター数順にソートするブックマークレットを作りました。 作った動機は、「注目コメントに入りきれなかったちょっといいコメント」をサクサク探したいから。結果として建設的コメント順位付けモデルを無効化していますが、あのアルゴリズムには特に不満は特にありません。 ブックマークレット javascript: (async () => { const wait = ms => new Promise(resolve => setTimeout(resolve, ms)); document.querySelector('.js-bookmarks-sort-tab[data-sort="recent"]').click(); window.scrollTo(0, document.

                                                                            スターの多い順にブコメを並び替える
                                                                          • Obsidian読書メモのすゝめ - Qiita

                                                                            どんな記事? Obsidianを使った個人的読書メモの残し方について紹介しています。 仕事関係で読んだ本については簡単にメモを残すようにしているのですが、いろんなツールを使った結果最終的にObsidianに落ち着いたので、自分の使い方を簡単に紹介しようと思います。 サンプル こんな感じでまとめてます。 読了日は結構つけ忘れるので適当なことが多いです。 メモり方 BookSearchプラグインを使ってファイル作成 まず本を読み始めたタイミングで、BookSearchを使ってファイルを作成します。 BookSearchプラグインのインストール方法については、以下公式Githubを参考にしてください。 今回は仮に今読んでいる『科学的根拠に基づく最高の勉強法』の読書メモを残していきます。 BookSearchとテンプレートを使えば簡単に以下のようなファイルが作成されます。

                                                                              Obsidian読書メモのすゝめ - Qiita
                                                                            • 【AtCoder】Pythonで競プロをするときの注意点まとめ【競技プログラミング】 - Qiita

                                                                              これは何? 競技プログラミングをPythonでやるときに注意すべき点をまとめました。 言語選択編 PythonがAtCoderには5種類ある AtCoderにはPythonの処理系が5つ入っています。具体的には Python (CPython 3.11.4) Python (Mambaforge / CPython 3.10.10) Python (PyPy 3.10-v7.3.12) Python (Cython 0.29.34) SageMath (SageMath 9.5) の5つです。それぞれ特徴があります。 Python (CPython 3.11.4) 一番オーソドックスなPythonです。 一般に(競プロ界隈でなく)Pythonというときはこれを指すと思います。 Python (Mambaforge / CPython 3.10.10) mambaforge経由で導入されたp

                                                                                【AtCoder】Pythonで競プロをするときの注意点まとめ【競技プログラミング】 - Qiita
                                                                              • dig の全てのコマンドラインオプションを一覧にしたシートを作成しました - Qiita

                                                                                概要 筆者は DNS Summer Day 2023 で「あたらしい dig」というテーマで発表を行いました(資料はこちら)。 DNS のテストツールである dig コマンドは、ネットワークエンジニアのみなさんが日常的に利用していると思います。 一方で、dig を用いているとたまに想定とは異なる結果が得られ、戸惑うことがあります。 原因としては、dig の送信するリクエストメッセージに関するデフォルト値が一般的な感覚と異なるために起きることが多いようです。 発表ではこれらの具体的な例を挙げつつ、もし dig のいくつかのコマンドラインオプションの存在やそのデフォルト値の知識があったならば、それらはすぐに解決したであろうことを示しました。 dig には非常に多くのコマンドラインオプションがあります。しかし、man ページや -h オプションで表示される簡易ヘルプではコマンドラインオプションが

                                                                                  dig の全てのコマンドラインオプションを一覧にしたシートを作成しました - Qiita
                                                                                • FastAPIを用いたAPI開発テンプレート - Qiita

                                                                                  はじめに FastAPIはPythonのWEBフレームワークで、同じ分類のフレームワークとしてFlaskやDjangoなどが挙げられます。FlaskとDjangoはよく比較され、Flaskが最小限のコードで書き始められるシンプルなマイクロフレームワークと呼ばれるのに対し、Djangoはログイン機能、データベース管理などが初めから備わっておりフルスタックフレームワークと呼ばれています。 FastAPIはFlaskと似ているマイクロフレームワークで公式ドキュメントでは次のように紹介されいます。FastAPI は、Pythonの標準である型ヒントに基づいてPython 3.6 以降でAPI を構築するためのモダンで高速(高パフォーマンス)な、Web フレームワークです。[1] 本記事では、以下の内容を扱います。 特徴である型ヒントとそれにより実現できるAPIドキュメントの自動生成 SQLAlch

                                                                                    FastAPIを用いたAPI開発テンプレート - Qiita