「django」を含む日記 RSS

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

2015-10-07

PHPWEBフレームワークを使いたくない理由

LaravelやCodeIgniterFuelphpCakePHPなど、プロジェクトごとにフレームワークインストールしなければならないので、使い回しが出来ない。

Zend Frameworkはそんなことないが、雛形がないのでルールを決めないととんでもないコードを生む。

プロジェクト内にコアファイルを置くのが気持ち悪い。

限られた容量のレンタルサーバを使うときにLaravelを置くだけで15MB以上消費するのが気になる。

人気なフレームワークLaravelやsymfonyCeleron 1コア、メモリ1GBの環境では重かった。

数年毎にトレンドが変わるのでrailsdjangoのような鉄板がないこと。

2015-03-05

営業出身の30代おっさんプログラミング人生を変えた話

俺の半生

大学一般教養Pascalを習った程度。専門課程に入る前に文法はすっかり忘れた。専攻は都市工学からその後プログラミングとは縁はなかった。卒業前に第一種情報処理技術者資格だけはとれてたのでプログラミングの何たるかとかオブジェクト指向なんかも知識としては知ってた。

大学卒業後にデスクトップユーティリティーのメーカー技術営業をやった。顧客製品仕様を説明するのが主な仕事なのでパワポばかり使ってた。その会社ではLinuxソフトも販売してたから、Linuxコマンドは打てるようになった。そこでシェルスクリプト習得しようと思ったがあえなく挫折

その後ネットワーク機器メーカー転職トラブルシューティングLinuxさらに使うようになった。そこではHTTPプロキシを主に扱っていたので、HTTPプロトコルについては一通り知識を身につけた。その知識を実際にLinux上でシミュレーションしてみたくなり、Cを習得しようと思ったがやっぱり挫折

部署移動でメールサーバーを扱うようになった。SMTPプロトコルの知識は身についた。ここでもSMTPLinux上でシミュレーションしてみたくなり、こんどはperl習得しようと思ったがやっぱり(ry

今はExchangeを扱ってる部署で働いてる。ここではExchangeメールメタ情報MySQL上で扱ってるからSQLSELECT文くらいは見よう見まねで使えるようになってる。

Pythonとの出会い

そんな俺も部下を持つようになり、デスクワーク時間が増え、比較自由時間が持てるようになった。そんなときはてブでみかけたCoursera(https://www.coursera.org/)で本当に偶然に「初心者のためのプログラミング」というコースを見つけた。

Programming for Everybody

https://www.coursera.org/course/pythonlearn

コース自体英語だが、別に教授と会話するわけではないし、Python文法以外は条件分岐や繰り返しといった過去挫折しながらも知識としてだけはぼんやりと覚えていたことの繰り返しだ。英語が少しくらいわからなくても、図を見ていれば何を解説しているかくらいはわかる。

結論から言えば、このコースを受講したおかげでいままで断片的に持っていた知識 -単語だけは知っていた「オブジェクト指向」、「条件分岐や繰り返し」「アルゴリズム」などなど- がパズルピースのようにかっちりと組み合わさり、Pythonが難なく習得できた。いままでにシェルスクリプトやCに挫折したのがウソのようだ。LinuxHTTPSMTPSQLといった周辺知識も余すところなく役に立った。何のことはない、Pythonの標準ライブラリを使えばHTTPSMTPシミュレーションなんて簡単にできたのだ。以前トラブルシューティングで夜中まで手作業でちまちまやっていた作業は、全部Python一発で解決したんじゃないか。

このコースをきっかけとして、俺の人生(といってはおおげさだが)が大きく変わった。小さいところで言えば、自宅PC上でバックアップにつぐバックアップでわけのわからなくなったフォルダ構造の中から、同一のファイルを探し出し削除できるようになった。(傍から見れば何を大げさなと思うかもしれないが、ここ10年くらいの俺の中で最大の懸案だったのだ。)仕事でも日次で発生する業務をバッチ化したり、繰り返し発生する手作業を全部Python自動化した。(経営陣へのレポート作成とかそんな類のものだ。)おかげで残業どころか定時前に帰宅できるようになり、自由時間さらに増えた(笑)

ひとつ言語習得してしまえば、あとは同じことの繰り返しだ。増えた自由時間を利用して、いまはPHPJavaScriptjQueryを身につけて何かWebサービスを立ち上げようと目論んでいる。出来上がったら、またここでそれまでの道のりを紹介したいと思っている。

こんなことが自分の身に起こるとは、1年前の自分には想像すらできなかっただろう。それまでは「Webサービス」なんて言葉自分とは一切縁がないと思っていたから。

欲を言えば10年前、いや5年前でもいいからこのコースに出会ってPythonを身につけていたら、今とはまったく違った人生を歩んでいたかもしれない。

コースを開講した教授との相性もよかったのだろう。彼の人柄にも好感をもてたし、「for Everybody」というだけあって、非常にわかりすい説明だった。英語だということを差し引いてもこのコースはおすすめだ。

3/6/2015 追記

たくさんのコメントありがとう。こんなチラ裏文章ホッテントリ入りしてかなりびびっている(笑)

いくつかのコメントに返答したい。

こういう反応があることは投稿したときに予想はしていた。だが、何がきっかけでプログラミングを身につけたのかを具体的に書かないと、何の役にも立たない本当のチラ裏になってしまうので、コース名を書くことにした。だがこのコースをはてブで見つけたのは単なる偶然だ。このとき見つけたのがドットインストールRuby講座だったら、Coursera→ドットインストールPythonRubyになっていただけのことだ。ここで言いたかったのは、断片的でも一度触れたことのある知識は後になってどこで役に立つか分からない、ということだ。Steve Jobsも言っていたが、「人生を振り返ったときに点と点をつなぐことはできるが、その点がなんの役に立つかをあらかじめ予想することなんてできない」ってやつが自分にも起こった、それだけのことだ。

なお、Courseraのこの教授自分の授業内容をすべてオープンにしている。http://www.pythonlearn.com/ 教科書さえもここで無料で手に入る。Courseraに登録するのに抵抗があり、自習上等という人はここで俺が受けたのとまったく同じ内容を確認することができる。ちなみに授業はすべてYoutube上で公開されている。

  • 「なぜPHP?Pythonでやればいいのに」について

これについてはまったくその通りだ。ただ、もう新たな言語を覚えることにまったく抵抗がなくなったのと、PHPRuby on RailsWebサービス界ではメジャーらしいので、とりあえずPHPもやってみよう、くらいの軽い気持ちで思いついただけだ。ひょっとしたら実際にはPython+Djangoとかで開発するかもしれない。

2015-01-16

http://anond.hatelabo.jp/20150116173631

別にPython3で使える画像処理ライブラリだってあるし、Webフレームワークdjangoみたいな人気あるやつは両対応してるし

そんなに公式サポート重要ならそもそもオープンソース自体使うべきじゃないし

Python自体は、ほとんどのLinuxの標準としてがっつり食い込んでて安泰だと思うけど

2014-10-15

http://anond.hatelabo.jp/20141011122833

盛大にスベってるなあ。

こういう「上から目線」のポジションに立ちたがる人たちが揃いも揃ってRails叩きたがる(でも自分陳腐自覚はない)のが面白い

たぶんPHP叩きは多数派に乗っかってる感があってイマイチだし、Pythonはなんか怖いし、Ruby/Railsは隙があって自分でも叩けそうな気がするんだろうね。

DjangoとかPlayとか、他のフレームワーク勉強してみることをお勧めするよ。自分の書いた批判素人のないものねだりに過ぎないことに気づけるんじゃないかな。

2013-06-26

エロ2ちゃんねるまとめサイトから画像を集約するサイト作成

作ったサイト概要

サイト名称
おなりん(正式名称おなぬらいんず)
サイト目的
おなぬをお手軽・お気軽にするためのサービスエロ2ちゃんねるまとめサイトから画像を収集して、お気に入り画像だけをスライドショーするだけのシンプルWEBサービスです。
サイトの特徴
1)準備をしなくてもすぐにはじめられる 2)毎日新鮮なおかずで 3)右手はいつもフリー、、、
サイトの説明
「おなりん」はおなぬが大好きだけど、おかずを準備するのが面倒というひとのために開発されました。本をおかずに使うと、利き手でページをめくる必要があるので、おなぬに大切なリズムが狂ってしまますインターネットエロサイトをおかずにすると、画像を切り替えるのにいちいちマウス操作せねばなりません。利き手マウス操作しないといけないので、これも大切なリズムを狂わせますもっと気軽におなぬが出来ないものか?そんなあなたの為に作られたWEBサービスです。厳選されたムフフサイト画像を表示し、気に入った画像お気に入り登録して、スライドショーで表示する。後は、右手の思うがままです。何にも集中を邪魔されることなくおなぬに集中することが可能です。

