「sub」を含む日記 RSS

はてなキーワード: subとは

2018-05-17

AtCoder Beginner Contestの問題を解きながら思ったこ

https://qiita.com/drken/items/fd4e5e3630d0f5859067 ← これ。

コンテスト自体が一問5分という制限があるためか、やっつけで片付ける事が目的ですよね。

結果としてビギナー所詮この程度とバカにしたようなコードしかない。

ガチ初心者ならそれで良いと思うけど、5分でさっと書ける実力のある人がそのコード残すの?

と思うと残念でならない。

私はプログラマでもないし、言語は一つしか使えないし、下手すると解くのに何時間もかかってしまうけど、

インターネット上に残るにはずっとマシなコードだと思ってる。

そして、初心者が成長に必要なのはこっちじゃない?って思う。

というか、私が欲しかったのは、そういう最低限問題が解けるだけの、

豚にメシをくれてやるような雑なコードじゃなかった。

たとえば、第 8 問: ABC 085 C - Otoshidama (300 点)。

パフォーマンス意識し始める問題

愚直にやると何回ループさせられるか分からないのだけど、

ここで重要な知見として

1 秒間で処理できる for 文ループの回数は、10^8=100,000,000 回程度

というのがあります

なんて書かれてる。

えー。私の環境、for(1..10**8) {} (本当に何もしない繰り返し)で3秒かかりました。

for(1..10**8) { i=0 } (変数になにか代入するだけ)で6~7秒くらい。

ガチ初心者は3重ループしなくて良いんだと気づけるだけで良い。

でもハエを払うように5分で済ませられる実力のある人だったらさぁ……

まず、総当たりする前にそもそも解があるか、超簡単確認くらいしようよ?

if ( is_resolvable(N, Y) ) {
    do_something(N, Y);
} else {
    print "-1 -1 -1";
}

sub is_resolvable() {
	if ( Y > 10000*$N ) { # Shortage
	    return 0; 
	} elsif ( $Y <  1000*$N ) { # Too much
	    return 0; 
	} else {
	    return 1;
	}
}

(is_resolvable()って、なんかDNS関係っぽくて好きじゃない名前だけど)

(追:&とか不等号が文字参照になって見づらいので置換。架空言語でも概略分かればいいじゃない……)

もしかして業界自力で出来るようにならない初心者は、必要のない初心者

もしくは、アウトプットするような人はみんな出来る人だから

本当に出来ない人がようやく越えられた一歩なんて、見落としてるのかな。

まぁ私自身は

 いじったらすごくなる → たーのし

 もうちょっとがんばっていじる → たーのし

最終的に10前後ループで済むようになって、

これってプログラミング醍醐味なのかしら?たーのしーと思いつつ、

最終的に丸一日かかって第8問が完成致しました。

2018-05-13

anond:20180513121659

Ruby なんて捨てようよ^^;

それはさておいても、複数言語で書き分けるのって色々面倒だよね。

変数に $ つけるんだっけ?なくてもいいんだっけ?と悩んだ挙句

変数に $が不要言語でも、常に $をつけてしまったり、

関数書くときsub だっけ? function だっけ?と悩むことがよくある。。

2018-04-23

サイバーリバタリアンからターナリスト達へ

DNSブロッキングってもしかしてもう始まってるのだろうか。生憎(一般コミック)に興味がないので、例の3サイトやらは使ってないから分からないが。そうだとしても、DNSが塞がれただけならIPアドレスを直打ちするか、hostsファイルを弄って正しい名前解決をさせればいいだけじゃないかなと思う。

ところで、そういう発想がポンと出てこないような低リテラシーなというか、情報弱者層がよく分からないままアホな事してるのを止めたい、ってパターナリズムは少し分かるところがある。何か高度なことをしようと思ったら、それ相応の学習をしなければならない。それが民主的社会を維持するためには必須から人民が賢くあろうとしないと判断能力すら育たない。でも学んだ人間が、意思思想をもってあえてルールを破ろうとする余地が一切残されていない社会健全とは言い難い。もしこうしたブロッキングが進んで、そういう余地が残されなくなってしまったら、本格的に日本社会主義国家とみなされるだろう。

私は、違法行為がなんの知識思想もない人間の手の届くところまで降りてきていることが真の問題だと思っている。昔を思い返せば、マジコンしろ、怪しげな中国企業提供していた無料音楽アプリしろ漫画村しろ、ああいものを利用していたのは無知蒙昧な一般人層だ。本当のギークは、そんな二次三次放流の広告つきサービスなんかには目もくれず、WinMXだとか、Winnyだとか、今だとtorrentだとかのP2Pソフト、あるいはMegaやRapidgatorのような海外アップローダーだとか、そういう所で割れリーチし、海外のなんちゃらHentaiやら、なんちゃらSharingやら、なんちゃらSubsのような、特に広告があるわけでもない、ガイジン有志の熱意と寄付運営されている海外フォーラムサイト英語にめげずに巡回していたはずだ。そうしたサイト上で形成されたコミュニティーでは、同好の士独自ポリシーを持って勝手アニメカルチャーを広めている。功罪あれど、役人たちがクールジャパンと呼ぶもの実態はそうした活動によって広まっていった側面が決して小さくない。例えばアニメについてはrawブラックだろうが、そもそも日本アニメがきちんと海外配信に向き合ってこなかったこと、字幕を機敏につけられる体制がなくファンによる違法subに頼るしかない状態が続いていることが元凶になっている。ゲームROMのような権利的に完全にアウトではあるがハッキングコミュニティと繋がっているものもあり、また海外ポルノ投稿サイトが最もブラウザ脆弱性を知り尽くし裏をかい広告を表示させる技術力を持っていたりするのもそうだが、大きく捉えればコンピュータ技術の発展とウェブアンダーグラウンドは切り離せない。そうした繋がりをパターナリズムによって断絶させようとするのなら、人間健全消費者になるどころか、ますます愚かで思想を持たない一般人で埋め尽くされるようになるだろう。低い者に合わせようとした結果だ。

