2016-02-01から1ヶ月間の記事一覧
js-yamlをつかうと、nodejsでもYAMLを使うことができます。 結果はJSらしくjsonに格納されるので、普段の感覚で使えます。 実際のところ 単純に試すだけなら、以下のオンラインデモがあるのでらくらく。 nodeca.github.io 導入 $ npm i -g js-yaml スクリプ…
今年も桑沢デザイン研究所の卒業生作品展に行ってきました。去年は知り合いのデザイナーさんに誘われて……でしたが、今年は自発的に 写真 商品パッケージ 今年も凄い商品パッケージ系 そのままお店に出しても余裕で通じそうな素敵な外装 イラスト 絵も凄い Pi…
当ブログはここ1年半ほど一日一個以上のペースで記事をアップロードし、 この記事付けでブログ日数が1000日目(575日連続)になりました。 途中、 台湾旅行で時差を考慮せず爆死 年度末納品で力尽きて寝過ごし というポカがあったもの、2日に2本の…
チームのことだけ、考えた。―――サイボウズはどのようにして「100人100通り」の働き方ができる会社になったか作者: 青野慶久,疋田千里出版社/メーカー: ダイヤモンド社発売日: 2015/12/18メディア: 単行本(ソフトカバー)この商品を含むブログ (1件) を見る…
以前の記事でnodejsでmarkdownを使う"marked"を紹介しました。 今回は少し突っ込んで、既存のwikiタグの挙動を変更する方法を紹介します。 実際のところ 見出しのタグについて、挙動をgithubっぽく変更する場合を想定します。 標準的headingメソッドに定義さ…
今回乗ったのは、さるびあ丸 一晩かけて大島に向かいます。 船内様子 なんだか、中堅ビジネスホテルみたいな階段やロビー が……一応ベッドがある特二等は まるで「青年の家」か「ユースホステル」 船らしく? 固定具が レストランから、喫煙所の椅子まで何で…
公的情報とfingerコマンドの合わせ技で、CLI上に時間ごと天気図(気温、雨量、風向)を表示する事ができます。Awesome: The Norwegian Meteorological Institute provides a CLI for weather reports.$ finger <city>@graph.no#fb pic.twitter.com/879CWw6m53— İhs</city>…
Wikiページでお馴染み、markdown記法。 情報音痴でも、markdownなら何とか扱えるって人は割りと多いです。 そういった方々に合わせたり、既存の資源を活かしたい場合は"marked"ライブラリ活用は一考価値ありかも。 実際のところ 導入 $ npm i -g markedCLIツ…
nodeのModuleはrequireで呼び出す事ができます。 実際のところ module.exportsに連想配列を渡してあげるのが基本です。 module.exports = { next: (val) => val + 1, version: '0.01'}; 実行すると、こんな感じ const hoge = require('./module.js') hoge.ne…
らくらくパス付きページの代表格といえば、ベーシック認証。 全体に適用するだけなら、以前書いた記事の通りです。 shuzo-kino.hateblo.jp今回は特定のURLだけベーシック認証ページを実装してみます。 実際のところ 導入 いつもの通り、npm。 $ npm i --save…
「SQLは使いたいけど、身内用だから軽いのでいい!」て場合はSQLiteですね。 軽いし、RasberryPiみたいなのに突っ込むのもそれ程苦労しません。 今回は、SQLiteをnode.jsで動かす方法を扱います。 実際のところ 導入 あらかじめsqlite3の環境を整えたうえで…
「国際PB・OEM開発展 2016」に行ってきました。 見てきたもの 今回はやたら撮影の要件が厳しかったので……写真は少ないです 車に載るフォークリフト「INNOLIFT」 Innoliftはハイエースやキャラバンといったバンタイプの小型商用車に荷物を積み込む際に、より…
express4でリダイレクトするには、レスポンスオブジェクトのredirectメソッドを使います。 実際のところ 外部ページに飛ばす。 外部のページに飛ばしたいだけなら、URLを指定するだけ。 res.redirect('https://duckduckgo.com/'); パスの遷移について 同一サ…
express4のアプリでも、ダウンロード機能を実装できます。 集計した結果を利用ユーザに渡すだとか、内製ツールでは割りと使いそうな処理ですね。 実際のところ 以前書いたapp.jsの'/user/:id/:page'にアクセスした時、spawn.jsをダウンロードさせる場合を想…
child_processをつかうと、node.jsのアプリでもシェルコマンドを使う事ができます。 裏で画像処理したりとか、ローカルにおいたファイルを都度参照するときには便利ですね。 実際のところ コマンドを実行したディレクトリで"ls -lh"を実行するケースを考えま…
expressアプリを作っていくと、そのうち構造が地獄めいてきます。 そうなると、どこ弄っているか分からなくなる事、結構ありますよね。 あるいは、単純なルートのタイポでエラー吐いて、解析に30分かかったりとか。 こういう時は、app.route(path)でパスの…
express4において、ミドルウェア上のapp.paramの条件が複数回一致する場合、都度実行されます。 実際のところ ミドルウェアの学習用に書いたスクリプトは以下の通り。 "$HOME/:id/:page"てなページにアクセスだけする想定です。 var express = require('expr…
shuzo-kino.hateblo.jp 年初にLotYで中国語をやると宣言しましたが、目標があまりにボヤっとしているので定量的目標を決めようと思い立ちました。 色々あるみたいですが、今回は「ヨーロッパ言語共通参照枠 - Wikipedia」(CEF)という、言語の学習到達度を判…
expessでリクエストが来た際の処理を追加する事ができます。 postが来たら、その内容に応じた処理をするとか、GETの処理前にユーザの情報を取得するとか。 実際のところ リクエストを発行するごとに、 コンソールにリクエストを発行した時間を表示 リクエス…
2016年2月10日〜12日に開催されている、Food Table in Japan 2016に行ってきました。 名前の通り、飲食系に関わる展示会で「美味いもん」だの「POSシステム」だの「オーガニック」だの混沌としていました。 会場の風景 全体は撮影禁止だったので、…
express4でIPアドレスでの接続制限をかける事ができます。 自社鯖内の使用に限定したい場合などに有効です。 実際のところ 同一サブネット内での適用をする場合、'loopback'を指定してあげるだけでOK app.set('trust proxy', 'loopback') 特定のアドレスを設…
あまりに久々すぎて完全にやり方を忘れてたのでメモ 実際のところ 単純に、トップページにjadeをレンダリングした内容を表示したいだけなら、以下の通りです。app.js var express = require('express'); var app = express(); app.use('/data', express.stat…
express4でも、404ページを出す事ができます。 というか、statusが指定できるので503だの何だの設定されてる奴は一通り行ける感じです 実際のところ 404コードを吐いた場合に単にテキストを出すだけなら、以下の通り。 app.use(function(req, res, next) { r…
expressの機能の一つである、express#staticを使うことで、静的ファイルを表示させる事ができます。 実際のところ dataディレクトリにある画像を表示させるスクリプト例は以下の通り。 所属ファイルを一々書く必要はありません。 // ./app.js var express = …
自慢じゃないですが、私は下戸です。 体調にもよりますが、缶ビール二缶で耳が聞こえなくなるレベルです。そんな私なので、基本飲み会終了時は目眩と頭痛に苛まれているわけです。 特にひどいと、頭痛と関節痛と寒気で全く寝付けないという事態が発生したり…
Seymour Papert氏はプログラミング言語LOGOの開発者としても知られる、世界的数学者です。 LOGOはLEGOマインドストームでも採用された言語なので、ご存知の方も多いかもしれませんね。氏は他にも、教育者としての面も知られています。 以下の論文は、従来の…
JSONな文字列から新しいJSON型を生成する場合、 JSON#parseをつかえばいけます。 この際、関数を突っ込んであげることで元の文字列から少し違うJSON型を生成することもできます。 実際のところ JSON.parse('{"1": 1, "2": 2, "3": 3}', function(k, v) { if(…
日本語などのURIは%AA……みたいな感じで英数字と記号に置き換わります。 この辺りをよろしくやるのが、String#encodeURIとString#decodeURI()です。 実際のところ エンコード 文字列を記号列に encodeURI('メインページ') //> '%E3%83%A1%E3%82%A4%E3%83%B3%E…
String#trim()は文字列の前後にくっついている空白を消すメソッドです。 空白以外にも、改行コードも消してくれます。 純粋に空白を消すだけなら、別のメソッドを使ったほうが良いでしょう。 実際の所 改行コードやタブ、空白を含んだ文字列から、それらを消…
shuzo-kino.hateblo.jp の続きです。 色情報は自分で決めた変数名に格納する事ができます。 反映はsetThemeメソッドにて行います。 実際のところ 白黒環境とカラー環境で適用する場合を考えます。 簡単のため、切り替えはflag変数でやる事にします。 var col…