わたしの横顔

年齢
40代半ば
職業
システムエンジニア
プログラミング
25年以上
プログラミング実績
10数年前までフリーソフト作家的なことをしていました。窓の杜にも作成プログラムが掲載されていたことがあります
好きなプログラミング環境
PHPMySQL(だたし、「おなりん」はPython作成しています

作ったきっか

もともとは、2ちゃんねる系のまとめサイトを巡回して、Yahoo!ニュースのようなサイトを作っていました。(現在も鋭意開発中です。)

コンテンツの内容を解釈して自動的にジャンル分けをして・・・などと、出来るかわからない壮大なアイデアを実装しているので、いまだに完成時期が見えて来ません。

画像収集処理を作っている時に「これでエロ画像を集めたら面白そう」と思いついてしまいました。思い立ったら、すぐにやりたくなるのが人間の性というやつです。基本的な処理はほとんどできていたので、割に短期間で作成できました。エロ画像をどうせ集めるのなら、目的をもって役に立つサイトにしようと思い立ち、おなぬーをするためのWEBサービスにました。

作成したもう一つの目的として、月間10PV程度のサイト自分で運営したいという思いもありました。安直ですがエロ系のサイトであれば、それが可能なのではと考えた次第です。

なぜ匿名ダイアリーを書いているか

せっかくサイトを作ったのですが、エロ系のサイトは告知をするのが難しいとう事実を作り終わってから知りました。私自身もブログをやっているので、そこでお知らせをしても良いのですが、ブログ趣旨にあわないのと、PVがとてつもなく低いという理由で断念しました。

匿名ダイアリーは、かなりのPVがあるので、作ったサイトの告知ができるのではと思い匿名ダイアリーを書いています

せっかく作ったサイトですから、皆さんに利用してもらいたいし、役に立つサイトにしたいと思っています。ですので、サイトを見たらご意見をいただけたら嬉しいです。

おなりんの実行環境

「おなりん」は、Python/Djandoで作成しました。

もう、15年以上PHPPHP FIと言う名称の頃からユーザーです)でプログラムを作ってきました。PHPが持っている気軽さや気楽さは大好きなのですが、誰もが好き勝手コードが書けるというデメリットもありますプログラム言語にはある程度の厳しいルールがないと将来にわたってメンテナスしていけるプログラムを作るのは困難です。

せっかく新しプログラムを作るのだから、新しいプログラム言語で作ることにしました。

ある程度、厳しいルールがあって、誰もが同じようなプログラムが作れる言語はなんだろうと考えていくとPythonRubyが候補に上がりました。

Rubyはできるだけ手数を少なくプログラムを作ろうという基本思想があります。私の感覚では、熟練したプログラマが使う言語という印象が強いです。

Pythonは、プログラマレベルを問わず、熟練プログラマ新人プログラマも同じようなプログラムが書けるプログラム言語という印象でした。

私自身も将来誰かに教えられるようにと、今回はPythonを使用言語として選択しました。また、裸のPythonで書くのも面倒そうですので、フレームワークとしてDjangoを選択しています

「おなりん」は、そんな思いを乗せて以下の環境で構築しました。

サーバーさくらVPS(1G)
プログラミング言語Pytyhon 2.7.5 / Django 1.5.1
その他ツールBootstrap, jquery, wookmark, colorboxなど
WebサーバーApache 2.2
データベースMySQL 5.5

画像抽出について

「おなりん」は、登録されたまとめサイトを定期的に巡回して、各エントリーから記事内の画像URL抽出しています。取り出すのはURLだけで、画像の直接ダウンロードは行いません。ですので、リンク元画像がなくなれば、「おなりん」からの表示もなくなります

サイトエントリーRSSから取得しています。各記事のHTMLPythonライブラリurllib2を使って取り出し、HTMLから正規表現画像URL抽出しています

サイトによっては記事画像HTMLに決まった書き方がなされていないために、余計な画像抽出してしまうこともあります。おかず画像抽出精度は徐々に上げて行きたいと思ってます

さくらVPSについて

当初「おなりん」は、Amazon EC2(t1.micro)で構築する予定でした。構築までは完了したのですが、今ひとつ体感速度が上がらないのです。すでに利用しているさくらVPS比較したところ、3倍くらいの速度差(abコマンドの実行結果)があったので、Amazon EC2の利用を諦めました。

Amazon EC2は1年ほどの無料利用期間があります。これを過ぎると課金されていくのですが、Amazon EC2(t1.micro)を1ヶ月動かし続けると4000円近い料金が必要になりますさくらVPS(1G)は1年で1万円程度です。3倍早くて価格は4分の1なら、チープな私はさくらVPS以外選択余地がありません。

でも、拡張性を考えるとAmazon EC2も捨てがたいのです。

Python、初Django感想

Pythonはインデントプログラムブロックを表すます。他の言語のようにカッコを使いません。IFやFORを使ってインデントが深くなると、どんどん右寄りになってきて、全体的に斜めなプログラムが出来上がります最初は見慣れずに違和感を感じましたが、慣れればそうでもありません。

ただ、ネストしたIFでインデントが深くなりすぎると、インデントの位置で意図しない結果が出るので注意が必要です。慣れてしまえば、使いやす言語です。

Djangoは良いフレームワークだと思いますモデル定義してしまえば、モデルメンテナンスを行う、管理画面が一緒に生成されますテンプレートタグなどを自作すれば、かなり深いところまで手を加えることが可能です。慣れれば扱いも楽なので個人的には気に入っています

今後について

「おなりん」は、まだ作ったばっかりで、テストもまだ十分に行えていません。ですので皆様にも使っていただき、問題点があれば教えて頂きたいと思っています。開発しているマシンmacなのでIE系のテストは皆無です。IEの方、ぜひともレポートをください。

レポート感想などがありましたら、「おなりん」のサイトの下にある「お問い合わせ」リンクから送付をお願いします。また、巡回してほしいサイトも募集しています。ただし、日本国法律に準拠したサイトに限らさせて頂きます

機能的に今後は、画像の人気ランキング機能を組み込む予定です。また、サイト運営の足しにしたいのでひっそりと広告を入れます

また、リクエストがあれば、ソースコードGithubに公開したいと考えています

長文を読んでいただき、ありがとうございました。

2013-02-26

オンラインブックマークサービスを作ってみました。

「らびっとブックマーク

http://rabbit-bookmark.com

