はてなキーワード: .NEWとは
JavaScriptで、配列を各要素がユニークな新規オブジェクトになるよう初期化したい。
Rubyの
ary = Array.new(8) { Hash.new }
単純な実装としては
const ary = []; for(let i; i < 8; i++){ ary[i] = {}; }
みたいな感じだけれどもこれはなんとも微妙である。ワンライナーで書きたい。
ちょっとかっこつけると
const ary = Array.call(null, ...Array(8)).map(() => { return {}; } );
とか
const ary = [...Array(8)].map(() => new Object() );
とかできなくもないけど、これらもどうにも不格好である。
何かもっとシンプルでクレバーでスマートなやり方はないものであろうか。
const ary = Array(3).map(()=> new Object());
とかできたらよかったのだけれども、残念ながら空要素はスキップされるらしく、これでは空配列が返ってくるから
一旦展開させてundefinedで埋めた配列を生成してからmapしなければいけないらしい。最終的に得たい配列が1つなのに、その前に別の配列を2つも生成するのが気持ち悪い。
皆さんこんにちは。
anond.hatelabo.jp/20160728000910
どこの田舎に住んでるんだろう。多様性を知らず、自分の良いと思ったものは誰もがそうだと思えるほどの想像力の無さ。ダメ親だな。中卒専業主婦とか?
togetter.com/li/1008595
というレッテル貼りですね。
deniirotwitter.publog.jp/archives/1059729090.html
子供に性的暴行するような親になるから止めときなよ。ここまでクズならパイプカットしたらいいよ。死ねば誰かが喜ぶような人生になりそう。
togetter.com/li/1004839
無知は害だな。動物飼育はもっと規制されるべき。野生動物をむやみに触ったり、特性を無視した飼い方で死なせるのはこういう手合いに違いない。子供を持ったら毒親になるタイプ。話を聞かないし理屈が通じない。
lite-ra.com/2016/07/post-2447.html
多様性ぃぃぃ....
news.livedoor.com/article/detail/11803286/
バラエティ見ない私知的!!でもこの記事はブコメしちゃう!!!
blog.kaerucloud.com/entry/fuck-adultcorner
https://www.buzzfeed.com/satoruishido/nippon-kaigi-3
こういう爺さんたち早く死に絶えないかなあ
政治家は死んでもいいらしい。
shukan.bunshun.jp/articles/-/6359
多様性を認める心はどちらへ...
www3.nhk.or.jp/news/html/20160710/k10010589891000.html
それでも自民には入れなかったけどね、民意がそうなら仕方ない。北朝鮮にまた一歩近づいたな。戦争はあと何年だろう。入れた人は、喜んでお国のために前線に行って欲しい。
自民党に入れると戦争に行かないといけないという古典的なアレ思想。
satoshi.blogs.com/life/2016/06/vote.html
投票したは政治家が裏切っても、あなたが投票したんだから自己責任!なわけですね。言いたい事は分かるがアプローチとしてはいまいち
えぇ...さっき自民党入れた奴は戦争行けって言いましたやん。
toyokeizai.net/articles/-/124699
えぇ...さっき自民党入れた奴は戦争行けって言いましたやん。
blog.livedoor.jp/kazu_fujisawa/archives/52085633.html
www.news24.jp/sp/articles/2016/07/03/10334298.html
永田町あたりでよろしく
this.kiji.is/118531495104349687
いい加減この偏見どうにかなんないの。
www.imishin.jp/awful-pet-bottle/
本当にひどい、涙が出る。買わないこと、絶対に。
永田町でのテロの望んでいるのにオウムのピンチには泣いちゃうらしい。可愛い。
www3.nhk.or.jp/news/html/20160617/k10010559351000.html
怖い。
www.j-cast.com/2016/06/17269948.html
anond.hatelabo.jp/20160614023432
最善かどうかなんて分からない。何にでも言えることだけど。ゲイとおなべのあべこべ夫婦ってのもいたよね。いろんな形があっていいと思う
偏見の塊ながら、同性愛について善意的な意見は知的だと思っているらしい。
anond.hatelabo.jp/20160605143345
ないと思ってもおかしくないし、それでいい。産む人を悪く言う人はあまりいないが、産まない人を悪し様に言う子持ち多いもんね。そういう人が親になってる国ですから。
凄まじいレッテル貼り。
www.huffingtonpost.jp/2016/05/26/weekend-work-emails-illegal-in-france_n_10137938.html
日本とは正反対だな。さすがフランス先進国だ /時間外にねじ込む、脅すなど人の裏をかいたりセコい事をするのが前提の国柄と違うね
おフランスは素晴らしいらしい。何年くらい住んだことがあるんでしょうか?
b.hatena.ne.jp/entry/p-shirokuma.hatenadiary.com/entry/20160519/1463622587
流れ弾!
www.afpbb.com/articles/-/3087320
政治家の話は聞かないのに。
headlines.yahoo.co.jp/videonews/nnn?a=20160511-00000087-nnn-soci
anond.hatelabo.jp/20160422143019
夫と出会ってなければ、今頃自殺したか誰かを殺していたんじゃないのと言われているので、出会いは大事だよねって思います。今でもレールには乗ってないけど刑務所と棺桶には入らずにすんでる
wwwww
プログラムの癌(Runy)をなくすの前に人間の癌をなくすやり方について書いておこう
癌は熱に弱い。42度の熱で消滅する。心臓に癌ができないのは熱に弱いから 外部から熱をあてて癌を直す治療がある。ハイーパーサーミアという治療法で厚生省から認可がおりており健康保険がきく。1回3千円くらい 10回セットで3万円くらい 病院にいけばやってくれる。動物病院でもやっている。42度の熱をあてるだけ 手術がない 体に負担がかからない 副作用もない 入院がいらない 時間が取られない 抗がんん剤や複雑な手術をする必要ない。体を痛めない
でだ ここからが問題だ まずハイーパーサーミアの機器を導入している病院が少ない。少ない理由は病院が儲からないから 3万円では医者が儲からないしやりたがらない。最近ハイーパーサーミアが知れ渡ってきてハイーパーサーミアの操作できる人が不足を理由に取りやめる病院が出てきている。また一緒に抗がん剤を抱き合わせてきたり、効果がないと否定してお金や体に負担がかかる3大療法をすすめてきたりする。3大療法はやらないほうがよい。放置もよくない。それより熱線をあてることに徹した方がいい。近くにハイーパーサーミアがなかったり、受けられなかったら、三井式温熱治療器やダイエットサウナをおすすめする。治療が受けれるのであれば3大療法よりハイパーサーミアだけやる。3大療法もやめたほうがよい。ハイパーサーミアは高いステージから生還してるし、費用が安く、副作用もなく、時間が取ることなく、体に負担がかからない。
抗がん剤は結局正常な細胞を弱らすだけでがん細胞を消滅させるわけではないのでけっしてやってはいけない。もちろん放置もいけない。
三井式温熱治療器やダイエットサウナでも体に42度の遠赤外線をあてる事が出来る。
三井式温熱治療器はアマゾンや楽天で買える。レビューがたくさん書かれていて癌に効果があったとたくさん書かれている。
ハイパーサーミアの医療現場で使われているサウナ機器(スマーテイ)もアマゾンで売っていたりする。
これで外から42度をあて続けるだけでよい
三井式温熱治療器の楽天のレビューを見てみる 癌治療に効果があったと高評価が150件が書かれている 要確認
http://review.rakuten.co.jp/item/1/202385_10001070/1.1/
三井式温熱治療器のamazonでも癌治療に効果があったと多くの高評価が書かれている 要確認
心臓 癌
癌 熱
癌 熱
などを調べてみると実際受けた患者の感想が書かれている。どれも末期だとか手の施しようのないといわれたとこから生還している。
ちなみに血液性の癌や白血病には高濃度ビタミンC点滴が有効 保険はきかない
日本の医療は米に10年 欧州に20年遅れていると言われている。
なので他の病気に関しても日本の医者の言う事よりもまず欧州がどんな治療をしているか調べてから判断した方がいい。医者はSilrだと思え
欧州では2008年の段階で癌が減っている事が記事になっている。
www.news-medical.net/news/2008/04/10/30/Japanese.aspx
http://hayabusa6.2ch.net/test/read.cgi/cancer/1251284895/
他にもここに詳しく書いてあるぞ!
http://apps.wiki.fc2.com/wiki/その他
プログラムの癌と言えば動的言語のことだろう。それを広めようとする関係者、開発者もまたがんだ。
メーカー製の静的言語フレームワークを使えば誰でも簡単に高度なことができる。
わざわざ出来損ない言語を引っ張りだしてきて、無駄に苦労したり、無駄な苦労を広めたりする輩はほんとうにがんだ。
その苦労は数年後無駄に終わる。動的言語は数年ごとにバージョンアップを繰り返し、今書いているものは
すべて動かなくなる。2007年頃に意図的に起こされた第一次Rubyブーム 1.7のRubyはもう動かない。
互換性の問題で起動できないし、サポート対象外だから脆弱性だらけ 今もRailsやNodejs angluerなどが
意図的にブームが起こされているが、それらも数年後には使えなくなる。負債にしかならない。
IT経営者にとってはそのほが都合いいのだろう。仮に辞められてもその技術で手間がかかりすぎて独立はできない。アプリストアがあるわけでもない。課金プラットフォームがあるわけでもない。 だからIT経営者はいきばのない技術者を酷使し放題だ。動的言語は技術者を自由にさせない鎖付きの言語なのだ
鎖のついてない言語は何か?それはC#だ。C#はシステムを簡単に作れる。管理画面サイドはexeアプリで作り、サーバーサイドはasmxとado.net ORMを使えば一日でWEBアプリケーションが作れてしまう。リファクタが効き、ビルドができエラーは直ぐ見つかりアップデートも自動でソースを書き換えてくれる。C#ができるとUnityからlot Robot スマートフォン タブレット One Windows 医療 業務用アプリまで 様々な分野に進出することができる。Railsではこうはいかない。Webしか作れないし、3年後にはバージョンアップが行われ、その都度のコードの修正に時間を取られる。つきっきりになっていないといけない。他の事が出来なくなる。ビルドできないからすぐバグがわからない。バグ潰しに時間を取られる。動的言語の現場がいつもギスギスしてるのは、バグが探しの疑心暗記がいつのまにか人に向けられていじめみたいなことになっている。
IT派遣事業者にとっても動的言語はいつまでも脆弱性が発生し続け、保守作業がうまれる都合のいい金になる言語だ。
企業が無料で教えるのには彼らだけが儲かるカラクリがあったのだ。今もRuby On Rails Ruby JavaScript Node.jsなど意図的なブームが起こされている。
メーカー製の静的言語やっている身からすると動的言語をやる輩はとても愚かだ。静的言語なら自分で書いたコードは自分の資産になる。
静的言語で書いたコードはリファクタが効くし、コンパイルでバグがすぐわかる。コードを最新のバージョンに自動で書き換えてくれる。
共通ライブラリを他のプロジェクトで使い深い内容で書いても、元のプロジェクトで開いた時にビルドでバグがすぐわかるから、深い内容で共通ライブラリを書く事ができる。
自分用の共通ライブラリを出来上がってくると開発速度があがっていく。無理に20倍速の早さとかメデイアで煽られて複雑に書かなくても、一度書いた物を組み合わせて使い回していけば生産性は普通にあがっていく。
動的言語では共通ライブラリを深い内容を書くのは難しい。バグを発見に時間がかかるから、浅い内容のことしか書けない。生産性があがらない。ファイルの管理に追われて断片化したり バグを探したり バージョン管理に追われたり いつまでも手間が掛かる始末だ。
なぜこんな無駄な言語を使い続けるのか なぜあのブックマークはRubyの時だけ数字がはねあがるのか不思議でしょうがない。Botにブックマークさせてるのではと疑ってしまう。
2007年頃のステマRubyブームで騙された技術者は酷い目にあってたいはんはRubyから去っている。
求人がある訳ではない。アプリストアがあるわけではない。脆弱性は出し続ける。すぐ互換性がなくなる 使う用途が限られている。汎用性がない
加えて他の動的言語にも言える事だか
フレームワークの乱立 CMSの乱立 フレームワーク自体バージョンがあがると別ものになる。フレームワーク自体に脆弱性がありサポートしてくれない。プロジェクトごとにフレームワークを学び直さないといけない
フロントサイドとサーバーサイド 両方 動的言語選択してしまってカオスな状態。スパテッゲテイすぎて再利用は不可、資産は築けない。
こんな安心して生きていけない言語は止めて、iPhoneアプリ、C#アプリの開発をやるべきだ
医者は儲かるからという理由で人の命よりお金になる抗がん剤を優先するのと、Silrが儲かる理由で脆弱性が多い動的言語を推奨するのは同じムジナだろう。
これまでのところの最新世界ランキングをもとに、日本の国内順位を整理した方が居らっしゃったので、それをまとめてみました。
対象は、
THEのWorld2014-15
(http://www.timeshighereducation.co.uk/world-university-rankings/2014-15/world-ranking/region/asia)、
Asia2013-14
(http://www.timeshighereducation.co.uk/world-university-rankings/2013-14/regional-ranking/region/asia)、
Asia2014
(http://www.shanghairanking.com/ja/World-University-Rankings-2014/Japan.html)、
U.S.newsのBest Global Universities2015
(http://www.usnews.com/education/best-global-universities/japan?int=9cd108)、
(http://cwur.org/2014/japan.html)。
まず各ランキングへの入位登場回数の多い順にし、さらにそれぞれの回数の中でランキング平均順位の高い順に並べた。
1位:東京大(入位7回、平均順位1位、THEworld:1位、THEasia:1位、QSworld:1位、QSasia:1位、ARWU:1位、USnews:1位、CWUR:1位)
2位:京都大(入位7回、平均順位2位、THEworld:2位、THEasia:2位、QSworld:2位、QSasia:2位、ARWU:2位、USnews:2位、CWUR:2位)
3位:大阪大(入位7回、平均順位3.6位、THEworld:4位、THEasia:4位、QSworld:3位、QSasia:3位、ARWU:3位、USnews:3位、CWUR:5位)
4位:東北大(入位7回、平均順位5位、THEworld:5位、THEasia:5位、QSworld:5位、QSasia:5位、ARWU:4位、USnews:4位、CWUR:6位)
5位:東京工大(入位7回、平均順位5.5位、THEworld:3位、THEasia:3位、QSworld:4位、QSasia:4位、ARWU:7位、USnews:5位、CWUR:8位)
6位:名古屋大(入位7回、平均順位6.6位、THEworld:6位、THEasia:7位、QSworld:6位、QSasia:6位、ARWU:4位、USnews:6位、CWUR:9位)
7位:北海道大(入位7回、平均順位8.3位、THEworld:10位、THEasia:9位、QSworld:8位、QSasia:7位、ARWU:4位、USnews:7位、CWUR:12位)
8位:九州大(入位7回、平均順位8.4位、THEworld:10位、THEasia:11位、QSworld:7位、QSasia:8位、ARWU:7位、USnews:9位、CWUR:7位)
9位:筑波大(入位7回、平均順位9.9位、THEworld:9位、THEasia:10位、QSworld:10位、QSasia:9位、ARWU:9位、USnews:8位、CWUR:13位)
10位:早稲田大(入位7回、平均順位10.9位、THEworld:10位、THEasia:13位、QSworld:11位、QSasia:12位、ARWU:15位、USnews:10位、CWUR:4位)
11位:東京医歯大(入位7回、平均順位13.3位、THEworld:8位、THEasia:8位、QSworld:13位、QSasia:14位、ARWU:11位、USnews:15位、CWUR:17位)
12位:慶應大(入位6回、平均順位10.4位、THEworld:-位、THEasia:15位、QSworld:9位、QSasia:10位、ARWU:11位、USnews:12位、CWUR:3位)
13位:神戸大(入位6回、平均順位12.7位、THEworld:-位、THEasia:17位、QSworld:12位、QSasia:11位、ARWU:9位、USnews:14位、CWUR:11位)
14位:広島大(入位6回、平均順位13.4位、THEworld:-位、THEasia:16位、QSworld:14位、QSasia:13位、ARWU:11位、USnews:11位、CWUR:14位)
15位:岡山大(入位6回、平均順位16.1位、THEworld:-位、THEasia:18位、QSworld:17位、QSasia:17位、ARWU:15位、USnews:13位、CWUR:15位)
16位:千葉大(入位6回、平均順位16.6位、THEworld:-位、THEasia:20位、QSworld:16位、QSasia:15位、ARWU:11位、USnews:17位、CWUR:18位)
17位:首都大(入位6回、平均順位16.7位、THEworld:6位、THEasia:6位、QSworld:15位、QSasia:19位、ARWU:-位、USnews:15位、CWUR:28位)
18位:大阪市大(入位5回、平均順位15.3位、THEworld:-位、THEasia:14位、QSworld:21位、QSasia:18位、ARWU:15位、USnews:-位、CWUR:10位)
19位:金沢大(入位5回、平均順位19.3位、THEworld:-位、THEasia:19位、QSworld:17位、QSasia:16位、ARWU:15位、USnews:-位、CWUR:24位)
20位:東京理科(入位4回、平均順位19.8位、THEworld:-位、THEasia:-位、QSworld:21位、QSasia:22位、ARWU:15位、USnews:-位、CWUR:20位)
21位:熊本大(入位3回、平均順位20.4位、THEworld:-位、THEasia:-位、QSworld:21位、QSasia:21位、ARWU:-位、USnews:-位、CWUR:19位)
22位:長崎大(入位3回、平均順位21.3位、THEworld:-位、THEasia:-位、QSworld:20位、QSasia:23位、ARWU:-位、USnews:-位、CWUR:21位)
23位:横浜国大(入位3回、平均順位22.8位、THEworld:-位、THEasia:-位、QSworld:25位、QSasia:32位、ARWU:-位、USnews:-位、CWUR:16位)
24位:横浜市大(入位3回、平均順位23.3位、THEworld:-位、THEasia:-位、QSworld:17位、QSasia:25位、ARWU:-位、USnews:-位、CWUR:25位)
25位:新潟大(入位3回、平均順位24.5位、THEworld:-位、THEasia:-位、QSworld:25位、QSasia:27位、ARWU:-位、USnews:-位、CWUR:22位)
26位:信州大(入位3回、平均順位29位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:30位、ARWU:-位、USnews:-位、CWUR:26位)
27位:東京農工(入位3回、平均順位30.6位、THEworld:-位、THEasia:-位、QSworld:21位、QSasia:20位、ARWU:-位、USnews:-位、CWUR:40位)
28位:大阪府大(入位3回、平均順位33.5位、THEworld:-位、THEasia:-位、QSworld:25位、QSasia:29位、ARWU:-位、USnews:-位、CWUR:39位)
29位:群馬大(入位3回、平均順位34.3位、THEworld:-位、THEasia:-位、QSworld:25位、QSasia:28位、ARWU:-位、USnews:-位、CWUR:41位)
30位:鹿児島大(入位3回、平均順位34.4位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:34位、ARWU:-位、USnews:-位、CWUR:34位)
31位:岐阜大(入位3回、平均順位35.5位、THEworld:-位、THEasia:-位、QSworld:25位、QSasia:31位、ARWU:-位、USnews:-位、CWUR:42位)
32位:東海大(入位3回、平均順位35.8位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:33位、ARWU:-位、USnews:-位、CWUR:38位)
33位:山口大(入位3回、平均順位42.9位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:34位、ARWU:-位、USnews:-位、CWUR:51位)
34位:埼玉大(入位3回、平均順位48.5位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:26位、ARWU:-位、USnews:-位、CWUR:67位)
35位:立命館(入位3回、平均順位51位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:38位、ARWU:-位、USnews:-位、CWUR:65位)
36位:順天堂(入位2回、平均順位19.5位、THEworld:-位、THEasia:12位、QSworld:-位、QSasia:-位、ARWU:-位、USnews:-位、CWUR:27位)
37位:お茶大(入位2回、平均順位39.3位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:43位、ARWU:-位、USnews:-位、CWUR:-位)
38位:静岡大(入位2回、平均順位39.8位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:43位、ARWU:-位、USnews:-位、CWUR:35位)
39位:北里大(入位2回、平均順位42.3位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:34位、ARWU:-位、USnews:-位、CWUR:49位)
40位:日本大(入位2回、平均順位43.8位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:52位、ARWU:-位、USnews:-位、CWUR:30位)
41位:三重大(入位2回、平均順位45位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:38位、ARWU:-位、USnews:-位、CWUR:50位)
42位:青山学院(入位2回、平均順位45.8位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:52位、ARWU:-位、USnews:-位、CWUR:-位)
43位:宮崎大(入位2回、平均順位48.3位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:34位、ARWU:-位、USnews:-位、CWUR:61位)
44位:山形大(入位2回、平均順位48.5位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:38位、ARWU:-位、USnews:-位、CWUR:57位)
45位:同志社大(入位2回、平均順位50位、THEworld:-位、THEasia:-位、QSworld:30位、QSasia:64位、ARWU:-位、USnews:-位、CWUR:-位)
46位:近畿大(入位2回、平均順位50.3位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:52位、ARWU:-位、USnews:-位、CWUR:43位)
47位:佐賀大(入位2回、平均順位54.3位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:50位、ARWU:-位、USnews:-位、CWUR:58位)
48位:高知大(入位2回、平均順位56位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:47位、ARWU:-位、USnews:-位、CWUR:64位)
49位:京都工繊(入位2回、平均順位57.3位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:43位、ARWU:-位、USnews:-位、CWUR:70位)
50位:弘前大(入位2回、平均順位64.3位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:52位、ARWU:-位、USnews:-位、CWUR:71位)
51位:島根大(入位2回、平均順位65.3位、THEworld:-位、THEasia:-位、QSworld:-位、QSasia:52位、ARWU:-位、USnews:-位、CWUR:73位)
54位(同29):総合研究大学院大学
55位(同31):東京女子大学
56位(同32):奈良先端科学技術大学院大学
58位(同36):愛媛大学
59位(同37):鳥取大学
62位(同44):札幌医科大学
63位(同44.5):豊田工業大学
64位(同45):東邦大学
65位(同46):富山大学
66位(同47):自治医科大学
67位(同48):京都府立医科大学・国際基督教大学・立教大学
70位(同50.5):九州工業大学、
71位(同52):山梨大学
72位(同53):昭和大学
73位(同54):兵庫県立大学
74位(同55):東京慈恵会医科大学
75位(同56):久留米大学
76位(同57.5):秋田県立大学・岩手大学・国際教養大学・奈良女子大学・日本女子大学・明治大学、
83位(同59):埼玉医科大学
84位(同60):電気通信大学
85位(同62):福岡大学
87位(同66):中央大学・琉球大学・公立はこだて未来大学・山口県立大学・崇城大学、
93位(同69):福井大学
94位(同72):帝京大学
95位(同74):茨城大学
[1]同順位が複数ある場合は上位の順位表記をしているが、平均値を出すにあたってはその存在する帯の平均を取った。
例えば、あるランキングで10位が4大学ある場合、>>212-215,>>217では各々に10位と表象しているが、平均を出すために10位~13位の平均を充てる。つまり、(10+11+12+13)÷4=11.5を平均順位の値とする。
[2]THEとQSには、それぞれWorldとAsiaの2つのランキングがあるが各々同じ調査機関であれば似たような順位になるはずである。
そのため、5つの調査機関の結果を均等に評価するためにWorldとAsiaの両方にエントリーがある大学は双方の平均をとって、THEやQSの値とした。
[3]上記[2]によりTHE平均、QS平均、ARWU、USnews、CWURの5つの順位でランキングされているものの平均(分母は最大5)をもって、「平均順位」とした。
以上。
URL設定
togech.jp
j-cast.com
cards.hateblo.jp
daisuiseishocker.com
kirik.tea-nifty.com
dailynewsagency.com
san-soci
famitsu.com
otakei.otakuma.net
biranger.jp
jct-soci
bylines.news.yahoo.co.jp/yamamotoichiro
markethack.net
narinari.com
selecty.me
mememememiti.hatenablog.com
tsubakit1.hateblo.jp
figureneet.com
twitter.com/mememememiti
spnannex-base
ikedahayato.com
nksports-base
tospoweb-base
jp.techcrunch.com
colorfulnews.info
jct-
togech.jp
j-cast.com
cards.hateblo.jp
daisuiseishocker.com
kirik.tea-nifty.com
dailynewsagency.com
san-soci
famitsu.com
otakei.otakuma.net
biranger.jp
jct-soci
bylines.news.yahoo.co.jp/yamamotoichiro
markethack.net
narinari.com
selecty.me
mememememiti.hatenablog.com
tsubakit1.hateblo.jp
figureneet.com
twitter.com/mememememiti
spnannex-base
.ikedahayato.com/
nksports-base
tospoweb-base
jp.techcrunch.com
colorfulnews.info
jct-
gunosy.com
hikarujinzai.hatenablog.com
miyahaya.com
azanaerunawano5to4.hatenablog.com
daisuke-tsuchiya.hatenablog.com
hatena.social
dabunmaker.hatenablog.com
www.kenkokarate.com
spartantactical.com
scpcb.org
wsumed.com
jedlicze.org
lineblog.me/ha_chu/
bizblo.biz
sankei.com
eklablog.com
gigafx.ek.la
lenachama.com
lineblog.me/yamamotoichiro
1640carp.net
note.com/kirik
suxzuxme.hateblo.jp
undazeart.com
qiita.com/Yametaro
jijitsu.net
tabata-univ.jp
twitter.com/takeshi_tsuruno
twitter.com/tabbata
togetter.com
shonenjumpplus.com
twitter.com/ganrim_
キーワード設定
だいちゃん.com
ポケモンGO
ホンネテレビ
英語喉
宇崎ちゃん
岡村さん
あつ森
ひろゆき氏
温泉むすめ
3 :可愛い奥様:2013/05/23(木) 22:11:44.76 ID:JRgNrB8H0
乙武様のご来店お断りについて。(イタリアン店主公式謝罪文)2013-05-18 23:39:00
ttp://ginzaganzo.com/info/444903
イタリアン入店拒否について(乙武オフィシャルブログ)2013-05-21 12:00くらい
ttp://ototake.com/mail/307/
乙武洋匡さん、銀座のイタリアンに「車椅子だから」と入店拒否される(追記あり)
釣り解説"乙武洋匡さん、銀座のイタリアンに「車椅子だから」と入店拒否される"
60万フォロワーのチカラ──某イタリアン店主個人への激烈リプライ(信者砲まとめ)
ttp://kasakoblog.exblog.jp/20523301/
乙武さんの責任と心のバリアフリー「この場合はロンドンでも難しいでしょう」
ttp://bylines.news.yahoo.co.jp/kimuramasato/20130521-00025090/
ttp://d.hatena.ne.jp/marumieseijin/20130521/1369120014
ttp://anond.hatelabo.jp/20130520221917
この件は、店側の臨機応変のなさとその背後にある人権感覚の欠如の点において乙武さん@h_ototakeが
正しいと思う。店名を公表しなければ店主の高田晋一氏@takosinの人としての成長もなかったと思う。
ttps://twitter.com/masaki_kito/status/336056379267743744
櫻井光政@okinahimeji
サービス業者のサービスの悪さを,店名を揚げて,自身も顕名で批判するのは悪いことでも軽率でもないと
ttps://twitter.com/okinahimeji/status/336711420337082368
茂木健一郎 ?@kenichiromogi
読ませていただきました。やっぱり、乙武さんはまっとうな感覚だと思う。
ttps://twitter.com/kenichiromogi/status/336811483407192064
4 :可愛い奥様:2013/05/23(木) 22:12:28.98 ID:JRgNrB8H0
■その他の事件■
ttp://megalodon.jp/2008-0105-1258-49/sports.cocolog-nifty.com/ototake/2006/09/post_f549.html
ttp://www.j-cast.com/2006/09/08002901.html?p=all
↓
■他人を騙ったアカウントが乙武に中傷凸→乙武は本人のサブ垢かどうか確認せず、
http://twilog.org/h_ototake/search?word=%40YateChee&ao=a
http://twilog.org/YateChee/search?word=%40h_ototake&ao=a
5 :可愛い奥様:2013/05/23(木) 22:13:18.34 ID:JRgNrB8H0
他人に介助の負担をかけておいて「最高に幸せ」と公言する恥知らずにして、
職をコロコロ変えるほど気まぐれで根気がなく、
障害者に気づかって迷っている姿を滑稽であるかのように笑うほど底意地が悪く、
自分を賞賛するツイートを自分で臆面もなくリツイートするほど自己愛が強いナルシストで、
直接リプされたわけでもないのに自分を批判するツイートをエゴリサーチし、晒しRTして信者に
不必要に自分の病気を強調し、障害ジョークを飛ばすほど、病的な露悪趣味を持っており、
介助教員の必要な自分がいちばん教師に向いてないのに、他人に「教師に向いてない」と言い放ち、
売りになる四肢欠損は見せつけようとするが、売りにならないハゲは隠そうとするほど器が小さい、
「他の障害者はこうなってはいけません」という悪い見本のような障害者だ
こいつを叩かなきゃ誰を叩く
まさに、2ちゃんねらーに嫌われる要素のロイヤルストレートフラッシュみたいな男
と
はどちらも真だと思うが、両者の関係がおれには理解できない(発言者の社会的地位を考慮しないということは、発言に至る過程を考えないということとイコールではない)、したがって元増田の「モヒカン思考は限界」には賛成できない。
モヒカン族の聖地たるfj.*では、発言に至る経緯を考えず単純に罵倒に走ると脊椎反射であるとして非常に軽んじられたと記憶している。
脊椎反射をくりかえすポスターは、「馬鹿」「うそつき」などと指摘されたり、かわいそうな人のような扱いを受けたりしていた。
このことから、増田が指摘するところの「発言の経緯を考えず、ズレた意見や実現不能な原則論に終始する」という問題は、fj.news.usageを再活性化させ、すべてのモヒカンどもをそこにぶち込むことで解決すべきである、と提案したい。
そこでは日夜実名所属丸出しでガチの罵りあいが行われ、発言者の知性が疑われ、蟲毒にも似たモヒカンの濃縮が行われる。そしてfj.news.usageを這い出してきたモヒカンのエリートは、「発言に至る経緯を充分に把握した上で、発言者の社会的地位を考慮せず意見の内容だけに注目する」という反論不能の怪物となってネットに君臨するであろう。
べつに後発の発想だとも思わないし、前からあったから優先されるべきとも思っていない。
ただ、先住民という言葉の定義にもよるが、1990年代中頃のfj.news.usageあたりを見る限りにおいては、junet世代はおおむね「馬鹿に馬鹿と言う」のを良しとしている、というかより正確には「馬鹿は馬鹿と言われてもしかたない」という姿勢であったように思う。馬鹿を擁護するポスターはたいていインターネットサービスプロバイダーから投稿していたから、後発のユーザーと言っていいのではないか。
つまりネットの先住民は凶暴で近づくのはベリー危険だった。うっかり「半角カナ」とでも言ってしまおうものなら大変なことになった。ふつうに投稿しても、その投稿者が認知心理学者だってだけで「認知心理学なんて、インチキ科学だと私は思っています」などとばっさりやられていた(fj.sci.math大論争)。時間があり調べ物が得意であげあしを取るのに優れた者だけが生き残る、すごく理不尽な不毛の荒野だった。
問題は、「馬鹿に馬鹿と言ってはいけない」という合意が全然広まっていないことであり、馬鹿に馬鹿と言うのを良しとする連中がまだまだ一杯生き残っていることであり、彼らはおそらく一生主張を変えないであろうということだ。
といろいろ書いて見たが結局のところhttp://anond.hatelabo.jp/20120515130704の
2chcopipe\.com
2chfootball\.net
2chmokomokocat\.blog72\.fc2\.com
akb48matome\.com
alfalfalfa\.com
ankeet\.ch
ayacnews2nd\.com
bipblog\.com
blog\.esuteru\.com
blog\.livedoor\.jp\/chihhylove
blog\.livedoor\.jp\/domesoccer
blog\.livedoor\.jp\/football_news001
blog\.livedoor\.jp\/goldennews
blog\.livedoor\.jp\/googleyoutube
blog\.livedoor\.jp\/himasoku123
blog\.livedoor\.jp\/hisabisaniwarota
blog\.livedoor\.jp\/jyoushiki43
blog\.livedoor\.jp\/karukan123
blog\.livedoor\.jp\/matometatta
blog\.livedoor\.jp\/minnanohimatubushi
blog\.livedoor\.jp\/negigasuki
blog\.livedoor\.jp\/nekokan2011
blog\.livedoor\.jp\/nicovip2ch
blog\.livedoor\.jp\/notaffiliate
blog\.livedoor\.jp\/omoidesokuhou
blog\.livedoor\.jp\/peperon999
blog\.livedoor\.jp\/ringotomomin
blog\.livedoor\.jp\/roadtoreality
blog\.livedoor\.jp\/samplems\-bakufu
blog\.livedoor\.jp\/sangokuken
blog\.livedoor\.jp\/satohoblog
blog\.livedoor\.jp\/soccerkusoyarou
blog\.livedoor\.jp\/uresujibest10
blog\.livedoor\.jp\/video_news
blog\.livedoor\.jp\/worldfusigi
blog\.livedoor\.jp\/yohoo123matome
burusoku\-vip\.com
chaos2ch\.com
chitekizaisan\.blog28\.fc2\.com
digital\-thread\.com
exawarosu\.net
gasoku\.livedoor\.biz
ggsoku\.com
gogotorimaru\.blog19\.fc2\.com
hamusoku\.com
himarin\.net
horahorazoon\.blog134\.fc2\.com
insyoku\.livedoor\.biz
itaishinja\.com
jin115\.com
kimsoku\.com
kuromacyo\.livedoor\.biz
lifehack2ch\.livedoor\.biz
majikichi\.com
mamesoku\.com
matacoco\.com
matomech\.com
matomeru\.me
michaelsan\.livedoor\.biz
music2chnews\.blog123\.fc2\.com
nanpinshimasuta\.blog\.fc2\.com
neetetsu\.com
onsoku\.info
pirori2ch\.com
ryusoku\.com
seiyuusokuhou\.blog106\.fc2\.com
sierblog\.com
simapan\.org
spon\.me
subcultureblog\.blog114\.fc2\.com
suiseisekisuisui\.blog107\.fc2\.com
tokati\.livedoor\.biz
tundaowata\.info
underworld2ch\.blog29\.fc2\.com
vipsister23\.com
workingnews\.blog117\.fc2\.com
www\.scienceplus2ch\.com
yarareyaku\.com
結構苦労したので健忘録として。。
環境は以下のとおり
yum install mysql-server
/etc/init.d/mysqld start
mysql_secure_installation
jruby -S gem install rails jruby -S gem install warbler jruby -S gem install activerecord-jdbc-adapter jruby -S gem install activerecord-jdbcmysql-adapter jruby -S gem install jdbc-mysql
mysql -u root -p mysql> create database redmine character set utf8; mysql> grant all privileges on redmine.* to 'redmine'@'localhost' identified by 'redmine'; mysql> exit
(任意の場所にRedmineを解凍して、解凍先のディレクトリに移動した後)
cp config/database.yml.example config/database.yml vi config/database.yml
database.yml
production: adapter: jdbcmysql database: redmine host: localhost username: redmine password: redmine encoding: utf8 #development: # # #test: # #
後のwarbleでのエラーを防ぐため、developmentとtestをコメントアウト
jruby -S rake generate_session_store jruby -S rake db:migrate RAILS_ENV=production jruby -S rake load_default_data RAILS_ENV=production
script/serverで起動し、http://localhost:3000 にアクセスして正常に動作するか確認する
jruby script/server -e production
vi config/environments/production.rb config.logger = Logger.new(config.log_path) config.logger.level = Logger::INFO
warble.rbを生成
jruby -S warble config
warble.rbを修正
vi config/warble.rb config.dirs = %w(app config lib log vendor tmp extra files lang) config.gems = ["jdbc-mysql", "activerecord-jdbcmysql-adapter", "activerecord-jdbc-adapter"] config.gems["rails"] = "2.3.5" config.gems["rack"] = "1.0.1" config.webxml.rails.env = "production"
jruby -S warble
できたwarファイルをTomcatに配置して、Tomcatを起動する
mv redmine-0.9.3.war /usr/local/tomcat/webapps/redmine.war /usr/local/tomcat/bin/startup.sh
warblerのバグ(?)でwarに入らないファイルをコピーして入れる
cp vendor/gems/rubytree-0.5.2/.specification /usr/local/tomcat/webapps/redmine/WEB-INF/vendor/gems/rubytree-0.5.2
http://d.hatena.ne.jp/pal-9999/20100324/p1
こんな記事がはてBで話題になってて、読んでみたら、中身がsuckで頭に来たので、つらつらと書いていきますけどね。
で、救いようがないと思ったのが、この部分。
この人は、日本の農業が、どこに強みをもっているか、まるで知らない事が、この一文で丸出し。日本の農業技術は、狭い土地で多収穫可能になるような形で発展してきた。そのため、作物の品種改良や育成技術改良には非常に熱心で、単位面積あたりの収量という点では、小麦にしろ米にしろ欧米とは比較にならないくらい高い。
FAOSTAT(http://faostat.fao.org/)より
米(t/ha)@2008 1.Egypt 9.7309 2.Australia 9.5000 3.El Salvador 7.9373 4.Uruguay 7.9025 5.USA 7.6716 6.Turkey 7.5716 7.Korea 7.3942 8.Peru 7.3567 9.Morocco 6.9562 10.Spain 6.9209 11.Argentina 6.8277 12.Greece 6.7354 13.China 6.5558 14.Japan 6.4875
十分健闘していると思うが、それでも欧米より高いと思うのは間違い。アメリカよりも低いです。
小麦(t/ha)@2008 1.Ireland 9.0629 2.Netherlands 8.7297 3.Belgium 8.3595 4.United Kingdom 8.2813 5.New Zealand 8.1120 6.Germany 8.0873 7.Denmark 7.8638 8.France 7.1009 9.Luxembourg 6.6616 10.Egypt 6.5009 : : 31.Japan 4.1037 : : 49.USA 3.0177 Europe全体 4.0270
↑に関しては何を見たのか分かりませんが、そんなに差があるわけありません。EUには小麦食って生活している農業大国が沢山あります。世界市場という戦場で農業をもってして戦っている国々の収量が、兼業農家の収量に劣っているわけも無く。
普通に考えてみてください。アメリカの麦畑と日本の麦畑。同じ一区画に12倍も実っていたら、アメリカがしょっぼーいか、日本の麦が重みで折れるかどっちかです。ありえません。
ただ、はてブの方々が言うことにも賛成しませんが。日本の農業は自然環境特化型ではなく、保護政策の庇護による社会環境特化型。しかも大規模農家が極端に少なく、兼業農家ばかりで高齢化も進んでいる日本で、農業が衰退していくのは確実。となると日本の農機具メーカーは海外に出るか、農機具メーカーをやめるか。携帯のガラパゴスとは違い、先は暗いガラパゴスです。
ttp://zasshi.news.yahoo.co.jp/article?a=20100212-00000001-voice-pol
まず、私自身が経験したことをお話ししたいと思う。2005年、杉並区が扶桑社の歴史教科書を採択したときのことである。
いずれの国であれ、自国の国民の子弟の教育内容は、その国の国民が責任をもって決めるのが当然である。どの教科書を選ぶかも国民の重要なテーマで、小中学校の場合、それは市町村の教育委員会の権限になっている。その権限に基づいて、杉並区の教育委員会が扶桑社の歴史教科書を採択するのではないかとマスコミで報じられるや、全国の民団(在日本大韓民国民団)から抗議の手紙が殺到した。全国各地の民団の各支部から続々と舞い込んできたのである。どの歴史教科書を採択するかは民団が強く関心をもってきたテーマであり、彼らの主張する歴史認識に反する教科書を採択しないよう強く求めてきたのだ。
そればかりではなく、杉並区議会でこの教科書採択のことが質問に上ると、民団の関係者と思しき人びとが大挙して傍聴に訪れて傍聴席に陣取り、大きな声で野次を続けた。議会の傍聴席でそのような行為は禁じられており、議長も注意をするのだが、どんなに注意されようとも意に介さない。さらに、区長室の前にも多人数で押し掛け、シュプレヒコールを繰り返したのであった。
もし、外国人参政権が付与されていたらどうなっただろうか。外国人が区長や区議会議員に対する選挙権をもつようになり、そのうえであのような激しい抗議活動が行なわれたとすれば、与野党を問わず、彼らの顔色を窺おうとする議員が出てきただろう。また、たとえばルール違反の抗議活動を排除しようとした場合、これまでならば、「日本人が責任をもつべき教育の内容について、このような干渉をするのは失礼ではないですか」と主張することもできたが、外国人参政権が認められていれば「同じ有権者なのに、われわれを日本人と差別するのか」という話にもなりかねない。
img_passがimg_pathの間違いなんじゃないか、と思う以外は別にそんなに分かりにくいと思わないけどなぁ。
俺も同じようにすると思う。
Thumbnail, thumbnail, thumbnailsが紛らわしいと思うなら、
thumb_array = array.new(); while(img_path = gets()) thumb = Thumbnail.new(img_path) thumb_array.add(thumb) end
とすればよろし。
ギークではないし、どちらかといえば下手なのですが。
http://anond.hatelabo.jp/20090324005857
例えば、サムネイルを作る makeThumbnails という関数なら、
result = array.new() while(src = gets()) result.add(Thumbnail.new(src)) end return result
かもしれないし、例えばサムネイルを一覧表示時のアイコンに使うなら、index_iconsとか、gif化してアニメーションするならframesとかつけるかも。
ちなみに、perlなら $frame = shift @frame だ。
68:Emporio ARMANI、BARACUTA、santandrea、John Smedley、DSQUARED2
67:HUGO BOSS、LANVIN COLLECTION、PRADAsport
66:D&G、Y's For Men、COMME des Garcons Homme、COMME des Garcons SHIRT、JUNYA WATANABE MAN、Y-3、
Z Zegna、Mackintosh、Stephan Schneider、Versace SPORT、Paul&Joe
65:ck Calvin Klein Premium、Paul Smith Collection、Vivienne Westwood MAN、MIHARA YASUHIRO
64:McQ、RAF by RAF SIMONS、Ralph Lauren、UNDER COVER、Kiminori Morishita、Rykiel Homme、Grenfell、Blauer
63:HELMUT LANG、Belstaff、Pringle、J.LINDEBERG
62:MARGARET HOWELL、CNC、ato、Kent & Curwen、Brooks Brothers、Number(n)ine
61:ARMANI JEANS、N.Hoolywood、HYSTERIC GLAMOUR、ATTACHMENT、DIESEL、GREEN、LEMAIRE
60:A.P.C、Paul Smith、The Scotch House、Paul Stuart、Allegri、ck Calvin Klein
GOMME HOMME、JULIUS、Roen、The Viridi-anne
58:PS Paul Smith、KATHARINE HAMNETT LONDON、agnes b、DKNY、JOHN LAWRENCE SULLIVAN
Artisan、CABANE de ZUCCa、Ben Sherman
57:kiryuyrik、SATORUTANAKA、REATS TAILOR ZAZOUS、NONNATIVE、PUBLIC IMAGE、SHELLAC、WHEREABOUTS、wjk
56:JOSEPH HOMME、BLACKBARRETT by NEIL BARRETT、Armani EXCHANGE、LANVIN en Bleu、The DUFFER of St.GEORGE
Lounge Lizard、LACOSTE、COMME CA COLLECTION、MICHEL KLEIN HOMME、DESIGNWORKS Mens
5351 pour les hommes、Tomorrow Land、United Arrows White Label、United Arrows District
55:TAKEO KIKUCHI、FRED PERRY、J.PRESS、NEWYORKER、TRANS CONTINENTS、MONSIEUR NICOLE
LAD MUSICIAN、FACTOTUM、EDIFICE、Aramis、Or Glory
54:theory、55DSL、JOSEPH ABBOUD、五大陸、23区 HOMME、kolor、PARANOIDI、Lithium homme、pledge
53:BURBERRY BLACK LABEL、COMME CA DU MODE、MENS BIGI、ABA HOUSE、UNTITLED MEN
TOMMY HILFIGER、BANANA REPUBLIC、Mr.olive、Avoid、Rude Gallery、Davit MEURSAULT
United Arrows、nano universe、乱痴気、Adam et Rope Homme
52:JUN MEN、Arnold Palmer、NICOLE CLUB FOR MEN、Abercrombie Fitch、SCHLUSSEL、SABI SABI DELUXE
51:B&Y United Arrows、BEAMS、SHIPS、American Rag Cie、Journal Standard、R.NEWBOLD、HAMNETT、ATELIER SAB MEN
Mens Melrose、MK Homme、BOYCOTT、INTERMEZZO、TORNADO MART、MORGAN HOMME、CUSTOM CULTURE
50:TK、INED HOMME、Hiromichi Nakano、abx、FCUK、SHIPS Jet Blue、Urban Research
48:Levis、SIMPLE LIFE、SUPREME、whos who、STUSSY、And A Homme
----------------------------丸井行く僕ってお洒落^^---------------------------
47:Chaopanic、United Arrows Green Label Relaxing、UNIVERSAL LANGUAGE、RUPERT
46:MK+、CHAPS、CROCODILE、Playboy、HARE、ZARA、United COLORS of BENNETON
44:TAKA:Q、Male&Co、Wilks Bashford、Eddie Bauer、Lowbox、Zerosail、Rage Blue、
Buona Gionata、Kent in Tradition
42:PPFM、semantic design、Global Work、On Board
40:COMME CA ISM、無印良品、Mac-House、GAP、UNIQLO
38:Right-On、しまむら、PIKO、g.u.、PLUS ONE
36:Jeans Mate, LAFORM, pbi
34:306
せっかく書いたから匿名でのせてみるよ
使い方は
必要なものを gem で取ってくるにはこうすればいいよ
長すぎてelispが消えたから続きがあるよ
@echo off setlocal set WD=%~dp0 cd /d %WD% ruby get_movies.rb ruby get_images.rb ruby create_m3u.rb
user: ユーザID password: パスワード ids_file: ids.txt done_file: ids_done.txt movies_dir: movies log4r_config: pre_config: global: INFO loggers: - name: app type: Log4r::Logger level: INFO outputters: - STDOUT - FILE outputters: - name: STDOUT type: Log4r::StdoutOutputter formatter: type: Log4r::PatternFormatter pattern: "%d [%l] %C - %M" date_pattern: "%H:%M:%S" - name: FILE type: Log4r::FileOutputter filename: "#{LOGDIR}/sangels.log" formatter: type: Log4r::PatternFormatter pattern: "%d [%l] %C - %M" date_pattern: "%Y-%m-%d %H:%M:%S"
require 'fileutils' require 'logger' require 'mechanize' BASEDIR = File.dirname($0) require "#{BASEDIR}/util" require "#{BASEDIR}/sangels" $config = load_config(BASEDIR) prepare_logger(BASEDIR) $log = new_logger("get_movies") WWW::Mechanize.log = new_logger("mechanize") WGet.log = $log class IDFile def initialize(file) @file = file unless File.exist?(@file) Fileutils.touch(@file) end end def ids(contains_comment = nil) File.open(@file) {|io| io.to_a.map {|x| x.chomp }.select {|x| if x.empty? nil elsif contains_comment true else not /^\s*\#/ =~ x end } } end def add(id) ids = ids(true) unless ids.any? {|x| x == id} write(ids + [id]) end end def delete(id) ids = ids(true) if ids.any? {|x| x == id} write(ids - [id]) end end def write(ids) File.open(@file, "w") {|io| ids.each {|x| io.puts x} } end end $log.info("BEGIN #{$0} ================") exit_code = 0 begin ids_file = IDFile.new($config.ids_file) done_file = IDFile.new($config.done_file) movies_dir = $config.movies_dir wget = WGet.new sangels = SAngels.new sangels.login($config.user, $config.password) ids_file.ids.each {|id| begin movies = sangels.movies(id) rescue SAngels::Movies::InvalidMoviesError $log.warn("invalid movie id: #{id}") next end dir = File.expand_path(id, movies_dir) movies.each {|link| wget.retrieve(link.href, dir) } expected = movies.movie_links.map{|x| File.basename(x.href)} actual = Dir.glob("#{dir}/*").map {|x| File.basename(x)} if (expected - actual).empty? done_file.add(id) ids_file.delete(id) end } rescue => e $log.error(e) exit_code = 1 end $log.info("END #{$0} (#{exit_code}) ================") exit exit_code
require 'fileutils' require 'logger' require 'mechanize' require 'ostruct' BASEDIR = File.dirname($0) require "#{BASEDIR}/util" require "#{BASEDIR}/sangels" $config = load_config(BASEDIR) prepare_logger(BASEDIR) $log = new_logger("get_images") WWW::Mechanize.log = new_logger("mechanize") WGet.log = $log $log.info("BEGIN #{$0} ================") exit_code = 0 begin movies_dir = $config.movies_dir sangels = SAngels.new sangels.login($config.user, $config.password) thumbnails = sangels.thumbnails Dir.glob("#{movies_dir}/*").each {|dir| next unless File.directory? dir id = File.basename(dir) url = thumbnails.url(id) unless url $log.warn("#{id} is not found") next end path = File.expand_path("00_thumbnail#{File.extname(url)}", dir) next if File.exist? path $log.info("retrieving #{url}") thumbnail = thumbnails.get_file(id) File.open(path, "wb") {|io| io.write(thumbnail)} } rescue => e $log.error(e) exit_code = 1 end $log.info("END #{$0} (#{exit_code}) ================") exit exit_code
BASEDIR = File.dirname($0) require "#{BASEDIR}/util" $config = load_config(BASEDIR) movies_dir = $config.movies_dir Dir.glob("#{movies_dir}/*") {|dir| next unless File.directory? dir name = File.basename(dir) files = Dir.glob("#{dir}/*.wmv").sort File.open("#{movies_dir}/#{name}.m3u", "w") {|io| files.each {|file| io.puts "#{name}/#{File.basename(file)}" } } File.open("#{dir}/00_movies.m3u", "w") {|io| files.each {|file| io.puts "#{File.basename(file)}" } } }
require 'mechanize' require 'hpricot' BASEDIR = File.dirname($0) require "#{BASEDIR}/util" class SAngels HOST = "real2.s-angels.com" LOGIN_URL = "http://#{HOST}/member/" INFO_URL = "http://#{HOST}/teigaku/item.php" THUMBNAILS_URL = "http://#{HOST}/teigaku/" THUMBNAIL_URL = "http://#{HOST}/images/default/thumb/" def initialize() @agent = WWW::Mechanize.new end def login(user, password) login_form = @agent.get(LOGIN_URL).forms.find {|form| form.fields.any? {|field| field.name == "frmLoginid"} } login_form.frmLoginid = user login_form.frmPw = password @agent.submit(login_form) end def movies(id, no_validate = nil) Movies.new(@agent, id, !no_validate) end def thumbnails Thumbnails.new(@agent) end class Thumbnails def initialize(agent) @agent = agent doc = Hpricot(@agent.get_file(THUMBNAILS_URL)) elems = doc.search("div[@class=realthum]/a") @links = Hash( elems.map {|elem| href = elem["href"] id = $1 if /ID=(.+)/ =~ href url = elem.search("img")[0]["src"] [id, url] }) end def get_file(id) @agent.get_file(url(id)) end def url(id) @links[id] end def exist?(id) url(id) end end class Movies class InvalidMoviesError < StandardError end def initialize(agent, id, no_validate) @agent = agent @id = id if !no_validate && !valid? raise InvalidMoviesError end end def info_page_url "#{INFO_URL}?ID=#{@id}" end def info_page @agent.get(info_page_url) end def movies_page @agent.click(info_page.links.find {|link| /P=10/ =~ link.href}) end def movie_links movies_page.links.select {|link| /wmv$/ =~ link.href }.sort {|a, b| File.basename(a.href) <=> File.basename(b.href) } end def valid? info_page.uri.to_s == info_page_url end def each(&block) orig_links = movie_links orig_links.each {|orig_link| link = movie_links.find {|l| File.basename(l.href) == File.basename(orig_link.href)} block.call(link) } end end end
require 'log4r' require 'log4r/yamlconfigurator' require 'singleton' require 'fileutils' require 'ostruct' def Hash(a) Hash[*a.flatten] end def load_config(basedir) OpenStruct.new(File.open("#{basedir}/config.yaml") {|io| YAML.load(io)}) end def new_logger(name) Log4r::Logger.new("app::#{name}") end def prepare_logger(basedir, logdir = nil) logdir ||= basedir Log4r::YamlConfigurator["LOGDIR"] = logdir Log4r::YamlConfigurator.load_yaml_file("#{basedir}/config.yaml") end class NullObject include Singleton def method_missing(message, *arg) NullObject.singleton end end class WGet class << self attr_accessor :log def initialize super @log = NullObject.singleton end end def log self.class.log end def retrieve(url, dir) FileUtils.mkdir_p(dir) file = File.expand_path(File.basename(url), dir) if File.exist?(file) log.info("already retrieved #{url}") return true end tmp = "#{file}.part" log.info("retrieving #{url}") ret = system("wget", "-c", "-O", tmp, url) if ret log.info("retrieving succeeded #{url}") File.rename(tmp, file) else if $? == 0x020000 # Ctrl-C exit($?) else log.error("retrieving failure #{url} (#{$?})") end end return ret end end
8/18追記
vimperator2.0preから;bが実装されたので、本記事は意味をなさなくなりました。
Windows+Firefox3で確認。
hints.jsのprocessHints()に
case "b": liberator.buffer.followLink(elem, liberator.NEW_BACKGROUND_TAB); break;
を追加。7/4のバージョンだと336行目だった。
hints.jsのreturn部のshowメソッドの最初の行にbも含める。
if (mode == liberator.modes.EXTENDED_HINT && !/^[;?asoOtTvVwWyYb]$/.test(minor))
638行目だった。
buffer.jsのreturn部のfollowLinkメソッドを
case liberator.NEW_TAB: newTab = true; break; case liberator.NEW_BACKGROUND_TAB: newWindow = true; newTab = true; break;
のように変更。
これでCtrl+Shift+クリックが可能に。
Macだと新しいバックグラウンドのタブに開くキーバインドが違うからうまくいかないかも。
@see http://www.y-adagio.com/public/standards/tr_dom2_events/events.html のinitMouseEventメソッドの引数の説明。
まあ、Picasaウエブアルバムを使うということなのだが。落ち着いて聞いてくれ。俺はMacなのでWinでできるかどうか知らん。
1.Picasaの利用開始する(GmailやiGoogleを使っていれば簡単)
2.Picasa Web Albums Uploaderをダウンロードインストールする
3.シャンバラなどにいっていつものようにエロ画像をダウンロード
4.Picasa Web Albums Uploaderを起動
5. +ボタンを押す。Photos modified:をToday, Photos in:をComputerを選ぶ
7.New Albumを選び Unlisted Albumを選ぶ(じゃないと公開したことになりとっつかまる)
8.アップロード。Macのダウンロードフォルダを空っぽにしておく
9.落ち着いたらPicasaウエブアルバムを見ながら、キャプションだとかタグだとかを付ける
10.Enjyo!ってやつだ
だれか、オートメータを作ってくれ。
よもや、レスがついてるとは思わなかった。
興味を持ってもらえてサンクスです。
entry = diary.entry('20070712231804')
でエントリー指定してたからなんなんだろうと思って。
editもできるってことなのかな?
書き込んだあとの編集機能はいまんとこなし。
# get entry from id entry = diary.entry('20070712231804') # puts entry title puts entry.title # puts entry content puts entry.content
で、そもそもRubyに詳しくない自分からするとちゃんとした使い方がそれでもわからない。
バカでごめんねなんだけど、どうやって使えばいいの?
たとえば、エントリのタイトル一覧(1ページ目だけだけど)を出力するなら
diary = Masuda::Diary.new diary.entries do |entry| puts entry.title end
こんな感じかな。
新しいエントリを登録するなら
diary = Masuda::Diary.new diary.login('my_id', 'my_pass') diary.post('koko wa title ne', <<EOS) koko ni kizi no honbun wo kaku EOS
とか。
ずらーっと増田らしきものを読み込む。
そりゃそうだわなと思いながら文字化けの山。
文字化けなのは、たぶん増田のエントリ(UTF-8)をそのまんま取得しているせいだと思う。
~$ ruby hoge.rb | nkf -Ws
出力するときにSJISに変換するとか。
require 'rubygems' require 'masuda' require 'kconv' diary = Masuda::Diary.new diary.entries.each do |entry| puts entry.title.tosjis puts entry.content.tosjis end
あと
session[:diary] = diary.raw
diary = Masuda::Diary.restore(session[:diary])
の...って何でしょうか??
Masuda::Diary#rawはインスタンスをシリアライズするメソッド。
ログイン済みのインスタンスをシリアライズしてセッションにつっこんどいて、次のリクエストでも使いまわすとか。
わかりづらい文章で申し訳ない。