エンジニアのはしがき

プログラミングの日々の知見を書き連ねているブログです

2021-01-01から1年間の記事一覧

AWS Lambdaを運用しての所感

Lambdaを本番環境で約2年程運用してきましたが、機能追加・修正や保守のことを考えると最初からこうしておけばよかったなーと後悔することもありました。 現在までの知見で個人的に考慮した方がいいこと、やっておいた方がいいことを書き連ねてみます!

クロスドメインにiframeを使うのは難しかった

iframeは実務でも趣味でも使う機会が全く無く、これに関しては無知だったのですが 先日Unity(WebGL)とiframeを組み合わせて自作ゲームを制作する機会があり、結果見事に頓挫したのでiframeについて調べた記録を残しておきたいと思います。 慣れた方にとって…

ポートフォリオサイトが完成しました!

空き時間を見てはちまちまとNext.jsで書いていたポートフォリオサイトを公開しました! 今後も追加する内容があればマイナーアップデートを続けていくつもりです😊 portfolio.ts-soda.net github.com

VSCodeで.NET Core(CUI)アプリの入力を受け付けたい

先日、.NET Coreでコンソールアプリを作る機会がありました。 VSCodeで何も意識せずにF5でデバッグしようとすると、コンソールに出力はされるものの、 Console.Readline()で入力を受け付ける処理で、入力を受け付けてくれずに処理が止まってしまうことに気づ…

serverless-nextjsを使うもTypeError: Object(...) is not a functionエラーでビルドに失敗した

AWS環境にNext.jsをお手軽にデプロイするツールにserverless-nextjsというものがあったので、最近試してみていました。 serverless-nextjsとは 記述例 原因 ビルドに失敗したバージョン ビルドに成功したバージョン 参考 serverless-nextjsとは github.com S…

初学者の気持ちに戻ってみた

こんばんは! 4月が始まり、私の下にもプログラミング初学者の後輩が付きました。 業務ではC#が必須になるので、まずはその勉強の為の課題を出してやってもらっていますが、なかなか苦戦しているようです。 ふと自分が初学者の頃はどうだったろうと思い返す…

Markdown Preview Enhancedで簡易なドキュメントを作ろう

非エンジニア向けの簡易的なドキュメントを作成するときのツールとして 日本企業御用達のエクセル、ワードがよく挙がりますが、 見やすく書こうとするとスタイル編集は必須になり、見た目に労力を割かないといけなくなりだんだんと辛くなります。 MarkDownで…

Windowsでスクリーンショットを多用するならScreenpressoはいいぞ

Windows10でスクリーンショットを撮る時は、今までSnippingToolを使っていたのですが 最近Screenpressoというソフトに乗り換えました。 www.screenpresso.com ブログ用のスクリーンショットを撮るのが主なのですが、結構作業の時短に貢献してくれています。 …

Serverless FrameworkならLambda(Node.js)をらくらく作れるよ

ちょっとしたLambda関数を作りたい時は、Node.jsやPythonエンジンのLambdaを作ることが多いのですが、実はいままで自前のシェルスクリプトでzip化した後にLambdaへアップロードしてデプロイしていました。 (今思うとなかなかに面倒な作業でした…) しかし、…

RDS Proxyを使いたかったけどNpgsqlから接続できなかった(解決済み)

AWSでLambda+RDSの構成を構築すると、Lambda自身が起動の度にRDSへのコネクションを張る為に負荷が大きく、あまり宜しくない構成であると言われてきました。 そのような構成の場合、RDS ProxyをDBプロキシとしてRDSの手前に配置することでコネクションのプー…

ついにラズパイにもVSCodeがやってきた!

code.visualstudio.com 先日、Raspberry Pi OS(旧Raspbian)でVisual Studio Codeが使えるようになったというアナウンスがありました。 今までずっとラズパイでVSCodeでソース修正ができたらなぁ~と思っていたところだったので、素直に嬉しいです。 早速試し…

IAMポリシーAWSLambdaFullAccessは廃止された模様

何があったのか 原因 対応 何があったのか .NET CoreをLambdaへデプロイしようとdotnet lambda deploy-serverlessを叩いたところ、CloudFormationからエラーが返りデプロイできなくなりました。 $ dotnet lambda deploy-serverless --region ap-northeast-1 …

.NETライブラリのClosedXMLで既存のExcelファイルを編集する

Excelは好きですか? 僕は嫌いです。規則性に乏しい罫線やセル結合にまみれたエクセルを加工するとかうんざりしますね。 …しかしながら最近既存エクセルのプログラムによる修正を強いられましたのでその方法を記録しておきたいと思います 本記事では.NETライ…

Docker上でASP.NET CoreのWebAPIを動かす

ASP.NET CoreをDockerで動かしてみたいなーとなんとなく思ったので動かしてみました。 Visial Studioは使わず、VSCodeで動かす想定です。