管理をする」ことに重点を置いた(ノンソーシャルブックマークサービスです。

■作ったいきさつ

ブラウザブックマークが貯まりに貯まってたので、ブラウザじゃなくてオンライン管理しようと思ったところ

丁度いいブックマークサービスが無かったので

「じゃあ自分で作ってみるか」

ということで作りました

はてブは?

もちろんはてブでもブックマーク管理してたんですが「もっと一覧性が高かったらなぁ」とか、「ラベリングができたらいいなぁ」とか、

単純に管理するという点に注目したときもっと機能が欲しいと考えました。


制作について

製作期間は2ヶ月くらい。

使った言語PHPで、フレームワークは「CodeIgniter」というものを使いました。

日本CodeIgniterユーザ会」

http://codeigniter.jp/




Webサービス制作で紆余曲折した話

実はプログラミング勉強は1年半ぐらいやってて、Webサービス(のプロトタイプ)をいくつか作ったことがありますが、リリースまで出来たのは今回が初めてです。

最初流行の「Ruby on Railsから勉強しました。

本を買ったり、ネット上のチュートリアルを参考にしたりしました。

流行だったこともあって、情報収集にはそこまで困りませんでした。

そこで当時考えたToDoリストゲーム性を加えたWebアプリを作ろうとしたんですけど、どうしても本番環境へのデプロイができなくて、そこで挫折…。

デプロイだけで2~3週間ぐらい奮闘してたと思います。)

ならば別のフレームワークを!と思って次に手をつけたのがPythonフレームワークDjango

Railsより動作が速く、もともとPython勉強してたこともあり、親しみを持てた一方で書籍ネットでの情報が少なくて苦労もしました。

簡単なアプリを作ってデプロイを試みたんですけど、結局こちらでも成功まで辿りつけませんでした…。

サービスを作っても公開できなきゃ意味ないじゃん!」

と焦り始めたところで、次に目をつけたのがPHPの「CakePHP」でした。

PHPを使ったら負け」みたいな文言ネットでよく見かけていた

(結果として今現在かなりお世話になっていますが)

ので、あえて敬遠していたのですがここまでくると手を出さずにはいられませんでした。

結果から言うとこちらは先の2つでの苦労が嘘のようにいとも容易くデプロイができました。

このままCakePHP制作を進める予定でしたが、何故かここら辺で別の事に手を出して、構想していたToDoリストアプリの制作を中断しました。

そして数ヶ月の空白期間を隔て、今回のオンラインブックマークサービスネタを思いつきました。

その間に出会ったのが「CodeIgniter」というフレームワークで、CakePHP同様PHPベースですが、こちらは軽量フレームワークです。

動作が速く、学習コストも低いのが魅力的でした。(デプロイも簡単。)

ということでこちらを採用して制作し、今回リリースまでこぎつけました。

これから独力でWebサービスを作ろうと思ってる方は、使うフレームワークの仕組みだけでなく、本番環境デプロイすることまで見越した勉強をしないと

自分みたいにフレームワークに左右されて余計な時間を取られてしまうので、その辺は注意した方がいいかもしれません。

(ただそれらを通して学んだことは無駄にはならないと思います。)


感想

今回実質の製作期間は2ヶ月くらいでしたが、それに至るまでの勉強も含めるとかなりの時間と労力を費やしていて、Webサービスをちゃんとしたサービスとして

リリースするのは本当に大変なことだと痛感しました。

立ちはだかる壁としては

技術がなぁ…

デザインがなぁ…

