SMARTCAMP Engineer Blogのフィード
https://zenn.dev/p/smartcamp
SMARTCAMPに所属するエンジニアの個人記事を集めています。 記事の内容は個人の見解であり、社内でのレビュー等は行っておりません。
フィード

Rubyで急にcsvがuninitialized constantエラーになった
SMARTCAMP Engineer Blogのフィード
背景CircleCIでRailsのRSpecがcsvのuninitialized constantで急に落ちるようになった。CIでrubyのバージョンが3.0.6から最新のバージョン(3.4.x)に上がった。 原因ruby3.4からcsvがdefault gemではなくなったのが原因。 default gemとは標準ライブラリでgem化されているいるもの。以下のコマンドでdefault gemを確認できる。$ gem listdate (default: 3.4.1)などdefault gemにはdefaultと書いてある。 解決方法CSVのgemを明...
1ヶ月前

技術記事とブログ記事の管理で疲弊しないために
SMARTCAMP Engineer Blogのフィード
はじめにこんにちは、はじめまして。最近はNotionをMarkdownに変換するOSSツールの作成が趣味になっている、まるべいじ(malvage)です!今回、OSSツールをもっと手軽に使ってもらうためのデモサイトを作ったので、紹介します!インストール不要で、すぐに試せるデモサイトなので、ぜひ触ってみてください。https://nmc-demo.malvageee.com/ まずはOSSの紹介https://github.com/salvage0707/notion-md-converter どんな課題を解決してくれる?このツールは、Notionのページを色々なプ...
1ヶ月前

Zenn記事の執筆を効率化!NotionのMarkdown変換ライブラリをnpm公開
SMARTCAMP Engineer Blogのフィード
はじめにこんにちは。はじめまして!まるべいじ(malvageee)です。先日、NotionのページをMarkdownに変換するライブラリをOSSとして公開しました。Zennにも対応しているので、技術記事を書いている方にも便利です。📢 公開記事:https://zenn.dev/smartcamp/articles/4b3e05623bf11e初回リリース時はgit cloneが必要で、導入のハードルが少し高かったのですが、今回はnpmに公開しました!これにより、より簡単に導入・利用できるようになりました。この記事では、ライブラリの使い方を詳しく解説します。すぐにサン...
1ヶ月前

Notionからmarkdownに変換するOSSを公開しました(Zennも対応)
SMARTCAMP Engineer Blogのフィード
はじめにこんにちは。はじめまして。まるべいじ(malvageee)と申します!まだ完成系じゃないですが、Notionからmarkdownに変換するライブラリをOSSとして公開したので、経緯など含めて紹介しようと思います。https://github.com/salvage0707/notion-md-converter変換されたMarkdownはこちらから確認できます。https://zenn.dev/salvage0707/articles/4105ccdf1690c8この記事もこのライブラリを使って変換処理されたMarkdownを使ってます。Notion記事:htt...
2ヶ月前

ECSタスクスケジューラのトラブルシューティング
SMARTCAMP Engineer Blogのフィード
この記事はECSタスクをタスクスケジューラから動作させる時に、うまくいかなかったことがあったので、解決までに何を確認したかをまとめましたhttps://docs.aws.amazon.com/ja_jp/AmazonECS/latest/developerguide/scheduling_tasks.html CloudWatchからメトリクスを確認ECSタスクをタスクスケジューラから動作させる場合は、CloudWatchイベントルールを設定する必要がありますが、そのメトリクスからECSタスクの呼び出しに成功しているかどうかを確認できます。https://repost.a...
2ヶ月前

RDS Aurora MySQL 本番環境運用時に必要なログ出力の設定
SMARTCAMP Engineer Blogのフィード
この記事はRDS Aurora MySQL 本番環境運用時に必要なログ出力の設定方法をまとめました。https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_LogAccess.MySQL.LogFileSize.html次の種類の RDS for MySQL ログファイルをモニタリングできます。・エラーログ・スロークエリログ・全般ログ・監査ログ パラメータグループを確認監査ログとスロークエリログに関しては、クラスターレベルのパラメータまたはインスタンスレベルのパラメータの修正が必要にな...
2ヶ月前

