Skip to content

Instantly share code, notes, and snippets.

View moznion's full-sized avatar

moznion moznion

View GitHub Profile
# 私が考える安全なプログラムを書くために必要なこと
今も昔も「入力によって挙動が大幅に変わるAPI」が世の中には多数存在していて、プログラマが本来意図した挙動と異なる動作を引き起こしている。
- ファイルを開こうとしたらコマンドを実行できてしまったり
- CSSセレクタを書いてるつもりがHTMLタグを生成してしまったり
- SELECT文を発行するつもりがDELETE文を発行できてしまったり
こういったときに
- 入力値検証をしないと危険になる
@hitode909
hitode909 / 43.go
Created November 20, 2013 11:41
package main
import "fmt"
func mynumber() map[string]func(int) int {
sum := 0
result := make(map[string]func(int)int)
result["add"] = func(x int) int {
sum += x
return sum
// ==UserScript==
// @name display datetime on Github issue
// @namespace userjs.com.cosmio.pastak
// @description
// @include https://github.com/*/pull/*
// @include https://github.com/*/issues/*
// ==/UserScript==
$(function() {
var usdate = $('.discussion-topic-header time').attr('datetime');
var msec = msec = Date.parse(usdate);
package main
import "fmt"
func main () {
// 見つめ合う
fmt.Println("おっくせんまん!おっくせんまん!!")
defer fmt.Println("ジャパン!!!");
}
if ($cond) {
...
} else
{
...
}

http://ameblo.jp/principia-ca/entry-11573342807.html

  1. 復帰した旧masterが新masterになるわけじゃないんで「フェイルバック」 ではない感。
  2. sentinel 1台だと誤検知してもFOしちゃうので怖い。別ラックとかで複数sentinel配置すべきじゃないかなぁ。
  3. alias_ip_change.shは非常にまずい気がして、引数全く見てないのでFOが発動したときと完了したときの2回IP Alias切り替えちゃう。つまり元に戻るので落ちたmasterにVIPが付いちゃうんじゃないかなぁ?
  4. あとip addr del/addしたときって他サーバー/スイッチのarpテーブル/FDB更新されるんだっけ? Gratuitous ARP送ったほうがいいような気がするけどどうだろう?
  5. 注意点1はそんなことはなくて、ちゃんと引数をみてroleがleaderでstateがendのときだけVIPの移動処理すればOK 引数の説明はsentinel.confに書いてある
@syohex
syohex / fujiwara-aa.pl
Last active December 25, 2015 03:59
AA of fujiwara-san
#!perl
use strict;
use warnings;
use Furl;
use Imager;
use Text::AAlib qw(:all);
my $url = 'https://1.gravatar.com/avatar/ca6281fff64797dc419b78f51f25c0a5?d=https%3A%2F%2Fidenticons.github.com%2F51beaebc231c8720d18d10b0008693dc.png&s=420';
my $ua = Furl->new;
@Shinpeim
Shinpeim / 00.md
Last active October 31, 2024 05:59
Scala 入学式の資料

Better Java としての Scala

Hello World

  • src/main/scala/Main.scala
object Main {
  def main(args: Array[String]): Unit = {
    println("hello scala!")

もっとScala!

基本的なデータ構造 List

immutable なやつと mutable なやつがある。基本的に immutable なやつを使うべき。

scala.collection.immutable.List

最初からimportされてるので List で呼び出せる

my $db = Intern::Diary::DBI::Factory->new;
my $dbh = $db->dbh('intern_diary');
my $sth = $dbh->prepare(q[
INSERT INTO entry
SET
user_id = ?,
title = ?,
content = ?,
draft = ?,