↓(ある程度の妥協

デプロイがなぁ…

宣伝がなぁ…

運用がなぁ…

みたいな感じだと思います

最近はてブでも「Webサービス作った」系のエントリが上位に昇っていますが、

素人でも独力で数ヶ月でサービスを公開してしまう方は本当にすごいなと感じました。

自分はまだ勉強中の身で至らないところもありますが、どうぞよろしくお願いします。

2013-02-06

もしプログラミング初心者新人に基礎教育を施すなら

オープン系のデスクトップアプリ開発、Webプログラミングシステムプログラミングを仕事にする人向けとして考えてみた。

学習環境Ubuntu Linuxで、デスクトップ上のターミナルか、WindowsからTeraTermsshログインして行うことを想定。

なので前提知識としてLinuxabcくらいは教えておくとして、もし来年度やるならこんなもんかな。

結構分量多めだけど、これでも基礎の基礎に絞った感じ。


  1. Pythonで学ぶ手続き型プログラミング
  2. Javaで学ぶオブジェクト指向
  3. C言語で学ぶメモリの仕組み(主に配列ポインタ構造体関連)
  4. Perlで学ぶ文字列処理(正規表現ハッシュCGIを含む)

おまけ:Pythonで学ぶ関数型プログラミング


なお、上述のカリキュラムでやらない言語(VBjavascriptC++Objective-CC#PHPRubyなど)やWebフレームワーク(DjangoRuby on Railsなど)は、全てこれらの応用で覚えられると思うので、基礎教育終了後に各現場にてOJTで習得してもらう。

IDEも使わないけど、はじめの一歩で軽量エディタ+コマンドラインをやり込んでいれば正直どうにでもなるので省略。

あと最後がおまけ扱いな上にLISPで学ばないのは、要するに「リストすげー!超すげー!!」という感動を胸に今後も頑張ってもらうのが狙いなので(だって現状使う機会殆ど無いし)、最初にやって一番手に馴染んでいるツールで、理解のコアになる部分にサクッと触れて欲しいということ。


ちなみに来年度、自分教育係になる可能性は今のところ無い。

2013-01-01

全てのwebエンジニアPython勉強するべき2013年到来

 

あけおめ!今年は巳年。へび。へびと言えばPython。そう今年は全てのwebエンジニアPython勉強する最高の環境が整った年なのです。

 

既にPerlRubyを習得してるけど、それに加えてPython必要

必要です!必要だと思います。もはやPythonwebエンジニアにとって必修言語となりつつあると思いますLinuxの多くの箇所でシステム言語として用いられ、可読性の高さから多くの技術書籍のサンプルコードとして用いられ、科学技術系分野におけるエコシステムの充実っぷりはますます磨きがかかっており、様々なライブラリがどんどん出てくる現状を「Pythonからいか自分には関係無い」と遠巻きに眺めるのはもったいないです。

 

習得するのにどのくらい時間かかるの?

あなたが既に他の言語に慣れ親しんでいるなら、特にRubyなどに精通していれば「1週間」で基本的な読み書きは出来るようになるでしょう。そのくらいPythonは敷居の低い言語です。またweb上のチュートリアルドキュメントが大変に充実していますので(もちろん和訳済み!)費用0円で勉強開始できるお手軽言語でもあります

 

バージョン2系と3系のどちらをやればいい?

これは大変に悩ましい問題で、自信を持ってお薦めできるバージョンが無いのが残念な現状です。2系と3系は特に文字コード周りを中心に言語体系にそれなりの差があり、日本語を扱うエンジニアにとっては悩ましい問題です。結論としては「どちらも読み書きできる」ようにした上で「3系で書く」ですかね。2と3の違いを理解しておかないと必ずどこかで躓きます特にweb上の情報はまだほとんどが2系ですが、ぱっと見て2と3のどちらのバージョンで書かれた情報なのかを判断できないと多くのweb上の情報を利用できずにもったいないです。

 

お薦め和書は?

先述しましたが和訳済みのチュートリアルが充実しているのがPythonの特徴でもありますので、まずは目を通す事をお勧めします。

・2系ドキュメントTOP

http://docs.python.jp/2/

・3系ドキュメントTOP

http://docs.python.jp/3.3/

・公式ドキュメントでは無いがお薦め(少し進んだトピックが中心)

http://www.doughellmann.com/PyMOTW-ja/contents.html

ぜひ超充実したドキュメント群を覗いてみてください。「チュートリアル」を読めばだいたいの言語仕様がつかめるはずです。「ライブラリリファレンス」はあなたの最高の辞書となるでしょう。

その上で、やっぱり書籍勉強したいということでしたら以下の本がお薦めです。

プログラミング自体が初めての人向け

Pythonスタートブック(辻 真吾)

・他言語を既に知っている人向け

みんなのPython 第3版(柴田 淳) ・・・2版と3版で大きく内容が異なります 2版はPython2系、3版はPython3系を中心に解説

・進んだトピックを扱う中級者以上向け

エキスパートPythonプログラミング(Tarek Ziade/和書)

 

IDEで楽したい

pythonはインデント存在があるので無機能エディタで大規模なコードを書くのは案外骨が折れます。贅沢系IDEの代表格はPyCharm(有料$99)でMac,Windows,Linuxの3プラットフォーム対応しており、一つのアカウントでいくつものマシンインストールできます(同時に使う事はできない)。30日間の無料トライアルもありますトライアル期間が過ぎても一回あたり(たしか)5分ぐらいなら継続して使えます無料IDEだとEclipseプラグインNetbeansあたりでしょうか。Netbeansは公式開発は既に終了しておりあまり安定していません。

 

色んなライブラリなど

ここからは雑多に箇条書き風にお薦めしていきますね。

webフレームワーク

大規模な開発ならDjangoが第一候補。歴史が長いフルスタックフレームワークですがまだ正式版がpython3系に対応していない。最近勢いがあるPyramidは3系に対応済み。各webフレームワークについては各開発者同士が「筋が悪い」「Pythonとしておかしい」「トレンドから3年は遅れてる」などとガチンコで思いの丈をぶつけ合っている以下の記事も参考にしてください。http://www.atmarkit.co.jp/news/201209/24/pycon.html

とりあえず最低でもDjangoPyramidは両方使ってみてから自分にあった方を選択するといいと思います

・Numpy/Scipy

科学技術系の人が好んでpythonを使う理由の一つがNumpy。数値行列計算を内部でCを使って計算するために非常に高速。インターフェイスは書きやすpythonだけども実行速度はCネイティブ並みというとてもありがたいライブラリです。現在Pythonの盛り上がりに間違いなく大きく影響しているライブラリ

・nltk

言語処理で使われるライブラリ英語ベースとなってますが工夫すれば日本語でも全然使えます。参考文献 http://nltk.googlecode.com/svn/trunk/doc/book-jp/ch12.html

・multiprocessing

並列処理ライブラリCPUマルチコアを全て使い切って無駄無く高速に処理を行いたい時に重宝します。個人的に大好きなライブラリ。頑張ればちょっとした分散並列システムも作れます。このライブラリのお陰で自宅にある10台*(擬似)8コアでお手軽python並列処理クラスタを30分ぐらいで作る事ができました。

以上です

楽しいですよpythonもっと日本pythonエンジニアが増えることを祈ります

巳年元旦

2012-01-18

Python vs Ruby vs PHP vs Haskell プログラミング言語バトル part1

 

42 : デフォルト名無しさん : 2011/11/12(土) 23:53:51.20

Pythonの方が弄れる対象が多いのに、なんでウェブ系だとPHPの方が流行ってんだろ

端末からテキスト処理も楽だし、数値計算周りのライブラリも充実しているのに

PHPが優遇されているのって歴史的な経緯以外に何か他の理由でもあるのか?

けどまぁ、情弱文系SEが大半を占めているバカだらけの日本じゃ別にPHPで困ることもないか

45 : デフォルト名無しさん : 2011/11/13(日) 01:41:24.25

数値計算や端末からテキスト処理なんてWeb系じゃ大して使わないからなあ…

43 : デフォルト名無しさん : 2011/11/13(日) 00:04:23.30

PHPが未だに現役なのは、単に歴史的な経緯でしかないだろ

Pythonに関しては、ZopeさえコケていなければWebサーバLLとして大成功していたはずなのに、

Railsなんかが登場したおかげで、すっかり影が薄くなってしまますた....

44 : デフォルト名無しさん : 2011/11/13(日) 00:49:55.28

zopeってコケてたんだ

ってか、railsインスパイアされたフレームワークって今じゃ幾らでもあるよね

djangoとかCakePHPとか。rubyってRoRを使いたいユーザを除くと、

pythonPHPの方がユーザー数は圧倒的に多いと思うんだけど

本家railsって、他を遥かに越えるほど良いものなんだっけ?

48 : デフォルト名無しさん : 2011/11/13(日) 08:30:25.68

44

Zopeが登場した当時、RDB+PHPはもう古い、これからOODB+ZopeWebの中軸になる!」

さかんに宣伝され、雑誌でもZope特集が組まれていた

 

少なくとも自分ZopeからPythonという言語を知ったし、その時点でRubyは知らなかった

そして、その後のORM(RDB)+Railsの出現と華々しい革新性への注目は、誰もが知っているだろう

今でもZopeの開発は継続されてはいるが、結果的に当初の期待が大きく裏切られたという事実は動かしがたい

 

djangoCakePHPについては実際に触っていないので憶測になるが、おそらく技術水準ではRailsと同等だろう

しかしRailsはRailsコミュニティの活動が活発だし、その進化は異常に早い

 

Railsに何か致命的なトラブルが発生して開発が停滞する、あるいはdjangoCakePHPから

何かのイノベーションが提示されでもされない限り、後発のdjangoCakePHPRailsに追いつくのは無理

Railsは決して技術的に完璧Webフレームワークではないんだけどね....(たとえばSeaSideのような.... )

 

からこそ「もしもZopeが....だったなら」という「たら・れば」感はPythonコミュニティの潜在認識になっている

51 : デフォルト名無しさん : 2011/11/13(日) 12:55:40.83

 C a k e P H P は う ん こ   

遅い、設計が古い、動作がおかしいの3重苦

日本では流行ってないけど海外だとYiiが流行ってきてる

55 : デフォルト名無しさん : 2011/11/13(日) 17:31:12.14

CakePHP使ってんの?

可哀そうにw

53 : デフォルト名無しさん : 2011/11/13(日) 14:44:48.55

求人PHPばかりだからPHPやるしかないだろ。

57 : デフォルト名無しさん : 2011/11/13(日) 19:34:04.95

でもやっぱりいつもの使い慣れたLL(Python/Ruby)で

Webサービスを書きたいってのがある

73 : デフォルト名無しさん : 2011/11/15(火) 17:32:46.07

アメリカ言語ユーザー数は

Python>>>>>>>>Ruby

求人数は

Ruby on Rails>>>>>>>>Django

http://www.indeed.com/jobtrends?q=django%2Cruby+on+rails&l=

どういうことなの?

74 : デフォルト名無しさん : 2011/11/15(火) 17:48:15.59

RubyRails以外に使い道がないか

75 : デフォルト名無しさん : 2011/11/15(火) 17:54:35.50

海外ではRubyは昨今のRailsバブルのお陰で

もはやWebスタートアップ共通語になってるらしいからね

求人数が多いのはそのためだと思うよ

76 : デフォルト名無しさん : 2011/11/15(火) 18:03:23.05

なんかのミスかと思ったがアメリカでもRuby on Railsは人気があるのかなあ・・・

Pythonのほうが使いやすいと思うのだがフレームワークRailsが優位なんだろうか

77 : デフォルト名無しさん : 2011/11/15(火) 18:23:14.33

Djangoは周辺ライブラリ微妙だし本体も鈍くさい感じがする。

でも、FlaskはSinatraより好きだからPythonが嫌いってわけではない。むしろ好き。

 

ただ、いざ作り始めるとやっぱりRailsが楽だなあってなって、Railsを使い続けている。

78 : デフォルト名無しさん : 2011/11/15(火) 18:38:46.28

同感だ

同じように思っている人が他にもいて安心した

79 : デフォルト名無しさん : 2011/11/15(火) 18:54:37.13

PHPJavaScalaには

Railsみたいなフレームワークあるのに

Pythonはいいのないんだよな

80 : デフォルト名無しさん : 2011/11/15(火) 21:19:09.89

PHPフレームワークが乱立しすぎているから、RailsPHPで実装してみようというやつが出てきた。

Scalaも注目されだしたのはつい最近のことだしな。

それに比べてPythonは、Zopeというデファクトスタンダードが既に存在していたけど、

つの間にかフェードアウト

ただ、どうやってもRailsもどきRailsを超えることはできないのは間違いない。

83 : デフォルト名無しさん : 2011/11/15(火) 21:25:38.55

パクリオリジナルを超えられない(キリッ って定型句だけど、

これってキリッって言いたいだけだと思う。

後発品が先に出たものを超えたものなんていくらでもあるから

84 : デフォルト名無しさん : 2011/11/15(火) 21:30:04.39

D言語って超えたって?

85 : デフォルト名無しさん : 2011/11/15(火) 21:31:12.00

B言語って超えたって?

86 : デフォルト名無しさん : 2011/11/15(火) 21:53:33.76

でもRailsRubyの黒魔術を使いまくりから

PHPで同じ事をできないわけではないだろうけど、Ruby on Railsほど簡潔にはできない

90 : デフォルト名無しさん : 2011/11/15(火) 22:50:07.81

スタートアップなんて根無し草の集まりにとって、

googleが囲った言語coolさを見出せないんだろ

123 : デフォルト名無しさん : 2011/11/20(日) 11:32:16.79

まあくだらねえWEBサービス作って喜んでる情弱は早く死ねって事だよ

91 : デフォルト名無しさん : 2011/11/15(火) 22:52:42.98

そういう理由じゃなくてRailsのほうが単純に情報プラグインも多いからでしょ

3 : デフォルト名無しさん : 2011/11/15(火) 23:07:07.67

linuxじゃデフォのツールなんだし、ツールとの連携を考えたらpython一択じゃん

わざわざ不合理で不完全な言語を使うなんて

社会からハミ出た奴らの精神的な作用によるものじゃないの?

95 : デフォルト名無しさん : 2011/11/15(火) 23:20:20.21

django情報プラグインが増えないという、

現実に対する鬱憤を吐いてるようにしか聞こえないな

もしも

linuxじゃデフォのツールなんだし、ツールとの連携を考えたらpython一択じゃん

真実であるのなら、今頃はdjango情報プラグインが溢れかえっているはず

104 : デフォルト名無しさん : 2011/11/16(水) 01:20:49.05

Python信者乙。

yumや、gdbgnome拡張pythonであるからといって、それをwebアプリでも使いたいと思う人は少ないというだけのこと。

ソースからインストールする必要があったとしても、web開発ではrubyを使いたいという人が多いというだけのこと。

94 : デフォルト名無しさん : 2011/11/15(火) 23:15:11.93

というか、世界中Pythonプログラマが Remeber Zope!! を合い言葉

打倒RailsたるWebフレームワークを開発しているはずだけど、

いまだにRailsを超えるプロダクトが登場しないのはナゼ?

Railsも登場してから、かなりの年月が経過しているんだけどなぁ....

その間にもRailsRails 3が登場して、REST/AJAXの強化等の進化継続しているよ

347 : デフォルト名無しさん : 2011/12/09(金) 10:16:35.22

Ruby では

ary.map {|x| x**2}

となるものが、Python では

map(lambda x: x**2, ary)

となり、lambda の本体が1つの式では表現しきれなくなると

def mapper(x):

.....

map(mapper, ary)

書き換える必要があります

348 : デフォルト名無しさん : 2011/12/09(金) 10:24:20.94

Pythonのlambdaを用いた階乗計算

f = lambda x:(x and f(x-1)*x)or 1

RubyにはPythonのように「lambda本体は式でなければならない」という限定がありませんから

andやorを使った不自然記述をしなくても

f = lambda{|x|if x == 0 then 1 else x*f.call(x-1) end}

または

f = lambda{|x|x == 0 ? 1 : x*f.call(x-1)}

と書けます。lambda内でreturnが使えますから、書きたければ

f = lambda{|x|if x == 0 then return 1 else return x*f.call(x-1) end}

でもOKです。

390 : デフォルト名無しさん : 2011/12/10(土) 15:35:41.62

348

これはPythondisっているように見せかけてRubydisっているのか? と一瞬思ってしまったw

だってRubyのほうが長くない?CLのfuncallみたいなcall()がちょっとうざいし…

そしてどっちもlambda式の中で束縛変数名前再帰可能、と

350 : デフォルト名無しさん : 2011/12/09(金) 11:12:13.28

要素に対する関数適用と、抽出を組み合わせる場合

Python

print [x*2+100 for x in [1,2,3,4,5] if x > 2 and x < 5]

暗号のように見える。

Ruby

puts [1,2,3,4,5].select{|i| i > 2 and i < 5}.map{|i| i*2+100}

思考の流れと、コードの流れが一致しているので書きやすい。

351 : デフォルト名無しさん : 2011/12/09(金) 11:22:55.04

だれだPythonなら書き方はひとつとか言ってるのは

map(lambda x: x*2+100, filter(lambda x: x > 2 and x < 5, [1,2,3,4,5]))

354 : デフォルト名無しさん : 2011/12/09(金) 12:22:07.37

pythonて可読性が高いのをうたってる割にはそこいまいちだよね

353 : デフォルト名無しさん : 2011/12/09(金) 12:10:08.46

Ruby場合には、左から右へと無名関数データフローあるいは

パイプラインのように並ぶからコードが読みやすい

 

関数型プログラミングに不慣れな初心者でも、参照透明性のあるコード自然に書ける

プログラマにとって優しい or プログラミングの楽しさを教えてくれるのがRuby

 

それと比較すると、Pythonコードは、関数型プログラミングというもの

いかに高度で難解なものであるかという事をもったいぶってプログラマ押し付け

 

もしもPythonしか知らないプログラマであれば、関数型 = 難解 という印象を持つだろう

356 : デフォルト名無しさん : 2011/12/09(金) 12:53:45.66

階乗計算くらいだと単純すぎて、ナゼ重要なのかが分かりづらいと思うのでコードで示す

result_list = source_list.map { |elem|

  x = foo(elem.x)  # ここが局所宣言を書く部分

  y = bar(elem.y)  # ここも局所宣言の続き

  x + y       # 最後に評価された式の値が、無名関数のリターン値になる

}

Rubyでは、map等に与える無名関数の中で局所的な環境(クロージャ)が作られるから

x = foo(...) のような代入文がいくつでも(= 複雑な処理でも)書ける

このポイントは、実用的なプログラム関数型風で書こうとした時に、威力を発揮する

357 : デフォルト名無しさん : 2011/12/09(金) 12:59:21.07

余計分かりづらくなった

358 : デフォルト名無しさん : 2011/12/09(金) 13:17:26.54

リスト内包表記が暗号みたいと言ってる奴は

高卒ドカタなんだろうなぁと可哀想になる

大学数学に触れる機会があれば

集合の表記に似せてることが分かるから

386 : デフォルト名無しさん : 2011/12/10(土) 01:41:34.46

数学とかで慣れてるし区切りが関数のがわかりやすい

359 : デフォルト名無しさん : 2011/12/09(金) 13:46:31.97

355

map/filterはfor/ifと同じだと言っているだけだから、難解という印象は持たない。

関数型プログラミングに慣れた、あるいは得意な人であれば、そういった印象なんだろね

Rubyの魅力はこれから関数型プログラミングを学ぼうとする初心者、 あるいはそんな初心者へ教える立場から見た、優しさ or 分かりやすさなんだ

360 : デフォルト名無しさん : 2011/12/09(金) 13:53:28.85

Rubyだと直感的に書けるコード

[1,4,3,2].sort.reverse.map{|x| x.to_s}.join('-')

Pythonだと読みにくい。

'-'.join(map(str, reversed(sorted([1,4,3,2]))))

361 : デフォルト名無しさん : 2011/12/09(金) 14:07:17.88

360

Pythonでは思考の流れと一致しないばかりか、「カッコだらけ」のコードになると.....

364 : デフォルト名無しさん : 2011/12/09(金) 14:28:55.99

カッコだらけのコードを分かりやすくする基本的な方法静的単一代入じゃないか

Rubyのやり方は基本ではなく玄人のやり方だろ

372 : 369 : 2011/12/09(金) 16:21:03.82

Pythonでは組み込みの型でメソッドチェインはやって欲しくないな

listにmap,filterメソッドができたとしても、

似たようなコレクションtuple,deque,array,queue等にも同じメソッドが必要になってくるし。

シーケンスプロトコルの利点が活かせない。

383 : デフォルト名無しさん : 2011/12/10(土) 01:17:28.39

372

外部のライブラリでも列挙可能なものは、たいていEnumerableモジュールをimportしてます

Rubyユーザーは列挙可能なものmapselectできて当然だろって思ってる気がしま

377 : デフォルト名無しさん : 2011/12/09(金) 18:41:51.79

Pythonは「何かを便利に書くためのしわ寄せ」をはっきり寄せてくる

得意と不得意を言語レベルではっきり主張するのでメリケン好みと言えなくもない

Rubyは全方位になんとなく八方美人なので、全体的になんとなく書きやすくてなんとなくキモくて遅い

379 : デフォルト名無しさん : 2011/12/09(金) 18:48:52.27

Pythonユーザー調教っぷりは異常

「書きにくいってことはその処理に向いてないってことだから諦めろ」を地で行く

387 : デフォルト名無しさん : 2011/12/10(土) 13:40:40.74

リストの内包表記はシンプルに書けるときは使うけど

基本その場でdefするのがPython風なんだと思う。

389 : デフォルト名無しさん : 2011/12/10(土) 14:40:31.04

無名関数が文を使うほど複雑なら名前を付けるのが Python 流と想像

384 : デフォルト名無しさん : 2011/12/10(土) 01:23:49.48

outer(center(inter( arg )))

これを読みづらいと感じるのは、左から右に流れる

日本語文に慣れているからだと思うが、

もしかしてアラビア語ネイティブな人からすると逆に読みやすいのか?

385 : デフォルト名無しさん : 2011/12/10(土) 01:34:57.89

なるほど、ということは右から左、左から右どっちでも行ける言語が最高ですね

F#パイプライン演算子最高ということで

2012-01-04

プログラミング初心者たわごと

JavaScript って生き物っぽいって思ったのがきっかけだった。

なんか菌?に遺伝子いれてたんぱく質生産させるやつ? Function は菌の細胞膜prototype遺伝子で、だから prototype全然関係ない違う生物遺伝子を生きてる菌に入れちゃったり。そうすると全然ちがうたんぱく質生産されたり。prototype にべべーっとコピーして追加するのなんてまさしくそれっぽい。

インスタンスからじゃないと複製できないのも生き物っぽい。

インスタンスって言い方になにか違和感があるなあ。

だってプロトタイプベースって、生き物しかいない世界じゃない?基本的に。インスタンスってのは生き物じゃない設計図があってそれにしたがって出来た生き物がインスタンスってイメージあんだけど。プロトタイプベース世界にはそんな設計図も生き物じゃないものもないよね?なのにわざわざインスタンスっていうのに何か違和感ご都合主義的なもの感じる。クラスは型で、インスタンスを実体だとかなんとかって氾濫してるせいかな。多分この辺の用語が JavaScript をわかりにくくさせてる気がする。

僕の感覚では、オブジェクトってのは生き物で、クラスベースってのは神が設計図に基づいて生き物を生産してる世界で、インスタンスベースってのは生き物が生き物を複製してる世界イメージだ。多分、原始の生物インスタンスベースみたいな世界で、海の中にうようよしてたんだろうな、とか。

オブジェクトじゃないものは、生き物じゃない死んでるたんぱく質RNA の破片みたいな。それだけじゃなにもできないみたいな。それだけじゃ命がないから、生き物の殻に詰めるってのが JavaScriptコンストラクタイメージ

Perl の bless したらこれはもう命入ったよ生き物だからねっあとは勝手にしてねってのも、Python名前空間さえあればなんとかなるよねってのも、JavaScriptハッシュさえあれば世界作れるよねってのも、みんなどこか似ている。ちゃんと OOP を理解できてるかは別としてもこの三つはわりとすぐやりたいことができた。昔 Java の本を買ってきて挫折したのにくらべたら、なぜかずっとわかりやすかった。(bless という命名はすごく洒落てる)

全然関係ないけど、Django日本語リファレンスは何か萌えるラクダ本日本語訳はむかつくのに。

プログラミングを始めたばっかりの時は、なんだか難しい用語の意味を理解しないと OOP がわからないと思ってた。それは僕らの住んでる世界とは全然関係のないプログラミング技術ってやつだと思ってた。

でも多分違う。

世界が動く仕組みさえあれば、あとは作り手に世界の成り立ちを抽象化する表現力さえあれば、世界勝手表現されていくし、動き出してく。たまたま僕らの世界オブジェクトもので溢れていて、プログラミング言語進化すれば世界に似るのも当然だろう。いや逆か。プログラミング言語世界に似てきたから、オブジェクトなんていう世界に似た概念が出てきたってことか。なんだか難しい用語ってのは、その表現の一部分の技術名前をつけてるだけなんだな、と。例えば何とか歌唱法や何々画法とか何とかレトリックとかパースの取り方みたいなのと同じ。それは表現を理解する手助けにはなるけど、その意味を知る事がイコール表現力をあげることにはならないんだよね。これに気づくのに遠回りしすぎたなあ。

(知識を得るだけで、100% 還元される人もいるかもしれないけど、そんなのは一部の天才だけだと思う。殆どの凡人はそうはいかない。とはいえ、元の錬度が低ければ、コツをいくつか教わるだけでいきなりうまくいくこともある。ただ、それをまるまんま実力だと思うのは、どんな分野でも危険だ。恋愛テクニックやらを必死に読んでる連中が男女間の深い人間関係を上手くやれてるとはちょっと想像できない!)

プログラミング表現力を上げるにはどうすればいいんだろう。きっと他と同じだろうな。いい表現を沢山味わって、世界をよく観察して、どう成り立ってるかどう動いてるか、私達はそれをどう認知しているのか、考えることかもしれない。漫画家を志す人が美術解剖学を学んだり、優れた画家が絵筆で世界を生々しく描写するように、優れたプログラマ世界のなりたちをプログラムに写し取ったり、世界の仕組みを作る事が出来るのだと思う。

やっとプログラミング面白くなってきた初心者より。

2010-11-18

日記2

前回:http://anond.hatelabo.jp/20101118000033


Rails勉強してみるかと思ってradrailsインストールしようと思ったら、インストールすら出来ない。

「あらゆる意味で俺には無理」―そんな言葉が脳裏に浮かぶ。

今日はもうやめておこう。いよいよ気が滅入って駄目になるだけだ。


自分に出来ることは少ない。

時間も少ない。


だったら何をすべきか?

いや自分は何をしたいのか?



やっぱりvimか?vimで頑張るしかないのか?

落ち着け

たかだか開発環境ひとつや二つ入れられなくて何だ?

自分はそもそもスキルが無い。序盤で転ぶことが多数あるだろう。

今日の失敗はその一個目だ。

この失敗をどうするか?継続してインストールしてみるか?

いや違うだろう。技術をつけたいのであれば、ひとまずvimで作ってても構わないだろ。

今はまだ開発環境に固執すべき時ではない。

つまりvimで頑張れば良い。

2009-09-09

PHPdisってるやつはダメシグナル効果を発してると思うペチパー

javajava

java対LL

でみんな忙しいので

オチにPHP使うのはレベル低い内輪ネタの証

phpといえばセキュリティヲタにも相手にされず

フレームワークではdjango, railsの下にまで迫ってると思ってるのはsymfonycakephpユーザ層だけだし

pearだけ絶賛放置中だし

appengineにも相手にされないし

拡張いじるおもちゃ以外の何者でもない

しかし水面下では意味不明に勢力拡大中だって聞く

姿は見えない

どこにいるんだおまえら

2009-03-30

自然言語処理Python がいちばん」について

http://d.hatena.ne.jp/mamoruk/20090327/p1

「いちばん」かどうかはわかりませんが、うちの会社製品ではpythonを主力に使った自然言語処理を含む製品を販売しているので、実際の感想を。

うちでは、pythonを元データの整備のための運用バッチ処理から、客が最終的に手にする情報の生成、実際に客が使うWEBインターフェースまで、pythonを主力にしています。

別のチームが作った別の製品ではS2Struts(JAVAね。)でWEBを作っている部分もありますが。

自然言語処理ぶっちゃけどの言語でも可能だとは思います。

mecabが使えて、Unicodeが使えて、正規表現が使えれば、まあ、どの言語を使ってもそんなに大差はないのではないでしょうか。

あとはsennaのような日本語用の全文検索エンジンなども使いますが、そこらへんに近い部分は基本的にC++で書きます。

pythonとは言っても、速度を重視する部分はやはり迷わずC++です。

C++で書いたものはswigを使うか、又はC言語で手書きのbindingを使ってpython接続します。

もこないだswigでつないで製品リリースしたら、WEBからの並列アクセスswigがうまく対応できず、リリースした日に急いで手書きbindingを書いた経験があります。swigの使い方はきちんと理解していないので非常に難しい。

nltkとか、wordnetの話はたしかに使えそうかもと思ったことはありますが、nltkはうちでは使っていません。

うちの会社では自然言語処理研究段階から自社で行っているので、nltkにあるようなできあいのルーチンを実戦投入する事はなく、基本的に地味に自分達でpythonで書いています。

自然言語処理と言っても、核心の処理はやはり泥臭い個別事例への対処が多いです。不要語処理とか。

自然言語処理アルゴリズムは8割程度の精度を出すのは簡単で、すぐに思いつきで書けるものですが、残り2割の精度をいかに埋めて行くかが、頭のいい人とそうでない人の差が現れる部分だと思います。

どうしてもいいアルゴリズムを思いつかない場合は、泥臭い個別事例処理がうねうねと並んだプログラムになります。学術的なものではなく商売になればいいので、うちはとりあえずそれで十分。(これは自然言語処理に使う機械学習アルゴリズムたちも同様。というか自然言語処理機械学習て、区分けがあいまいな部分が多いですよね。)

そういう感じなので、pythonの可読性の高さは非常に有効。

また、変数名や関数名などをexplicitに書く文化も業務で使うのに適していると思います。(他の言語でもexplicitに書けばいいだけですが、それを言語開発者自身が推奨するほど強調はしていないですよね。)

英文の処理で、wordnet辞書データの一部を研究に使った記憶はある。

しかし、あそこまで精緻辞書データを使う程高度な処理は今の所必要ない。

うちで自作した不要英単語辞書と、特別扱いする英単語辞書で間に合わせていたと思います。(その辺記憶あいまい。)

WEBユーザーインターフェースdjangoで。

djangoは非常に明快で、快適。

画面の機能を追加するのに、例えばS2Strutsアクション定義の煩雑さに比較すると、天と地との差ほどにdjangoは簡単。

あと、pythonを使える開発者日本には少ないとの事ですが、うちでもそれは同様です。

しかし、自分の隣の席の同僚はperlに非常に熟達していて、彼はすぐにpythonの達人に変わりました。

優秀な方にとっては言語なんて何をつかってもあまり変わらないみたい。

でも、彼も自分自然言語処理JAVAC++のようなまわりくどい言語は使ってられないという点では同意しています。

2008-09-15

[][][][][][][]Slicehost入門

Slicehost


Slicehost VPS Hosting is now Rackspace Cloud Servers hosting

Slicehost Article Repository - VPS setup, servers, Ruby on Rails, Django, PHP, DNS, Slicemanager and more

Slicehost Articles: IP failover - High Availability explained

All requests for the website come to the front end Slice.

That Slice then proxies the request to larger Slices running in the backend of the network.

Slicehost Articles: IP failover - Slice setup and installing Heartbeat

sudo aptitude install heartbeat

sudo apt-get install ubuntu-xen-server

sudo apt-get install dnsmasq

wiki [Slicehost]

Monitoring Ubuntu Services Using Monit | Ubuntu Geek

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo tasksel

$ sudo apt-get install build-essential


google:Slicehost Ubuntu

Slicehost Articles: Ubuntu Hardy setup - page 1

Slicehost Articles: Ubuntu Hardy setup - page 2

Automatic Rails on Ubuntu 8.04 LTS « Enjoying Rails

joerichsen's gist: 16225 — Gist

Setting up Ubuntu Jaunty for Ruby and Rails development | Joe Ocampo's Blog

5-minutes to Rails // Slicehost VPS Hosting is now Rackspace Cloud Servers hosting

slicehostでRails2.2.2を動かすまで - なんとなく日記

Slicehost Articles: Ubuntu Hardy - Ruby on Rails

Slicehost Articles: Ubuntu Gutsy - Django installation

UbuntuにLAMPサーバを手早くインストールする方法 - builder

LAMPLinuxApacheMySQLPHPサーバを手早くインストールする最も簡単な方法

google:Slicehost CentOS

cat /etc/redhat-release

Slicehost Articles: CentOS setup - page 1

Slicehost Articles: CentOS setup - page 2

CentOSのPHPにはマルチバイト対応入ってませんのであとから入れましょう (技術メモ)

タグ「slicehost」を含む新着エントリー - はてなブックマーク

naotaka blog » Blog Archive » Slicehostに申し込み

slicehostでUbuntu8.04の設定1 初期設定 - delab

Slicehost : Tag Archives - delab

ホスティングサービス Slicehost のドキュメントがすばらしい : 僕は発展途上技術者

SlicehostへのRedmine導入手順(Ubuntu Gutsy)

rootでsshできないように設定する

つくるぶガイドブログ: 失敗しない Rails が動かせるホスティングサービス選びと環境構築

具体的にどこがおすすめかという質問を受けた場合、共用サーバーならば海外Slicehost、専用サーバーならさくらインターネット

Slicehost には、OS を一度まっさらに戻し、

OSの種類やバージョン

用意されているものの中から

簡単に選択し直すことができる機能管理メニューに付いています

naotaka blog » Blog Archive » Slicehostに申し込み

インストールも、やはり2分以内で完了しまから

好きなだけインストールし直しましょう。

なげやり日記: Slicehost

[Rebuild] でOSを簡単にリストアできるのも、試行錯誤のためには便利だったりします。

Slicehost に移行しました - milk1000cc

Web 管理画面で、OS 再起動・再インストール、コンソール操作DNS 設定などができます

あと、プラス $5 で毎日自動イメージごとバックアップ

バックアップ入れても月額 $25、

さくらと違って OS インストール直後は最小構成になっている、設定ミスってもすぐに OSインストールできる


共有サーバー

XREA.COM

CORESERVER.JP:コアサーバー

レンタルサーバはさくらインターネット | 「さくらのレンタルサーバ」「さくらのマネージドサーバ」

ポケットサーバー ★ 月額80円からのレンタルサーバー

格安レンタルサーバーならステップサーバー | 高機能で格安なレンタルサーバーTOP

レンタルサーバーNSF - 月額100円〜容量無制限可の格安レンタルサーバー

ロリポップ!レンタルサーバー - 月額105円~容量最大30GB 初期費用半額キャンペーン中!

チカッパ!レンタルサーバー - ご利用中のユーザー様へのご案内

レンタルサーバー「heteml」 - 大容量・高機能のレンタルサーバー

VPS

Slicehost VPS Hosting is now Rackspace Cloud Servers hosting Slicehost Login

Linode - Xen VPS Hosting Linode Login

Linode.comのVPSホスティングを契約してみた - m-kawato@hatena_diary

Webbynode Hosting - Host and Deploy Ruby on Rails, Django, Node.js, PHP and more

QuillHost - Shopping Cart

VPS Hosting � Virtual Private Server Hosting | DataRealm.com

The New York NOC - New York Colocation, Cloud, Dedicated Servers, and Virtual Private Servers at affordable pricing

Coupon codes, promotions and special offers - CheapVPS

VPS :: VPS Hosting :: VDS :: Virtual Private Servers :: Virtual Dedicated Servers :: Server Axis

RootBSD - FreeBSD and OpenBSD VPS Hosting - Welcome to RootBSD

ProVPS.com - Xen VPS Hosting

VPS仮想専用サーバーならCPI | Linux VPS

レンタルサーバーならVPSレンタルサービス|VPS stock


専用サーバー

激安の専用サーバ:ServerPronto なんと月額$29〜 | 海外サーバ.jp

サーバ本体無償提供、ホスティング向きハウジングサービスを月額7,780円で

デルタ1 - 専用サーバーの【ファーストサーバ】

専用サーバの料金と仕様 | 専用レンタルサーバ(ホスティング)のさくらインターネット

クララオンライン clara

Dedicated servers | Windows and Linux dedicated web servers

Google

Dedicated Servers, Self-Managed Dedicated Server, Dedicated Hosting at ServerPronto

MegaNetServe - Value Driven Dedicated Servers on Linux, Windows 2008, Windows 2003 & FreeBSD

Domain Names, Web Hosting and SSL Certificates - Go Daddy

Dedicated Servers, vSERVERs – SERVER4YOU

Web Hosting | Dedicated Hosting | Domain Registration |

海外の安い専用サーバプランをいろいろ並べて検討してみた - GIGAZINE

再度、レンタルサーバ(共有ではなく「専用」です)で、国内外を.. - 人力検索はてな

Website Hosting in the Yahoo! Directory

Google

サーバー購入

デル株式会社(Dell Japan)の公式サイト | Dell 日本

Dell PowerEdge タワーサーバ

日本HP へようこそ

HP-ProLiant-ML115 G5まとめwiki - トップページ

各メーカーの最安サーバを比較検討してみた - GIGAZINE

server

バックエンドアーキテクチャーのおかげで、2テラバイトの画像を、$1000のLinuxサーバー1台で賄うことができる。だから、年間わずか20万ドル程度の設備投資で、現在サーバー500台を保有している。

ドメイン登録 - VALUE DOMAIN:バリュードメイン

Whois

Domain Names, Web Hosting and SSL Certificates - Go Daddy

サイトチェック - ドメインチェック

有名なウェブサイトの文字コード一覧

JPIXNAGOYA

Amazon S3をWindowsにマウントできるJungle Disk Kawanet Tech Blog/ウェブリブログ

Online storage and backup | Secure file sharing | Unlimited online storage | Jungle Disk

Alexa Top 500 Global Sites

Amazon.co.jp: 現場が教えるホスティングサービスの勘所―立ち上げから運用管理までのノウハウ (NEサポートシリーズ): 合阪 省: 本

Amazon.co.jp: レンタルサーバをはじめよう!―ホスティングのためのサーバ構築術: 斎藤 高洋: 本

Heroku | Cloud Application Platform

2007-09-29

Web アプリケーションの本質っぽいもの

Web アプリケーションの作り方を教えてくれないか。

いま、自分でちょっとした Web アプリケーションなるものを作り始めたところ。プログラミングは前から趣味でいろいろやってたけれど、大学に入ってからはほとんど数値計算でしか使ってなかったから、とても新鮮な感じがしている。楽しい

ところがちょっとでも規模が大きくなると、とりあえず MySQL が必要になって、 Perl とか Ruby とか PHP とか Python とか ... なスクリプト言語をもっと詳しくしる必要が出てきて、そしてそれ上で動くフレームワークを選んで理解して、さらに HTML とか CSS とかで表示させて、JavaScript リッチユーザインタフェースを... なんて具合に、やらなきゃいけないことが急に増えてしまいます。どうしたらいいんですか?

HTML とか CSS仕事っていうのは、刺身タンポポを乗せる仕事なんですか?勉強するだけ無駄ですか?でもこの知識がなかったらみっともないデザインなっちゃいますよね。

フレームワークに頼って MySQL を学ばないなんて邪道ですか? Rails を信用しちゃだめですか? Django はどうですか?さすがにマシン語で書け、なんて言いませんよね。

それにセキュリティの知識も必要ですよね。SQL インジェクションとか、XSS とか CSRF とか、聞いたことあるけど意味なんて知りません。こういうのをちゃんとしてないと、悪用されたりしちゃいます?

C10K とか I17N とか L10n とか、もう許してください。

ここで書いたようなことが全部できないと、Web アプリケーションを作ることができないのでしょうか。

もしそうでないのなら、どの知識が必須で、どの知識は必須ではないのですか?

Web アプリケーションの本質ってなんですか?

っていうのを疑問に思ったけれど、そういう技術の寄せ集めでできているってところが Web アプリケーションの本質なんだろうなぁ。たぶん。

2007-09-09

[]Ruby Python の比較

文字列 'Hello world' の o の合計数は2、全文字数は11

Ruby vs. Python

Python:

string = 'Hello world'

print string.count('o'), len(string)    # prints 2, 11        why not string.len()?

Ruby:

string = 'Hello world'

puts string.count('o'), string.length    # prints 2, 11


2007-09-19 - 偏った言語信者の垂れ流し

2007-09-28 - プログラミング日記

jijixi's diary - Ruby に比べて Python の面倒なところ

激しく同意 - 日記を書く[・ _ゝ・]はやみずさん

Django勉強会始まったよ|| Woops'dez | Bloggin'

バベル案内

Pythonはグローバルスコープローカル(関数)スコープ以外のスコープを何も持っていない。

だからPythonには「本物の」OOシステムがあるのだとしても、クラスは自分のインスタンス変数にさえアクセスできない。

あらゆるインスタンスメソッドに対し"self"パラメタを渡す必要があり、そうやってインスタンスデータにself経由でアクセスするのだ。

だからPythonの中のものはすべて、self、selfself、selfselfself、selfSELFselfSELF__SELF__であり、

たとえあなたがホワイトスペースの問題を気にかけないとしても、これはあなたの頭をおかしくするだろう。

ログイン ユーザー登録
ようこそ ゲスト さん