そして、そうなった時代コンテンツ未来はどうなるかというと、すべてが同人活動になっていくだろう。既に絵や漫画twitterpixivを漁れば十分な量の娯楽が、絵師さんたちの手で自ら無料で公開されている。そこで絵師さんたちが求めているのは共感評価であって、貨幣ではない。その傾向が加速して、コンテンツに対価を払うとか面倒くさいことは避けて、自給自足で楽しみ合おうじゃないか、という世界になるだろう。動画制作も、ゲーム制作も、より誰でも手軽に十分な品質のものが作れる環境が急速に整ってくるだろう。Vtuberの人気もそのコンテキストで見ることができる。技術環境さえ整って個人Vtuberリッチな絵面になれば、より自由度の高い個人の方が強くなってくる。そして広告案件すらださずに伸び伸びと演じるキャラクターの方が好かれるようになってくる。そうやって貨幣でない評価基準に価値見出し、「足るを知」った人たちによる狭小住宅ならぬ狭小エコノミー多数派になる。経済的にみると泡沫のようなもの多種多様に出てくるだけだ。そこには国家が望むような経済的成長はないだろう。

2018-03-28

anond:20180328201940

これが真理。その発せられる言葉をそのまま理解するのが正しい鑑賞である

dub vs subの論争は低級である

2018-03-06

anond:20180306104748

ありがとう、それと元増田文との関係はなに?

Sub: 膨よかな女性こそが美人とされた時代が信じられない

日本史はこういうの勉強したほうがいい

に対して、

俺は個人的には性格重視、デブとかデブじゃないとか気にしない。そういう人もいるよ。

というのはやっぱおかしくない?俺がバカなだけな気がしてきたつらい

2018-02-25

anond:20180225011413

ソーシャルブックマーク限界じゃないですかね。

似たようなシステムreddit日本語圏は失速してしまいました。当時ニュー速Rというsubが立ち上がり、偶然にも人が集まったことで日本語圏が隆盛しました。設立当初のニュー速Rは増田の言う「リベラル理想主義的な立場で、技術社会を論じ」る場所として機能するようになり、非常に楽しい時間を過ごしました。

ですが、「弱者が声をあげやすくする」ことを金科玉条とするあの人たちが乗り込んできてから暗雲が立ち込めるようになりました。独りよがりな考えのもとに「貧困ネタ」を連日連夜Hotソートはてブでいうホッテントリ)にスパムしたのです。私や私と似たような考えの人たちは日本語圏の美風を守るために抗いました。ですが日本語圏を取り仕切るモデレーターからしてあの人たちのシンパかあるいはボンクラしかいなかったので、なす術なく敗れ去りました。今ではラヴォスが現れた地球のように何もない抜け殻となっています

日本語圏の隆盛から私が敗れ去るまでだいたい半年ほど、おそらくはてブの辿った歴史も時期の違いはあれ似たような内容ではないかと推測します。ソーシャルブックマークという場で、時事問題の論評を通して「技術社会を論じ」ることの限界が露呈したように思います時事問題というのは大なり小なり政治的です。故に時事問題の論評を通して「技術社会を論じ」ることは政治土俵に立つことを意味します。政治土俵にはあの人たちのように、無理が通れば道理が引っ込むを地で行く魑魅魍魎が跳梁跋扈しております。したがって「リベラル理想主義的な立場で、技術社会を論じ」るなんて望みようもありません。

それでも「リベラル理想主義的な立場で、技術社会を論じ」たいのなら、いか政治土俵に立つことな政治を語るかに腐心するのがよいのかなと思っています

2018-01-20

anond:20180120113943

カルチャーって、「言葉」とか「絵」とか「民俗」とか、人間が生み出すもの

上記のような、地域民俗などによっても異なるそれぞれの「言葉」「絵」「民俗」などをベースに、新しく生まれてきているものサブカルチャー

からsub下位概念という接頭語が付いていると学生時代に教わったよ。

具体的には、吟遊詩人クラシック音楽ぐらいまではカルチャー流行歌サブカルチャー、とか

神話古典文学ぐらいまでがカルチャー、それ以降はサブカルチャー、とか、

単純に、学問として腑分けできるぐらい固定化されているものなどがカルチャー、流動的なものサブカルチャーみたいに考えると分かりやすい。

2017-12-29

anond:20171229110515

Perl

use strict;
use warnings;
use feature 'say';

sub fz {
	my @pattern = @_;
	return sub { $pattern[(shift() - 1) % @pattern] };
}

my $fizz = fz("", "", "fizz");
my $buzz = fz("", "", "", "", "buzz");

foreach my $i (1..100) {
	say ($fizz->($i) . $buzz->($i) || $i);
}

https://ideone.com/mcc7kS

# use 5.xxxが使えない罠。

2017-11-26

昨日の振り返りと、今日TODOリスト

今日

オナニー

めし

 09:朝済み。3時のおやつ予定

 11:スーパーの帰りに柿ピーを食いながらw 部活帰りの中高生かw

 14:ファンタグレープ最近流行ってる。シャインマスカットのせいで。シャインマスカット、1房1000円w 地方物価が安い~~ww

    買う時に、グレープグレープフルーツ関係が気になった。どうなってんだこれ

    ネギ1本なかった・・。田舎使えねえ

    つうか、ここ最近エンゲル係数ry 収入家賃+食費+雑費。人生詰んだ

 18:すっげー久しぶりに豚ひき肉

乾燥 午前中は陽が出てるっぽいので、外に出すかも

 09:寒いので外には出さない。いつも締め切ってるカーテンを開けることで対応。完全ではないが、90割程度はいけるはず

 14:結構陽が出てる・・。外干しのほうがよかったかもね。気温もぐんぐんずいずい上昇してるし

観葉植物へ水やり。洗濯物の外干しと同時に

 09:洗濯物は出さないけど、観葉植物は外に出したw さみーよww 栄養剤霧吹きしたので、もう少ししたらしまう → しまった

☑掃き掃除

 09:気になってた廊下はやった。部屋もやりたいんだが、やりにくいんだよねえ。

   「ルンバ掃除をやるようになって、(ルンバが動きやすように)床置きを見直した」ってのあるけど、なるほどねえって思うわ

 14:ついでに玄関付近紅葉狩り実施。きれいになった

