« プログラミング メイン プログラミング »

プログラミング アーカイブ

2006年12月12日

 プログラミングのカテゴリを追加しました。

 プログラミングのカテゴリを追加しました。
 ここでは本職ながら全くど下手なプログラミングについての備忘録として日記等を公開予定です。

2006年12月16日

フォトリーダー/ブログの画像をサムネールできるアァン素敵なツール様!

onnnaburakakushite.jpg
 こんばんは、会社でブログをいじる時に一番ドキドキするのはデザインを調整して表示確認をする時のあさたなです。何この気持ち…こんなの初めて…胸が熱くて苦しくて手に汗かいて背後がすげぇ気になって表示されたら一瞬で画面を文字だけのところにスクロールする準備してしかもウインドウを背後に隠すための画面も準備してあああ何だよFireFoxがなんか動き遅いよこれじゃ最小化に反応しないで画面が固まってしまうよ動け動けよXP!!って感じ…アタシ、病気なのかな?(えぇしかも社会不適応者の)


 というのはさておいて、今日もちょーっとだけ会社の休み時間にブログをいじっていたら『そうだカレンダーが欲しい!!カレンダーをつけよう!!そうだそうしよう!!そしたらアマゾンでの買い物の到着日が待ち遠しくなってああ早く来てくださいよ家電を頼んだら早く来てくれないと生活がまわりませんよあ絶望先生の新刊だ〜わーい』みたいな感じで素敵なブログのカレンダーの作り方を探していたところ、すげぇ素敵なカレンダーに出会うと同時にもっとストロング素敵なツールが見つかったのでご紹介させていただきます。

Kinarie&May 様ブログ用フォトリーダー2.10

 最初見た時点ですっごくドッキンコして、さっそく休憩時間など後回しにして実装!!っていうかちょっとだけ休憩時間をはみ出したんですけどちょっとそれは10分ほどとしてお許しいただくとして、Kinarie&May様のサイトでは実装手順も超簡単にビューティフルに説明してくださっていたので何にもつまずかず楽勝で設置できました!!凄い!!と思いました。
 っていうかその時点ではまだ私のブログでは画像は1つしかなかったのでちょっと寂しいと思いました(今日のこの投稿でディゾルブが見れる予定)っていうか、注意点として『画像はjpgでないといけない』というのがありますので、gif画像の時は残念ながらスキップされますね。この辺は出力をjpgにする…というかまぁ飛ばされてもいいと思いますので私的には凄くオッケーです。


 こういうの作れる方というのは本当に尊敬と言うか、率直に言うと『あぁ、こういう方がいらっしゃるから、私みたいなド素人でも楽しくネットやブログができます。感謝して生きていく所存!』と思うのでした。フラッシュにアクションスクリプトにhtmlにxmlその上にMovableTypeやレンタルブログの知識が必要だとキタァッ!!拙者には若干無理ィッ!!
 私もそのうち自作できればいいなぁと常日頃思ってはおりますが、Kinarie&May様ほどに勉強して身につけてエンドユーザーの要求をガバチョと鷲掴みする提案センスがないといけません。うん、わたしもがんばっていこう。でもちょっとだけ、好き勝手しよう(←先行き不安だ)


 とか描いてて今日の日記がすごく普通でアタシ自信びっくり!!でもたまにはこういう日もいいのかなとおもいました。ぼくはあさたながよくわからないなあとおもいました。ぼくならばしょうらいはりっぱなおとなになろうとおもいました。フゴゴッ!!


 っていうかパンツ絵の時点でいつも通りでえろうすんません(迷惑日記だよ全く)

2007年01月12日

非オブジェクト指向から抜けれないヘタレ私はそろそろ不要

