ブックマーク / techblog.gmo-ap.jp (46)

  • AI搭載ターミナルwarpを使おう

    GitHubアカウントでのログインがあります。これはチームコラボレーションの機能で必要になってくるからとのことです。ログインせずに試せるようにもしていくそうです。 使用感 ダブルクリックでの選択 クリックでのカーソル移動 キーボードショットカット などMacの基的な操作感のまま直感的に入力できるようになっています。 またtabキーでは通常のタブ補完もできますし、実行コマンドの詳細も確認できたりします。 ブロック コマンドごとにブロックに別れています。そのため コマンドごとに(コマンド、出力、その両方、プロンプト、ディレクトリ)をコピー ブロック内での検索 ブロックで移動できるのでスクロールが少なく済む などがメリットとしてあります。 ブロックごとにコピーできるので共有するときなど捗ります。 コマンドパレット、コマンドサーチ ⌘P でコマンドパレットにアクセスできます。 コマンドパレット

    AI搭載ターミナルwarpを使おう
  • 【Git】新規ローカルブランチ作成時に自動でFirst Commitを行う for Four Keys

    この記事は GMOアドマーケティング Advent Calendar 2023 5日目の記事です。 皆さん、お久しぶりです。GMOアドマーケティングのGood!Apps開発担当のharuです。 最近、弊社の開発部ではFour Keysを導入し、開発者体験や生産性の向上に注力しています。今回は、Four Keysの計測に必要な処理の一部を自動化しましたので、その詳細についてお話しできればと思います。 Four Keysとは まず、Four Keysについて簡単に説明します。 Four Keysは、GoogleのDevOps Research and Assessmentチームが提唱した、ソフトウェア開発チームのパフォーマンスを評価するためのフレームワークです。このフレームワークは以下の4つの指標で構成されています。 デプロイの頻度: 番環境へのリリースの頻度を示します。頻繁なリリースは、ア

    【Git】新規ローカルブランチ作成時に自動でFirst Commitを行う for Four Keys
  • APIって何?例を交えてわかりやすく解説

    この記事は GMOアドマーケティング Advent Calendar 2023 14日目の記事です。 2023/12/19: APIの種類についての記述で指摘がありましたので、修正しました。コメントありがとうございます。 お久しぶりです、GMOアドマーケティングの天河です。 今回は、非エンジニア、駆け出しエンジニア、そして特に「APIの意味を定期的に調べに来てしまう人」向けに、API について書きました。 ところでみなさん、「API」の意味 を調べるときに 「APIの意味ってなんだろう… 『あぷりけーしょんぷろぐらみんぐいんたーふぇーす』? ソフトウェアやプログラム、Webサービスの間をつなぐインターフェースのこと… わかったようなわからないような…」 ――― 1ヶ月後 ――― 「APIの意味ってなんだったっけ?『あぷりけーsy となった経験ありませんか? 天河がそうです。 この「API

    APIって何?例を交えてわかりやすく解説
  • IPAのセキュリティマネジメント試験を受けてきました!

    こんにちは、GMOアドマーケティングのryoutakoです。 普段はRuby on Railsを使った開発やプロダクトの脆弱性診断などセキュリティ関連の業務をしています。 タイトルにある通り情報セキュリティマネジメント試験を受けたのでその話です。 (無事合格できました🎉) 情報セキュリティマネジメント試験とは 情報セキュリティマネジメント試験は情報処理推進機構(通称: IPA)が主催している国家資格です。 以下IPAのホームページより引用 情報セキュリティマネジメント試験は、情報セキュリティマネジメントの計画・運用・評価・改善を通して組織の情報セキュリティ確保に貢献し、脅威から継続的に組織を守るための基的なスキルを認定する試験です。 参考:IPA独立行法人 情報処理推進機構 情報セキュリティマネジメント試験情報 簡単に内容を説明すると 情報セキュリティの基礎とマネジメントに関わる知識

    IPAのセキュリティマネジメント試験を受けてきました!
  • OpenAIのEmbeddings APIを使って文の意味上の類似度を計算

    はじめに おはようございます。こんにちは。こんばんは。 GMOアドマーケティングのY-Kです。 前にBERTを使って文をベクトルに変換してからなんやかんやする記事を書いてから約半年が経過したのですが、その間にChatGPTが大きく流行り、言語生成系AIに大きな風が吹きました。 というわけで今回は、OpenAIEmbeddings APIを利用し、記事タイトルの類似度を見てみようと思います。 準備 今回も例のごとくGoogle Colab上で行います。 https://colab.research.google.com/?hl=ja OpenAIEmbeddings APIを利用できる様にAPIキーは事前に取得しておいてください。 まずは必要なライブラリを使えるようにします。

    OpenAIのEmbeddings APIを使って文の意味上の類似度を計算
  • AWSエンジニアから見たGCP(データ分析編)

    こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。前回の記事「AWS SAPを取得したら視野が広がった話」を読んでいただいた方々、ありがとうございます。今回のテーマは「AWSエンジニアから見たGCP」第2弾として、代表的なGCPのコンピューティング系サービスについてAWSと比較し感じた点についてお話いたします。 (第1弾の記事はこちら↓)IaaSCompute EngineAWSではEC2に相当するサービス。各種インスタンスタイプや提供OSイメージ、インスタンス向けのストレージ機能、オートスケール機能など、インスタンスのアーキテ... DWH BigQuery BigQueryはフルマネージドなサーバレスDWHサービスで、Googleが開発した大規模データ向けの分散システムであるDremelを基にしておりSQLクエリを使用して大規模データの分析を行うことができる。さ

    AWSエンジニアから見たGCP(データ分析編)
  • Docked Rails CLIでRailsの開発環境を素早く構築する

    はじめに こんにちは。 GMOアドマーケティングの石丸(@thomi40)です。 前回はRails 7で追加されたComparisonValidatorについて紹介しました。 この記事は GMOアドマーケティング Advent Calendar 2022 3日目の記事です。はじめにこんにちは。GMOアドマーケティングの石丸(@thomi40)です。前回の記事では Rails 7 から実装された query_log_tags について紹介しました。今回の記事では同じく Rails 7 から追加された ComparisonValidator について紹介します。※記事内の画像は筆者が作成したアプリケーションをキャプチャーしたものです。ComparisonValidatorとはComparisonValidator は任意のオブジェクトの比較を行うバリデーターです。数値の比較には Numeric

    Docked Rails CLIでRailsの開発環境を素早く構築する
  • テキストエリアを入力値によって動的に変化させる

    document.querySelectorAll(".auto-adjust-sample-textarea").forEach((targetArea) => { // 初期値によってtextarea高さをadjust let lineHeight = Number(targetArea.rows); while (targetArea.scrollHeight > targetArea.offsetHeight){ lineHeight++; targetArea.rows = lineHeight; } // 入力値によってtextarea高さをadjust this.addEventListener('input', (e) => { e.srcElement.style.height = 0 e.srcElement.style.height = e.srcElement.sc

    テキストエリアを入力値によって動的に変化させる
  • ファシリテーションで意識していること

    この記事は GMOアドマーケティング Advent Calendar 2022 8日目の記事です。 こんにちは。GMOアドマーケティングのT.Mです。 はじめに ファシリテーションと聞くと何をイメージしますか?ミーティングの進行役?参加者の発言を促す人?結論を導くこと? 僕は、ミーティングを上手く回す方法くらいのイメージでした。 ミーティングで感じた課題点 ミーティングの進行役をよくするのですが、色んな課題を感じていました。 時間内に結論が出ない。話があちこちに飛ぶ。意見の対立が起こり、解決しない。話さない人がいる。 これらの課題をどうやったら解消できるか考えた結果、ファシリテーションを意識してみようと思いました。 参考書籍 下記の書籍を参考にしました。興味ある方はぜひ読んでください。 ザ・ファシリテーター 人を伸ばし、組織を変える(森時彦 著、ダイヤモンド社)ファシリテーションの教科書(

    ファシリテーションで意識していること
  • AWSエンジニアから見たGCPサービス(コンピューティング編)

    前回の記事「AWS SAPを取得したら視野が広がった話」を読んでいただいた方々、ありがとうございます。 この記事は GMOアドマーケティング Advent Calendar 2021 23日目の記事です。こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。前回の記事「無事故でPostgreSQLバージョンアップ兼Cloud SQLへ移行した話」を読んでいただいた方々、ありがとうございます。今回は、プライベートでAWS認定試験「ソリューションアーキテクト - プロフェッショナル」(通称:SAP)を取得し勉強していく中でアーキテクトとしての視野が広がったので、勉強のコツも含めてお話しいたします。きっかけきっかけは今年2月末にGCPPCAを取得し...

    AWSエンジニアから見たGCPサービス(コンピューティング編)
  • 正規表現検索の効率化

    GMO NIKKOのT.Iです。 今回は当社のTRUE データフィードで使用している正規表現検索の効率化についての記事となります。 前提(背景と目的) まずは宣伝(笑) 当社公式サイトでは上記となっていますが、簡単にいうと ・クライアントからデータを預かる ・預かったデータを広告媒体毎のフォーマットの変換する ・変換したデータを指定された場所に送信する ということをやっています。 その中のデータの変換時に禁止文言が入ったデータを行ごと除外するということをやっています。 大量のデータに禁止文言が入っているかをチェックする必要があるのですが、 初期想定では精々10万件に対して100~1000個の禁止文言をチェックする程度(1億回程度)で十分と判断していました。 ですが運用後に禁止文言が3万を超えてしまい、チェック処理が10万件×3万=30億回のチェックを行う場合があり、処理時間がかなり長くなっ

    正規表現検索の効率化
  • 自律組織へ、エンジニア360度評価の紹介

    この記事は GMOアドマーケティング Advent Calendar 2021 1日目の記事です。 はじめに こんにちは、 GMOアドマーケティング 開発部長のクリスです。 開発部では、半期ごとの目標設定・評価にあわせてエンジニア360度評価を実施しています。 今回はその導入背景、内容について皆さんと共有していきたいと思います。 導入背景 もともと会社全体では、会社の行動規範に則って、部署横断で匿名、点数のみ、コメントなしという形式で360度評価を実施しています。 部署横断のおかげで開発メンバー同士だけではなく、仕事に関わる事業部のメンバーからも評価をもらえるのはよかったという声がある一方、匿名とコメントなしの仕組みのために、FBされるのは点数だけで、具体的に何がよかったか悪かったか、なかなか実感が湧かないという声が多くありました。 せっかくやるなら、もっと納得感が高い、自分自身

    自律組織へ、エンジニア360度評価の紹介
  • AWS SAPを取得したら視野が広がった話

    この記事は GMOアドマーケティング Advent Calendar 2021 23日目の記事です。 こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。 前回の記事「無事故でPostgreSQLバージョンアップ兼Cloud SQLへ移行した話」を読んでいただいた方々、ありがとうございます。 こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。前回の記事「AWSエンジニアから見たGCPサービス(DB/ストレージ編)」を読んでいただいた方々、ありがとうございます。今回は、GCPのマネージドサービスであるCloud SQLへPostgreSQLのバージョンアップも兼ねて無事故で移行した時に思ったこと・気づいたことがたくさんあったので、それについてお話しいたします。移行の経緯約1年前、女子向けメディア「めるも」はオンプレ環境からGCPへほぼ既存構成のま

    AWS SAPを取得したら視野が広がった話
  • 機械学習が正しく機能しないときに考えること

    この記事は GMOアドマーケティング Advent Calendar 2021 17日目の記事です。 はじめに おはようございます。こんにちは。こんばんは。 GMOアドマーケティングのY-Kです。 突然ですが、機械学習関連のタスクでこんなことを経験したことはありませんか? 書籍や論文に載せられている有効的な手法を使用したにもかかわらず、タスクの評価指標(KPI)が向上しない訓練データ上では良い結果だが、番環境で予測させてみるとそうでもないそもそも、機械学習を用いてタスクを取り組む際、どこから手をつけていけば良いかが分からない 機械学習についての基的な知識はある(はず)与えられたデータに対して、データ分析〜学習〜予測の一連の作業を行なったことがある(大学の研究、kaggleのコンペ等)が、実際のビジネスの施策として機械学習を用いようと考えた途端に思考が纏まらなくなる 上記のような、ひよっ

    機械学習が正しく機能しないときに考えること
  • クラウドネイティブな設計の1歩目〜コンテナ・デザインパターン〜

    この記事は GMOアドマーケティングAdvent Calendar 2021 25日目の記事です。 はじめに こんにちは、GMOアドマーケティングの星野です。 今年のアドベントカレンダーも日で最後となりました。 アドベントカレンダーを書いていると今年も終わりということを感じます。 GMOアドマーケティングではいくつかのプロダクトをGCPへと移行をしています。 移行では障害を起こさないことが優先されますが、最終的には単に移行するだけではなく、システムをクラウドネイティブな設計に変えていくことで、クラウドの恩恵を最大限に受けれるように改善していきたいと思ってます。 既存のシステムをクラウドネイティブな設計に変えていくにはコンテナ化が必要になります。 コンテナ化を行う際の設計指針の一つにコンテナ・デザインパターンというものがあります。 今回は、書籍の分散システムデザインパターン からいくつかの

    クラウドネイティブな設計の1歩目〜コンテナ・デザインパターン〜
  • 無事故でPostgreSQLバージョンアップ兼Cloud SQLへ移行した話

    こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。 前回の記事「AWSエンジニアから見たGCPサービス(DB/ストレージ編)」を読んでいただいた方々、ありがとうございます。 こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。前回の記事「元AWSエンジニアGoogle Cloud Professional Cloud Architectを取得した話」を読んでいただいた方々、ありがとうございます。 今回は「AWSエンジニアから見たGCP」をテーマにし、いくつかのDB/ストレージ系のGCPサービスについてAWSと比較し感じた点についてお話いたします。 オブジェクトストレージCloud StorageAWSではS3に相当するストレージサービス。ストレージクラスの概念や耐久性(イレブンナイン)、ライフサイクルルール/ACLでのアク... 今回は、GC

    無事故でPostgreSQLバージョンアップ兼Cloud SQLへ移行した話
  • エンジニアキャリアシートの導入について

    はじめに こんにちは、 GMOアドマーケティング 開発部長のクリスです。 この度、開発部にてエンジニアキャリアシートを導入しました。 それはどういうものか、導入背景などについてお話しをします。 今回の話は メンバーの育成、キャリア形成を支援するエンジニアリングマネージャー、 また、自分のキャリアについて考えているエンジニアに役立つ内容だと思います。 まず、今回導入したものは以下のようなフォーマットとなっています。 キャリア形成において Will(目指す方向性) Can(今できること) Must(求められること) というフレームワークを使うことは多いと思います。 今回はそれをベースに、 現在の状態を確認するためのNow Willを目指すため、直近のAction メンバーの成長をフォローするためのSupport の3つの要素を追加しました。 導入背景 細かいところはほかにもありますが

    エンジニアキャリアシートの導入について
  • UiPathでAPIを使用し、Backlogの課題の作成・更新を行う。

    皆さんこんにちは。 広告配信システムの管理画面開発と全社業務自動化のRPA開発を担当してるR.Aです。 昨年のAdventCalendar2020でUiPathを使用しSalesforceのチケットを更新する方法について執筆を行いましたが、今回はBacklogAPIを使用し、Backlogの課題を作成・更新するロボットを作成したいと思います。 社内では、Backlogを活用し開発の進捗管理や申し込み管理を行っています。GMOアドマーケティングでは、Backlogに登録されている特定の課題を取得し、社内サービスで使用するアカウント作成の処理をRPAで行っています。 1、APIキーを取得する。 はじめに課題の追加や更新を行うため、APIを作成いたします。 まずBacklogにログインを行い、画面右上にある自身のアイコンをクリックし個人設定に進みます。 個人設定の中にあるAPIをクリックし、発

    UiPathでAPIを使用し、Backlogの課題の作成・更新を行う。
  • Railsで作った脆弱性をBurp Suiteで診断してみる

    こんにちは、GMOアドマーケティングのR.Yです。 今回はBurp Suiteによる脆弱性診断をしていきます。前回OWASP ZAPを使って自動でテスト用のサイトを診断し、複数の脆弱性を確認することができました。そして、今回はそこで検出された「SQLインジェクション」の脆弱性についてBurp Suiteを使って詳しく確認していきます。 このブログは前回投稿したこちら↓の続きになります。 この記事は GMOアドマーケティング Advent Calendar 2020 14日目の記事です。はじめにこんにちは、GMOアドマーケティングのR.Yです。今回はタイトルの通り、Railsで作った脆弱性をOWASP ZAPで診断してみたいと思います。自分は主にRailsを使ったWebアプリの開発やWebアプリの脆弱性診断を行うことが多いので、この記事を書くことによってRailsセキュリティ周りや脆弱性診

    Railsで作った脆弱性をBurp Suiteで診断してみる
  • AWSエンジニアから見たGCPサービス(DB/ストレージ編)

    こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。 前回の記事「元AWSエンジニアGoogle Cloud Professional Cloud Architectを取得した話」を読んでいただいた方々、ありがとうございます。 こんにちは、GMOアドマーケティング インフラ開発部のhakumaiです。前回の記事「PostgreSQLのメモリアーキテクチャを知る」を読んでいただいた方々、ありがとうございます。先日、Google Cloud のProfessional Cloud Architect(以下PCA)を取得する機会があったので今回はその合格までの道のりについてお話しいたします。きっかけきっかけとなったのは、Google Cloudが主催している特別トレーニング「G.I.G.」に参加する機会が巡ってきたことです。GMOアドマーケティングに入社して約1年が経つと

    AWSエンジニアから見たGCPサービス(DB/ストレージ編)