SQL勉強

読書漫画) 中国戦時代末期

 14:合従軍。10巻ぐらい飛ばしてもいいか

PC整備。Windows 8の画面が出ない。ネットに「HDMIじゃなくてD-Subだと出るかも」なんてあったけど、D-Subついてない。リモートでは出てるので、再起動か・・

 09:Alt+F4シャットダウンはした。再起動はまだ。シャットダウンする前に、ディスプレイ変更してみればよかったな。どうもLGのディスプレイ側でなにかありそうだし

 11:9時の更新後、取り掛かり。電源オン → ・・・しないw おまwww ベランダからPC背面のケーブル抜き差し、起動せず。強制断、起動した・・ 困ったね~~

    スチームセールのチェックするか

 14:スチームオータムセールはいまいちだな。クリスマスセールまで待ってもいいか

☑食料買い出し

 11:いちいへ。いまいち。なんだが、結構混んでる。意外にも、「早いうちに済まそう」ってやつ多いのか。ネギバラ売してなくて買えない

☑NichePhone-S様子見 例の煽り文句「全国で買えます!」って・・。自転車だと寒いので車で行こうかなあ

 09:会社帰りに遠回りしてってのもありっちゃありなんだが、使えない社員の尻拭いで突発で残業があって計算ができないんだわ

 11:もちろんまだ。地図を見ると、片道6km。無理。4kmのほうにいくかな。6kmのほうは電気屋+牛丼ぐらいだが、4kmのほうは帰りにネギおでんセットを買えるかも

 14:4km先へ自転車こいで。展示なし。店員にも聞かず。はいはい全国展開。ヨドバシにはあるみたいだが、電車に乗っていくのもねえ・・。

    アマゾン在庫ありとかそういう話じゃない。都市部にいく機会があり、そのとき店頭在庫あり、までスルーでいいか

 

・9時更新

ちんまいのはあらかた終わった感じ。これから近所のスーパーへ徒歩で食料買い出し行って、その後どの程度やる気が残ってるかだな

・11時更新

必須のは完了。あとはオプションライフハックだが・・。

これがなかなかできない。昨日はなんとかジョギングしたが、11月は6kmx4回のみ・・。やる気でねえ~~

・14時更新

にっちほんなし。知ってた。あとはSQLだな。阿部がうぜえからストレスでなかなか進まないんだよねえ・・。

・18時更新

あとはげつようびを思って死ぬだけ

 

昨日

https://anond.hatelabo.jp/20171125110902

オナニー

☑朝昼飯

洗濯

 x乾かない

□掃き掃除

 あえてやらない。どうせきれいだし

ジョギング

SQL勉強

 なぜか進まない。会社底辺で、優秀な派遣すぎて情報が回ってこなくてつらい

読書漫画

2017-09-03

失敗した失敗した失敗した失敗した失敗した失敗した失敗した

ログイン間違って分野限定ブログ専用サブアカウントブックマークてへんコメントを公開してしまった

このアカウントでははてなブックマーク使用を開始していなかったはずなのにどうしてこのサブアカウント動作したんだ

いったいどのタイミングログインするとはてなブックマーク使用開始確認ページをバイパスするんだ


……いや、いいや報告も検証も面倒だ

サブアカウント消そう


AというアカウントログインしているとサブアカウントBのブログ編集ができないのはなんとかして欲しい

クッキー有効範囲関係でうまく情報共有できないのはわかるけどそれでもなんとかして欲しい


ああそうだ余談だけどはてなサブアカウント登録gmailhoge+sub形式メールアドレスが通るよ(すくなくとも現時点では)

用途分野ごとに完全新規gmailアドレス用意してたのがバカみたいだね

2017-08-01

FizzBuzz問題

プログラミング問題だけど高校一年生までの数学の考え方で解決できる。嬉しい。

FizzBuzz問題とは

1 から順に数を数えていく。但し、その数が 3 で割り切れるならば数字の代わりに Fizz と、5 で割り切れるなら Buzz と言うゲーム。3 でも 5 でも割り切れる場合は、FizzBuzz の順に言う。

はてなキーワードより引用

これをプログラミングするのがFizzBuzz問題です。

具体化

1から15までの例を考えてみる。

入力出力
11
22
3Fizz
44
5Buzz
6Fizz
77
88
9Fizz
10Buzz
1111
12Fizz
1313
1414
15FizzBuzz

一般

入力と出力の関係を考えると、入力が定まれば、出力も一意に定まることが分かる。つまり入力と出力の関係関数にすることができる。この関数f(x)とする。

関数f(x)は、入力が3の倍数なら"Fizz"、5の倍数なら"Buzz"、3と5の公倍数なら"FizzBuzz"、その他は入力値を返す。

公倍数は最小公倍数を整数倍した値なので、ある値が公倍数であるかどうか判断するには、最小公倍数で割ってみて、割り切れるかを調べることにする。

3と5の最小公倍数は15なので、15で試しに割ってみて、割り切れるかどうかを見る。

3と5の倍数の判定も、それぞれ、3と5で割り切れるかどうかを見る。

コード

使う言語Perlである

Perlは、上から順に命令を実行する命令言語なので、3や5の倍数の判定の前に、15の倍数の判定を持ってくる。

逆にすると、15の倍数は3の倍数であり、5の倍数でもあるため、"FizzBuzz"が必要な所が"Fizz"や"Buzz"だけになってしまう。

use 5.024;
use warnings;

sub f {
	my ($x) = @_;

	if (($x % 15) == 0) {
		return "FizzBuzz";
	}
	if (($x % 5) == 0) {
		return "Buzz";
	}
	if (($x % 3) == 0) {
		return "Fizz";
	}

	return $x;
}

foreach my $i (1..100) {
	say f($i);
}

2017-07-14

かんぺきなぷろぐらみんぐ

Sub workbook_open()

Dim t As Variant

t = Time

t = Mid(t, 1, 2)

If t < 9 And 12 Then

ElseIf t < 13 And 18 Then

Else

ActiveSheet.Shapes.Range(Array("Oval 1")).Select

Selection.ShapeRange.IncrementLeft 31.5

End If

End Sub

