Node.js

Feature Non-Blocking(Asynchronous and Event Driven) callback, parallel disk access これまでの言語はWebサーバをマルチスレッドで動かすことで大量アクセスを捌いていた マルチスレッドといってもスレッド数には限界があった(C10K問題) Node.jsはcallback呼び出しによりI/Oによるブロッキングを受けないようにしシングルスレッドで大量アクセスを捌けるようにした JavaScriptのAjaxをサーバ側にも拡張している Event Loop callback関数の呼び出しをリッスンして待つ V8 JavaScript Engine(Google Chrome) is very fast NPM Node Package Manager(online repositories) $ npm install (install all the modules in package.json) $ npm install --save (add the module dependency to package.json) $ npm install <Module Name> $ npm install <Module Name> -g (dependency globally) File System File I/O require(“fs”) var fs = require("fs"); // Synchronous read var data = fs.

sample

Introduction One morning, when Gregor Samsa woke from troubled dreams, he found himself transformed in his bed into a horrible vermin. My Heading He lay on his armour-like back, and if he lifted his head a little he could see his brown belly, slightly domed and divided by arches into stiff sections. The bedding was hardly able to cover it and seemed ready to slide off any moment. My Subheading A collection of textile samples lay spread out on the table - Samsa was a travelling salesman - and above it there hung a picture that he had recently cut out of an illustrated magazine and housed in a nice, gilded frame.

Motion Typo Hello

/** * 定数の宣言 */ // setTimeoutの秒数(言葉が変化する時間) var CHANGE_SPEED = 10; // setTimeoutの秒数(インターバルの時間) var INTERVAL_SPEED = 2000; // アスキーコードのミニマムリミット var MIN_ASCII_CODE = 48; // アスキーコードのマックスリミット var MAX_ASCII_CODE = 125; // 表示する言葉 var TARGET_WORDS = new Array( "world", "tsujimitsu", "javascript", "art", "design", "motion", "typo", "graphic", "thank", "you", "very", "much" ); // 表示する先(ID) var DISPLAY_ID = "hello"; /** * インターバルを置く.次の文字列へセットする. * * @param 文字配列 currentWordAsciiCode(array), ナンバー targetWordNumber(int) * @return true * */ function interval(currentWordAsciiCode, targetWordNumber) { // 引数targetWordNumberがundefinedなら0を代入する if (targetWordNumber == undefined) { targetWordNumber = 0; // targetWordNumberが長さを超えた場合0に戻す } else if (targetWordNumber = TARGET_WORDS.

My First Post

Test this is test posts import test print(123)

Zero One

var i,y; var html,rand; function $(id){ return document.getElementById(id) } for(i=0; i" for(y=0; y" + rand + ""; } $("table").innerHTML += html + "" } function change() { var x,y,id; x = Math.floor( Math.random() * 19 ); y = Math.floor( Math.random() * 69 ); id = x + "-" + y; var target = $(id).innerHTML; if(target == 0){ $(id).innerHTML = 1; } else { $(id).innerHTML = 0; } setTimeout("

AWS IoT

使い方 AWS IoT 今すぐ始める 接続 -> デバイスの設定 今すぐ始める Linux/OSX, Node.js 接続キットのダウンロード 以下をデバイスで実行 unzip connect_device_package.zip chmod +x start.sh ./start.sh 登録 -> モノ モノの登録 モノの作成 セキュリティ -> 証明書の作成 以下のダウンロード このモノの証明書 パブリックキー プライベートキー 有効化 完了

hugo

Go Download # cd ~ # wget https://storage.googleapis.com/golang/go1.9.linux-amd64.tar.gz # ls -l go* -rw-r--r--. 1 root root 102601309 Aug 25 07:44 go1.9.linux-amd64.tar.gz Install # tar -C /usr/local -xzf go1.9.linux-amd64.tar.gz # ls -ld /usr/local/go/ drwxr-xr-x. 11 root root 265 Aug 25 06:51 /usr/local/go/ # vi ~/.bash_profile PATH=$PATH:$HOME/bin:/usr/local/go/bin # source ~/.bash_profile # go version go version go1.9 linux/amd64 Test # vi hello.go package main import "fmt" func main() { fmt.

Agile

プロダクトバックログ(マスターユーザストーリー) ユーザーストーリーの集合体 100個以内(多く入れすぎない) ユーザーストーリー 受け入れ基準=テスト可能 ストーリーは最低3~5個受け入れ基準を持つ ユーザーストーリーとして記述しにくいものは、システムにおける制約・制限に対する記述の場合が多い スプリント 1~2週間のタイムボックスで分割されている期間(分析、設計、開発、テスト、デモ、承認) スプリント完了の定義は明確にしておく(作業者と依頼者の認識は同じか?) スプリントの構成 スプリント計画ミーティング デイリースクラム スプリントレビュー 振り返り 参考にしたいアジャイル関連資料 アジャイル・スクラム導入に際して、参考にしていたサイト集 SCRUM/アジャイル開発の入門資料を全力でまとめてみた 参考書 アジャイルサムライ−達人開発者への道− SCRUM BOOT CAMP THE BOOK アジャイルな見積りと計画づくり ~価値あるソフトウェアを育てる概念と技法~ アジャイルプラクティス Memo 冬休みの宿題かな

Weekly Report

DockerとLinux OSのリソース共有状況の調査 dockerコンテナがホストに与える影響についてカーネル別に検証、解説されている。 2015年の情報なので今時点では再度確認が必要ですが、評価観点について 非常に参考になる記事です。 OSSのDockerコンテナ環境管理ソフト 注目の5製品紹介 2016年版 (1⁄7) コンテナ環境管理ソフトの比較記事。2016年末版なので比較的新しい。 オーケストレータ(k8s, swarm)よりさらに上位層の話。 あまり聞きなれないソフトウェアがでてくる。Mesos, OpenShift以外は初めて知った。 コンテナ関連で面白いのはコンテナを管理するためのマネージャをコンテナ上で動作させる ソフトウェア構成が一般的になりつつあるってとこ。 Docker ドキュメント日本語化プロジェクト dockerドキュメントの日本語化プロジェクト。 githubで管理されており、プルリクで貢献できるとのこと。 Neutron networking with Red Hat Enterprise Linux OpenStack Platform Neutron関連の機能やモジュール配置についてわかりやすい図で表現されている。 Advent Calendar関連 openstackとdocker関連のAdvent Calendar。参考になりそうな情報満載。 Docker Advent Calendar 2016 CrowdWorksのDocker開発環境 OpenStack Advent Calendar 2016

Hugo on CentOS 7

tl;dr CentOS 7上でHugoを動作させる 作成したコンテンツは travisでビルドし、Github Pages で公開する Hugo install $ cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) $ yum -y install git go $ yum list installed | grep -E '^git|^golang' git.x86_64 1.8.3.1-6.el7_2.1 @updates golang.x86_64 1.6.3-1.el7_2.1 @updates golang-bin.x86_64 1.6.3-1.el7_2.1 @updates golang-src.noarch 1.6.3-1.el7_2.1 @updates $ cd /opt $ export GOPATH=$HOME/go $ go get -v github.com/spf13/hugo $ vi /root/.bash_profile PATH=$PATH:$HOME/bin:$HOME/go/bin $ source /root/.bash_profile $ hugo help $ hugo version Hugo Static Site Generator v0.