バージョン UUIDとは何か なぜUUIDを使うのか 注意すべきポイント アプリにUUIDを適用してみる 拡張機能を有効化する デフォルトのキーをuuidにする設定を行う。 モデルの作成 おまけ:関連を付けたい場合 まとめ バージョン Ruby 2.6.3 Rails 6.0.3 Postgre…
用意した画像 やったこと 結果 MiniMagickを使って、画像を生成してみました。 用意した画像 ベース画像 ユーザー画像 フォントファイル やったこと アイコン画像を丸く切り抜く Convertメソッドを使い、既存画像を読み込み加工をして出力します。 # ユーザ…
Vue3.0で使えるようになるComposition APIでのフォームバリデーションを実装します。一般的なユーザーの登録フォームをもとに見ていくので、割と網羅的な内容になっていると思います。 実装完了したコードはこちら。 必要なライブラリの導入 CLIインストール…
Heroku上のRailsアプリケーションで、OGP画像を動的に生成するための方法をまとめました。 準備 ImageMagick MiniMagick CarrierWave 日本語フォントファイル 実装 やること まとめ 準備 ImageMagick 以前はherokuに別途buildpackを追加する必要があったよう…
プロジェクトに導入してみたらCSSに秩序とストレスフリーな環境をもたらしてくれたBEMという設計パターンがとてもよかったので紹介します。 CSS 良いCSSとは何か 予測しやすいこと 再利用しやすいこと 保守しやすいこと 拡張性が高いこと BEM Block Element …
Vueの新バージョン、3.0のbeta版が出たらしいので、みんな大好きTODOリストを作って書き味を試してみようと思います。 なお、完成したコードはこちらにおいてあります。よければ参考にしてください。 https://github.com/yubachiri/vue3-todo-sample CLIのイ…
JavaScriptを使ってフロントエンドで日付操作をする事って結構あると思いますが、Dateオブジェクトを使うとクセが強すぎて意図しない動きになったりしますよね。 最近会社のプロジェクトで日付操作をDateオブジェクトを使っていて悲鳴をあげてたんですが、da…
Expo + ReactNativeで認証機能の実装を試してみる。本当はTwitter認証を実装したいんだけど、公式の情報がFacebook認証だったので、まずはFacebook認証を実装する。 プロジェクトを準備 FirebaseとFacebook側の設定 認証機能を実装する プロジェクトを準備 …
概要 Heroku経由でS3にファイルアップロードする際、Herokuのリクエストタイムアウトは30秒に設定されているので、大容量ファイルをアップロードすると時間が足りずタイムアウトエラーとなってしまう。 そのため、Herokuで4MB以上のファイルをアップロードす…
バージョンとか 何を作るか セットアップする 不要なものを整理しておく GraphQLを入れる GitHubトークンを入手する Clientの作成 環境変数を設定する GraphQLを使ってアクセスしてみる クエリを書く 今じわじわとやりたい欲が高まっているGraphQLとReactで…
heroku pipeline is テスト環境と本番環境、どのように運用してますか? herokuのpipelineを使うと以下のようなメリットがあります。 複数環境を1つのheroku画面で管理できる 環境の構築が容易 テストした環境をそのまま本番に昇格できる 昇格機能を使うこ…
JetBrains 製 の RubyMine という高機能エディタを使用する上で特に便利なショートカットをまとめました。 ※ macOS 版に対応したものとなります。 動作確認時のバージョン RubyMine 2020.1.1 Build #RM-201.7223.94, built on April 30, 2020 macOS 10.15.4 …
言語、ライブラリのバージョン Confirmableを使えるようにする viewとcontrollerをカスタマイズする 確認リンクを踏んだ先をpasswordの登録にする passwordを登録させる画面の作成 Routesを独自アクションに対応させる 認証ロジックを入れる How To: Overrid…
前回、Firestoreから取得したデータを3カラムレイアウトで表示するところまで実装できたので、今回は、一覧画面から詳細画面へ遷移する実装をしてみる。 Expo + ReactNative + Firestoreで取得したデータを3カラムレイアウトで表示する とりあえず画面遷移だ…
前回、Firestoreからデータを取得してとりあえずログに表示するところと、3カラムレイアウトを組むところを試したので、今回は取り出したデータを3カラムレイアウトで画像表示してみます。 Expo + React Native + Firestoreでデータを取得してみる Expo + Re…
最近熱い感があるNoCodeサービスを使って、webサービス開発にトライしたいなぁと思っていました。こんなサービスあったらいいなと思っても、ガッツリ作るのは腰が重かったり、既存サービスは課金しないと十分に使えなかったり…。NoCodeでサクッと作って、も…
deviseのHow To: Allow users to sign in with something other than their email address, emailアドレス以外でサインインを行う方法について翻訳しつつ実践していきます。 wiki 今回は公式wikiにあるように、usernameというfieldでサインインできるように…
最近よく「NoCode」ってキーワードを耳にすることが多く、mofmof inc.では新規事業のプロダクト開発を専門としているので、プロトタイプ開発に使えるのではないかと気になっていた。 どの程度のものを作れるのか、実際にいじって試してみる。 NoCodeのSaaS …
deviseのwikiにあるHow To: Change the default sign_in and sign_out routes を翻訳、実際に動かしてみる。 通常、deviseを実装した段階では、生成されるルーティングはdeviseがデフォルトで提供してくれるものになります。例えばuserモデルのログインなど…
deviseのwikiにあるHow To: Automatically generate password for users (simpler registration)をやってみる。 通常、deviseを使った会員登録ではemailとpasswordの入力が必須になりますが、「会員登録時にパスワードを設定しなくてはならない」という仕様…
以前にhuggingface/trasformersで固有表現抽出する方法を試してましたが、日本語ではうまく動かせませんでした。今回は日本語の言語モデルの上にファインチューニングして固有表現抽出出来るところまでやってみます。 前回: huggingfaceのtransformersでNER(…
昔開発したTwitter BotがどこぞやのVPSで動いていて、毎月ムダに数百円払っているので、モダンな環境に移行して節約したい。今どきはServerlessで出来るものはServerlessでやるのがスマート。移行先としてCloud Functionsにしようと思っているので、Twitter …
deviseは、Webアプリケーションを作成する際にほぼ必ずと言っていいほど必要になる認証系の機能を網羅的に用意してくれるgemです。アカウントの登録やログイン、パスワードの再設定機能、アカウントロック機能等、豊富な機能が利用できます。各機能はモジュ…
Deviseの使い方(各種オプション編1) devise gemはモジュールの概念に基づいて作成されています。 この性質のおかげで開発者は自分のアプリに本当に必要なものだけをピンポイントに導入することが可能です。使用していないコードをアプリに組み込まずに済む…
Deviseの使い方(各種オプション編2) devise gemはモジュールの概念に基づいて作成されています。 devise この性質のおかげで開発者は自分のアプリに本当に必要なものだけをピンポイントに導入することが可能です。使用していないコードをアプリに組み込ま…
弊社では毎朝「朝会」という、 1. 今日やること 2. 困っていること 3. 俺トピ という3つのお題に関したトピックを一人づつなんかいい感じに喋ってそれぞれの情報共有や困っている部分に知見があればアドバイスしたりする雑談的コミュニケーションを行なって…
前回、spaCyとGiNZAを使って固有表現抽出するところまでやったので、今回は電話番号とFAX番号を固有表現抽出で識別出来るか試してみます。 spaCy + GiNZAを使って固有表現抽出とカスタムモデルの学習をしてみる 電話番号とFAX番号を分けて教師データにしてみ…
自然言語処理をするときはよくRasa NLUを使っているのですが、内部的にはspaCyが使われている模様です。どちらもパイプラインでモジュールをつなげていって自然言語処理をシンプルにするフレームワークだと理解しているのですが、spaCy単独で使うとどういう…
自社のサービスで、テキストを分類したりラベリングしたりということをやりたくなったので、文章タスクが得意らしいRNN(LSTM)で単純な分類問題を解いてみたい。 スパムメッセージ分類がちょうど良い難易度っぽいので、以下エントリのコードをお借りして動く…
前回React Native + Expoに入門してみて、これはだいぶイイのではと思ったので、もう少し踏み込んで試してみます。今回はFirebaseのFirestoreに接続してデータを引っ張ってくるところまでやります。 Expo + React Nativeに入門して、iOSネイティブのCollecti…