ハハハ!これでファイルを開いた時が午前中だったら図形はAMの所に!

午後だったらPMの方に図形が自動的に移動される!

自分の才能が怖いぃ!

2017-01-26

はてブ非表示にしてるユーザー一覧

ryun_ryun

nao0990

charismanbou

nn1021

crapman

kono-tsuka

lettuce0831

GreenTopTube

dogear1988

cider_kondo

penguaholic

zyzy

ROYGB

hobo_king

ho4416

iku-sawa11

pew

houjiT

potekenpi

anpo-sumeragi

yunitaro

augsUK

arata2515

sugawara1991

miz999

youkass912

sny22015

technocutzero

sarubobox

world3

yosidayosio1108

yoppu7

takaboujp1122

neririumeneri

sou0509

Kitajgorodskij

yokobentaro

iwatako

miya_si2

conandaisuki

keisolutions

WARERO_006

satohikabass

rikunomaou

Uuu29

yoshimatsutakeshi

n-i-vandit0924

kamabokoo

yonenatu

makesfun1170

kanonote

reteria

mottii-cocoa

KAERUSAN

cenecio

yaki295han

roll8

ShakeOff

takesan30cm

takesan30cm

maxminkun

mtasam

esameo201611

bsrk31

katsuo_report

berlin1939

alivekanade

ktra

Fubar

kiichi55

koyhoge

zapperd

Sigma

tomoya_edw

meeakat

warulaw

tSU_RooT

lavandin

siomaruko

atsupi0420

yztm

grizzly1

aoi_tomoyuki

plagmaticjam

nijitaro

r_riv

gunjoutarou

chabooooo

papasss

pertricks

dark

kuraruk

yuicuts

TechBisco

xevra

jmako

capsxen

ketudan

mobile_neko

T-men98

taccuma-jp

tonkotutarou

gustave_buzz

junk6

rosaline

lamiel123

cloudliner

satoshique

yoshinon

osugi3y

hiccha-ya-re

akikonian

amematarou

youco45

mcbiophys

yumenoa

yoko-hirom

mesotaro

watto

mythm

mocchi_rie

vanish_l2

Mofuyuki

tajimark

wisboot

gptsuchiya

s17er

touhu1018

Polyhymnia

shimarisugi

singo2nd

prosyu

metamix

gyakufunsya_brain

kabatan001

rockfishing

timetrain

shira0211tama

mogmognya

k_gobo

shimokiyo

extra63

LaNotte

anoncom

bocbqcmn

Jcm

neogratche

akarin183

takatama

yoheimuta

kappei

ofayoyuly

w-yakyuuboy

cloudsalon

yukiko_tea

yuki1995jp

kobabiz

kumasi

blueradiobird

hogehoge223

masatygames

santambo

bg4kids

hanabiagaru

nomoneynofreedom

hiroti3

gorigori_GG

fuutaro00001

tanaboo

applebaka

master3954

maxa55

MoneyReport

kingqoo3

unnamable

benkyoumap

yukilingo

ikedayuuto

tettunn

akabaneyama150

tusagi

andshesaid

yonjyoudansi

kkvv

pojihiguma

kanother

tapazou

fuwa2730

Mediocrity

sub-camel

otakuchblog

kinako222

meganeshufu

toianna

dararinchan

bronson69

hitode99

hu_kaa

capek5c

kaomojiblog

RRRQ

s_dango

sakatsu_kana

shimashimanegigi

coconoo

pfassistant

nextfrontierym

make_usagi

goodrock

sf0vtnfx

Pagg_Beta

colorfullylife

fukai19930806347

high_grade_works

zorazora

tomoiku21century

aoikawano

TAKAMISAWA

syofuso

Erl

chancepapa

hakoroid

g8g7itbg

Ray-Honoka

btomotomo

upuptou

renkonreiko16

jrockford

rich7

masarin-m

repiragin

nekofantasy

shimma0413

aatanaka

necole_kidman

green1111

pavement1234

gggc

kuatazu

shinth1

sukekyo

ext3

taionK

kzymtn

hisawooo

mika522

seiyuDB

mugi-yama

junpei191

tikani_nemuru_M

taruhachi

c_lindenbaum

goingzero

yuriyuri14

jou2

nakoton

sharia

kuzudokuzu

north_god

mouseion

nost0nost

fukken

yoiIT

B-CHAN

yP0hKHY1zj

oooooo4150

flagburner

washi-mizok

sato0427

miyadai454

k-noto3

kazgeo

leiqunni

dot

mobits

houyhnhm

wqv5mbs2

netcraft3

hamachang1111

Daisuke-Tsuchiya

bonpusan

lacucaracha

suzukidesu23

yutoma233

maruhoi1

snobbishinsomniac

Gl17

belka1009

sander

Utasinai

toronei

porimern

keino

hirobuu005

rjbook

qaroro

fc2no10

ha-in

nakajo

LINETRIO

bentencho

yukikeiichi

taguchizu

zetakun

re1life


http://anond.hatelabo.jp/20170126124834

お前にだけいい格好させるかよ

2016-03-17

生物の分類

http://www.triplefalcon.com/Lexicon/Life-1.htm

生物の分類

  • 界(kingdom)
  • 門(phylum)
  • 網(class)
  • 目(order)
  • 科(family)
  • 属(genus)
  • 種(sapiens)

上-(super-),亜-(sub-)と分類することもある.

界の分類

モネラ界(monera)

原核生物.他はすべて真核生物

原生生物界(protoctista)

原核生物でなく,動物植物,菌でもない例外

菌界(fungi)

カビ,きのこなど胞子をだすもの

植物界(plantae)

細胞,有性生殖葉緑体などの特徴をもつもの

動物界(animalia)

細胞,有性生殖などの特徴をもつもの

2016-01-29

こんなEXCELマクロやばい

・textbox1から100まである。(名前を変えない)

グローバル変数がすべてセルに格納されている。

変数名はrange("c72")とか)

ソースを見ても処理がどうやって動いてるのか分からない。

セルチェンジイベントやformのloadイベントで処理がつながっていた。

(多分関数名でshift +F2とか使ったことがない)

