unhurried

コンピュータ関連ネタがほとんど、ときどき趣味も…

How to cope with Callback Hell #3 aa

This time I have researched aa which was introduced in Qiita (Japanese website). aa is another library like co and utilize Generator mechanizm to make it easier to wirite parallel ans serial flows. aa has some advantages to co, that is thu…

Heroku Free DynoのSleepを防止する

Herokuでは月に1000時間の稼働稼働枠がもらえますが、無料プランでは30分アプリにアクセスがないとアプリがSleep状態になってしまいます。New Relicアドオンを使って定期的にリクエストを送信することでアプリがSleep状態になることを防げますので、設定手順…

Procedure to Print with Google Cloud Print API

Recently printers connected to the Internet became common. As some of my web services required printing in the background process, I have researched Google Cloud Print API as one of printing measures. (0) Get a client ID and a client secre…

MongoDB Node.js Driver Connection Management

Points Call MongoClient.connect only once, and reuse the instance. Connection management is done by the driver and the number of connections can be specified in the option of MongoClient.connect. Sample Code db.js // Keep the mongoDB conne…

アメリカで購入できる胃薬

胃が弱いのでよく胃薬にお世話になります。 アメリカに来た当初は何を買えばよいかわからなかったので、定番を調べてみました。 Tums 気軽に飲める制酸剤。カルシウムの補給用途にも使える。 Zantac H2ブロッカーという胃酸分泌を抑制する薬。 日本の薬局で…

JAX-RSアプリをHerokuにデプロイする

Javaで実装したREST APIをHerokuにデプロイするときに少し迷ったため、今後のためにひな形としてサンプルアプリを作成しました。 github.com ポイント REST APIの実装にはJAX-RS(Java EE)のリファレンス実装であるJerseyを利用する。 Herokuのドキュメント…

MongoDB Node.JS Driver コネクション管理

Java + MySQLではどのフレームワークにも当たり前にあるコネクションプールのようなコネクション管理機能ですが、Node.js + MongoDBではどのように実装するのが常套手段なのかを調べました。 ポイント MongoClient.connectは1度のみ呼び出し、databaseインス…

Callback地獄対策 (3) aa generator

今回は、Qiitaで人気のあるCallback地獄対策の記事で紹介されているaaについて調べてみました。 aaもcoと同様にGeneratorの仕組みを利用して簡単に並列・直列処理フローを記述できるようにするライブラリです。 aaはcoと比べるとthunkify/promisifyが同じラ…

シリコンバレー周辺のお土産

最近にそれなりの量のお土産を買う機会があったので、お土産に良さそうなものを調べてみました。 探す条件 多人数に配れるように個包装されている食べ物や飲み物 シリコンバレー周辺で購入できるもの カリフォルニア、アメリカ、もしくは北米地域発祥で日本…

How to cope with Callback Hell #2 co generator

The second countermeasure of Callback Hell is using co. co is a library which utilizes Generator mechanism and make it easy to write serial and parallel flows. const co = require('co'); const thunkify = require('thunkify') // a function wh…

Callback地獄対策 (2) co generator

Callback地獄対策の2つ目はcoについてまとめました。 coはGeneratorの仕組みを利用して簡単に並列・直列処理フローを記述できるようにするライブラリです。 const co = require('co'); const thunkify = require('thunkify') // callbackを引数にとる一般的…

How to cope with Callback Hell #1 Promise

We often fall into what is called "Callback Hell" when we write some asynchronous processes with Node.js, which is a problem the hierarchy of the code becomes too deep. There are many countermeasures and it looks a little messy, so I will …

Callback地獄対策 (1) Promise

NodeJSで非同期処理を書いていくと必ずはまるのが、Callbackで階層が深くなりすぎるいわゆるCallback地獄です。対策を調べてみたところ色々ありすぎて混乱してきてしまったので、何回かに分けて整理してみようと思います。 今回は、非同期処理を行う関数でCa…

Forever Stampでアメリカから国際郵便を送る