hsptry20070111.jpg
 こんばんは、プログラマ支援お手伝い候補のあさたなです。ぼくのおしごとはぐたいてきにはほかのしゃいんさんのよいしょをすることです。それはとてもかわいそうだなぁとおもいました。ぼくもしょうらいはがんばろうとおもいました。をわり。フゴっ!!終わってどないすんねん!!もうかりまっか!!右往左往でんな!!(どんな感じ)


 実は前々から頭の中で、格闘ゲームとか作れたら素敵!!とか思ってましたが、この上の数行でお分かりになる通り、私はプログラムが書けない人間でして、あ、でもジョブは書類上プログラマで技術開発部所属なんですけど、そういうわけで、『12歳からはじめるHSP3.0ゲームプログラミング教室』という本をプライドを一切捨ててお買い上げぇっ!!

 日本語も言語の説明も易しく書いてあるよ!!(ボリュームはその分減るので13歳以上は注意!)
 ってかですねてかですね、アタシ今までグラフィカルなインターフェースを持ったプログラムに触れた事がないので、具体的に言うとUnixでコマンドラインでC言語やらシェルやらでバッチ処理専門野郎なので、『画像を読み込むにはどうするの!?この関数の引数ってなんでこんなに多いの!?描画をクリアするにはどうすればいいの!?助けてボクの織田裕二ィッ!!』って大混乱です。今人生経験値は12歳未満です。アタシに触ったら条例違反で社会的制裁を受けるんだから!!メッ!!(お脳は老年期ですな)
 というわけで、世の中で最も敷居が低いゲームプログラミング向け言語の『HSP3.0』でぽりぽり勉強中です。画像を準備するのは大変なのでとりあえずのもので、上段、下段、中段の攻撃を、カーソル押下で出せるようにしてみました。ソースにしたら70行程度ですけどすげぇ時間がかかりました。コミケですっごいたくさんの人がゲームを作られてましたけど、こんなに世の中にプログラマがいるんだったらアタシなんかいなくてもうちの会社には新しい人が入ってくるヨネ私はもうBookOFFのバイトの面接を受けに行ってもいいかい?(前向きなんだか何なんだか)


 というわけでたまにプログラムを勉強していこうと思いました。
 C言語と比べると、文法が非常に簡素化されすぎて曖昧でぎこちない気がします。嘘!!拙者は何の言語も使えないので比較などできましぇん!!っていうか英語も話せないヨ!!むしろ日本語すら出来ないヨ!!猫語も話せなくて飼い猫に逃げられるヨ!!っていうかお店では言語は必要ないもんネ!!(社会の底辺を一人で支えてますな)


 唯一できるのはせっちゅ語だけだったりしゅるしょうでしゅあしゃたなしゃん(家に帰る途中は脳内せっちゅ語勉強大会だもんね)

2007年03月14日

私のサーバからアナタのサーバへ無理矢理scpなのかぁーっ!?

hansei20070315.jpg
 こんばんは、『ウチの社員には即金で家を買えるくらいになって欲しい!』という上司の言葉をかみしめながらレタスご飯をかみしめているあさたなです。どどぉーん!!解説しよう!!レタスご飯とは!!少しゆでたレタスをおかずに!!ご飯をおいしく頂く戦略なのだ!!墨子もビックリだね!!(お脳に栄養が)


 今日も超風邪で、もうへろへろ野郎なのですが、あまりにも日記をサボり過ぎて申し訳ないので、すっかり忘れていた自分の職業に関連して、備忘録として小ネタを残しておこうと思いました。っていうか下手にプログラミングの事を書いてしまうと、億に1つ、ググってヒットしてしまった場合サイトバレの危険性がっ!!…あまり気にしないで行こうと思いました。サイトバレしても幼女と百合姉ぇとビリーズブートキャンプに興味があるって事くらいしかバレないと思われますゆえ!!(致命傷ですよ)


 ってわけで、Linuxのシェルスクリプトにてexpectを使って自動で他のサーバにファイルをscpでコピ−しちゃう技〜。これはあくまでも『信頼できるサーバ同士で行う事を前提とした、セキュリティなんて後回し〜』の場合です。要注意です!!SEの人に怒られちゃうからネ!!

