タグ

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

  • Excel目検に抵抗するで🤜🤛 - Qiita

    表計算ソフトの歴史 Excelとプログラマの戦いの歴史は長い。Excelというものの質は表計算ソフトであり、表計算ソフトの元祖は 1979年の VisiCalcというテキストユーザインタフェース (TUI) ベースのツールに遡る。 Screenshot of VisiCalc running on an Apple II computer やりたいこと 何らかのツール(DB, Apache POI, プログラム)で表を出力した際に、その出力に異常がないか調べたい というのは、DBのデータと出力に幅があるのでテストをするにしても起こりうるパターンが多く、結果として出力される例外的なデータの検出が難しいがそれを見つけたい もう少し抽象化して書くと、ある規定された機能についてテストするのではなく異常検知・変化検知を行いたいということ あるデータベースの規定された機能に対してのテストは次回やり方

    Excel目検に抵抗するで🤜🤛 - Qiita
  • 【Rails初心者向け】ブランチを切り替える前に気を付けたいDBマイグレーションの注意事項 - Qiita

    はじめに Railsはとても便利なwebアプリケーションフレームワークです。 gitも非常に便利なソースコード管理ツールです。 この2つのツールがあれば、初心者でも効率良くwebアプリケーションを開発できます。 ただし、学習用の小さなアプリケーションを一人で開発しているときはブランチはひとつかふたつで十分ですが、業務などで大きなアプリケーションを複数人で開発する場合は、複数のブランチで並行して開発が進める必要が出てきます。 こういうケースではデータベースマイグレーションを正しく理解し、正しく扱わないと、開発環境やソースコードが混沌としてきます。 Rails初心者の多くはこうした知識を持たないまま、チーム開発に参加しがちです。 この記事では「学習用の小さなRailsアプリケーション」を卒業し、「チームで開発する大きなRailsアプリケーション」に足を踏み入れる前に知っておくべき、データベース

    【Rails初心者向け】ブランチを切り替える前に気を付けたいDBマイグレーションの注意事項 - Qiita
    foaran
    foaran 2023/12/08
  • なぜ僕は公式ドキュメントを読むのが苦手なのか - Qiita

    はじめに 皆さんは、『公式ドキュメントを読んだほうがいいよ』とよく耳にしませんか? そこで、『よし読むぞ!』と思っても、なかなかうまくいきませんよね💦 (そういう方々がこの記事を見に来てくれると思っている👀) 私も、公式ドキュメントを読むのが苦手で、まず最初に、Qiitaなどの技術系ブログに頼ってしまいますw そこで、なぜ自分が公式ドキュメントに苦手意識があり、どうしたらその抵抗をなくせるのかを考えたので、記録として記事にしたいと思います!🙆 ちなみに、公式ドキュメントとの思い出は、1年前ぐらいにDockerの公式ドキュメントで何が書いてあるか理解できず、15分くらいで読むことを諦めましたw ※自分がこの記事を通して公式ドキュメントが読めるようになるために努力した記事なので、公式ドキュメントを批判した記事ではないです! 対象読者 公式ドキュメントを読むのが苦手な若手エンジニア 😅公

    なぜ僕は公式ドキュメントを読むのが苦手なのか - Qiita
  • 【まとめ】大学が公開している有益な資料 - Qiita

    はじめに 今回は各大学が公開している、エンジニア向けの資料をまとめていきます。 東京大学 ChatGPT活用法 ChatGPTの基礎的な内容から実際にどのように活用すべきかが解説されている。 Pythonプログラミング入門 Pythonについて環境構築から始まり、基文法、応用的な使い方まで分かりやすく解説されている。 AWS入門 ハンズオン形式でAWSの学習ができる。 AI・データサイエンスの活用事例 データサイエンスやAIの活用事例を学べる。 人工知能・深層学習を学ぶためのロードマップ AIやデータサイエンスの具体的な活用事例が学べる。 京都大学 プログラミング演習 Python 統計学 統計学やデータ分析、検定を学べる。 慶應大学 ChatGPTの活用資料 ChatGPTを用いた開発方法が学べる。 東京工業大学 機械学習 筑波大学 データベース データベースの基から正規化や設計とい

    【まとめ】大学が公開している有益な資料 - Qiita
  • data-turbo-confirm の確認ダイアログをカスタマイズする方法 - Qiita

    完成イメージ はじめに Turbo では、フォームやリンクに data-turbo-confirm 属性をつけると確認ダイアログを表示できます。 通常はブラウザ標準の確認ダイアログ window.confirm() が使われます。 実は、Turbo.setConfirmMethod() で window.confirm() ではなく別の処理を実行するように設定できます。 適当な関数を Turbo.setConfirmMethod() の引数にすることで、window.confirm() の代わりに独自の確認ダイアログを表示できるようになります。 引数にする関数が Promise<boolean> を返すのであれば、dialog タグを使うことも、Bootstrap のような CSSフレームワークのモーダルを使うことも、Micromodal.js のようなライブラリを使うこともできます。

    data-turbo-confirm の確認ダイアログをカスタマイズする方法 - Qiita
  • Cloudflare スタックを駆使してQBハウスの待ち人数推移を眺める - Qiita

    目的 QBハウスがもたらす「省時間」効果を最大限に享受するには、QBハウスでの「待ち時間」を最小限にする必要があります。 QB HOUSEとは? | QB Lab | QBハウス "10分の身だしなみ" QB HOUSE が考える「省時間」とは、同じ社会的・経済的効果や便益を、 より少ない時間で得られるヘアカットサービスを提供することです。 このクオリティを高めていくために、私たちは多様な取り組みをスタートしています。 そのため、公式サイトでは店舗ごとの待ち人数を確認することができます。 ご利用案内 | QBハウス "10分の身だしなみ" 渋谷南口店 | 店舗検索結果 | QBハウス "10分の身だしなみ" ただ、もったいないのは「現在の」待ち人数しか確認できません。 QB PREMIUM では、アプリ予約ができるようですが、始まったばかりのサービスのため、QBハウスで待ち時間なく対応して

    Cloudflare スタックを駆使してQBハウスの待ち人数推移を眺める - Qiita
  • 今日から始めるswagger入門(最低限書けるようになる) - Qiita

    swaggerとは 古の時代、API仕様書はwordやexcelで表現され、各所に共有されるというのが一般的でした。 ですが近年、API仕様を表現する際にはswaggerを利用するのが最も効率的で、保守性が高く、世間一般で仕様化され、見やすいというのもあり、一般化されてきたのではないのでしょうか 今回はそんなswaggerの書き方について、まずは書くために覚えておきたいポイントを解説していこうかと思います! どう書いてくか swagger editorで書く 公式がWeb上に提供しているツールを利用し、すぐにでもswaggerの執筆が可能となっています! なにをインストールする必要もなく開始1秒で利用できるので、私も重宝してます なお、ページを開くとサンプルAPI仕様がすでにある状態でのスタートとなり、記法の参考などにもなります vscodeで書く 必要なプラグインをインストールし、vsc

    今日から始めるswagger入門(最低限書けるようになる) - Qiita
  • ActiveRecordからJSON Schema(swagger)ドキュメントを作る - Qiita

    モチベーション swagger便利!APIドキュメントやクライアントのmodelを自動生成したい! しかし、JSONのAPIドキュメントを作るためには型情報が必要であり、rubyには型記述が無い。 ActiveRecord::Migrationではカラムと型を記述していて、ActiveRecordオブジェクトにはマッピング情報があるのに、だ。 であれば、JSONの構造体記述をActiveRecord情報から生成できれば幸せになれるのでは?という記事です。 前提 Rails5系のAPIモード JSONレスポンスにはActiveModelSerializersを利用 JSON schemaにはswaggerを利用 swaggerの記述にはswaggard gemを利用 完成形 JSON API情報を追記したRailsオブジェクトである。 コメント部分がswaggardのための記述となり、YAR

    ActiveRecordからJSON Schema(swagger)ドキュメントを作る - Qiita
    foaran
    foaran 2023/09/17
  • Windows環境でdevcontainerにほぼ引き篭れる構成を作った - Qiita

    Dockerって環境を汚さないで使えて便利ですよね。 vscodeっていろんな言語の開発環境を手軽に作れて便利ですよね。 ということでRemote Developmentによる作業コンテナ(devcontainer)を使ってコンテナ側に引き篭って開発できる環境を作ってみたので、環境構成と要点をここに書き出してみようと思います。 注意事項 この記事は ホストOSがWindows環境で vscodeDockerコンテナを使って なるべくUnix系に寄せて使えるようにする 前提での環境構築のお話になっています。 ホストOSにLinuxMacを使っていたりコンテナを使わなかったりホストWindows上のシェル操作で十分な場合は、この記事は適合しない内容が多分に含まれています。 また、個々のツールや環境のセットアップ操作などはほぼ書かれない予定なので、必要に応じて他の記事を参照してください。

    Windows環境でdevcontainerにほぼ引き篭れる構成を作った - Qiita
  • チームで開発するならDev Containersで環境構築工程をスキップしませんか? - Qiita

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

    チームで開発するならDev Containersで環境構築工程をスキップしませんか? - Qiita
  • 【塩漬けダメ絶対】AWSのAurora&RDSがDBエンジンの延長サポートを有償提供! - Qiita

    時間 2023/9/1(金)の深夜、AWSより以下のアップデートが発表されました! 土曜の朝からXで早速話題になっています。 ニュースリリース ブログ ※全体的にまだ日語ドキュメントに反映されていない情報が多いので、リンク先にRDS Extended Supportに関する言及が見られない場合は言語設定をEnglishに切り替えて再確認することをお勧めします。 3行でまとめると? AWSAuroraおよびRDSのDBエンジンの所定サポート終了後、最大3年の延長サポートを有償提供する 対象のDBエンジンはMySQL 5.7 & PostgreSQL 11および、それ以降の主要バージョン 2023年12月から延長サポートへのオプトインが可能。実際の課金開始はバージョン依存。最速でも2024年3月1日以降となる クラウドにおける「DBバージョンアップ」の扱い AWSクラウドが提供するマネ

    【塩漬けダメ絶対】AWSのAurora&RDSがDBエンジンの延長サポートを有償提供! - Qiita
  • RSpec RequestSpecでsessionを利用する - Qiita

    Rspec request specでセッションの読み込み、書き込みを実現してみる 今回はActionDispatch::Requestのsessionメソッドを上書きする形で対応します allow_any_instance_of(ActionDispatch::Request).to receive(:session).and_return({}) RSpec.configure do |config| # ... # テストケース共通の事前処理 config.before(:each) do # let(:rspec_session) で指定された値を セッションの初期値とします session = defined?(rspec_session) ? rspec_session : {} # destroyメソッドを実行してもエラーにならないようにします(必要であれば) session

    RSpec RequestSpecでsessionを利用する - Qiita
  • Railsで1つのフォームで複数のモデルを登録・更新させる - Qiita

    Controller ポイントは以下の二つ。 - strong parameterに、company_financial_attributesを追加してあげる。(更新時のためにidもパラメータに含めておく) - 付随するアソシエーションも同時に登録する場合はbuildであらかじめ作成しておくこと。(has_oneではbuildが使えないのでbuild_~~を使用します) class CompaniesController < ApplicationController before_action :find_company, only: [:show, :edit, :update, :destroy] def new @company = Company.new @company.build_company_financial end def edit end def create @c

    Railsで1つのフォームで複数のモデルを登録・更新させる - Qiita
  • TerraformでAWSのOIDCできるIAM Roleを作成しGitHubの設定まで一気に済ませる - Qiita

    概要 TerraformではAWSなどのクラウドサービスのみならず、GitHubのリソースの管理もできます。 記事ではTerraformを使ってGitHub ActionsからOpenID ConnectでAssume RoleできるIAM Roleの作成をします。 また、TerraformGitHub Actionsのシークレットに作成したRoleのarnを登録するところまで一括でやります。 参考 https://zenn.dev/kou_pg_0131/articles/gh-actions-oidc-aws https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/configuring-openid-connect-in-amazon-web-services https:

    TerraformでAWSのOIDCできるIAM Roleを作成しGitHubの設定まで一気に済ませる - Qiita
  • OpenAI Function Calling を Zod + TypeScript で型安全に扱う - Qiita

    概要 OpenAI の Chat Completions API に Function Calling と呼ばれる新しい機能が追加されました。これを使うと、JSON Schema で指定した型に従う JSON 文字列を GPT が返してくれます。(ただし 100% valid な JSON が返る保証は無い) 特にライブラリに頼らずに Function Calling を利用しようとすると、 JSON Schema を書く OpenAI API にリクエスト 返ってきた JSON 文字列をパースして検証する というステップが必要になって面倒ですが、Zod のスキーマさえ書けば 1, 3 の手間を省きつつ型安全に実装することができます。 目指す姿 import { z } from "zod"; // 手動でコードを書くのは関数の名前、説明文、Zod スキーマの部分だけ const func

    OpenAI Function Calling を Zod + TypeScript で型安全に扱う - Qiita
  • ABC304のE問題までを解説 【Python】~UnionFindの宝庫~ - Qiita

    挨拶 こんにちは、Halcyonです。 記事ではABC304のA~E問題をPythonで実装したものを解説しようと思います。 今回はゴリ押しこそしていませんが、公式解説とは違った解法で解いた問題があります。 ところで私はまだUnratedになったのを飲み込めていません。 パフォーマンス良かったのに…(後述) 何故E問題まで解説するのか? E問題までを安定して解くことができれば水色コーダー前半程度のパフォーマンスを出すことができます。 この記事が初心者向けなのもあり、初心者でも緑や水色コーダーになれれば十分だと思い、そのボーダーラインであるE問題までを解説しています。(定期) 基礎を理解しよう! A問題 First Player 問題文と制約 人$1$、人$2$、…、人$N$と番号付けられた$N$人が、この順番で時計回りに円卓に座っています。 特に、時計回りで人$N$の次の位置には人$1$

    ABC304のE問題までを解説 【Python】~UnionFindの宝庫~ - Qiita
  • ChatGPTに表記揺れのある値を自動分類してもらう方法 - Qiita

    ChatGPT当に便利ですね。 ChatGPTは会話形式で答えてもらうだけではなく、プログラムから呼び出して使ってもかなり高精度な答えを返してくれることがわかってきました。こうなってくると使い方無限大です。 今回は、CSVにユーザの自由入力で登録された職業の項目を産業別に分類したいと言ったユースケースを想定して検証を進めました。 たとえば、アンケートなどで職業などを入力してもらう場合、どうしても表記のふれが出てしまいます。(たとえばSE,ソフトウェアエンジニア,プログラマーとか) これを防止するために、ユーザ入力時に予めマスタを用意しておき、プルダウンなどで入力してもらうといったことをすればよいですが、世の中の職業は数えきれないほどあり,マスタを準備するのは大変・・・ 準備できたとしても、あまり選択肢の数が多いと今度は入力者がそこから選ぶのが不可能になってきてしまいます。 とりあえず情

    ChatGPTに表記揺れのある値を自動分類してもらう方法 - Qiita
  • フリー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
  • ChatGPT で抽出 & フォーマットのタスクで安定して出力させるテクニック - Qiita

    この記事は 前回の記事:ChatGPT で抽出 & フォーマットのタスクをするときのテクニック の続きです。 ChatGPT で抽出 & フォーマットのタスクで安定して出力させるテクニック スクレイピングしたテキストから特定の文字列を抽出するときに、正規表現等を使う代わりに ChatGPT を使うととても簡単に実装できてしまうことに感動しました。 前回の記事である程度テクニックがわかりましたが、少量のデータに対してしか使っていなかったため、どれくらいの確率でうまくいくのかはわかりませんでした。 今回は ChatGPT でに入力するテキストを追加し、更に検証した際に分かったことを書きます。 もう少し詳しい背景については前々回の記事:スクレイピングした文字列を ChatGPT で簡単にフォーマットするを参照してください。 なぜこの記事を書こうと思ったか 「ChatGPT で〜してみた」とか「C

    ChatGPT で抽出 & フォーマットのタスクで安定して出力させるテクニック - Qiita
  • GitHub Copilot for Businessを勢いだけで法人利用開始してみました【PublicOpen2日目版】 - Qiita

    記事は、2023年2月14日に公開されたGitHub Copilot for Businessを同16日に法人にて利用開始してみた記録です。仕様変更などもあり得ますので、法人で利用開始される方は必ずご自身での公式ドキュメント確認等もお願いします。 GitHub Copilot for Businessの利用を検討されている方へ 株式会社講談社のウェブメディア内製化チーム「techチーム」&KODANSHAtech合同会社のゼネラルマネージャー、長尾です。 今回は、チーム内で以前から注目を集めていたGitHub Copilot for Businessの利用を開始してみた記録を公開したいと思います。 事前には不明点などもあり、じっくり検討を重ねてもよかったのですが、「えいや」でやってみてから考えるというスタイルで、勢い優先で利用開始しました。 導入を検討されている組織は多いと思いますので、

    GitHub Copilot for Businessを勢いだけで法人利用開始してみました【PublicOpen2日目版】 - Qiita