はてなキーワード: ソースコードとは
・挫折するな
・わけわからんことも絶対に「慣れ」て分かるようになるから諦めるな
・小問をいっぱい解いてプログラム作成の手順「仕様決定→コードへの落とし込み→デバッグ」を体で覚えろ(例:「解きながら学ぶC言語」)
・処理が複雑になったら関数にわけろ
・自分のやりたいことを分解して、小さなことから少しづつ進めていけ
・○○係みたいな感じでクラスを人だと思って作業分担させろ
・ただし、連携はなるべく少なくするんだぞ。「疎結合」を意識しろ
・複数のクラスを管理するクラスを作るとすっきりする場合があるぞ
・変数、関数、クラス、ファイルなどの名前付けは重要だぞ。知らないひとが見ても誤解しないような名前をつけるんだぞ
・抽象化は重要だぞ。うまく抽象化された関数やクラスは「実装すべきことがシンプルになる」「汎用性があがる」「不具合を見つけやすい」といいことづくめだぞ
・抽象化がわかりにくかったら、汎用的にすることを考えるといいぞ
・本屋のプログラミング書籍コーナーの書籍はタイトルだけでもすべて目を通しておけ
・本のタイトルに聞いたことがない単語があったら中身を読んでみろ
・プログラミング書籍いっぱい買うと本棚からのプレッシャーでやる気が起きる(かもしれない)ぞ
・プログラミング複雑すぎて人間にはできる気がしないって?大丈夫、慣れるから!
・プログラミング奥深すぎるって?あまり深淵をのぞくなよ!ほどほどにしとけ
・「根性」があればなんとかなるぞ
http://d.hatena.ne.jp/nowokay/20130322#1363969460
以下の記述のまとめ:
お前の言っているソフトウェア工学は今のソフトウェア工学じゃねえよ.
端的に言うとそんだけ.
で,本題.
まず,書いてる内容が古すぎて救いがたい.iPS細胞の研究がノーベル賞取った現状で,「実験材料に受精卵を使う万能細胞の研究なんて許されませんよ!」と主張されても,その何だ,困る,とかそういうの.
1999年、なにがあったかというと、XPエクストリーム・プログラミング入門という本が発行されたのです。リンク先は2版ですが、日本語版でも初版は2000年12月になっています。
で,何?2000年以降ソフトウェア工学が何も進んでないと主張したいの?
って最初に書いてあんのに,そこから崩れて何も出てきてないって主張はどっから出てきたの?自分が知らないことが分かってるのにドヤ顔で提言とか大丈夫か?
しかし、結局統一設計手法は完成せず、UMLだけが残りました。実際に使われているのはその一部です。CORBAも普及せず、WebプロトコルにあわせてSOAPが出てきたものの、結局単純なRESTが定着しました。XMLはいまは毛嫌いされています。大成功したはずのオブジェクト指向も、Webアプリではうまく適用できませんでした。
だから何だ.提案されても使いにくかったり,状況自体が変化したら無用になるに決まってる.まさか「ソフトウェア工学分野で提案された手法はどれだけ開発環境が変わっても生き延びていなければならない」とかいう寝言じみた主張でもしたいのか?言語に流行廃りがあるように,手法にも流行廃りはあるに決まってるだろ.
あとSOAPとXMLに関しては,その衰退過程自体がよくある話すぎて話にならん.一番最初に厳格な重量級の様式が定められて,それをベースに運用レベルを考慮した軽量級の様式が定義されて駆動するってのはよくある話.言い換えると,学術から出てきた理論的に正しい手法が,産業界で必要なところだけつまみ食いされる形で運用されるとか,サンプルは死ぬほどそこらじゅうに転がってねえか?
ああ,CORBAはまあ,うん,そのなんだ.アレはフォローできない.
実際のところ,UMLが残っただけで十分じゃねえの?最初に提案された時の理念さえブレてなければ,つまみ食いしたモノがはやってても提案者的には本望だろ.
今はCMMIだ.CMMは2000年にCMMIに統合されてる.今更XPの本出してくるところといい,真面目に2000年より前で知識止まってんだな.
はぁ?動的型付言語が普及したらなんでソフトウェア工学と離れんのよ?静的型付言語で使えて,動的型付で使えなくなる研究分野なんぞ,完全にソースコードに寄り添った研究だけじゃねえか.
「この手法はC言語を対象としている」って書いてある研究は他の全ての言語には一切適用できないと主張してんのと一緒だ.はじめてのCあたりからやり直せ.
ここで、やはりCMMの失敗がソフトウェア工学にとっての痛手だったように見えます。
もちろん、プロセスを規定することが難しいということは当時からも言われていました。それであるから、CMMはプロセスそのものを規定するのではなく、プロセスの規定方法を規定するというメタプロセスになっていたのです。
そして、すべての組織で同じプロセスを採用することはできないということから、5段階のレベルを設けました。また、プロセスは変化し続けなければいけないということから、CMM成熟度レベル5では「最適化している」という成熟度になっていました。
これはなかなかいいかもしれないということで、期待は大きかったと思います。
でも、とにかく運用が大変だとか、CMM成熟度レベル5でも品質がいいわけじゃないとか、そういう話がきこえてくるようになりました。
まず失敗を定義しろ.で,失敗したってんなら,CMMIで未だに新たな認定がなされてる(http://cmmiinstitute.com/assets/presentations/2012SepCMMI.pdf)理由を説明しろ.
で,運用が大変?当たり前だ.品質確保すんのに運用が楽とかあり得んだろ.従業員に好きにやらせてもアウトプットが高品質ならそもそもCMMIなんぞ必要無い.順序が逆だ.「CMM成熟度レベル5でも品質がいいわけじゃない」ってのも当然だ.アレは組織の成熟度を評価する指標であって,中で働く人間の能力を評価してるわけじゃない.というか流動すんのに評価なんぞできねえけど.
そもそも,CMMIレベル5ってのはおおむね高品質なものが出てくるだけで,人間が関わっている以上ある程度のばらつきは存在する.つーかさー,CMMIレベル5なら必ず高品質のモノが出てくるとか思ってんの?まさかまだ銀の弾丸の存在を信じてんの?「ISO9001に準拠してればリコールなんて発生しない!」と思い込むくらい残念すぎねえか,その思考回路.
ああ,「CMMI」じゃなくて本気で「CMM」の話をしてるんなら申し訳ない.もう無いんだから,CMMの話を最近全く聞かないのは当然で,勘違いしても仕方ない.悪いもしくは古いのはアンタの頭だ.
もともとソフトウェア工学に対しては「がっこーで現場しらない人が研究してる手法なんて使えない」のような声があったのですが、XPやアジャイルによって「現場から生まれた手法のほうが使えるよねー」というのが決定的になりました。
前半は正しい.ソフトウェア工学の最初期からずっとその手の意見はあって,未だに言われてる.が,後半は話にならん.
真面目に聞くんだけど,アジャイルソフトウェア開発宣言に名前が入ってる17人のうち,何人知ってる?何人が開発寄りで,何人が研究寄りか分かる?まさかKent Beck1人を見て「アジャイルは現場から!」とか寝言垂れて無いよな?そもそもKent Beckはコンピュータサイエンスで博士号持ってるし,開発寄りと主張していいのかどうかすら微妙なんだけど.
あとアジャイルも突発的に出てきたわけじゃなくて,プロトタイピングとかあの辺(とそれ以前)からの流れがあると思うんだけどなあ.
ソフトウェア工学が何を失敗しているかというと、その学問自体の認知度が低すぎることです。
ソフトウェア工学がどのような問題を扱う学問かが知られていない。どのような問題を扱う学問か知られていないので、その問題に直面している人がソフトウェア工学の成果を積極的には利用できない。
問題に直面してる人がソフトウェア工学の成果を積極的に利用できないうんぬんについては,最近の国際会議でもその辺を扱った研究が出てきてたりする.ICSE2012のDistingished paperのうちの1本がそんなん.Eclipseの検索ツール使わずに,テキストエディタにコピペしてCtrl+F使ってる人の話とか出てきてた覚えが.
ただ,ソフトウェア工学の認知度なんぞどうでもいいと思うんだけどなあ,別に.そっから出てきたモノが使われさえしてりゃあ.ソフトウェア工学研究の成果が,それと分からずに使われてるんならそれ以上に望むべきモノは無いだろうに.「これがソフトウェア工学様の研究成果でござーい」と大上段に振りかぶって,「ありがたや」の言葉と共に使われることを望んでる研究者なんぞいねえだろ.
就職活動で「半年でプログラムは覚えれるし専門は必要ない」のようなことを言われるという話があります。たしかにアルゴリズムなど実装技術の研究をしていた人をSIの開発現場で生かすのは難しいと思います。でも、ソフトウェア工学の専門知識は、半年で覚えれるものではないし、SIでの開発現場に必要になるはずです。
うん,そうですね.だがそれを学術側を知ろうともしてない人間が言うな.
ソフトウェア開発がある限り、ソフトウェア工学は必要なので、XP・アジャイルを織り込んで再構築して、認知度を高めていってほしいなーと思います。再構築とかは他力本願になってしまうけど。
ソフトウェア工学を再構築しよう,という動きとしては http://semat.org/ あたりがあるのでそっち参照.
あとさー,そもそも論として,ソフトウェア工学の研究内容を「現場」と「学術」に2分することが不可能だって分かってる?工学ってそういうもんだろ?その2分は「工学」と「理学」というレベルでは可能なのであって,既に工学にカテゴライズされてるソフトウェア工学を分けるのは不可能だ.それくらいは語の定義レベルの話なんで,分かっててくれ,頼む.
まあ暇ならトップ会議であるところのICSEのプログラム(https://files.ifi.uzh.ch/icseweb/fileadmin/downloads/ICSE2012_conference_program.pdf)でも眺めてみて,ソフトウェア工学の定義について悩んでみるのもいいかと思います.
実際のところトピックは割と流動的.最近はOSS周りが流行.gitのおかげで開発者の行動とか取りやすくなってる関係もあって.
つまりさー,なんでか知らんけど,この人の頭ん中では「ソフトウェア工学は静的型付言語を利用したウォーターフォール型開発でしか使えない」てことになってんだよな.
日本のSIerが求めている人材がいかなるものか、よーくわかったよ。
めんどくさいことをめんどくさがらずにやってくれる人だろ。
スパゲッティ化してどうして動いてるのか意味不明なコードを解読してくれる人。
コードを修正した場合の影響範囲を大量のExcelドキュメントから洗い出してくれる人。
自動化されていない単調で膨大なテストを手抜きせずにこなしてくれる人。
営業と話の辻褄合わせるためだけの、何の意味もない数字合わせの工数見積を徹夜でやってくれる人。
そういう人材だろ。
ソースコードを読めばすべてが理解できるようなプログラムが書ける人、
突貫工事で初期開発を終わらせて、
あとはできあがったものをえっちらおっちら運用してくのがビジネスモデルなんだものな。
おれSIer向いてないわ。辞めよう。
日本のSIerが求めている人材がいかなるものか、よーくわかったよ。
めんどくさいことをめんどくさがらずにやってくれる人だろ。
スパゲッティ化してどうして動いてるのか意味不明なコードを解読してくれる人。
コードを修正した場合の影響範囲を大量のExcelドキュメントから洗い出してくれる人。
自動化されていない単調で膨大なテストを手抜きせずにこなしてくれる人。
営業と話の辻褄合わせるためだけの、何の意味もない数字合わせの工数見積を徹夜でやってくれる人。
そういう人材だろ。
ソースコードを読めばすべてが理解できるようなプログラムが書ける人、
突貫工事で初期開発を終わらせて、
あとはできあがったものをえっちらおっちら運用してくのがビジネスモデルなんだものな。
おれSIer向いてないわ。辞めよう。
http://d.hatena.ne.jp/iad_otomamay/20130318/1363596244
この記事。本当に腹が立ちました。
まず質問自体が酷いのが多い。
省略したのは知らないと障害の危険があるので知っとくべきってことで同意なんですが、
これは使うときにググれば良い話。暗記しておくメリットがわからない。
結合テスト中のシステムで、OutOfMemoryErrorが発生しました。UT後ソースコードの変更はしていません。ヒープメモリは足りているようです。原因として何が考えられますか?(筆記解答)
「UT後ソースコードの変更はしていません」という一文が意図不明。単体テスト終わった後にソースコード変更したら、再度単体テスト必要だと思うのですが?この一文は何のヒントにも制限にもなっていないです。
なぜNGなのかというのは「文字列連結演算子(+)では速度が遅いから」であり、StringBufferかStringBuilderのような結合用クラスのappend()を使うことでパフォーマンスは向上する、というところまでが質問の狙いなのかと思いました。もう一歩踏み込むならば、+をしたときにコンパイラでどのようになるかを知っているかどうか、みたいな。しかし結合用クラスにはデメリットもありまして、append()は冗長過ぎて可読性が酷く低下するデメリットがあります。文字列の連結時にクラスをnewするタイミングを調節したほうが速くなることもあります。近年ではマシンのスペックもあがってますので、そんなに気にする部分ではないと思います。そもそも、このStringBufferの仕組みは絶望的に救いがないJava言語の汚点と言ってもよい部分です。なんで文字列の連結方法に複数のやり方を速度だけの理由で取捨選択させるというバッドノウハウなので、早くコンパイラが最適化して一元化くれることを望む部分です。
StringBufferかStringBuilderと書いていて、そういやスレッドに関しての質問がないのはどういうことなのかと感じました。JavaのWeb系ってスレッド重要だと思うのですが。
JavaScriptでHTML要素をid属性の指定により取得するメソッドは何ですか?(筆記解答)
もうjQueryやDojoも使われるようになってきたからこれも知らなくてもいいんじゃないかと。id指定で取れるということとを知っておけば答えにはたどり着けるはず。バッドノウハウです。どうしてJavascriptが最近になって流行ってきたかを思い出して欲しいです。
プログラマーはバッドノウハウの塊でなくてはならない、というのが見えてくる質問内容ですが、最近は覚えなければならないことが多く、技術の更新スピードも早いので、あの質問のような重箱の隅まで暗記するようなことをしていては、重要な部分が抜け落ちているし、暗記の苦手な人は辛いと思います。書籍もネットのような情報の蓄積と抽出する部分は充実してきたので、概念は知っておいて、実装手段はその都度調べるほうが効率的であるかと思います。質問は、応用の効く根本的な部分を問う方がよかったです。
「現実は、もっと凄惨な世界を経て時代が進んでいくようだ。」などと締めくくっていますが、この人は凄惨な世界が嫌なのでしょうか?不安を煽るだけで対策も講じていません。まず、質問の回答を書くだけでも、読んだ人の知識の底上げに貢献できると思うのが普通です。「これは基礎教育をやってれば当たり前」とか言ってドヤ顔して、できない人間を馬鹿にしているだけに見えます。本心では凄惨な世界を望んでいるのでは?としか思えてなりません。
この記事を読んだことで、またSI業界から優秀な人が遠のくことでしょう。こんな人間が居る業界には居たくないと。
どうして悲しみを減らす方向に動いてくれないのかと…
※追記
頭沸騰しててスルーしてしまったのですが「淘汰」って書いてあったので、業界の底上げは望んでないんだなあと、見当はずれなこと書いてしまったなあ、と、後悔した。
大学を通して販売したが,全く関わってもらった覚えはないし,どちらかというと邪魔をされた覚えしかない.
もちろんアイデアも出していないし,ソースコードも1行も書いてもらっていない.
それに関しては研究費も全く使っていない.
いい加減切れて話し合ったが,どうも話が通じない.
「僕なら貢献なくても名前書くよ」
そりゃそうなんだろう.お前ん中ではな.
そりゃあんたが言う話じゃないし,
あんたがたくさんもってるいつ金になるかわからない業績書類に書くためだけの特許とは違う.
だがなんで俺のプログラムの金がてめーのポケットに入るんだ.
あんたの仕事はしてるだろう.
http://anond.hatelabo.jp/20130309233920
俺、それなりの規模のSIer側の人間なので、下請けに出す側の人間だけど、下請けもたいがいクソだよ。
会社は、対象のプログラミング言語を「やったこともない」人間を出してくるし、
そうやってやってきたPGは、コーディング規約(何も難しいことはない、空白の入れ方や大文字小文字のルール等)すら守れず、ひどいときはインデントすら合っていないコードを書く。IDEでどうやってそんなことができるのか不思議だが。
まともにロジックが組み立てられないから、プログラムはフラグの嵐。長大なメソッドを書く。
ソースコードレビューで品質が担保できるのは、かなり早い段階からレビューが実施できた場合で、デスマってくるとなんだかんだで先送りになり、気づいた時には千行のメソッドができあがっているわけで、そんなもんレビューしたって直しようがない。もちろんそんな状況にしてしまったプロジェクト運営に問題があるのだけれど、それにしても、それにしてもさあ。
で、下流の人間は、(契約形態によるけど)残業代がかかるし期日がくると逃げる。で、バグだらけのクソコードを俺がサビ残でせっせと直しているわけさ。
秘密のブックマーク、略して「秘ブ」というソーシャルブックマークサービスを作ってみました。
今は風俗嬢やってるんですが、(悲しいことに)時間があったっていうのと、
秘ブ.jp
(アダルト専用のソーシャルブックマークサービス)
http://anond.hatelabo.jp/20101203150748
・Rails3 と jQuery で、真面目にオシャレなエロサイトをつくってみました
私は、早く自立できるようにと高専を出て、田舎から東京に移り住み、事務として働いていた。
この時点ではエクセルとかワードとかは使える、マクロもちょっと組める程度のレベル。
自立したかったのは父親が生活費をパチンコとか女に溶かすような輩だったため。
私が自立したあと、両親は無事離婚。激務で薄給、母親と離れて暮らして寂しくても頑張っていた。
鬱病はつらい。何が辛いって、本人も辛いんだろうけど、荒んだ部屋の中で横になって息を潜めている母親の姿を見るのがきつい。
いつでも母親の側に駆けつけることができるように、お金と時間に余裕が欲しかった。
でもねー、全く稼げないwww 笑っちゃうくらい。
大衆店にいるんだけど、女の子もお店も多くて、私より若くて可愛い子がわんさかいる。
お客さんがつかないと収入0なんだよね。
店長やお店のお姉さんがマットや椅子を覚えな、ってアドバイスはくれるんだけど、
その頃教えてくれる先生がたまたまいなかった。(今は別の店に修行にいったからバッチリできるけど)
仕方ないからようつべとか動画サイトでソープのお仕事系の作品を見まくったわけ。
(余談ですがマ◯ティ夫人ってお店のマット技一覧のページはすごいよ!)
お客さんつかないから時間がすんごいあって、待機室でずーっと見てた。
で、マットの動画とか、ボディ洗いの動画探すんだけど、なかなか見つからない。
で、そんなことをしてるうちに思ったんだけど、エロサイトやエロ動画、
果てはマニアックな趣味の情報を共有できるサイトがあったら便利じゃないかな?と。
数少なく接客したお客さんで、わざわざブーツ持参で、顔面を踏みつけてくれ、って人がいたんだけど、
でも日本中を探したら、同じ趣味や、近い嗜好の人がいるんじゃないかな?って。
時間は私自身が病むほどあるし、そんなわけで制作に取り組みました、秘密のソーシャルブックマーク、
略して「秘ブ」(「秘部」とかけてあったり)
吉原の泡姫たちは、タクシー通勤する人が多いんだけど、私は三ノ輪の駅から歩いて通ってた。
元彼に借りたプログラムの本などどっさり持って。めっちゃ重いw
待機室でひたすら落ち込みながら金勘定するより、母親の心配をするより、何か生産的なことを考えていたかったんだよね。
この一年でかなり勉強して、ようやく公開できるレベルに達したかなとおもいます。
みんなが来てくれるかはわかんないけど、まあ来てほしいなと思う。
さて、湿っぽい話はここらへんにして、どうやって作っていったかを話しましょう。
・Semantic Scuttle
http://semanticscuttle.sourceforge.net/
・HeartRails Capture
http://capture.heartrails.com/
・Twitter Bootstrap
http://twitter.github.com/bootstrap/
・Bootswatch
サイトの構成なんかも書こうと思ったけど、セキュリティ的に良くないって聞いたし、
はてな民のみなさんに突っつかれるのが怖いので少しだけ(^_^;)
まあ違う意味で突っつかれるのは慣れてるんだけどw
簡単に書いとくと、HTML、CSS、PHP、MySql、javascriptくらい…なのかな?
Semantic Scuttleが裏でやってることはあまり詳しく分からないです。
どうやらまずはHTMLとCSSをやれということらしいので、そこから始めた。
使ったのはこれ。
メモ帳で簡単なWebページを作りながらだと結構スッと頭に入ってくる。
逆に言うと、読んでるだけだと全然あとで思い出せない。
「Ctrl+U」でページのソースを一発で見れることを知り、参考のために色んなサイトのソースを見まくった。
全部頭に入ったわけじゃないけど、ここまでで最低限、検索ワードが思いつくぐらいにはなる。
ここまでで大体一ヶ月くらい。
もちろんHTMLとCSSだけではてブ的なものが作れるわけはない。
っていうかほぼ路頭に迷った感じで「はてブ的なものを作る方法」をググりまくった。
結果「Semantic Scuttle」なるものでそれに近いサービスを作れることが判明。
「Semantic Scuttle」を調べてみると、どうやらPHPとMySQLで動いているらしい。
でもダウンロードしてみて中身を覗いてみても何が何やらさっぱり。
とりあえず2つ一緒に覚えられそうだと思って元彼にこの本を借りてきた。
XAMPPのインストールをして、PHP書いて、MySQLと接続して…
ふむふむ、書いてあるとおりに作ったのは作ったけど、あんまりわからん。というのが感想。
ちなみにPHPを書き始めるのにあたって、eclipseという統合開発環境(意味がいまいちわかってないけど)を紹介され、インストール。
コード書きやすすぎ、色分け便利すぎワロタwwwと思ったのを覚えている。
設定はめんどくさかったけどね。
eclipseについて詳しくは→http://www.javadrive.jp/eclipse3/
しかたない、まずはPHPだけでも頑張るかと思い、次に借りたのがこの本。
ひと通りサーッと読んで大体どんなことが書いてあるのかを頭に入れてから、
必要そうなところを詳しく読んで作ってみてっていうやり方をした。
MySQLのことにも触れてあるので、そっちの復習もできた。
クラスについても薄らぼんやりわかってきて、動くものを作れるレベルには上達。
この辺りは、サボったり迷ったり環境整えたりで2ヶ月くらいかかったかな。
さて、これでいけるだろうと意気込んで長らく保存しておいたSemantic Scuttleのソースコードを見る。
…わからん。
挫折。。
どうすればいいのってことで、元彼にヘルプ。
「MVCってのがあって、モデルとビューとコントロールってのが多分…」
「とりあえずindex.phpから見て行ったらいいんじゃないかな?」
ふーん。今でもMVCとかってのはほとんど理解してないけど、最後のは役に立った。
ファイル名やら関数名でプロジェクト内を検索しまくって、大体の構造を把握。
と簡単に書いてみたものの、この作業には2ヶ月ほど費やした。
構造はなんとなくわかったものの、実際触ってみると動かなくなるケースが多数。
ひと通りの勉強は一応したけど、実地のカスタマイズは非常に難しい。
他に使ってる人おらんのかなと思い探してみるとこんなものが。
・ソーシャルブックマークソフトScuttleの強化版Semantic Scuttleを導入してみる
http://tukaikta.blog135.fc2.com/blog-entry-70.html
ありがたくカスタマイズに利用させてもらう。ホント感謝しまくりです。
でも上のURLに書いてあること以外にもカスタマイズしたいところがあった。
1.ブクマ数を記録したい
1はだいぶ考えたんだけど、DBをちょっといじくって、フィールドを追加してそこに記録することにした。
2はPHPとDBをあれこれして、ド汚いコードながらも根性で実装。
3で再びの挫折。なぜならjavascriptを使わなければならないことが判明したから。
まだ勉強しなきゃいけないのか…とは思ったが、初心を思い出し、頑張ることを決意。
おらあああ!なんかjavascriptの本貸せやぁああああ!と丁寧に元彼に頼んでみたところこの本が手に入った。
JavaScript 第5版
うん、馬鹿じゃないの。こんなん理解できないよ。こっちは時間がないんだよ!
もう一冊なんか初心者向けを貸せ!
マンガでわかるJavaScript
読了したあと、ネットと前者の書籍で必要なところだけ調べることにした。
で、調べていったところ、4については
scriptタグでtypeを"text/javascript"にしてもPHPを読み込めるということがわかり、PHPで強引に表示させることにした。
3はもともとSemantic Scuttleにあったブックマークレットをちょこっと編集して解決。
これで大体1ヶ月半くらい。
一応CSSは勉強したけど、美術的センスのない事どこかのはいだしょうこお姉さんレベル。
でもデフォルトのデザインがダサいってことくらいは、かろうじてわかる。
あらん限りの人脈を使ってデザイナーさんを探したところ、やっとのことで0人見つかった。
どうも調べたところ、TwitterのBootStrapってのがいいらしい。
CSSを見てみるが、長い! 「Bootstrap 使い方」でググる。
よくわからないながらも↓とか見ながら手探りでコードを書いていく。
Twitter Bootstrapの使い方
http://greenapple-room.com/conc/user/TwitterBootstrap/bootstrap.html
これでとりあえず基本的なことがひと通りわかり、ちょっとだけよくなった。
だいぶ前にやったCSSを思い出すのが大変だった。
でもタイトル周りとかが全然ダサイまま。普通に自分で見てて萎えるので、さらに調べる。
見つかったのが↓
Bootswatch
あ、なんかこれいいなと思って「Slate」っていうテーマをいじくりいじくり、色々試しながらタイトル周りとかを整理。
まあこんな感じで大体できましたー!
全部で約8ヶ月…長かった…。憑かれたぜパトラッシュ…
・ググる ググる ググる!とりあえずなんでもググってみることが一番大事だとわかった。
誰かが同じようなことをしてることも多々あるし、少なくともヒントくらいは見つけられる。
・助けてくれる人がいるとかなり楽
ググっても出てこない情報は厳然としてある。そういう時は、経験者にアドバイスをいただく。
Yahoo知恵袋でもいいし、知人でもなんでも。ネットの優しい人達に感謝するようになった。
お店の掲示板では叩かれっぱなしだけどw
・プログラマーすごい
今まで何気なく見てたホームページだけど、膨大な技術の結晶なんだなと思った。
その端っこに触れただけの私のようなものでもそう感じるんだから、それはそれは深遠な世界なのでしょう。
せっかく作ったので、使ってやって下さい。
詳しくは↓をご覧あれ。
http://hibu.jp/bookmarkbutton.php
このサービスは一応「秘密の」もんなので、普段使ってるSNSのユーザー名とか使わないほうがいいんではないかと思います。
ブラウザに直接入力でも簡単にいけるようにドメインはまんま「hibu.jp」にしておいたので、
ブラウザにブクマするのもはばかられる方はダイレクトに飛んできて下さい。
スマホ版作りたいなぁ…
ちなみに、勉強したおかげか今現在はそこそこ本職のほうで稼げてはいます。
もし万が一このサイトが成功したりしたら風俗あがることも考えられるのかなぁ…
でも吉原にも遊びに来てくれると嬉しいな。
怖いところじゃないから、気軽にね。
変数に型がないということの利点について考える
http://d.hatena.ne.jp/perlcodesample/touch/20130227/1361928810
が大変お粗末な内容だったので、反論記事を書きます。
型推論はソースコードのコンパイルの時間を遅くしてしまいます。ソースコードが大きくなってきた場合に、すばやく書いて、すばやく実行結果をもらうことができなくなります。
大規模開発環境はコンパイル時間よりリンク時間の方が問題になりやすいが、それは別に型の話とは関係ない。
あと、インタープリタも最近は実行時にJITコンパイラが走る。
実行時間に影響がなく、開発者の待ち時間で済む方が実はよいのでは?
統合開発環境での、メソッドの自動補完の機能の実装が少し難しくなります。
みんなが統合開発環境をつくるとでも?
そもそも型が不定なら補完することすらできないので、
比較対象として相応しくない。
変数に型がないとソースコードの変更に強くなります。たとえば右辺の返す型に変更があったとしても、受け取る側のソースコードを変更する必要はありません。
これは逆に危ない。
実行するまで意図したインスタンスが返ってこなくなった事実に気づかないから。
変数の型を持つ言語は、型が異なるのだが、処理としては同一の処理を行いたい場合には、オーバーロードという機能を使う必要があります。変数の型がなければ、オーバーロードの機能は必要ではなく、ただ単にif文で分岐すればよいだけなのでとても楽です。
CならVTable。Javaならinstanceofなど同等の事はできます。
というか、これ。型を意識しまくったコードじゃないですか???
C++のテンプレートのような複雑でデバッグしにくい機能を使ったりしなければなりません。
実は全然ちがうものが混ざってた!なんて事故がコンパイラによって止められる分、デバッグする必要すら無いんですけどね。
変数に型がないとどのような型の値が代入されているかわからないという批判があるかと思います。可読性の問題で
http://d.hatena.ne.jp/RepsolFireBlade/20130220/1361332690
それだけ、PHPって流行っている言語で、この問題も注目されているってことなのね。まあ、言語としてPerlよりはマシだと思うね。ってか私Perl嫌いかも?しかしPHPにも型がないところが嫌いなんだけど。
世が世ならこの破壊力は大きかった。
C系の構文を採用する言語の中でPHPだけが左結合などという非常識な仕様を採用している。そもそもCを真似して作ったのに、ここだけ「間違えて」実装しちゃったとしか思えない。で、それを後から「仕様だ!」って言い張っているんだろうなぁ。大人げないねぇ。素直にバグだって認めれば良いのに。実装のバグじゃなくて仕様のバグね。言語仕様として「三項演算は左結合です。」って言ってしまえば、その実装は正しい。私が言っているのは、仕様のバグ。つまり、仕様です、そう決まってます、と言っていること自体が間違っている。どう考えたっておかしいでしょ?
普通、色々書けば書くほど説得力は増すのだけど、書けば書くほど説得力が抜けていく。
あっちこっちで、ネタにされていた中に「今さら言語仕様変えるなんて、後方互換性はどうなる?」なんてのがあったけど、そんな非常識なプログラミングは存在しないだろうから問題ないと思う。その前に、後方互換性って今や死語じゃない?
いずれにしても、昔のプログラムを救うことを考えるより、今後も続々と増えるであろう「C系の言語から入ってくる人」を救うことを考えるべきだね。
それじゃ、とりあえず読みやすいソースコードを残して頂けると大変助かります。
このおっさんがすべき事は、このおっさんがどんなネストを書いてしまったのか、そのPseudo Codeを晒すこと、ただそれだけ。
てか、マジレスすると
デスク(ド文系)「おい、hogehoge!あの遠隔操作ウィルスの記事どうなった!」
hogehoge(ド文系)「今書いてます!なんかソース?コード?っていうのが見つかったみたいで、ウィルスの証拠のようです。」
デスク(ド文系)「そうか!よくわからんが、そのソースコード?って奴が原因だって当局が言ってたんだな?じゃあそれで早く書け!時間ねーんだ!」
という感じのやり取りがあったことは明白なわけだが。
この程度のことでオタオタ騒ぐな。
「遠隔操作ウイルスのソースコードが記録されていた」ならこんなに紛糾しなかったのに、新聞記者の日本語能力に疑問を持たざるを得ないな。
「首輪に仕込まれたメモリーカードには、『ソースコード』と呼ばれる遠隔操作ウイルスのプログラムが記録されていた」
この文は二通りに読むことができる。ひとつは
「『ソースコード』と呼ばれる、遠隔操作ウイルスのプログラム」
「『ソースコード』と呼ばれる、遠隔操作ウイルスのプログラム」
と読点を補って「ソースコード=プログラム」と読む、二通りである。
まずこの読み取り方の時点で議論を呼んだ。前者の読み方で受け取り、記事の執筆者がIT用語を理解できていないとして「ソースコードは危険!!(笑)」と朝日新聞の揚げ足を取る人たちである。原文を改変して誤読を煽っているツイートやスレタイもある。
次に、この書き方でも十分「ソースコード=プログラム」と読めると主張する人も現れる(記事の執筆者はこの読み方を予想したのだろう)。この人達は記事をひと通りにしか読めない前者をバカにしている。
ソースコードも広義のプログラムなのでこの書き方で合っているとする派、ソースコードはプログラムではないと厳密な定義を主張する派。
この人達の議論は「ソースコード=ウイルス」としか読めない人たちには通じないので流されてしまっている。
このように異なる読み方ができる文を書いた朝日新聞は擁護できないが、議論が錯綜しそうなので整理した。
http://anond.hatelabo.jp/20130104184115
の元増田です。
ひっそりと公開したはずのtag-chat.net(http://tag-chat.net)ですが、
まさか、こんなに反響を頂けるとは思っていなかったので、びっくりしました。
素人のフリをしているとか、出版社のステマだとか色々言われましたが、嘘は一切書いてないです。
ステマというか、ウェブサービス公開後の状況を知っている方からするとマイナスのステマにしかなっていないような気がします…。
公開してから、色々と発見というか気づきがあったので、それを共有できれば幸いです。あと、tag-chat.netの中身についてなど。
・意気揚々と自作SNSを公開したものの、アクセスが全くこなくて途方にくれる。
⇓
・以前、完全に一致を作った増田の方が、増田記事を書いてからアクセスが急に来たと書いてあったので真似して書いてみる。
⇓
・翌日ごろから、アクセスが集中。ビビる。「うちの会社で働きませんか?」と言ったお誘いのメールをたくさん頂く。
いきなりの出来事にパニックになっている間にも増田記事が拡散していき、アクセスが急増する。
⇓
アクセスが爆発する。1時間あたり二万アクセスというアクセスを捌ききれずにサーバーが落ちる。サイトのウリであるが、メモリ使用量
⇓
・その後、サーバーを増強。エラー情報や、寄せて頂いた情報をもとに各種エラー情報や、使い勝手などを改善。
⇓
・現在、安定稼働中。おかげさまで、ユーザー数もゆるやかに増加していて、基本的な機能も正常動作しています。ユーザー数はもうすぐ
1000人に届きそうでありがたいばかりです。
と、いうわけでなんとかようやく落ち着き、ウリのマッチングチャットも正常に作動しているようなので、後記事を書きます。
■ウェブサービスの公開前に注意すべきだったこと。
①・セキュリティについては書かないほうが良い。色々といじられる。
前回の増田記事で、DoS攻撃の対策などについて語ったのですが、それを確かめるためなのかサイト公開してしばらくしてから、定期的に
Dos攻撃をくらいました。
おかげ様で、ちゃんと一時的にそのIPからのアクセスを遮断することはできたのですが、セキュリティについてあまり大々的しゃべると攻
撃対象となるので、あまり具体的なセキュリティ対策などについてはしゃべらないほうが良いのかな、と感じました。
また、DoS攻撃だけでなくCSRF試したり、色々といたずら(もしくは善意のテスト?)をして下さる方がとても多かったのには驚きました。
はてな民の技術レベルの高さを知りました……。いたずらされている間は本当に怖かったです。
とりあえず、今のところ攻撃は防げているようです。
はじめ、私は調子に乗ってサイト内に英語を多用していたのですが、それがユーザー様にとって混乱のもとになっていたようです。
例えば、他のユーザーから自分の書いた日記などにコメントがついた時に、それを知らせるページがあります。
普通に考えれば「友達からの反応一覧」とか「友人からの反応」とかにすれば良いのですが、何を血迷ったのか「Reaction」と中二病丸出
しで書いてしまったので、ユーザー様がものすごく混乱したようです。
結局、「使いにくい」、「サイト内迷子になる」との声を受けて日本語メニューに変更しました。
③・使い方のページはくどいくらい書いても良かった。
フリーチャットや、マッチングチャットでは、基本的に相手が見つかるまでは「待ち」の状態になります。
相手がすでにこちらを「待っている」状態だとすぐにチャットが始まるのですが、そのことに対する説明が足りなかったようで、チャット
ルームを出たり入ったりしている人が多かったようです。
また、チャットが終了した時にチャット相手にお礼をこめてメッセージを送る機能があるのですが、これも説明不足で上手く使われなかっ
たようです。
とにかく、くどいくらい説明しても良かったと思います。
■ウェブサービスをリリースする前にやっておいて良かったこと。
①・Twitterのアカウントを作りそこから最新情報を流せるようにする。
これは本当に大きかったです。
とつぜんの増田砲で一時間あたり二万アクセス近くのアクセスをさばけずに、サーバーがビジー状態になってしまった時も、Twitterを通
じて現在の状況などを流せたことは非常に大きかったです。
②・エラー情報を送ってもらえるようにメールアドレスを作っておく。
本当にありがたいことに、実際に使ってみた使用感や、こんなエラーが出ていると言った情報を送って下さる方がいます。
一人でテストしていた時には気づかなかったエラーや、不便な点などをわざわざ時間をとってメールで教えてくれるのです。
どこの馬の骨ともわからん怪しい奴が作ったものに登録してくれ、使ってみてくれただけではなく、エラー情報や励ましの言葉を送って下
さるのです。
本当にありがたいことです。
③・それでもわからないエラー情報に対して対処できるようにしておく。
優しいユーザーの方がエラー情報などを教えて下さるのは大変ありがたく、また開発の励みにもなるのですが、それに頼ってばかりいて
はダメです。
サーバーの吐き出すエラー情報を調べて、おかしな挙動にいち早く気づく必要があります。
本当はhttpdのエラーログとか見れば良いんですけど、はっきり言って物凄く見づらいので、ツールを使って毎日「こんなエラーがでました
」と教えてもらうようにしておきました。
色々なツールがあるみたいですが、私はlogwatchを使いました。
・参考URL
http://www.atmarkit.co.jp/flinux/rensai/root04/root04c.html
これでエラーの出ているところだけでも、修正するということをやっていました。
■ ウェブサービスを運営してみてわかったこと。
①・SNSの人の流れにはなんだかよくわからない規則性がある。
tag-chat.net グーグルアナリティクスでどれくらいの人が毎日来ているかをウォッチしているのですが、なぜか月曜日と週末にかけてア
クセスが増えます。
謎です。週末はわかるけれど、どうして月曜日に……?
②・やっぱり非リアの気持ちは非リアじゃないとわからない。
「どうして普通にはてブに書かないのか。なんで増田なのか」とか「非リアを装って」
とかコメントしてる人たちがいたのですが、その人たちは非リアについてなんもわかってないアホだと思いました。
もともと自分で名前なり、アカウントを明かした上ではてブに投稿できるくらいの度胸があれば非リアになんかなってないです。それは自
分でもわかってます。
自己顕示欲が人一倍強いくせに、人に名指しで批判されるのが怖いから増田に投稿したのです。
フェイスブックに実名でウェブサービス作ったことを投稿できるような度胸があればそうしてますし、はてブに書けるなら書いてます。
そうするだけの度胸もなくて、でも誰かに認めては貰いたいから増田に書いたということをわかっていない。
③・ネットのみなさんが優しい。
今までネットの人たちは2ちゃんねるとかで炎上したり、なんか面白そうなものを見つけてお祭り騒ぎする、ちょっと怖い人たちという
イメージだったのですが、それが今回のことでガラリと変わりました。
本当に優しい人が多くて、どこの馬の骨ともわからない奴の作ったウェブサービスを使ってくれるだけでなく、感想や励ましのメールな
どをたくさん頂きました。
遥か雲の上の存在だと思っていた会社の方からもメールなどを頂きました。本当に感謝してもしきれません。
~技術編~
①・nodejsを使って外部にサービス公開するなら、認証は必須。主に不正な負荷を減らすために。
さっき書いた、「セキュリティについてはあまり書くな」という話と矛盾するのですが。
nodejs、すごくアクセスさばけて、なおかつ軽いということで便利なんですが、サーバーなので、基本的にリクエストを受けたら非常に素
直に返事します。
例えば、nodejsとsocket.ioを使って、単純にメッセージをサーバーに送るとして、クライアント側で
のようにすると、サーバーはどこから来たアクセスなのか、とか悪意のあるアクセスなのか? とか一切気にすることなく、素直に'hoge'
これはつまり、第三者が悪意を持って大量にメッセージを送りつけるとそれを素直に受け取ってしまうということです。
なので、例えば大量に不正なデータを送りつけられたりするとレスポンスが悪くなります。
なので、悪意のあるアクセスはsocketにそもそも接続させない、という対策がサーバー側で必要になると思います。
socket.ioではコールバックを使って、簡単に認証させるかさせないか、という実装ができます。具体的には以下のURLなどを参考に実装す
http://d.hatena.ne.jp/Jxck/20110809/1312847290
②・nodejsの最大接続数は、ファイルディスクリプタに依存する
ということにしばらく気づかずに、最大接続数が400ほどしか出ず悩んでいた時に以下のURLを参照して、なぞが解けました。
http://blog.livedoor.jp/mokepon/archives/182178.html
またsocket.ioのテストの書き方ですが、
http://d.hatena.ne.jp/toritori0318/20120902/1346591831
という素晴らしいエントリーがあったので参考にさせて頂きました。
■楽できるところは楽するためのツールなど。
nodejsの開発で、面倒くさいところはできるだけ楽しました。以下、便利だったものまとめ。
・node-dev
コンソールにデバッグ情報を吐き出してくれ、サーバー側のコードをいじくった時に自動的に再起動してくれる。
いちいちコマンドプロンプトからnodejsを実行する必要がないため、作業の手間がはぶける。
nodejsを触り始めた時はエラーを吐いてばかりなので非常に役に立ちました。
参考URL
http://d.hatena.ne.jp/replication/20110224/1298474534
・forever
様々な使い方があるようですが、stop,list,startの3つぐらいしか使いませんでした。まだ、研究中です。
参考URL(基本的な使いかたが非常にわかりやすく書かれています)
http://nantekottai.com/2011/08/15/node-js-based-service-with-forever/
・mongoose
ドキュメントは色々ググったのですが、結局公式のドキュメントが1番わかりやすかったです。
~モチベーション編~
■一人でウェブサービスを作る上で、心の支えになった記事。
http://d.hatena.ne.jp/Hamachiya2/20080131/security
とにかく楽しんで、作ってみることが大事だよ、というお話です。すごい勇気づけられます。
・小飼弾さんの産声の話。
http://blog.livedoor.jp/dankogai/archives/51837985.html
弾さんは、お金持ちで、腕は一流で、PHPこき下ろすし、なんかすごく怖い職人のイメージだったのですが、このエントリーを読んで、クソ
まみれでも産声を上げてみようと思えました。
実は優しい人なのかもしれません。私の高校時代の担任の先生にどことなく似ています。
■お詫びと訂正
前回の増田記事で、OpenPNEについて間違った記載をしてしまいました。ソースコード公開に関する記述の部分です。
OpenPNEではそのソースコードを改変したら、そのソースコードを公開しなくてはならないと書いたのですが、これは間違いです。
OpenPNE方々には大変ご迷惑をお掛けしました。申し訳ありませんでした。
あと入家さんに謝りたいです。
フェイスブックにもとりあげて頂いたそうで、ありがとうございます。
怖いのでどんな投稿なのかはまだ観ていませんが、本当にありがたいです。
■最後に。
ウェブサービスをコツコツと作り続けて公開したところ、増田記事のおかげもありたくさんの反響を頂きました。
ただ、別にウェブサービスを公開したからと言って、実際のところ何かが劇的に変わったわけでもないです。
グーグルアドセンスは支払い規定の一万円を超えていないので、手元には一銭も入ってきませんし、実名出して行動できなかったので現実
あいかわらず休日は地元のゲームセンターでレトロゲーをやって時間をつぶしていますし、学校から帰ってきたらももクロのライブを観て
、Chai Maxxを踊ってから寝るだけの毎日です。それでも結構楽しいのですが。
ただ、ネット上で様々な先輩エンジニアの方々や、同年代で同じようにフェイスブックが嫌いな方から励ましのメールをもらいましたし、
本当に、びっくりするような充実した二週間でした。
はてブで人気のエントリーにあがった時のスナップショットは未だに大事にとってあります。
tag-chat.net(http://tag-chat.net)を作って本当に良かったと思っています。
目の前にある、ほぼコピペのソースコード、あなたならどう整理しますか? 一箇所治すとき、微妙に違った他の二箇所も直さねばならなくて、だんだん、それぞれコピペ先に個性というか、性格が若干違ってきて、対応にこまるようになってくるよな。
太郎は表示の仕方を教えてやったから、一言「表示しろ」とガツンと言ってやるだけでなんでも面倒みてくれるけど、二郎は太郎と違って、だるいやり方しかわからないので、いちいちあれはやったか、これはやったか、と面倒見てやらなければならない。三郎にいたっては太郎と二郎にはここまで教えたけど、三郎にはどこまで教えたっけ? 三郎これ知ってるか? 今どうやってるんだ?と、太郎と二郎との違いを意識しないといけなくて、大変面倒くさい。 三郎なんかしらーんと言って放置すると、三郎がうまく働かなかった時、僕が怒られるし。
何を言ってるかよくわからない? 私もよくわかりません。 コピペしたときには同じに見えた兄弟が、家を出たとたんてんでばらばらな性格になって、同じことを頼むにも個性に合わせた頼み方を考える必要があって親は一苦労だ。 という話です。
どうすればいいか? 太郎と二郎と三郎をアホにして、同じような作業は全部母にやらせればいいのだ!!!
そのためには三人に母が頑張ることを伝えたり、どこでおなじことしてるのか聴きだしたりしないといけなくて、大変面倒だという話。母には話しづらい作業もあるからな。
そうやって三人の話し合いを先延ばしにしてると兄弟げんかして収集つかなくなるので早めになんとかしないといけないのだが。
2年とちょっと前、19歳のときに、俺はとあるWEBサービスを作った。
覚えたてのGoogleAppEngine上で、500行ほどのソースコードを動かしていたんだけれど、
サイトは瞬く間に月間2000万PVほどのサイトにまで成長した。
しかしアクセス数の増加にともなって、自分の力では技術的に処置できない問題にぶつかり、
俺はtwitterもブログもFacebookもやっていなかったし、ネット系の企業でバイトなんかもしてなかったし、
元来の引っ込み思案な性格もあって、誰かに相談するという発想自体がなかった。
2年経った今ではサイトも廃れ、アクセスも1/10以下に減少し、月の食費を賄えるかどうかくらいの広告収入が入ってくるだけ。
あのとき、どこかの技術者の人に押しかけてでも相談していれば、もっとモノにできたのだろうか?
おおっぴらにUVとPVを喧伝すれば、誰かが興味を持ってくれたのだろうか?
……俺が本当に後悔しているのは、WEBサービスが廃れたことだけではない。
この件に限らず、ずっと一人で塞ぎこみ続けることで、
なぜかLINEでのやりとり。このあとTwitterでblockされた。
A | hi |
B | yeah |
B | 学校祭わろた |
A | おつ。 |
A | 打ち上げ的なものはないの? |
B | ない |
B | 今学校祭中 |
A | ああ、把握。わろたがおわたに見えた。 |
B | 学校祭ェ•••• |
B | パソコン部の展示なう 誰もけえへんやん |
A | なるほど |
B | パソコン部だけ学校祭雰囲気じゃねーww |
A | そんなもんや… |
B | あっちで音ゲー こっちでぽけも |
B | 君もパソコン部かい? |
B | 友達こねーくそわろ |
A | んにゃ、高校のときは※※と〒〒やってたねえ。 |
B | 学校祭の新しい形ですね |
B | 学校祭なんてお客さんが楽しむもので、生徒が楽しむものではない、生徒は楽しませる側です |
A | 僕んところの高校のパソコン部とか何やってたんだろうねえ。 |
A | Twitterとか見てると灘校のパソコン部展示とかは相当盛り上がってたみたいだけど。 |
B | 君は神学校出身かい? |
B | 灘高は秀才やから |
A | いや、ずっと公立だね。 |
B | つくこま のパソコン部もハイレベルやで |
B | 偏差値は? |
A | 僕の偏差値? 学校の入試偏差値? |
B | 私は地方の進学校(笑)です |
B | 学校と君の |
A | 同じく地方の進学校ってとこだね。もっとも田舎だから高校入試は大した競争はないんだけど。 |
B | 数学できんねやろ? |
A | 入試偏差値はさすがに新聞か高校入試情報誌のバックナンバーあたらんとわからんなあ。 |
B | というか君札幌じゃん |
A | んにゃ、札幌じゃないけど。 |
B | え北海道?? |
A | 北海道。 |
B | むろらんさかえ? |
B | くしろちょうりょう? |
A | ノー。 |
B | かいせい? |
B | あさひがおか? |
B | 東西南北 |
B | ? |
B | どれ? |
B | 帯広はくよう? |
A | ちゃうねん。 |
B | どこ? |
B | 西? |
A | 柏葉とか〒〒強かったなあ。 |
B | W |
B | 君×高? |
A | No. |
B | 俺×高www |
B | わろたqwwww |
B | ×高わろたwww |
B | ×高わろわろわろたwwww |
A | なにがおもしろいwwww |
B | 君は? |
A | (そもそも高校生ではないんだけどね…) |
B | 中学生?大学生? |
A | 大学出てるよ |
B | 出身高どこ? |
B | 北海道ではないの? |
A | △△。 |
B | もれ札幌×高。知ってる?私服やで! |
B | △△? |
A | 私服やで。 |
B | △△高校?? |
A | yes. |
B | ▲▲系? |
A | とは |
B | 画像 |
B | 偏差値67わろた ●●県かー |
A | それ●●の男子校な。 |
A | ●●の△△はたぶん私服じゃないぞ |
B | ●●神やな |
B | 何県? |
A | △△市知らんのか… |
B | 画像 |
B | しってるで! |
B | 理数科? |
A | 普通。 |
B | なんで私服、 |
B | ? |
A | なんでって言われても、校則に制服がないからだけど。 |
B | わろた |
B | この話やめよ |
A | ( なんでいきなり学校の訊問から始まったんだ…? ) |
B | Htmlの話にかえよう |
A | うむ。 |
A | で、HTMLって何さ? |
A | 何だと思う? |
B | はいぱーてきすとまーくあっぷらんげーじ 絵や歌と一緒で自分を表現するもの |
B | メディア |
A | ほむほむ。 |
A | 「まーくあっぷ」って何? |
B | 表現メディアの一種 |
B | 記すこと |
A | んー |
A | じゃあ、ハイパーテキストは? |
B | 特殊効果付属された文字列及び画像 |
B | 及び記号 |
A | 特殊効果とは? |
B | 色つき、アニメ、 |
B | この問答に終点はあるんですか?ゴールがみえてますか? |
A | ん、取りあえずHTMLがわかってないと話にならんしね。 |
A | 満点はつけられないけど及第点じゃないかなー、と。 |
B | はいぱーてきすと はネットにつながるやつですか |
B | てへぺろ |
A | 「ネットにつながるやつ」が正確な表現かどうかはともかくとして、それはハイパージャンプ。ハイパーテキストの特徴。 |
B | ハイパーテキストとは |
B | 模範回答 |
B | は |
B | なんや |
B | なんやーなんやーなんややややややややややややや |
A | 「ハイパーなテキスト」 |
B | んーなるほど |
A | 要するに、ただのテキストを超えてる。 |
B | ○○高校のクズがおるで |
A | って概念。 |
B | 後ろに |
B | それで |
A | でだ、そこで |
A | HTML5って何? |
B | なんや |
B | テキストを超越したものを創造するための道具 |
A | No. |
B | なんや |
B | プログラミング言語 |
A | そういう名前の「マークアップ言語」ってだけの話なんだけど。 |
A | プログラミング言語ちゃうねん。 |
B | しっとるわ |
B | でいいたいことは? |
B | 要旨はなんや |
A | 「マークアップ言語」ってことが重要。 |
B | はい |
B | それで |
A | 言語であるからには規格があって処理系がある。 |
A | ってことはおk? |
B | うん |
B | 規格? |
A | 規格。 |
B | 処理系? 説明せぇ言われても説明できない言葉やわ |
B | おしえで |
B | おしえてー |
A | 要するに、"print A" って文字列を与えたら "A" って出力するような仕組。 |
B | それが処理系 |
B | きかくは? |
A | ざっくり言うとそう。 |
A | 言語が言語として成立するための決まり。 |
A | さっきの例だと "print A" なら「Aを出力しろ」という命令であるべし、みたいな。 |
A | HTMLの場合は基本的には要素と属性の定義になってる。 |
B | あーわかります |
B | いえーす |
A | 要素と属性はおk? |
A | element と attribute 。 |
B | 要素 属性width height |
A | おk。 |
B | 要素が親 属性が子 |
A | それはちゃうねん。 |
B | じゃあなんや |
A | でもそれは脇道だから置いておく。 |
B | いいす |
B | いえす |
B | そして |
B | からの |
B | からの? |
A | てっとり早く言うなら、HTML5で定義されてる要素の集合に font や center は入ってない。 |
B | ふむ |
A | 集合は? |
B | じゃあそれらはなんや |
B | ドモルガンの法則 |
B | 要素の集まり |
A | おkおk。問題ないね。 |
B | なめてんのか、て感じですよ |
A | で、つまるところ何を見て font とか center を使ってんのよ、ってことになる。 |
B | しらん |
B | 理由なくても動くから |
B | ね |
A | ってことは、HTML5を知ってることにはならん、と。 |
B | た(^-^)/な |
B | だね |
A | "理由なくても動くから" niceだね! |
B | だろぅ? |
B | ワイルドだろぅ? |
B | で使っちゃダメな理由があんの? |
A | さっきの話に戻すと、HTMLの処理系って何? |
A | いっぱいあるよ!<だめな理由 |
B | 命令の内容とそれに対応する文字 |
A | ノー。 |
B | なんや |
B | ユーザーの命令に対してのコンピュータが処理する内容 |
A | 入力に対して応答する「仕組」が処理系。 |
B | しすてむ |
A | nice |
B | 入力に対して応答する仕組み=処理系 |
A | 日本語の「系」は "system" に対応する。 |
B | おつす |
A | で、HTMLを与えて、それをよしなに処理してくれるシステムって何? |
B | 処理系 |
A | 具体的には? |
B | Htmlの処理系 |
A | HTMLの有名な処理系は何? |
B | html5 |
A | それは規格。 |
B | やー |
B | こんぱいらー? |
A | コンパイラも処理系。 |
A | (の一部 |
B | Htmlの処理系てなんや |
B | コンピュータ |
A | 大雑把すぎる |
B | cpu |
A | ノー。 |
B | めもり |
B | なんやねん |
A | ノー。 |
B | Os |
B | web |
B | ブラウザ |
A | iPhoneにもWindowsにも処理系が入ってるからWebが見られる。 |
A | 正解。 |
B | プレインストールされてすか |
A | されてるね。 |
B | なるほどね |
A | 「HTMLの有名な処理系は何?」の模範解答は InternetExplorerとかMozilla FirefoxとかOperaとかGoogle Chromeとか。 |
B | で |
A | で、どうして規格を守る必要があるのか、の話。 |
B | ブラウザの名前をあげればいいんですね |
A | それはもう終った。 |
B | exactly |
B | ね |
B | で |
A | HTML5では文書の先頭に って書くことになってるけど、これはどういう意味か。 |
B | 宣言 |
A | DOCTYPE宣言 |
A | 宣言してるのに規格守らなかったらだめじゃん |
A | やーいうそつきうそつきー、ってことになる。 |
A | (まじで |
B | どういうこと |
B | Doctype宣言してんのにcenter、fontを要素として使うのはだめだということですか? |
A | 「HTML5の」宣言してんのにcenter、fontを使うのはだめー、ってこと。 |
B | へー |
A | HTML 4.01 Transitional とかならおk。 |
B | 規格守らないとどういう弊害が? |
A | おkだけど、なんでそんな古いの使ってんのや、ってことになる。 |
A | あらゆる意味でめんどくさい。 |
B | で |
B | 規格守らないと誰か困るの? |
A | ユーザも困るし、処理系を作るひとも困る。 |
B | なんで? |
A | 困ったちゃんは絶滅しないから有名な処理系は古い規格をサポートし続けることになるのは確定的に顕かなんだけど。 |
A | たとえばちょっと処理系を自作しようとしたときに規格を守ってない文書に当たると、例外的な処理をしなければならなくなる。 |
B | 新しいhtmlの規格がでても 古いバージョンのサポートをやめられないのですか |
A | そんなことをしたら、君のページを表示できるブラウザがなくなるよね。 |
A | (HTML5のサポート外の要素を使ってるから |
B | なるほど |
B | center、fontに変わる要素はなんや |
B | 何を使えばええんや |
A | そもそもそれを要素で指定するのがナンセンスである、って話になってくる。 |
A | つまり「中央揃え」とか「フォント」とかって意味の要素がナンセンス。 |
B | 最初Css使ってたけど他人のコードよんでfontていうやつ見つけたんで使ってみた |
A | 「他人のコードよんで」←まちがい |
B | cssでcolor: ; |
A | 「規格書を読む」←せいかい |
B | 辞めてfont color使うことにした |
B | 他人のページのソースコード読んででええやろ |
A | 赤の他人はだいたい間違ってる |
A | (僕の言ってることも間違ってる可能性があるから規格書を読むべき |
B | なんや |
B | 表現が間違ってるわけじゃねぇんだよな |
B | そういえや |
B | 規格書をよめってことか |
A | 暇なときにね |
A | html5.jp とかで良い。 |
B | web |
B | なるほどね |
B | 偏差値nn |
B | ? |
A | ? |
B | 君の偏差値は?? |
A | さあ |
B | 教えてや |
A | そもそも偏差値の基準とは |
B | 模試の偏差値とか教えて |
B | 偏差値の基準は??? |
B | 偏差値の基準?なにをいいたい? |
A | 模試って言われても高校出て何年も経ってるから数値自体に何の意味もないんだが。 |
B | 君は賢いかどうか知りたいだけよ。それを知るために偏差値は聞きたい |
B | はを |
A | 僕が賢いかって言われたらそりゃ賢くはないねえ。 |
B | 俺より? |
B | プログラミングの大会とかでたことある?? |
A | 偏差値が良ければ賢いって価値判断がそもそも相当賢くない気がするんだけど。 |
A | プロコンは趣味程度にもやってないね。 |
B | ぉーわかってないねー |
B | 賢い奴は、学校の勉強くらいできるのよ |
B | 学校の勉強程度はってことね |
A | さっきの偏差値nnって何の数字? |
B | プログラミング技能と偏差値関係ねぇはずだけど、優秀なプログラマーは有名大学出身ばっかさ |
B | ん? |
B | んとね 君の高校の偏差値ね |
B | 今のね |
A | 把握。 |
A | 「優秀なプログラマーは有名大学出身ばっか」の統計的根拠はあったりする? |
B | ない。俺が感覚的に感じた |
B | アメリカね |
B | れいおじー |
A | 「実際に会った優秀なプログラマと出身大学の関係」とかでも良いんだけど。 |
B | レイ オジー、マークザッカーバーグ、ビルゲイツ、ポールアレン、 |
B | 下村努 |
B | スティーブ ウォズニアック |
A | おお、そりゃあ有名人だ。 |
A | で? |
B | こいつら全員アメリカのトップ高校ばっか |
B | なんや、小さい頃から理系型天才エリートか、。? |
A | そもそもその世代は有名な大学にしかまともな計算機がないんだけどね |
B | 日本Google、グリーの幹部は東大東工大京大の情報工学ばっか |
B | なんだ、理系エリートか |
B | なんやー |
B | そういうことかー |
B | 所詮 有名企業は高学歴の巣窟か、 |
A | ってことで、勉強がんばれ |
B | 君はこの事実をうけとめられるか |
A | そういうもんだからねー |
B | 学生のうちは勉強をすべきなんだ....... |
B | だから勉強を.........!!!!!! |
A | するべき。 |
A | 僕はまともに学校の勉強はしてこなかった人間だからねー |
B | しろわ |
B | しろやいま |
A | んー、いまさら大学入試受ける予定もないしねえ。 |
B | 君どんな仕事してんの? |
A | 自宅を警備するお仕事をしてるよ☆ ってTwitterのbioにも書いてる |
B | ニート |
B | か |
A | こんな夢見がちな大人になっちゃいけないよ☆ |
B | 仕事する予定は? |
A | ないない |
B | しろや |
B | 家でなにしてんの? |
A | お勉強 |
B | なんの? |
A | SICP |
B | 親が生活費だしてんこ? |
B | だしてんの? |
A | んにゃ、自分のお金でだけど |
B | ふりーたーか? |
B | アルバイトはしてる? |
A | ないない。アルバイトなんてしたら自宅を警備できないしね。 |
A | そんな大人になっちゃいけない |
B | 自分の金てなに?お前が稼いだ金? |
A | いえーす |
B | どこで? |
B | 働いてないのに |
A | 不思議だ… |
B | お前なんやねん |
B | 何者やねん |
A | 自宅警備員 |
B | ばか? |
A | Twitterのbioに書いてる以上でも以下でもない感じ。 |
B | ごみ? |
B | 社会のゴミ? |
A | 少なくともいまの君よりは計算機科学に詳しい、ってことでおk? |
B | おーけー |
A | ってことで、こんな社会のゴミなんか秒速で追い抜いてみせろ、ってことでひとつ。 |
B | まあ俺がお前の歳だったら、お前より知識あるがな。俺×高やし、北大いくし |
A | おーすごいすごい。 |
A | さっきの学歴を持ち出すなら北大じゃいろいろ物足りない気がするけど。 |
A | 素直に京大とか東大とか行っとけ |
A | 北大の教授で京大や東大ではしてない研究をしてるのが居てその分野を專攻したいー、とかなら別だけど。 |
A | 知ってる範囲の北大の学生でものすごいのって、□□□□出てて高校時代から一人でばりばりプログラム書いてる、とかそんな感じだから |
B | まあお前よりは高等だから |
B | こめん |
B | ごめん |
A | 僕より偏差値高いだろうってことは知ってるから、いまさら確認することじゃないなw |
A | ただ、具体名は避けておくけど、GoogleとかMSだけに優秀なプログラマが集まってると思ってるなら、それは間違ってるねー |
A | 「高学歴=優秀なプログラマ」が真なら、国内のメーカーはどうしてこんな惨状なのか… |
A | 僕がこの2年くらいで会ってきた、そこそこ多めな数の高校生とか大学生たちから見るに、優秀な高校生が良い大学入ってるってのはおよそ間違ってないね。東大とか京大とか筑波とか東工大とか。 |
A | s/優秀な高校生/優秀な高校生プログラマ/ ね |
B | そう吠えんな |
B | ごみなんだからお前は |
B | 情報オリのメダリストは全員高学歴だろ |
A | それはまったく否定しない |
B | 高学歴=優秀なプログラマーとはいってないよくず |
B | 優秀なプログラマーは高学歴であることが多いてことな |
A | で、情報オリンピックとか挙げちゃうとお前はどうなのよ、って話になってくる。 |
B | それ俺より馬鹿なクズがいうセリフじゃないぞ |
A | 情報オリンピックのメダリストになりたいの? 高学歴になりたいの? |
B | 最終目標は金持ちやね |
B | 金持ちになるにはいい大学いったほうが確実だろ? |
B | プログラミングは興味本位かな |
A | 確実って言うには出身大学は要件としていささか貧弱な気がするんだけど |
B | 金持ちになるには、いい大学いくことが近道 |
A | 僕は読みたい本が買えるだけの儲けがありゃ良いから金持ちとかあんまり関係ない話やね |
B | くずめ |
A | 上位の大学の方が平均年収が高い、とかって水準の話ならまったくその通り。 |
B | 金持ちなれねぇやつが かっこつけんなくず |
A | 君が儲ける金は君のものだし、僕が儲けた金は僕のものだから、まったく関係がないよね |
B | きも |
B | くずだw |
B | お前は負け犬だ |
B | 可哀想に |
A | 別に君のおこぼれに与ろうってことは期待してないから、君が勝っても負けてもどうでも良いんだけど。 |
B | くずめ死ね |
B | お前らはくずなんだから今すぎ死ね |
A | 今すぎ |
B | お前みたいな奴が日本の足引っ張んだよくずwww |
A | 内心蔑みながらも日本の未来を案じるさまは立派です。 |