・毎朝、自動で動かしたい→タイマーコントロール時間設定(帰る前に毎日設定。タスクは知らない)

DBデータを1件更新する→全件とってきて全件まわしながらIF文で更新データ判別

業務ロジックはvlookup

マクロを使って、dbからデータをシートに転記して、5回以上ネストしたvlookupやらiserrorやら

index関数がちりばめられたシートで報告書作成印刷マクロ

関数の書いてあるセルしか処理はできない。)

・すべてSUB

ネットからコピペしたfunctionはあるが、自作したfunction多分ない。

値を返すならどっかのセルに突っ込むだけ。

classなんてもってのほか

うちの会社はこんな感じのEXCELマクロによって動いてる。その数、数百本。

2015-11-22

githubアカウントを凍結されても解除してくれなかった話

この話題過去2ちゃん投稿したんだけ増田にも書いておく。

githubアカウントを凍結されたけど、「私はスパムではない」と連絡しても解除してくれなかった。

私はgithub初心者である

メインアカウント(以下Mainと呼ぶ)ではissueでバグ報告とソースコードダウンロードのためにgit cloneする程度に利用。

サブアカウント(以下Subと呼ぶ)はMainとのフォークとプルリクの練習のために作成した。

ちなみにSub登録してから何もせず、1年以上寝かせてから練習に使い出した。

凍結される原因になったと思われる内容


Sub登録したメールアドレスで、githubサポートBOTスパムではない事を伝えたけど、あなたを疑うとメールで返されて結局解除されなかった。

MainSubが同一人物だということも知ってた。

Mainも凍結されるのかと思ったけど、されなかった。ひょっとしたら第三者リポジトリでissueを書いて貢献してたからだろうか。

githubに連絡をすれば凍結解除してもらえるという記事もあるが100%解除してくれるわけではない。

凍結してから初めて利用規約を読んだけど、無料アカウント複数作成することを禁止することが明記されていた。

よくgithubで複垢を運用する記事を見かけるけど、これらの記事規約違反を勧めているってことなんだよね。

わざわざ1サービスアカウントを凍結されたことを記事にする人なんていないだろう。

有料アカウント無料アカウント練習してたら凍結されてなかったに違いない。

凍結されて分かったこと


解除されるか否かのさじ加減は担当サポートによるのかもしれない。

2014-10-03

http://anond.hatelabo.jp/20141002222733

Sub test()
    Dim re      As New RegExp
    Dim ws      As Worksheet
    Dim buff    As Variant
    Dim i       As Long
    
    'initialize
    Set ws = ActiveSheet
    buff = ws.UsedRange
    ReDim Preserve buff(1 To ws.UsedRange.Rows.Count, 1 To 2)
    
    'setting RegularExpression
    re.Pattern = ".*\((.*)\).*"
    re.IgnoreCase = True
    re.Global = True

    'Get Information
    For i = LBound(buff, 1) To UBound(buff, 1)
        buff(i, 2) = re.Replace(buff(i, 1), "$1")
        buff(i, 2) = Replace(buff(i, 2), buff(i, 1), "")
    Next

    'Paste
    ws.Range(Cells(1, 1), Cells(UBound(buff, 1), 2)) = buff
    
End Sub

やや冗長かもしれないけど俺だったらこう書くなあ。(RegExpクラスを利用するための参照設定は忘れずに!)

ループでワークシートのセルアクセスすると行数増えた時に使い物にならなくなるから、シートの値は必ず二次元配列に移して処理してるわ。

久々にプログラミングしたけどやっぱおもしれぇ!

求める答えが同じでもプログラミングする人のソースコードに対する思想の違いが顕著に表れるもんなー。

2014-06-27

Rails】2000万円で売れたエロサイト(秒間1000PV)をサーバー2台でさばいた方法

こんにちは都内に住む文系大学生です。以前にこんな記事を書きました。

文系大学生夏休みエロサイトを作った、そのまとめ(結構長文)

http://anond.hatelabo.jp/20130924220221


作成から数ヶ月が経過し、1日のPV数が1日70万を超え、売上は月80万を超えておりました。

記事自動生成しておりましたので、特に手間ひまをかけることのなく不労所得でした。

ところで私のスペックは下記のとおりです。

大学生、まして文系であれば時間も有る、金も有る、そうなればすることと言ったらセックスです。

ほぼ毎日デリヘルを呼んだり、ピンサロ女の子を店外デートに誘いセックスをしておりました。

私が好きなピンサロ川崎五反田にあります個人的にはソープよりもピンサロ派なのです。

まぁこはいいです。


そんな生活を過ごしておりますと、とある企業様より「そのサイトを買いたいので、ご希望金額を提示してくれ」とのメールを受信しました。

私は悩みました、月に80万の収入を捨てるのは惜しい、栄枯盛衰という言葉があるようにいつまでこのバブリーな生活が続くか分からない、と。

しかし二晩寝ずに考えた末、売ることに決めました、私はマンションが欲しかったのです。大学生マンションを持ってるとデリヘル嬢に自慢したかったのです。

そこで2年で回収できると見込み、私は2000万円を提示しました。即日、先方よりOKが出ました。

そしてそのお金マンション中古ですが。。。)を一括購入し、今に至ります。あの不動産屋の驚いた顔が忘れられません。


さて月日が流れ、売却先の業者様より「新しくエロサイトを作りたいのだが、利益折半で一緒にどう?」とお誘いのメールを頂きました。

文系なんてのは暇でやることが無いので、私は即日OK!しました。

そして先日完成したので、下記にアップします。

エロ動画

http://av-erodouga.com/

Xvideos動画から変わったところ

前に作ったものブラッシュアップしたことといえば、

です。

あのCookpadでも使われているVarnishで大量のアクセスを捌く

さて今回はどのように秒間1000リクエストを2台のサーバーでさばいているか説明します。

他の情報って、サイトを作る!ということにばかり焦点があたっており、大量のアクセスを捌く方法までは紹介していないのがほとんどです。

特に男性の方々はご存知のように、エロサイトってのは夜にアクセスが集中します。夜にオナニーをするからですね。

