スクリプト言語で重要な事はエロ画像集取で学んだ 1. スクリプト言語で 重要な事は エロ画像集取で学んだ @shokai 大人のYAPC2013 2. 私 •@shokai (しょうかい) •趣味:料理、glitch、Ruby •Perl書けないけど •LT応募したら通った… 3. Perl勉強した 4. Perl2.0の薄い本 簡潔でわかりやすい! 5. 正規表現とか配列だけ でもだいぶ色々できる 6. 今日のお話 7. 画像いっぱい集めたい という欲求で いつのまにかRuby書ける ようになってた話をします 8. ぜんぜんPerlでてこ ないけど 9. たぶんPerlでも だいたい同じ感じで プログラミング学習で きると思うから許して 10. 2008年ごろ 11. Yahoo Pipesで 画像掲示板から RSS作りまくった 12. Web系やったこと なかったけど欲望 のまま100
__papix__ 君が主催をして開催している Perl入学式 というイベントがあります。Unix/Linux/OSXの環境構築から始まり最終的にはWebアプリケーションをつくるハンズオン形式の勉強会を今年は年6回に分けて開催しているようです。かなり丁寧にPerlを教えているという印象があって、それがどんな雰囲気か以前から気になっていたのですが、昨日「Perl入学式 in 東京 #2」にサポーターとして途中から参加させてもらいました。 簡単に感想を述べると「これはすごくいい」。肝は最適な練習問題が所々出され、するとみんな黙々とコーディングし始めるんだけど、それが終わると、参加者同士でコードを見せ合って「これで合ってるかな?」「私はこんな風に書いたよ」と言うようなコミュニケーションが生まれてたりしているのです。正直その様子を見て感嘆しましたよ。 *追記「Perl入学式の補講があるらしいよ!」
Backbone.js Advent Calendarの15日目です。軽めにいきます。 Backbone.Modelのattributesにオブジェクトを設定するときの注意点など。attributesはsetとかで設定される値をオブジェクトして持っているやつです。 まず次のようにsetでattributesを設定します。 var MyModel = Backbone.Model.extend(); var m = new MyModel(); m.set('hoge', 'fuga'); m.set('foo', { bar: 'baz' }); このようにhogeには文字列、fooにはオブジェクトを設定しました。そしてtoJSONでattributesを取得して値を更新してみます。 var attrs = m.toJSON(); attrs.hoge = 'new fuga'; attr
本当はHOMEキーの押下を検知したかったのが断念。 せっかくなので別の利用方法を考えてみた。 Activity::onUserLeaveHintを使って行う。 コードは以下。 /** * ユーザーが自分のアプリからどこかにいったかを判断するヒントを教えてくれる。 * 自分の持つ別アクティビティを起動した時も呼ばれてしまうので注意。 * 電話の着信のように、ユーザーが意図していないアプリの切替には反応しない。 * HOMEキー押下時も呼ばれる。 */ @Override protected void onUserLeaveHint() { if (isMe()) { showToast("わたしです (^o^)"); } else { showToast("Good Bye !"); finish(); } } /** * トップにあるアプリが自分であるか確認 * @return */ pr
あるブログが「写経には効果がない」という趣旨のことを書いていて「何を言ってるんだ?」と思いじっくり読んでみたら、彼の言う写経は「動くとわかってる10000行のコードを何も思考せず作業として書き写すこと」を指しているようだった。「そんなわけないじゃん」と笑ってから「もしかして世の中は写経をそういう捉えてるのか?」と不安になった。 写経は自分の中にモデルを作るための行動で、他のもっと効率のよい方法と比べた場合の利点は「自分の中にモデルがなくても使える」点に尽きる。全く知識ゼロでいきなり「自分で考えて書く」ができる人はいない。考えるための材料となる知識をまず脳内に運び込む、それが写経だ。 写経の過程で大事なことは以下の3つだ。 1: 早く学びが得られるように、なるべく小さいコードで実験し、すぐに結果を確認する。 2: 疑問に思ったこと、考えたこと、気づいたことを書き留める。どうしてこういう書き方
2013年03月07日20:45 カテゴリArtLightweight Languages perl - 「は衰退しました」という人々の共通点 この話題に関してはすでに 言語設計者たちが考えること Mastermind of Programming Federico Biancuzzi / Shane Warden 伊藤真浩 / 頃末和義 / 佐藤嘉一 / 鈴木幸敏 / 村上雅章訳 [原著:Masterminds of Programming] 404 Blog Not Found:与えよ、さらば求められん - What #yapcasia gave me 404 Blog Not Found:コードについて書く方がコードを書くより読まれる現実 404 Blog Not Found:悪「言語」身に付かず - 「書ける」と「身に付く」の間に などでも答えてきたはずなのだけど、またお呼びがかか
はじめに 昨日はソニックガーデンにしては珍しく、ちょっとしたコーディングスタイル論争(?)が発生しました。 議論のネタになったのはRubyのcase文のインデントについてです。 when節はインデントすべきか、それともcaseキーワードと揃えるべきかの議論になりました。 x = 1 # インデントする場合 case x when 1 puts "x is 1" when 2 puts "x is 2" else puts "x is other" end # インデントしない場合 case x when 1 puts "x is 1" when 2 puts "x is 2" else puts "x is other" end Rubyのコーディング規約をいくつか見てみると、後者のインデントしないスタイルの方が多数派だったので、「インデントなしでいいじゃん」で結論付ければいいだけかもしれ
複数のプロセスでロック状態が異常であると判断し,そのうちの 1つがロックを解除したことにより,別のプロセスがロックしたにもか かわらず,先ほどロック状態が異常であると判断したプロセスによってこの正常なロッ クを解除されてしまう可能性があります. この方法の問題点は,異常なロック状態を解除する操作が正常なロック状態をも 解除できてしまうことにあります.逆に言えば,異常なロック状態を解除する操作に よって正常なロック状態を解除できなければ問題ないわけです.そのためにはどうす ればよいのか? 答えはロック状態が常に変化していけば よいということです.そして,これを実現するのに都合がよいのが rename による方法になります. 最初のスクリプトで説明しますと,ロックファイルが lockfile という 名前のときがロックが解除されている状態で,lockfile987654321 のよう に後ろに
『アート・オブ・Rプログラミング』の日本語訳が出たので早速買いました。 細かい仕様の解説が多くちりばめられていて結構いい感じです。 プログラミング初心者向けではないですが、他の言語になじんでる人が R に入門したい場合には、他の入門書よりもこっちを読んだ方が手っ取り早いのではないかと思います。 例えば、下記のように、他言語との比較による解説が各所に見られます。 他のスクリプト言語の経験がある読者は、Python での None や Perl での undefined などの「存在しない」値を知っているかもしれません。実は、R にはこのような値が2つあります。NA と NULL です。 http://www.amazon.co.jp/gp/product/4873115795 さて、今日はこの本の 1.7.4 節からの話題です。 統計言語 R には、公式ヘルプが付属しており、例えば平均値を計
Node.js+Socket.IO+MongoDB こんにちは! 著者は、マインドフリーという会社でNode.jsを使ってWebアプリなどを作成している。この連載では、最新Webテクノロジを使った研究開発の事例や実績を発信する弊社のサイト“Tech Release”のリニューアルで培ったNode.jsに関する知識を分かりやすくお伝えする。 Tech Releaseは一見、普通のブログに見えるが、実は記事の更新内容がリアルタイムにView画面に反映されている。管理者が、記事の文章(データ)に変更を加えると、その記事を見ている人にもページをリロードせずに、リアルタイムに文章(データ)が変化していく。 このUXを実現するために開発したシステムが、REALTIME BLOG ENGINE「REABLO」というエンジンだ。「REABLO」はNode.jsとSocket.IO、MongoDBを使用して
Perlでコマンドラインオプションをparseしようと思うと組込みモジュールとしては Getopt::Std と Getopt::Long がある。が、long style option *1 つまり --option-name のようなオプションを解釈してくれるのは Getopt::Long だけだ。なので普通はこちらを使おう。 ただし 絶対にデフォルト、つまり以下のようにして使ってはいけない。 use Getopt::Long; my (@primary, @secondary, $silent); GetOptions( "server-primary|p=s" => \@primary, "server-secondary|s=s" => \@secondary, "silent|S" => \$silent ); これダメ! 絶対ダメ! 死ぬ! 最初に結論を書く 必ず以下のように
Androidではアプリを終了させる場合、System.exit(0) でもアプリを終了することができますが、この方法ではVMごと強制終了させるため、アクティビティのライフサイクルを無視することになる上メモリなどのリソース解放に失敗するおそれがあり、安全ではありません。 適切な終了方法はどれか、ということでアプリケーションを終了させる方法をまとめてみました。 アクティビティを閉じる際の最良の終了方法です。 現在のアクティビティを閉じて前のアクティビティに戻ります。 アプリケーションの起動アクティビティで呼び出した場合はアプリケーションを終了します。 バックボタンを押した時と同じ動きで、実行すると onPause(), onDestroy()が順番に呼ばれます。 復帰時は新規生成となり onCreate(), onStart(), onResume() の順でイベントが発生します。 ■Act
Today I am happy to announce that you can find the source for TextMate 2 on GitHub. I’ve always wanted to allow end-users to tinker with their environment, my ability to do this is what got me excited about programming in the first place, and it is why I created the bundles concept, but there are limits to how much a bundle can do, and with the still growing user base, I think the best move forwar
MVC is a phenomenal idea. You have models, which are nice self-contained bits of state, views which are nice self-contained bits of UI, and controllers which are nice self-contained bits of … What? I’m certainly not the first person to notice this, but the problem with MVC as given is that you end up stuffing too much code into your controllers, because you don’t know where else to put it. To fix
ここ数年、会社を辞めて自分のペースで仕事を請け負うフリーランスという形態で仕事をする人が増えています。フリーランスには様々な職業があり、代表的なものでは翻訳業やイラストレーター、YouTuberもフリーランスに分類されます。そして代表的なフリーランスの職業がもう一つあります。それはプログラマー/エンジニアです。そのプログラミングの大部分を占める工程がコーディングであり、知識と技術を身につければ、憧れのフリーランスに鞍替えすることも夢ではありません。 それではコーディングの知識と技術を取得するにはどのようなルートがあるのでしょうか?現実として学校に通うか、プログラミングを請け負う会社に入社するか、あるいは独学で取得するかのいずれかを選択することになります。そこで今回は最も費用の少ない独学でコーディングを学ぶ方法を紹介したいと思います。 独学でコーディングの知識と技術を身につけるには まずはプ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く