はてなキーワード: ディストリビューションとは
コンピュータ言語って世の中に山ほどあるけれど、それぞれの言語ごとに特徴がある(特徴のない言語は廃れていく)。
あまり言語に詳しくない人相手に、俺の考えるそれぞれの言語の特徴を書いてみようと思う。
なお、取り上げるのはある程度広く使われている言語に限りたいと思う。
言語名 | 概要 |
---|---|
C言語 | 高速動作するバイナリ生成を目的としたコンパイル言語。だいたいどんな環境でも使えるがバグ出やすい |
C++ | マニアック言語、高速、習得大変 |
Java | サーバで高速かつ安定に動作するコンパイル言語、大規模でよく使われる |
C# | 主にWindowsクライアント用のバイナリ生成に使われるコンパイル言語 |
Perl | 広く使われていたが今は若干時代遅れのスプリクト言語。汚い |
Python | Perlにかわって主流になりつつあるスクリプト言語。綺麗 |
PHP | Web開発にフォーカスされたスクリプト言語。一世を風靡した。 |
Ruby | とても綺麗なスクリプト言語 |
JavaScript | ブラウザで実行出来る唯一の言語。言語自体はいまいちだが、ブラウザの事情で需要あり |
Go | サーバサイドで安全かつ高速動作するバイナリ生成を目的としたコンパイル言語 |
メモリに直接アクセスして書き換えるといったコンピュータの機械語に近い言語構文を持つため、高速な処理が可能な言語。
コンパイラの歴史も古く環境も整っており、組み込み系などを含むほぼ全ての環境で利用可能な万能言語。
一方で、メモリの確保や解放といった基本的なことも自前で処理する必要があるため、コーディングの効率が良くなく、多種多様のバグを生みやすい側面も持つ。
ある程度以上のエンジニアであれば常識として知っておきたい言語だが、初めて覚える言語としてはあまり適当ではない。
C言語にオブジェクト指向を導入した言語。C++言語とはあまり呼ばれず、しーぷらすぷらす、もしくは略してしーぷらぷら、しーたすたす、などと呼ばれる。
C言語の速度を維持したままオブジェクト指向やテンプレートなどの効率的な記述を可能にしようとした意気は真っ当だったのだが、
当時最先端だった色々な技術や思想を叩き込んだおかげで、あり得ないほど複雑化した言語としても有名。
「C++を理解しています」という人はほぼ初級者で、本当に理解していくほど「C++には自信がありません」となっていく。
速度を追求する分野では良く使われている。完全に理解するのは難しいとしても、テンプレートくらいまでは理解しておくと仕事上なんとかなる…かもしれない。
サーバサイドで安全にコードを実行する目的でよく使われる言語。長い歴史を持っており、比較的高速に動作する。
当時は画期的だった「バーチャルマシン」や「ガベージコレクション」という機構を備え、CやC++でよく問題になるメモリの解放忘れというバグを生まず、
サーバサイドなどで何千時間と動作するソフトウェアに適した言語として受け入れられた。
必然的にエンタープライズ用途で利用されることが多く、各種ツールなども豊富。人海戦術がしやすい言語という側面も出てきた。
一方でブラウザにHello Worldを出すだけでも大変な労力を必要とするので、スタートアップなどではあまり使われない。
ガラケーのアプリや(ちょっと違うが)Androidなど、クライアントサイドでも使われることがある。
プログラミング言語で最初にJavaを覚えるという人は結構多いが、仕事としてJavaを使うのは大抵SI系の業務になり、なかなか辛い労働を強いられる可能性が高い。
クライアントサイドで安全にコードを実行する目的でよく使われる言語。こちらも比較的高速に動作する。
元々はWindowsのクライアント用の言語であり、Javaとは違ってクライアント向きのAPIが多数ある。
マイクロソフトが開発した言語ということもあり、マイクロソフトの優れた開発環境が利用出来るので開発効率は非常に高い。
Unityなどでも利用可能であるが、基本的にはクライアントの実行形式ファイルを生成する目的が大きく、サーバサイドではあまり使われない。
自作のゲーム開発をしたいのであればうってつけの言語。初めて覚える言語としても十分に良いだろうが、C#を使う仕事は近年無くなりつつある。
ほぼ全てのLinux系ディストリビューションに含まれており、ツールや様々な用途で使われていた。
上に紹介したC、C++、Java、C#のようなコンパイル言語とは違い、(少し語弊はあるが)1行ずつ実行してエラーがあれば止まるスクリプト言語である。
ちょっと開発してすぐに実行ということが出来るのと、コマンドラインでワンラインのコードを読み込ませてちょっとした処理が出来るなど応用範囲の広い言語である。
20年近く前にWebでCGIが普及した時には、ほぼどのようなサーバ環境でも実行可能だったこともあり、Perlを使うことが極めて多かった。
しかし、主に読みづらい言語仕様のせいで、近年新規ではほとんど使われなくなった。既存のコードもどんどん別の言語に置き換えられていることが多い。
日本の大手Web企業の一部が使っているので、そこに就職するために覚えるのもアリっちゃアリだけど、今からPerlをわざわざ覚えるのは強くオススメしない。
後発のスプリクト言語。こちらもほぼ全てのLinux系ディストリビューションに含まれており、それゆえに広く使われている。
インデントまで言語仕様で規定することで、誰が書いても読みやすいコードになるように考えられている言語である。
Perlの代わりに使われることが増えていて、周辺ツールなども充実しており、小規模から大規模までカバーする勢いがある。
ただ、Python2とPython3のバージョン間での非互換性があまり綺麗に設計されていなかったため、そこで混乱を招いていたこともあった。
最近だとマシンラーニング系のライブラリでPythonが使われていたり、海外ではPerlに代わる言語として受け入れられつつある。
Web開発に特化したスクリプト言語。CGIの代わりに使われ始め、一世を風靡した。
以前CGIでWebに何かを表示するには比較的大変な労力を割かなければいけなかったのが、PHPを使うと誰でも即座にWeb開発が出来たので爆発的に普及した。
またphp.netの豊富なドキュメント&スニペットのおかげもあり、開発初期の効率が大変に良い言語である。
残念なことに、言語やAPIの設計がいけていない点が多く、一部の人からは蛇蝎の如く嫌われている。
今でも根強い人気があり、海外でも小規模プロジェクトの最初の開発にPHPを選ぶのは比較的よくある選択肢であるようだ。
Webアプリを開発をしたいという明確な目的を持つ人が、最初に学ぶ言語としてPHPを選ぶのは理にかなっていると思う。
なおこの言語を本気でディスってる人は大体視野の狭いエンジニアであることが多いので、地雷エンジニアを見分けるのにも役立つ。
綺麗なスクリプト言語。日本発で世界的に普及している数少ないIT技術の一つ。
言語仕様が美しく、それゆえにファンが多い。Ruby on RailsというWeb用フレームワークの登場で、Webアプリでの採用例も一気に増えている。
基本的には他のスクリプト言語と同じくサーバサイドでのプログラミングに用いられることがほとんどである。
スクリプト言語で何かを作成するのであれば、Rubyを選んでおけばそう失敗することはない万能言語。
サーバサイドで何かすることに興味を持っているならば、最初に覚える言語としてはとてもオススメ出来る。
一方で、なぜかRubyが採用するWeb側のフレームワーク(具体的にはprototype.jsやCoffeeScript)はいつもクソなので、そちらは深入りしないのが吉。
ブラウザで動くスプリクト言語。ブラウザ戦争が勃発していた18年前、奇跡のようなめぐり合わせでベンダー間の合意が取れ実装された言語。
言語としてはプロトタイプベースのオブジェクト指向という少しめずらしい形式を取っているが、実際にはあまりその特徴は利用されていない。
言語仕様がイマイチで、大変バグを生みやすい言語であり、また関数のスタックが深くなる特性もあり、あまり積極的に使うべき言語ではないが
ブラウザで動く言語が現在これしかないので、大きなシェアを持っている。
一部の物好きがサーバサイドでこの言語を使おうと(主にnode.jsで)四苦八苦している(とはいえ、1つの言語でWebとサーバが完結するのは大きなメリットだ)。
ブラウザで動く唯一の言語のくせにとにかく書くのが面倒ということもあり、多数のAltJSと呼ばれるJavaScriptに変換される別言語を生み出されている。
まあJavaScript本体人が手で書く言語ではない…というのがECMAScript5までの印象だったが、新しい規格が順次導入されており、今後に期待。
Web業界で生きていくならば、好むと好まざるとにかかわらず覚えなければいけない言語である。
最初に覚える言語としては、ブラウザ上でゲームなども作れるし、node.jsでサーバサイドもできるしで、意外とオススメだったりする。
C、C++やJavaと同じでコンパイル言語。サーバサイドで高速かつ安定なバイナリを出力することを目的とされ設計されたGoogle発の言語。
その目的においてはかなり高性能を誇るので、特に速度を要求されるサーバサイドでのプロジェクトでは導入が進んでいる。
それ以外の目的ではあまりこの言語を採用するメリットはないが、ニッチな用途をピンポイントで抑えており、これから広く利用されることも期待される。
コミュニティも活発であり、初めて言語を覚える人が参入すれば喜ばれるだろう。言語としても美しい言語なので、サーバ系のプログラムに興味があればオススメである。
繰り返しだけれど、それぞれの言語ごとに特徴があり、特徴のない言語は廃れていく。
ここに挙げた言語は何らかの特徴があり、何らかの用途で必要なので生き残っている。
その背景を知った上で、ここにある言語は全部ある程度読み書きが出来るようになると素晴らしいと思う。
http://pha.hateblo.jp/entry/2015/12/03/225533 を見てふと。
当方文筆業。外で書き物するときとか、家の中でもデスクトップじゃ作業する気になれないとき用に動作の軽いラップトップが欲しいと思っていた。
値段がお安くて動作も軽いという噂のChromebookを検討したんだけど、基本的にブラウザ上で完結させないといけないと聞いて二の足を踏んだ。
ちょうどその時、古いノートPCをChromebookとして復活させてくれるアプリ『CloudReady』という記事がはてブに上がってたので試してみる気になったんだけど「Chrome OS入れるぐらいならLinux入れるわハゲ」というコメントがあって、そっちの方がいいのかとやってみた。
当方が持ってた古いノートPCは、2007年ごろに買った糞Vista搭載のレッツノート(CF-Y5)。当時の型落ち機だったので、買った当初からVistaは若干重く、とにかく嫌な記憶しか残ってない。CPUは2コアの1.6GHz、メモリは512+1024MBぐらい。クリーンインストールもしたんだけどやっぱり重く、ブラウジングですらコマ落ちする有様。これにLinuxの軽量ディストリビューションをいくつか入れてみて、けっきょくLinuxBean+Firefoxの組み合わせに落ち着いた。
あれ……、これだけか。
など。Windowsのように使おうとすると確実にLinuxの洗礼に見舞われると思う。ただそれを乗り越えてでも使いたいほど軽くなったので、頑張ることができた(デメリットというより単にLinuxに慣れろって話かもしれない)。
まとめると、糞VistaノートにLinuxを入れて手に入れたものは、「軽快さ」であり、Chromebookじゃなくて良かったなと思えるのは「Windowsアプリが動く」ことだ。Linuxに慣れてないことによって面倒だと感じることはあるが、用途を決めればそれに合致する環境を手に入れるチャンスではあると思う。
このエントリが、Chromebookを検討しつつ糞Vistaノートを死蔵させてるひとに対し、ひとつの選択肢を提示できたなら嬉しく思う。
もうだいぶ前になるが、Winnyというファイル共有ソフトがネットで話題になったことがあった。
著作権を無視して映画やドラマ、ゲームソフトなどをダウンロードできるということでそのソフトはまたたく間に日本中に普及していった。そういった中、ファイル共有の中でそういった著作物を騙り、実際にダウンロードしてみると実はウイルスでしたー!という現象が徐々に発生していき、最終的に著作権の問題以前にWinnyはインストールを非推奨とするソフトウェアとして認知されていった。
最終的にWinnyの開発者は逮捕された。記憶に残っている人もたくさんおられると思う。
ここで僕が思ったのはなぜ製作者は逮捕されたのだろうということである。
話は少し変わるが、Winnyというソフトウェアは当時技術的にはとても素晴らしい手法を使っていて注目された。当時のファイル共有方法といえば、ファイルサーバーを立ててそこにクライアントでアクセスするという「クライアント&サーバー」が主流だった。その中、Winnyは「ピアツーピア」という技術を使い、サーバーは使わず、PC同士が数珠つなぎのネットワークを形成するという画期的な共有方法をとっていた。
「クライアント&サーバー」タイプでは、サーバーにアクセスするクライアントごとにセッションが形成されるので、基本的に「自分がダウンロードしたファイル」しかキャッシュ(一時ファイル化)されなかった。一度ダウンロードしたことのあるファイルは、前回よりも早くダウンロードできるということである。しかし、Winnyが用いた「ピアツーピア」方式はPC同士が数珠つなぎでネットワークを形成しているため、自分以外の人がダウンロードしたファイルのキャッシュを利用して高速なダウンロードをすることができた。
これを例えばTSUTAYAのようなレンタルDVDショップに置き換えて説明すると少しわかりやすくなるかもしれない。
「クライアント&サーバー」タイプのものは、自分が例えばエヴァのDVDが見たい!と思ったら、そのままTSUTAYAに行って借りる方法である。行くところは全国に展開されている店舗ではあるが、基本的にTSUTAYAという屋号の店に行かなければならない。たまたま近所に店があるなら得ではあるが、もし車で行かないといけないような田舎に住んでいる人はちょっと行くのが大変になる。
これに対して、「ピアツーピア」タイプのものはエヴァのDVDが見たい!と思ったら、TSUTAYAには行かずに「自分の家の近所にエヴァのDVDを持っている人がいないか探す方法」である。家があれば、とりあえず候補になる。運良く持っている人がいれば、TSUTAYAに行かずともDVDを見ることができる。
さらにこの手法のいいところは、例えばそのDVDが発売されたばかりとかテレビで話題になったりとかで多くの人が借りていた場合である。「クライアント&サーバー」タイプだと、借りる人が多いほど貸し出し中のDVDが多いことになりなかなか借りるのに苦労する。対して「ピアツーピア」タイプの場合だと、人気なんだから近所の家で持ってる人がいる確率が上がり、結果的に借りれる可能性がアップするのである。
「ピアツーピア」自体の技術は古くから存在していたが、これをファイル共有の手法として利用したのが画期的であり、ネットユーザーは感心した。しかし、これは逆にファイルの共有が蔓延しやすくなることを孕んでおり、なおかつサーバーがないのでアクセスログが残らず、パケットの流れを解析するのが少し大変になる(無理になるわけではない)。
結果的にWinnyは様々なウイルスをネットワークにばら撒く媒介になってしまった。
なおかつ、一度ネットワークに流れたデータを回収するのが困難になり、著作物をタダで手に入れられる環境が出来上がってしまったのである。
話を本題に戻すが、この一連の事件で「悪いのは一体誰か?」という疑問が残る。結果的には開発者は逮捕されてしまった。だが、このソフトウェアは使ってはいけない危険なソフトなのだろうか。使い方を誤れば、確かに危険なツールであることは間違いないのであるが、これは包丁などと似ていて、使い方を間違えなければとても良いツールである。包丁は料理に欠かせない、料理人の商売道具であると同時に、人に対して使えば簡単に殺すことも出来てしまう凶器にもなる。勿論、ツールを生み出した人間はどのように使うのが正しい方法で、どのように使うのが間違った方法なのか、説明する責任はある。それを怠ってはいけない。が、最終的には使用者がどう使うか、といったところに照準が向くべきだと思う。
最近の世の中では、何か事件が起こったら(偉い人たちの都合が悪くならない物は)すぐにそれを規制しようという動きが起こる。
格闘ゲームをやっていた人間が人を殺してしまえば、ゲームのせいにされる。
少々残酷な描写があるアニメを見た人間が事件を起こせば、そのアニメのせいにされる。
ドローンを使って危険物を首相官邸に持ち込んだ人間がいたら、ドローンのせいにされる。
ファイル共有している人間が著作権違反を起こせば、共有ソフトのせいにされる。
大事なのは正しい知識をつけることであり、物事を判断できるように教えることなんじゃないのかと思う。ゲームやアニメのせいにしてる大人たちを見ると、
「我々は子どもたちにテレビやゲームと現実は違うんだよという教育すらすることができないので、もういっそテレビやゲームのせいにしてしまったほうが教育を放棄できて楽」
と言っているように見えてしまう。
勿論、場合によってはそのものを規制することが良い場合もあるかもしれないが、最初からそう決めつけるのは違うように思う。
我が国では、飲酒運転を起こすと罰せられるのは「運転者」である。お酒の販売者や製造者が逮捕されることはない。これって当たり前なんじゃないかと思う。だって悪いのはお酒ではなく、お酒を飲んでいるのにも関わらず「運転しちゃえ」と軽はずみに思った人間だからだ。だから司法は運転者を罰し、本人だけでなく世の中の人たちに教育することで再発を防ぐ。
きっと、お酒を規制しよう!ってなったら全国の関係各所の大人たちが次々に反対するだろう。
僕はこの反対勢力が少ないもの(例えばアニメとかファイル共有ソフトとか)が、規制される対象になるんじゃないか、と最近思う。ようは大人の都合が悪いものは規制されず、大して影響がないものは「規制しちゃえ!」ってなるんじゃないかと。
世知辛い世の中だ。
追記:
みなさんこんなエントリーに多数のご意見ありがとうございます。ご指摘や批判のコメント一つずつ目を通してます。
まず、自分は増田にエントリーを書くのが今回はじめてで、自分の文章能力の低さを反省してます。すみません。
と同時にもうちょっと調べてから書けばよかったと思いました。
自分の中にある「知識」と「思い」だけで勢いに任せて書いた結果、
みなさんが読んだら「いやいやいや、なんでお前そんな無知なんだ」
人の話をする前に、まず自分の教養をつけろよって話ですね。
たくさんコメント頂いてありがとうございます。
勉強し直すいい機会になりました。
「Winnyは良かったよね」とか「ファイル共有ソフトの良さを考えよう!」
いう話ではありません。何かしらのツールを使った事件が起きた時に、
まず問題にするべきはその「ツール」ではなく、それを使っていた人の
罪や良識を問うべきではないか、と言いたかったのです。
教育をしていれば未然に防げたのではないかということです。
我々人間は愚かな部分も多分にあるかもしれませんが、
考えて、理解することができる生き物です。
その考えて、理解する努力を怠ることが
そもそも愚かなのではないかと思っているわけです。
(ちょといい方が飛躍しているかもしれません)
ただ、自分の文章を読み返してみると、勘違いを生む書き方をしてるように感じられるのは事実です。
もう少し、文章の書き方を考えようと思いました。
少なくとも、通信技術の話に触れる必要はなかったかと思っています。
僕の中でももう一度考えなおすいい機会になっています。
随時追加いければと思います。
・Winnyの良さを再考したいならなんで挙げる例がアウトなものなのか。包丁は規制を越える刃渡りの物は製造も所持も共に違法。
→確かに例えが適してなかったかもしれません。ただ、銃刀法に則って許可を得た人・企業なら問題ないかと思います。
これは、「扱う資格のある(=正しい使い方と危険性などのリスクを理解している)人間に対してだったら問題ありませんよ」
ということなので、正しく扱えるのであれば問題ないのではないかと思っています。
→たとえ無罪を勝ち取ったとしても、警察に逮捕され検察に起訴された時点で
法律に違法性があると判断されたわけです。社会的にも悪だという烙印を押されてしまったわけです。
逮捕された時点でその人の人生に影響が出てしまうのは事実です。無罪だったから問題ない、
とは思ってはいません
・ BitTorrent は使われているじゃないか
→仰るとおりです。自分も存じております。ピアツーピアの技術は今も生きています。
自分はLinuxのディストリビューションをよくダウンロードするのでFTPの回線が遅い時は使うこともあります。
僕は上記でも述べましたが、ピアツーピアについてもう一度考えよう!といった思いで書いたわけではないので
BitTorrentを無視したりする意図はありませんでした。申し訳ございません。
・あとネットランナーみたいな割れをコンビニの本棚に引っ張りだした幇助メディアも裁かれるべき
→たしかにこれは自分も思います。世の中で違法行為を推奨する(かのように勘違いさせる)行為があれば、
罪の意識が生まれずに過ちを犯す可能性は高まってしまうかもしれません。
・世の中には、銃を作る企業を「軍需産業だ」「死の商人だ」と糾弾し、そこに勤める人を「人殺し」と石を投げつける「自称・平和主義者」が大勢いる
→兵器は争いの道具である以上、人を殺す目的で使われますよね。そこに使う意志があろうがなかろうが、存在するだけで叩かれます。
一方、企業が存在するということは需要があるということです。戦争があるから兵器が作られるのか、兵器があるから戦争が起こるのか。
なかなか難しい問題ではあります。自分もこの戦争という件に関しては簡単に答えを出せない気がしています。
ただ、その石を投げる人たちには、たとえ兵器が存在しても使う人間がいなければ被害は起きないということを言いたいですよね。
・金子さんは無罪だったけど、ああいう見せしめ逮捕って中世っぽいよなぁ
→彼が見せしめで逮捕されたかどうかはわかりませんが、ソフトの開発者が逮捕されたのは確か初めてのケースだったと思います。
・君子危うきに近寄らず?
→それもひとつの方法だと思います。ただ、近寄らないとその物事の輪郭しかわからず、本質をしるためには、
やはり理解をする必要があると思っています。
・包丁は、100人が使って98人が人を刺したりしない。Winnyは、100人が使って98人は著作権侵害してた。包丁は殺人目的で作られていない。Winnyは開発者の発言から明らかなように著作権侵害目的で作られてる
→これは確かに仰るとおりかもしれません。開発者が明らかな悪意をもっていたかどうかで、この事件は意味が変わってくると思います。
そう思うと自分の考えは浅はかだったのかもしれません。
→確かにその一面は大きかったかもしれません。しかし、負荷分散やパケットの共有という面もあったのは事実だと思います。
・包丁との違いは「便利なんだけどあまりにも悪用しやすすぎて、そっちが目的で作られたんじゃないかと邪推せざるを得ない」というあたりか。焼肉屋でこっそり出てくる「焼いて食べる用の生レバー」みたいな
→そのたとえ、的を得ているかもしれません。確かに、ツールの見方がそう捉えざるを得ない場合はツールそのものに何かしらの規制をかける必要があると思います。
同時に、邪推しないようなツールの布教をする方法も考える必要があると思っています。
・最近は運転者に酒を提供した店側も罰せられるようになってなかったっけ
→はい、そのとおりです。ですが、それは運転する可能性を理解していたにもかかわらず提供した場合であって、
その店が業務として酒類を提供している事自体が罪に問われるわけではありません。
・人を最も殺しているのはゲームでもアニメでもなく銃と酒である。真っ先に規制すべき。
→そのように決めつける前に、正しい使い方や考え方を広めていくことが大事だと言いたいわけです。
・もうそれ10年前に語り尽くされてると思う
→すみません。そうです。何番煎じかわかりません。でもふと思ったので書いてみました。
・p2pで共有したいデータが違法なもんしかないんでないかい?
→確かに。一理ありますね。利用者がそのツールを利用しようと思うきっかけを多分にはらんでいるのは事実です。
しかし、それをすることが犯罪だ、という意識を根付かせることができれば、防げる可能性もあります。
もちろん、理想論なのはわかっています。でもその理想論にチャレンジしてほしいと思ってしまうのです。
・懐かしい話題の割に論点が無茶苦茶。お酒を勝手に自宅で作ることが禁じられているけれど、Winnyはさらにたちが悪いから規制されて当然
→すみません。論点が不明瞭な文章を書いたのは自分の責任です。
お酒の作成は禁じられてはいますが、認可を受けた企業は製造を許されてしています。
正しい扱い方を理解し、注意している人間は何も問題ないのではないかと思います。
Winnyも、正しい扱い方を理解できている人間が使用すれば、規制される必要もないと思います。
・開発者がWinMXなど目指して2chねらー向けとして提供したものだったんだから、包丁を料理人じゃなくてヤクザ集団に優先的に提供したものだとは思うよ。有罪か無罪かはともかく、P2Pの評判はそりゃ地に落ちるよなあと。
→それは確かに・・・。おっしゃる通りかもしれません。技術自体に悪はないものの、元から悪としてしようする目的が開発時にあれば、
開発者は罪を犯していると考えられます。罰せられるべきですね。勉強不足でした。
ただこの場合、一方でヤクザを料理人に変える動きも大事ではないかと思います。
・それはそうと、ピア・ツー・ピア方式で共有したいコンテンツで著作権からまないものなんてあるのー?社内だと共有フォルダやクラウドで充分だし。
→今でこそ、通信速度が早くなってきてはいますが、当時はまだ早いと言ってもADSL程度。その細い回線の中で、どれだけ効率的にファイルを共有するか、
といった方向で考えられたのがあのツールなのではないかと思っています。確かに、今の世の中だとクラウドサービスを活用することで
合法にファイル共有する方法は、安全で敷居も低い行為だと思われます。
・当時適法前提だと不特定多数で巨大なファイルを効率的に共有するって需要自体が少なかったんだよね。無償OS配布とかくらい?
→そうですね。あとは再配布可能ののゲームソフトとかでしょうか。
・守りたいものがある時は天下りをご活用くださいというエコシステム
→社会を変えようと思ったら、現実問題として意見を主張するだけではダメだということですよね。肝に銘じます。
・「銃を作る企業に罪はない!」がスターを集めるとは。。なんともナイーブ
→そう言われると、確かに自分の中でも少し考えなければいけないなと思います。
・10年以上前からある議論がなぜ急に
・Winnyを包丁に例える人が居るけど、これは違法DL用に作成されたソフト(2chのDL板発)であるため、単純所有が違法な日本刀などに例えるべき案件なのだ
→なるほど。助言ありがとうございます。つまり、日本刀を簡単に集められる闇市場が手の届くところに存在していたしたことにも問題があるのではないかということですよね。
・WinnyはWinMXという違法なファイル共有が蔓延していたアプリからつけられた名前ですよ。つまり作者ははじめからP2Pによって違法なファイル共有がされることを認識した上で開発していたのです。
→やはりそこが論点になってきますよね。作者に悪意があれば、たしかにそれは罪ですね。同時に、使用者が違法である認識を持っていないとさらに自体は悪くなりますものね。
・高校生の作文のようなひどい文章
→たしかにそれはひとつの方法としてありだと思います。正しい使い方をする分には自由に使ってもいいが、
違法な使い方をすると注意を促し未然に防止する。ツールを使いながら、犯罪の防止と法律の啓蒙ができるわけですね。
・なんか、最後の方は割ともっともなことを言おうとしてるんだけど、真ん中あたりのたとえで台無しもいいところだな
→それ自分でも読み返して思いました。ちょっと脇道にそれすぎたと反省しています。
・社会構造として、新しいテクノロジーについていけないおじいちゃんたちが世の中決めてるから仕方ない
→だからこそ、我々は進化したテクノロジーを理解してもらうように努める必要もあると思っています。
・長さの割に薄い。事故を誘発しやすい道具・コントロール不能なインフラの流通は立派な罪だし、”犯罪や事故を設計で防止せよ”は十分エキサイティングなチャレンジ。そもWinny自体は規制されてないだろ。
→薄い文章ですみません。文章を書くときは今後注意します。確かに、リスクを考えるとそのものを規制するほうがコストは安いと思うんですよね。
でもそれを繰り返してしまうとどんどん我々は馬鹿になっていくような気がしてるんです。思考停止に陥るといいいますか。
規制されてる、されてない、ではなく、規制しようという動きをするまえに他にやり方がないかを考えることも大事だと思います。
その結果、やはりそのものを規制するやり方を取らざるをえない場合は、致し方無いと思っています。
・もう少し大人になって世の中を広く見て、モノゴトの進め方っていうのを学べばいいと思う
→そ
Javaで開発されたアプリケーションにはインストールにまつわる難点がある。
それによりせっかく興味をもってくれたユーザーも試す前に諦めてしまいがちである。
また、サーバーサイドアプリケーションもJava製である場合、デプロイや監視の際の難点が多く運用者を悩ませてきた。
javafxで導入されたパッケージャを用いることで各OSネイティブなインストーラーの作成が可能になり、この問題を解消・緩和できる。
SpringBoot などを用いた ExecutableJar を作成するアプリケーションであれば、サーバーサイドアプリケーションであっても一部制限があるもののパッケージングできる。
Javaで開発されたアプリケーションの配布には以下の問題点がある。
javafx-maven-pluginを使うとよい。javafxと冠しているが実態はパッケージングツール。
javafxの冠があるがためにスタンドアロンアプリ開発者以外を遠ざけている感あり。
Windows(msi/exe), Linux(rpm/deb), Mac(dmg) など各OS・ディストリビューション固有のパッケージングが行える。
公式ページ( http://zenjava.com/javafx/maven/ )では更新が止まっているが、Github( https://github.com/zonski/javafx-maven-plugin )とMavenRepository( http://search.maven.org/#search%7Cgav%7C1%7Cg%3A%22com.zenjava%22%20AND%20a%3A%22javafx-maven-plugin%22 )を確認するとちゃんと開発は続いている。
pom.xml に以下を追加する。
mainClassはSpringBootなら@SpringBootApplicationのついてるクラスですね。
vendor は適当に組織や個人の名前を入れておきましょう。
※ 以下の XML が化けるのは増田の不具合か仕様っぽい。 http://anond.hatelabo.jp/20100205210805
<plugin> <groupId>com.zenjava</groupId> <artifactId>javafx-maven-plugin</artifactId> <version>8.1.2</version> <configuration> <mainClass>[main method class]</mainClass> <vendor>[Vendor Name]</vendor> </configuration> </plugin>
あとはそのままビルドすればよい。
maven clean jfx:native
ビルドが終わると target/jfx/native 以下に、ビルドしたOS/distributionに合わせて msi, exe, deb, rpm, dmg ができあがります。
本当であればクロスビルドできてしかるべきなのですが、まだ実現はされていないようです。
これらのパッケージは Widonws であれば Program Files(x86) に、Linux系であれば /opt/ の下にインストールされるようです。
/opt/app-name/ の下には app と runtime の2つのディレクトリがあります。
app の下にはビルドした jar ファイルや依存ライブラリが置かれています。
runtime の下には実行用の jre が配備されています。
実行ファイルにそのまま引数を渡せば jar 実行時の引数としてそのまま渡されます。(-Xmxなどはまだ未検証です)
みんながバラバラに「こっちの方が優れている」とマイナーチェンジ繰り返してたら、
Linuxのディストリビューションみたいに互換性がなくなる可能性が高くなって不便だろ。
でも、FreeBSDとか使ってたらコマンドとかはむしろLinuxよりMacのが使いやすいかもよ?FreeBSD使いがMacを好むかどうかは知らんが。
UbuntuやらRedHatはすべてLinuxのお仲間なので。
これはお互いに言える事なので、そりゃ、お前はそう思うんだろうな、ってだけで。。。
まぁやりゃできるのだが、めんどくさいを極めた結果としてコマンドライン使ってるのに、調べるのはもっとめんどくさい。あと変なエラーが出ると大変なのでPCライトユーザにはまったくおすすめしない。
何が言いたいのか全く分からん。
Windowsのコマンドはよくわからんが、最近は情報が多いので特に…あと下手にコマンドいじるよりはフリーウェアを探してくれば良いと思う。
(あんたが言うシェル環境ってのはちょっとしたことを命令するだけの話なのな?)
えーと、どこを見ればいいのかも分からん。単に、BSDコマンドはGNUコマンドと違うところがあってワカンネ、ってこと?何が不満?どこが違うかご存知?sedとか?
Linuxは慣れてるディストリビューションならCUIだけで十分。慣れてない奴はめんどくさい。
CUIだけで十分、って、シェルをCUI以外から使うことがあるのか。。。?まったくもって意味が分からん。
Linux使いなら自分で変えろよ。。。標準で比べる意味が分からん。
これらまとめろよ。。。
おまえ、いったいなにやってんの?
だから、使いやすいとか使いにくいとか関係なくて、圧倒的なシェアを取ってしまってるからそれを使わざるを得ないだけ。
そういう話だと思うけど?
「MacはUnix互換」とかMacユーザはいうが、Linuxユーザからするとディストリビューションが違うので正直使いにくい。別に調べりゃ使えるしLinuxユーザというのは黙って調べる人たちなので文句を言わないだけで、好んでMacをUnixのように使おうとは思わない。GUIがクソだが便利なLinuxユーザからすればMacはGUIがすげぇ糞なディストリビューションだ。情報少ないし。
なお、これは他のLinuxについても言えることで、Ubuntu使いからするとRedhat系は使いにくいし、Redhat系からするとUbuntuはコマンドがわからんことが多々あるので若干めんどくさい。もちろん他のディストリビューションも同じ。BSDとかあんまり使いたくない。まぁやりゃできるのだが、めんどくさいを極めた結果としてコマンドライン使ってるのに、調べるのはもっとめんどくさい。あと変なエラーが出ると大変なのでPCライトユーザにはまったくおすすめしない。
最近はWindowは一発ポンで入ることが増えてきたので便利だと思う。Cygwin使うよりはVM使ったほうが楽でねーかと個人的には思うが。PHPなどはXamppがあるのでむしろWindowsのほうが楽。文字コードが面倒だが。
なおLinuxは常に糞めんどくさい。すでに入ってるパッケージのバージョンが古いが、ディストリビューションによっては上げるのに四苦八苦とかふつうにある。サーバー関連のプログラム以外はいまどきWindowsとかMacとかのほうが断然楽だ。
Windowsのコマンドはよくわからんが、最近は情報が多いので特に…あと下手にコマンドいじるよりはフリーウェアを探してくれば良いと思う。
Linuxは慣れてるディストリビューションならCUIだけで十分。慣れてない奴はめんどくさい。
Windowsも良いとは言わないが、不便はない。細めのフォントが好みなのでむしろWindowsのほうが見やすい。
そりゃiOSアプリを作るならXCodeしかないし、XCodeは悪く無いと思うが、C/C++とか書く時は使いにくい。
WindowsアプリつくるならVisualStudioしかないし、最近のVSは使いやすいので特に文句はない。C#も良い言語だと思いますよ。すごくよく考えられてると思うし。
Webアプリケーション系もnetbeansなんかはWindowsのほうが軽い印象があるなぁ。ただC++はnetbeansだと補完機能が弱めになる気がする。まぁそもそもWindows上でMSのライブラリ使わないC++とか書きたくないですね。色々違うし。
LinuxのIDEはEclipse一択みたいな感じになっているが、正直Javaはいいが、それ以外は微妙。と言うか糞重い。netbeansが個人的には好きだが、前述のとおり補完機能がEclipseより弱いかんじがするのであんまり。Rubyはすっげぇ使いやすかった。C++で一番軽いIDEはQtかな。Vim?いうほどいいかね…まぁEmacs派なんですけどね
そりゃiOS開発するならMacしかないだろう。Windowsアプリケーション開発するならWindows機使うしかないのと同じでな!!!
LinuxでGUIのあるアプリケーション作るとか、考えたくないな!つうかGUIつかいたくないからLinux使ってんだよ!
Macは選択肢が少なすぎる。金だせばなんでもできるが、カネがないとストレスが溜まる。あとかねかければかけるほど周辺機器もグレードアップしなきゃいけなくなる感じがするのだが…正直Unix系のマインドに反しすぎていると思う。
あといまおれのMacbookProはバッテリが膨らんできてパッドが使えなくなったんだが、Mac対応のマウスがないのでコピペすらできない。キーボードも純正のやつ使いにくくね?プログラマとしてはHome,Endあたりはキー一個で対応して欲しいですし、Backspaceキーがないのは意味がわかりません。deleteキーって書いてるけどそれBackspaceやん、ほんとのdeleteどこいった!!!とにかくキーボードがひどいのでMac使ってプログラミングしようという意欲がおこらない。むしろ俺がMac嫌いな理由の一番がそれですね!
しらねぇがLinuxで音楽制作しようとする奴はアホだと思う。
が、若干コントラストが強目にでるか?という気がする。
Mac以外のディスプレイを自分で細かくカスタマイズしたほうが実際にあってる場合もあり、なんとも言えない。
ちょちょっといじる素人用フリーウェアが貧弱すぎて辛い。いやらしい成金に札束で顔はたかれているような気持ちになる。
いいわすれたがLinuxでデザインやデジタル現像しようっつうやつはアホだね。Ubuntuならあるのかなぁ…でもさいきんUbuntu重すぎて…
しらん。
MSOfficeは使いやすい。Officeを貶してる奴はだいたいOfficeを使いこなしていない。
LibreOfficeとか一昔前のMSOfficeじゃないですかーLinuxだとそれしか選択しないけど使いたくねぇ…それならGoogleDriveのをつかうわ…一太郎とか悪い冗談はやめていただきたい。
ただ、Latexを使う場合はLinuxは使い良いとおもう。もちろんWindowsならLatex用のエディタあるんですけども!
WindowsとMacで特に違いはないが、あえていうならMacはフリーウェアが少ない。
Linuxをホームユースで使いたがる人がいたら止めたいが、最近はWebだけでも色々できちゃうので、別段問題ない気がしてきた。
9. Macは性能に対してコストパフォーマンスが高い(……かも)
スペック対価格を比較すると、CPUやメモリやらのコストパフォーマンスが悪くない、と思います。
10年前は「Macは高くつく」という印象だったものが、ここ5年で「Macって割安」という印象に変換したと記憶しています。
むしろ使ったらMacって割高…って思うと思うけどなぁ。最近のWindows機は安いしデスクトップなんて価格破壊完全に起こしてるし、使い始めてからもほとんどお金がかからない。情報も多いし。なんか情報が全体的に五年くらい古い感じがしますね。もしかして2009年ごろからいらした方が書いたのでしょうか。
何をもって"無駄"と判断するか、非常に難しい論点ではありますが。
へんてこなアザラシのマスコットがデスクトップを泳ぎ出したり、なんとも言えないモッサリ感の明るさ調整ソフトが突如画面に出現したり。なんて事はありません。
常駐ソフトウェアはWindowsは決して多くないし、あるならメーカプリインストールアプリじゃねぇのっていう。
明るさ調整ソフトってそれはディスプレイのやつだろ?Windowsのせいじゃねぇよ。むしろMacはそういうの調整するときに探すのが大変。いや、あかるさ調整くらいならキーボードでできるけどさ…
常駐ソフト気にするならLinuxが一番管理できると思いますし、LinuxにくらべればMacもWindowsも似たようなもんです。
温厚な眼に秘めたる決意。
ディストリビューション | ↓・↓→・→・→↑・↑・K |
---|
Like! | P連打で発動 | ※ギャラリーが25以上でリミット解除 |
---|---|---|
エッジランク | K連打で発動 |
ページランク | ←・→・←・→・←・→・K |
---|---|
ビッグテーブル | ↓溜め・↑・P連打 |
アンチエビル | K・K・P | |
---|---|---|
デスポティクラッシュ | ↓・↑・↓・↑・↓・↑ | ※対戦者がジョブズ・バルマーの場合のみ有効 |
伝説となった男
ワンモアシング | ↓溜め・↑・P長押し |
---|---|
ニュークリア | ワンモアシング発動中に対戦者が[挑発]した際に自動移行 |
「過去にも未来にも640KBもあれば充分だ」 | [挑発]ボタン |
---|---|
「資産の半分を寄付せよ」 | 対戦者に隣接して[掴む]ボタン |
【お知らせ】2011/09/07
http://d.hatena.ne.jp/uniqueweb/20110906/1315285545
プログラムは全く得意じゃないけれど最近よく見かけるようになったエロ動画検索を自分でも作ってみたくて頑張ってみました。
近年、インターネットの普及によりエロ動画が自宅で簡単に見れるという素晴らしい時代になりました。
自分が若い頃はインターネットなんてものはなくエロビデオが主流でドキドキしながらレンタルビデオ屋に行き、可愛い女の子がレジにいない隙を見計らってお兄さんにパッケージを伏せて空箱を渡しビデオを借りたものでした。
お兄さんにビデオの空箱を渡そうとした時に可愛い子がレジに戻ってきて焦って渡すのをやめてものすごく変な動きをしながらエロビコーナーに引き返していくなんてことも多々ありましたw
僕のお気に入りといえば「白石ひとみ」や「あいだもも」といった女優でよく借りてました。エロビを借りるということがものすごく恥ずかしい時代?年頃?でカモフラージュに普通のビデオと一緒に借りるということもしていました。それはそれは大変な思いでオナニーしてたんです!
しかも、ビデオデッキ自体が貴重な時代でリビングに一台しかないのが当たり前でした。
深夜家族が寝静まってからヘッドフォンとビデオを抱えリビングに行き暗がりの中でヘッドフォンをテレビに差し込んでビデオの再生ボタンを期待に胸をふくらませながら押したものです。いいシーンを何回も見るためにビデオを巻き戻すんですが、ビデオを巻き戻すガチャンガチャンという機械音で家族が起きてこないか?とかそれはそれはドキドキしながら見てました。一仕事終えたあとヘッドフォンを外したらジャックが外れていて大音量で喘ぎ声が響き渡っていたなんてこともありました。誰も起きてこなかったのは優しさなんでしょうか?w
さて、大分前置きが長くなりましたがエロというものはものすごい技術発展させるものだと思います。エロのおかげで日本でビデオは普及しエロのおかげで日本でインターネットはものすごく普及したと言っていいと思います。自分もエロを通して技術の発展に貢献し自分自身のスキルアップになれば。という高い志を持ってこのサイトを制作しました。決して自らのオナニーライフの充実と性癖を充たすため作ったわけではありません・・・w
※2011.08.07 利用中のサーバーに障害が発生しているようで現在サーバーに接続できない状態となっています・・・
サイト名の由来は抜きネタからきています。抜きネーター、ヌキネーターという感じですw
エロサイトの制作工程を日記にしてみたんで良かったら読んで下さい。そしてこのサイトを使って夜いろいろと励んでくれたら嬉しいです。
まず前提条件としてお金をほとんどかけたくない。アダルトサイトであるということから
月の予算は5000円以内で考えていたのでけっこう探すのが大変でした。
日本でアダルトサイトを許可している所はかなり限られていてさらにやりたいことができるのは
専用サーバーかVPSしかないのでそうなると専用サーバーは予算オーバーなので
VPSで探すことになり検索しまくってはじめに見つけたVPSはKAGOYAのVPSだったのですがβ版で募集を締め切っていて泣く泣く諦めました。
KAGOYAはかなり評判がいいみたいなので使ってみたかった。
次に見つけたのが○○○VPS。海外サーバーで日本語サポートがあり転送量の制限なしディスク容量100G
月1300円程度で借りれるということで初期設定費用に5000円程度かかりましたが借りてみました。
結果、ここは最悪でした。
あまりの酷さに1ヶ月で解約。
よく調べてみたら評判がものすごく悪い某VPSの再販らしいです。
もう失敗したくないと思い今度は比較的有名な海外サーバーLINODE。
iptablesの設定でどうしてもうまくいかなくて拙い英語でメールしてみたら
10分しないうちに返信がきました!
メールに書かれているとおりにコマンドを入力したらあっさり解決。
担当のブライアンはなぜか分からないけどとてもフレンドリーで親切に感じましたw
LINODEは複数のディストリビューションから好きなものを選択できるので
とりあえず、64bit版を選択。
一番面倒だけど重要だということで
Tripwire
ほんとに面倒でした。
はじめはmysqlにストレージエンジンgroongaを使おうと思ったのですが
初めに借りた最悪なVPSはOSが32bit版だったのでgroongaがのソースが見つからずなぜかと思っていたら
どこかで見つけた記事で32bit版ではgroongaの性能を発揮しきれないということで32bit版の提供をやめてしまったらしいと書いてたので
じゃあ、sennaにするかということで最悪VPSでsennaをインストール。
その後LINODEに変更したのでOSに64bit版を選択し念願のgroongaをインストール。
しかし、調べてみると
プログラムもそれに合わせてその都度書き換えたので2度手間どころか3度手間4度手間でした・・・
まず
そして下記の順番でインストール
rpm -ivh mecab-0.98-tritonn.1.0.12a.x86_64.rpm
rpm -ivh mecab-ipadic-2.7.0.20070801-tritonn.1.0.12a.x86_64.rpm
rpm -ivh senna-1.1.4-tritonn.1.0.12a.x86_64.rpm
rpm -ivh MySQL-shared-5.0.87-tritonn.1.0.12a.x86_64.rpm
rpm -ivh MySQL-client-5.0.87-tritonn.1.0.12a.x86_64.rpm
rpm -ivh MySQL-server-5.0.87-tritonn.1.0.12a.x86_64.rpm
rpm -ivh MySQL-devel-5.0.87-tritonn.1.0.12a.x86_64.rpm
my.cnfの設定をして終了
で肝心の全文検索ですがデータ件数が5万件程度で少ないせいなのか、あいまい検索と比べてそれほど速さを実感できなかったです・・・
でもきっとすごく速くなったはず!
ちなみに「麻美ゆま おっぱい」で検索した場合、0.01 secで結果が返ってきました。
さて、動画データの作成ですがいくつかのエロサイト等制作記事でもあるようにスクレイピングということをします。
スクレイピングとはWEBサイトから特定の情報だけを取得することでネット上にあるサイトをクロールして必要なデータだけを拾ってデータを作るといった感じでしょうか。
スクレイピングのプログラム自体は以前にTidy関数を使って為替データを10分おきに取得するような物を作ったことがあったのでそれほど時間はかからないかなと思ったのですがけっこう時間かかりました。
スクレイピングにはTidyとhtmlSQL、それにPHP Simple HTML DOM Parserを使いました。
SQL みたいな文法で HTML を抽出する PHP のライブラリ
htmlSQLよりアツい!?jQueryみたいにセレクタでHTMLをparse(解析)する「PHP Simple HTML DOM Parser」
3つの中で抜群に使えるのはPHP Simple HTML DOM Parserだったんですが
ループ処理させるとメモリがすごいことになって今回のようなスクレイピングに向いてないみたいで
結局、htmlSQLとTidyの両方を使ってスクレイピングしました。
両方ともPHP Simple HTML DOM Parserに比べるとうまくデータの取得ができないことが多く残念な感じなんですが他に選択肢がないので・・・
使える順に並べると
といった感じかもしれません。
おおまかにデータを取得して正規表現で特定データを抜き出しました。
http://affiliate.dmm.com/link.html
利用可能な物はパッケージ画像、サンプル画像(縮小)と書かれていたのでそれに従い画像を利用。
注記に※ユーザーレビューは引用いただけません。とだけ書かれているのでそれ以外は引用ありと判断して説明文とタイトルなどを利用
女優データとジャンルデータ、DVDデータ、を紐付けたデータベースを作成し検索ワードに応じて検索結果に関連する商品を表示させるようにしました。
現状、売り上げ0で意味があるのか分かりませんけどw
エロサイトということで多少はチューニングとか設定とかしないとまずいかもと思い色々調べて設定しました。
やったこと
KeepAlive On MaxKeepAliveRequests 60 KeepAliveTimeout 3 <IfModule prefork.c> StartServers 7 MinSpareServers 5 MaxSpareServers 10 ServerLimit 30 MaxClients 30 MaxRequestsPerChild 4000 </IfModule>
様子見ということで2日間で設定してみました。
query_cache_limit=1M
query_cache_min_res_unit=4k
query_cache_size=16M
query_cache_type=1
とりあえずこんなところを設定してみましたが、爆発的なアクセスがあるわけでもないので有効なのか今のところ分かりません(-_-;)
Apache Benchでテストはしてみましたけど問題はない感じですが実際にチューニングができているか分かりません。
プログラマーとして有名なゆうすけさんのサイトとgoogleを参考にしました。
シンプルで使いやすいようにしようと思いこのデザインにしました。
クロスブラウザはIE7、firefox3、chromeで行いました。
可変ものって作ったことなかったんですがけっこう面倒なんですね。
ブックマーク機能とメニューの折りたたみ機能、検索結果の表示方法切替を作りました。
まず、ブックマーク機能ですがログインなしで気に入った動画をブックマークできるようにしました。
ブックマークに追加した動画はブックマークページで確認できるようにしました。
cookie機能を利用したらいけると思い色々調べてjquery.cookie.jsを利用。
保存したクッキー情報を呼び出してphpに渡して処理し指定要素にブックマーク一覧をloadメソッドで表示させるという感じです。
$(function(){ $("#youso").load("xxx.php"); });
メニューの折りたたみ機能は人気AV女優やAV女優別、人気タグなどをそのまま表示させるとずらっと長くなって邪魔だったのでつけました。
これには同じくjquery.cookie.jsを利用しました。
参考サイト:http://blog.caraldo.net/2009/03/newjqqookiemenu.php
検索結果の表示方法切替にはZoomer Galleryを利用しました。
参考URL:http://phpjavascriptroom.com/?t=ajax&p=jquery_plugin_zoom#a_zoomergallery
検索結果ページで表示される
[ここの画像]
××× の検索結果
44件中 1~10件目を表示
ここの画像の部分をクリックするとgoogleイメージ検索みたいに一覧でイメージ表示できるようにしてみました。
基本的に動画の埋め込みを許可しているサイトのみプレイヤー表示をしそれ以外は画像を表示し動画データへリンクするようにしました。
埋め込み部分はあらかじめそれぞれのサイトに対応したプレーヤー部分のコードを記述しVIDEOIDの部分に置き換えるような形にしました。
XVIDEOSを例にすると
XVIDEOSの場合かならず動画のurlがhttp://www.xvideos.com/videoXXXXXX/のようになりますのでXXXXXXの部分を
VIDEOID部分に置き換えるようにプログラムを組みました、
埋め込み部のソース
>||<object width="510" height="400" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" ><param name="quality" value="high" /><param name="bgcolor" value="#000000" /><param name="allowScriptAccess" value="always" /><param name="movie" value="http://static.xvideos.com/swf/flv_player_site_v4.swf" /><param name="allowFullScreen" value="true" /><param name="flashvars" value="id_video=VIDEOID" /><embed src="http://static.xvideos.com/swf/flv_player_site_v4.swf" allowscriptaccess="always" width="510" height="400" menu="false" quality="high" bgcolor="#000000" allowfullscreen="true" flashvars="id_video=VIDEOID" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /></object>
||<
その他の動画サイトもURLの一部分のデータを使っているので同様の処理をしました。
実際の作業は2、3週間ですが色々調べる時間が多くて制作に2ヶ月くらいかかりました。
自分でエロ動画検索を作ってみて有名プログラマーさん達がいかに優秀なのか思い知らされました。
全くWEBの知識がない人で4、5ヶ月ですごいの作っちゃう人とかもいるみたいですし世の中広いな~と思います。
大分、色んな知識を得ることができました。
これからプラグラムを勉強しようと思う人はぜひエロサイトから入ってみて下さい。
そんなこんなで?頑張って作ってみたエロ動画検索、良かったら使ってみて下さい。
これで少しは技術の発展に役立てたでしょうか?w
P.S エロサイトを作っていてはじめは楽しくて興奮しながら作ってたのですが最後の方はエロい物を見ても全く反応しなくなりましたw
不能ではないんですけど・・・今現在も性欲が著しく減退しております・・・
そしてスーパーpre記法がうまういかないのはなぜ?はてな匿名ダイアリー初投稿で全然分からない・・・
そしてそしてプログラマーさんとかデザイナーさんとかエロい人とかお気軽にお声をおかけ下さい。
【お知らせ】2011/09/07
こんなこと、増田でしか書けないのだが、夫がP2Pをやっている。
家の回線ではP2Pができないので、某高速モバイル回線を使っている。
もちろん、linuxのディストリビューションとかではなく、違法ファイルのダウンロード。
落としているのはアニメとか、ドラマとか、AVとか、そんなの。
買えばいいじゃん。お金持ってるよね。ないなら、レンタルでもいいじゃん。
妻に隠れてこそこそAVダウンロードするなら、ツタヤでレンタルしてくりゃいいじゃん。
一人暮らしの学生って訳じゃないんだから、同じLAN内に私のPCもあるし、
そもそもあんたのパソコンに仕事のファイル入ってるだろ? マジやめてくれよ。
みたいなこと何度も何度も言っても全然やめない。アル中ならぬまさにダウン厨。
いつか逮捕されてしまえ。
みなさんにお聞きしたいのですが、
上記二製品が主要ディストリビューションのいくつかに正式に対応された場合
個人的環境や、あるいは会社の環境をまるごと(といっても一部所単位くらいで)入れ替えるということが
「不可能ではない」
と言える方はどれくらいいるでしょうか。
という環境も結構ありますよね。
私自身はこれらが対応した場合、完全に移行することも不可能ではないなと考えています。
(実際にはMS Officeはありえないだろうけど)
場合によっては10年程度あればOSのシェアが3~4割は変化するのではとも思います(多分Macも同時に伸びる)
同じようなことを考えた方って、いません?
通信環境も含めてそこまでロースペックならLinuxの最新のディストリビューションはもうムリだよ。
NetBSDでもいれて使いなされ。
http://www.vmware.com/support/player25/doc/releasenotes_player251.html
What's New
* Japanese localization 〓 A localized version of VMware Player is now available in Japanese for Windows hosts.
http://www.ubuntulinux.jp/products/JA-Localized
Ubuntuは日本語化バージョンがあり、VMware用の仮想マシンも配布してる。サイトも日本語
最初から最後まで日本語の説明を読みながら、日本語の仮想マシン上で、日本語のUbuntu Linuxが動かせるようになる。
そうなれば日本でもUbuntuユーザーが増えるんじゃないだろうか。
(すでに海外ではLinuxのディストリビューションで一番人気だったはずだが、日本でのシェアは低かったと記憶している。)
単体の実行ファイルを起動して、あとはすべてよろしくやってくれれば、それが一番いいんだろうけど、それはVMwareの方針がからむので無理そうだ。
(http://www.kev009.com/wp/2008/11/on-file-systems/)
訳した。分からなかったところは英語のまま。ファイルシステムについて完全な素人なので変な所があるかも。
ファイルシステムはOSの重要な要素だが最近ではあまり関心を払われていない。ビットが入ってきてビットがでていく……デスクトップシステムにとっては、たいてい十分に働いてくれる……ただし、電源が落ちるまでは。しかし、そんな状況ですら近頃ではあまり困ったことにはならない。
Linuxのファイルシステムの分野には競合製品が多い。ext2が長い間標準とされてきたが、2001年辺りから他の選択肢も主流となった。あまり歴史に深入りせずに要約すると(順番は適当)、ext2が進化してext3となり、ジャーナリング機能が付いた。ReiserFSがリリースされた。SGIはXFSを移植した。IBMはJFSを移植した。
いくつかの理由があって(主に政治的な理由で)ext3がLinuxのデファクトのファイルシステムとなった。
私が古典的ファイルシステムと呼ぶとき、基本的にいつも同じ概念を指している。つまり古典的なUnixレイアウトのファイルシステムにジャーナリング機能を追加したものだ。ここに述べるのは、それら古典的ファイルシステムのハイライトである。
これは後知恵だが、JFSやXFSが牽引力を持たずに、ext3が人々を古典的時代に停滞させたのは一種の悲劇だった。しかしながらext3は信頼性を証明し、きちんと動くように一貫として保守されてもいる。
2005年にSunはZFSという爆弾をリリースした。ZFSは私が次世代ファイルシステムと呼ぶ時代への案内人である。
ハードディスクが大きくなるにつれて、バックアップの戦略、完全性(integrity)の検証、巨大なファイルのサポートは前より遥かに重要になってきている。
ここあげるファイルシステムは古典的なVFS lineを曖昧にしたりLVMとRAIDを強固な結合することによって管理を楽にする事を目的としている。
ダメなハードウェアで起きる静かな(観測されない)データの破損も心配の種である。これに対抗するために、次世代のファイルシステムはチェックサムを供えている。
いろんな意味でLinuxのコミュニティーは完全に油断しきっており、多くの開発者はZFSがリリースされるまで次世代ファイルシステムについて真剣に考えてこなかった。Reiser4はいくつかの新しいアイデアを持っていてキラーファイルシステムとなろうとしたが、Hans Reiserは、他のカーネル開発者との著しく酷い関係を楽しんでいたのだった。ただ幸運な事に、いまではいくつかの、より先進的なファイルシステムが登場しようとしている。
kernel 2.6.28と一緒にext4がリリースされるが、BtrfsやTuxs3が安定するのを待った方がよい。Btrfsの開発陣は短距離走開発を行っているので、Linuxのカーネルの開発サイクルに次か、あるいはその次で取り込まれると思われる。
SSDが普及するのは明白だ。理論的に速度の面で磁気ストレージより圧倒的に早く、現実にも既に書き込み速度が追い付きはじめている。最新のIntelのランダムアクセスやIOPSは非常に印象的である。Btrfsは当初からSSDへの最適化を取りいれようとしている。しかし、これらの新しいデバイスは、更に速度の早い新しいファイルシステムを生むだろう。
私自身の考えでは、ウェアレベリングやFATエミュレーションがSSDの性能を押し止めているため、 新たなファイルシステムが登場すればパフォーマンスを改善できるだろう。
さあて、viでも使うか……
さあて、これからの時代はやっぱ、Kateだよな。
どっかの統合開発環境みたく、プロジェクトごとに開くファイルを設定できるんだぜ。
日本語入力ならviよりEmacsの方が入力しやすい(かもしれない)。
だって、viだとカーソル移動や編集の際にわざわざ日本語入力を切替えないといけなくなるから。
(俺の場合はeggとかなんとか、ディストリビューションごとにemacsの日本語環境の設定が違うので、すんごい混乱した。)
ディストリビューションの設定次第でEmacsが活かされたり、殺されたりしてるような気がする。(そもそも俺自身にEmacsをカスタマイズするだけの気概も無いのだが。)
とかいいつつ、俺は日本語の文章を打つ場合はKDEやGNOMEのテキストエディタを使ってる。
でもEmacsのいくつかのコマンドはbashとかinfoコマンドと多少の互換性があるので覚えておいてもいいかもね。
manの操作はvi寄りだけど。