今回のサイトではVarnishというリバースプロキシソフトを使い、それを実現しております。他にはNginxSquidなどが挙げられますが、設定を柔軟に行える点、リバースプロキシに重きをおいている点、およびVarnishが高速な点を重視し、採択しています

また優秀なエンジニアがいることで有名なCookpadでも採用されている実績があります


リバースプロキシについて、知らない方もいらっしゃることかと思いますので、簡単に説明します。


通常Railsウェブサービスを立ち上げた場合ユーザーがそのウェブサービスアクセスをすると、サーバーの中ではまずApacheなどのウェブサーバーソフトウェアユーザーからHTTPリクエストが回されます

ウェブサーバーソフトウェアはその都度予め用意しているミドルウェアRails場合PassengerUnicorn)を通して、Railsに「こんなデータをくれ!」とお願いを出します。

Railsはこれまたその都度データベースアクセスし、データを読み込み、Apacheデータを返します。

ApacheHTTPレスポンスとして、そのHTMLを含むデータユーザーに渡しブラウザに表示するわけです。

誤解を恐れずに申し上げると、Railsは遅いです。「遅くない!プンスカ!」と憤慨される方もいらっしゃると思うのですが、相対的に見ると遅いです。

※参考

16の言語と57のフレームワークを比較したベンチマークが凄い | A-Listers

じゃあどうすればいいかというと、なるべくRailsに処理をさせなければよいのです。そこで出てくるのが、Varnishの一機能であるキャッシュです。

どういうことかというと、今回のエロサイト場合ユーザーに見せる情報というのはユーザーによって異なっているわけでもなく、時間が変わってもそうそ情報量は変化するわけでもありません。

その場合、一度アクセスされたURLに関しては一定時間ためておけば良い、ということになります。これがキャッシュです。

システムは学ぶより、まずはソース、下記を御覧ください。エロ動画侍のvarnishの設定ファイルです。必要な箇所にコメントを挿入しました。

面白いのは、設定ファイルのはずなのに非常にプログラミングらしい、という点だと思います。人によるかもしれませんが、ApacheとかNginxなどの設定ファイルより僕はこのほうが見やすくて好きです。

C言語とかも挿入できるようでして、それを使ってmemcachedからキャッシュを引っこ抜いたりも出来ます。私はそこまでしてません。

backend default {
     # ウェブサーバー情報
    .host = "127.0.0.1";
    .port = "33333";
}

sub detect_device {
    # 端末によってキャッシュを変更している。PC場合はそれ用のキャッシュスマホならそれ用のキャッシュを保持している。
    set req.http.X-Device = "pc";

    if(req.http.User-Agent ~ "iP(hone|od)" || req.http.User-Agent ~ "Android" || req.http.User-Agent ~ "Symbian")
    {
            set req.http.X-Device = "mobile";
    }

    if(req.http.User-Agent ~ "^PalmSource")
    {
            set req.http.X-Device = "mobile";
    }

    if(req.http.User-Agent ~ "Build/FROYO" || req.http.User-Agent ~ "XOOM" )
    {
            set req.http.X-Device = "pc";
    }
}

sub vcl_recv {
    call detect_device;

    # キャッシュしたくないURLを選択している。
    if(req.url ~ "/eroine" || req.url ~ "/admin" || req.url ~ "/ranking_counter" || req.url ~ "/actresses/[0-9]+//"){
        return(pipe);
    }
    # graceful mode
    set req.grace = 30m;
    return(lookup);
}

 sub vcl_pipe {
     return (pipe);
 }

 sub vcl_pass {
     return (pass);
 }

 sub vcl_hash {
     hash_data(req.url);
     if (req.http.host) {
         hash_data(req.http.host);
     } else {
         hash_data(server.ip);
     }
     if (req.http.X-Device) {
         hash_data(req.http.X-Device);
     }

     return (hash);
 }

 sub vcl_hit {
     return (deliver);
 }

 sub vcl_miss {
     return (fetch);
 }

 sub vcl_fetch {
     # キャッシュ有効時間を設定している。
     set beresp.ttl = 10m;
     set beresp.grace = 30m;
     return (deliver);
 }

 sub vcl_deliver {
     return (deliver);
 }

 sub vcl_error {
     set obj.http.Content-Type = "text/html; charset=utf-8";
     set obj.http.Retry-After = "5";
     return (deliver);
 }

 sub vcl_init {
        return (ok);
 }

 sub vcl_fini {
        return (ok);
 }

補足説明をしておくと、キャッシュには有効時間があります。上記では10分で設定しており、その有効時間が切れると格納されているキャッシュを破棄し、Apacheなどのウェブサーバーソフトウェアコールしにいきます

ここで瞬間的なアクセス量が多いサイトには1つの問題が生じますキャッシュ有効時間が切れた時、新たにキャッシュが作られるまでの間、大量のリクエストウェブサーバーソフトウェアに届くことになります問題になることはそこまでは多くないのですが、あまりよろしくない。

これをThundering Herd問題といいますが、Varnishでは新たにキャッシュが作られるまでVarnishに待ちを作ります。一度キャッシュが作られてから、貯まったリクエストを一気に処理するわけです。

ただこれでもVarnishの負荷が高まり、あまりよろしくない。そこでgraceful modeという方法を使います

どういうことかというと、キャッシュ有効時間が切れた場合でも、新たにキャッシュが作られるまでは古いキャッシュアクセスさせます。それがgraceful modeです。巨大ウェブサービスを考えている方は是非検討してみてください。


エロサイトを本気で考えている方は、もちろんアプリケーションの表側を作ることも大事ですが、是非それを処理するサーバーのことも考えてみるといいかもです。エロ男性全員を対象としているので、思った以上にものすごいアクセスが来ます

と散々エロサイト作成について勧めてまいりましたが、エロサイト少子高齢化社会を更に促進させたり、ティッシュの大量消費による森林伐採にも微力ながら影響を与える、そんな現実も知って下さい。

文系大学生でした。


※ちなみに個人事業主から株式会社へとグレードアップしました。おおよそ年収700万円が登記するかしないかの境です。700万円を超えると、登記したほうが税金上お得です。

参考サイト

