こんなコードはよいコード
- 読みやすいことはよいことだ
- 見た目が単純だと読みやすい
- 皆がよく知っている構成は読みやすい (標準に従う。すでに知っているもの (Unix のコマンドとか) に従う。すでにあるものに従う)
- 書かないことはよいことだ
# Send Japanese mail using Gmail SMTP server. You need tlsmail. | |
# $ sudo gem install tlsmail | |
require "rubygems" | |
require "tlsmail" | |
require "nkf" | |
require "net/smtp" | |
def sendgmail(from, to, subject, body, user, pass, host = "smtp.gmail.com", port = 587) | |
body = <<EOT |
/* ~/Library/KeyBindings/DefaultKeyBinding.dict */ | |
{ | |
/* Auto-Paring */ | |
// "(" = ( "insertText:", "()", "moveBackward:" ); | |
// "{" = ( "insertText:", "{}", "moveBackward:" ); | |
// "[" = ( "insertText:", "[]", "moveBackward:" ); | |
"~f" = "moveWordForward:"; /* M-f */ | |
"~b" = "moveWordBackward:"; /* M-b */ | |
"~<" = "moveToBeginningOfDocument:"; /* M-< */ |
// ==UserScript== | |
// @name kyoko | |
// @namespace http://www.dolpen.net/ | |
// @description これは嘘ニュースです | |
// @version 0.1 | |
// @include http://kyoko-np.net/* | |
// ==/UserScript== | |
(function(w,d){ | |
alert('これは嘘ニュースです'); |
基礎知識
読み物系
user nginx; | |
worker_processes 1; | |
error_log /var/log/nginx/error.log; | |
pid /var/run/nginx.pid; | |
events { | |
worker_connections 1024; | |
} |
/** | |
* ``` | |
* Does JDK8's Optional class satisfy the Monad laws? | |
* ================================================= | |
* 1. Left identity: true | |
* 2. Right identity: true | |
* 3. Associativity: true | |
* | |
* Yes, it does. | |
* ``` |
[merge] | |
tool = intellij | |
# tool = Kaleidoscope | |
[diff] | |
tool = intellij | |
# tool = Kaleidoscope | |
# intellij mergetool config | |
[mergetool "intellij"] | |
cmd = /Applications/IntelliJ\\ IDEA\ 13\\ CE.app/Contents/MacOS/idea merge $(cd $(dirname "$LOCAL") && pwd)/$(basename "$LOCAL") $(cd $(dirname "$REMOTE") && pwd)/$(basename "$REMOTE") $(cd $(dirname "$BASE") && pwd)/$(basename "$BASE") $(cd $(dirname "$MERGED") && pwd)/$(basename "$MERGED") |
import java.io.BufferedReader; | |
import java.io.IOException; | |
import java.io.InputStreamReader; | |
/** | |
* 許せ | |
* | |
* 1版:適当探索 | |
* 2版:IO改善 | |
* 3版:最悪でない入力に対する探索打ち切り改善 |