人間性について考えてみる

書いてたらマネジメント寄りのポエムになりました。 アジャイル開発のひとつであるエクストリーム・プログラミングには価値・原則・プラクティスというものがあります。 この原則1として、一番最初に挙げられているのが「人間性」というものです。 XP本曰く …

MetabaseAPIでGoogle認証をするまで

php

Metabaseに登録されているネイティブクエリを全件取得したかった事案がありました。 MetabaseAPIなるものがあるらしいので、それを使ってみました。 APIを使用するためにはログインが必要です。ログインのAPIは以下のようになっているのですが・・・ POST /a…

Laravelの環境構築が一瞬で終わった

Laravelの環境構築をしようとしたら、一瞬で終わって感動したという感想メモです。 公式サイトに書いてあること以上のことは出ません。 環境構築手順 今までは、Laravelの環境構築のために、 PHPを入れる Laravelコマンドを入れる Laravelをインストールする…

アジャイルと設計

仰々しいタイトルにしてしまった・・・ アジャイルな開発とウォーターフォールな開発 アジャイルな開発とウォーターフォールな開発を眺めてみます。 まずは、ウォーターフォールな開発です。 ウォーターフォールな開発では、設計→実装→テストをすべて一度に…

良いコミットの積み方

git

人間は書くことよりも読むことのほうが多い。 つまり、「読みやすい > 書きやすい」ということ。 コミットログはレビュー時に参照されます。 つまり、良いコミットの積み方をすればレビュー時に読みやすくなり、チームの生産性が上がります。 逆に、悪いコ…

「オブジェクト指向入門」という本を4章まで読んだよ

オブジェクト指向がわからないマンなので、「オブジェクト指向入門」という本を読んでます。 www.shoeisha.co.jp 800ページ以上あるうちの100ページちょいしか読んでないんですけど、忘れないうちに気になったことや面白かったことをまとめたいと思います。 …

Mockeryでのモックの作り方を調べてみた

とある方から、「なんで静的メソッドはモックできないんですか?」ときかれたときに、「そういえば、Mockがどういう原理で動いているかいまいち知らないなー」と思ったので、モックがどのように作られているのかを調べてみました。 僕は普段はMockeryを使用…

php-fpmのアクセスログにリクエストされたURIを書き込む

php

簡単なTips程度の話です。 結論だけ見たい人は結果の見出しへ 問題 私はよくnginx+php-fpmの構成で、Laravelを使います。 その際に、php-fpm側でもアクセスログを出しているのですが、デフォルトの設定だと以下のようになります。 172.18.0.7 - 31/Jul/2020:…

gitの習慣

git

gitの話です。 突然ですけど、コンフリクトって怖いですよね。 コンフリクトの解消時にバグが入りがちですし、地味に面倒ですし。 最近気づいたのですが、「コンフリクト怖い」と言っている人ほど、コンフリクトが発生しやすく、対応が難しくなる方法を採用…

JetBrains Academy を試してみた

なんか広告記事みたいになってしまった・・・ JetBrains Academy とは www.jetbrains.com JetBrains Academyは、JetBrains社の提供するオンライン学習サービスです。progateと同じような感じ。 JetBrainsはAndroid studioのベースになっているIDEのIntelliJ…

ルートによってグローバルスコープを適用する

グローバルスコープまわりでハマっていて、PHPユーザーズSlackの皆さんに色々と助けていただきました。ありがとうございます。 多くの知見を得たので、ここにまとめておきます。 例題 Laravelでブログを作成します。 ここでの重要な要件は以下です。 記事は…

なぜエンジニアは長時間労働してはいけないのか

主語が大きすぎるタイトルですが、今の自分の考えをまとめておきたく、記事を投稿します。 もしかしたら、将来は全然真逆のことを考えているかもしれません。 また、ここでの「エンジニア」はシステムエンジニア、とりわけアプリケーションエンジニアを指し…

「正しいものを正しくつくる」を読んだ感想

「正しいものを正しくつくる」という本を読みました。 その感想をつらつらと書いていきます。 誰が読むと良いか この本を読んで、一番知識を付けられる人は、 「アジャイル開発は何となく知っている。仮説検証サイクルも何となく知っている。」 という人かな…

自動テストの2歩目

これは2/3 タピオカLT4杯目、2/26 第145回PHP勉強会@東京で発表した内容です。 最初に 突然ですが、自動テストって難しくないですか? というのも、だいたいのユニットテストのサイトでは

PHPerKaigi2020に参加して得た知見

phperkaigi.jp PHPerKaigi2020に参加してきました。 一般参加ではなくスタッフとして参加したのでトークはきいてなく*1、スタッフとしての「PHPerKaigiの裏側!!」みたいなのも書かないので、あまりブログに書く内容がないのです・・・ そんな中で得た知見…

