Articles
2023-02-27
AWS IoT Greengrass V2 入門ハンズオンをやってみた(後編)
岡嵜です。 IoTチームの技術時間でAWS IoT Greengrassのハンズオンに取り組みました。 https://catalog.us-east-1.prod.workshops.a......
2022-12-15
ソラカメを使って「寝坊した自分がライブ配信されるIoTシステム」を作った!
本記事は [SORACOM Advent Calendar 2022](https://qiita.com/advent-calendar/2022/soracom) の16日目の記事です。 ......
2022-10-24
Terraform provider for SORACOMを使ってAWSとの連携を自動化する
ついに、[Terraform provider for SORACOM](https://registry.terraform.io/providers/ks6088ts/soracom/0.0......
2022-07-27
ISUCON12予選にチーム名:Gosicとして参戦しました
こんにちは、IoTクラウドエンジニアの岡嵜です。 7/23(土)にISUCON12予選が開催され、弊社からも4チームが参加しました。 自分はチーム名:Gosicとして参加したものの、残念ながら......
2022-07-15
IoTでオフィスの消耗品の減少を通知するためのボタンを作る
こんにちは。IoTチームの 岡嵜 です。 IoTチームではオフィスのIoT化に取り組んでおり、これまでも ストック番長 や サテライト番長 といったIoTシステムを社内ローンチしてきました。そ......
2022-07-12
M5StackとSORACOM Arcを使って「消耗品の減少をお知らせするボタン」を作ろう
みなさんはAmazonダッシュボタンのことを覚えていますか?ボタンを押すだけで商品をAmazonに発注できるというもので、今思えばIoTの先駆けとも言えるサービスでした。 https://ww......
2022-04-24
M5Stack BasicでSORACOM Arcに接続する方法
こんにちは。IoTチームの岡嵜です。 IoTチームでは今、SORACOMを使ったIoTシステム開発に力を入れています。 SORACOMにはIoTシステムを構築する上で便利なさまざまなサービスが......
2022-03-10
M1 Macを購入したのでセットアップ&zsh環境をいい感じにした
先日のApple Eventでも `Mac Studio` や `iPad Air(第5世代)` が発表され、いよいよ `Apple M1チップ` がデファクトスタンダードになったなあと感じてい......
2022-03-10
IoT開発者必携!AWS IoT Eventsを使ってアラート機能を作る
IoTクラウドエンジニアの岡嵜です。 IoT開発でよく取り入れられる機能の一つにアラート機能があります。アラート機能とは、センサーの値がしきい値を上回ったらアラート発生とみなし、メール等で通知......
2022-02-28
AWS Amplify FunctionsからAPI(GraphQL)をAPI Keyを使わずに利用する方法
IoTチームの岡嵜です。 年明けからAWS Amplifyを使っていろいろな検証をしています。今回はその検証から得られた知見の一つとして「Functionsで作ったLambdaからAPI(Gr......
2022-01-31
react-webcamで撮影した画像をJPEG変換に変換しS3へアップロードする
岡嵜です。 PCのWebカメラを使って写真を撮影・アップロードするシステムをメンテナンスしていて、得られた知見を記事にします。 react-webcam react-webcam とはRea......
2022-01-06
パトライトをAWS IoT Coreに接続してリモート制御する
岡嵜です。あけましておめでとうございます。 年末に株式会社パトライトの 評価用機材貸出し を利用して、NHP-FV2 というパトライトをお借りしました。これはAWS IoT Coreと接続可能......
2021-12-15
mruby-esp32-app-mirbをESP32で動かしてみた - panicの原因を見つけるまでの過程
本記事は Ruby Advent Calendar 2021 の16日目の記事です。 昨日は @ooooooo_qさんと、 Fukuoka.rb でも時々お会いする @hasimoto1009......
2021-12-02
SOSした同僚を確実にお助けするためのIoTパトランプを作った
この記事は SORACOM Advent Calendar 2021 3日目の記事です。 昨年と同様、今年もSORACOMを使ったIoTシステムを開発したので紹介したいと思います。 今年作ったの......
2021-10-27
MicroPythonをESP32用にビルドしてC Moduleを追加できるようにする
IoTチームの岡嵜です。 前回の記事 でESP32用のMicroPythonのイメージを動かすことに成功しました。 入手したイメージにはPinやPWMといった必要最低限のライブラリは既に含まれ......
2021-10-14
MicroPythonでESP32を動かす方法
IoTチームの岡嵜です。 はじめてMicroPythonに触れて、簡単に組込みプログラミングができることに感動しました。 本記事ではESP32-WROOM-32上でMicroPythonを起......
2021-10-06
Ruby版・ISUCON11 予選問題実践攻略法を試してみた
岡嵜です。 先の記事 で触れた通り、私は8月に開催されたISUCON11の予選に実装言語Rubyで参加し、今年も予選で敗退しました。(悔しいので何度でも書きます...!) そんな中、今年は I......
2021-09-28
簡単に使えるRubyプロファイラ - EstackprofというGem作りました
岡嵜です。 8月にISUCON11の予選が開催されましたね。私は例年通り実装言語:Rubyで参加し、今年も予選で敗退しました。反省会で毎年のように挙がる話の1つに「Rubyのプロファイラである......
2021-09-10
Fusic CLIを作りました! - RubyでCLIを開発する
こんにちは、岡嵜です。 ふと「RubyでCLIを作りたい」と思ったので、Fusicのコーポレートサイトを瞬時に開くCLIを作ってみました。Fusicのコーポレートサイトサイトに頻繁にアクセスす......
2021-08-26
【C言語】AWS IoT EduKitのLチカプログラムを読み解く
こんにちは、IoTチームの岡嵜です。 会社に買ってもらった M5Stack Core2 for AWS を半年近く放置していて、最近ようやく触り始めたところです。 AWS IoT EduKi......
2021-07-16
Next.js + Railsでリニューアルした社内ニコカレシステムの技術スタックを公開します
弊社では社内システムが多く運用されています。そのうちの一つに私が開発・運用している「Nicole」というシステムがあります。 これは、いわゆるニコカレ(ニコニコカレンダー)をWebベースで入力......
2021-06-20
Reactでテキストのオートリンクとemojiレンダリングを両立する方法
こんにちは。岡嵜です。 Reactを使っていて地味に悩んだ問題を先日無事解決できたので、Tipsとしてまとめます。 やりたいこと Reactコンポーネントにてテキストのオートリンクとemoj......
2021-05-12
AzureでIaCするならBicepがオススメ
ここ1年ほどAzureを使ったインフラの構築をしています。 私が関わっているプロジェクトではIaCを求められ、当初はTerraformを使っていました。その後ARM(Azure Resourc......
2021-04-26
Azure API ManagementとActive Directoryを連携してOAuth2認証する方法
以下の記事でRailsアプリのユーザー認証をAzure ADと連携させました。 Railsアプリのユーザ認証をAzure ADと連携する Webシステムの認証はこれでOKですが、API Man......
2021-04-20
Railsアプリのユーザ認証をAzureADと連携する
Railsアプリを作るときの認証周りはすっかりdevise頼みとなってしまった今日このごろ。 最近、Azureを使ったシステムを開発しています。他のクラウドサービスでもそうですが、Azureが......
2021-04-18
AWS AmplifyのFunctionsでバッチ処理を実装する
弊社の開発合宿で久々にAWS Amplifyに触れてみました。 いまさらな感想ですが、Amplify ConsoleのUIが刷新されていたり、Amplify Admin UIが追加されていたり......
2021-03-20
mruby3.0を使ってスマートプラグ(TP-Link HS105)をON/OFF制御する方法
組み込みシステム向けの軽量なRuby言語処理系である「mruby」を使って、スマートプラグ(TP-Link HS105)をON/OFF制御しました。 <blockquote class="tw......
2021-02-25
Next.js + RailsでポートフォリオサイトをISR対応&メンテナンスフリー化した
2年ほど前に[Nuxt.jsを使ってポートフォリオサイトを作成](https://qiita.com/Y_uuu/items/f3e3382ca9f9f22e6677)しました。 今回、このサイ......
2021-02-23
RailsをバックエンドとしたSPAでのファイルアップロード機能の作り方に悩んだ話
Ruby on RailsにはActive Storageと呼ばれるファイルアップロードをサポートする機能が用意されています。Railsだけでシステムを開発する際、これは非常に便利な機能です。 ......
2021-01-27
Rails 6.1対応版: APIモードのRailsに対してCrossOriginなSPAからSession認証する方法
本記事では、APIモードのRailsに対してCrossOriginなSPAからSession(Cookie)認証する方法を解説します。 モダンなフロントエンド開発だと、Auth0やFireba......
2020-12-07
SORACOMとM5Stackを使ってポケベルを現代に復刻させた
本記事は[SORACOM Advent Calendar 2020](https://qiita.com/advent-calendar/2020/soracom)の8日目の記事です。 昨日は@......
2020-12-02
AWS Amplifyを使った開発で役立つ逆引きTips集(2020年版)
本記事は AWS Amplify Advent Calendar 2020 の2日目の記事です。 昨日、Qiitaに投稿した記事に対して、@jagaimogmogさんから「Amplifyに興味の......
2020-12-01
AWS Amplifyを使った開発で役立つ逆引きTips集(2020年版)
本記事は [Fusic Advent Calendar 2020](https://qiita.com/advent-calendar/2020/fusic) の1日目の記事です。 今年もいよ......
2020-11-26
突撃!隣のキーボード 2020
2020年も残すところ1ヶ月となりましたが、みなさま、充実したキーボードライフを送っていますでしょうか? 今年も「突撃!隣のキーボード」を岡嵜がお送りします。 早いものでこの企画も3回目となり......
2020-11-03
Railsにいいね機能をReactで実装する
こんにちは、岡嵜です。 本記事では「Railsにいいね機能をReactで実装する方法」を解説します。 Railsにいいね機能を実装する記事は既に巷に溢れていますが、Rails+Reactで実装......
2020-10-27
AWS AmplifyでPythonのFunctionをCI/CDするとbuildに失敗する問題の対処方法
題名の通り、AWS AmplifyでPythonのFunctionをCI/CDするとbuildに失敗する問題に遭遇しました。 ## 結論(対処方法) ビルド設定のamplify.ymlに以下......
2020-09-24
技術書を執筆して技術書典9に出展するまでを振り返る
技術書典9に本を出展しました 9/12から22に開催されていた 技術書典9にはじめて作った技術書を出展しました。 AWSとM5StickCで作るIoT開発入門(技術書典オンラインマーケット) ......
2020-09-18
Next.js+TypeScript+AWS Amplify+RecoilでToDoリストを作る
※投稿テストも兼ねてQiitaから記事をコピーしてみました 元記事 : https://qiita.com/Y_uuu/items/249dfcc794f101129b09 本記事ではNext......
2020-09-10
Next.js+TypeScript+AWS Amplify+RecoilでToDoリストを作る
本記事ではNext.js+TypeScript+AWS Amplify+Recoilを使って、モダンなToDoリストを作る方法を紹介します。 でGraphQLを使ったアプリケーションを構築する方法
この記事では、フロントエンドにNext.js、バックエンドにGo言語(gqlgen)を用いて、フロントエンドとバックエンド間のAPIにGraphQLを使ったアプリケーションを構築する方法をまとめ......
2020-06-24
今更ながらKafkaを触ってみた
岡嵜です。 先日、LINE ENGINEERINGの以下記事を拝見しました。 Kafkaを利用したジョブキューライブラリ「Decaton」の活用事例 これまで、Kafka=メッセージシステ......
2020-05-14
mockmockでLINE Beaconのバックエンドをテストするためのプロジェクトを公開しました
岡嵜です。 先日、LINE Beaconを使ったIoTシステムの記事を公開しましたが、改めて「IoTシステムのテストは課題が多い」と感じました。 そこで、諸々の課題を解決すべく「LINE Be......
2020-05-13
LINE BeaconとM5Stackでリモートワーク中の在席状況を自動通知する
こんにちは、岡嵜です。 コロナウイルスの影響でリモートワークの日々が続いています。 今回、リモートワーク中に不便だと感じたことをIoTで解決する取り組みとして、「自分の在席状況をDiscord......
2020-05-11
UnitV AI Cameraの使い方
岡嵜です。 少し前、M5Stack社が2020年2月に発売したUnitV AI Cameraを手に入れました。 早速、エッジAIで物体検知してみようと息巻いていたのですが、思いの外、文献を見......
2020-04-12
gqlgen + EchoでgolangなGraphQLサーバを作るチュートリアル
こんにちは、岡嵜です。 本記事ではGraphQLライブラリである gqlgen と、Webフレームワークである Echo を組み合わせて、Go言語で実装されたGraqhQLサーバの作り方をチュ......
2020-04-07
Visual Studio CodeとDelveでGo言語のアプリケーションをデバッグする
こんにちは、岡嵜です。 弊社サービス mockmock ではmockの実装にGo言語を使っています。 今回、Go言語で実装されたプログラムをデバッグする機会があったので方法を調べたところ、予想......
2020-04-01
SwitchBotをM5Stackで制御してレトロフィットな制御を実現する
こんにちは、岡嵜です。 社内のIoT化を進めるにあたり役立ちそうなデバイスを見つけたのでレポートします。 IoTにおける"制御"は難しい 例えば、弊社オフィスのエアコンをIoT化したいとし......
2020-03-10
勉強時間を「SORACOM LTE-M Button powered by AWS」を使って測ってみた
こんにちは、岡嵜です。 今回、我らがmockmockチームのインターンに来てくれた宮島くんが、この1ヶ月で作ったシステムを記事にまとめてくれました。彼は先日高校を卒業したばかりで、インターンを......
2020-02-24
M5StickCでiBeaconをスキャンする
こんにちは、岡嵜です。 年末から「人を検知する」というテーマでいろいろ試行錯誤をしています。 「超音波センサー」「人感センサー」などを試してきましたが、これだと検知した人が誰なのか区別するのが......
2020-02-12
macOS CatalinaのArduino IDEでM5StickCに書き込みができない問題の解決方法
岡嵜です。 M5StickCを使っていて、見つけた問題と解決方法をまとめます。 問題 macOS CatalinaのArduino IDEでM5StickCに書き込みができない問題が発生しま......
2020-02-10
【コラボレーション】mockmockからambientにデータを送ってなんちゃってIoTシステムを作ってみた
こんにちは。岡嵜です。 私は普段「mockmock」というIoT開発者向けのサービスの運営・開発に携わっています。 最近とある筋で「Ambient」という、これまたIoT開発者向けのサービスが......
2020-01-19
Railsアプリケーションで絵文字コードを使えるようにする方法
岡嵜です。 本記事では、Railsアプリケーションで絵文字コードを使えるようにする方法をまとめます。 やりたいこと このように、絵文字コードを入力すると 対応する絵文字を表示できるようにし......
2020-01-14
IP制限付き社内システム用のSlack App(Slash Commands)を作った
こんにちは。岡嵜です。 昨年、こちらの記事に書いた「社内ニコニコカレンダーシステムNicole」ですが、ついに社員の半数がアクティブユーザとなりました! 今回、残り半数の社員をアクティブユーザ......
2019-12-24
mockmockで簡単なIoTシステムを開発してみよう
この記事は[mockmockアドベントカレンダー](https://qiita.com/advent-calendar/2019/mockmock)24日目の記事です。 クリスマスイブの今日はm......
2019-12-19
RailsアプリをECS FargateへデプロイするCI/CD pipelineを構築する
この記事は[Fusic Advent Calendar 2019](https://qiita.com/advent-calendar/2019/fusic)の20日目の記事です。 昨日は@K......
2019-12-09
mockmockでSORACOM Funkにデータを送るプロジェクトを作成する
# mockmockでSORACOM Funkにデータを送るプロジェクトを作成する この記事は[mockmockアドベントカレンダー](https://qiita.com/advent-cal......
2019-12-03
mockmockでGoogle Cloud IoT Coreにデータを送るプロジェクトを作成する
こんにちは、mockmockチームエンジニアの岡嵜です。 本記事は [mockmockアドベントカレンダー](https://qiita.com/advent-calendar/2019/mo......
2019-12-02
mockmockでAWS IoT Coreにデータを送るプロジェクトを作成する
こんにちは、mockmockチームエンジニアの岡嵜です。 本記事は [mockmockアドベントカレンダー](https://qiita.com/advent-calendar/2019/mo......
2019-11-24
社員のモチベーションを可視化するため社内ニコニコカレンダーシステムを作ってみた
岡嵜です。 前回の記事 とはうってかわって、今回は「社内Webシステム」を作ってみたというお話です。 このような社内ニコニコカレンダーシステム「Nicole」を作ってみたので、社外発信したいと......
2019-11-12
5分でできる!M5StickC PIR Hatを動かすまで
8月からmockmockチームにjoinして、これまで以上にデバイスと仲良くなろうと思っている岡嵜です。 デバイスを動かすのはワクワクしますが、泥臭い処理をコーディングするのはあまり好きではあ......
2019-11-05
Ruby on JetsとAurora Serverlessでスケールアウト可能なアプリケーションを構築する
Ruby on JetsとはAWS上にサーバレスアプリケーションを構築するためのフレームワークです。 その名の通りRubyでプログラムを書くことができ、アーキテクチャがRuby on Rai......
2019-10-18
突撃!隣のキーボード 2019
大変お待たせいたしました。 「突撃!隣のキーボード」の第2弾をまたしても岡嵜がお送りします! 参考:「突撃!隣のキーボード」とは 自社のエンジニアが愛用するキーボードについてまとめた定番記......
2019-10-16
Rubyistが集まるSlack ワークスペース ruby-jpで参加しているチャンネルをまとめてみた
今年の8月、ruby-jp というSlackワークスペースが爆誕しました。 このエントリ をきっかけにワークスペースが作成され、現在では2200名超が集まるコミュニティになっています。 この......
2019-10-13
AWS Storage Gatewayのファイルゲートウェイを使ってローカルPCからS3へファイル転送する
AWS Storage Gatewayはオンプレ環境とクラウドストレージを接続して、オンプレ環境からクラウドストレージへアクセスできるようにするサービスです。 今回、オンプレ環境に保存していた......
2019-09-26
Railsでシンプルなグラフを扱うならchart-js-rails よりchartkickを使うべし
Railsでグラフを扱う方法として [chart-js-rails](https://github.com/coderbydesign/chart-js-rails) を使った方法を [こちらの......
2019-09-24
Ruby on JetsとRDBを組み合わせた場合のコネクションの使われ方を検証してみた
一般的にAWS LambdaとRDS(RDB)は相性が悪いと言われています。 その理由の一つは「Lambdaのスケールアウトに伴いRDSへのコネクションが増加し、**最悪の場合コネクション枯渇す......
2019-09-24
Rubyのサーバレスフレームワーク「Ruby on Jets」を使ってAWSへアプリケーションをデプロイする
## はじめに [Ruby on Jets](https://rubyonjets.com/#page-top)とはRubyでサーバレスアプリケーションを構築するためのフレームワークです。 ......
2019-08-28
Nuxt.js + GraphQL + Ruby on Railsで作ったアプリにJWT認証を追加する方法
本記事ではフロントエンドに **Nuxt.js(Vue.js)**、バックエンドに **Ruby on Rails** 、APIに **GraphQL** を採用したアプリケーションに、**JW......
2019-08-27
Rails6でknockを導入してload関連のエラーが発生したときの対処法
Ruby on Rails 6.0.0 で作成したアプリケーションに、JWTトークンの発行・認証を行う目的で [knock](https://github.com/nsarno/knock) を......
2019-08-24
Nuxt.js + GraphQL + Ruby on Railsで作るToDoアプリチュートリアル(後編)
Nuxt.jsとGrashQLとRuby on RailsでToDoアプリを作るためのチュートリアルです。 前編・後編を終えるとこのようなToDoアプリが完成する予定です。 本記事はチュート......
2019-08-22
Nuxt.js + GraphQL + Ruby on Railsで作るToDoアプリチュートリアル(前編)
Nuxt.jsとGrashQLとRuby on RailsでToDoアプリを作るためのチュートリアルです。 前編・後編を終えるとこのようなToDoアプリが完成する予定です。 ソースコードは以......
2019-08-20
ActiveRecordを使ってFROM句のサブクエリを書く方法
ActiveRecordで複数テーブルを `JOIN` して `GROUP BY` する処理を書く時、 `GROUP BY` する前に重複排除を目的とした `DISTINCT` をする必要があり......
2019-08-18
ISUCONにRubyで挑戦するときに役立つStackProf Web navigatorの使い方
ISUCON9の予選が近づいてきましたね。 私自身、昨年のISUCON8にはGo言語で出場したのですが、今年はチームメンバーの都合上Rubyで出場することになりそうです。 ISUCONではき......
2019-07-08
Nuxt.js+AWS Amplify+Cognitoでログイン認証する
ログイン認証の仕組みはセキュリティ上重要であるにも関わらず、実装に手間がかかる部分です。 普段はRuby on Railsを使ってシステム開発しているのでdeviseに頼りっきりになってしま......
2019-06-07
AWS LambdaでNokogiriを動かす
近々、AWS Lambdaを使って簡易的なクローラを作る予定があったので **Lambda上でNokogiriが使えるか** 検証しました。 ## 開発環境 ローカルの開発環境はMac、クロ......
2019-05-10
Nuxt.js + Vuetify + Netlify でポートフォリオサイトを作ってみた
## 動機 私自身、普段はRuby on Railsでシステムを開発していることもあって、なかなかフロントエンドのモダンなフレームワークに触る機会がありません。 そんな中、ちょうど[弊社](......
2019-03-18
ISUCON9に向けて社内ISUCONを開催しました
こんにちは、岡嵜です。 春の訪れが待ち遠しい今日この頃、今年もISUCONの開催が発表されましたね。 ISUCON9 開催決定!今年の出題は、さくらインターネットさま&メルカリさまに決定です!......
2019-02-13
サーバーレスな社内Gyazoの作り方 [AWS SAM+Api Gateway+Lambda(Ruby)+S3]
こんにちは、岡嵜です。 今回、AWS上でサーバーレスな社内Gyazoシステムを構築する機会があったので、作り方をまとめます。 きっかけ 弊社テストエンジニアの吉武からこんなDMが届いたことが......
2019-01-13
Markdownで執筆できるブログをJekyll + Github Pagesで公開する
こんにちは、岡嵜です。 2019年になり、「なにか新しいことを始めたいな」と考えてる人が多いと思います。自分もいろいろ考えた結果、某サービスを利用して個人的に運用しているブログリニューアルする......
2018-12-10
ISUCON予選で散った私が心ときめいたグラフィカルな監視ツール
本記事はFusic Advent Calendar 2018の9日目の記事です。 こんにちは、岡嵜です。 2018年も残すところ3週間を切りました。今年の印象的な出来事として「ISUCONに初......
2018-11-16
goaで作ったAPIサーバにJWT認証を追加する
Fusicの岡嵜です。 私が担当した前回の記事でgoaというフレームワークを使ってgolang製のAPIサーバを作りました。 今回は、JWT認証を兼ね備えたAPIサーバを作ってみることとします......
2018-11-13
Goaを使ったデザインファーストなAPIサーバ構築
こんにちは、Fusicの岡嵜です。 ここ最近、フロントエンドにVue.jsを、バックエンドはRuby on RailsでAPIサーバを構築するという開発が続いています。 Ruby on Rai......
2018-02-21
AWS SDK for Rubyのクライアントをスタブ化する
AWS SDKを使用する機能をテストする際、そのままテストすると「都度AWSへのアクセスが発生してしまう」ということを熟慮しなければなりません。テストの内容・頻度によっては思わぬ額の料金請求が発......
2018-02-11
chart.jsでRailsアプリにグラフを組み込む
### (※2019/09/27 追記) シンプルなグラフを埋め込むのであれば [chartkick](https://github.com/ankane/chartkick) を利用したほうが......
2017-11-01
初めてMacを使ったときにインストールしたApp
はじめてMacを開発用として使うにあたり、インストールしたAppを記録します。 # Google日本語入力 まずは日本語入力から。以下サイトからダウンロードする。 https://www.go......
2016-12-25
mrubyでETロボコンのダミーカーを実装してみた(EV3Way)
本記事は[ETロボコン Advent Calendar 2016](http://qiita.com/advent-calendar/2016/etrobo)の9日目の記事です。本日12/25ク......
2015-12-14
mrubyデバッガ(mrdb)にnextコマンドを追加してみた
mrdbに**nextコマンド**を追加してみました。 ## 概要 ### mrdbとは mrubyのVM上で動作するデバッガです。mruby-1.1.0にてmrbgemsに追加されました。......