株式会社マインディア テックブログのフィード

https://zenn.dev/p/minedia

株式会社マインディアのテックブログになります。 サービスやシステム、カルチャーの話題はリンクの「採用」のスライドをご覧ください!

フィード

記事のアイキャッチ画像
マルチプラットフォームなNu Shellを使ったら、あらゆるデータを一行で扱えて時間効率が上がった
株式会社マインディア テックブログのフィード
3秒まとめマルチプラットフォームで同じコマンドを利用して手元で動かしたい処理をサクッと実行できるGitHub Actionsでも簡単に利用可能JSON, YAML, SQLite, CSV, EXCELなどのファイルをデフォルトでパースしてデータフレームのように扱えるhttpリクエストも投げられるので、curl入ってない!みたいなことでイラッとすることが減る こんな方向きの記事ではないzsh, bashなどをマスターしている人にとってはあまり導入する意味がないサーバールームでLinuxの標準シェル以外使えない環境で作業するような人には向かない MacやWi...
1ヶ月前
記事のアイキャッチ画像
進化するAI、Sakana AIの自然言語モデルで商品名のクレンジングタスクを解いてみる
株式会社マインディア テックブログのフィード
https://sakana.ai/evolutionary-model-merge-jp/先月ごろから話題になっているSakana AI社が提供している自然言語モデル(進化的アルゴリズムによる基盤モデルの構築)のSakanaAI/EvoLLM-JP-v1-7Bを使って、商品名のクレンジングタスクを解いてみます。他の手法で試した記録はこちらの記事になります。https://zenn.dev/minedia/articles/c018dd09801091本記事では、transformersのUsageを参考に、現在私が担当しているタスクを試した実験記録となります。GPUはT4を使...
1ヶ月前
記事のアイキャッチ画像
AIで商品名をクレンジングする、Llama2や、Google Cloud Gemini-proとVertex AIを活用した商品名の最適化
株式会社マインディア テックブログのフィード
ECサイト上の商品名は、「送料無料」や「ポイント5倍」、「母の日」といった宣伝文句が付加され、本来の商品名が分かりづらくなっています。これらの不要なキーワードは、自然言語モデルを作成する際の妨げとなり、精度を上がりづらくしている一つの要因となっています。そこで、本記事では、これら不要なキーワードを効率的に除去する方法について、具体的な手法と事例を紹介します。データクレンジングの例、LLMオープンモデルを活用したアプローチ、さらにはGoogle Cloud PlatformのVertex AIやGemini-proを用いた解決策について触れます。 3行まとめ・商品名から頻出単語...
1ヶ月前
記事のアイキャッチ画像
Modular MojoがPythonより68000倍早いのは本当なのか
株式会社マインディア テックブログのフィード
はじめにmojoについては過去の記事でご紹介しましたhttps://zenn.dev/shintaroamaike/articles/afcbc867db495e今回の記事ではMojoはPython 3.10.9の68000倍早いと公式のブログで紹介されていますが、内容を確認します。 3行まとめ・AIに特化した言語mojoに触れてみる・Macbook proでマンデルブロ集合の処理時間を見てみる・mojoでのpandasのloop処理がどれくらい早くなるのか見てみる 概要https://www.modular.com/blog/mojo-a-journey-t...
2ヶ月前
記事のアイキャッチ画像
RiverpodをMixinで効率的に管理し、生産性を上げるのだ
株式会社マインディア テックブログのフィード
どんな方向けの記事?どんなProviderが利用されているか、コードを探して迷子になったことがある方ProviderとEventを構造的に管理する方法を知りたい方Mixinを利用して、Unit Testも含めて一覧性の高い管理を実現したい方 どんな方向きではない記事?この記事は簡便のため StateProvider と FutureProvider のみを扱います。riverpod_generatorを使った新記法で書かれた記事を読みたい方には不向きです。!StateProviderは今後非推奨となるため、ここではこういった考え方もあるという理解にとどめ、実際...
3ヶ月前
記事のアイキャッチ画像
スケール可能なKVSをCloudRunで自作して、Firestoreに勝負を挑んで計測した話
株式会社マインディア テックブログのフィード
3秒まとめCloudRun + GCS製の自作KVSを作る方法を紹介CloudRunのライフサイクルを理解することで、In-memoryのデータを永続化するFirebaseより多少早いKVSができたが、Firestoreとあまり差が出なかった測定結果も合わせて公開 外部APIの結果をキャッシュして使いまわしたい弊社プロダクトのPintを開発している際に、サーバーサイドで外部APIを叩いてその結果を利用したいケースが出てきました。外部のAPIのため、 1回/1sec程度のレートリミットが存在しているほか、レスポンス自体も 1000ms以上かかるような状況で...
4ヶ月前
記事のアイキャッチ画像
HTMLの<input type="number">フィールドにおけるマウスホイール動作の無効化
株式会社マインディア テックブログのフィード
背景HTMLにおいて <input type="number"> は、数値入力を容易にするためのフォームフィールドです。ユーザーはテキスト入力に加えて、マウスホイールやキーボードの矢印キーを使用して値を調整できます。これは便利な機能ですが、一部の状況では意図しない挙動を引き起こす可能性があります。RailsでUIを作るときには、本当は number_fieldにしたかったところをわざわざ、text_filedにして実装していました。 問題<input type="number"> フィールド上にマウスカーソルがあるときに、ホイールを上下すると画面が...
5ヶ月前
記事のアイキャッチ画像
もう初回コードレビューはAIに任せる時代になった - CodeRabbit -
株式会社マインディア テックブログのフィード
どんな人向けの記事?レビューによって心理的なダメージを受けやすい方非エンジニアだが、エンジニアチームがどんな機能を作っているか知りたい方業務が溜まっていて、レビューに割く時間を捻出するのに苦労している方コピペできるコードも公開します 初回レビューをAIに任せると、いろんなロールの人の役に立つレビューは得意ですか?優秀なエンジニアしかいないチームであれば、PRは1トピックに絞って小さく明確なコミットによって作成され、適切な要約とともに提供されることでしょう。しかし、実際にはいろいろな制約から、PRが想定よりずっと大きくなってしまったり、関連トピックと異なるコード...
7ヶ月前
記事のアイキャッチ画像
Tableau Serverをオンプレで運用する際のおすすめ設定
株式会社マインディア テックブログのフィード
概要Tableau serverをオンプレで運用する際のおすすめの設定を書いておきます。 cronの設定以下の2行を設定しています。5 9 * * * source /etc/profile.d/tableau_server.sh && tsm maintenance cleanup --http-requests-table-retention 7 | logger 2>&110 */6 * * * source /etc/profile.d/tableau_server.sh && tsm licenses r...
7ヶ月前
記事のアイキャッチ画像
AWS Amazon EventBridge スケジューラでAmazon Auroraクラスターの稼働時間を管理する
株式会社マインディア テックブログのフィード
概要以前、Amazon RDSインスタンスをServerless v2化しましたが、開発環境などでは常に稼働しておく必要がない場合があります、そのような時は稼働時間を調整してインフラコストを抑えます。AWS Amazon EventBridgeスケジューラでスケジュールを作成します。https://zenn.dev/minedia/articles/88bbea2e70a233 3行まとめ・EventBridgeスケジューラでスケジュールを作成する・Auroraクラスター(インスタンス)の稼働時間を管理する・Terraformでコード管理する 前提Amazon...
8ヶ月前
記事のアイキャッチ画像
AWS Amazon RDS Aurora MySQL をブルーグリーンデプロイを使用してAurora Serverless v2に移行する
株式会社マインディア テックブログのフィード
概要Amazon Aurora Serverless v2は、負荷状況に応じてオートスケーリングされます。データベースの容量を調節するメンテナンス作業から開放されます。本記事では既存のAurora MySQLインスタンスをServerless v2に移行する方法について触れています。 3行まとめ・AWS「Aurora Serverless v2」の概要を紹介している。・負荷状況に応じてオートスケーリングされ、リソースが確保される。・設定したACUの最大値、最大コネクション数が決まる(MySQL) 前提・現在Amazon RDS Aurora MySQLを利用して...
8ヶ月前
記事のアイキャッチ画像
GraphQLサーバーは、本当にGoがTypeScriptより早いのか。Flutterからの呼び出しで検証する。
株式会社マインディア テックブログのフィード
3秒まとめGoのパフォーマンスはNestJS(TypeScript)の2倍以上!?GraphQLのエコシステムはGo, TSともに充実GitHub Copilotで、GoのAcceptance Rateが40%を超える体験をした GraphQL全盛の時代に、どの言語を使って開発すべきか2015年にFacebookにより公開されたGraphQL。日本でもYahooやメルカリなどバックエンドをマイクロサービス化している多くの企業で採用され、近年はフロントエンド開発者にとって魔法の弾丸のように扱われることも多くなりました。https://engineering.merc...
8ヶ月前
記事のアイキャッチ画像
npm, yarn, pnpmパッケージマネージャをベンチマークしてみた
株式会社マインディア テックブログのフィード
3行まとめpnpmが速いとのことなのでベンチマークをしてみましたが、yarn v4が最速です。yarn v1はキャッシュありのときにとても遅いでが、最新のv4は全項目において最速です。Node.jsのdocker imageでデフォルトになっているのはyarn v1なのでご注意ください。 概要pnpmがどのくらい速いかを計測しています。Next.jsやReactJSを使ったときのベンチマークは掲載されていますが、実際自分のプロジェクトではどの程度かわるのかをベンチマークしてみたいと思います。pnpmとは何かを知りたい場合はpnpm概要を参照するのが良いです。...
8ヶ月前
記事のアイキャッチ画像
FlutterのCustom Lintと自動書き換え用Assistを手軽につくって、細かい指摘をLintにぶん投げる方法
株式会社マインディア テックブログのフィード
まとめcustom_lintを使ってLintと自動書き換え用Assistを作る方法を紹介Lintを作るのは意外と手軽にできるし、簡単なものはメンテもそんなに難しくなさそうチーム内のルールをLintに落とし込んでおくと、後からジョインする人ためにもいいかも どんな人のための記事?Flutter向けのLint作成に興味があるが、敷居が高くて作れてない方プロジェクトで定義した HogeWidget を 既存のWidgetの代わりに利用したい方HogeWidget へのコード変更を自動で行えるようにしてみたい方components ディレクトリから実装クラスであ...
9ヶ月前
記事のアイキャッチ画像
deviseはパスワードをどのように安全に保管しているか?
株式会社マインディア テックブログのフィード
3行まとめDeviseはソルトとハッシュ値をDBに保存している。pepper(Secret Salt)値はデフォルトでは使われていない。安全性を上げたければ追加したほうが良い。Deviseを使っていればとりあえず安全そう。 きっかけpictBLandとpictSQUAREに対する不正アクセスがあり、パスワードがソルトなしのMD5ハッシュで保存されていたことが話題になっています。Ruby on Railsで広く使われているDeviseはどのようにパスワードを安全に保管しているのかを確認してみます。 背景Deviseは、1億6000万以上のダウンロードを誇るRa...
9ヶ月前
記事のアイキャッチ画像
Railsにおいてユーザがプラットフォーム(多対多)となるシステムを作るときの権限モデルを設計
株式会社マインディア テックブログのフィード
概要Ruby on Railsにおける複雑な認可の設計と実装するための一例を紹介する。 背景手元で作っているRailsのB2Bサービスの権限に関連する要件が複雑化してきたので、権限モデルをちょっと整理する。権限が複雑になる原因は、アクターや操作対象といった権限に関するメトリックが多くなること。要件レベルでどれだけメトリックを減らせるかが重要。ビジネスで利用するサービスの場合、細かい権限設定が要求されるのでメトリックが増えやすい。今回扱わなければいけないメトリックは以下アクター種別ロール種別ステータス遷移Web or APIによる操作 問題メトリックが3...
9ヶ月前
記事のアイキャッチ画像
Dart製のベンチマークHakariを開発!forEachやmap遅すぎィ!なことを即時測定デキルヨ!
株式会社マインディア テックブログのフィード
まとめJavaScript系のベンチマーク、mitataのようなリッチなベンチマークをDartでも取りたいシンプルな記法で、リッチな結果を得られるpackage、Hakariを開発したよ!x倍や棒グラフで測定結果をリッチに確認できるHakariはGood! JavaScript系のベンチマーク、mitataに痺れる、憧れるゥ!https://twitter.com/yusukebe/status/1689124758984724480?s=20HonoというNode, Deno, Bunなどで動くJavaScriptフレームワークを開発している @yusukebe...
9ヶ月前
記事のアイキャッチ画像
モバイルとの相性最強と言われるgRPCをFlutter x NestJSで実装し、Stream通信や認証、複数言語実装に使えるか試す
株式会社マインディア テックブログのフィード
まとめ相性バツグンといわれる、モバイル x gRPCは思ったよりずっと簡単に実装可能複数言語間でもProtocol Buffersの恩恵により型変換を意識することなくスムーズに開発が進められる。メソッド、引数の型、引数の返り値の型が自動生成されるのでとても良いRESTful APIにおけるheaderを、表現力の高いMetaDataとして利用し、認証認可等にも使えそうStreamをうまく使いこなせば、ユーザー体験をめっちゃ高くできそう。チャットやゲームなどの双方向通信が比較的楽に実装できるかも どんな人向きでない記事?NestJSの詳しい実装を知りたい方B...
9ヶ月前
記事のアイキャッチ画像
Rustは本当に早いのか。Flutterにおける速度をMarkdownParserで比較してみた。
株式会社マインディア テックブログのフィード
まとめRust製parserは、Dart製parserの2倍程度の速度が期待できるRustの呼び出しコストとして、1.2ms程度のボトルネックが存在するn回のRust呼び出しは、場合によってはパフォーマンス低下につながるRustとFlutterのアダプタは自動生成できるので実装は非常にカンタンRustコンパイル用の設定は1回すればずっと使えるが、プラットフォームごとにしなければいけないので結構面倒。 どんな人向けの記事?FlutterからRustの関数を呼び出す方法を知りたい方Rustの関数をわざわざ呼び出すべきか、判断基準のヒントを得たい方Dart vs ...
10ヶ月前
記事のアイキャッチ画像
GithubのPull Requestにおいてmergeされたらブランチを消すか論に終止符を打つ
株式会社マインディア テックブログのフィード
概要githubのレポジトリ運用において「Automatically delete head branches」をonにするかoffにするか悩ましいところです。デフォルトはoffです。 GPTに聞いてみたQ: githubのrepositoryの設定にある、 “Automatically delete head branches” をonにするかoffにするか悩んでます。どちらのほうが一般的でしょうか?A:「Automatically delete head branches」の設定は、プルリクエストがマージされた後に、そのブランチを自動的に削除する機能です。この設定をオ...
10ヶ月前