タグ

ブックマーク / blog.yappo.jp (271)

  • YappoLogs: LINE Notify で line command 作ると便利

    インターネット見てたら LINE Notifyはテストとか時間のかかるコマンドを実行してちょっと席を外して休憩してる間に通知させるとかときに使うとめっちゃ便利かつ楽そうって思いました— 貴社の名は。 (@karupanerura) September 29, 2016 って書いてあるの見たので、試しに作ってみました。 動かすと以下の感じです。 LINE Notify さん、めっちゃ簡単で便利すぎないか????!! tweet みてから10分くらいでエントリ書き終わったくらいの手軽さ!...

    yappo
    yappo 2016/10/01
  • YappoLogs: ikachan with Yappocall for LINE BOT API Trial Account

    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 を友だちに追加して

    yappo
    yappo 2016/04/08
    blogged ikachan with Yappocall for LINE BOT API Trial Account -
  • YappoLogs: 2015年振り返り #yapcasia

    最後の YAPC::ASIA Tokyo 2015 にて 大規模でも小中規模サービスでも捗る microservices な Web サービスのつくりかた という内容で発表してきました。 また LT にて 廃止予定になった $^ENCODING に関する発表もしましたが、諸事情により資料は非公開です。 Have a Happy new year!...

    yappo
    yappo 2015/12/31
    blogged - YappoLogs: 2015年振り返り
  • YappoLogs: LINE@ で俺の公式アカウントをはじめました

    yappo
    yappo 2015/02/20
    blogged LINE@ で俺の公式アカウントをはじめました -
  • YappoLogs: Mac + emacs + PlantUML でさくさく UML 職人

    例えば ./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

    yappo
    yappo 2014/11/26
    blogged - Mac + emacs + PlantUML でさくさく UML 職人
  • YappoLogs: #isucon 2014 に参加して暫定圏外になってきました

    #isucon 2014 に参加して暫定圏外になってきました ISUCON4 の予選やってきました、最終スコアは37000位だったけど戦足切りラインは45000くらいだと思うので残念でした。 チームメイトは、前回組んだ kamipo さんに加え新メンバー ar_tama さんと共に望みました。 役割としては kamipo: 司令塔権 middleware 以下全部担当 ar_tama: アプリ担当 yappo: アプリ担当 リポジトリはこちら https://github.com/kamipo/isucon4qualifier 開始前 大体の凡ミスはレギュレーション読まない事に起因するのが、過去の ISUCON の教訓だからひたすらレギュレーション読む。 お陰でリーダの遅刻を見逃した。 10:00-12:00 開始とともにトイレ。この間に kamipo さんが必要なインスタンスあげてログ

    yappo
    yappo 2014/09/29
    まじめにかいたよ
  • YappoLogs: #isucon で、やらんかった事

    書いてる人 ISUCON が始まる直前のエンジニアチューニングコンテストで、レギュレーションで「特定のディレクトリ以下のファイルを弄ったら失格。それ以外は自由」って競技があったので、特定のディレクトリ以外の htppd.conf をいじって documentroot を変更して、ぶっちぎりのスコアをたたき出したら、ぶっちぎりすぎたと言う理由で失格になってマジイラっと来た人間。 最初やった事 レギュレーションを良く読む テンプレートファイルを良く読む ベンチマーク実行する ベンチマークの User-Agent を見る 任意の Set-Cookie を返してもちゃんと処理するかどうか見る ログを awk ... | sort | unic -c |sort -r | more static file を.gz してファイル圧縮対応してる client かどうか試して無理なの確認する ベンチマー

    yappo
    yappo 2014/09/29
    blogged - YappoLogs: #isucon で、やらんかった事
  • YappoLogs: あなたがRuby on Railsを使わない10の理由

    あなたがRuby on Railsを使わない10の理由 RoRを覚えても職場ではEthnaなんだよね、それにZend Frameworkも出たし まずはこれから。よく聞くんだけど、これは解決可能な問題だ。というか問題設定が間違っている。 最初に根的に疑問なんだけど、なぜ会社で使っているのと同じフレームワークをあなたが使わないといけないんだろう。慣れてるから? 仕事を持ち帰るから? 自分のために使うのはRoRでいいと思う。あなたが自分のためにやることってなんだろう。fgetcsvを使ってCSVパースすることかな。そうじゃないだろう。ここを読んでいるほとんどの人にとって重要なのは、メールを読み書きして、Webを見て、Blogを書いて、プログラムを書いて、っていうことだろう。他にも、デジカメで撮った写真を整理するアプリを作ったり、音楽を共有したりっていうのもある。この中には、Ethnaじゃなき

    yappo
    yappo 2014/08/18
  • YappoLogs: ライブドアの会社概要がぜんぜん更新されないので正しい会社概要にするグリモン書いた

    ライブドアの会社概要がぜんぜん更新されないので正しい会社概要にするグリモン書いた ライブドアの社長が出澤さんから鼠先輩に変わったのは記憶に新しい所ですが、会社概要が全然更新されないのでカッとなって正しい情報に書き換えるグリモン書きました。 新年の挨拶もしてるのになぁ。 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 | 適当

    yappo
    yappo 2014/07/29
    IT 芸人ってこういう人のことでしょ?
  • YappoLogs: 超軽量 logger の logminimal っていう Java8 ライブラリ書いた

    超軽量 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); } }って感じで使えます!かんたん! デフォルト

    yappo
    yappo 2014/07/15
    blogged - 超軽量 logger の logminimal っていう Java8 ライブラリ書いた
  • YappoLogs: MySQL Casual #6 で Groonga の話してきました #mysqlcasual

    先週末 Oracle で開催された MySQL Casual #6 でBetter Groonga Replication という題名で Mroonga 使わずに Groonga のレプリケーション構成作って便利に使ってるよ!って話をしました。 普通に話したら Mroonga を使えってマジレス返されるので、なんで Mroonga を使わないで Groonga 単独で頑張ったかの理由などの話をしてたら時間かかりすぎたので9月に開催される Groonga のイベントでもうちょっと詳細の実装などを話そうとおもいましたまる...

    yappo
    yappo 2014/07/15
    blogged - MySQL Casual #6 で Groonga の話してきました
  • YappoLogs: YAPC::Asia 2014 でトークしたい

    yappo
    yappo 2014/07/09
    blogged - YAPC::Asia 2014 でトークしたい
  • YappoLogs: xlsx ファイルを git diff しやすくする為の天才的な wrapper script を書いた

    皆さんはプロジェクトのリソースとしてエクセルの xlsx ファイルを使う事があると思います。 何てったって事務職の人ですら楽々使えるスーパー優れた UI なので、 web の管理画面とかを作り込むよりもエクセルでシート作ってもらってしまった方が早いケースも多いんです。現実の世界では。 で、普通の人は TSV にするだの CSV にしてもらうだのすると思うんですが、一方的にデータ貰うだけなら良いんだけど、相手とやり取りする時にはどうしても xlsx ファイル経由とかにしないと相手がこまる!やっぱりエンジニアのエは優しさのエだから相手に優しくしないとだめです。 で、 xslx ファイルでエンジニア以外の人とデータやり取りするとやっぱり、バージョン管理したくなるのが人情です。 でも xslx ファイルはバイナリファイルなので git diff とかが残念です。。。 って事で作っちゃいました。 h

    yappo
    yappo 2014/06/19
    blogged - xlsx ファイルを git diff しやすくする為の天才的な wrapper script を書いた
  • YappoLogs: LINE Developer Meetup in Fukuoka #4 でしゃべってきた

    LINE株式会社という会社が月イチでdeveloper meetupを福岡でやっている、ついては第四回目でしゃべってくるがよい、ということになったので、いってきた。わーい博多だ。 http://yappo.github.io/talks/20140528-linedm04/ 話題はどうしようかと思ったけど、普通に自分のお仕事で考えている話すか、ということでエンジニアの考え方の概要、どういう考え方で働けばいいのか、実務でどうかの話もからめてひと通りやった。30分の予定が40分近い話になってしまった。 もうちょっとコードレベルの話とかでも良かったんだけど、もう一人の資料みたらそういう感じだったので逆ばりして、意識高いだけのなんちゃってエンジニアっぽい感じのふわっとした話をしてみました。 こんな話でよかったかなあと思ったけど、懇親会で「バッチスクリプト動かす時に勇気居るの共感した」しかもお仕事

    yappo
    yappo 2014/06/04
    YAPC で湧いてるところわるいけどブログかいた - LINE Developer Meetup in Fkuoka #4 でしゃべってきた
  • YappoLogs: re: Text::Xslateで未設定の変数を検出する a.k.a Text::Xslate hash_with_default best practice

    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 を生やし

    yappo
    yappo 2014/04/03
    blogged - re: Text::Xslateで未設定の変数を検出する a.k.a Text::Xslate hash_with_default best practice
  • YappoLogs: Yokohama.PM #10 でひとつ上のmysql について話してきました #yokohamapm

    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

    yappo
    yappo 2014/04/01
    blogged - Yokohama.PM #10 でひとつ上のmysql について話してきました
  • YappoLogs: なぜ SQL_CALC_FOUND_ROWS や LIMIT OFFSET のページングが良く無いのか

    なぜ 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

    yappo
    yappo 2014/03/12
    blogged - なぜ SQL_CALC_FOUND_ROWS や LIMIT OFFSET のページングが良く無いのか
  • YappoLogs: mysql_use_result on DBD::mysql

    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

    yappo
    yappo 2014/02/18
    みんな maria で盛り上がってる所悪いけど blogged - mysql_use_result on DBD::mysql
  • YappoLogs: DBD::mysql Async API

    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 が全入りベンチ(

    yappo
    yappo 2014/02/12
    blogged - DBD::mysql Async API
  • YappoLogs: ギーク系女子に捧げる「クリスマスにプロポーズにされた時の対応プロトコル」2013年版

    ギーク系女子に捧げる「クリスマスにプロポーズにされた時の対応プロトコル」2013年版 みなさんこんばんは!エビスビール割と好きなオッス!どっちかというと宍戸開とどっち選ぶかと言われたら宍戸錠派のYappoです。 先日とある僕が行くには場違いのような店で「後少しでクリスマスなんだけど、プロポーズとかされたらどうしよう><相手の人がギーク系統の人だったらどんなレスポンスが好印象かなっ//」って話題が出たので、ギーク系男子はこういうプロポーズの返事に弱いぜ!って感じのまとめを紹介するよっ! 予備知識 ギーク系男子は、プログラミングを全ての中心においている以上すべての事象に対して論理的克つ単純明快を好む傾向があるんだ、たとえコミュ障なプログラムが一大決心してプロポーズをしてきたとしてもこの前提は揺るぎなく「はっきり断ったら傷つけるかな?」「この人と仕事で関わるから気分をがいしちゃったらやばいな」み

    yappo
    yappo 2013/12/17
    blogged - ギーク系女子に捧げる「クリスマスにプロポーズにされた時の対応プロトコル」2013年版