簡単に使えるプランニングポーカーのwebサービスを作りました

これです poker-kun.herokuapp.com 使い方 roomを作ってurlを人に教えるだけで使えるようになります 投票後、同じroomの投票数が見れるようになります reset roomを押すとroom内の投票がリセットされます 説明 socket.ioを使ってます herokuの無料プランで動…

足し算ゲームアプリをリリースしました

play.google.com スクリーンショット よく見たらボタンの位置おかしいですね(笑)

docker-compose execとrunの使い分け

bashを立ち上げてコンテナの中で色々作業したい時にどう使い分けるか整理した docker-compose exec docker-compose.ymlのportを使いたい時 すでに立ち上がってるコンテナに入るのでportの競合はしない 基本こっちでいいと思う docker-compose run docker-com…

fedoraで論理ボリュームの拡張

vagrantで立てたfedoraがディスク不足になってしまったので拡張した やり方 1行目で容量を30Gに拡張している、2行目はファイルシステムのサイズを拡張している 2行目はファイルシステムによって違うらしい sudo lvextend -L 30G /dev/mapper/fedora-root sud…

誕生日専用のカレンダーアプリ(android)をリリースしました

人の誕生日をよく忘れるので作りました。 play.google.com コンセプト Googleカレンダーより少ない手間で登録できるようにする 何日前に通知するかは設定したい このアプリはGoogleカレンダーに登録するの面倒だという気持ちから生まれました。なので入力の…

linuxで指定サイズのファイルを作成する

fallocateコマンドにlengthオプションを付けて実行する $ fallocate -l 1g foo $ du -sh foo => 1.0G foo 参考 linux - 1GBのダミーファイルを作成するコマンドは? - スタック・オーバーフロー

elmでhttpパッケージを使ってajax

