なになれ

IT系のことを記録していきます。

MEAN StackをKubernetesで動かす(その2)

前回はHTTPでアクセスするところまでを行いました。 hi1280.hatenablog.com 今回はHTTPS対応を行います。 MEAN Stackのプログラム一式はこちら github.com 実運用に耐えうることを想定して、以下の内容を含めています。 MongoDBの内容が前回までで、今回はHT…

MEAN StackをKubernetesで動かす(その1)

前回はMEAN StackをDocker Composeで動かしてみました。 hi1280.hatenablog.com 今回はMEAN StackをKubernetesで動かします。 Dockerに対応したので、Kubernetesでも動くようになっているはずです。試してみます。 なお、今回のKubernetesの環境はGKE(Google…

MEAN StackをDocker Composeで動かす

前回はMEAN StackをHeroku上で動かしてみました。 hi1280.hatenablog.com 今回はMEAN Stackアプリに手を加えて、Dockerに対応させます。 Dockerにすれば、他の環境への移行も楽になるのではと思います。 Docker Composeを使って、nginx+Node.js+MongoDBの環…

MEAN StackをHeroku上で動かす

MEAN Stackを運用するサービスを検討していましたが、Herokuが良いだろうという結論になり、実際に使ってみました。 Herokuを選んだ決め手は以下のとおりです。 Node.jsに対応している MongoDBがアドオンで簡単に使える Herokuのドキュメントを参考にして、…

PWA BuilderでPWA化してみてPWAを学ぶ

PWA

PWA BuilderというPWA化するためのToolを試してみた記録です。 ざっくりとPWAとは何なのかが分かる内容になっていると思います。 今回は以下のサンプルを利用しています。 Freelancer - One Page Theme - Start Bootstrap PWA化したデモサイトはこちらです。…

Angular+FirebaseのWebアプリを公開するために実施したこと

過去に記事にしたWebアプリを公開しました。 bookshelf-share.site 技術的なことは下記記事を見てください。 hi1280.hatenablog.com この記事では、アプリの開発以外で実際に公開するために実施したことを紹介します。 目次 テスト環境の作成 独自ドメインの…

AngularFireを使うと遭遇するRxJSでのハマりどころ

Angularを使うと漏れなくRxJSを使うことになります。 非同期処理を命令的に書くことがなくなるメリットがある反面、 宣言的プログラミングに慣れていない人にとってはRxJSを理解することが難しいです。 AngularFireを使ってWebアプリを作成する中で、遭遇し…

AngularとFirebaseでWebアプリを作った

AngularとFirebaseでWebアプリを作ったので、その記録です。 作ったものがこちらです。 友達同士で本を共有できるみんなの本棚というコンセプトで、本を登録し、持っている本を友達同士で共有できるサービスです。 bookshelf-share.site この記事では、この…

MEAN and Cosmos DBをVisual Studio Team ServicesでApp Service on Linuxにデプロイする

AzureのApp ServiceにはWindows版とLinux版があります。 OSSを使用するアプリケーションではLinux上で動作させる方がシンプルな形になりそうです。 Linux版のApp ServiceであるApp Service on Linuxを試してみます。 サンプルアプリの準備 MEAN構成のサンプ…

Amazon Echoとラズパイでスマートホーム化

Amazon Echoとラズパイでスマートホームを実現します。 Amazon Echoに対して音声で呼びかけて、Alexaスキルからラズパイを通して家電を操作します。 構成図 AWS IoTの準備 AWS IoTを使って、Alexaスキルとラズパイとを連携します。 デバイスの設定を案内通り…

Web画面経由でコマンドを操作する

Web画面経由でコマンドを操作してみました。 Node.jsでExpressを利用しています。 今回の実装時のポイントは以下の通りです。 Node.jsでコマンドを実行する Node.jsの標準APIであるchild_processを使用します。 以下のようにexecメソッドでコマンドを実行す…

ラズパイの赤外線リモコンを高性能にした

hi1280.hatenablog.com 以前に作成したラズパイの赤外線リモコンを高性能なものにするために改良しました。 遠距離でも赤外線が届くようにするのと複数のリモコンに対応しました。 配線を変更 赤外線LEDを高出力なものに変更しました。 akizukidenshi.com 赤…

Electronでデスクトップを録画するアプリが簡単に作れました

ElectronはAtomに使われていたり、VSCodeに使われていたりとPCネイティブなアプリを作るために最近よく使われているライブラリです。 今まで使ったことがなかったので使ってみました。今回作ったアプリのリポジトリはこちらです。 アプリ作成のポイントを紹…

2017年で学んだ技術

今年を振り返る的な投稿です。 今どきのソフトウェア開発ってなんだろうということに取り組んだ2017年でした。とりあえず新しい技術と言われるものを触れば何か見えてくるものがあるかもしれないと考えました。 かの有名な石黒浩先生の講演を聴く機会があり…

Trelloに登録したタスクの内容を知るAlexaスキルを作った

Amazon Echo Dotが我が家にも届いたので、Alexaスキルを作ってみました。 作ったのは、Trelloに登録したタスクの内容を知るスキルです。 なお、Alexaスキルは他ユーザに利用してもらうためにスキルを公開することもできますが、今回は個人用途で使用できれば…

AngularFireでRealtime DatabaseからCloud Firestoreに変更した

AngularFIreを使用してアプリを作っていたのですが、最近のAngularFireのアップデートでRealtime DatabaseからCloud Firestore推しな雰囲気を感じたので、Cloud Firestoreに変更してみました。 AngularFireを使用する上でのRealtime DatabaseとFirestoreとの…

MCP70-532:「Microsoft Azure ソリューションの開発」の試験に合格しました

試験 70-532: Microsoft Azure ソリューションの開発に833点で合格しました。備忘録的に合格までの過程を残したいと思います。 問題や解答は持ち帰れないので、記憶にあるうちにです。 試験の内容 試験時間:150分 問題数:30問 合格点:700点以上 試験問題…

Raspberry Pi3で赤外線リモコンを作る

よく耳にするけどラズパイを使ったことがなく、ふとラズパイで何か作ってみようと思い立ち。 そこそこ実用的であろう赤外線リモコンに挑戦してみました。 電子工作とは無縁な初心者向けの内容になります。 用意したもの 全てamazonで購入しました。 Raspberr…

XP祭り2017に参加しました

XP祭り2017に初参加しました。 登壇者の方々、エクストリームでした。 2002年から開催されているイベントということで、XPの精神が根付いているんだなぁと感じました。 【基調対談】ワークスタイル改革を実践者する二人が、働き方の本質を語る (青野 慶久さ…

Auth0 + Angularでの認証機能実装

Auth0を利用して、Angularで作成したアプリに認証機能を実装してみました。 auth0.com Auth0のドキュメントにAngular向けのQuickStartがあるので、そのまま実装すればAuth0を利用できます。 Auth0 Angular 2+ SDK Quickstarts: Login 今回はAuth0で用意され…

MEAN and Cosmos DBをVisual Studio Team ServicesでAzure App Serviceにデプロイする

サンプルアプリの準備 MEAN構成のサンプルアプリとして以下を使用する https://github.com/hi1280/angular-cosmosdb 前提条件 Azure CLI 2.0をインストールしている https://docs.microsoft.com/ja-jp/cli/azure/install-azure-cli Angular CLIをインストー…

Visual Studio CodeでTypeScriptを書くときのオススメ設定

TypeScriptにある便利機能をVisual Studio Code(以下、VSCode)がいい感じに可視化してくれるので、この二つの組み合わせは非常に良いです。 その中でも個人的に良いと思った機能と設定方法を紹介します。 なお、動作確認は以下のバージョンで行なっています…

Angular Form Validation @reactive forms

hi1280.hatenablog.com の続き Reactive Formsで同様の対応をしてみた。 ほぼ流用できた。 メッセージに渡すパラメータの定義形式をわかりやすさ重視に変えた。バリデータ毎にパラメータを定義するようにした。

ng-japan 2017のコンテンツまとめ

自分のメモ用にng-japan 2017のコンテンツへのリンクをまとめます。 ngjapan.org 動画 Track A www.youtube.com Track B www.youtube.com 資料 Track A Keynote docs.google.com RxJS Real World speakerdeck.com 紹介されたCQRS実践のための参考書籍 Web Co…

Angular Form Validation @template-driven forms

Angular公式のForm Validationのコードサンプルがよろしくないと思ったので、 エラーメッセージの冗長部分の排除とバリデーションの汎用化を意識して書き直してみた。 なお、template-driven formsの例を対象としている。 エラーメッセージはバリデーション…

Angular Update作業 ~Angular4 and Angular CLI~

GWでいそいそAngularのUpdate作業をした。 Angularの環境構築で苦労した Angular2が正式リリースされてから、ちょこちょこ触っている。 その時に作ったAngular環境は、Angular2+webpackで構成してた。 ちなみにwebpackでの構成は、Angularの公式ドキュメント…

Agile Japan 2017 セッション感想と気付き

Agile Japan 2017に参加しました。 色々なセッションに参加しましたが、印象に残ったセッションを紹介したいと思います。 【心】見える化・カイゼン・カンバンが全社に広がった ~口コミで広がった会社見学ツアーへの想い・ボクが仲間を信じれば会社は変わる…

社内コミュニティのすゝめ

レガシーな環境でも社内コミュニティを作るとなかなか良いよって話です。 自分の環境について そこそこ大規模なSIerのSEです。 SIerというとブラックなイメージがつきまとうはず。 ITエンジニアなのにほとんど触っているのはExcelであったり、GitHubといった…

Java SE 8のパフォーマンスを簡単に測定してみた

Java SE 8が最近リリースされました。 Java SE 8でJVMに対してパフォーマンスチューニングがされたということを聞き、簡単にパフォーマンスを測定してみました。 ・測定方法 100万個のBeanをListに格納する時間を計測 ・実行環境 JRE Java SE 6U45 Java SE 7…

Spring MVC Validationを適用する

Spring MVCでValidationを適用する手順を記します。 pom.xml Hibernate Validatiorを使用するためにライブラリをインポートします。 <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-validator</artifactId> <version>5.0.3.Final</version> </dependency> Controllerクラス画面からの値を受け取るエンティティクラスに@Validア…