git bashからdocker runする時にはwinptyを頭につける

Dockerを触っていて、ちょっと気づいたことがあったので書き残しておきます。 git bashからDockerコンテナが起動できない? docker runでDockerイメージからコンテナを生成して起動させる場合、以下のようなコマンドを叩くと思います。 $ docker run --rm --…

Docker Desktop for WindowsでAngularの開発環境をつくる

AWS LambdaにDockerコンテナをデプロイできることを知り、Dockerを積極利用するモチベーションが高まってきた今日この頃です。 今回はAngularのDocker上での動かし方を備忘録として残していきたいと思います。

Unicodeの結合文字列がバグを呼び起こしてしまった

エクセルに比べれば外部のCSVを扱う処理はまだ悩むことが少ないだろうと油断していたところ、 先日かなり頭を悩ませたので戒めとして記録したいと思います。

AWS CLIバージョン2を使いだしたらlambda invokeが出来なくなった話

何をしたかったのか 何故動かなかったのか 修正後 他の手段 ~/.aws/config ファイルに追記する コマンドに追記する 何をしたかったのか macOSから下記のようなシェルスクリプトでLambda関数を実行しようとしたのですが、 AWS CLIのバージョンを1から2にアッ…

Macbookのクラムシェルモードが作動しなくて悩んだ話

クラムシェルモードって何? Macbookを折りたたんだ時に、ディスプレイの映像を有線接続した外部ディスプレイに出力するモードのことを指します。 Macbookのディスプレイでは小さくて見辛い!! 大き目のディスプレイに出力したい!! といった時におススメ…

Swiftでガワネイティブなアプリを作ろう!

ネイティブアプリでUIを作り込もうとすると何かと仕様について調べることが多く、苦労することが多いと思います。 個人的な意見ですが、今まで慣れ親しんだHTML, js, cssとは勝手が違い、Swiftでは思うようなUIを実現することが出来ず頭を抱えました WebView…

AngularのViewChild()の値はビューの初期化まではundefinedである

どうも、最近小規模な失敗談が尽きません… 今回はその中から、フレームワーク仕様の理解不足による失敗談を晒していきたいと思います! ハマったこと ViewChild()とは 何故undefinedだったのか 修正後 ハマったこと とあるComponentでViewChild()デコレータ…

AWS Glue(Python shell)をLambda代わりに使ってタイムアウトを伸ばす

AWS Lambdaは、サーバ自体のお守りが不要なのでさくっとバックエンドを構築したい場合はかなり便利です。 ただ難点を挙げるならば、タイムアウトが15分までしか伸ばせない点。 これは残念ながら仕様となっているのでどうしようもできません。 Lambda のク…

ASP.NET CoreがLambda上で何故か動かず四苦八苦した

何が起こったか フロントエンドから呼ばれるAPIサーバをAWS Lambda(ASP.NET Core)で構築していたのですが、 とあるリリース作業時に最新バージョンをLambdaへデプロイした後、APIサーバが常にエラーを返すようになってしまいました。 原因 ASP.NET Coreの…

ChromeのデベロッパーツールでWebサイトをデバッグ・検証しよう

今回はChromeのデベロッパーツールについて、普段よく使う機能に絞ってまとめていきます。

InstrumentsでiOSアプリのモニタリングをする

こんばんは! 前回のSwiftのメモリリークをやらかした話に関連して、負荷のチェックについても調べたので残しておきたいと思います。 ↓以前メモリリークでやらした話はこちら tm-progapp.hatenablog.com

Swiftで循環参照によるメモリリークを起こしてしまった話

こんばんは!今回は題名の通りSwiftでの失敗談です。 無知は罪なりとはよく言ったものですがそれを再確認させられました🤤

APIGateway+Lambdaによるアプリサーバをバージョン管理する

APIGatewayの統合リクエストとLambdaの組み合わせでバックエンドを構成することが多いのですが、最近になってバージョニングが出来ることを知り、いろいろと調べてみた結果を書き連ねていきたいと思います!

Raspberry Piで動画のストリーミングをしてみる

自宅で水耕栽培をしているのですが、植物の成長度合いをブラウザからでも見てみたいという気持ちから ラズパイで動画のストリーミングサーバを立ててみました!

Raspberry Piに突然VNC接続できなくなった

このご時世ですので、自宅で楽しめることをやってみようということでほうれん草の水耕栽培を始めました! ラズパイの在庫があったので、せっかくだしカメラでほうれん草の様子を撮った動画をストリーミングしようとしたところ、突如WindowsからラズパイへのV…

Google Adsense通りました

実は1か月ちょっと前からずっとAdsenseの申請をしていたのですが、 この度4回目のチャレンジで無事通過しましたので、今までに試したことを残していきたいと思います! 通過時点での状況 何故通ったのか 過去の落選理由 申請前にしたこと サーチコンソール…