Arsaga Developers Blogのフィード

https://zenn.dev/p/arsaga

アルサーガパートナーズ株式会社のエンジニアによるテックブログです

フィード

記事のアイキャッチ画像
【MacOS・LaunchAgent】ログイン時にスクリプトを実行する
Arsaga Developers Blogのフィード
はじめに業務中に毎回、SQLクエリを叩く作業があり、PCのログイン時に処理が実行され、結果が自動で表示されたら便利だと思ったので、色々と調べて実行してみることにしました。今回はLaunchAgentという方法を使用して、実装していきたいと思います。 Launch AgentについてLaunchAgentはmacOSのlaunchdで管理されるプロセスの一種です。ユーザーがログインしたときにロードされる為、この仕組を利用してユーザーログイン時にスクリプトを実行が可能となります。https://developer.apple.com/library/archive/docum...
16日前
記事のアイキャッチ画像
Databricks認定データエンジニアアソシエイトを取ってみた。
Arsaga Developers Blogのフィード
こんにちは、アルサーガパートナーズの門司です。先日、Databricksの「認定データエンジニアアソシエイト」資格を取得しましたので、その経験を共有させていただきます。 受験のきっかけ当社がDatabricksとパートナーシップを結んだことを受けて、社内で資格取得を推進する動きがありました。私はサーバーサイドエンジニアをしていますが、データエンジニアリングにも興味があったため、Databricksが行っている2日間の研修を受け試験を受けました。 試験結果結果はなんとか合格!合格ラインが71点と言われていたのですが、71.6点という、ギリギリ合格でした(笑)試験終了直後に合否...
20日前
記事のアイキャッチ画像
React × Electron × TypeORMで作成するMarkdownアプリ ~ バックエンド編 ~
Arsaga Developers Blogのフィード
はじめにYoutubeでElectronを使用してマークダウンを実装するという動画を見かけ、丁度実務でElectronを触り始めたので、動画を参考にしながら色々と実装してみることにしました。https://www.youtube.com/watch?v=t8ane4BDyC8&list=WL&index=48&t=4821sバックエンドのDB操作はTypeORMを使用し、フロント側はReactとJotaiを使用してます。主にバックエンド側のElectron × TypeORMで実装した内容について共有して行きたいと思います。今回実装した内容は以下リポジ...
3ヶ月前
記事のアイキャッチ画像
AssertableJsonでLaravel APIテストの柔軟性を向上させる方法
Arsaga Developers Blogのフィード
はじめにLaravelは、その直感的なAPI開発機能で広く利用されています。しかし、APIのテストにおいて、標準のアサーションだけでは十分に対応できない場合もあります。私もLaravelを使った開発において、APIテストでAssertableJsonを頻繁に使用していますが、時折「もう少し柔軟にテストできれば」と感じることがありました。この記事では、Laravel 8以降導入されたAssertableJsonの機能を活用し、特にwhereメソッドにClosureを渡すことで、APIテストをより柔軟に行う方法をご紹介します。 AssertableJsonの基本的な使い方まず...
3ヶ月前
記事のアイキャッチ画像
Laravelのカスタムクエリビルダーを使った柔軟なクエリの作成方法
Arsaga Developers Blogのフィード
はじめにLaravelのEloquentモデルでは、データベースクエリを簡単に作成できます。特に「スコープ」を使用することで、特定の条件に基づいたクエリを簡潔に再利用することができますが、クエリをより柔軟にカスタマイズしたい場合には、カスタムクエリビルダーを使用する方法があります。本記事では、Laravelでカスタムクエリビルダーを作成し、それを使って柔軟なクエリを実現する方法を紹介します。 1. カスタムクエリビルダーとはカスタムクエリビルダーは、LaravelのEloquentクエリビルダーを拡張して、独自のメソッドを追加するものです。これにより、特定のモデルに対して、再...
3ヶ月前
記事のアイキャッチ画像
Jestのテストで一部だけモックしたい場合
Arsaga Developers Blogのフィード
🔖 概要Jestを使ってモック化するときに一部をモックしたい場合に手こずったので経過と共にメモ。※ React(Next.js)&TypeScriptを使用【🏃 お急ぎ便 🏃】やりたいことは 準備 と テスト項目に、自分なりの答えは 結論 に記載。 🌏 環境React: 18Next.js: 13.5.6Jest: 29.7.0 📦 準備以下2つのコンポーネント ButtonGroup.tsx と Button.tsx を使用。ButtonGroupのテストをするために子コンポーネントであるButtonをモック化したりしなかったりする。./c...
3ヶ月前
記事のアイキャッチ画像
今更人に聞けないPythonの基本の用語を、PHPと比較しながらまとめてみる。
Arsaga Developers Blogのフィード
始めに。今回業務で、バックエンド側の言語としてFastAPIを使用しました。これまでLaravelがメインだったため、Pythonのことからよくわからず、苦戦しました。そこで、今回は今更人に聞けないけど、自分でまだわかっていない用語を深掘りしていきたいと思います。これまでがPHPだったので、折角なので二つを比較しながらまとめてみようと思います。自分がわからないのはFastAPIの用語だと思っていたけど、ほぼほぼPythonの用語がわかっていなさそうなことがわかりました。不勉強すぎる。 今回の基本用語達。 dict私にはあまり馴染みがない用語だったのですが、...
3ヶ月前
記事のアイキャッチ画像
VitestとMSW v2系を使ってSSEのレスポンスをテストする
Arsaga Developers Blogのフィード
はじめに生成AI関連のチャットアプリケーションでは、SSE (Server-Sent Events) によってサーバーからクライアントに対してリアルタイムでイベントを送信されることが多いかと思います。MSW (Mock Service Worker) では、v2.0.0 よりStreaming形式のMockを作成できるようになりました。https://mswjs.io/docs/recipes/streaming/これにより、SSEによってリアルタイムで受信するレスポンスのMockを作成し、テストを行えるようになっています。JestではなくVitestを採用している理由につ...
4ヶ月前
記事のアイキャッチ画像
高メモリ環境でJavaScript heap out of memory Errorを解決するためのガイド
Arsaga Developers Blogのフィード
はじめに以前、JavaScript heap out of memory Errorが発生した場合の解消するステップについて記事にしました。https://zenn.dev/arsaga/articles/291ff290543996今回の記事ではその続きでメモリが不足していないにも関わらず、npm run buildを実施してJavaScript heap out of memoryが発生するパターンにおける原因とその解消方法について調べてみたので共有します。 環境Node: v16.0.0npm: v7.10.0Amazon EC2 Error発生時...
5ヶ月前
記事のアイキャッチ画像
画面共有の技術
Arsaga Developers Blogのフィード
画面共有は顧客から信用を得る機会顧客との打ち合わせ中に画面共有をして慌ててしまうことはよくあることです。私自身、ブラウザのタブが何十個もあるのを見られてしまったりしました。画面共有は誤魔化しが効かず、その人の能力が顧客に明確に伝わる場面です。あまりもたついていると「本当にWebに詳しい人なのか?」と疑問を持たれてしまいます。そんなある意味恐ろしい画面共有ですが、本記事では顧客から信用を得るためのチップスを書いてみました。 画面共有の事前準備Webエンジニアの場合、基本的にはブラウザを画面共有することになりますが、そのブラウザが整理されていないようではミーティング中に必要な情報...
6ヶ月前
記事のアイキャッチ画像
新米PL(プロジェクトリーダー)が直面した6つの失敗と対策
Arsaga Developers Blogのフィード
はじめに初めてプロジェクトリーダーを任されてから8ヶ月が経過し、これまでに直面した失敗とその対策をまとめて記事にしていきます。まだ実践できていないところもありますが、今後の行動指針として少しずつ実践していければと思います。 独りで多くのタスクを抱え込む開発現場では基本的にマネージャー、リーダー、エンジニアという3つの役割が立てられますが、場合によってはこれらの役割を2つ、3つと兼務することが多々あります。この8ヶ月間、プロジェクトリーダーとしての役割を果たしながら、開発者としても実装を進めていました。具体的には、API・DB設計、新規機能の開発、PR確認、要望対応、工数算出...
7ヶ月前
記事のアイキャッチ画像
プロジェクトを炎上させないために、ファシリテーションを学ぶ(ファシリテーター編)
Arsaga Developers Blogのフィード
はじめに今回は、前回に引き続き、ファシリテーターがうまく会議を進めるために必要だと思ったことを記事にしました。 目次章タイトル概要1ファシリテーターってなに?ファシリテーターについて紹介します。2どのようにファシリテーションするのかファシリテーションで抑えるべきポイントを紹介します。3まとめ今回、ファシリテーション学習で使った書籍を紹介します。 1.ファシリテーターってなに?ファシリテーターは会議の進行役の方を指します。ファシリテーターは、主に下記のようなことをすると思います。・会議の準備・会議の目標/ゴールを設定...
7ヶ月前
記事のアイキャッチ画像
プロジェクトを炎上させないために、ファシリテーションを学ぶ(プレップ編)
Arsaga Developers Blogのフィード
はじめに今回は、前回に引き続き、うまく会議を進めるために必要だと思ったことと、プレップの紹介を記事にしました。 目次章タイトル概要1プレップってなに?プレップについて紹介します。2どのようにプレップするのかプレップで抑えるべきポイントを紹介します。3まとめ今回、ファシリテーション学習で使った書籍を紹介します。 1.プレップってなに?プレップとは、preparationの略語で、「準備」のことを指します。誰しも会議の前に、準備をすることの重要性は理解していると思いますが、実際に何をやった方がいいのかわからない人は意外と...
7ヶ月前
記事のアイキャッチ画像
プロジェクトを炎上させないために、ファシリテーションを学ぶ(参加メンバー編)
Arsaga Developers Blogのフィード
はじめに今回は、ファシリテーションについての紹介と、ファシリテーション力を上げて、うまく会議を進めるために必要だと思ったことを記事にしました。 目次章タイトル概要1ファシリテーションってなに?ファシリテーションについて紹介します。2なぜファシリテーションを学ぶのか私がファシリテーションについて学ぼうと思ったきっかけを紹介します。3会議をうまく進めるために、重要なポイント実際に会議で取り組むべき重要なポイントをいくつか紹介します。 1.ファシリテーションってなに?ファシリテーションとは、グループによる課題解決やアイデア出し...
7ヶ月前
記事のアイキャッチ画像
設計について学習してみた。(データベース論理設計編)
Arsaga Developers Blogのフィード
はじめに今回は、データベース論理設計についての紹介です。下記観点からの理解につながれば幸いです。What データベース論理設計ってなに?When データベース論理設計は、どのタイミングでやるのかWhy なぜデータベース論理設計をやるのかHow データベース論理設計のやり方(データベース論理設計をやってみよう!) 目次章タイトル概要1データベース論理設計ってなに?データベース論理設計の基本的な考え方について紹介します。2データベース論理設計は、どのタイミングでやるのか?アプリケーション開発のどの段階で、実施するのか紹介しま...
7ヶ月前
記事のアイキャッチ画像
【Next.js】グローバルステートライブラリ比較
Arsaga Developers Blogのフィード
🔰はじめにNext.jsを用いた開発において、グローバルステートに関するライブラリを決めるターンが来たので色々使ってみた所感を記載!〇〇の場合おすすめみたいな記載はしますが、「1番これがいい」みたいな記載はしませんご自身の時と場合に合わせて1番いいを見つけてもらえれば 😵‍💫忙しい人のためにContext API含め7つ調査したよここ で比較しとるよ 🔬そもそもグローバルステートって?? 説明コンポーネントを跨いだ情報の管理。props で渡して管理する方法もあるが、コンポーネントが多くなったり ./pages/ 配下のコンポーネント同士の受け渡...
7ヶ月前
記事のアイキャッチ画像
【Nuxt.js】EC2環境でJavaScript heap out of memoryを解消するステップ
Arsaga Developers Blogのフィード
はじめにEC2環境でnpm run buildを実施したところ、以下のエラーが発生しました。このビルドエラーに対する原因を特定する方法と解消の過程について記事にしていきます。<--- JS stacktrace --->FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory 1: 0xa24ed0 node::Abort() [node] 2: 0x966115 node::FatalError(char c...
7ヶ月前
記事のアイキャッチ画像
輪読会でのファシリテーターのススメ。
Arsaga Developers Blogのフィード
始めに。少し前の話になるのですが、社内で輪読会の企画とファシリテーターを行いました。それがとても楽しかったので、輪読会を行ってみたい人や、ファシリテーターをやってみたい人の何か参考になれば良いなと思い、記事を書いてみることにしました。誰かの参考になれば幸いです。 輪読会の企画を行ったきっかけ。元々輪読会というイベントに興味がありました。同じ本を読むことで、その本の分野の知識を一緒に深めることができたり、普段業務では一緒にならない人と積極的に交流できそうだと思っており、一度社内で行ってみたいと感じていました。社内で勉強会の企画をすることになった際、輪読会を...
7ヶ月前
記事のアイキャッチ画像
Vueのcomputedをゆるく解説してみる
Arsaga Developers Blogのフィード
🌱 はじめにVue.jsを使いたてでよく「結局computedってなんなん...??」「これはcomputedにした方がいい...??」と悩んでいたのでその考え方として。公式ドキュメントを元にゆるい日本語で説明していきます。https://ja.vuejs.org/guide/essentials/computed.html 🤔 computedって??あるデータをウニャウニャして新しいデータを算出する。import { reactive, computed } from 'vue'const author = reactive({ name: 'John Do...
7ヶ月前
記事のアイキャッチ画像
フロントエンドエンジニアがDBを初めて触って学んだこと
Arsaga Developers Blogのフィード
はじめにここ2~3ヶ月のうちにDBを触る機会が多くなってきたので、備忘録を兼ねてこれまで学んだことをアウトプットします。 SQLの実行順SQLは以下の順序で実行されます。クエリ生成時においては、異なる順序や方法で実行することがありますが、結果的には以下の順序に従って生成されます。FROM -- テーブル指定(最初に、FROM句で指定されたテーブルやビューが読み込まれます)ON -- 結合条件の指定JOIN -- テーブルの結合(このステップでON句が利用され、結合条件が適用されます)WHERE -- フィルタ条件による行の絞り込みGROUP BY -- グループ化...
8ヶ月前