ブックマーク / dev.classmethod.jp (56)

  • Github issueをアサインしたらコード修正&PR出すAI Agentをつくる | DevelopersIO

    Introduction 先日Devinが発表されました。 課題を与えると、自律的に情報収集・コーディング・デバッグ等 システム構築をやってくれるすごいAIだそうです。 ここまでやらなくても、Agent用アカウントにGihubでissueをassignしたら 自動で実装してpull requestだしてくれたら便利では、と思い 実装してみました。 今回はAmazon Bedrock(Claude3)をつかって実装してみたので それについて解説します。 Environment MacBook Pro (13-inch, M1, 2020) OS : MacOS 14.3.1 Node : v20.8.1 Git : 2.43.2 AWSアカウントはセットアップ済みとします。 Setup Agent用Githubアカウントの準備 適当なメールアドレスを用意し、Githubアカウントを作成しまし

    Github issueをアサインしたらコード修正&PR出すAI Agentをつくる | DevelopersIO
  • GASの開発環境をローカルで作成する方法(2023年7月版) | DevelopersIO

    Google Apps Scriptの環境構築をVSCode上で行う方法について詳しく解説していきます。clasp,asideを使って構築するので、爆速で構築できます。 ことのはじまり 私は最近Google Apps Script(GAS)の学習を始めました。 GASの学習を始めると、まずはAppsScript公式のIDEでスクリプトを書いていくことになると思います。 しかし、普段VSCodeを使い慣れている身からすると、VSCodeの便利機能が使いたくて仕方なくなります。 それじゃあ、使い慣れたVSCodeを使おうじゃないか!! AppsScript公式のIDEだとGitに差分を残していくこともできないぞ!!(できます) というわけで、GASをVSCodeを使って開発する為の環境構築の手順を書いていきたいと思います。 前提条件 VSCodeがインストールされている Node.jsがインス

    GASの開発環境をローカルで作成する方法(2023年7月版) | DevelopersIO
  • SQLiteを分散データベースに変えるmvSQLite | DevelopersIO

    Introduction 先日Githubに公開されたmvSQLiteですが、 「SQLite互換のスケーラブルなデータベース」とのことで話題になってます。 mvSQLiteの特徴は、SQLiteのストレージレイヤーをFoundationDBに分離しているところです。 これにより、DynamoDBのように際限のないスケーラビリティ、point-in-timeでの読み取り、 そしてRDBの厳密な一貫性を提供します。 作成者曰く、mvSQLiteの目標は 「SQLiteを分散データベースに変えること」 とのことです。 FoundationDBとは FoundationDBは大量の構造化データを処理するために設計された分散データベースです。 2015年にAppleが買収したことでもニュースになりました。 データをソート済みのKeyValueデータとして保管し、 すべての操作にACIDトランザクシ

    SQLiteを分散データベースに変えるmvSQLite | DevelopersIO
  • GitHub ActionsでDockerレイヤーキャッシュを利用したい | DevelopersIO

    こんにちは!コンサル部のinomaso(@inomasosan)です。 GitHub ActionsのCI/CDはVM上でワークフローが実行されるため、同じイメージであってもキャッシュを利用することなく最初からビルドが実行されます。 ワークフローが実行されるたびに、ベースとなるイメージのダウンロードやファイルコピーが実行されてしまうと、デプロイ時間が伸びてしまうので改善が必要です。 そこで今回は前回作成したGitHub Actionsワークフローに、Dockerレイヤーキャッシュを追加していきます。 どのActionsを追加するか 今回はdocker/build-push-actionというDockerイメージのビルドからプッシュ + キャッシュをいい感じに実行してくれるActionsを利用していきます。 上記ActionsのCacheのドキュメントに、以下のサンプルコードがあるので、こち

    GitHub ActionsでDockerレイヤーキャッシュを利用したい | DevelopersIO
  • ReactベースのあたらしいフレームワークRemixをためしてみた | DevelopersIO

    OSSとしてリリースされたばかりのReactベースのフルスタックWebフレームワークであるRemixをためしてみました。 はじめに こんにちは、CX事業部MAD事業部の森茂です。 re:Inventを前にAWSの情報も気になるところですが、フロントエンド界隈もReact Conf 2021を前にReact v18 betaをはじめ、Next.js v12やReact Router v6、新しいRoutingライブラリReact Locationのリリースなどなど注目のリリースラッシュが続いているようです。そんな中Reactをベースにした新しいフレームワークであるRemixが日(2021/11/23日時間)リリースされました。 Remixとは RemixはReactRouterの作者でもあるMichael Jackson氏(@mjackson)とRyan Florence氏(@ryan

    ReactベースのあたらしいフレームワークRemixをためしてみた | DevelopersIO
  • EC/CRMの自社サービス「prismatix」開発チームのプロジェクトマネージャーになって最初にやったことn連発 | DevelopersIO

    この7月からDev PjMにクラスチェンジしました。何もわからない状態から、いかにしてプロジェクトの状態を把握・コントロールしようとしたか、その試行錯誤の記録です。 4ヶ月前に言ってたことダイジェスト Dev PjMになって最初の頃、こんな話を書いていました。 prismatixの開発者から開発チームのプロジェクトマネージャーにクラスチェンジした話 | DevelopersIO マネジメントの姿勢 そこで、私は 指揮者(Conductor) として振るまおうと決意しました。 何をしたいのか Devチームを中心として系が回るようにする ことを実現したいと思っています。 もう少しわかり易い言葉でいうと、「prismatixというサービスの 開発 を通じて、顧客およびチームに 価値を届け続けている 状態を作る」のが目的になります。 どうしていくのか Devチームもハッピー、みんなもハッピー な状

    EC/CRMの自社サービス「prismatix」開発チームのプロジェクトマネージャーになって最初にやったことn連発 | DevelopersIO
  • Stripeのオンライン決済を実装する時はChargesよりPayment Intentsを使おう #Stripe | DevelopersIO

    まずStripeのオンライン決済を実装するには3通りの方法があります。 Stripe Checkout: Stripeが提供する支払いページにリダイレクトして決済する Charges API: Charges APIを呼んで自前の支払いフォームで決済する Payment Intents API: Payment Intents APIを呼んで自前の支払いフォームで決済する Charges と Payment Intents 、どちらを使っても自前の支払いフォームでの支払いフローを構築できます。 しかし、Chargesの方は今後は拡張せずPayment Intentsの製品開発に集中することがこちらのページで説明されています。 なのでできればPayment Intentsの方を使いましょう。 補足ですが、移行は推奨されていますが2020/07/21現在Payment IntentsにChar

    Stripeのオンライン決済を実装する時はChargesよりPayment Intentsを使おう #Stripe | DevelopersIO
  • 無償で使えるプロ仕様の映像編集ソフト「DaVinci Resolve」を導入する(for Win/Mac/Linux) | DevelopersIO

    弊社主催のオンラインイベント、Developers.IO 2020 CONNECT! みなさんはもう参加されましたでしょうか。 今回ぼくもこちらに参加し、2の動画をあげました。 その動画編集につかったのが、標題にも書きました Blackmagic Design 社製の「DaVinci Resolve 16」です。 こちらはプロユースの格的な機能が備わっている一方で無償でも使え1、今回のようなセッション動画向けの編集程度であれば、3年落ちのMacBook Pro 13inch2でもそこそこの速度で動きます。 むしろZoomやQuickTime Playerで撮ったままの720p・1080pサイズのMP4ビデオ・AACオーディオ、つまり不可逆圧縮された素材をそのままタイムラインに配置してストレスなく動いてくれるので、サブスクリプションなし・登録のみで使えることを考えれば、今回の用途において

    無償で使えるプロ仕様の映像編集ソフト「DaVinci Resolve」を導入する(for Win/Mac/Linux) | DevelopersIO
  • EC の在庫はどのように管理しているのか? | DevelopersIO

    事業開発部で prismatix というサービスの導入支援を行っている大矢と申します。 みなさんが普段利用している EC サイトでは、商品の在庫数をどのように管理しているのでしょうか? 今回は、洋服屋さんが T シャツを売る話を例に、考えてみましょう。 EC サイトを始めた洋服屋さん 今回登場する洋服屋さんは、店舗で洋服を売っています。 洋服の在庫は倉庫で保管しています。 洋服は工場で製造し、倉庫を経由して店舗に配送します。 この洋服屋さんが、EC サイトを始めました。 在庫数の登録 倉庫には T シャツが 30 枚あります。 このうち 20 枚は店舗で売るつもりです。残り 10 枚を ECサイト で売ります。倉庫では、店舗用の在庫とEC用の在庫を分けて管理します。 EC サイトに、ECサイト用の在庫数として、「 T シャツ: 10 」と登録します。 *1 倉庫 EC サイトの在庫数 引当

    EC の在庫はどのように管理しているのか? | DevelopersIO
  • TypeScriptの異常系表現のいい感じの落とし所 | DevelopersIO

    みなさんTypeScriptでサーバアプリケーション(Node.js)のロジックを書く時に、異常系の表現をどのようにされていますでしょうか?ここでいう異常系とは、仕様上想定される異常のことです。準正常系と言ったりもするかと思います。 私はJavaScriptの延長でTypeScriptをはじめたので、最初は null や undefined を返したり throw を用いるやり方をしていましたが、次第にTypeScriptが持つ型を生かし、できるだけ型安全に異常系を表現したいと考えるようになりました。そして試行錯誤した結果、いい感じの落とし所に落ち着いたので、その内容についてお伝えしたいと思います。 また記事の後半では、異常系の型を実装する中でハマった点についてもお伝えしたいと思います。 TypeScriptの異常系表現について 1. nullやundefinedを返す 冒頭でも述べたよう

    TypeScriptの異常系表現のいい感じの落とし所 | DevelopersIO
    IzumiSy
    IzumiSy 2020/03/30
    Either型まで作ったらもうパターンマッチしたいしコンパイラに網羅性チェックアウトまでしてほしい…
  • 【書評】「インフラ設計のセオリー」新人インフラエンジニアが押さえておくべき内容が詰まった一冊 | DevelopersIO

    「難しいばっかり読んで眠くなってませんか?いいありますよ!」 ご機嫌いかがでしょうか、豊崎です。 育成チームのリーダーを行なっている都合から、エントリー向けのインフラエンジニアの書籍を読むことが多くなっています。日は、その中で読んだ、「インフラ設計のセオリー」というについてご紹介させていただきます。 基的にはIPAの非機能要求グレードに沿って特に重要な項目を説明していく内容になっています。 インフラエンジニアを始めるときに、教科書として読んでおけば 成長曲線が変わったんじゃないかな? と感じました。それくらい基礎的な知識の習得とイメージ付けには最適だと思います。 具体的には、非常に有益なドキュメントではあるものの、圧倒的な文章量で睡魔を送り込んでくる非機能要求グレードの活用について図や絵を多く交えて非常に理解しやすい文章で説明をしてくれます。 内容はしっかりしているのに、とても読

    【書評】「インフラ設計のセオリー」新人インフラエンジニアが押さえておくべき内容が詰まった一冊 | DevelopersIO
  • Dockerでサクッと使い捨ての開発環境を用意する | DevelopersIO

    もこです。 「各種アプリケーションのバージョン管理が面倒」 「Dockerfileにするほどでもないけどコンテナの中で実行したい」 などなど、作業マシンを汚したくないときなど結構あると思います。 Dockerfileなどでアプリケーションのみを入れたコンテナとは違う使い方をした、「作業用コンテナ」を作ってみました。 ベースのコンテナを作る まずは最新のUbuntuのコンテナの中に入ります docker run --name="dev_container" -it ubuntu:latest コンテナに入ったらパッケージを更新し、開発環境などに必要なパッケージ類をインストールしていきます。 apt update -y apt install curl vim git net-tools build-essential -y # などなど、必要なパッケージを入れていきます 今回はNode.js

    Dockerでサクッと使い捨ての開発環境を用意する | DevelopersIO
  • 【Scala】Future と未来のセカイ | DevelopersIO

    はじめに こんばんは!突然ですが Future 使い倒してますか? Future は、なんか中二病っぽい名前ですが、とっても便利ですよ! 一緒に Scala の Future を散歩してみませんか? なんとなく Future “未来”という文脈 以前、文脈を持った値 についてお話したことがあったと思います。 Future も文脈を持った値です。 Future[A] は 「未来に存在する A という値」*1 という文脈を持っています。 などという小難しいことはとりあえずおいといて、 scala.concurrent.Future の世界を散歩してみましょう。 ブログ記事を取得する関数を作る とりあえず、ブログサイトを作っていることにしましょうか。 findPostById という関数を用意しました。データベースから記事をひっぱってくるイカしたヤツです。 // 記事を取得する def find

    【Scala】Future と未来のセカイ | DevelopersIO
  • EC2でサーバーに負荷を発生させる stress ツールを使ってみる | DevelopersIO

    はじめに こんにちは植木和樹です。Amazon Linux AMI 2014.09がリリースされて随分と経ちましたが、リリースノートにちょっと目を引いた記載がありました。 Amazon Linux AMI 2014.09 Release Notes New packages In addition to the features above, here are some other new packages added based on customer requests: : stress-1.0.4 : stressというのはCPUやメモリーの負荷を発生させるツールです。サーバーの高負荷状態でのアプリケーション挙動を確認する際に使用します。便利なツールなので使い方をおさらいしてみました。 stressの使い方 プロジェクトページ stressツールのプロジェクトページはこちらです。 s

    EC2でサーバーに負荷を発生させる stress ツールを使ってみる | DevelopersIO
  • golang echoアプリの自動テストを書く | DevelopersIO

    丹内です。Golang 1.6とEchoフレームワークを使ったアプリケーションに対して自動テストを書いてみます。 前提 MacGo 1.6を使います。パッケージ管理はglideです。 ディレクトリ構成は以下のとおりです $GOPATH/ ├── .envrc ├── .git/(省略) ├── .gitignore ├── README.md ├── bin/(省略) ├── pkg/(省略) ├── src │   ├── github.com │   │   ├── alecthomas │   │   │   ├── gocyclo │   │   │   │   ├── LICENSE (省略) │   ├── myproject │   │   ├── glide.lock │   │   ├── glide.yaml │   │   ├── handler │   │   │

    golang echoアプリの自動テストを書く | DevelopersIO
  • [小ネタ] mkdir したディレクトリに cd する方法 9 選 +1 (BASH) ※追記あり | DevelopersIO

    $ mkdir /very/_very/Very-long/directory_name/20170915 なんて操作をしたあと、そのディレクトリにcdしたい場合ってまれによくありますよね。 どんなやり方があるか考えてみました。 1. コピペする そのまんまですが、これをやりたくなくてこの blog を書いてます。 2. TAB 補完で頑張る これも無いわけではないですが、間違えたりすることを考えると正直あんまりやりたくないです。 3. 上矢印キーで前コマンドを呼び出し、右矢印キーで先頭に戻ってmkdirをcdに書き直す よく見る方法ですが、もうすこし少ない手数でできないでしょうか。 4. 上矢印キーで前コマンドを呼び出し、Ctrl-Aで先頭に戻ってCtrl-Dx5 のあとにcd BASH のキーバインドはデフォルトだと emacs モードなので、このやり方が出来ます。 でもまだちょっと手

    [小ネタ] mkdir したディレクトリに cd する方法 9 選 +1 (BASH) ※追記あり | DevelopersIO
  • Ember.js入門 の記事一覧 | DevelopersIO

    Ember.js入門 の記事一覧です

    Ember.js入門 の記事一覧 | DevelopersIO
  • Rails4 でセッションストアに DynamoDB を使う | DevelopersIO

    2ヶ月以上前ですが、Rack アプリケーションで DynamoDB を セッションストア用として使うための gem が公開されていました。 DynamoDB Session Store for Rack Applications Rails だと ActiveRecord のセッションストアがありますが、RDB なので、どうしても気になるのは負荷と障害ですね。 そんな時は、スケーラブルかつ耐障害性に優れた DynamoDB を使って解決しましょう。 *1 ということで、Rails4 で DynamoDB をセッションストアとして使う方法を試してみました。 Rails アプリケーションの作成 先ずは Rails アプリケーションの作成です。 $ mkdir try_dynamodb_sessionstore && cd try_dynamodb_sessionstore $ bundle i

    Rails4 でセッションストアに DynamoDB を使う | DevelopersIO
  • [新サービス] 一撃でCI環境を作れる AWS CodeStar | DevelopersIO

    渡辺です。 2017/04/19開催(日時間:2017/04/20)の『AWS Summit in San Francisco』で発表された新サービス『AWS CodeStar』についてお知らせします。 一言で言えば、CodeCommit, CodePipeline, CodeBuild, CodeDeployとそれらに付随する実行環境を一撃で構築・管理できます(2017年4月の時点で、東京リージョンでは利用できません)。 実行環境もカバーする最強のスキャホールド AWS CodeStarが何者か、一言で言えば、一時期に流行ったスキャホールドの類です。 Ruby on Railsが登場した時、コマンドひとつでウェブアプリケーションの雛形ができることに衝撃を覚えた人は多いでしょう。 ベース部分をスキャホールド(足組)として作り、肉付けをしていくというスタイルが流行ったかと思います。 AWS

    [新サービス] 一撃でCI環境を作れる AWS CodeStar | DevelopersIO
  • [Ruby on Rails]paperclipでつくるS3への画像保存アプリ | DevelopersIO

    はじめに paperclipというGemを使い、Amazon S3に画像を保存するRailsアプリを作成してみました。ただ画像を保存するだけでは、aws-sdkを使うのと手間はそんなに変わらないですが、paperclipを使うと以下の機能が簡単に実装できます。 サムネイルとそれ以外など、アップロードされた画像から異なるサイズの画像ファイルを作成して保存する S3へ保存する画像には権限をつけ、画像を全公開しないようにする 作成手順とソースコード 早速、アプリの作成手順とソースコードについて書いていきたいと思います。Railsのアプリケーションの雛形は出来ている前提です。 1.ImageMagicのインストール paparclipはImageMagicを使用するため、ローカルにインストールされていない場合は以下のコマンドでインストールしてください。(Macの場合のコマンドです) $ brew

    [Ruby on Rails]paperclipでつくるS3への画像保存アプリ | DevelopersIO