2008-07-01から1ヶ月間の記事一覧

Software Development Life Cycle (SDLC) - 1

Summary: As in any other engineering discipline, software engineering also has some structured models for software development. This document will provide you with a generic overview about different software development methodologies adopt…

ソフトウェアエンジニアについての考え

良いエンジニアはDesign Pattern、Code Reuse、UnitTestに詳しい、Simpleに対しても宗教的に 熱心しています。さらに下記の10個の知識ポイントをマスタしないといけない、これらは プログラミング言語・Design Patternを超え、ソフトウェアエンジニアとして…

iPhone/Touch ディスク容量不足を解決しよう

ipod touch FW 2.2で確認済みです。iPod touchの記憶媒体(フラッシュメモリ)は、2つに区切られています。 ssh(root/alpine)でログインし、dfコマンドで知ることができます。 # df -h Filesystem Size Used Avail Use% Mounted on /dev/disk0s1 300M 272M 2…

XMLモジュールまとめ

Python標準: xml.dom 標準DOM規格を採用(JAVASCRIPTがDOMをアクセスするのもこれを使用している)、 ドキュメント全体に対して自由に解析&修正に適してる。DOM Level 2もサポート。 xml.dom.minidom コンパクトに実現、より小さい、DOM Level 1をサポート…

SPAM対策:WEB上メールアドレスの隠蔽

WEB

迷惑メールを避けられる同時に、連絡を取れるようにWEB上メールアドレスを残すのは簡単ではありません。 SPAMMERは自動スキャンプログラム(SPAM SPIDERS)を使ってメールアドレスを探しています。 よく[abc at test dot com」や「abc(at)test(.)com」等の方…

HTML_AJAXによるAJAXの実践(3)ーー同期と非同期の実感

簡単に言ってしまえば、同期処理は順序処理で、 ユーザは一つのタスクが終わる前に待つしかないです。 非同期処理はマルチ処理で、ユーザは一つの処理を開始した後、 別の処理も行えます。 この違いでAJAXのメリットを実感できると思います。下記、HTML_AJAX…

True&False判定の誤り

PHP

よくコーディングでBoolean値の判定を行うが、潜在的なバグはここにある! 下記表を拾ってきました。 値if($var)issetemptyis_null $var=1TRUETRUEFALSEFALSE $var="";FALSETRUETRUEFALSE $var="0";FALSETRUETRUEFALSE $var=0;FALSETRUETRUEFALSE $var=NULL;…

HTML_AJAXによるAJAXの実践(2)ーーappendによる画面表示追加変更

画面作成: <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script type="text/Javascript" src="server.php?client=all" ></script> </head> <body> <form method="post"> </form></body></html>

HTML_AJAXによるAJAXの実践(1)ーーreplaceによる画面表示変更

HTML_AJAXはPHPでAJAXを利用するためのパッケージで、 PEARライブラリを通じてインストール可能です。2008年7月11日現在でのバージョンは0.5.6(beta版)を使っています。 root@st-desktop1:/home/WWW/HTML_AJAX/ajax# pear list Installed packages, channel …

timeモジュールにより実行時間測定

import sys import time n = 0 t = time.clock() final_time = 0 while True: ts = time.clock() # ループ&画面出力処理の時間を測定する for i in xrange(20000): n += 1 sys.stdout.write("\ri: " + str(i) + " pi: " + str(n)) final_time = time.clock(…

Facebook: Thrift vs Google: Protocol Buffers

最近Googleが公開したProtocol Buffersと似てて一年前FacebookがThriftを公開した。 噂だけど、Google内部で先にProtocol Buffersが流行って、その後Facebookに転職した人がいて、 それでThriftが誕生したという。 ここであくまで個人的見た感想を述べてみよ…

次世代IDL−Protocol Buffers

Googleは,自社で開発したツール「Protocol Buffers」をオープンソース・ソフトウエアとして 公開した。さまざまな構造化データをネットワーク上でやりとりするために社内で使用していた もので,ほぼすべてのフォーマットをエンコードできるとしている。 Pr…

Protocol Buffers:Googleのデータ・インターフェース・フォーマット「日本語訳」

原文:http://google-opensource.blogspot.com/2008/07/protocol-buffers-googles-data.html 翻訳:Jia Lu Googleでは我々のタスクは全世界のインフォメーションを集めること。 我々は千・万種類を超えるデータフォーマットでサーバ間のネットワーク情報を記…

JSで遊ぼう

ブラウザのアドレス入力欄に普通URLを入力し、サイトにアクセスしますが、そこにjavascriptのコードを入力すると直接実行してくれます。 今回はこの機能を使ってひとつ遊んでみようっwまずGOOGLEにアクセスします:http://www.google.co.jp/ つぎにアドレス…

はてなTシャツ欲しい!id:JiaLuと着たい!

はてなTシャツ欲しい!id:JiaLuと着たい! はてなのキャンペーンはどうなんでしょう。 試してみるかw

Dive Into Prototype.js(2)--Stringオブジェクト

blank( ) 文字列は空かスペースだけかをチェックし、True/Falseで返す。 >>> var str = "a"; >>> str.blank(); false >>> str=" "; " " >>> str.blank(); true camelize( ) ハイフンで繋いだ文字列をCamel形式に変換する。 (Prototype内部でこのメソッドを…

Dive Into Prototype.js(1)--$系変数

$( ) DOMのdocument.getElementById()関数のショートカットです。 DOMより進化しています。メソッドが拡張されました。 (ELEMENTオブジェクトのリファレンスを参照) <html> <head> <script src="prototype-1.6.0.2.js" type="text/javascript"> </script> <script type="text/javascript"> function test$(){ var div = $('target'); alert(div.innerHTML); …</head></html>

Ajax関連リンク(随時更新)

Ajax Rain (English) 大量サンプルをダウンロード可能 http://www.ajaxrain.com/Prototype.jsの使い方 APIドキュメント http://www.imgsrc.co.jp/~kuriyama/prototype/prototype.js.html

HTTPプロトコル再考

WEB

=== HTTPによるデータの受け渡し形式 === HTTPでは,基本的に,以下のような形式でデータの引渡しを行います. ヘッダ部 区切り(空の行) データ部 データは, ・データの内容に関する情報や制御情報を記述したヘッダ部 ・データ本体があるデータ部 に…

bashの機能を制限するには

Linux(bash)の操作に詳しくない人や部外者などにアプリケーションの操作を依頼する場合などは、シェルの機能を制限しておくと安心だ。 bashの起動時に-rオプションを指定すると、bashの機能が制限された状態になる。$ bash -r この状態では、以下のような…

特定のコマンドしか実行できないユーザーIDを作成するには

bashの機能を制限するにはで紹介した方法は、Linuxのことをあまり知らないユーザーには有効だが、実行できるコマンドが多いし、exitコマンドで制限モードを終了することもできる。そこで、特定のコマンドしか実行できない専用のユーザーIDを作成する方法を説…