【nodejs入門】開発環境構築と起動まで
さてはて。
nodejs入門。
簡単なアプリケーション作れるようになってみたいな。
npmとnodejsのバージョンはこんな感じ
$ npm --version 1.3.8 $ node --version v0.10.16
nodejsのプラグインをintellijにダウンロードする
intellijを起動して、「Configure」をクリック
「Plugins」からプラグインの設定ができる
標準ではインストールされていなかったのでインストール
nodejsで検索
検索でひっかかったプラグインをダブルクリックすれば、インストールできる
intellijを再起動して、プロジェクト作成をすると
nodejsが選択肢で追加されていることがわかる
ライブラリを有効にする
template settings
preferenceのところで、nodejsのcoreモジュールをインストールする
「Sources are not configured」となっているのでConfigureボタンをクリックすると
coreモジュールをインストールできる
今回はインターネットからダウンロード!!
起動だけしてみる
2種類あるな・・
- boilerplate (http://www.nodeboilerplate.com/)
- express app (http://expressjs.com/)
boilerplateはフロントエンドのテンプレートなのかな?bootstrapとの対比が出ていた。
http://www.sitepoint.com/boilerplate-bootstrap/
expressはwebアプリケーションフレームワークか。テンプレートエンジンとかは自分で選択するようだ。
今回はboilerplateを利用した。
※expressにしたら、intellijが落ちて起動しなかったから。。
プロジェクトの作成
パッケージ構成はこんな感じ
README.mdを見ながら進めていけば良い
コンソールから、initproject.shを実行する
$ cd nodejstest/ $ ls README.md initproject.bat initproject.sh nodejstest.iml templates $ sh initproject.sh
なんかイロイロふえた
そしてREADME.mdが消えた
initproject.shみたら
rm README.md
してた。
そりゃそうか。
さて、アプリケーションを起動しよう
$ cd nodejstest/ $ node server.js info - socket.io started Listening on http://0.0.0.0:8081
画面が表示された
index.jadeの内容が表示されているようだ
テキストだけどクリックしたらscript.jsが実行されていてmessageが表示された
へー。
今日はここまで
【JIRA】テスト環境で作成したワークフローを、本番環境に移動
ω-) ・・久しぶりの投稿
JIRAの管理をしている人がもしかしたら訳に立つかもしれないというまとめメモ。
(すごくコアなスコープだw)
JIRA上で使うワークフローを新しく検討している時に、
検証環境で作ったワークフローを、実際に使おうとしたときのメモ
【svn】svnsync: E160028
久しぶりにsvnのバックアップがこけた。
2014年 5月 2日 金曜日 12:00:27 JST Command Str = /usr/local/svn/bin/svnsync sync svn+ssh://{backupserver}/data/svn/repos/game svnsync: E160028: ディレクトリ '/content/trunk/public/img/material/chapter/hogehoge' はリポジトリ側と比べて古くなっています exit-status is 1
え、ちょっと何いってるか分からない。
hogehogeディレクトリを本体とbackupから、それぞれチェックアウトしてみた
# #本体 $svn checkout http://{svnserver}/svn/game/content/trunk/public/img/material/chapter/hogehoge #確認 $svn info //略 Revision: 331982 ##backup(backupはhttpでいけないようにしてる) $svn checkout svn+ssh://{backupserver}/data/svn/repos/game/content/trunk/public/img/material/chapter/hogehoge #確認 $svn info //略 Revision: 331661
Rev が331661以降でsyncが止まっている様子。
なんで止まってるんだお。。
少し前のログから辿ってみる
##本体 $ svn log -v -r 331660:331662 http://{svnserver}/svn/game/content/trunk/public/img/material/chapter ------------------------------------------------------------------------ r331660 | user | 2014-05-01 21:14:58 +0900 (木, 01 5 2014) | 1 line Changed paths: D /content/trunk/public/img/material/chapter/hage ------------------------------------------------------------------------ r331661 | user | 2014-05-01 21:15:11 +0900 (木, 01 5 2014) | 1 line Changed paths: A /content/trunk/public/img/material/chapter/hogehoge ------------------------------------------------------------------------ r331662 | user | 2014-05-01 21:27:58 +0900 (木, 01 5 2014) | 1 line Changed paths: A /content/trunk/public/img/material/chapter/hogehoge (from /content/trunk/public/img/material/chapter/hogehoge:331661) ------------------------------------------------------------------------ ##backup $ svn log -v -r 331660:331661 svn+ssh://{backupserver}/data/svn/repos/game/oslo-content/trunk/public/img/material/chapter/ pnsk@{backupserver}s password: ------------------------------------------------------------------------ r331660 | user | 2014-05-01 21:14:58 +0900 (木, 01 5 2014) | 1 line Changed paths: D /content/trunk/public/img/material/chapter/hage ------------------------------------------------------------------------ r331661 | user | 2014-05-01 21:15:11 +0900 (木, 01 5 2014) | 1 line Changed paths: A /content/trunk/public/img/material/chapter/hogehoge
うーん。r331662 でADDしてるけど、うまく反映されてない様子。
対処方法
今回の場合は、r331662とr331662で、hogehoge配下のファイルの差分が確認できた(ファイルのあるなし)ので、
本番から対象ファイルをcheckoutしてきて、backupサーバにコミットした。
(バックアップ側のrevision番号を直接インクリメントした形になった)
【読書】アート・オブ・プロジェクトマネージメント 第一章
最近、読書とかほとんどしてこなかったけど、たまには読書。
個人的なつまみ食いなので、
この本が重要だと言っていても、刺さらなかったものは書いてない(´・ω・`)
第一章 プロジェクトマネジメントの簡単な歴史
1.1歴史に学ぶ
プロジェクトの根底にある概念
- 過去の教訓が活かせるものと、そうじゃないものがある
- 作業をよりシンプルなところから見る
- 「シンプル」とは、簡単という意味ではない
要は、「プロジェクトに向き合う」ことが大事。
この言葉こそシンプルだけど、本当に重要な事だと思う。
複雑な事を色々考えて足踏みしていないで、プロジェクトとしっかり向き合おう。
できることから切り分けてプロジェクトを成功へと導いていこう
1.1.1失敗から学ぶ
ふむ。
1.4マイクロソフトにおけるプログラムマネジメントとプロジェクトマネジメント
プロジェクトマネジメントは、
プロジェクトを成功させるということ全力を尽くす
「プロジェクトを成功させるということ全力を尽くすということ」
1.5プロジェクトマネジメントにおけるバランス感覚
適切な状況下で適切な態度をとる
これは、難しい。いつも苦戦しています。
試行錯誤してるから、ただの優柔不断やろうとか気まぐれ野郎と思われていたらどうしようか。。
エゴと非エゴのバランス
- エゴはプロジェクトの推進力になる
- エゴがプロジェクトの障害になる
これも本当にコワイ・・・。
「信念」は持たないといけないけど「拘り」は持っては行けない。
この境い目は!? いつもよくわからなくなって、うまく定義分けできず、この辺はみんなどうしているんだろう。
独裁と委譲のバランス
- 権限の明確化と迅速な対応
- 協力して物事を進めていく
曖昧さの許容と完全性の追求
- プロジェクトの前半において、統制された曖昧さはアイディアを洗い出す
- プロジェクトの後半において、規律と正確さが大事
口頭と文書
- 面と向かうことでのコミュニケーションの効率化
- 規模が大きくなると文書化が大事
複雑さの容認と簡潔さの支持
- 多くのものが複雑さの犠牲になる
- 複雑さを拒絶しすぎて、プロジェクトを失敗させてはならない
焦りと忍耐
- 檄を飛ばす
- 黙ってみまもる
勇気と恐れ
- 勇気を持って、恐れに立ち向かえ
信者と懐疑論者
- 自らの作業に自信をもつこと
- 自らの作業に疑問をもつこと
1.6プレッシャーとプロジェクトの敵
現状維持は成果ではない
成果には変化が必要である
変化にはプレッシャーがつきものだが、
プレッシャーを避けてはいけない
1.6.1プロセスと目標を取り違える
小さな作業をこなすことは、プロセスであって、それはプロジェクトではない
プロジェクトマネジメントは、プロセスや方法論に注力するのではなく、チームに注力するべき
「チームが成果を出すように」
1.7正しい関与の仕方
関与し過ぎてはいけない
リーダーやマネージャーは、周囲にいる人の価値を増幅させる役割
マネージャーは非難を一身に受けるし、隠れる場所もない
信念、自信、自覚の全てが必要
1.7.1あなたの観点からの強み
必要な情報をタイミング良くチームに流す
【node.js入門】 CentOSに入れる
д・)チラッ
最近、犬ブログに必死になって更新をさぼっていた。
node.jsをCentOSに入れたときのメモ
OSのバージョンはこんな感じ
$ cat /etc/issue CentOS release 6.2 (Final)
node.jsのダウンロード
ダウンロードページよりhttp://nodejs.org/download/「Linux Binaries (.tar.gz)」を落としてくる
展開して、適当なところに移動
$cd /tmp $wget http://nodejs.org/dist/v0.10.25/node-v0.10.25-linux-x64.tar.gz $tar -xzvf node-v0.10.25-linux-x64.tar.gz $mv node-v0.10.25-linux-x64 /usr/local/
nodeとnpmコマンドはここにあるっぽいので
/usr/local/node-v0.10.25-linux-x64/bin $ ls node npm
それぞれパスを通して
$ln -s /usr/local/node-v0.10.25-linux-x64/bin/npm /usr/bin/npm $ln -s /usr/local/node-v0.10.25-linux-x64/bin/node /usr/bin/node
確認
$npm -v 1.3.24 $ node --version v0.10.25
でけた
【Homebrew】playframework 1系をインストール
ひさしぶり。
もともとplayの2系が入っていたんだけど、1系もmacに同居させたい需要ができたのでインストールした。
今入ってるのは、play2.1.3
playのダウンロードページより、1系の一番新しいものを入れた
http://www.playframework.com/download
Formulaの作成
$ brew --version 0.9.5 $ brew create http://downloads.typesafe.com/play/1.2.7/play-1.2.7.zip --set-name play1
formulaの編集画面がでるので、こんな感じにした。
playコマンドで2系が実行されるので、1系はplay1で実行できるようにしている
require 'formula' class Play1 < Formula homepage 'http://www.playframework.org/' head 'https://github.com/playframework/play1.git' url 'http://downloads.typesafe.com/play/1.2.7/play-1.2.7.zip' sha1 '436739d9f7cc00567a7e4245413c9c1ebf886797' def install system "./framework/build", "publish-local" if build.head? # remove Windows .bat files rm Dir['*.bat'] rm Dir["#{buildpath}/**/*.bat"] if build.head? libexec.install Dir['*'] bin.install_symlink libexec/'play' => "play1" end end
構文のチェック
$ brew doctor play1 Your system is ready to brew.
大丈夫そう。
インストール
$ brew install play1 ==> Downloading http://downloads.typesafe.com/play/1.2.7/play-1.2.7.zip Already downloaded: /Library/Caches/Homebrew/play1-1.2.7.zip 🍺 /usr/local/Cellar/play1/1.2.7: 3110 files, 98M, built in 4 seconds
確認
$ play1 ~ _ _ ~ _ __ | | __ _ _ _| | ~ | '_ \| |/ _' | || |_| ~ | __/|_|\____|\__ (_) ~ |_| |__/ ~ ~ play! 1.2.7, http://www.playframework.org ~ ~ Usage: play cmd [app_path] [--options] ~ ~ with, new Create a new application ~ run Run the application in the current shell ~ help Show play help ~
おまけ
paginate-head
プロジェクト配下で
play1 dependencies
と打ったら
~ Module not found: /usr/local/Cellar/play1/1.2.7/libexec/modules/paginate-head
っていうエラーがでた。
play install でモジュールインストールして
~ You can now use it by adding it to the dependencies.yml file: ~ ~ require: ~ play -> paginate head
これ対応すればよい
以下ログ
$ play1 install paginate-head ~ _ _ ~ _ __ | | __ _ _ _| | ~ | '_ \| |/ _' | || |_| ~ | __/|_|\____|\__ (_) ~ |_| |__/ ~ ~ play! 1.2.7, http://www.playframework.org ~ ~ Will install paginate-head ~ This module is compatible with: 1.x ~ Do you want to install this version (y/n)? y ~ Installing module paginate-head... ~ ~ Fetching http://www.playframework.org/modules/paginate-head.zip ~ [--------------------------100%-------------------------] 18370.8 KiB/s ~ Unzipping... ~ ~ Module paginate-head is installed! ~ You can now use it by adding it to the dependencies.yml file: ~ ~ require: ~ play -> paginate head