#!/bin/sh

HOST="192.168.0.xxx"
#scpでファイルをコピーしたい送り先のサーバIPアドレスだヨ!

USER="hurry"
#送り先サーバにsshでログインするためのアカウントだヨ!

PASS="s&w"
#sshでのパスワードなんダ!

TARGET="./eastwood"
#sshログインのホームディレクトリから、コピー先のディレクトリの指定だヨ!

#ここから下がexpectによる自動対話処理なんダ!
expect -c "
log_file magnum.log
set timeout 60
spawn scp *.txt $USER@$HOST:$TARGET
set timeout 30
expect ¥"password:¥"
send ¥"$PASS¥n¥"
set timeout 300
sleep 1
expect ¥"denied¥" { exit 1 } ¥
¥"100%¥" { exit 0 }
expect -re ¥"*¥"
sleep 1
"
#ここまでが自動対話処理だけどダブルクォートを忘れちゃだめだゾ!

#exitされた返り値を判定すればいいんダ!
if [ $? -eq 0 ]
then
echo "done"
else
echo "fail"
fi

 なんかスゲェふざけた感じですみませんが、やってる事は大層低レベルで申し訳ございません。っていうか、アタシ超低級プログラマ霊ですので、この程度なんですな。ホントにセキュリティ無視で、汎用性無視で、とりあえずすぐさまscpを自動化してぇっ!!ってアタシみたいな方にのみ使えるかも〜?という自信のないものでした。
 LinuxをCUIで操作する時のものですね。上記のソースを適当にテキストファイルとして保存して、パーミッションを700とかにしてsudoすればいいかも?簡単に説明しますと…。

expect -c : オプションに-cを使い、ダブルクォートでくくった複数行を自動対話処理とします。
logfile : この後に指定するファイル名で、クライアントサーバのカレントディレクトリにscpのログファイルを作成します。常に追加書き込みです。ログと言ってもscpの実行の標準出力を丸まる書き出しているだけです。
set timeout : この後に指定する秒数の分だけ、反応を待ちます。60を指定したら、60秒以上反応がない時に自動でexpectを終了します。正常に処理される場合はタイムアウトを考えなくていいでしょう。
spawn : この後に記述するコマンドを叩く、という感じでしょうか?上記の例では、カレントディレクトリのテキストファイルを全てscpを実行しています。$HOSTなどは普通にシェル変数ですので、スクリプトの最初に代入した値が入ります。もちろん変数に入れなくても、ベタ書きでも大丈夫です。
expect : 『こういうフレーズが聞かれたら?』という条件を指定します。ただし、ダブルクォートでくくる必要があります。しかし、『expect -c』で既にダブルクォートでくくられているので、さらにバックスラッシュでエスケープしてあげます。つまり『expect ¥"password:¥"』というのは、scpを実行してパスワードを聞かれた場合…という意味です。『P』が大文字かもしれませんので、どういう問いかけがくるか、事前に調べるといいでしょう。
expect -re : 順序が前後しますが、これはexpectされるフレーズに正規表現、ワイルドカードが使えるようになります。上記のパスワードを例にすると、『expect -re ¥"*assward:¥"』とすれば、Pが大文字でも小文字でも大丈夫、という訳です。
send : この後に来るフレーズを入力します。ただし、『入力確定』という意味で、エンターの意味で『¥n』改行コードを入れます。『send ¥"$PASS¥n¥"』では、パスワードをそのまま入力してエンターを押した事になります。expect行でフレーズがヒットした場合、sendで返事する訳です。
expect ¥"denied¥" { exit 1 } ¥
¥"100%¥" { exit 0 }
 : expectは、簡単な条件判定ができます。このように、バックスラッシュを使って次の行と条件判定の意味を持たす事ができます。ここでは『パーミッションが許可されなかったら1を返却。scp転送が100%だったら0を返却、となります。この条件は2択だけではなく、複数の判定ができます(あまり詳しい事は出来ないようですが)
