darudaru

だるだるしてるエンジニア

GoogleAnalyticsから1週間のPV数を取得するCLIを作ってみた

このブログのPV数を確認するときに、はてなのアクセス解析を開いたり、Google Analyticsの画面を確認したりするのですが、いちいちブラウザ立ち上げて画面開いてーという動作がめんどくさいなと感じてきたので、ターミナルからPV数を確認できるCLIツールを作…

学んだ記録をGithubにまとめ始めました

たまたまネットで見かけた「til」というGithubのリポジトリ。 tilとは「Today I Learned.」の略で、日々学んだことをまとめたリポジトリの名前に使われてたりする。2016年くらいに流行ったらしい。 Githubのいろんなtilリポジトリを見てみたのですが、使い方…

Node.jsでちゃんとしたCLIアプリケーションを作るまで

最近、Node.jsにハマってます。勉強のために、と小さいCLIアプリケーションをちまちま作っているのですが、最近やっとちゃんとしたCLIアプリケーションが作れるようになった・・・と思います。 「ちゃんとした」とは、ただ単に動くアプリケーションという意…

ただただ褒めてくれるCLIツールを作った

仕事中に疲れたとき、しんどくなったとき、ターミナルにtsuraiとかshindoiとか弱音を打ち込むことがあります。もちろんそんなコマンドはないので、command not foundとエラーがでて終わりです。 要はなんとなくしんどい気持ちを吐き出したいだけなのですが、…

FirebaseでNode.jsのWebアプリを動かす

express-generatorで作ったNode.jsのWebアプリケーションをFirebaseで動かすまでの手順の紹介です。 事前準備 Webアプリの初期化 Webアプリのプログラムの追加 WebアプリをFirebase用に変更 動作確認 事前準備 Firebaseのアカウント作成 Firebase CLIのイン…

Gitのコミットメッセージをうまく書けない人たちへ

Git

わたしです。 Gitのコミットメッセージを書くときに、修正内容を簡潔にまとめられない。まとめてみても、「いや、それプログラム見たらわかることだから」という書き方しかできない。ということに悩んでいました。 そもそもGitのコミットメッセージのルール…

Google Homeを遊びたおす会に行ってきました

Google Homeを遊びたおす会に行ってきました。 kotodama.connpass.com 少し前からスマートスピーカーに興味があり、ちょうど面白そうな勉強会を見つけたので行ってきました。当日の参加者は約300人!大盛況! Google Homeの基礎的な知識から実践的な話まで、…

レガシーソフトウェア改善ガイドを読んだ

(グラレコやってみました) 「レガシーソフトウェア改善ガイド」を読んだ。青いレガシーコード改善ガイドと似ているけれど、内容は別物。 レガシーソフトウェア改善ガイド作者: クリス・バーチャル出版社/メーカー: 翔泳社発売日: 2016/11/14メディア: Kindle…

gulpでPHPUnitを自動実行させる

普段、vimを使ってPHPで開発をしているのですが、開発中はgulpを使ってPHPUnitを自動実行させています。そのテストコード実行環境をご紹介。 gulpについては前にこちらの記事でまとめてますのでご参考までに。 blog.darudaru-life.com 準備 gulpと、PHPUnit…

Developers Summit 2018 1日目に参加してきました

event.shoeisha.jp 毎年恒例、Developers Summit 2018に参加してきました。去年はインフルにかかってしまい行けなかったのですが、今年は無事参加できてよかったです。1日目の午後から参加させていただきました。 各セッションの感想 人生20年説・好きな事と…

初めてのvimプラグイン開発

vim

vimrcの整理をしていたら、vimのプラグインを作ってみたくなりました。 ちなみに開発中のvimのプラグインは適当なディレクトリに設置しておいて、.vimrcのruntimepathにディレクトリパスを追加して動作確認してました。 まずプラグインの名前を決める vimの…

vimrcの見直し

vim

新年を迎えたので、新たな気持ちでと思いvimrcの見直しを行いました。ほんとは年末のうちにvimrcの大掃除として終わらせたかったけど、終わらなかった。 やったこと vimのディレクトリ構成の変更 今まで~/.vim配下にvimの設定ファイルを設置していましたが、…

サクッとDockerでCodeception

CodeceptionのAcceptance TestsをDockerで動かします。ドライバはSelenium Webdriverを使います。あ、メリークリスマス! Dockerの公式サイトに「Each container should have only one concern」と書かれているように、Dockerは1コンテナにつき1サービスを割…

初めてのDocker

「Docker For Mac」をインストールしました。Dockerに慣れたい。 Docker For Mac | Docker Dockerがインストールできてるか確認 Dockerのバージョンを確認するコマンドを叩いてみる。 $ docker --version Docker version 17.09.0-ce, build afdb6d4 $ docker…

CodeceptionでSelenium WebDriverを使う