ノベルティマニアから見たPHPカンファレンス2019

PHPカンファレンスに行ってきました。 すでに色々な方がイベントやセッションについて記事を書いているので、僕はノベルティについて書こうと思います。 ノベルティがもらえるポイント PHPカンファレンスではノベルティがもらえる主な場所が決まっています。…

MySQLのDockerイメージをイチから作成する

わけあって、公式のものとは別にMySQLのDockerイメージを作成しました。 この記事はその備忘録です。 公式のイメージはデータ保存の部分がVOLUMEマウントされているので、イメージの中にデータを含められないからです。 公式イメージではデータを保存できな…

...が意外に便利だった件

php

PHPでは...というキーワードがあります。 可変長引数と引数のアンパックです。 以下、例です。

docker-compose でPHPのマルチバージョン環境を

作りたかったわけです。 色々と苦戦したので、メモとして残します。 DockerHubで提供されている公式のPHPイメージを使う 見れればいいのでwebサーバはapache PHPのエクステンションを追加する イメージ イメージ名は php<version>-apache で統一されています。 最新は</version>…

いきなり1on1を受けてきました

いきなり1on1とは? nitt-san.hatenablog.com だいたいの流れ slackで待ち合わせ 喫茶店へ ごはんが来るまでにヒアリングシートを書く ごはん食べる 本番開始 蛍の光が流れてきたので隣の喫茶店へ 本番再開 終了 感想 自分の頭の中のことを話す機会はないの…

herokuでサブディレクトリをデプロイする

まえおき herokuを使いたいなーと思って調べています。 herokuにデプロイするときに、 build-pack というものを使用します。 これは、デプロイされるアプリケーションの言語などを自動で推定してくれるやつです。これを設定しないとデプロイできません。 我…

composerで特定のリビジョンのパッケージを取得する

こちらがわかりやすいです。 akamist.com なるほどなー! "{vendor}/{package}" : "dev-{branch}#{hash}" って書けばええんやな!やったろ! "laravel/socialite": "dev-3.0#79316f3" 実行! > composer update laravel/socialite Loading composer reposito…

hyper + powershellで文字に色が付かないとき

hyper + powershellで文字に色が付かずに ?[39m などと出てしまう現象に遭遇しました。 とりあえず私は以下の方法で対処できたので、記しておきます。 hyperを3系に上げましょう。 githubから落とせます。 Windowsのバージョンを 1809 まで上げましょう。 以…

Laravel JP Conferenceに行ってきました

タイトルのとおりです。 2/16日にLaravel JP Conferenceに行ってきました。 今回はPHPカンファレンス仙台2019に引き続き、Speaker+Sponsor+Staffのスリーエスで参加しました。 スポンサーとして スポンサーとしては実質あまり動いてなく、カンファレンスが動…

PHPでエラーと呼ばれているものまとめ

php

PHPでエラーと呼ばれているものをまとめてみました。 誰が見てもエラーとわかるもの Error

Laravel+Codeceptionのメリット

私は普段、Laravel+Codeceptionを利用してテストを書いています。 今回はLaravel+Codeceptionのメリットとちょっとした小技を紹介します。 Codeceptionとは CodeceptionはPHPのテスティングフレームワークです。 単体テスト・機能テスト・受け入れテストを書…

よく使うgit操作まとめ

git

JetBrainsのIDEにはgitとのインテグレーションツールが入っていますが、「gitはコマンドで叩いている」という人が多いようです。 自分の振り返りも兼ねて、よく使うgit操作をまとめてみます。 なお、私は普段はPhpStormを使用しているので、スクリーンショッ…

機能テストはいいぞ!

ふと、機能テストの良さについて語りたくなったので投稿。 単体テストより先に機能テストを書こう! 「テストを書く」というと単体テスト(ユニットテスト)を想像しがちですが、WEBシステムなら機能テスト(HTTPテスト)を先に書くことがおすすめです! 先に用…

dockerに入門してみた

docker、名前は聞いたことあるものの、全然ノータッチだったので、勉強してみた。 いつも「dockerとvagrantの違い」あたりを読んで挫折し始めるので、そこらへんはスキップします。 dockerやインフラ初心者にとっては、そこってホントどうでもいいところなん…

PHP-BLT #8 でPHPDocについて発表しました。

PHP-BLTにいってきました 8/8にあったPHP-BLT #8 で「PHPDocのおさらい」というタイトルで発表しました。 内容としては「PHPDocで関数とかの仕様書けるよ!」という当たり前すぎる話を5分に引き伸ばした感じです。 ただこの話は、自分の中で悶々と溜めてたこ…