sleep : この後に来る数字の秒数だけ、ウェイトします。『手作業だったらこのくらい待てばいいかな〜?』という数字を入れればいいでしょう。
あとは、expect -cから抜けて、シェルスクリプトに戻りますが、特殊変数の$?に、exitの値が格納されていますので、$?変数が壊れないうちに(echoとかやっちゃうと$?に0が代入されちゃうので)変数に確保しておきます。あ、ここではそのままifで判定してますね(汗)

 という感じで、scpを自動化できます。さらに自動で動かしたければ、while trueで無限ループして、適当にsleepさせればよいでしょう。度々言いますが、セキュリティを考えるならば、ちょっとお手軽すぎる方法です。でも私はこれで結構恩恵を受けてるので助かります。ホスト側のサーバのsshログインアカウント、パスワードがテキストファイルに記述される事になるので、パーミッションは元より、簡単にアクセスできる場所に置かないようにしましょう。


 ふぅ、かなり嘘っぽいですけど、プログラムのカテゴリとしてネタを追加しておきました。ちなみに自己責任でお願いいたします。
 うーん、でもなんか本当に自分がプログラマのような気がしてきました。入社1年目は段ボール係だったのにネ!!(今はコピー用紙係かい?)

2007年06月09日

仕事片付けたらちゃんと絵日記を描きます〜のつなぎ『iWork/pages編』

sspages20070609.jpg
 こんばんは、会社での仕事は『後輩の荷物持ち』のあさたなです。もちろん『お願いします』とか『すみません』『ありがとうございます』なんて文字列は一切ないんだネ!!(途中で壁を殴りに外出)
 ってかあまりにもプンスカさんになったのでヨドバシに行って瞑想しておりました。ムオッ!!なんてこった、ヘアワックスとか制汗スプレーとかマツキヨよりガッツリ安いではないですかっ!!うん、クレジットではポイントがつかないマツキヨのカードはシュレッダーでガーとしてヨドバシ秋葉に来るべきだね!!(ティッシュとかどうすんのよ)


 としていたのが金曜日。
 土曜の今日も例外なくお仕事でして、1ヶ月に300時間働いてんるだから自宅から歩いて20秒のブックオフで働いたら28500円だから税金と年金が〜とか考えてはいけないと言い聞かせていたのですが、私はお客さんのビルディングに常駐しているので権限により『お客さんがいないのにビルに入ってはいけない』とかありまして、つまりその日曜とか深夜とかお仕事を家に持って帰らないといけないのでした(=業務外扱いとなるダよい子のみんな!)
 ってわけで、家に帰ってひたすら資料ドキュメントレジュメ作成のアタシです。うっ!!やりすぎコージーが始まるまでにひとくぎりつけねば!!


 というわけですが、アタシの自宅はMacさんなんですが、どういうわけか世の中のドキュメントはWordとExcel、中にはpowerpoint(!)で作る事が主流?でして、自宅作業しないといけないなら必須…ってコトは自腹でMac版を買わないといけないのねクスンとか思っていたら、そうそう、Macさんには2年前に新しく出来たiWorkというすばらしいアプリケーションがあるじゃないですか〜!!ヒャッホー!!ってことで購入して速攻でCDドライブを開けて速攻でCD入れて速攻でCDトレイをねじ込んでハアハアこれでどうだ!!何!?インストール作業だと!?こいつめ!!しかもシリアルナンバーだと!?これか!?それともこれか!!紙媒体に印刷されたこの呪文を食らえ!!ごごわぁーっ!!何!?インストールは正常に終了しただと!?ちゃらら〜ん。こうしてあさたなのPowerMacG5にはiworkがインストールされ、森には緑がおいしげ、鳥が巣を作り、世の中には平和が戻ったのです…。人々は取り戻した平和に感謝しその勇者を讃える事でしょう。…しかしいつかはその感謝もなくなるという事もまた、避けられない運命とも知らず…。っていうかなんかいい話で終わらそうとしてませんか!?>私。っていうかこれから仕事するんですよ!?>私。しかもなんか続編っぽい伏線です。フゴゴ。ブログ描いてる場合でもないっていうか!!


 ってわけで、仕事の内容なので完璧にモザイクなのですが、wordとの互換性があるApple製のワープロソフトpagesなんですが、これがまたひっっじょーに最強に素敵なのです!!はっきり言いますと、もう二度とWordなんて使いたくない!!って思ってます。絶対Wordファイルで作れ〜って言われたら『1日待ってください。自宅で作ってきます』ってpagesで作っちゃいます。
 私が10時間くらい使った感想としては…