CodeceptionでSelenium WebDriverを使った話。 Codeceptionの導入までは前に書きましたのでそちらを参考にしていただければと。 blog.darudaru-life.com 準備する Javaはあらかじめインスールしておくこと。 Selenium Standalone Serverをダウンロードする …

PHPのCodeceptionでE2Eテスト

PHPでE2Eテストが作れるCodeceptionが簡単に使えてとても良かったという話。 Codeception インストール composerでインストール Codeceptionをインストールしたいディレクトリ配下でcomposerでインストールを行う。 composer require "codeception/codecepti…

JavaScriptだけで作るチャットボット「BotUI」

JavaScriptだけで作れるbotフレームワーク「BotUI」で遊んでみた。 botui.org インストール npmのインストール npm install botui --save --save-exact 遊ぶ html BotUIのcssとjsを読み込む。CDNのパスを埋め込むだけでいいです。 botを表示したい位置に<bot-ui>タグ</bot-ui>…

初めてのElectron

github.com Electronを触ってみた。 インストール npm install electron --save-dev --save-exact とりあえず動かしてみる すぐに動かせるelectron-quick-startリポジトリが用意されているので、そちらを使います。 git clone https://github.com/electron/e…

よりそひ守り

乃木神社に参拝してきました。 乃木坂駅から出口でてすぐだった。出口でて左向いたらもう神社だった。 お目当はこれ。よりそひ守り。 友達が最近結婚したので、結婚祝いのプレゼントとして買いました。 数に限りがある・・と事前に乃木神社のサイトに書いて…

Preztoでプロンプトを可愛くする

可愛いプロンプトに憧れてPreztoを使い始めました。 github.com インストール リポジトリをcloneする git clone --recursive https://github.com/sorin-ionescu/prezto.git "${ZDOTDIR:-$HOME}/.zprezto" zshの設定ファイルを作る setopt EXTENDED_GLOB for …

真夏の伊勢神宮

伊勢神宮に行ってきました。 東京と違って綺麗な青空!ものすごく暑かったです。 鳥居をくぐり。 五十鈴川を横切り、と思ったら川がすごく綺麗だったので寄り道。 名物の伊勢うどんももちろん食べて来ました。 450円。安い。 おかげ横丁で食べ歩きもして来ま…

夏の旬のくだもの

最近スーパーでよく桃を見るので、買って家で食べてます。今が旬の桃。 ちょっと柔らかめの桃の皮を手で向いて、切って食べる。種の周りに残った果肉はかぶりついて食べる。 桃食べると夏っていう感じがする。 学生の頃、フルーツは高くてなかなか手が出せな…

proxy経由でcomposerを使う

PHP

なかなかproxyを突破できずハマりまくった。 proxyを突破するためには .bashrcに環境変数を追加する HTTP_PROXY=http://proxy-host:proxy-port/ HTTPS_PROXY=http://proxy-host:proxy-port/ 追加したら、composerが動くかチェックする。 composer diag エラ…

powerlineのフォントパッチをあてる

vim

フォントパッチを当てる前のわたしのvimのステータスライン。 面倒で手を出していなかったpowerlineのフォントパッチを当ててlightlineのvimのステータスをかっこよくすることに。 lightlineをインストールしておく GitHub - itchyny/lightline.vim: A light…

長すぎるメソッド

新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)を引き続き読んでます。 新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)作者: Martin Fowler,児玉公信,友野晶夫,平澤章,梅澤真史出…

コードの不吉な臭い

新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)を読んでます。 新装版 リファクタリング―既存のコードを安全に改善する― (OBJECT TECHNOLOGY SERIES)作者: Martin Fowler,児玉公信,友野晶夫,平澤章,梅澤真史出版社/メー…

日帰りで箱根へ

日帰りで箱根に行ってきました。 電車の中で日帰り温泉でググりながら目的地を決めて、ロマンスカーの特急券をネットで買い、行き当たりばったりの日帰り旅行へ。 箱根、歩いてるだけで癒された。 温泉は「天成園」に行ってきました。 11時ぐらいに到着して…

ログから操作できるtigがいい

Git

tigを最近使い始めました。Gitの操作が便利になるツールです。 インストール brew install tig GitHub - jonas/tig: Text-mode interface for git 使い方 公式のマニュアルはこちら。 Manual · Tig - Text-mode interface for Git tigとターミナルでうつと、…

DateTimeImmutableを使ったらどれくらい遅くなるのか

PHP

DateTimeImmutableのformat()を頻繁に使っていたら、コードレビューで「速度が気になる」と指摘を受けたので計測してみました。 先に結果 やっぱりDateTimeImmutableの関数の使用回数を減らしたほうが速い 計測 DateTimeImmutableのformat()で年月日を毎回取…

gulpを学ぶ

PHPerにもgulp便利だって聞いた。 gulp gulp.js タスクを自動化してくれるツール。「がるぷ」と呼びます。 gulpでできること ファイルをコピーしたりリネームしたり、画像圧縮したり、ファイル操作を自動化できる ファイルの変更を検知して何かできる Gettin…