プログラミングは芸術だ!

WEB系エンジニア 「プログラミングは芸術」を座右の銘として日々勉強中

超簡単!5分でつくるSlackBot

charlie1012.hatenablog.jp 上記の記事を活用して、「5分プログラミングSlackBotとmonolog」というタイトルで 5分でSlackBotを実装するライブコーディングLTを発表しました Monologを活用したBotは簡単ですが、応用範囲は広く、有用です 日々の数値報告やエ…

Bear.SundayとRMパターン

BEAR.Sunday 社内でBear.Sundayを活用した設計パターンについて発表した資料です Bear.SundayでなにをResourceにして、なにをResourceにしないのか またResource以外をどういう構成,設計で実装するべきなのかということをよく悩んでいました "そこそこよさそ…

PhpStorm Tips [随時追記 最終更新:2018/07/30]

php

DirectoriesでExcludedを設定するとindexの対象から外せる そんなに node_modules が重要ではないプロジェクトとかだと、 こいつを設定しておくとindexもはやくなり、検索もノイズが減るので幸せ 省電力モードがある 外出先などで利用のときは設定しておくと…

APIのレスポンスのステータスコードについて悩んだ話 200 vs 404

ユーザーのお気に入りがない場合は200?404? /users/123/favorites/articles 上記のURIで示されるリソース「ID:123のユーザーがお気に入りに設定している記事」 これが0件だったときに、返すべきレスポンスは200なのか、404なのか この判断にすごく悩みました…

monologのHandlerを利用してSlackBotをつくる

php

概要 PHPをお使いの皆様にはおなじみのmonologを利用してSlackBotをつくる方法を紹介します monolog github.com PHPのLoggingライブラリ PHPのLoggingライブラリではほぼ一択でmonologです SlackBot SlackBotには大きく2種類あります 一方通行の投稿 投稿内…

テストコードを書かなくても、自動的にアプリをテストしてくれるFirebase Test Labが凄い!

Firebase Test Labとは テストの種類 RoboTest InstrumentationTest 設定 実際にRoboTestをやってみた なにをやってくれるのか Warning,Error,Fatalのログ シミュレート時のスクリーンショットと動画 パフォーマンスモニタリング RoboTestは有効なのか? Q&A…

Let's EncryptでSSL化するぞ!PHP + nginx の基本設定ファイルあり

letsencrypt.jp Let's EncryptのSSL証明書で個人サービスをSSL化しました 手順とnginxの基本設定をまとめます 環境 Ubuntu 16.04.2 LTS nginx version: nginx/1.10.0 (Ubuntu) クライアントをインストール sudo apt-get install letsencrypt コマンド実行 # …

PHPを用いてTwitterにつぶやく

実装したリポジトリ github.com 利用ライブラリ vlucas/phpdotenv abraham/twitteroauth 準備 https://apps.twitter.com/ Create New App から アプリケーション を 作る つぶやくには Key and Access Tokens から 下記の4つを取得する Consumer Key Consume…

PHPでGoutteを用いてスクレイピングをおこなう

概要 スクレイピングを行う場合、 よく用いれられる言語として、PythonやRuby,node.jsなどがあげられると思います PHPでも基本的ななことはできるので、スクレイピングライブラリといくつかの例を紹介します 利用ライブラリ Goutte SymfonyのCssSelector and…

Androidアプリのリリース準備作業 その2

charlie1012.hatenablog.jp 前回の内容から追記 Google Play App Signingの流れ Manage your app signing keys - Play Console Help 上記には新規アプリで利用する場合には最初からupload用の鍵で署名して [Google Play アプリ署名] に同意すれば使えるよう…

Androidアプリのリリース準備作業

アプリを実装して、手元の端末で動いた!さあリリースだ! そうはいかない Play Storeにリリースするまでにはやらなければならないことは結構あり、そこそこハードルがある 備忘録としても、毎回の作業手順をこの記事にまとめておく ※ Playアカウントの作成…

2年半ぶりにAtcoderのコンテストに参加した話

2年半ぶりにAtcoderのコンテスト AtCoder Beginner Contest 085に参加しました abc085.contest.atcoder.jp 結果 3完 681位 学生時代はICPCのCは解けるけどDは解けない AtcoderのRegularだとBが解けるくらいのレベルでした AtCoder Problems もう久しぶりすぎ…

2018年やること,やりたいことの100のリスト

今週のお題「2018年の抱負」 毎年、その年で「やること、やりたいこと」の100のリストを作っています お正月のうちに「今年やるべき100のリスト」を作ってしまおう 上記の記事に影響を受けて、はじめました 2016年からやっており、今年で3年目です やってい…

Qiitaストック

自分が書いたQiita記事の一覧 Mithril.jsをどういう設計でサービスに導入したか - Qiita

PHPでターミナル等のCLI標準出力に色などをつけるライブラリを公開しました

packagist.org PHPでターミナル等のCLI標準出力に色などをつけるライブラリを公開しました 類似のライブラリの場合は装飾の色をStringで指定することが多かったのですが、 typoや装飾を複数したい場合の対応などに不満があり、実装&公開しました インストー…

DroidKaigiに参加してモチベーションがあがって、個人でアプリをリリースした

