インターネット見てたら LINE Notifyはテストとか時間のかかるコマンドを実行してちょっと席を外して休憩してる間に通知させるとかときに使うとめっちゃ便利かつ楽そうって思いました— 貴社の名は。 (@karupanerura) September 29, 2016 って書いてあるの見たので、試しに作ってみました。 動かすと以下の感じです。 LINE Notify さん、めっちゃ簡単で便利すぎないか????!! tweet みてから10分くらいでエントリ書き終わったくらいの手軽さ!...
ikachan with Yappocall for LINE BOT API Trial Account LINE さんから Bot が作れる API がリリースされたということなのでikachanと昔なつかしYappocallの LINE 版を作ってみました。 実物はこちらhttp://yappocall.yappo.jp/ 初代 Yappocall は APNs で実装してましたが、今度は LINE を使ってるので僕からのお知らせが表示されてて双方向インタラクションな未来が来てる! LINE の開発者画面で Bot の作成を行い必要な設定を済ませた後、 Bot 連携するために必要な情報をソースコードに書いて実行するだけで簡単に ikachan のような単純な Web API が設置出来ます。 ソースコードの設定以外にも必要な作業があって、作成した LINE Bot を友だちに追加して
例えば ./uml/ に uml ファイルを置いておいて ./img/ に UML の画像ファイルを書き出すような環境の場合。JAVA_TOOL_OPTIONS="-Djava.awt.headless=true" watcher --dir ./uml/ -- 'java -jar /foo/bar/plantuml.jar ./uml/*.uml && open -g -a Preview ./img/*.png'のようなコマンドをバックグラウンドで起動しとくと、編集作業の邪魔されずに .uml ファイルが保存されるたびに全自動で画像を生成して Preview.app で開いといてくれる。 開いといてくれるけど Preview.app にフォーカスが移動しないと window 中の画像は反映されないので注意。 そしてwatcher コマンドはみなさんが嫌いな Perl でできていて C
#isucon 2014 に参加して暫定圏外になってきました ISUCON4 の予選やってきました、最終スコアは37000位だったけど本戦足切りラインは45000くらいだと思うので残念でした。 チームメイトは、前回組んだ kamipo さんに加え新メンバー ar_tama さんと共に望みました。 役割としては kamipo: 司令塔権 middleware 以下全部担当 ar_tama: アプリ担当 yappo: アプリ担当 リポジトリはこちら https://github.com/kamipo/isucon4qualifier 開始前 大体の凡ミスはレギュレーション読まない事に起因するのが、過去の ISUCON の教訓だからひたすらレギュレーション読む。 お陰でリーダの遅刻を見逃した。 10:00-12:00 開始とともにトイレ。この間に kamipo さんが必要なインスタンスあげてログ
書いてる人 ISUCON が始まる直前のエンジニアチューニングコンテストで、レギュレーションで「特定のディレクトリ以下のファイルを弄ったら失格。それ以外は自由」って競技があったので、特定のディレクトリ以外の htppd.conf をいじって documentroot を変更して、ぶっちぎりのスコアをたたき出したら、ぶっちぎりすぎたと言う理由で失格になってマジイラっと来た人間。 最初やった事 レギュレーションを良く読む テンプレートファイルを良く読む ベンチマーク実行する ベンチマークの User-Agent を見る 任意の Set-Cookie を返してもちゃんと処理するかどうか見る ログを awk ... | sort | unic -c |sort -r | more static file を.gz してファイル圧縮対応してる client かどうか試して無理なの確認する ベンチマー
あなたがRuby on Railsを使わない10の理由 RoRを覚えても職場ではEthnaなんだよね、それにZend Frameworkも出たし まずはこれから。よく聞くんだけど、これは解決可能な問題だ。というか問題設定が間違っている。 最初に根本的に疑問なんだけど、なぜ会社で使っているのと同じフレームワークをあなたが使わないといけないんだろう。慣れてるから? 仕事を持ち帰るから? 自分のために使うのはRoRでいいと思う。あなたが自分のためにやることってなんだろう。fgetcsvを使ってCSVパースすることかな。そうじゃないだろう。ここを読んでいるほとんどの人にとって重要なのは、メールを読み書きして、Webを見て、Blogを書いて、プログラムを書いて、っていうことだろう。他にも、デジカメで撮った写真を整理するアプリを作ったり、音楽を共有したりっていうのもある。この中には、Ethnaじゃなき
ライブドアの会社概要がぜんぜん更新されないので正しい会社概要にするグリモン書いた ライブドアの社長が出澤さんから鼠先輩に変わったのは記憶に新しい所ですが、会社概要が全然更新されないのでカッとなって正しい情報に書き換えるグリモン書きました。 新年の挨拶もしてるのになぁ。 before ↓ after http://svn.coderepos.org/share/lang/javascript/userscripts/livedoor_president_replace_to_mouse.user.jsに置いてあります。 どうぞご利用下さい。 Posted by Yappo at 2009年01月01日 11:12 | TrackBack | 適当
超軽量 logger の logminimal っていう Java8 ライブラリ書いた さいきんは空前の Java ブームの兆しが高まっているので、練習を兼ねてlogminimalっていうライブラリ書いてみました。 import static jp.yappo.logminimal.Log.*; public class Foo { public void var() { critf("crit log"); warnf("warn log"); infof("info log"); debugf("debug log"); critf("crit log %s", str); warnf("warn log %s", str); infof("info log %s", str); debugf("debug log %s", str); } }って感じで使えます!かんたん! デフォルト
皆さんはプロジェクトのリソースとしてエクセルの xlsx ファイルを使う事があると思います。 何てったって事務職の人ですら楽々使えるスーパー優れた UI なので、 web の管理画面とかを作り込むよりもエクセルでシート作ってもらってしまった方が早いケースも多いんです。現実の世界では。 で、普通の人は TSV にするだの CSV にしてもらうだのすると思うんですが、一方的にデータ貰うだけなら良いんだけど、相手とやり取りする時にはどうしても xlsx ファイル経由とかにしないと相手がこまる!やっぱりエンジニアのエは優しさのエだから相手に優しくしないとだめです。 で、 xslx ファイルでエンジニア以外の人とデータやり取りするとやっぱり、バージョン管理したくなるのが人情です。 でも xslx ファイルはバイナリファイルなので git diff とかが残念です。。。 って事で作っちゃいました。 h
LINE株式会社という会社が月イチでdeveloper meetupを福岡でやっている、ついては第四回目でしゃべってくるがよい、ということになったので、いってきた。わーい博多だ。 http://yappo.github.io/talks/20140528-linedm04/ 話題はどうしようかと思ったけど、普通に自分のお仕事で考えている話すか、ということでエンジニアの考え方の概要、どういう考え方で働けばいいのか、実務でどうかの話もからめてひと通りやった。30分の予定が40分近い話になってしまった。 もうちょっとコードレベルの話とかでも良かったんだけど、もう一人の資料みたらそういう感じだったので逆ばりして、意識高いだけのなんちゃってエンジニアっぽい感じのふわっとした話をしてみました。 こんな話でよかったかなあと思ったけど、懇親会で「バッチスクリプト動かす時に勇気居るの共感した」しかもお仕事で
re: Text::Xslateで未設定の変数を検出する a.k.a Text::Xslate hash_with_default best practice むかしごろーがText::Xslateで未設定の変数を検出する - Islands in the byte streamで、未定義のテンプレート変数を使おうとしたら警告だすソリューション作ってたけど、それだと [% IF unknown_var %] とかした時に true 扱いになってしまってひどい目に合うので、いい感じにするソリューション書いてみた。 hash_with_default の callback では undef を返しつつ、存在しない事を目立つ感じでレンダリングするかんじ。 で、これは毎回 controller が hash_with_default するのめんどいので Proj::Web::render を生やし
Yokohama.PM #10 でひとつ上のmysql について話してきました #yokohamapm 最近ここで色々調べてた、あまり良く知られてない DBD::mysql の便利機能についてまとめて発表してきました。 http://yappo.github.io/talks/2014-yokohamapm10-dbd_mysql/ このへん知っとくとひと皮むけた感じに成長出来ると思います。僕は結局 mysql_use_result だけたまに使ってます。 発表終わった帰り道にZごろうさんとかにに「避け入ってる場にしては内容がむづかしすぎるよ!」と言われました。 Posted by Yappo at 2014年04月01日 12:41 | TrackBack | Perl
なぜ SQL_CALC_FOUND_ROWS や LIMIT OFFSET のページングが良く無いのか ここ最近の大規模サービス関連したデータページング考です。 mysql 5.5.34 で試して記事書いてます。 bigdata テーブルは id BIGINT UNSIGNED NOT NULL AUTO_INCREMENT, PRIMARY KEY (id) なカラムがある前提です。もちろん InnoDB です。 2014年なんだからCOUNT(*)とかSQL_CALC_FOUND_ROWSとかLIMIT OFFSETのページングはやめようぜ - Togetterまとめが発端にみえるけど、わりと昔から話されてる事なんだけど、「nippondanji SQL_CALC_FOUND_ROWS」でググっても有用な情報ないし文書化されてないからしとく。 ページング処理で使われがちな機能です。 S
mysql_use_result on DBD::mysql DBD::mysql において、例えばテーブルの中に大量のレコードが入っているテーブルにクエリを投げる場合は execute で凄いブロックされた経験は誰にでも有るはず。 my $sth = $dbh->prepare('SELECT * FROM okkiinari'); $sth->execute; # ここで okkiinari テーブルのデータを全部読み込んでる だからみんなは LIMIT OFFSET とか頑張ったりするんですが、これを回避するための mysql_use_result っていうオプションがある。 connect する時に my $dbh= DBI->connect('DBI:mysql:test;mysql_use_result=1', 'root', '');と指定したり、途中で$dbh->{mysq
DBD::mysql Async API MySQL の Async API 使って思いクエリを並列処理したら早いかと思ったらそうでも無い風味。 Web アプリの時のように、クライアント側の並列度があがれば差が縮まる感じだけどそうでもない。 ある程度重いクエリの想定で SELECT SLEEP(0.05) とか投げてみたけどやっぱり普通に使った方が早い。 Async API 使うのにコストがかかるのかな、と思って IO::Select 使ってみたらかなり早くなったので AnyEvent がわりとボトルネックっぽい。 とは言え微妙な誤差ではあるので、普通に DBI 使ってればいい気がしてきた。 perl 5.18.2 DBI 1.63 DBD::mysql 4.025 AnyEvent 7.07 IO::Select 1.21 async-mysql-ioselect.pl が全入りベンチ(
ギーク系女子に捧げる「クリスマスにプロポーズにされた時の対応プロトコル」2013年版 みなさんこんばんは!エビスビール割と好きなオッス!どっちかというと宍戸開とどっち選ぶかと言われたら宍戸錠派のYappoです。 先日とある僕が行くには場違いのような店で「後少しでクリスマスなんだけど、プロポーズとかされたらどうしよう><相手の人がギーク系統の人だったらどんなレスポンスが好印象かなっ//」って話題が出たので、ギーク系男子はこういうプロポーズの返事に弱いぜ!って感じのまとめを紹介するよっ! 予備知識 ギーク系男子は、プログラミングを全ての中心においている以上すべての事象に対して論理的克つ単純明快を好む傾向があるんだ、たとえコミュ障なプログラムが一大決心してプロポーズをしてきたとしてもこの前提は揺るぎなく「はっきり断ったら傷つけるかな?」「この人と仕事で関わるから気分をがいしちゃったらやばいな」み
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く