第11回 [キャリアアップ編③]varnishを使おう:使える!サーバ運用の実践テクニック|gihyo.jp … 技術評論社

素人速報

2014-02-20

tateyou.sub.jp 経由のtwitter認証スパム釣り文言一覧

とりあえず取り急ぎ。絶対スパム認証NG!だからね!!

http://tateyou.sub.jp/hb/hb.html 【 衝撃事実 】 これなーんだ? 答えを知ってしまうと 人生観が変わってしま画像

http://tateyou.sub.jp/qt/qt.html 【マジか?】 わずか5秒で 「嘘が上手」 か 「嘘が下手」 が分かる方法があるらしいwww

http://tateyou.sub.jp/kibi/kibi.html 【 話題の画像 】 気づいてしまうと思わず 悲鳴を上げてしま写真!! 写真秘密

http://tateyou.sub.jp/kb/kb.htmlマジでヤバい 】 一枚の金髪美女写真 何が怖いか分かりますか? 何も無い写真に見えますが… 真実はコチラ

http://tateyou.sub.jp/kg/kg.html 【 この画像何だか分かる!?】 3秒で分かったら芸術家 1分で分かったら普通の人 3分以上かかったら疲れているかも!! 正解はこちら

http://tateyou.sub.jp/nounen/nounen.html画像流出能年玲奈ちゃんの卒アル写真が 別人すぎると話題にwww 詳細はコチラ

http://tateyou.sub.jp/serina/serina.html芹那が消えた理由!? 】 2014年に入って 消えつつある “ 芹那 ” その理由と、声&喋り方が 普通だったころの動画はこちら

http://tateyou.sub.jp/hebi/hebi.html 【 怖すぎ­注意 ­】­ 猛毒ヘ­ビ­の­毒­一­滴­が­ 人­間­の­血液を ­一­瞬­に­し­て­変­えるさま! ▼動画はコチラ▼

http://tateyou.sub.jp/nyan/nyan.html危機一髪ワンコに追いかけられる ニャンコが魅せた!! 映画のワンシーンのような 逃走方法が話題wwww 動画はコチラ

http://tateyou.sub.jp/pf/pf.htmlカップル下半身が入れ替わる超衝撃動画画像を見て下さい! 上半身だけになっています動画はコチラ

http://tateyou.sub.jp/hsa/hsa.html悲報橋本愛(18)が激太り!! 完全劣化だと話題に!! 画像はコチラ

http://tateyou.sub.jp/hira/hira.html 【 閲覧注意 】 平山あやがめちゃくちゃ 劣化してると話題に!! 画像はコチラ

http://tateyou.sub.jp/sexy/sexy.htmlセクシー美女画像】 驚異の的中率! 男性心を100%見透かす! 自分の心がどのように 見透かされているのか 知りたい方はコチラ

http://tateyou.sub.jp/hy/hy.html

http://tateyou.sub.jp/tb/tb.html 【 これはスゴい 】 『意外と知らない!!  効率のいい食べ方5選』 今すぐ動画をチェック!

http://tateyou.sub.jp/src/index.html

http://tateyou.sub.jp/pet/pet.html

http://tateyou.sub.jp/kando/kando.html 【 感動動画YouTube再生回数3600万突破! 「子犬と馬の友情」 を描いた動画が大ヒット!! 動画はコチラ

http://tateyou.sub.jp/is/is.html

http://tateyou.sub.jp/5zukei/5zukei.html 5つのから選んだ図形で 性格を診断するテストが めちゃくちゃ当たると話題!!

http://tateyou.sub.jp/nm/nm.html 【 衝撃 】 サザエさん波平にそっくりすぎる声がYouTubeで公開され大反響!! その動画がコチラ

http://tateyou.sub.jp/ia/ia.html放送事故イッテQ放送事故www おっpいポロリwww 詳細はコチラ

http://tateyou.sub.jp/1gai/1gai.html芸能人の意外な兄弟姉妹を拝見! 『剛力彩芽の姉』 『小栗旬の兄』 『板野友美の妹』 『木村拓哉の弟』 『桜井翔の妹』etc・・・ 詳細はコチラ

http://tateyou.sub.jp/yrsg/yrsg.html 【 やりすぎ都市伝説 】で 放送された話題の心理テスト自分が一番大事にしているモノが 分かるらしい!? テストはコチラ

2014-02-07

三重野さんの場合

昔の三重野さん

破産JM牧場三重野丈一【抵当権

http://www.logsoku.com/r/market/1212766612/

【緊急招集JM牧場経営危機??

http://fx-history.com/2ch/market/1206350628/

最近三重野さん

会社概要玄米米屋

http://www.yakigome.com/user_data/home.php?top=companyinfo&sub=&html=&site=home

有限会社 日本一安い罠の店

http://nihonichi.info/company/index.html#03

マヌケ投資家を集めて黒豚オーナーを募っていたが破たんさせて集めていた資金殆ど返却せず、

新たに会社を興して、現在は同じ場所で色んなお米やら罠の店を作って頑張っておられるのですね。

日本投資される方はお金持ちで、大人しい方が多いという事でしょう。

有限責任にする為に会社組織にするのでしょうが、まぁ、そういう事ですよ。

2014-01-14

目標達成までの道のり

----------------------

1 地図の作製(作業労力 20/100)

まず、自分が今どこにいて、いつまでに、どこへ行くのか確かめる。

自分現在地を知る(作業労力 8/100)
  1. 今の立場(肩書き・役割、年齢・学年・キャリア):
  2. 能力(持っている力、足りない力、欲しい力):
  3. やる気(やりたいこと):
  4. 解決したい/すべき問題:
  5. 余裕(心理的、体力的、財政的、時間的):
  6. 環境(期待できる援助、想定できる障害・制約・邪魔):
目標を設定する(作業労力 8/100)
  1. 究極的な目標 Ultimate goal
    • 何をするために目標を設定して、最後最後にどうなりたいのか、どうしたいのか。大きな理想を掲げておく。始めから本心でなくても構わない、それが建前でも大義名分世間体のためでも充分。世の中を良くするために、自分努力する。それが基本理念になっていると、誤った方向へ努力するのを避けられる。
  2. インゴール Main goal
    • 何をしたい? どうなっていたい? 今から挑戦しようとしていることを一言で表す。
  3. サブゴール Sub goal

