タグ

ブックマーク / blog.honjala.net (123)

  • 本棚と電子書籍 - ほんじゃらねっと

    先日家具屋さんで購入した子ども用の棚が届きました。 図らずも増税前の駆け込み需要に乗っかることになりました。 子どもたちが漫画も含め、読むが増える年齢になってきたので共用できる大きめのものです。棚に自分のお気に入りのが並んでるのを眺めるのは楽しいですからね。その気分を早く味わってもらいたいものです。 私もよくを読む方なので、部屋に棚があります。しかし、これからどんどん増えていくであろう子どもたち用のとはちがい、私の棚のは増えることなく、どんどん減ってきています。 別にが私に厳しいとか、断捨離にはまってるとかではありません。基的に電子書籍を読むようになったのが主な原因です。スマホにKindleを挿れて読んでいます。思えばここ数年は紙のを買っていません。 スマホで電子書籍を読むのがしんどいという人もまわりにいますが、プログラマという仕事でパソコンやスマホで文章を読む

    本棚と電子書籍 - ほんじゃらねっと
  • 娘に読書の楽しさを伝える作戦 - ほんじゃらねっと

  • 心斎橋「味べい」のカツ丼 - ほんじゃらねっと

    ランチは大抵、会社周辺のお店でべます。基的に頼んだものを残すことはないのですが、これまでに何度か「やばい、これ残しちゃうかも...」というピンチに追い込まれたことがあります。 そのうちの1つが、前職で行きつけだった心斎橋のカツ丼と天丼の店「味べい」で訪れました。ここは卵とじが大変おいしくて、中でも天とじ丼を気に入って通ってました。主力のカツ丼もよくべてました。 丼のサイズは並盛りと大盛りがあり、いつもは並盛りを頼んでました。大盛りを見たことはありませんでしたが、並盛りでも十分ボリュームがあり、満足できる量でした。 ある日、とてもおなかが空いていたので、軽い気持ちでカツ丼を大盛で頼んだんです。想像していたのは牛丼チェーンの大盛りです。余裕でべ切れるはずです。 「カツ丼大盛りでーす」 出てきたのは、盛りすぎて丼鉢に入ったボールみたいになってるカツ丼でした。カツ丼ボールです。 そのボール

    心斎橋「味べい」のカツ丼 - ほんじゃらねっと
  • ヘッドバンドはダサいと言われるが、役に立つ - ほんじゃらねっと

    サイクリングマシーン読書を始めたきっかけはこちら。 blog.honjala.net サイクリングマシーン読書を何日か続けてて気づいたのですが、数十分も運動を続けていると、顔に汗がボタボタ流れてきて集中力が奪われます。 わたしはメガネをかけており、汗がメガネのフレームを伝ってレンズに溜まったりすると最悪です(メガネあるある)。一旦読書をやめてタオルで拭くことになります。 これでは快適に読書できない、ということでアマゾンで見つけたスポーツ用のヘアバンドを買って使い始めました。 超快適です。顔に汗がほとんど流れてこなくなりました。いくらでも走れそうです。 しかし、見た目が良くないようで、に 「中年が運動をがんばって始めた感じで超ダサい」 と言われてしまいました。 今まさに中年が運動をがんばって始めた状態なので、既にダサいということになるのでは?と思いましたが、とにかくヘッドバンド姿には許せな

    ヘッドバンドはダサいと言われるが、役に立つ - ほんじゃらねっと
  • サイクリングマシーンは読書好きにとって最高の運動ツール - ほんじゃらねっと

    いくつかのダイエットを試しては飽きてを繰り返してきたわたしですが、ソファでだらだらスマホでラノベを読んでる時に思いつきました。 「小説やラノベを読みながらできる運動なら続くんじゃない?」と。 そして、サイクリングマシーンならに夢中になってても車や人にぶつかったりしないし、コースを考えたりしなくていいし、むしろ夢中になればなるほど運動時間が増えて最高なんじゃない...?と! サイクリングマシーンに思い至ったのは、たまたま近くに月数百円で使えるトレーニングルームがあり、そこにサイクリングマシーンが何台か置いてあったからです。 早速申し込んで試してみました。 サイクリングマシーンに座って、スマホを前面のコントロールパネル付近に立てて、集中を妨げない程度のレベルに負荷を設定して、漕ぎ始めて... 同時に読み始めます。 すぐに汗がボタボタたれてきますが、普通に読書に集中できます。30分走っても、面

    サイクリングマシーンは読書好きにとって最高の運動ツール - ほんじゃらねっと
  • OpenCV.jsでインストール不要な画像ぬりえ化ツールをつくる - ほんじゃらねっと

    OpenCV、インストール難しすぎじゃね? 前回の記事で blog.honjala.net Node.jsでOpenCVを使うことに成功したわけですが、 OpenCVはとにかくインストールでうまくいかないことが多くて、 Macでどうにかうまく動いてもLinuxにインストールしようとすると またエラーでつまづいたりして、うんざりしました。 ImageMagickなんて適当にyum installするだけでインストールできるのに! 乗り換えたろか!と思いつつ、OpenCVはやっぱり使ってみたい。 ブラウザで動くらしいOpenCV.jsなら一度用意してしまえば 環境構築で二度と苦労しなくて済むのでは? ということで今回はOpenCV.jsでの画像処理を試してみました。 docs.opencv.org OpenCV.jsを準備する OpenCV.jsはブラウザ上で動作するので、 Mac上だろうがW

    OpenCV.jsでインストール不要な画像ぬりえ化ツールをつくる - ほんじゃらねっと
  • OpenCV + Node.js で画像からぬりえ用の線画をつくる - ほんじゃらねっと

    画像処理で遊びたいな、と思い立ったので、 以前PythonOpenCVで作成した画像線画化スクリプトを Node.jsで作成しなおしてみました。 blog.honjala.net OpenCVPythonと使うのがやはり一番使いやすいのですが、 JavascriptAPIも提供されているので、 Webページ上のJavascriptやNode.jsからでも利用することができます。 docs.opencv.org しかし試してみるとNode.jsから生でOpenCV.jsを使うのはcanvasを利用することを 前提にしていたりしてなかなか手強く、うまくいかなかったので、 「opencv4nodejs」というライブラリを使うことにしました。 www.npmjs.com こちらはOpenCVの関数をNode.jsからいい感じで使えるようにしてくれていて、 Pythonで書いた処理をNode.

    OpenCV + Node.js で画像からぬりえ用の線画をつくる - ほんじゃらねっと
  • Minecraft (Win10版・スマホ版)建築が楽になる3D画像インポートツールをつくった - ほんじゃらねっと

    以前記事に書いたけど、うちのこどもがマインクラフトにはまっていまして。 blog.honjala.net 一緒に遊んでいて色々建築するのは楽しいのだけど、 もっと手軽にできないものか、とあれこれ試行錯誤した結果、 超楽に建築できる仕組みが出来上がったので、ここで紹介します! MagicaVoxel + 自作変換ツール で実現する建築自動化 この仕組みは、 MagicaVoxel でボクセルデータを作成する 自作の変換ツールでボクセルデータをマイクラブロックデータに変換して配置する という2つの手順で実現します。 詳細の前に今回の仕組みの前提として、 マインクラフトBE(Win10版)とPE(iOS版)でのみ確認済み マインクラフトのワールド設定で「チートの実行」が有効になっている必要がある ユーザー(多分建築時に一番近くにいるユーザー)にオペレーター権限が必要 MagicaVoxelと変換

    Minecraft (Win10版・スマホ版)建築が楽になる3D画像インポートツールをつくった - ほんじゃらねっと
    piro_suke
    piro_suke 2018/12/18
  • 「ポータブルなWebアプリ」というWebプログラマ的に完璧なアプリ配布方法 - ほんじゃらねっと

    先日書いたツールのGUI化に関する記事で blog.honjala.net Electronやcarloを使ったデスクトップアプリ化について紹介したあとで ちょっと考えていた時のこと。 carloのようにUI機能を持たずに インストールされているChromeを使うのがアリならば、 もう思い切ってWebアプリをそのままexe化して配布するのもアリなのでは! という閃きが降りてきた。 exe1つで実行できるWebアプリ、名付けて「ポータブルWebアプリ」。 わざわざ専用のGUIアプリを作るのではなく、 Webアプリとそれを実行するWebサーバをそのまま一緒にexe化して提供し、 操作はブラウザ経由で行なってもらう。 Webプログラマにとってはメリットしかない carloと同じく、UI部分をブラウザが担ってくれるので、exeのサイズも抑えられる。 carloとちがって実行してから別途ブラウザから

    「ポータブルなWebアプリ」というWebプログラマ的に完璧なアプリ配布方法 - ほんじゃらねっと
    piro_suke
    piro_suke 2018/12/01
  • さらなる自動化のために、作成したツールをGUI化する - ほんじゃら堂

    プログラマの仕事は、人が行う作業を代わりに行なってくれるプログラムを書くことであり、それはつまるところ「作業を自動化」することだ。 長くプログラマをやってると忘れちゃうけど、 コマンドプロンプトを開いてコマンドを実行するのは、 プログラマ以外にとってはとてもハードルが高い。 作業を自動化するためのツールをGUI化するメリットについて考えてみた。 後半でNode.jsでのGUI化の方法についても紹介する。 GUI化するとメインの処理とは別で画面の作成や入力処理を実装する必要があり、 単純に開発時の作業が増えるのだけど、CLIと比較してそれだけのメリットがあるのか? まず思いつくことで、一番重要なのは GUI化することで作成したツールを プログラマ以外の人が抵抗なく使えるようになるので、 対象ユーザーがグンと増える、ということ。 自動化ツールを必要としているのはむしろプログラマ以外の人たちであ

    さらなる自動化のために、作成したツールをGUI化する - ほんじゃら堂
    piro_suke
    piro_suke 2018/11/04
  • マインクラフトBE (Win10版)をNode.jsで自動操作する - ほんじゃら堂

    子どもたちがマインクラフト(iOS版)にはまっており、一緒に遊んだりしている。 クリエイティブモードで一緒にわーわー言いながら街や建物を作るのはなかなか楽しい。 楽しいのだけど、 ちまちまブロックを置いていくのはそろそろ飽きてきたので、 ビャーっとブロックを配置したり、 建物を自動生成したり、 自動化してもっと面白いことができないものかと調べてみた。 調べたところ、 自動化できる仕組みがいくつか用意されていた。 functionコマンド 最初に見つけたのが、「function」コマンド。 これはファイルに書いたコマンドのリストを実行するもので、 まさに求めていたものだったのだけど、 残念ながらJava版のみでWindows版は非対応だった。 napoan.com iOS版の Pocket Edition (PE) と一緒に遊ぶには、 Windows版でないといけないらしい。 MakeCod

    マインクラフトBE (Win10版)をNode.jsで自動操作する - ほんじゃら堂
    piro_suke
    piro_suke 2018/09/30
  • Node.jsでSQLServerにWindows認証接続する - ほんじゃら堂

    苦労したのでメモ。 Node.jsでのデータベース操作にはいつもknexを使用していて、 Knex.js - A SQL Query Builder for Javascript knexはSQLServerにも対応しているのだけど、 そこで使用されているmssqlパッケージがWindows認証には対応していないのか、 うまく接続できなかった。 www.npmjs.com このmssqlパッケージで使用されるドライバには デフォルトで使用される「Tedious」と Node.jsの0.12以上で使用可能な「msnodesqlv8」の 2種類があるようで、「Tedious」だとうまく接続できないっぽい。 knexでどうドライバを切り替えるのかが分からなかったのだけど、 単体で「msnodesqlv8」を使用するとうまく接続できた。 www.npmjs.com 使用方法 下記のWikiにドキュ

    Node.jsでSQLServerにWindows認証接続する - ほんじゃら堂
    piro_suke
    piro_suke 2018/09/30
  • 作成した Node.js スクリプトをサーバーレスな AWS Lambda で手軽に定期実行する - ほんじゃら堂

    以前作成した映画情報取得用スクリプトのように blog.honjala.net 定期的に実行したいスクリプトを作成した場合、 そのスクリプトをどこで動かすか、というのが悩みどころになる。 いくつか方法はあるのだけど、 ローカルのPCでタスクスケジューラなりcronなりで動かす方法は 無料だし手軽にできるけど、実行したい時間にPCを起動しておく必要がある。 さくらインターネット等のVPSを借りてcronで動かす方法は 費用はそんなに高くないけど、ファイアウォールの設定等 安心して使える環境を作るまでのハードルが結構高い。 一昔前はそこで頑張ってVPSを立てるか、諦めるかしかなかったのだけど、 今はそんな時のためのサーバーレス(=サーバ管理のいらない)なサービスが使える。 今回は AWSAWS Lambda を使って、 作成したスクリプトを定期実行する環境を作ってみたい。 AWS Lam

    作成した Node.js スクリプトをサーバーレスな AWS Lambda で手軽に定期実行する - ほんじゃら堂
    piro_suke
    piro_suke 2018/09/24
  • 「 Javascript / Node.js で仕事自動化」記事まとめ - ほんじゃらねっと

    Javascript と Node.js を使ってあれこれ自動化する記事が増えてきたので、 目次としてまとめておく。 blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net blog.honjala.net b

    「 Javascript / Node.js で仕事自動化」記事まとめ - ほんじゃらねっと
    piro_suke
    piro_suke 2018/09/16
  • Node.jsでテレビの映画放映情報をWebスクレイピングしてSlackに通知する - ほんじゃらねっと

    最近素晴らしいことに家族内でSlackを使ってやりとりするようになった。 せっかくなので何かボット的なものを作ろう、ということで 昔Clojureで作った、 「映画情報をスクレイピングして通知する」スクリプトのNode.js版を作って、 定期的にSlackに通知するようにしてみたい。 blog.honjala.net 仕様 下記のページで今後1週間のテレビ映画放映予定を掲載してくれているので、 今週TV放映予定の映画 この内容を週2回程度スクレイピングして家族用Slackのgeneralチャンネルに通知する。 あらかじめ家族用Slackに「Bots」Appを追加して、 APIトークンを取得しておき、 generalチャンネルに作成したボットをAppとして追加しておく。 このスクリプトを実行すると、下記のような投稿が追加されるイメージ。 つくる 構成としては、 「メイン部分」「映画情報スクレ

    Node.jsでテレビの映画放映情報をWebスクレイピングしてSlackに通知する - ほんじゃらねっと
    piro_suke
    piro_suke 2018/09/13
  • Windowsでタスクスケジューラを使用せずにnode.jsスクリプトを定期実行する - ほんじゃらねっと

    会社の自分のPC(Windows)で何かを定期的に実行したいときは だいたいPythonなりnode.jsなりでスクリプトを書いて タスクスケジューラに登録しておく。 のだけど、 タスクスケジューラは未ログイン時に実行しようとすると ログインアカウントを登録しておく必要があったり、 パスワードを変更した時に更新を忘れて実行に失敗しまくってたり、 そのログイン失敗のせいで社内ネットワークから閉め出されちゃったり、 色々と困ることがある。 Linuxcrondと同じような仕組みができないか、と探してみたら 「pm2」と「node-cron」の組み合わせで実現できそうだったので、試してみた。 参考情報 こちらの参考ページを読んだらこのあとの内容は読まなくても良いくらいなのだけど、 node.jsで定期的にスクリプトを実行するにはpm2が便利 | 「node-cron」はその名の通りnode.j

    Windowsでタスクスケジューラを使用せずにnode.jsスクリプトを定期実行する - ほんじゃらねっと
    piro_suke
    piro_suke 2018/09/05
  • Vue.js + SVG でブロック崩しゲーム(自動版)を作る - ほんじゃらねっと

    数当てゲーム、マインスイーパーに続き、Vue.jsでこども向けゲームを作る。 もう少し動きのあるゲームが作ってみたいので、 今回はボールが跳ね回るブロック崩しゲームに挑戦する。 これまでに作ったゲームは初期処理で何か答えを生成しておいて、 あとはユーザーのイベントに応じて処理を実行するだけだったのだけど、 ブロック崩しの場合はゲームがスタートしたら終始ボールが 動いている必要があるので、この仕組みから考えてみよう。 完成イメージ 当はユーザーが操作するバーを作って、 ちゃんとしたブロック崩しにしたかったのだけど、 ブロックを消せるようになった時点でちょっと飽きてしまったので、 ボールがブロックを消してくれるのをただ待つだけの 「自動」ブロック崩しになってしまった。 ちゃんとしたやつはまた気持ちが盛り上がってから作る。 ソースはこちら: github.com こちらで遊べます...というか

    Vue.js + SVG でブロック崩しゲーム(自動版)を作る - ほんじゃらねっと
    piro_suke
    piro_suke 2018/08/27
  • node.jsでWebスクレイピングして取得データを保存する - ほんじゃらねっと

    node.jsでデータ収集のためのWebスクレイピングを行う。 Webスクレイピングの流れというのはだいたい決まっていて、 WebページにアクセスしてHTMLを取得する 取得したHTMLの中から必要なデータを抽出する 抽出したデータを保存する の3段階となる。 通常、Webスクレイピングが必要となるのは データ取得用のAPIが提供されていない 必要なデータが1ページに収まらず多くのページにまたがっており、手作業でコピペしていくのが難しい 場合で、そのうちWebスクレイピングが可能なのは 対象の各ページが同じフォーマットになっており、パターン化された処理で必要なデータを取得できる 場合となる。 例えば「ページングされた検索結果画面」とか 「同じフォーマットでHTMLが書かれたたくさんの商品詳細画面」 なんかがスクレイピングでデータ取得しやすい。 前提として、 Webスクレイピングは手作業 で

    node.jsでWebスクレイピングして取得データを保存する - ほんじゃらねっと
    piro_suke
    piro_suke 2018/08/17
  • node.jsでリモートのLinux環境やデータベースの操作を自動化する - ほんじゃらねっと

    ぼくが仕事Linuxサーバ環境に接続して行う操作というのはだいたい決まっていて、 コマンドでサーバの状態を確認 ログをファイル出力してダウンロード サービスの設定変更と再起動 SSHトンネル経由でDBアクセス のうちどれかを行うことが多い。 基は手作業だったり、シェルスクリプトを作って 実行したりする形で対応できるものなのだけど、 結構めんどくさいので、 今回はnode.jsでどこまで自動化できるかを試してみたい。 事前準備 ローカルのWindowsマシンでnode.jsプログラムを実行して、 プログラム経由でLinux環境に接続して色々操作することを 想定しているので、ローカルにnode.js環境をインストールしておく。 この記事に載せてるサンプルは Typescriptで書いているけど、だいたいJavascriptとしても動くと思う。 SSHでLinux環境に接続する まずはSSH

    node.jsでリモートのLinux環境やデータベースの操作を自動化する - ほんじゃらねっと
    piro_suke
    piro_suke 2018/08/09
  • node.jsがやたら非同期化しようとするのをasync/awaitでどうにか同期化する - ほんじゃらねっと

    Node.jsは入出力関連の処理を非同期で行ないます。入出力イベントが非同期で実行されることで、遅い入出力処理の合間に他の処理を挟んで効率的にプログラムを実行することができます。この特長を活かすため、ライブラリに含まれる関数も非同期的に実行されるものがとても多いです。 簡単に処理を非同期化できるようになっているというのはうまく活用できれば大変ありがたいもので、node.jsの最大の特長だと言えます。 ところがただ「簡単に導入できて」「実行速度が速くて」「Javascriptで書ける」ツールとして手軽にnode.jsを使いたい、という場合にこの非同期至上主義なところが邪魔をすることがあります。 ちょっとした処理を行うコマンドラインスクリプトをサクッと作りたいだけなのに、思ったような順番で処理が実行されなかったり、コールバック地獄になったり。 同期的に動かそうとするだけでなぜこんなに分かりにく

    node.jsがやたら非同期化しようとするのをasync/awaitでどうにか同期化する - ほんじゃらねっと
    piro_suke
    piro_suke 2018/08/08