タグ

ブックマーク / qiita.com (4,843)

  • 生成AIにTOEIC®リスニング問題を無限に生成してもらい、スコア900超え達成した話 - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? はじめに 今年の夏はTOEICスコア900超えを一つの目標にしていて、そのためにはリスニングが課題でした。 とにかく数をこなそうと、無料で問題を解けるアプリを探して、初めはそれをずっとやっていましたが、一日に解ける問題数が限られていて、徐々に物足りなくなってきました。 前々からTOEICの問題ってAIで生成できるんじゃね?と思っていたので、この際スコア900越えに加えて、AIでリスニング問題生成&Webサービス化を目標にし、ようやく完成したので公開しました。 公開したリスニング問題AI生成サイト ※AIで生成し、内容のチェックは行ってい

    生成AIにTOEIC®リスニング問題を無限に生成してもらい、スコア900超え達成した話 - Qiita
  • チームにテストコードを書く文化を定着させる - Qiita

    この記事は? 皆さんお久しぶりです。@cosmeの開発エンジニアをしております、村田です。@cosmeを運営する株式会社アイスタイルではPHP -> TypeScriptへの技術移行を進めており、フレームワークとしてはexpress, oclif, そして記事で紹介するJavaScript製のテスティングフレームワークであるjestなどの各種ツールを使って開発を進めています。 この記事で紹介する内容は、チームでテストコードを書く文化を定着していく話です。というのも、既存プロダクトにて元々テストコードが十分に書かれていない部分があったため、リプレース後のサービスではしっかりとテストを書いていこう、ということでチームで一致団結しました。今まではテスト記述に対する基準は開発者によって任されていたところ、私の担当しているバックエンドのプロジェクトでは、テスト記述の優先度を高くしてリリース基準とし

    チームにテストコードを書く文化を定着させる - Qiita
  • 【図解解説】これ1本でGitをマスターできるチュートリアル!【完全版】 - Qiita

    はじめに こんにちは、Watanabe Jin(@Sicut_study)です。 今回は記事1で初心者が必要な知識を全て学べるGitチュートリアルを紹介していきます。 世の中にはたくさんのGitに関する教材があります。しかし、真に良いと思える教材はありません。 もちろん私も4年前はGitという言葉を知らない状態から、書籍などで学習をしました。 しかし、書籍で知識を得たとしても実際にコマンドを使って実践的に学んだわけではなかったのでほとんど身になりませんでした。 私が思う世の中にあるGitの教材のイケてない点は2つです。 結局ほとんどの人が、教材ではなく実際に使ってみて使えるようになっているはずです。 書籍でやったことを全部ちゃんとできるようになった人はいないと考えています。 実際に利用するコマンドは限られている、たまに使うコマンドを紹介しとしても「この記事1」で説明することができると思

    【図解解説】これ1本でGitをマスターできるチュートリアル!【完全版】 - Qiita
  • 要件定義|3分で読める非機能要件について - Qiita

    はじめに エンジニアのみなさま、日々の学習当にお疲れ様です! また記事まで足を運んでいただき当に感謝です。 約3分程度で読めるので最後まで読んでもらえると幸いです。 要件定義関連の記事の投稿をしました。時間あればぜひ読んでみてください。 今回は「非機能要件」の 可用性 性能・拡張性 運用・保守性 移行性 セキュリティ システム環境・エコロジー の6項目について理解を深めてアウトプットしようと思います。 非機能要件|6項目について 1. 可用性 システムが継続して利用可能な状態を維持する能力を指します。『稼働率』 で表現されます。システムは定期メンテナンスや予期しない障害により、一時的に利用できなくなることがあります。可用性は、稼働している時間と停止から復旧までの時間の割合で決まります。たとえば、Amazonの「Amazon ECS」サービスは 『99.99%』 の稼働率を保証しており

    要件定義|3分で読める非機能要件について - Qiita
  • プロジェクトにおける見積もり方法の種類と比較 - Qiita

    例えば要件定義の期待値は、上記の計算式に当てはめると (0.5 + 4×1 + 2) / 6 = 1.17時間になります。 類推見積もり 具体例 「Aという機能を持ったシステムを開発するのに、前回は3ヶ月かかった。今回のシステムも機能が似ているので、今回も3ヶ月程度で開発できるだろう。」 特徴 過去の類似プロジェクトのデータに基づいて見積もるため、迅速に概算を出すことができます。 (これ、実はみなさん日常で何気なくやっているのではないでしょうか??) 注意点 今回のプロジェクトと過去のプロジェクトが完全に同じであるとは限らないため、誤差が生じる可能性があります。 ボトムアップ見積もり 具体例 システム開発プロジェクトの場合 要件定義:1週間 設計:2週間 プログラミング:4週間 テスト:2週間 総合計:9週間 特徴 プロジェクトを細分化して見積もるため、より詳細で正確な見積もりが可能です。

    プロジェクトにおける見積もり方法の種類と比較 - Qiita
    masayoshinym
    masayoshinym 2024/09/24
    ファンクションポイント法の話かと思ったら違った。
  • 結局 Git のブランチ戦略ってどうすればいいの? - Qiita

    1つのIssueが大きくなると1 Pull Requestで大量の差分が発生します。 そうなるとレビュワーに負担がかかり、コンフリクトの可能性も高まり、コードレビューを効率よく進めることができません。 このINVEST原則を守ることでチームはより効果的に作業を進め、柔軟に対応して開発を進めることができます。 Git Flow Git Flowは5種類(main, hotfix, release, develop, feature)のブランチを運用するブランチ戦略です。 2010年に提唱された有名なブランチ戦略です。 オンラインサービスのように継続的デリバリーするコードを想定して作られた戦略ではないです。 main ブランチ 常にリリースできる状態を保つ hotfix, develop へ切り出す このブランチへの直pushはNG hotfix ブランチ バグ修正など緊急時に対応するためのブ

    結局 Git のブランチ戦略ってどうすればいいの? - Qiita
  • Pythonで作るポップなポモドーロタイマー - Qiita

    はじめに こんにちは!今回は、Pythonを使ってポモドーロタイマーを作成する過程を、要件定義から実装まで詳しく解説します。このプロジェクトを通じて、以下のスキルを身につけることができます: ソフトウェア開発のプロセス(要件定義、仕様策定、設計、実装) Pythonの基的な構文とオブジェクト指向プログラミング Tkinterを使ったGUIアプリケーションの作成 時間管理の基概念とその実装方法 それでは、プロジェクトの各段階を見ていきましょう。 1. 要件定義 まず、ポモドーロタイマーの基的な要件を定義します。 1.1 機能要件 25分の作業時間を計測するタイマー機能 5分の短い休憩時間を計測するタイマー機能 15分の長い休憩時間を計測するタイマー機能(4回の作業セッション後) タイマーの開始、一時停止、再開、リセット機能 現在のフェーズ(作業、短い休憩、長い休憩)の表示 完了したポモ

    Pythonで作るポップなポモドーロタイマー - Qiita
  • テストカバレッジ100%を追求しても品質は高くならない理由と推奨されるカバレッジの目標値について - Qiita

    皆さんは 「カバレッジが高ければ、ソースコードの品質が高い」という誤解 をしていませんか?少なくとも私は今までテストカバレッジ100%を追求していました。「C0/C1カバレッジ100%」がユニットテストの完了条件として含まれているプロジェクトも多いかと思います。 稿では、「カバレッジが高ければ、ソースコードの品質が高い」という命題がなぜ誤っているのかを論理的に証明し、カバレッジを計測する当の目的、そして推奨されるカバレッジの目標値について紹介したいと思います。 「カバレッジが高ければ、ソースコードの品質が高い」はなぜ間違っているのか? カバレッジを計測する当の目的 バグを潜在させてしまう恐怖のテストケース・アンチパターン カバレッジの目標値は100%にするべきではない カバレッジの目標値は何%にするべきなのか? (テストカバレッジの種類については『ホワイトボックステストにおけるカバレ

    テストカバレッジ100%を追求しても品質は高くならない理由と推奨されるカバレッジの目標値について - Qiita
  • WordPressのuploadsにあるファイルへの直接アクセスを制限(WP新仕様対応) - Qiita

    WooCommerceというWordPress用プラグインでショップを構築している。最近、デジタル商品(PDF)の販売もやり出しているのだが、一つ問題があって、WordPressはメディアファイルをアップロードすると/wp-content/uplaods/というディレクトリ以下にファイルが置かれるのだが、これには何も制限がかかってなくて、直接URLを入力したらファイルが表示されてしまう。これじゃ販売してる意味がないし、検索エンジンクローラーにも引っかかってしまう。 まぁFTP使って、直接アクセスできない領域に置けばいいじゃないかという話もあるのだが、諸事情からそれは見送り(詳細省きます)。次のような要件を.htaccessで実現することにした。 要件 デジタル商品(.pdf、.mp3、.zip)へのアクセスは禁止 ただし拡張子の前に_sampleと着いているものはアクセス可能。 e.g.

    WordPressのuploadsにあるファイルへの直接アクセスを制限(WP新仕様対応) - Qiita
  • SDK does not contain 'libarclite' at the path...の対処法 - Qiita

    SDK does not contain 'libarclite' at the path '/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a'; try increasing the minimum deployment target 開発環境 Xcode15.4 Swift 5.10 CocoaPods 1.13.0 問題解決の解説 エラー文で検索すると以下のような質問が StackOverflow にあった。 また、回答内で言っている Apple Staff の回答はこちら: Xcode14以降から、iOS 11以上のデプロイメント・ターゲットでのビルドしかサポートしておらず、libarclite

    SDK does not contain 'libarclite' at the path...の対処法 - Qiita
  • こどおじがAndroidアプリ作ってたらGoogleに子供部屋を追い出された話 - Qiita

    自己紹介 皆様は個人開発をやっておられますでしょうか。私も億万長者を目指して日々スマホアプリ開発をしております。 代表作は安倍晋三エクスプローラー/聖帝エクスプローラー、最近力を入れているアプリはガチ有能AI助手です。他にもいくつかのアプリを個人で開発し、AppStore/GooglePlayで公開しています。 私はこれらのアプリを実家の自室で開発していました。10年以上実家暮らしをしていた筋金入りの子供部屋おじさんです。 なお、ガチ有能AI助手ではバックエンドで使用しているCloudRun、Firebase、Algolia、Suno、Huggingfaceでそれなりに運営費用が発生しています。そのためIn App Purchaseを使用してアプリ内から寄付ができるようにしています。 IAPを使用した寄付機能(iPhone) IAPを使用した寄付機能(Android) GooglePlay

    こどおじがAndroidアプリ作ってたらGoogleに子供部屋を追い出された話 - Qiita
  • いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう! - Qiita

    いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう!ShellScriptBashLinuxUNIXmacOS はじめに [ $? -eq 0 ] や [ $? -ne 0 ] は冗長でデメリットしかありません。非常に多く見かける書き方ですが、1979 年に Bourne シェルが広く公開された時からこのようなコードは必要ありませんでした。実際に当時はこのような書き方は使われておらず、このような書き方をしなければならなかった歴史的な経緯などはありません。これはなぜか広まってしまった良くない書き方です。 優れたコードとは無駄がないシンプルなコードです。丁寧なコードとは無駄な処理を書くことではありません。[ $? -eq 0 ] や [ $? -ne 0 ] は書かないほうが、簡単で読みやすくわかりやすくなります。優れた文法

    いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう! - Qiita
  • AWSが2024年7月25日に新規利用終了したサービスと代替 - Qiita

    AWSがCloud9、CodeCommit、他いくつかのサービスで、新規利用受付を終了したと、チーフエヴァンジェリストのJeff BarrがX(旧Twitter)に投稿しました。これらのサービスをすでに利用開始しているAWSアカウントでは現時点で引き続き利用できますが、未利用のAWSアカウントでは新規利用開始ができないようです。 終了されるサービスの代替情報などを(私見ですが)まとめます。 終了すると言及されたサービスは? 以下です(Jeff Barrの投稿での記載順)。 S3 Select CloudSearch Cloud9 SimpleDB Forecast Data Pipeline CodeCommit いくつかはすでに類似サービスがあり、そちらが主流になっていて、影響が小さいかと思います。ですがCloud9とCodeCommitはいまでも利用者が多く、後継サービスがAWSになく

    AWSが2024年7月25日に新規利用終了したサービスと代替 - Qiita
  • axiosやfetchに替わるKyのススメ - Qiita

    Kyとは Kyは、Sindre Sorhusが開発したJavaScript向けの軽量かつ多機能なHTTPクライアントです。ネーミングの意図はよくわかりませんが、AxiosやネイティブのFetch APIに代わる、より効率的で使いやすい選択肢として設計されています。 Kyの利点 軽量で効率的: Kyのコアは非常に小さく(約2 KB)、パフォーマンスが重要なアプリケーションにとっては特に大きなメリットとなります。 Promiseベース: Fetch APIと同様に、KyはPromiseを基盤としており、async/await構文との組み合わせが容易です。 シンプルなAPI: Kyが提供するAPIは非常にシンプルなので、学習コストが抑えられます。 再試行機能: Kyには、失敗したリクエストの再試行する機能が組み込まれており、エラーハンドリングの実装コストを減らします。 JSON処理: Kyは自動

    axiosやfetchに替わるKyのススメ - 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
  • 2024年最新版:Pythonデータ解析ライブラリ総まとめ - 実践的ガイド - Qiita

    はじめに Pythonのデータ解析エコシステムは日々進化を続けています。2024年現在、効率的なデータ処理、直感的な可視化、高度な機械学習の自動化など、様々な新しいツールが登場しています。記事では、最新のPythonデータ解析ライブラリを紹介し、それぞれの特徴や使用例、実際のユースケース、そして導入方法まで詳しく解説します。 1. データ操作ライブラリ 1.1 Polars: 高速データ処理の新標準 Polarsは、Rustで実装された高速なデータ操作ライブラリです。pandasに似たAPIを持ちながら、大規模データセットでより高速に動作します。 特徴: 高速な処理速度 メモリ効率が良い pandasに似たAPI 使用例: import pandas as pd # サンプルデータを作成 data = { "age": [25, 32, 28, 35, 40, 50], "categor

    2024年最新版:Pythonデータ解析ライブラリ総まとめ - 実践的ガイド - Qiita
  • 「Pythonのドキュメントでも読むか~」「え、何その裏技」 - Qiita

    読み飛ばしてください おはようございます、しなもんです。 Pythonの公式ドキュメントを読んでたら、なんか知らない便利機能がたくさん出てきました。 なんだこれ。 というわけでまとめてみました。 参考になれば幸いです。 f-stringsの拡張機能 f-strings、便利ですよね。大好きです。 そんなあいつには裏技があるみたいです。 デバッグ用の=演算子 Python 3.8以降、f-stringの中で=演算子を使用することで 変数名とその値を同時に表示できるらしい。

    「Pythonのドキュメントでも読むか~」「え、何その裏技」 - Qiita
  • 自動テストを考慮したテスト設計 〜概念〜 - Qiita

    テスト設計において何を考えてますか? テスト設計の時、何を考えていますか?テスト対象の機能のこと。テストすべき観点のこと。テスト技法を適用すること。期待値を明確にすること。テスト条件を満たす手順や環境を定義すること。最終的にテストケースに落とし込むこと。色々と考えることはあると思います。 テスト設計のWhatとHow これら考えていることは大きくWhatとHowに分けることができます。Whatというのは、「何をテストするか?」を考えることです。一方、Howというのは、「どのようにテストするか?」を考えることです。普通テスト設計で考えることと言えば、何をテストするか、いわゆるテスト観点を抽出したりすることが大事と思われがちですが、Howのどのようにテストするかも同じくらい必要です。これは、これまでの経験上そうしていたといったことや、過去のプロジェクトのやり方を流用するなどして暗黙的になってい

    自動テストを考慮したテスト設計 〜概念〜 - Qiita
  • ブラウザ開発者ツールのネットワークタブに表示されない情報送信手法 - Qiita

    はじめに はじめまして、セキュリティエンジニアのSatoki (@satoki00) です。今回はブラウザの開発者ツールのネットワークタブから隠れて、Webサイト内の情報を送信する手法をまとめます。所謂Exfiltrationというやつです。中にはCSPの制限をBypassするために用いられるテクニックもあります。CTFなどで安全に使ってください。 前提 発端はWeb上でテキストの文字数をカウントできるサイトが閉鎖する際の話です。カウント対象のテキストデータがサイト運営 (やサイトを改竄した攻撃者) に盗み取られていないかという議論が巻き起こっていました。「盗み取られていない」側の主張は、ブラウザの開発者ツールのネットワークタブにリクエストを送信した形跡がないというものでした。ここで ブラウザの開発者ツールのネットワークタブに表示がなければ外部へデータを送信していないのか? といった疑問が

    ブラウザ開発者ツールのネットワークタブに表示されない情報送信手法 - Qiita
  • SSH接続を10倍速くするたった3行の設定 - Qiita

    今回は、SSH接続を劇的に高速化する方法をご紹介します。たった3行の設定を追加するだけで、接続時間を10分の1に短縮できます。しかも、2回目以降の接続では認証も自動的に行われるので、パスワードやパスフレーズの入力も不要になります。 要点 .ssh/configファイルのHost *セクションに以下の3行を追加するだけです。 詳しい説明 1. ControlMaster auto この設定で、1つのSSH接続で複数のセッションを共有できるようになります。新しくSSH接続を確立するたびに認証情報を入力し直す手間が省けて、接続がぐっと速くなります。具体的には: 初回の接続時のみ認証が必要 2回目以降は既存の接続を再利用するため、認証プロセスをスキップ パスワードやパスフレーズの入力が不要になり、接続がほぼ瞬時に完了 2. ControlPath ~/.ssh/mux-%r@%h:%p Contr

    SSH接続を10倍速くするたった3行の設定 - Qiita