※ゴールの形を複数設定する。成長と努力のどちらも実感しながら進む。最大の成果・最低の合格ラインを想定する(ベストシナリオワーストシナリオ)。理想は高く掲げる。でも思い通りにならないのが現実で、それでもたどり着けるところまで進む。

目標達成後の目標 (作業労力 2/100)
  • 目標を達成したら得られるもの(できるようになっていること。新しい立場。期待できる影響)
  • 長期目標(5年先、10年先)
  • 中期目標(1年から3年先)

※ゴールした後のことを考える。目標達成で燃え尽きてしまわないために。油断しないために。反対に、挫折してもまた先を見据えて立ち上がる力にするために。

評価方法の決定(作業労力 1/100)

自己満足で終わらせないために、客観的な評価の仕方・基準を用意する。あるいは、評価してくれる人を探す。

締め切りを設定する(作業労力 1/100)

残り時間を把握して、カウントダウンを開始する。

カウントダウンをするために、締め切りの日を「○月○日何時」ときちんと設定する。

----------------------

2 下ごしらえ(作業労力 15/100)

  1. チェックリストを作る(作業労力 10/100)
  2. 活用できそうな素材をリサーチして手に入れる(作業労力 5/100)

----------------------

3 作業工程の分解(作業労力 15/100)

  1. チェックリストを更新する(作業労力 5/100)
  2. 作業時間見積もる(作業労力 5/100)
  3. 目標マッチしているか見比べる。(作業労力 5/100)
    • やりたいこと(目標)とやること(作業)にずれがあると感じたら、目標と作業のどちらかを見直す。

----------------------

4 実行する(作業労力 40/100)

----------------------

5 終わらせる(作業労力 10/100)

評価する
  1. 達成した:達成度は、
  2. 未達成:進捗度は、  /100

目標を達成できたか否か

振り返る
  1. 達成できたなら、次の目標へ向かう。
  2. 達成できなかった場合

失敗したなら、計画を改善する必要がある。もっと細かく分解できる作業が必ずあるはず。チェックリストを洗い直す。達成した場合でも、もし「もう一度挑戦するなら」と考えてみる。もっと賢く、もっと早く達成するための工夫を止めない。

「日誌のひな形、タスクマネージメントテンプレート

作業を記録するために進捗日誌をつける。進み具合を毎日必ず記録に残す。主観的でいいので、今日の達成度に数字を振る。数字を積み上げている実感が得られる。

----------------------(作業前に準備)----------------------

作業)作業名。作業内容。
開始時刻)今日、どのタイミングで作業に取りかかる/とりかかった?
終了時刻)締め切りは?終了のタイミングは?
  • 大まかに、「退勤まで」「就寝まで」「お昼まで」。時間見積もれない場合、その日の「就寝まで」と設定する。必ず時間で区切る。必ず自動的強制的)に作業を終了させるのが目的。終了させることで作業を見直させる。これで先々、時間見積もることができる。片付かない(未了)ならスピードアップか作業をより細かく分解する対応策を加えて再チャレンジする。「終わるまでやる」「終わらせる」は御法度。長くても一日単位の作業にして、就寝までに終える。
見積り作業時間)片付けるのにどれくらい時間がかかりそう?
  • 終了時間予測する練習になる。作業をよりシンプルにするため、無理のない計画にするために、予定通りに終わったか終わらなかったかをはっきりさせる必要がある。
見積り作業量(Effort allocation))この作業をやっつけるには全工程に占める労力の何%程度が必要
  • 目的は、全体の残り時間と作業量の配分を意識すること。ちゃんと前進している実感を得ること。数値の変化を示して、モチベーションや緊張感を維持する。進捗量が少ない作業(書類手続きだとか、チェックリス作成とか、毎日課題設定と日誌の記録だとか)に時間を取られすぎないようにする。これらが一週間以上、一日以上、一時間以上、手間取るようなら別の作業に移る。作業を分解できないか振り返る。労力を見積もることで1%の労力にどれくらい時間を使ったか後で振り返ることができる。
次のアクション)作業終了後のアクションを準備しておく。
  1. A) 完了 次のタスクに向かう。設定タスクの見直しと全体の俯瞰。(全体の何%片付いた?)
  2. B) 未了 進捗を数値で自己評価する(作業の何%進んだ?)。改善策を示す。作業をさらに細かく分解する。スケジュールを組み直す(繰り返すか後回しにするか)。
    • 最終的に一つの作業工程を一日以内で片付くサイズまで分解するのが狙い。そうすると無意識に後回し/手付かずになる心理を避けられる、遅れを取り返すチャンスが高まる。後回しにする場合、次に手をかけるきっかけを設定する。残り何日とか別のパートが片付いたらとか。
  3. C) 想定されるアクシデント 事実の把握。理由付け。対応策とその狙い。

----------------------(作業中・作業後)----------------------

内容の記録

(作業を停滞させないための自問自答)
  1. 今どれくらい進んでる?
  2. どの作業を終える?
  3. 完了するとそれはどういう状態になってる?
  4. 何のためにやる?
  5. 誰が評価する?
  6. バックアッププラン
(終了後の質問
  1. 終わった?>>
    1. 全体の何%片付いた?
    2. 次に何をする?
    3. またやるときにはもっと早くできる?
  2. 終わらなかった?>>
    1. 進んだ?
      1. (進んだのなら)あとどれくらいの時間で片付きそう?
      2. (進まなかったなら)なぜ?どうする?作業が大きすぎる。もっと小さく分解できるはず。どう分解できる?
想定外の障害)トラブルを記録して、今後に活かす。
  • ロスタイムとトラブった状況を記録する。戸惑った心理状態や理由も書き留める。対応策・代替案・決断があれば、それも書き留めておく。悩んだり迷ったりしたままなら、悩んでいられる期間を区切る。時間になったら問題を誰かに報告して、自分は一度問題から離れる。強制的に別の作業に取りかかる。
アーカイブ ヘルプ
ログイン ユーザー登録
ようこそ ゲスト さん