IWDD#28でしゃべってきた 〜続き〜

他の人の感想等を帰ってからといいつつ、1週間が経過。
お前、1週間も家帰ってねー訳ねーだろJK、というツッコミがありそうなので、何とか書ききってみることにします。

Apache.htaccess(すずりょさん)

 実はこの前日、htaccessのRewriteRuleと格闘していまして。
 単純に、特定のアドレス以下にアクセスがあった場合に移転先にリダイレクトするだけの話しなのですが、
 RewriteEngine を使用するのが実は初めてだったりで、
 そう考えるとネットに情報転がってるのは便利だよなぁ、と感じていた次第。
 
 ですんで、htaccessの話には再確認の意味合いが私は非常に強かったと思ったのですが、
 Apache2.2系の紹介で、いろいろと目を見張るものがありました。
 2.0系と2.2系の違いとかあまり意識したことは無かったので、
 これを使えるんであれば
 「root権限じゃないとサーバー管理したくない」
 と言ったすずりょさんの言い分もよくわかるのであります。

 ぶっちゃけhttpd.confいじれるんだったら手っ取り早い話しなんて一杯あるわけでねー。

レンタルサーバーの「あるある」(shidhoさん)

 まず恋の空騒ぎメソッドがウケた!超ウケた!
 これはいい!早速どっかでパクるんでzipで下さい。
 内容的にはレンタルサーバー懐古主義が面白くて、
 俺、大学生のときはダイヤルQ2のアクセスポイントに繋いでましたとか
 diabloが面白すぎて、月10万の請求が来て卒倒したりとか
 plalaのツリー式掲示板で悪ふざけして、メチャメチャ怒られたりとか
 上記の話は何一つミーティングでは話して無かったですけど、
 懐かしい話で盛り上がっているあたりがもうオッサンなのであります。
 そりゃ今の若い世代はInterQとかベッコアメとか知らないよなー、と自分の年齢を痛感した一こまでした。

 演者が、どうしてこのアンケートでこれだけ内容がバラバラになるんだろう、
 よくこのコミュニティ今まで壊れないで運営できてたなぁ、と言ってましたが、
 確かにバラバラでした。びっくりするほど。

自社サーバーの「あるある」(俺)

 これは前の書きこみ参照ということで

懇親会

 すずりょさん:「rootを自分が持ってはいないサーバは管理したくない」
 俺:「自分が食べることに集中できないから鍋rootは欲しくない」

 いやぁ、鍋奉行がいると本当に助かります。はい。
 自分、基本的に最後まで食ってますんで。
 

IWDD#28でしゃべってきた


ということで、11月8日はIWDD#28でした。
サーバーに関するお題祭りということで、自社サーバー等を構築した経験から、
みんなに「どういう部分」を「どのように」伝えていくかなぁ・・・と思案した結果
こんな感じになったのであります。

「やる夫が自社サーバーを構築するようです」

            / ̄ ̄\
          /   _ノ  \
          |    ( ●)(●)  おい、やる夫
          |     (__人__)  グループウェアを導入することにしたから、社内にサーバー立ててくれ・・・
             |     ` ⌒´ノ  おい、聞いてんのか?   
              |         }       
              ヽ        }
            ヽ、.,__ __ノ
   _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、
  /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_
 丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、
. i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::!
          やらない夫社長

        ____ 
        /     \     
     /   ⌒  ⌒ \     深田恭子のドロンジョ様、かなりエロイお 
   /    (●)  (●) \ 
    |   、“ ゙)(__人__)” .)|    ___________ 
   \      。` ⌒゚:j´ ,/ j゙~~| | |             | 
