NCDCエンジニアブログのフィード

https://zenn.dev/p/ncdc

NCDC株式会社( https://ncdc.co.jp/ )のエンジニアチームです。 募集中のポジションや、採用している技術スタックの紹介などはこちらをご覧ください! https://github.com/ncdcdev/recruitment

フィード

記事のアイキャッチ画像
[CDK] -e オプションで依存関係を解消
NCDCエンジニアブログのフィード
スタックの再デプロイ時に、他スタックとの依存関係により正常にデプロイができず、解決までに時間がかかってしまったため、備忘録として残しておきます。!この記事では以下について触れていきます。CDKとは(軽く)基本的なコマンド今回困ったこと(本題)解決策(-eなるものがあるらしい)まとめでは、初めて行きます。 CDKとはCDK(Cloud Development Kit)は、クラウドインフラストラクチャをコードで管理するためのツール。昨今では当たり前となってきましたが、従来はコンソール画面からリソースを手動で設定、構築していましたが、CDKを使用することで、プログ...
3日前
記事のアイキャッチ画像
Can I useが役に立った話
NCDCエンジニアブログのフィード
背景以前プロジェクトでRGBでなくHSlで色を付ける実装をしていたのですが、スマホで動作確認をしたところ全てが黒色か白色で描画されるバグが起こってしまいました。PC画面(chrome)スマホ画面(IOS safari) とりあえず原因がわかるhslの表示箇所で単位をつけると正常に色付けがされることがわかりました。background:hsl(180 ,100,75);↓background:hsl(180 deg ,100%,75%); なぜPCとスマホで差が出る?とはいえなんか単位つけたら治りました!だとまた同じバグが出かねないので、差が出た理由...
3日前
記事のアイキャッチ画像
[DB] 様々なDBのユースケースを考えてみた
NCDCエンジニアブログのフィード
社内で行われる週1のエンジニアのチーム活動の中で、DBのユースケースについて考える機会があり、私自身これまでどのDBが最適なのかを深く意識したことがなかったので、なるべく情報を集約し、記事としてまとめてみました。DB選択はシステム要件に依存するため、「こんなケースだったらこのDBを検討した方が良さそうだよね」と言った観点で書いていきます。!本記事の対象者は以下です。アソシエイトの方DBについてあまり詳しくない方DB検討中の方!以下の順に触れていきます。RDBMSとNoSQLとは?RDBMSとNoSQLの違いRDBMSとNoSQLどちらを選択するべきかを見極め...
5日前
記事のアイキャッチ画像
Pythonライブラリ管理ツール決定版!Ryeを導入してみた
はてなブックマークアイコン 3
NCDCエンジニアブログのフィード
はじめに普段はJavaScriptを主に開発を進めているのでPythonで開発を進めると様々な問題に悩まされます。その中でもパッケージの管理については個人的に不自由をすごく感じています。Pythonのバージョンを設定するpyenv, プロジェクトごとのパッケージを管理するために仮想環境の構築、さらにパッケージのバージョンを設定するためのrequirements.txtと開発までのハードルが高すぎます。良い方法がないかと調べていく中で全てを解決できそうなRyeというツールを見つけましたので導入方法をメモ程度に記事にしました。導入環境はAWSのSageMaker上です。ライブラ...
5日前
記事のアイキャッチ画像
Amplify HostingでNext.jsのサーバーサイドから環境変数が読み込めない
NCDCエンジニアブログのフィード
この記事に書いてあることAmplify HostingでNext.jsのサーバーサイドから読み込む環境変数を設定したい場合はビルドコマンドで.envファイルに明示的に書き込む必要があります。 起きた問題Next.jsでサーバーサイドの環境変数の値により表示を切り替えるロジックを実装しました。Amplify Hostingのアプリの設定>環境変数から値を設定したのですが、アプリからは読み込めないという問題が発生しました。 考えたことNext.jsアプリでブラウザから環境変数を読み込む場合はNEXT_PUBLIC_というprefixをつける必要があります。しかし今...
6日前
記事のアイキャッチ画像
CodeCommitトリガーでPRの差分ファイルを取得する
NCDCエンジニアブログのフィード
記事の内容普段Githubを使っていると、なかなかCodeCommitを使う機会がないのですが、たまたまCodeCommitを使う機会がありました。プルリクエスト作成時に、コードの差分はAWSコンソールから確認できますが、差分をS3にバックアップしたい要件がありました。gitコマンドでなくaws-cliでできそうで、cliでできるというこはaws-sdkでも大体できるので、CodeCommitトリガーでLambdaを実行することでトライしてみました。 関係する技術・ツールAWS CodeCommitAmazon EventBridgeAWS Lambda(Node.j...
6日前
記事のアイキャッチ画像
Gemini1.5 proとClaude 3 Opusを横に並べただけのチャットアプリを作ってCloud Runで動かしてみた
NCDCエンジニアブログのフィード
Google Cloud Next'24で、Gemini1.5 proが発表されました。またつい最近、Claude 3 OpusがVertexAIでも使えるようになりました。どっちが優れているか気になったので横に並べて同時に使ってみるアプリを作ってCloud Runにデプロイしてみました。 ソースコード記事にしたけど、単純にAIを呼び出して結果を横に並べているだけで語ることが特にないです。LangChainからAIを呼び出してSteamlitでWebアプリ化しています。コードは貼って置きます。https://github.com/k-ibaraki/gen-ai-samp...
6日前
記事のアイキャッチ画像
react-konvaでピンチインピンチアウト
NCDCエンジニアブログのフィード
まずKonvaの公式ドキュメントにピンチインピンチアウトの実装方法は記載されています。https://konvajs.org/docs/sandbox/Multi-touch_Scale_Stage.html#How-to-enable-pan-and-pinch-zoom-for-canvas-stageただ、これはscriptタグに内容を書いているのでreact konvaで実装するには少し改変が必要になります。今回はそれを簡潔に書いていきます。 コードの解説konvaの公式ドキュメントからコピペしたコードですが、軽く説明をします。コピペしただけなので内容は流して...
9日前
記事のアイキャッチ画像
SageMakerでLightGBMモデルをデプロイしてみた
NCDCエンジニアブログのフィード
はじめにBoto3とAWSが提供しているPyTorchコンテナイメージを利用してLightGBMのモデルをサーバーレスエンドポイントとしてデプロイしてみたときのメモになります。 動作環境python-vesion: 3.11.6boto3: 1.34.69sagemaker: 2.214.0lightgbm: 4.3.0pythonの実行はローカルPCで行いました モデルの準備LightGBM回帰モデルをpickleファイル形式で保存しておきます。以下は保存する際のイメージです。 train.pyimport picklefrom pathlib ...
13日前
記事のアイキャッチ画像
AWS SageMakerとGitHubを連携方法
NCDCエンジニアブログのフィード
はじめにAWS SageMakerを使ってデータ分析や機械学習をする時にコードの管理方法に困っていたため、Gitを導入してチーム開発の効率化を図りました。メモ書き程度ですが、初めてSageMakerを触る人などの助けになれば幸いです😁AWSのアカウント、GitHubのアカウントは持っている前提で話を進めていきます。 準備連携を始める前に以下のものをAWS consoleなどを通して準備しておいてください。GitHub上に今回のプロジェクト用のレポジトリAWS SageMaker上にドメインとプロフィール SageMakerドメインとGitHubの連携基本的には...
16日前
記事のアイキャッチ画像
react-konvaの公式ドキュメントを要約しました
NCDCエンジニアブログのフィード
react konvaとは和訳しただけです↓konvaはデスクトップおよびモバイル アプリケーションのキャンバスの対話性を可能にすることで2D コンテキストを拡張する HTML5 Canvas JavaScript フレームワークです。Konvaデスクトップおよびモバイル アプリケーションの高性能アニメーション、トランジション、ノード ネスト、階層化、フィルタリング、キャッシュ、イベント処理などが可能になります。アプリケーションで数千のシェイプを使用している場合でも、ステージ上にオブジェクトを描画したり、イベント リスナーを追加したり、他のシェイプとは独立して移動、拡大縮小...
17日前
記事のアイキャッチ画像
【Flet】Pythonで書いたFlutterのWebアプリをAWS Amplifyで公開する
NCDCエンジニアブログのフィード
この記事の続きです。https://zenn.dev/ncdc/articles/3e83248643806ePythonライブラリのFletで作ったWebフロントエンドをAmplifyにデプロイしてみます。 とりあえず、コンソールから手動でdeployしてみる前回の記事で作ったサンプルアプリをビルドしてzipで固めます。AmplifyのコンソールからD&Dでデプロイします。動きました。以上です!!これだけで終わりだと記事としてイマイチなので、自動Deployを構築してみます。 Amplifyにfletで作ったwebアプリをCI/CDする...
20日前
記事のアイキャッチ画像
テストコード?書こうとは思うんですけど時間がとれないんですよね
NCDCエンジニアブログのフィード
誰向けの記事?テストコードがあるといいとは知っているでもテストコードを書くことが習慣づいていない こうなってない?目的の機能を実装する当該コードにテストがないテストコードを書こうとするすぐには書けなそう「時間がないのでテストは書きません。後で書きます」はじめに戻る 原因は本当に時間がないから?テスタビリティ(テスト容易性・テストが簡単に記述・実行できるか)のあるコードを書いていないからではテスタビリティがあるかどうかを簡単に判断するのはテストを書くことテスタビリティは設計段階で考慮する必要がある設計段階でテストを書くことで、テスタビリティが担...
21日前
記事のアイキャッチ画像
Amplifyさん、勝手にyarnしないでください
NCDCエンジニアブログのフィード
久しぶりにAWS Amplify(Gen1)でバックエンドのデプロイをローカルから実行したらエラーに遭遇したので、対処法のメモです。 ハマったことamplify pushしたら以下のようなエラーが出ました。🛑 Packaging lambda function failed with the error Command failed with exit code 1: yarn install --production➤ YN0050: The --production option is deprecated on 'install'; use 'yarn workspac...
24日前
記事のアイキャッチ画像
CodePipelineで推奨のEventBridgeがクロスアカウントだと中々大変な件
NCDCエンジニアブログのフィード
記事の内容少し前の話なのですが、2023年8月頃からCodePipelineのCodeCommitの検出がポーリングで非推奨となっておりその対応としてEventBridgeによるイベント駆動にする必要がありました。この関係でCodePipelineを使ってCI/CDを構築する際、イベント駆動にしたかったのですが、プロジェクトの環境的にCodeCommitとCodePipelineが異なるアカウント同士いわゆるクロスアカウントの関係で中々大変でした。備忘録として今回の作業内容をまとめてみたいと思います。https://docs.aws.amazon.com/ja_jp/even...
1ヶ月前
記事のアイキャッチ画像
Amazon API Gatewayの統合リクエストで、パスパラメータが自動でマッピングされなかった
NCDCエンジニアブログのフィード
AWSでAPI Gatewayを扱っていて、少しハマりました。ググっても情報が見つからず、ChatGPTに聞いても答えを知らなかったので、記録を残しておきます。 事象API Gatewayでは統合リクエストをデフォルト設定にしておけば、リクエストのパラメータはそのままバックエンドに渡してくれるものだと思っていました。しかし、クエリパラメータは自動でマッピングしてくれたのに、パスパラメータは指定したら500エラーになってしまいました。 解決策統合リクエストのURLパスパラメータにマッピングの設定を追加したらパスパラメータを正常に使用することができました。 詳細 今回...
1ヶ月前
記事のアイキャッチ画像
【Next.js】ANGEL Dojoでフロント実装に使用したライブラリ
NCDCエンジニアブログのフィード
昨年参加させていただいたANGEL Dojoに関する記事です。私がフロント担当だったかつNext.js(Page Router)を使用したため、そちらで使用したライブラリを一部紹介させていただく内容になります。この記事を通して、「へー、こんなのあるんだ」と思っていただけると幸いです。 ANGEL DojoとはANGEL Dojoは、AWS(Amazon Web Service)が主催する若手エンジニア向けのトレーニングイベントになります。基本2社1組のチームで、AWS関連の座学・サービス開発を進めていく3ヶ月ほどのプログラムです。https://aws.amazon.com...
1ヶ月前
記事のアイキャッチ画像
AWS CDK|セキュリティスキャンツール cdk-nag に入門しました
NCDCエンジニアブログのフィード
昨年 CDK に入門し、しばらくして cdk-nag のことを知りました。当時から気になっていたのですが、この度社内エンジニアチーム活動時間で触れることができたので、cdk-nag の概要を入門者のアウトプットとして記録することにしました。cdk-nag 自体は目新しいものではなく、2022 年に re:Invent でも紹介されており[1]、cdk-nag を検索すると既にさまざまな Tips が公開されています。使いこなしていきたいです。 cdk-nag とはhttps://aws.amazon.com/jp/blogs/news/manage-application-sec...
1ヶ月前
記事のアイキャッチ画像
何かを一括登録するためのCSVをVBAで作成する
NCDCエンジニアブログのフィード
概要タイトルの通り、何かのシステムにCSVで一括登録したいとき、エクセルに入力したデータをCSVに変換するVBAのサンプルコードを紹介しています。 この記事の経緯システムへ何かデータを一括登録するときに、フォーマットに沿ったCSVを作成する必要がありますが、以下のようなケースにおいて、エンドユーザーだけでは正しいCSVを作成するのには難しい場合があります。バリデーションが複雑ユーザーがシステムを利用する際はシステム側がいい感じにエラーを出してくれるので、一定のルールに沿った正しい入力値になるよう誘導してくれるるはずしかしそれをCSVで人力で作成しようとするのは難し...
1ヶ月前
記事のアイキャッチ画像
AWS CDKがなにもわからないので、勉強の為にAPI GatewayとLambdaをデプロイしてみた
NCDCエンジニアブログのフィード
はじめにCDKを知るために、なるべく簡単なコードでAPI Gateway + LambdaのAPIを作りながら勉強してみました。半年後の自分が内容を忘れててもこれを読めば完全に理解できるように記録を残します。間違いなどあれば優しくコメントで指摘いただけると助かります。 そもそもAWS CDKとは?そもそもAWS CDKとはなにか。AI(Gemini)に聞いてみました。AWS CDKとはなんですか? AWS CDK とはAWS CDK は、最新のプログラミング言語を使用してクラウドインフラストラクチャをコードとして定義し、それを AWS CloudFormation ...
1ヶ月前