アメリカから国際郵便(USPS Frist-Class Mail Int'l)を送るときはGlobal Forever Stampを1枚貼れば良いのですが、普段国内郵便しか使わない人にとっては、Global Forever Stampが手元にないことが多いと思います。調べてみると、国内郵便用のForever Stamp…

Google Cloud Print APIを使った印刷手順

最近はどのプリンターもインターネットに繫がっているのが当たり前になって来ています。Webサービスを作るときにバックグラウンドでプリンターに印刷ジョブを投げれたらいいなというケースがいくつかあったので、その手段の一つとしてGoogle Cloud Print API…

成田・サンフランシスコ間航空機の荷物制限

成田からアメリカへのフライトの際にできる限り多くの物を持っていこうと、成田・サンフランシスコ間を就航している航空会社の荷物制限を調べていました。どなたかの参考になるかもしれないので、載せておきます。 アメリカン航空 手荷物の制限:23kg/個、15…

H2O Wireless Voice Mail設定

北米に来てから日本で購入・アクティベートしたH2O Wirelessを活用していますが、しばらくVoice Mailの設定ができないでいました。というのも、私の場合はKDDI Mobileのマニュアルの方法では設定ができなかったのです。 色々と調べてみた結果、以下の手順で…

日本国内で購入できるアメリカ用SIM

日本国内で購入できる、アメリカ国内通信・通話SIMを調べました。(現地でも調達できるのですが、入国・帰国時の契約の手間を少なくするため) 私の場合は、日本でのアクティベーションができること、日本固定電話通話無料が決めてでH2O Wirelessを契約しま…

Vim:ファイルを関連付けられたプログラムで開く

簡単なレポートはWordなどを使わずテキスト形式でまとめてしまうことが多いです。レポートを書いているときによくあるのが、テキストに画像などのファイルを埋め込みたい(ファイルへのリンクを貼りたい)というものです。調べてみたところカーソル下のファ…

ドル決済できるクレジットカード

アメリカは少額の支払いにもカードを利用するクレジットカード社会という話をよく聞きます。日本で発行したクレジットカードもたいてい利用できるようですが、赴任等で長期滞在する場合は為替差損や手数料が気になるところです。 そこで、アメリカのクレジッ…

Winows 10 で最初に設定したこと

3年ほど使っていたノードPCですが、いよいよバッテリーがへたってきたので、新しく買い換えました。まっさらなWindows 10 環境からセットアップし直したので、初期化時のために最初に設定したことをまとめておきました。 不要なプリインストールプログラムを…

アメリカで使用できるスマートフォン

海外赴任が決まり、アメリカに1年ほど滞在することになりました。 色々と持っていくものを整理していますが、現在使っているスマートフォンがかなり年季が入っているので、 買い替えるついでに現地の通信キャリアにも対応したものにしようと思い、色々と調べ…

AngularJSでCSVファイルを出力する

管理画面などでよく見るCSVエクスポート機能ですが、たいていはサーバーサイドでCSVファイルを生成してブラウザにダウンロードさせる、という方法で実装されていると思います。 今回はクライアントサイドで編集したデータをダウンロードする必要があったため…

MVNOでの転送電話サービス

つい最近DMM mobileにMNPで乗りかえました。が、届いたSIMが翌日に読み取り不良になるという問題が起きました。すぐにSIM再発行をしたものの、到着まで電話を受け取れないのは痛いところです。 調べてみたところ、DMM mobileをはじめMVNO各社も転送電話サー…

なぜ、あなたの仕事は終わらないのか

元マイクロソフトの中島聡さんの著書「なぜ、あなたの仕事は終わらないのか」を読みました。 なぜ、あなたの仕事は終わらないのか スピードは最強の武器である作者: 中島聡出版社/メーカー: 文響社発売日: 2016/06/01メディア: 単行本(ソフトカバー)この商…

携帯各社のSIMロック解除対応まとめ

近々に海外へ行く予定があるので、今使っているスマホに海外SIMを差して使えるか調べていました。 ついでにその他キャリアについても調べたので、簡単にまとめてみます。 docomo 2011年4月-2015年4月発売機種(iPhone以外) 店頭にて3000円で解除できる 2015…

angular-datatablesの使い方

angular-datatablesの使い方(導入まで)をまとめました。 依存ライブラリをインストールする。(手動追加する場合) jQuery、DataTables、AngularJS、angular-datatablesをhtmlからリンクする。 ソート方向を表すアイコンを表示するためにDataTablesのimage…

Waltzing With Bears

In this post, I will introduce "Waltzing with Bears" (Tom DeMarco and Timothy Lister) briefly. Summary Valuable projects always have uncertainty (risks). Derivery date and cost tend to be estimated by summing up only planned tasks at the b…

アップグレード版Windows10のクリーンインストール

いくつかのWebサイトで紹介されていたので、情報を整理してみました。 まとめ インストールメディア(DVD、USBメモリ)はMicrosoftが配布しているツールで作成できる。 https://www.microsoft.com/ja-jp/software-download/windows10 一度アップグレードを実…

The Mythical Man-Month

"The Mythical Man-Month" is a famous book that may be known to any system engineers. I read this book when I was a university student, but I could realize what is written in it when I read it over again after some experience of system deve…