【CSS】任意の子要素幅に基づいて親要素のwidthを制御するTips
SMARTCAMP Engineer Blogのフィード
TL;DR👇のように指定する.parent { width: fit-content;}.targetChild { width: 0; min-width: 100%;} before after 使えるケースかなり限定的で👇のようなタイトルの下にサブタイトルがあり、タイトルの幅に合わせてサブタイトルの幅を決めたい時などに使えると思います。<body> <div class="parent"> <div class="title">優先する要素</div> <div...
3ヶ月前

ActiveStorageの画像URLをテストする方法
SMARTCAMP Engineer Blogのフィード
2025年もついに明けてしまいましたね... なにこれRuby on RailsにはActiveStorageというとても便利なライブラリがあります。https://railsguides.jp/active_storage_overview.htmlActiveStorageで保存した画像のURLをテストする際のTipsを記事にしたものです。 問題ActiveStorageでは public: true をしない限り、ファイルを表示したりDLする際のURLを一時的なURLにします。> hoge.image.url=> "http://example.co...
3ヶ月前

テキストコミュニケーションにおける質問の仕方で試して良かったこと
SMARTCAMP Engineer Blogのフィード
はじめにアドベントカレンダーの記事になっております!社会人1年目でテキストコミュニケーションに苦戦していたので試して良かったこと書いていこうと思います! 試して良かったこと 質問を行う際には既に試したを伝える 改善前の状態下記のように質問だけ伝えてしまっていた。Aでエラーでているのですがどうすればよいでしょうか? 伝えないと起こること目的に対して何を試して失敗したか、成功したかがわからないと改善点が伝わらず質問相手が解決方法を提案できない。質問相手から既に試したことに対してから確認が行われるので、解決方法が提案されるまで時間がかかる。 改善例上記では...
3ヶ月前

既存のRailsのコードの読む際にやったこと
SMARTCAMP Engineer Blogのフィード
はじめにアドベントカレンダーの記事になっております〜!Rails初心者なこともあって、既存のコードを読むのに非常に苦労しました。その際に気をつけたことを書いて行きたいと思います。 シチュエーション既存のRailsからモデルなどを確認して、処理を追加、改変するような状況を前提とします。 データの扱い方を確認するまずデータがアプリケーション無いでどういう扱いをされているかを把握します。 データのインプット箇所を確認するデータのインプット箇所とはmodelがビルド、またはインサートされている以下のような箇所です。RailsであればparamsでPostされたデータを...
4ヶ月前

Railsアプリのエラー追跡にSentryを使ってみた
SMARTCAMP Engineer Blogのフィード
https://zenn.dev/syokunin/scraps/3bbfea50cc9850スクラップから移行して作成した記事です。自分自身何度も読み直しているので記事に移行しました。 Sentryとはhttps://sentry.io/welcomeSentryは、アプリケーションのパフォーマンス監視とエラー追跡ソフトウェアです。Sentryは、開発者がアプリケーションのエラーを修正するのに役立ちます。Sentryは、エラーを特定、デバッグ、解決できます。また、エラーを優先順位付けして、最も多くの顧客に影響を与えているエラーを表示できます。さらに、Sentryは、パフォ...
4ヶ月前

[CSS]scrollbar-*はmacOSのスクロールバー設定を貫通しない
SMARTCAMP Engineer Blogのフィード
!本記事の内容はあくまで経験に基づくものです。公式の文献等ありましたらコメントいただけると助かりますmm ユーザーの環境に関係なくスクロールバーを表示させたいなら-webkit-scrollbarを使用するしかなさそうスクロールバーのデザインをカスタマイズしているとき、-webkit-scrollbar-*を使用していればmacOSのスクロールバーの設定によらず常時表示してくれるのですがscrollbar-*を使用しているとmacOSの設定に準拠してしまい常時表示されません。サンプルコード index.html<div> <h3>-web...
5ヶ月前