__/          \  |__| | |             | 
| | /   ,              \n||  | |             | 
| | /   /         r.  ( こ) | |             | 
| | | ⌒ ーnnn        |\ (⊆ソ .|_|___________| 
 ̄ \__、(“二) ̄ ̄ ̄ ̄ ̄l二二l二二  _|_|__|_
   社内情シス担当(社内ニート) やる夫

      / ̄ ̄\   
    /ノ( _ノ  \
    | ⌒(( ●)(●)    ・・・・・・人の話聞けやボケ!
    .|     (__人__) /⌒l
     |     ` ⌒´ノ |`'''|
    / ⌒ヽ     }  |  |              
   /  へ  \   }__/ /             / ̄ ̄\
 / / |      ノ   ノ           / ●)) ((●\', ・ ぐぇあ
( _ ノ    |      \´       _    (   (_人_)'∴ ),  '
       |       \_,, -‐ ''"   ̄ ゙̄''―---└'´ ̄`ヽ   て
       .|                  ______ ノ    (
       ヽ           _,, -‐ ''"  ノ       ヽ   r'" ̄
         \       , '´        し/..     | J
          \     (           /      |
            \    \         し-  '^`-J

こんな感じで始まって

・回線周りの考察
・ハードウェアの選定と構成
・セキュリティ
・基本的なサーバー構成図
を懇々と話す様にしました。

僕の中での目標設定は、
・お客さんのところに行ってネットワーク周りをチラ見したら粗方構成が見えてくる
・自社サーバー(または自宅サーバー)をどのように構成したらいいかイメージがつく
なんていうようなところでしたでしょうか。

ALL「やる夫」の構成だけだとどうしてもネタオンリーっぽくなるので、
ポイントはいくつか活字のみで自分の言葉で説明していくメソッドを採用。
アンケートにも書かれていて、狙い通りになってくれたなぁ、と思ったところは
・やる夫メソッドはわかりやすい
ということですね。

今後もちょくちょく使ってみようと思います。
※じっさいのやる夫じゃなくても、やる夫に相当する「いじられ役」がいた上で話を進めていくというメソッドも効果的だと思います。

また今回のお題は、もともと
「自社サーバーのあるある」だったので、あるあるネタをいくつか最後にちりばめてみました。

以下あるあるネタの一部抜粋

            / ̄ ̄\
          /   _ノ  \
          |    ( ●)(●)  おい、やる夫。なんか、WEBサーバーのディスク、パンパンだぞ。
          |     (__人__)  原因を調べろ。
             |     ` ⌒´ノ  
              |         }   
              ヽ        }   
            ヽ、.,__ __ノ
   _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、
  /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_
 丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、
. i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::!

       ____
    /      \
   /  ─    ─\
 /    (●) (●) \   かしこまりだお。
 |       (__人__)    |   
 \     ` ⌒´   /      
,,.....イ.ヽヽ、___ ーーノ゙-、.
:   |  '; \_____ ノ.| ヽ i
    |  \/゙(__)\,|  i |
    >   ヽ. ハ  |   ||


     ____
   /      \ ( ;;;;(
  /  _ノ  ヽ__\) ;;;;)
/    (─)  (─ /;;/
|       (__人__) l;;,´ <誰かエロ動画アップしているお・・・。
/      ∩ ノ)━・'/
(  \ / _ノ´.|  |
.\  "  /__|  |
  \ /___ /


         ____
       /   u \
      /  \    /\    なんかこのディレクトリ見たことないお・・・?
    /  し (>)  (<) \  あれ?本当にエロ動画たくさんあるお・・・
    | ∪    (__人__)  J |  ________もしかして・・・
     \  u   `⌒´   / | |          |
    ノ           \ | |          | 
  /´                | |          |
 |    l             | |          |


         ____
       /   u \
      /  \    ─\    チラッ
    /  し (>)  (●) \
    | ∪    (__人__)  J |  ________
     \  u   `⌒´   / | |          |
    ノ           \ | |          | 
  /´                | |          | 
 |    l             | |          |


           ____
       /::::::::::::::::\
      /::::::─三三─\
    /:::::::: ( ○)三(○)\   ftpdの設定でanonymousFTP許可してるお!
    |::::::::::::::::::::(__人__)::::  |  ________
     \:::::::::   |r┬-|   ,/ .| |          |
    ノ::::::::::::  `ー'´   \ | |          |  
  /:::::::::::::::::::::             | |          |  
 |::::::::::::::::: l               | |          |


ねーよwww


自分以外の感想は、家に帰ってから。

仕事の量で属性が変わることに気づいた

直接工数の仕事ががんがん立て込んでくるとperlphpの人になります。
仕事が少ないとサーバーとネットワークの人になります。

今、サーバーとネットワークの人なので、仕事がちょっと暇になったという事を実感していたのでした。

ASとJSの人になるタイミングはいつになるんだろう。
そんな仕事が来ないとなれないという受動的な気持ちだけは捨てて頑張ろう。

いかん、Actionscriptのお勉強が進まない

最近通常業務以外でテストしてみた様々な事

 -Eclipsephpの開発環境を再構築する

  • FancyZoom.jsを突っ込んでみて動作を試してみた
  • thickbox.jsと戯れる
  • Fancyzoom.jsとreflect.jsの共存の道を探る
  • FireFox3入れてみた
  • ロッテリア絶品チーズバーガーのテスト
  • 泥臭いPerlのプログラムを無駄にブラッシュアップ

やべー、ASの勉強ほとんどしてねー。

パススルークエリとPostgres

Accessで500フィールドオーバーのテーブルを扱えと・・・

 そもそも、DB設計が破綻しているのでは?という突っ込みもあるかもしれませんが、
 DB設計したのは他社だからね!(という言い訳はさておいて)
 Postgresで構築されたこのDB、とにかくフィールドが多い!
 正規化しろよ!と叫びたくもなるのですが、
 その500オーバーの項目の400個目ぐらいのフィールドをAccessに取り込んでごにょごにょしなければいけないらしい。
 
 Accessの通常のクエリやテーブルのビューでは255項目が限界値。
 これだと、Accessにリンクテーブルを切っても項目の取得すら出来ませーん。
 はて、困った。

パススルークエリを使ってほしい項目だけ持ってくればいいのかー

 そこで、Pro*Cを書いていた数年前にたまに使っていたパススルークエリを思い出した。
 VBASQL記法で無くて、OracleSQL記法でODBC経由で直接DBに問合せができる便利なクエリがあったなぁ。
 というのを思い出して、パススルークエリを開いて生SQL打って動作確認してみたらすんなり項目取得完了。
 ということで、パススルークエリサマサマなわけであります。

DBの正規化テクニックはやはり必要だと思われ

 その昔、項目が900個を越えるテーブルを目の当たりにして、眩暈がしたのを覚えています。
 正直なところよっぽど大規模なシステムを構築しない限りはこのようなDBにお目にかかる事はないかと思いますが
 やはりDBに対する知識はあって損は無いなぁ、と思った今日この頃でした。

IWDD#23に出てきました


 IWDD#23に参加してきました。
 直前の地震の影響で、仙台・福島方面からの参加の方々は軒並み参加できなくなってしまったわけですが、
 次回以降是非お待ちしております。
 冷麺もぴょんぴょん舎だけじゃないですし(ぐへへ)。
 以下、つらつらと感想・雑感をば。

『VisualStudioでJavaScriptデバッグをしてみる』(中島浩司さん)

 JavaScriptデバッグのやり方を探していた中でのこのVisualStudioの紹介には軽い衝撃を覚えました。
 やるじゃない!MS!
 VB書きとすれば、VBのライン実行のIFでJavascriptのライン実行が出来る事に感動。
 そして、VBの入力補完のIF(実はVBではあまり使ってないのですが)でJavaScriptの入力補助が効くというのも感動。
 

 var index = "aaa";
  var index = 1;

 で、入力補助で出てくる内容が自動的に切り替わるのも感動。
 VSって2005までしか触ってなかったのですが、早速ダウンロードしていろいろ触ってみる事にします。
 
 あと「新規ファイルの作成」の部分で様々なファイルのスケルトンが存在するのですが、
 Ajax周りのファイルの充実っぷりは見ものでした。
 次回以降でAjax周りの進展があれば是非ネタとして発表する方向で。

オープンUI設計をしてみる WDHA(Web Designers & Developers Hub Aomori)神修司さん・古川勝也さん

 青森のWEB制作者コミュニティ、WDHAから初参加のお二人です。
 タバコ吸いながらお話を伺うと、なにやら似たような業務経歴を持つお二人。
 WEBとは関係ない業務システム周りのお話で盛り上がりました。
 俗人的な技術ノウハウと判断は思ったより当てにならないという感じ。
 広く外を見なければいけません。
 それはさておき、発表ネタのお話。


 神修司さんからは様々なUIから視点の移動を重視したUIの分析。
 すげー、数学的な記述方が気に入りました。自分文系(経済学部)ですが・・・。
 新聞のUIの分析や、サイトのUIの分析が実例付きで展開されてめちゃめちゃわかりやすかったです。
 (googledocsにがんがんメモってました)
 あと、サンプルが酷すぎて、笑っていいのかまずいのか、
 エアーリーディング能力が非常に要求されるサンプルであった事は間違いありません。
 自分は横向いて、笑いを押し殺すのに必死でした。


 続いて古川勝也さんのバブルマップを用いたTodo管理のお話。
 これが非常に盛り上がりました。
 WEBとは直接関係ないかもしれませんが、ライフハックネタってWEBにはたくさん転がっていますが、
 実際にオフラインで外部の方々と話す機会ってすげー少ないと思うんですよね。
 東京だったらそういった集まりは数多いかもしれませんが、
 地方となると、こういった機会を無理やりにでも作らないと議論できない。


 id:sasahiraさんも言ってましたが、これはその人の仕事のスタイルにより
 最適な方法があるはずだという事をおっしゃってましたが、
 その通りだと思いますし、人の仕事術というのは参考になるポイントが多いと思います。
 Morioka-LHなんて作って分科会にしてノウハウを貯めていくのも楽しいかも。
 若い人の参加って、Webの知識に関してもそうですが、こういった仕事術をオフラインで議論できる場所があったら、
 更に来るきっかけになるんじゃないのかなぁ、と思いました。


 その後のタバコタイムで古川さんと、こういう話題超楽しいですよね、という事になり、
 いずれWDHAでもこういうネタがあったらはせ参じてみようと思います。

サイトリニューアルのワークショップ 笹平拓さん

 KJ法sasahiraさんの報告で初めて
 KJ法という手法がある事を知りました)による
 IWDDサイトのリニューアルのワークショップでした。


 アイディアを短時間で1000本ノックのように搾り出してから2チームに分けて、整理とワイヤーフレームの作成という進行。
 個人的にはメンバーの考えや論点をIWDDの公式サイトにトラックバックという手法じゃ無くて掲載させたいなぁ、
 という思いがあり
 メンバーの外部ブログのフィードを自動取得してアンテナ形式で一覧表示する仕組みが
 あってもいいんじゃないか、という考えから
 その部分をプッシュしつつ(同じ観点での意見が数件合ったのできっと斜め上に入ってないはず)
 若い方々をこの動きに巻き込むにはどうしたいいかなぁ、というところから

 
 ・IWDDというブランドをもっと高めるためにはどうしたらいいか?
  ↓
 ・有益な情報がたくさんあれば自然と人は集まるよね?
 
 という考えの下、アイディアを出しました。
 
 こういう手法も基本的に会社組織に属していると、なかなか出来る機会が少ないので
 (営業の方でこういったものを求めていない場合が多い。だから後々顧客ともめるんだけど。)
 若い人もどんどん来て実践してみるといいよ!

その後の懇親会で壊れました

 懐かしい方との久々の対面もありつつ、生々しい夫婦生活をカミングアウトしてみたり
 (べ、別に、の、のろけては無いけど仲いいんだからねっ!) 
 EUROをほとんど見て無いのをプギャーされたり
 (オランダvsフランス見逃しはここ1年で一番プギャーな出来事かも。スナイデル・・・。)
 挙句の果てに飲みすぎて早期離脱した挙句、ハイパーリバースタイム発動で翌日、
 ほとんどヨメが口利いてくれなかったりボロボロでしたが、たまにはこういう飲みもいいよね!

 ということで次回も有益なネタを勉強しつつ(発表できるかしら、ネタはいまのところ無い)
 id:sasahiraさん・こうらさんあたりとサッカー話でもしながら酒飲みたいと思いますのでよろしくお願いします。

ActionScript入門編 その2

 昨日、仕事帰りに東山堂寄ったら、AS3の逆引きのリファレンスがあったので買おうと思ったのですが、
 3500円とかぬかして(財布の中には2000円)ファックファック。
 こういうモチベーションはid:happy_ryoを見ればわかる通り勢いが重要だよね!
 
 で、モチベーションは不思議と落ちないまま、時間が空いたので、ActionScriptを順を追って「俺が」理解していくよ!

 http://kozy.heteml.jp/pukiwiki/index.php?ActionScript3.0%20%A5%C6%A5%AD%A5%B9%A5%C8%BD%E8%CD%FD
 上記を参考にテキストボックスのプロパティを変更してみる。

package {
  import flash.display.*;
  import flash.text.*;
  public class test extends Sprite {
    public function test() {
      
      var textField:TextField = new TextField();
      var format:TextFormat = new TextFormat();
      format.size = 24; 
      format.color = 0x000000; 
      format.font = "MS UI Gothic"; 
      textField.defaultTextFormat = format;
      textField.autoSize=TextFieldAutoSize.LEFT;
      textField.text="こんにちは!こんにちは!";
      addChild(textField);
    }
  }
}

おお、TextFieldクラスとTextFormatクラスが分離しているのね。
VBやらVBAやらを書いている人にはうれしいですな。
TextFormatのテンプレをいくつかためておいて、細かい変更はクラスの最初でoverrideすればいいという思想か。

とりあえず、TextFormatクラスの細かいプロパティは無視して、入力可能なテキストエリアを作ってみるとしますか

追記

 こうしてみた

package {
  import flash.display.*;
  import flash.text.*;

  public class test extends Sprite {
    public function test() {
      
      var textField:TextField = new TextField();
      var format:TextFormat = new TextFormat();

      //TextFieldのFormatを定義するよ
      format.size = 12;                      // 文字サイズ...12px
      format.color = 0xFF0000;               // 文字色...赤
      format.font = "MS UI Gothic";          // 文字フォント...MS UI Gothic
      
      textField.defaultTextFormat = format;
      textField.autoSize=TextFieldAutoSize.LEFT;
      textField.x=30;
      textField.y=30;
      textField.border=true;
      textField.borderColor=0x000000;
      textField.text="こんにちは!こんにちは!";

      addChild(textField);
    }
  }
}

 入力フォーム等の定型的なテキストボックスを作る場合は、TextFieldをextendして予めformat関係を定義しておけばいいんだな。
 テキストエディタのみだと、各オブジェクトの座標の設定だけが面倒くさいな。

 昔、某市の財務システム(java)のswingの悪夢が思い出される。