アクトインディ開発者ブログ

子供とお出かけ情報「いこーよ」を運営する、アクトインディ株式会社の開発者ブログです

Elastic Beanstalk 入門

morishitaです。 アクトインディではいこレポやいこーよとりっぷなどいくつかのサービスで稼働環境として AWS Elastic Beanstalkを利用しています。 本エントリでは Elastic Beanstalk を使ってみる例として Docker コンテナで極々簡単な Web アプリを公開す…

M1 mac 上で Lima の Intel on ARM を試してみる

morishitaです。 前回は M1 Mac 上の Docker Desktop でオーソドックスな構成の Rails アプリケーションであるいこレポの docker-compose の開発環境を動かしてみました。 思ったより少ない変更で動くことが確認できました。 tech.actindi.net ※ ↑前回のエン…

M1 Mac 上の Docker Desktop で Intel Mac で使ってきた Docker Compose を動かしてみる

morishitaです。 昨年、Macbook Pro が一新されて最新モデルは、Apple Silicon 搭載機、つまり M1 Mac のみとなりました。 2020 年に最初の M1 Mac が出たとき、 ARM 系 CPU に変わるということから私が思ったのは「開発環境で使っている Docker イメージが…

Amazon ECR Public Gallery から Docker Official Images を利用する

morishitaです。 サーバーサイドの開発では Docker コンテナを利用することが一般的になりました。 本番環境はもちろん、開発環境も Docker Compose などコンテナで構築することが多いのではないでしょうか。 その際、Ruby や Node.js といったプログラミン…

JSなしでRailsで簡単に遅延読み込みしたい!

いこーよとりっぷ 子連れで楽しめる地域の観光情報 JSなしで遅延読み込み - Render Async いこーよとりっぷという子育て中の家族向けの旅行メディアの開発をやっているSampo Kuokkanenです。 さて、いこーよとりっぷは遅延読み込みをしたい箇所があり、もと…

Argo CD を使ってテスト環境にデプロイした話

最近インフラの勉強を始めた komatsu です。 今回はEKSクラスター作成から ArgoCD を使ったいこーよのデプロイまでの手順とそこから学んだことを書きたいと思います。 現在、いこーよ の Rails アップデートを行っています。 その検証としてカナリアリリース…

asdf で複数バージョンのCLI を使い分ける

morishitaです。 今回は asdf について書きます。 いこーよは EKS で運用しており、9 月まで kubenetes 1.17 を利用していました。 EKS を導入しようと移行作業をしていたときにはそれほどアップデートのペースは速くないと思ってのんびり構えていました。 …

VSCode の Jupyter で Ruby を使う

morishitaです。 今回は小ネタを1つ。 VSCode の Jupyter 拡張は手軽に Jupyter Notebook が使えて便利です。 Python さえインストールされていれば、必要なライブラリがインストールされていなくても拡張子 .ipynb の Notebook ファイルを開いたときにダイ…

YJITでRailsを動かす in macOS

s4naです。 とうとうRuby 3.1にYJITが追加されましたね YJIT has been merged. https://t.co/EeSR7atzMr #ruby— Hiroshi SHIBATA (@hsbt) October 20, 2021 Shopifyさんのブログによると、既にRailsでも動作するという話がありました。 今回はmacOSでRailsを…

Paperclip をアップデートした話

komatsu です。 いこーよでは Rails アップデートの前段階として gem のアップデートを行っています。 その中で Paperclip のアップデート時の不具合とその対処方法を発見するまでが大変だったので書きたいと思います。 周知のとおり paperclip の開発は終了…

GAS で Zip 圧縮された Excel を解凍しようとしてエラーが出た話

morishitaです。 いこーよは外部サービスとの連携をいくつかしています。 チケット販売もいくつかのサービスとの連携をしています。 その様な連携先の1つに毎日の実績データの Excel ファイルをメールに添付して送ってくるものがありました。 担当者に毎日…

Rails の入力フォームのエラー表示のカスタマイズ

morishitaです。 Web アプリケーションではユーザの入力を求めるために入力フォームを実装することがあります。 HTML の <form> や <input>、<select> タグなどを使ってテキストボックスやラジオボタン、セレクトボックスなどで構成する UI ですね。 入力フォームの例 Rails では</select></form>…

Railsで #update のできるFormObjectを作る

最近FormObjectを作ろうと思って調べてみたところ、ネット上の記事だと #update ができなかったり、Ruby 3.0 だとそのまま動かなかったりしたので、需要があるかと思い作成しました。 まだまだ色々改善点があるので、元のリポジトリの方でもう少し改善してい…

textlint editor を使ってブラウザで textlint を使う

morishitaです。 久しぶりに文章校正ツール textlint について書きます。 textlint については過去に2回取り上げました。 tech.actindi.net tech.actindi.net 過去のエントリはテキストエディタから利用する方法を紹介したものですが、今回は textlint のブ…

Android版いこーよの中身。Jetpack Navigation編