Cloudflare Accessで同一ドメインでパス別に認証方法を変えて挙動をみる
SMARTCAMP Engineer Blogのフィード
Cloudflare Accessでの認証はケースバイケースですが、とても手軽でいいですよね!社内に簡単なアプリケーションを公開する際、開発環境を社内公開する際などに便利に使われることが多いのかなと思います。今回は、例えば /admin/* だけGoogle Workspace認証にして、 それ以外はPIN認証またはGoogle認証にする、といったパス別で認証方式を変えることができるのか気になったのでサッと確かめてみました。 下準備非常にテキトウな検証用アプリケーションをCloudflare Pagesにデプロイしておきます。以下のファイルを作成し、GitHubリポジトリにア...
6ヶ月前

1つのvueファイルを分割表示できるVSCodeのVue - Official > Split Editorが便利すぎる
SMARTCAMP Engineer Blogのフィード
なにこれVSCodeでVueを書いている人向けの小ネタ 前置きこんにちは、am-maです。Vue - Official - Visual Studio Marketplace、使ってますか?これの、Split Editorモードに今更気づいたエンジニアの驚きをここに置いておきます。 Split Editor とは?1つのvueファイルを分割表示...つまり、こういうことができます。beforeafter 設定などsettingでもろもろカスタム可能。ショートカットキー覚えられない人間はアイコンを出すことにしました。 まとめどう考えてもも...
7ヶ月前

Auto Rename Tag, Auto Close Tagはもう必要ない
SMARTCAMP Engineer Blogのフィード
結論settings.jsonに以下設定を記述すればOK settings.json{ ..., "editor.linkedEditing": true, "html.autoClosingTags": true, "javascript.autoClosingTags": true, "typescript.autoClosingTags": true, ...,} 概要よく見る「おすすめ拡張機能○選!!」みたいな記事でほぼ確実に取り扱われているAuto Rename TagとAuto Close Tag。(または二つの拡張機能が内包され...
7ヶ月前

RBSのPrivateの処理を追ってみる
SMARTCAMP Engineer Blogのフィード
RubyのPrivateこいつのことです。初学者なので勘違いしていましたがキーワードではなくメソッドらしい……。class MyClass def hoge puts 'test' end private <--こいつ def hogehoge endend 公式リファレンスprivate() -> nil[permalink][rdoc][edit]private(name) -> String | Symbolprivate(*name) -> Arrayprivate(names) -> Array...
7ヶ月前

RailsのAuto LoadのName Error
SMARTCAMP Engineer Blogのフィード
RailsのAuto Loadとは通常のRubyであれば他のクラス、モジュールを使いたい場合明示って気にインポートする必要があります。require "application_controller"require "post"class PostsController < ApplicationController def index @posts = Post.all endendRailsは明示的にrequireでインポートせずともどこでも利用できます。class PostsController < ApplicationControl...
8ヶ月前

2024年度 わたしのdotfilesを紹介します
SMARTCAMP Engineer Blogのフィード
はじめにこれまで適当に管理していたdotfilesを一念発起して整理したので備忘録がてら記事にしておきます。リポジトリは👇から。https://github.com/ayuukumakuma/dotfiles※dotfilesに関しては以下の記事がとても分かりやすかったので紹介しておきます。https://qiita.com/yutkat/items/c6c7584d9795799ee164 dotfilesを使った環境構築の手順めちゃくちゃ簡単です。ホームディレクトリ(~/, $HOME/)にdotfilesのリポジトリをcloneする。sh setup.s...
8ヶ月前

Next.jsのmiddlewareをカッコよく分割する
SMARTCAMP Engineer Blogのフィード
はじめにこんにちは!まるべいじです!みなさん、Next.jsは使ってますか?Next.jsのApp routerがリリースされて、1年ちょいたちました。リリース当初はPages Routerを採用するプロジェクトが多かったですが、最近はApp routerを使用するプロジェクトが多くなってきたように感じます。今回は、Next.js(App router)のmiddlewareを分割して管理する実装を説明していきたいと思います!middlewareのテストについても記載していきます。 概要Webアプリケーションでは、さまざまな種類のリクエストに対して共通の処理を行うこと...
8ヶ月前

Vitestで同期にできない非同期処理をテストする
SMARTCAMP Engineer Blogのフィード
なにこれVitestでの非同期処理に苦しんでいる人向け。 結論waitFor使おう。テストする処理const someValue = ref(false);const doSomethingInner = async () => { await someAsyncMethod(); someValue.value = true; // テストしたいのはこれ};const doSomething = () => { // 非同期処理を非同期のまま実行 doSomethingInner();};testコードdescribe('test...
8ヶ月前