●いいところ
 デザインテンプレートが半端じゃなくかっこいい。
 自作デザインが簡単にテンプレート化できる。
 遅いと言われても、Wordより軽い。
 画像の配置が非常に楽。
 自動で出るガイドへのスナップが非常に楽かつきれい。
 フォントがきれいで栄える(Macとしてのメリット)
 ページ単位の作成が分かり易い。
 スタイルの適用が1クリックでできる。
×わるいところ
 テキストエリアの作成の仕方が分からない(Word程ではない)
 ツールバーのカスタムがもう少ししたい(もうちょっと細かく)
※これから調査するところ
 テーブル作成(デザインがきれいなのは知ってるので楽しみ)
==個人的にWordが苦手な理由===
 勝手にフォントが変わる(ゴシックになったり明朝になったり)
 作業中、全体がつかみづらい。
 パディング?操作が面倒な上、再編集、再利用が大変すぎる。
 画像配置が手間。
==個人的にExcelが苦手な理由===
 常識では考えられないセルに一瞬で飛ぶ。
 WYSIWYGでない(印刷したら文字がセルを貫通して)
 セルの幅を大きくしたら、ウィンドウのスクロールがセル単位なので『金庫の中の鍵』状態に。
 絶対に削除できないゴミデータが混入する事があって無駄な白紙が大量にプリントされる。
 再現性のある落ち方をする。
 セル内に入れる文字数が限られてる。
 ファイルに独自の色の設定をしても、他の人に渡すと『各自のPCの設定』に準ずるため意味がない。
 っていうかデフォルトの色がどれもひどい。
 行自体とかをコピーして1回ペーストするとクリップボードからなくなる。
 とか言う感じで、実にpagesの使い易さとセンスの良さに感謝して仕事ぽりぽりしてます。
 なんか一言かいて仕事に戻るつもりでしたが、pagesの感想としてちょっとご紹介。Macをお持ちの方(でドキュメントを書く事が多い方)はかなり!おすすめです。
 あとなんでもとりあえず『i』をつけないで、ネーミングセンスがかっこいいのもAppleらしくてしゅき〜ぽっ(MacBookとかはイヤですけど…あとCMもネガティブキャンペーンダイッ嫌いだったりするし…)
 しかもiWorkの中にpagesと一緒に入っているkeynoteについては世の中の評判を聞けば十分だと思いますが、Word以上にpowerpointをアンインストールする事間違いなしの最強プレゼンソフトですね〜。今までpowerpointを使っていた過去の自分が死んで土に還ってしまう程センスいいし使い易いです(←っていうか世の中の人はkeynote目当てでiWork買ってるんですけど)こうなると『Wordより早くかっちょくこれを作れるんだぜ〜社長お給料あげて〜』って感じで見せたくなる=仕事で試してぇ!=仕事するって事になるのでちょっとお待ち。


 あんた自腹切った上でただ働きなんですゼ?(いやそれでも会社にMacを←気が長い)



25:45追記
 なんかテニスの中継でやりすぎコージーはないみたいです。神は死んだ!?
 ひぐらしの音楽を流しながらドキュメント作成をするかねぇプヒー。っていうか仕事がきついんじゃなくて、夏コミの原稿が出来ないのがもどかしいですっ!!(モチベーション上がってるのに!!)

CGI's