メッセージを定義 メッセージは2種類用意する。一つはリクエストを投げるメッセージでもう一つはレスポンスを受け取るメッセージ。 分かれている理由はelmが純粋関数型で非同期処理はランタイムで処理することになってるからだと思う。 type alias User = { …

elmでNavigationを使ったルーティング

書いてみたら意外と面倒だったのでとりあえず楽そうな方法で済ませた。 Navigation.program ルーティングが必要な時はHtml.programの代わりにNavigation.programを使う。 initやupdateなどを渡すのは同じだが、(Location -> msg)も引数に取るのが違う。 mode…

microsotのtodoでタスク管理するようにした

最近microsoftのtodoを使ってるので感想とか。 https://todo.microsoft.com/ 最初にまとめ 最初は微妙かなと思ってたけど「私の1日」機能が良いから気に入った。 「私の1日」機能が良い たくさんのタスクのうち今日やる分だけを登録する機能。 「私の1日」に…

fedoraにLightTableをインストールする

libasoundやlibgconfのエラーが出るので入れる sudo dnf install -y \ alsa-lib \ GConf2 githubからダウンロードして解凍 url=https://github.com/LightTable/LightTable/releases/download/0.8.1/lighttable-0.8.1-linux.tar.gz cd /tmp wget $url -O ligh…

vscodeでelmを書く

sublimeからvscodeへ移行を試しているので感想 extensionはこれ github.com REPLで評価できるようになった 個人的に一番大きい違い sublimeだと複数行の評価ができなくて実質REPLが使い物にならなかったけど、vscodeだと複数行でも評価できる 補完が賢い exp…

elmでJSONをEncode/Decode

意外と苦戦したのでメモ Encode Recordならobject、Stringならstringのように対応する関数が用意されているので、全部マッピングして最後にencode関数でStringに変換する http://package.elm-lang.org/packages/elm-lang/core/5.1.1/Json-Encode 公式のサン…

kotlinのコルーチンをお勉強

まだ勉強中なので間違いあるかも 注意 コルーチンはkotlin 1.1.2ではまだ実験的な機能です なぜコルーチンを使うか 非同期処理を同期的に書きたい。Noコールバック // 理想 val users = Http.getUsers() println(users) // 現実 Http.getUsers() { users -> …

nginxでbasic認証をかける

パスワードのハッシュ値を生成 openssl passwd 12345678 => /fRAn6eKC1Zkc # パスワードを8文字より長くしたい時はmd5 openssl passwd -1 123456789 => $1$F.4yc/Pm$L2UrGFVazVQSYaE7TVtcR. nginx.confかincludeしてるconfファイルに追記 location / { auth_…

webpacker2.0がリリースされてelmがサポートされた

今までrails newの--webpackオプションとしてreact, angular, vueが選択できたが、webpack2.0からなぜかelmも追加された。 github.com rails new myapp --webpack=elm とかやれば使えます。 hello_elm.jsとMain.elmが作られるので <%= javascript_pack_tag "…

bulmaのフォントサイズが変わっていた

bulmaを最新にしたら全体の大きさが変わったので調べてみた paddingなんかも影響を受けて変わっていた というかいつの間にかバージョン4になっていたんですね

最近使ってるCLIツール

atool解凍・圧縮コマンドのラッパーtarのオプションが覚えれないので使ってる ranger + highlightファイルマネージャーコードを読むとき結構使う htop高機能なtop主にプロセスをkillしたい時使ってる

Laravel勉強メモ

新規作成 composer global require "laravel/installer" laravel new blog 開発サーバー起動 php artisan serve

むっつりスケベ度を診断するサービスを作りました

だんだんマテリアルデザインっぽく作れるようになってる気がする labs719.azurewebsites.net

「連休中になんかやるぞ!」って思ってるプログラマー向けのサービスを作りました

「連休中になんかやるぞ!」って思ってるプログラマー向けのサービスを作りました。 なにを勉強するか決めるためのルーレットです。 labs719.azurewebsites.net

お正月に向けてサービスを作りました

お正月に向けてサービスを作りました。 絶対に大吉の出るおみくじです。 labs719.azurewebsites.net

riot.jsのoptsはlowercaseのみ

問題 riot.jsでタグを定義する時、attributeをcamelCaseで書いてもoptsでは全て小文字に直されてしまう <foo barBaz="a" /> <foo> <p>{opts.barbaz}</p> </foo> 解決策 諦めてsnake_caseで書こう 参考 http://riotjs.com/guide/#nested-tags</foo>

cssで高さ100%

正確には違うっぽいけど height: 100vh; がそれっぽい動きしてくれる 本来はviewportまわりのアレらしい calcと併用すれば柔軟に使えそうだし、高さ100%は面倒だから覚えておこう

Material Design Lite感想

良さそう Cards ripple effect radioとかがカスタマイズ済み 個人的に悩みどころ listが無かった ボタンが大文字になる 割りとDOM追加はされる 画面サイズでMAXのgrid数が変わる 画面サイズでヘッダーが非表示になる 思ったより使うの難しかった

414エラー

久しぶりにreagentの勉強しようと思ってnewしたら exceed max line 4096 とか 414 Request-URI Too Large とか出てブラウザで動かなかった。 Cookie消したら直った

riot.jsのrouterを試してみた

<foo> <a href="#tag1">tag1</a> <a href="#tag2">tag2</a> <bar /> <script> this.on('mount', function() { riot.route.start() // routerに変更があったら実行される riot.route(function(tag) { // <bar /> に tag を展開する riot.mount('bar', tag) }) // ブラウザをリロードした時用 riot.route(location.hash.repl</script></bar></foo>…

riot.js

htmlの中にscriptタグとかstyleタグとか書くのが基本なので、適当なエディタでもシンタックスハイライト効いて嬉しい。 ライフサイクルがよくわかってないので、riot.update()をバンバン呼んでる。 カスタムタグをeachで回したら、挙動が変だった。 プロトタ…

cordovaとかandroid-sdkとか

cordova 5.0.0使ったらプラグインが対応してなかったので、4系の最新使った。 android-sdk 適当にチェック入れると、androidTVとかwearとかなんやかんやが入って10GBとか容量食うので、要らなそうなのは外す

sublime textのバージョンあげたらtmuxから起動できなくなった

正確には、起動できるけどディレクトリを指定しても開いてくれなくなった。 set -g default-command "reattach-to-user-namespace -l /bin/bash" ↑をtmux.confに書いたら直った。たぶん。 参考 https://superuser.com/questions/831028/lsopenurlswithrole-f…

bracketsでTheseus

よさ気だったけど、CPU凄い食うのがきつい。

systemとexecの違いについて

thorでalias集みたいなのを作ってた時に思った。 たぶんこんな感じ。 system 子プロセスで処理を実行して、成功したらtrueを返して子プロセスは終了する exec 現在のプロセスで処理を実行する 処理が成功したら、そこでrubyのスクリプトは終了する 最初は全…

413エラーが出たら、クッキーを削除する

メモ

LightTableでhtmlのタブを2スペースにしたい

:editor.html [(:lt.objs.editor/tab-settings false 2 2)] :editorのあとに書くのではなく、:editor.htmlを作ってその中に書く。

Rails+AngularJS+karmaでテストを書き始める時にハマったこと

karma.conf.jsに、ngRouteなどをloadするように書いているはずなのに、 Error: [$injector:modulerr] がなぜか出る。 原因 jqueyを読み込んでいなかったこと。 angular.module('myApp').config内で、CSRF用にこの記述をしていた。 $httpProvider.defaults.he…

grunt-build-controlでデプロイした時にエラーが出る

grunt-build-controlを使って、dist内のファイルをgh-pagesブランチとしてデプロイするように設定したが、なぜかエラーが出て失敗してしまう。 調べたところ、どうもgrunt cleanがdist内の.git/以下のファイルを消してしまっているらしかった。 追記 cleanの…

angularでなぜか自作directiveが動作しない

custom directiveでちょっとハマったのでメモ。 命名規則が意外と大事。 // html側 <div foo-bar></div> // js側 app.directive('fooBar', ウンタラカンタラ return { templateUrl: 'hoge.html' html側はfoo-bar、js側での宣言はfooBarで。 ちなみにtemplateのファイル名は任意…

knockout.jsで開発していて、外部ファイルにしたら動かなくてハマった話

rails+knockout.jsでのことだけど、railsじゃなくてもたぶんそう。 view内にscriptタグで書いて動いていたjsが、javascript_include_tagを使って外部ファイルにしたら動かなくて悩んだ。 これは動く <p>hoge</p> <script type="text/javascript"> 処理 </script> 動かない <%= javascript_include_tag :main …

古いspringでreload!が効かない

今日気づいたのだが、 bundle exe spring rails c でrailsのコンソールを立ち上げると、reload!をしても変更が反映されなかった。 https://github.com/rails/spring/issues/264 これを見ると、rails4.0.2以降で起きる問題らしいが、すでに最新のspringなら修…

sublime text3でswitch projectを編集したい

pathはmacの場合です。 まず、sublime textを終了します。 次に、 ~/Library/Application Support/Sublime Text 3/Local/Session.sublime_session をsublime text以外のエディタで編集します。 recent_workspacesという項目があるので、そこにsublime-worksp…

render_to_stringを使った際にview内でエラーがあった時は、Missing templateエラーが発生する

csvをダウンロードさせたくて、コントローラーにこう書いた。 def index @users = User.all stream = render_to_string(template: "user/index.csv.erb") respond_to do |format| format.html format.csv { send_data stream.encode(Encoding::SJIS) } end e…

Evernoteで素早くメモをとる(Mac)

別のアプリを操作してる時でも、Evernoteを操作できるショートカット cmd + ctrl + n クイックノートを開く なお、クイックノートは自動でタイトルが挿入される (クイックノートを開いて)cmd + Enter 保存 cmd + ctrl + e Evernoteから検索 cmd + ctrl + c …

git addしてcheckoutしたら何処に戻るか?

echo edit1 >> hoge.txt git add . echo edit2 >> hoge.txt git checkout . cat hoge.txt edit1は失われない

リモートブランチからローカルブランチを作成

git fetch git checkout hoge 間違って git checkout -b hoge とやって長考してしまったのでメモ。

pryでedit-methodじゃなくてeditを使うようになった?

edit-methodは存在を知っていたものの使ったことがなく、いざ使ってみると上手く行かなかったのでメモ。 バージョン Pry version: 0.9.12.4 on Ruby 2.0.0. edit-method User.new を実行すると DISABLED: Use `edit` instead. と出る。 edit User.new ならOK…

bluetoothテザリングを試してみた

buletoothテザリングはwifiテザリングに比べ通信速度が遅いが、そのかわり電力消費が少なく、また子機から親機のテザリングON・OFFを切り替えられると聞いて試してみた。 設定方法 まず親機と子機のペアリング設定をする。 デフォルトではペア設定したデバイ…

bundle updateしたら影響が大きかった

危ないのでbundle execの方がいいかもしれないと思った。

SublimeTextでインストールしたpackageの一覧を確認する

cmd + shift + pでコマンドパレットを立ち上げて、 Preferences Package Control Settings - Userを選択。 installed_packages []内に自分がインストールしたpackageの一覧がある。 installed_packagesはいじらないほうが良さそう。 別方法 cmd + shift + p…

ImportError: No module named django.core.management

djangoで python manage.py runserver をしたらエラー ImportError: No module named django.core.management brewでpythonを入れなおしてbrew install python pip install django pythonのpathを直す echo 'export PATH=/usr/local/bin:/usr/local/share/py…

rake routesよりshow-routesの方がはやい

pryのshow-routesの方がはやい grepオプション show-routes --grep index

SublimeTextでファイルを新規作成

sublime-text-2-ruby-testsのEasy file creationがおすすめ。 本来、sublime-text-2-ruby-testsは、SublimeText上でrubyのテストを実行するためのプラグインだが、おまけとして付いてくるEasy file creationもなかなか便利だった。 ショートカットキーはcmd …