Androidアプリエンジニアのhondaです。 Android版いこーよではNavigation componentを導入しています。 今回はNavigation componentで画面遷移を実装している際のTIPSを紹介したいと思います。 このブログではNavigation componentについては深く説明しませ…

VCR 設定 Tips

VCRのちょっと便利な設定を紹介します。

私のAWSを勉強する道

こんにちは、クアンです。 今年からRubyコードを書くだけではなくAWSのサービスをやりたいので、勉強をはじめました。 この投稿の内容は私の勉強した方法です。 初めに困ったこと AWSは3つのパスがあります:アーキテクト、デベロッパーとシステムオーパーレ…

Google スプレッドシートで、複数シートの情報を自由にレイアウトしたシートを作る

こんにちは、kadotaです。 複数の社員にそれぞれの入力シートを持たせ、そのデータをひとまとめに閲覧できるものが欲しい、という簡単な社内ツール的なものをこしらえることがあったのでそのお話です。 Googleスプレッドシート と Google Apps Script (GAS) …

CIで使っているMySQLのメモリ使用量を調整した話

最近CIが3回に1回くらいメモリ不足で落ちて辛かったのでメモリ使用量の見直しを行いました。 原因の特定 まずはエラーメッセージを確認します。 Codebuildのメッセージを見てみると、以下のように書かれていました。 # 〜中略〜 rails-test | /usr/local/bun…

目標を一つに絞ったらRuby Gemがリリースできた話

s4naです。 今回はKageuchiというWebサーバーのRuby gemをリリースした話を書いていきます。 作ろうと思ったきっかけ 2020/8/3にKaigi on Railsというイベントが行われました。 kaigionrails.org イベントの中でAaron Pattersonさんが行っていた発表は、「0…

SvelteでWeb Componentsを作ってみた

morishitaです。 前回のエントリでフロントエンドフレームワーク Svelte を紹介しました。 tech.actindi.net 今回は Svelte で Web Components を作ってみようと思います。 Svelte 入門に書いた Typescript, Pug, Sass を使えるようにした状態を前提とします…

Svelte 入門

morishitaです。 今回は JavaScript の UI フレームワーク Svelte を紹介します。 アクトインディでは今の所、フロントエンドフレームワークとしては Vue.js を使っていますが、これもなかなか良さそうだと思ったのでちょっと触ってみました。 プロジェクト…

IT用語辞典ご紹介

みなさん、こんちは。去年3月下旬に来日して4月からエンジニアとしてアクトインディで働きはじめましたソンと申します。 日本で仕事をはじめてから、日常的な会話だけではなく、技術的な会話も苦労していることです。ベトナムで日本語を少し勉強しましたが、…

Stripe のサブスクリプションについて調べてみた

morishitaです。 年初にいこーよに新しいサービスを追加しました。 その名も「いこーよプレミアム」です。 iko-yo.net いこーよプレミアム - プレミアムクーポン 簡単に紹介すると、いこーよの有料会員サービスです。 登録するといこーよプレミアムクーポン…

在宅勤務するときに効率を最大化するにはどうすればいいですか?

はじめまして。私はベトナムから来ましたチエンと申します。新卒としてのエンジニアで日本に来て2020年2月に入社しました。入社2ヶ月後、コロナウイルスの影響で在宅勤務になりました。これは自分の在宅勤務中に体験したことのブログ初投稿です。どうぞよろ…

Sunspotを使いRailsでSolrの環境構築を行う方法

はじめに あけましておめでとうございます。 s4naです。 今回は、最近勉強し始めたSolrについて書いていきます。 SunspotとはSolrという検索エンジンをRuby上で使うためのライブラリです。 github.com 中でもSunspot::Rails を使うとSolrをインストールせず…

ローカル環境でもAPMが見たい!

こんにちは!!こんにちは!! moriyamaです。 みなさん、APMってご存知でしょうか? Application Performance Managementの略で、直訳すると「アプリケーション性能管理」ですね。 広く知られているサービスとして、Amazon CloudWatchやNew Relicなどが挙げられ…

Github workflow の実行をラベルで制御する

あけましておめでとうございます。morishitaです。 世間はコロナで大変な状況ですが、早くいこーよでお出かけ先を探して思う存分遊びに行けるようになればいいのになぁと思いながら新年を迎えました。本年もよろしくおねがいします。 さて、今回は小ネタを1…

GAS の Web エディタが一新されたので触ってみた

morishitaです。 Google App Script (以下、GAS)便利ですよね。 無料で使える JavaScript の実行環境で HTTP での外部への通信も可能なので、API を叩いたり、Web サイトにアクセスして情報を収集するなどできます。 しかも定期実行も可能なので、定期的な作…

CodeBuildのレポート機能を使ってRSpecの結果を見る

morishitaです。 前回のエントリで、CodeBuild 上で RSpec を実行する環境について紹介しました。 tech.actindi.net その中で RSpec の結果を CodeBuild のレポートで確認できるようにしてみたらなかなか良かったのでそれについて紹介します。 CodeBuild の…