正確にはDroidKaigiに参加してモチベーションがあがって、個人でアプリをリリースしたけど、リジェクトされて公開できなかった話です DroidKaigi 03/09-10にDroidKaigi 2017に参加してきました droidkaigi.github.io 昨年は1日だけの参加でしたがが、今年は…

【宣伝】Android版エキサイトニュースの一覧表示順ロジックをちょっと変更してCTRを5%向上させた話

弊社のAdvent Calendarに「Android版エキサイトニュースの一覧表示順ロジックをちょっと変更してCTRを5%向上させた話」という記事を書きました qiita.comexdev.exblog.jp 概要としては アプリの記事一覧表示順を変更してCTR5%向上 機械学習などの導入は簡単…

CODE RUNNER 2015 予選B に出場しました

CODE RUNNERとは キャリフル、チームラボ、Atcoderで協賛、運営している 短時間マラソンマッチのプログラミングコンテストです2014年に第1回がございまして、今年は第2回目の開催となっております 基本の対象者は学生なのですが、社会人も予選は出場すること…

漫画、アニメ、声優ラジオに目覚めた1冊

今週のお題「人生に影響を与えた1冊」 先週に続き、今週のお題でブログを書きます今週のお題は「人生に影響を与えた1冊」とのことで、 投稿された記事をいくつか見ていると、とても高尚な記事が多かったので、 プログラミングを始めたきっかけとか、そういう…

学びたいことがいっぱい!

今週のお題「いま学んでみたいこと」初めての今週のお題! 学びたいことを5つほど書きました 上からモチベーション順! アルゴリズム,競技プログラミング 大学生時代は趣味レベル競技プログラマーだったわけですが、 最近はめっきりやりらなくなってしまいま…

UbuntuにMySQLをインストールするところからテーブル作成までの方法

備忘録、第二弾! コピペでUbuntuにMySQLをインストールして、テーブル作成までOK MySQLをインストール user@ubuntu:~$ sudo aptitude update user@ubuntu:~$ sudo aptitude install mysql-server //rootのパスワードが聞かれますaptitudeのupdateを忘れない…

通常SSHでVagrantにログインする方法

参考サイト VagrantインスタンスにSSHでログインする - Qiita 基本的には参考リンク先の方法できます備忘録として自分のブログにもまとめます vagrant ssh普段は上記のコマンドでsshログインができるので、通常のsshコマンドでログインすることは少ないので…

はてなブログの見出しを装飾する

ナビゲーションに続き、見出しも少しだけCSSで装飾してみました ナビゲーションはこちらはてなブログにナビゲーションメニューを簡単に追加する方法 - プログラミングは芸術だ!charlie1012.hatenablog.jpはてなブログは本文内の大見出しがh3、順にh4,h5とな…

はてなブログにナビゲーションメニューを簡単に追加する方法

ブログにナビゲーションメニューを追加してみました 「はてなブログ ナビゲーションメニュー」でググると、 CSS MenuMaker | HTML, CSS, & jQuery Menus ここを使うといいよ!っていう情報が多く出てくるのですが、すでにここは有料になってしまっているので…

自分でwebサービスを開発,公開して分かった3つのこと

とても参考にさせていただいたスライド エンジニア向け絶対に挫折しない個人サービスの作り方先日公開したwebサービスシンプルIT勉強会リストwww.simpleit.info シンプルIT勉強会リストの紹介記事はこちらSlimでシンプルなサービスを開発してみる【PHP】…

SlimでシンプルなIT勉強会が探せるサービスを開発してみた【シンプルIT勉強会リスト】

前回phpのインストールとslimフレームワークの導入 - プログラミングは芸術だ!charlie1012.hatenablog.jp slimを使って簡単なwebサービスを開発してみました シンプルIT勉強会リスト シンプルIT勉強会リストwww.simpleit.info 全体像 バッチで勉強会の情報…

PHPのインストールとslimフレームワークの導入

前回VirtualBoxとVagrantで簡単にweb開発環境を構築 - プログラミングは芸術だ!charlie1012.hatenablog.jp 前提として上記の記事の設定が済んでいると仮定してします今回は PHP,Apacheのインストール、そしてslimフレームワークのインストールを行います PH…

プロンプト表示をカスタムしてみる【gitのブランチも表示するよ!】

Linux - プロンプトをカスタマイズしてgitブランチを表示する - Qiitaqiita.com上記Qiitaページのすごく参考にしております。ぜひご一読を!これパクリなんじゃ 少しだけ修正を加えたので備忘録として書いておきます.bashrcに下記を追加 function parse_git_…

VirtualBoxとVagrantで簡単にweb開発環境を構築

VirtualBoxだけでもローカル開発環境は構築できるのですが、今回はVagrantを使ってみました! 以下は OS X 10.10.2 での設定方法となります Vagrantについて 開発環境構築ツールの1種 開発環境の共有ができるので、自分の環境では動くので、本番で動かない!…

マルチディスプレイの時にMacのDockをディスプレイ間で移動する方法

Dock コイツです Macでマルチディスプレイを行っている時に、気づいたらサブディスプレイの方へ移動してしまっていることが多々ありませんか!? 私もよくあり、そのたびに環境設定のディスプレイからメインとサブディスプレイを入れ替えて、戻すなんてこと…