「CVS」を含む日記 RSS

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

2016-12-08

奇妙で残酷作業依頼 - フリーランス残酷物語 Advent Calendar 2016 15日目

この記事「フリーランス残酷物語 Advent Calendar 2016」15日目のポエムです。えっ、まだ12月15日じゃない?あぁ、そんな事もあるかもしれないですねぇー。でも気のせいじゃないですかたぶん。

まず前置きですが、mesaka さんの書いた記事萌えましたねぇ。じゃなくて燃えましたねぇ。まぁ、会社バカにされたっていいじゃないですか。社員プログラマーバカにされたってしったこっちゃありませんよ。Qiita ユーザーにもバカにされ、はてブに晒され、社会からゴミ扱いされたかどうか分かりませんが、フリーランサーはそれでも生きている限り契約を繰り返し日々前進していかねばならないのです。愚痴ることで生きていけるのなら問題ないのです!というわけで、mesaka さんには最終日の日記でも燃料を投下してほしいと思うわけです。よろしくお願い致しますm(_ _)m

前置き終わり。さてさて、僕がフリーランスだった2004年頃に体験した、奇妙で残酷作業依頼のことを書きたいと思います

フリーランスになる前はゲーム会社社員プログラマーをしていました。コンシューマアーケードゲームを何本か開発したのですが、ゲームの発売が近づくと月400時間以上の長時間労働を行います。そんなことを何回もやっていると人間は壊れます裁量労働制裁量ってどんな意味だろう、、、と考えながら3年働き、もうダメだなと思った時に同期の10人は誰も残っておらず、一番最後退職者となりました。その後1年は携帯ゲーム会社ゆるふわな開発を行い、元気がでてきたところでフリーランスとして働き始めました。

フリーランスとしての一般的作業

初めての契約3DRPG を開発している会社と結びました。準委任契約なので会社に出向し決まった時間働き、毎月決まったお金をいただく形です。業務内容はプログラミングとそれに関連する作業となります。関連する作業曖昧ですが、まぁ雑用含めてお仕事するうえでの作業全てなので、社員プログラマーと働き方はそんなに変わってない思います

一般的プログラム作業であれば、例えば MMORPG の開発ではマップ表示を担当しましたが、これはマップ担当3Dデザイナーさんとデータ仕様などを決めていって、あとはプログラミングするだけのお仕事です。この開発ではプログラム全体の設計プログラマーのまとめ役もやっていたので、メンバーへの指示出しやタスク管理プログラミングに関連したお仕事です。

少し変わった作業だと PS2 で発売した 3DRPG のコードを渡され、「VisualStudio で動くようにして。大丈夫、描画エンジンだけ DirectX で動くものを別で用意したから」という依頼だったりします。幸いにして同じような依頼を前職の社員ときに受けていました。その時は PS 用に発売した 3D 格闘ゲームプログラムを渡され「ナムコのSystem12基板で動かせるようにしてよ。大丈夫PSと System12 の違いは CPUクロックが違うだけだから」というものでした。どちらの依頼もプログラムと向き合うだけの作業なのでとても単純なです。CodeWarrior で書かれたコードVisualStudioコンパイルすると2万くらいコンパイルエラーを吐き出すのですが、それをもくもくと修正するだけです。

新人プログラマー教育係もプログラミングに関連したお仕事です。ペアプロで一緒にゲームを開発していくのはとても楽しかった!あと成長していく新人かわいいぺろぺろ。

当時その会社ではまだバージョン管理ソフトを使っていませんでした。社員毎に Sambaディレクトリがあり、そこにプログラムファイルを配置して共有を行っていました。さすがにこれは不味いと思いバージョン管理ソフト提案も行いました。前職では CVSMicrosoft Visual SourceSafe使用していましたが、CVS には悪夢マスターアップ1週間前にデータが壊れる)しか思い出がない事と、Visual SourceSafe無料ではなかったため、当時流行りだしていた Subversion検証したレポート作成し、それをもってシステム管理部門を説得するということもプログラミングに関連したお仕事でした。システム管理部門企業ガーディアンですので、そうそう実績のないソフトウェア会社内の PCインストールさせるわけにはいきません。2004年頃の SubversionRuby など新しい技術を使う Web 業界ではそれなりに認知度があったかもしれませんが、C++ も使わず C のみで開発を行っているゲーム業界での認知度はとても低いものでした。時間をかけじっくりとシステム管理部門を説得していく必要がありますが、これはプログラミングに関連したとてもとても大切なお仕事です。

なお、会社から社員にならないかとの提案を頂いたのですが、当時はフリーランスという契約のみで結ばれた、ときには人情のかけらもない綱渡り状態スリルと興奮を感じていたため断りました。24歳という若さのためか、それとも前職で壊れた頭がまだ治っていなかったのかはわかりません。

そして奇妙な作業依頼

そのようなプログラミングプログラミングに関連する作業を行っていたところ、プログラマー全体を統括するマネージャーから奇妙な作業依頼を受けました。それはとある社員プログラマースキルチェックをして欲しいというものです。

新人教育でもなく、サポートしながら一緒にゲームプログラミングを行っていくのではなく、スキルチェックです。スキルを見るならペアプロでもしてゲーム実装を行っていくのが良いと思ったのですが、製品にそのプログラムを入れたくという事で却下されました。また、スキルチェックに僕の時間をあまり使ってほしくないそうです。まぁそりゃそうだよねゲーム開発に時間使わないと。そこで、既存の開発とはまったく関係ないプログラム課題を出して実装してもらいました。

しかし、まず課題説明するところから問題が出ます。こちらの説明を全部紙にメモっているのですが、話が先に進むとメモれないとのことでメモり待ちが発生しました。口頭で2分くらいで伝わる仕様10分くらいかかります。全部話しを聞いてから後でメモるのではダメなのかなと思ったのですが、どうもこのやり方でしか話が聞けないようです。

翌日に進捗を確認たかったのですが帰ってしまっていたので、次の日の朝に進捗を確認するとまだ実装中とのことでした。分からないところがあれば聞いて欲しいと伝え、作業を続けてもらいます毎日こちらから進捗を確認するのですが、もう少しでできるという返事を貰う以外に特にアクションを起こしてきません。そんな状態で1週間が経ちました。ちなみに課題は1日くらいで実装できるものと想定していました。そして、この状況をマネージャー説明し、チームメンバーに入れれるかという質問には難しいと答え、作業は終了となりました。

そして、その社員プログラマー退職していかれました。

社員解雇

フリーランス解雇簡単です。しかし、社員解雇というのはとても難しいものです。金の横領など分かりやすい行動をとった場合は別ですが、プログラミングスキルが低い事で一方的解雇しようものなら逆に訴えれて終わりです。僕の今まで関わった会社さんでも、解雇した社員が訴えを起こさない代わりに和解金を要求し成立したケースもありました。スキル不足の社員解雇するなら、社員にその事を納得してもらい円満退職してもらうのが良いと思います。納得してもらうには情報必要です。「○○を依頼しましたが、あなたは達成できませんでした」という情報をいくつも集めて納得してもらいます退職していかれた社員プログラマーフリーランスの僕のところに来る前、2人の社員プログラマーのもとでスキルチェックを受けていたそうです。僕で3人目だったわけですね。それら3人分の評価を伝え、納得してもらい退職してもらったのだと思います

なんにせよ、一連の流れの中で僕は社員印籠引導を渡すという残酷作業をしていたわけです。正直楽しい作業ではありません。このような不幸なフリーランスを増やさないためにも社員の方々には採用時のスキルチェックをしっかりと行って頂きたいと思う次第です。というかそいう首切り作業社員でやって。。。あ、でも外部委託した方が会社としてメリットが大きいか

フリーランスのその後

こちらの会社さんがある意味消滅と言ってしまえるような状態になったので別の会社社員として働いたものの、また頭がおかしくなってたのかフリーになり、受託用の個人会社まで設立し、その会社も今年で閉じ、今はサンフランシスコ英語勉強趣味プログラミングをしています。あまり普通ではないので最初会社でアホになってからそれが治ることはなかったようです。長時間労働マジ怖い。

自己紹介が遅れましたが akiraak といいますQiita に糞ポエム晒すのは公衆衛生上よくないと思い増田に排泄した次第です。Qiita ではこんなのを書いています

TensorFlowで株価予想シリーズ

ディープラーニング面白いのでみんな遊びましょう!

2016-06-29

もっと庶民的エンジニアはいないのかねぇ

http://anond.hatelabo.jp/20160629082647


な~んかこういう話聞いてるとあまり世界が違いすぎて胡散臭くなるんだよなぁ。

まず、上場企業なんか近寄ることもないかIRなんか出てないし

公開されてるコードなんてねぇよ。

GitHubなんてまず使ってねぇし、そもそもセキュリティ的にそういうの使えねぇし。

中小企業CTOなんていねぇよ。


SVNどころかCVS使ってるとこも普通にあったよ。※しかも1年前とか。

デプロイも基本どこ行っても手動だしね。

やってることが良い悪いは置いといて違いすぎて全く参考にならないんだよね。

もうちょっとこう庶民的はてな増田エンジニアはいないのかねぇ。

2016-02-16

SEの多いはてな民達に色々教えて欲しい入社4年目のワイ

入社して4年目である

まりコミニュケーションが得意ではないのもあって、入社直後は非常に苦労した。

正直人見知りだったのでわけのわからないことをのたまっていた時期もあった。

はいえもう4年目であり色々と手馴れてきて精神的にも余裕ができてきた。

しかも、最近現場は9時-5時で帰宅できるようになり肉体的にも余裕がでてきた。


と、ここらでレベルアップを図りたいと思っており色んな設計書の問題点を指摘した記事とかを読み漁ってきたわけだが

どうも、いまいち記事を読んでいてもしっくりこない。


アジャイルだの詳細設計書がゴミだのいろいろ指摘しているのは見かけるのだが今の自分現場環境があまりにも違いすぎてピンとこないのだ。

なんせ、入社してからやったのがガチガチのウォータフォール型の開発でアジャイルだのなんだのをまったくやったこともないからだ。


Gitなんて使ったこともないし、eclipseSVNソース管理し、古いシステムならCVSだって未だに現役がちがちだ。

幸いにもドキュメントはがっちり作ってあって過去システムがどういうものなのかはよくわかるようになっているが。


もちろん転職しちゃえとか色々まぁ考えようはあるが別に今の会社に大きく不満があるというわけではない。

そこでSE経験の長いお歴々に色々尋ねたいことがある。

機能設計書とか詳細設計書の具体例がぜんぜんわからん

http://nantonaku-shiawase.hatenablog.com/entry/2014/05/18/012107

↑上記のサイトウォーターフォール型開発の例を逐一説明してくれているがこんな一文がある。

ネット検索すると、みんなが批判している。私も作ったことがない。というか時代遅れと言われがちなSIerの私ですら書いたことが無いのに、書かせる企業 is 何。

詳細設計書という名のゴミ | Gm7add9

詳細設計書ってよくわからない - 未来のいつか/hyoshiokの日記

詳細設計書に何を書くべきか? - Sacrificed & Exploited

EXCEL設計書 Vol.1 怪文書大公開 | Same Old Lucky Day

詳しすぎる詳細設計書 - SiroKuro Page

設計書の非常識1.設計書には詳細な実装方法を書く - Sacrificed & Exploited

職業PGにわかFizzBuzz - 日々常々

ネット検索すると、みんなが批判している。私も作ったことがない。

なんだって!!!

俺は入社してからずっとガチガチに詳細設計書を書いていたし、先輩も皆書いてる。

一体どこの世界の話なんだ。

いくつかの現場にも出向したがそこでも普通に詳細設計書を書いていたぞ?


どういうことなんだこれは。

俺の想像している設計書とは実は違うものなのか?

だいたい、機能設計書なんて書いたことがない。


でもよくよく考えたら、なんだか説明されている詳細設計書と機能設計書は俺が書いている「詳細設計書」ではひとつにまとまっている気がする。

まり俺は業界標準がぜんぜん良くわかっていないのだ。

そもそもそんなのないかも知れないが。


そこで尋ねたいのは事例として機能設計書や詳細設計書の具体例が欲しい。

文章説明してるだけだとよくわからんのだ。

書籍でもWEBページでもなんでもいい。

そうじゃないとなんだかそもそも話に付いていけない。

あと、詳細設計書がかけなくなりそうだ(切実)。


テストが良くわからない

JUnitとかで機械的テストをするというのは良く聞く。

ところが俺の住んでいるところではExcelテスト項目を俺が書いて俺が単体テストを手動でやって、結合テストも俺が手やる。


結果列に○だの×だの書いて失敗したらまたやり直しだ!

延々とこれを繰り返す。


別にそれがいやだといってるわけじゃなくて(嫌だけど)、皆テストとかどうやってんの。

テストとかそもそもやってんの?

いや、テスト仕様書がないだけでテストしてんのか?



アジャイルだの何だのに手を出すのもいいのかもしれないがそもそもウォータフォールなV字モデルをぜんぜん理解し切れてない。

誰か教えてくれ。

2015-02-04

JT飲料事業撤退についての雑感

JT飲料事業から撤退という連絡を夕方受けたのでちょっと雑感

JT商品とか売り方とか

売上の多くは「ルーツ」が占めてる。

から缶コーヒーは儲かると言われてるけど、原料相場高騰と、コンビニコーヒーに売上を食われて、継続しても利益は出ない。

「桃天」は完全にいまのニーズから乖離してて売れてない。

CVSに並ぶことは少なかった。自販機もあんま持ってない。となると量販店投げ売りしないと製造ロット大きくできない。悪いスパイラル

営業がちょっと昭和ドブ板営業匂いが残ってる。

あと経営スーパーハイオクとか死に筋商品を生かしてたり、ぬるすぎる。ここの責任大きいよね。

・清涼飲料各社のサバイバルとか

現状は、コカ・コーラサントリーアサヒキリン伊藤園が寡占状態。

それに、大塚製薬ポッカサッポロサンガリアダイドーUCC等々が、差別化された商品ニッチ商売をしているといった図。

自販機が少ない、マーケと営業がダメCVSに並べられない、バランス良く製品事業ポートフォリオ組めないと、今後は生き残れないのではないかな。

そういったところというと、、、おっとこんな時間に誰だろう。。。

2014-11-14

CVSって何よ状態で困ってます

俗にいう「使えないシステム」ってやつをつかまされたのかもしれない。

今、オブジェクト指向言語みたいので、業務ツール作っているんだけど設計が見えてきた段階で実は環境ボロボロなことに気が付いてきた。たとえばpushとかpullみたいなレポジトリ挨拶するコマンドが何種類かあるんだけど、なんかhageっていうコマンド打たなきゃいけなくて憎い。TortoiseHgpushしようとするとhage hair pushみたいなエラーが出て全然pushできないし、そもそもcommitとpullの違いがよくわからない。社内のSEに聞いても、commitは個人レポジトリに反映するだけで、pushしないとマスターレポジトリには反映されない、あとmergeが必要って言っている。TortoiseHgにMergeしてっていったら「それは無理」の一点張り。そうする間に新しい変更が反映されていたりして、もうぐっちゃぐちゃ。CVSだけじゃなくてほかにも必要自動ビルド環境の画面が執事だったり、そもそもユニットテストのAssertionが欠落しててすべてSuccessになってたりとかしてどうにもならない。

このまま実装がすすんでテストフェーズになったら大変なことになるって言っても「CVSくらい使えるのが当然だし、ブランチとかなにそれ美味しの」とかサラッというし。40代のクソガキが!つうかpush/pullがよくわかんねぇのは俺のせいだけどいくら何でも今の時代CVSはねーよ!っていうかCVNじゃねーかよ!まぎらわしいなって、ベテランに文句言ったところでツールを変えたがるとは思えない。だからといってPerforceのライセンス買う金もない。push and pullしてgitgitする時間金もない。死にそうです。

つかれた。p4mergeが使いたい。

http://anond.hatelabo.jp/20141113134907

2014-07-23

http://anond.hatelabo.jp/20140722115605

1行目なら

head -n1 file.cvs

だな。

後、最後の";"要らない。

2014-04-27

よくある話?

売り上げ3億程度のweb系の会社で働いています

たぶんよくある話なんでしょうけど、気持ちの整理のためここに書きます


入社前はプロダクトの開発を行うと聞いていましたが、実際は全案件フルスクラッチ開発。

お客さんはプロダクトがあるという前提条件に立っているため、実態納期の短い受託開発です。

開発体制は1案件(1000万~2000万ほど)1人のプログラマーで、ドキュメントテストほとんどありません。

ひどい案件ではそのシステムが何をしているかからない、サーバの台数も分からない、CVSも使用されずサーバごとにコード差分があるものさえ。


みんな自分案件で手一杯で、隣の人が何をしているのかも知りません。

技術側で仕事量の調整はできず、トップダウン案件が個人あてに振ってきます

社内の雰囲気刑務所のようで、退職した社員言葉を借りるなら北朝鮮みたいな会社だそうです。


エンジニアは社内で育てればいいという社長方針で未経験の子採用しますが、2年以内に4人中4人が退職、そのうち2人は精神科行きです。

経験1,2年のプログラマ要件定義から開発までプロジェクトのすべてを任せてつぶしてしまパターンです。


エンジニア入社しても平均すると2年程度で辞めていきます退職の発表は当日です。

なぜか事前に社員に知らせることがタブーのようになっています


そんなわけで社内には大量の技術負債まみれのプロジェクト蔓延して、保守運用が開発と技術研究時間を食いつぶしています

ツケはエンジニア個人に集中して退職技術的な蓄積が溜まらない、トラブルが減らない、人が辞めるの悪循環です。


上長にこのままでは売り上げ3億程度から伸ばせない、複数人でプロジェクトを行うようにして個人の過負荷を減らし人を定着させるべきだと相談しましたが、

自分は今ある案件を裁くので手いっぱいで何の権限もないと言われました。

その上長も一時期精神科にかかるほど心身を壊して、現在も社で一番多くの業務をこなしているので何も言えませんでした。


社長にも同じ内容を相談しましたが、組織の問題としては受け取ってもらえず個人の問題として切り捨てら取り合ってもらえませんでした。


数年前からこんな光景が続いて、まったく前に進んでいないんです。

どうやったら前に進めるんだろう。

2014-03-10

SIer完全未経験ときに知りたかったこと一覧

http://anond.hatelabo.jp/20140309125629

2013-04-23

ノマド理想としてのコンビニ店長MK2氏と、醜い「妬み」の中傷

誹謗中傷というのはどのように行われるのかという事に興味があり調べながら、ついでに特定の個人を示して誹謗中傷しているコメント抽出してそのアドレスはてなの問合せ窓口に投げた。そんな作業の中で一つ気付いたことがあるので匿名ダイアリーを借りて記しておく。

はてなコミュニティに属している人は、人気ブロガーであったコンビニ店長こと、MK2氏と、彼を執拗に批判する匿名ダイアリーのあるユーザ存在している事をご存じだと想う。それを追っていくと、MK2氏のエントリーを擁護する、あるいはMK2氏を中傷する匿名ダイアリーエントリーについて批判的なブックマークコメントを残した人物に対して個別にIDを示して「ゴミクズ」という非常に特徴的な語を用いて中傷している人物がいることが観測できる。文体も非常に似ていて、文体を統一するマニュアルでもなければ同一人物である可能性が高いと思われる。さら文体以外にも特徴があり

ここではっきりと書いておくが、イケダハヤト氏がこれをやっていると言う陰謀論を唱えるわけではない。何故ならばイケダハヤト氏は文筆業であり、有料でその考え方を文章にして販売している人物である。そう言う人物がこのような行動をとることはまず無いと考えている。漫画家がタダでマンガを書かないのと同じだ。プロはそれが商品である事を承知しており、商品の価値を下げるような真似はしないのだから。(私は彼が人格者であるから行うわけがないと言うほど彼の事を存じ上げないし、著作も読んだ事が無いのでこう言う言い方になる。彼の人柄をよく知る人が人格からそんな事をするわけが無いと主張する事を否定するものではない)

では何かと言うと、これらの批判を繰り広げているのは

なのではないかと推測したと言うことであるさらに言えば、イケダハヤト氏に憧れて彼のようにネットで話題になりたいと文章をしたためているが、おそらくはてなブックマークでも、Twitterでもほとんど話題になることが無く、少なくともMK2氏の執筆したエントリーほどは注目を集めないことに不満を持っているのでは無いだろうか。

そして、そこでコンビニ店長たるMK2氏である。これらの事から、以下の様な妄想をここで披露する。

3行でまとめると

ノマドワーカー成功を考えてみる。

ノマド立場というのは自由であるが、しかし無保証である。私はノマドワーカーを選ぶ人々は不安定な経済状態になって無保証になることそのもの目的にしている人はいないように思っている。自由をまずは目的にしているはずだ。だから最終的には、ある程度の自由を得ながら・・・自分の好きなことをしながら、経済的・生活的には安定することを目的としているのでは無いかと考える。

ここでは2つのケースを成功事例として考える。

まず一つ目が職人としての成功である。腕一本で多数の所から仕事オファー連続して受けるケースだ。職人における安定とは、仕事連続してくることであろう。しかしそのままでは仕事に縛られる事になるので、多数の仕事の中から自分がやりたい仕事を選ぶことができなければノマドという働き方を選んだ意味が無い。さら価格交渉をしてより高い報酬を得る、そしてその報酬の分以上の利益を相手にもたらすことでさらに次の仕事に繋げる。こういったポジティブなサイクルを繰り返えして安定して収入を得るのが一つのゴールであろう。

もう一つの成功としては、自らの仕事資本にして、自らの自由になる組織を作るという事だと考えられる。

職人のケースでは、多く受けた仕事のうち、やりたくない仕事はただ断っただけであった。しかしこれを自らが抱える別の人物に出せば、その分の仕事を受ける事ができるようになる。このようにして仕事をできるだけ断らずに、しか自分でこなすのでは無く他者の手をかりて実行していくという形である。これは最終的には会社組織という事になるのだろう。こちらの特徴は組織化することでいくら組織の長であるとしても組織のしがらみを持つ事にはなる。しかし個人で行うよりは圧倒的に大きな事ができるようになる。大きな力を手に入れるというのは即ち出来る事が増え、出来る事が増えると言う事は自由になるという事である

MK2氏の立場について。MK2氏はノマドワーカー組織型の成功の形の一つ。「勝ち組である

コンビニというのはフランチャイズ展開している自営業の集まりである。古い人間であるならば近所の酒屋が次々とコンビニに変わって行った時代を知っているだろうし、もう少し下ってくれば、独立スーパーが店じまいをした後、アパート建設され、その1階にできあがっていくコンビニという風景を見たことがあるだろう。今では大手コンビニチェーンがドミナント出店を行う際に、大々的にオーナーを募集するTVCMも流れている事も目にするはずだ。

このように、CVSは基本的にはオーナー制のフランチャイズ経営をとっている。このフランチャイズ制というのが何か、あるいはコンビニにおける商売の仕方は何かと言う事はネット上に無料で見ることのできる優良な文章がいくつもあるのでそれらを参照していただきたいと思うが、要するにコンビニオーナー店長というのは、ブランドを借りて自主独立した店主であり、古い言い方をすれば一国一城の主なのである

コンビニ経営は言うほど簡単では無い。全国的に統一されたマニュアルが有り、商品供給などのバックエンドはしっかりしている。しかし、それだけである経営者コンビニ本部への上納金を稼がなければならないという話はもちろんのこと、バイト管理重要で生半可なコミュ力ではできない。さら地域との溶け込みも実は大切で、悪い評判が出るとまず固定客からいなくなると言う性質がある。

そんな中で、MK2氏のエントリーを見る限り(つまり実態はともかくMK2氏のエントリーから読み取れる店の雰囲気としては)非常によく成功しているように見えるのである。有り体に言えば勝ち組だ。優秀な奥さんがいて、信頼できる部下もおり、業務の工夫が功を奏して経営も安定しているように見える。これを勝ち組と言わずなんと言おうか。にも関わらず彼は会社員では無い。自ら決定権があるある程度自由にできる組織を持つ人である

人間が他人を攻撃する原動力になり得る力「妬み」について

本来であれば、MK2氏のような人物は、ネットでは可視化されない。ましてや「はてな村」と揶揄されるような黎明期から続く雰囲気を色濃く残す部分に現れてくることはまず無い。彼らは現実世界成功しており、地元の付き合いなどもそつなくこなし、それらについて忙しいのだから、このような趣味を持つ必要も無いはずだ。IT技術者のように、ネット技術が自らの業務に密接に繋がっているわけでも無い。だからこのような成功者は、目に見えないはずだった。

しかし、MK2氏は、いわゆるオタ趣味を持ち、その方面からネットに進出してきたのであるさらに当初はサブカルチャーを中心にしていたが、だんだんコンビニ経営者であると言うバッググラウンドから、それらに留まらず独自の視点を持った考察を行ってきた。また一般に長文が嫌われる傾向のあるインターネットにおいて、長文であっても読ませる文章であると言う評価を得るに至った。

自らの成功したいという欲望と、認められたい自己顕示欲。この二つが強すぎながらもどちらも持たざる人物にとっては、その両方を持ちながらさらに注目を集めるMK2氏の存在は非常に苛立たしいものだったのではないだろうか。

コンビニを潰すことはできない。であるならば、執拗に個人攻撃を繰り返すことで自分が唯一存在できる場所からMK2氏を排除したいと言う動機があったのでは無いか。あるいは個人攻撃をしていると言う自覚も無いのかも知れない。自らを高められないものが陥りやすい心理として、相手を批判する事で、相対的に自分の地位を上げようとする行動がある。

自らは特にすごくも無いのに、よりすごい能力を持った人物を批判する事で「偉い人を批判できる俺は彼より偉い」と言う錯覚を得たいがための行動である。あるいは格上の人物であっても批判する事によって注目を集める事ができるのでそれに酔ってしまった行動では無いか

ネットで見られる多くの誹謗中傷と言った類いではこのように「妬み」としか言いようが無い感情に基づいているものが多く見受けられる。今回もこのケースなのでは無いだろうか。

対処法としては無視するのが一番なのだが、なかなか対処が難しいのは事実である。またこのような妬みを原動力とするものについては、単なる愉快犯と異なり、反応するしないに関わらずどんどん一方的にこじらせていく事も多い。もちろんその過程で反応したりすれば、一気に吹き出すことになるだろう。

このようなケースについて、何か良い対処法はないだろうか。一番に考えつくのは、頭を冷やす時間をとることなのだろう。妬み批判したところで自分は何も変わらない、むしろどんどん墜ちているということを自覚させるだけの時間を与えることだ。しかしそれを与える方法が難しい。どのようにしたらよいのだろうか。

2013-03-23

最近知ったこと

さらだけど、最近知ったこと (2013年1月3月

2012-05-18

ハッカーVimを使う」 騙される若者たちなのか

Eclipseemacsvimより優れている点を挙げてみよう。

 

 

リファクタリング機能が強力 →本当か

CVSリポジトリの構成を直接覗ける →redmineとかを使ったほうがいいんじゃないのか

デバッガグラフィカル → それ、うれしいか

・設定できる警告メッセージの種類が豊富。→警告そんなにいるのか

復元機能が非常に充実している。 →バージョン管理ソフトがあれば普通だし

 CVSのように以前の状態に復元すること、以前の状態の →diffじゃダメか、というかなんでいまどきCVSなの

 ソースコードとの比較も容易。CVS(Eclipse標準装備)/Subversionプラグインにもこの機能存在する。

プラグインの数が豊富、膨大。 → 数があってもつかえるのは少ない

プラグイン開発環境Eclipse自体に用意されている。 →開発環境を使って作る程のものでもなく、バッチファイルとかスクリプトでよくね

ライセンス形態CPLであり商用利用もしやすい。 →eclipse組み込んで出荷するの?

・上位版にWSADが存在する。 →WSDADってなに、WebSpereの残骸?

IBMバックアップがついている。→それは何か役に立つの

Smalltalkで有名なVisualworksの影響を受けているため、

JUnitプラグイン(Eclipse標準装備)によるテストファーストリファクタリングの他、eXtreme Programming環境が充実している。→Jenkinsのほうがよくね

SubclipseプラグインによりSubversionにも対応できる。これはCVSよりも強力!→コマンドラインから実行するsvnコマンドを覚えておくとはターゲットでも動いて便利だよ

・Call Hierarchyプラグイン(Eclipse3.0から標準装備)によりメソッドの呼び出し階層を調べることができる。この機能は強力だ!→スタック見るだけのことじゃないの

プラグインによってはURLを指定するだけでプラグイン自動ダウンロード自動インストール

自動アップデートができるためプラグインインストールが非常に容易。→勝手に変わったら怖くない

Eclipseから直接Tomcat, JBossなどを再起動できるSysdeoプラグインJBoss-IDEプラグイン

 という強力なプラグインが充実している。→えー、今頃Tomcat

EclipseUML Omondoプラグインによりクラス図などを書いたり、

 UMLによるModel Driven Architecture, リバースエンジニアリング

 などを即座に実現できる。→これは何だかからない

RSSリーダープラグインMP3プラグインAll The Newsプラグイン

など様々なプラグインが充実している。→それ開発ツールじゃなくて携帯でやったほうがよくね

PHP開発が可能なTruStudioプラグインPerl開発が可能なPerl E.P.I.C. プラグイン

C/C++開発が可能なCDTプラグインAspectJ開発が可能なAJDTプラグインなど

言語プラグインが充実している。→Java以外は所詮おまけだけどね

・そのほかにD言語プラグインC#プラグインPythonプラグインJavaScriptEditorプラグイン

CSSプラグイン, HTMLプラグイン, XMLプラグイン、(Jakarta)Velocity UIプラグイン

Apache Antプラグイン(Eclipse標準装備)、非常に強力なApache Mavenを使うことができるプラグイン

ゲームができるプラグイン、メーラとしてつかえるプラグインWikiプラグインHibernateプラグイン

FindBugsプラグインCheckStyleプラグイン、JalopyプラグインSobalipseプラグインソロプログラマープラグイン

など様々なプラグインが充実している。→それぞれ単機能ソフトのほうが充実してるんじゃないの

 

 

どうしてもeclipseというなら止めないけど

2012-05-17

日陰者はろくろの夢を見るか

ソフトウェア開発会社新入社員として入社して1年とちょっと

今俺は先行きについてものすごく悩んでいる。

配属されて初めての仕事、それはレガシーコード保守だった。

こういうのは業界柄よくあることなので致し方ない、とは思う。

別にそれはこの際どうでもいい。

問題は、現場の同期や上司ととことん話が合わないことだ。

俺はずっと、新しい技術を追いかけて来た。

一世を風靡するしたJavaも今では一部でオワコンと呼ばれる時代だ。

IT業界の流れはとにかく速い。

俺はそこに取り残されないように必死勉強した。

近くで勉強会もやってたから、行ける限りとにかく参加した。

適当コード書いたり、色々なツールを使ってもみた。

新卒面接の時には「新しい技術を追いかけ続け、会社に貢献したい」とか言った気がする。

だが、その想いは入社半年を過ぎたあたりから見事に裏切られた。

とにかく、上司や同期が技術に興味がない。

レガシーコードとの戦いも覚悟はしていたが、俺が想定していたスマートレガシーコードとの戦い方とはひどく遠いものだった。

彼らはレガシーコードレガシーコードのまま保守する。

テストなんてものは書かない。テストExcel方眼紙で書かれたテスト項目が全てだからだ。

xUnitだとかSpecなんてものはもちろん知らないし覚える気もない。

極めつけはExcel方眼紙テスト仕様書兼報告書と呼ばれる代物の抜けの多さ。素人でもわかるレベル

足りなさそうな部分は経験則に則り適当テストする。だがその結果は報告書には書かない。

バージョン管理なんてもの存在しなかった。上司に聞いたところ、あるにはあるらしいがCVSらしい。

だがそんなもの社内のどのチームを見ても使っている様子すらない。唯一のバージョン管理ファイルサーバー上の日付が書かれたフォルダーのみ。

そんな現状だ、BTSCIももちろん存在しない。

とにかく現状がひどい現場だが、誰も変える気がない。

現場改善に向けていくつか提案もしてみたが、ただただ否定の言葉けが帰ってくる。

なんとかしてやろうとも思い、個人的にいろいろやってみたものの、必要かどうかもわからない大量の雑務に押し潰された。

彼らには新しいものを学ぶ気なんて全く無かった。

会社を変える気も無かった。

俺はとにかく現場失望した。憧れた業界はこんなものなのか、と。

そう思った時から、俺は現場で笑えなくなった。

同期や上司と気軽に話ができなくなった。

雑談でさえも話を続けることができない。

現場問題点だとか新しい技術だとか業界の動向だとか、話したいことはたくさんあるのに。

彼らはそんな話に見向きもしない。

元々静かな現場であった上、コミュ障気味であることも災いし、その結果会社で話せる人はほとんどいなくなった。

雑談でもいいから話せなかった俺も悪い。だが今更何かを話にいく気にもなれない。

明日の飯を食うだけのために、1ヶ月、あるいは1年、もしくはそれ以上かかるようなつまらない仕事でも淡々とこなす。

そういう生き方も決して間違ってはいないとは思う。

生きていく上でのれっきとした一手段だとは思う。

だが俺はそんな生き方をしたいと思わない。

そんなことをするために俺はこの業界就職したわけじゃない。

だが、現場ではどれだけ訴えても理解してはくれなかった。

俺は今、先行きに不安を感じすぎて俺自身が潰れそうになっている。

会社で居場所がないように感じている。

転職すればいいのかもしれないが、第二新卒枠がまだなんとか使えるとはいえ、今の実力でどこまで通用するのかわからない。

世間じゃ会社入ってから辛くても3年はやってみろ、と言う。

1年ちょっと会社を辞めてしまう奴などクズだと見られるだろう。

その上就活もうまくいっていたほうではなかったから、その時の思いが蘇り、踏み出すこともできない。

それに、今まで養ってくれた親を心配させるわけにもいかない。

八方塞がり。

きっとこの業界自殺を考える奴の心境ってこんな感じなのかと、今日も1人日陰者としてExcel方眼紙の画面を睨み、与えられた作業を淡々とこなす。

そしてExcel方眼紙の先には果たして何が待っているのだろうかと、希望情熱燃え尽きたまま思索にふける。

2012-02-17

ハッカーVimを使う」 騙される若者たち

Eclipseemacsvimより優れている点を挙げてみよう。

 

 

リファクタリング機能が強力

CVSリポジトリの構成を直接覗ける

デバッガグラフィカル

・設定できる警告メッセージの種類が豊富

復元機能が非常に充実している。

 CVSのように以前の状態に復元すること、以前の状態の

 ソースコードとの比較も容易。CVS(Eclipse標準装備)/Subversionプラグインにもこの機能存在する。

プラグインの数が豊富、膨大。

プラグイン開発環境Eclipse自体に用意されている。

ライセンス形態CPLであり商用利用もしやすい。

・上位版にWSADが存在する。

IBMバックアップがついている。

Smalltalkで有名なVisualworksの影響を受けているため、

JUnitプラグイン(Eclipse標準装備)によるテストファーストリファクタリングの他、eXtreme Programming環境が充実している。

SubclipseプラグインによりSubversionにも対応できる。これはCVSよりも強力!

・Call Hierarchyプラグイン(Eclipse3.0から標準装備)によりメソッドの呼び出し階層を調べることができる。この機能は強力だ!

プラグインによってはURLを指定するだけでプラグイン自動ダウンロード自動インストール

自動アップデートができるためプラグインインストールが非常に容易。

Eclipseから直接Tomcat, JBossなどを再起動できるSysdeoプラグインJBoss-IDEプラグイン

 という強力なプラグインが充実している。

EclipseUML Omondoプラグインによりクラス図などを書いたり、

 UMLによるModel Driven Architecture, リバースエンジニアリング

 などを即座に実現できる。

RSSリーダープラグインMP3プラグインAll The Newsプラグイン

など様々なプラグインが充実している。

PHP開発が可能なTruStudioプラグインPerl開発が可能なPerl E.P.I.C. プラグイン

C/C++開発が可能なCDTプラグインAspectJ開発が可能なAJDTプラグインなど

言語プラグインが充実している。

・そのほかにD言語プラグインC#プラグインPythonプラグイン、JavaScriptEditorプラグイン

CSSプラグイン, HTMLプラグイン, XMLプラグイン、(Jakarta)Velocity UIプラグイン

Apache Antプラグイン(Eclipse標準装備)、非常に強力なApache Mavenを使うことができるプラグイン

ゲームができるプラグイン、メーラとしてつかえるプラグインWikiプラグインHibernateプラグイン

FindBugsプラグインCheckStyleプラグイン、JalopyプラグインSobalipseプラグインソロプログラマープラグイン

など様々なプラグインが充実している。

 

 

以上、老害に騙されずにEclipseを使いましょう。

2012-02-06

ああ、今じゃあメモリ2GBで32bit WindowsってんでもうDisられちゃうんだなあ。

おじさんの新入社員のころはWindows2000用のソフトウェアWindows MEメモリ128MBのマシンで開発しろって言われたよ。

VC6はそりゃあもう遅かったねえ。

しまいにゃHDDの基板上のチップパッケージ不良で大規模回収になって、ロットが対象のものだって発表される直前にクラッシュしたのさ。

おじさんがその会社にいたくなくなったのはそれが最初だった。バックアップ用のHDDもなければ、CVSなんて便利なものも無かったから、自腹で購入していたノートパソコンにこっそり移していなければ、ソースが全部クラッシュしていたところだったなあ。

そういやCVS使いたいって言ったらなんか知財の関係の人に申請書を出して許可を得なくちゃいけないとかで面倒くさすぎて諦めたこともあったなあ。ie以外のブラウザも禁止だったなあ。アレも禁止コレも禁止って言った割にはcode redとか感染しまくってて笑えたなあ。

2009-09-07

彼氏バージョン管理システム使ってなかった。別れたい…

バージョン管理していないと、ディスク死んだ時とかに最新ファイルがわからず復旧に時間がかかって恥ずかしいww

下向いちゃうしww

男にはせめてSubversion使って欲しい……

.bakとか.oldとかつけてファイル保存とかされたら……もう最悪ww

あとせめてcommitコメント普通に書いて欲しい。

常識的に考えて欲しいだけなんです!

ファイル名に日付付けてバージョン管理してます!」なんて自信たっぷりに言われた時の恥ずかしさとか分かる?

あのね? たとえば週末10~20人ぐらいで勉強会とかするでしょ?

それぞれ作ったwebアプリリポジトリにアップして公開するわけじゃない?

みんな普通にgitcvssubversionMercurialバージョン管理するわけでしょ

ブログに全コード貼り付けて自慢げに公開したら大恥かくでしょうがww

2008-12-31

365連休突破記念。db-view on stax

ついに365連休突破してしまった。

そろそろまずい。最近、鬱、障害者年金でggrようになった。

ところでなんだが、staxってとこがAmazonのEC2サービス上でTomcat無料開放しているらしいのだ。

http://jp.techcrunch.com/archives/20081216stax-networks-launches-google-app-engine-for-java/

で昔、作ったJavaアプリを置いてみようと思ったのだ。

で置いた。

http://db-view.johannes.staxapps.net/

ソースはここ

http://code.assembla.com/dmcsystemservice/subversion/nodes/db-view/trunk

MySQLROMユーザーアカウントを作りたかったのだが、USER追加のGRANT権限なしだってさ。

パスワード変えた人はここにログっていってくさい。

これ作ったころはGUIの閲覧ツールってAccessとかしかなくて、結構好評だったのだが、今はフリークライアントソフトがいっぱいでもう、俺の出番おわったわ。

以下、作業ログ


まずJavaを入れる。

http://java.sun.com/javase/ja/6/download.html

で、eclipseを入れる。

http://www.eclipse.org/downloads/

で起動してみる。

が。。。。起動しない。

でggr。

となんかeclipse.iniがおかしいらしい。

http://ajiblog.sblo.jp/article/17157448.html

eclipse.iniを修正して再起動

おっきした!!

で、svnclientに入れたくなかったのでggr。

と200Mまで無料svnサーバーがあった。

アカウントをとる。

http://code.assembla.com/dmcsystemservice/

eclipsesvnプラグインを入れる。

http://www.atmarkit.co.jp/fjava/rensai3/eclipseplgn15/eclipseplgn15_1.html

subversiveも使ってみたいなぁと思ったが、ここでeclipseがバシバシ落ちる。

eclipse.iniのXMXオプションをいじるがOutOfMemoryやら、libeay32.dll 序数が見つかりません。とか

秩序ってなんだよ。英語でそのままいってくれ。余計わからん。

でなんか、負けた気がしたが、Javaを5に落とすことにした。

http://java.sun.com/j2se/1.5.0/ja/download.html

XMXを768Mにして起動すると、落ちなくなった。

が、相変わらず、秩序が見つからなくなる。秩序って何。膣女?

こっちのsvnプラグインのほうがいいのかも。。来年やろう。そのうちやろう。ゆっくりしていってね!!

http://server.seasar.org/manual/install_subclipse.html

で、staxプロジェクトeclipseにimport

http://d.hatena.ne.jp/yuroyoro/20081222/1229922781

楽勝だ。

で、職場からこっそり昔作ったアプリをおいて見る。

で、また動かない。

Javaで動かない時は大体クラスパスだ。

もはやggrも再起動も再インストール無駄だ。

クラスパスを必死に設定するのだ。

で、動いた。が、履歴機能が動かない。

で、ソース修正。

ObjectInputStream、OutputStreamを使っていたのだがXMLEncoderとDecoderにした。

http://www.utj.co.jp/xml/dev/java/dxjava_7.html

ぉ。こんな便利なのが1.4からあったのか。

おもえば、これを最初に作った時は1.3だった。LinkedHashMapがなくてArrayList内包したMapを作っていた。

が、そんなのいらんので消した。で、履歴保持クラスもXMLEncoderからリフレクトできるようにガバガバプロパティをさらした。

そしたら、動く。履歴機能が動く。

ぉぉ。では早速、svnにあげよう。

で、eclipsesvnクライアント。相変わらず膣女が見つからないらしい。

去年だったかな、女の子ipodの音はどうやって大きくするの?と聞かれて、右にくるくる。と答えると、

あ、大きくなった。今度、のび太くんのもまわしてみよう。と言われた。

あれから右にくるくるされてない。泣きたい。あの娘は膣女だった。

そんなことを思いながら、エロサイトに誘導されて一回休みeclipseを落とす。

けっこうAVパッケージってカッコイイのが多い。誰が作ってるんだろ。

http://pics.dmm.co.jp/digital/video/h_155tdjk00001/h_155tdjk00001pl.jpg

で、eclipse再起動svnクライアント。相変わらず膣女が見つからないらしい。

eclipseは重くなるかもの理由で日本語化していない。

おれくらい帰国子女になれば、英語のメニューのほうが調子がいい。

と思っていたが、svnクライアントだけ微妙日本語化されている。

が、肝心なところが英語だ。よくわからん。CVSと一緒だろ。と思ってUpdateしたら、ソースが消えた。。。

俺は泣いた。

LocalHistoryから復元しようと思ったのだが、まんどくさい。

staxにDeployしたやつを再度ダウンロードしたら元に戻った。

びっくりした。バックアップソフトクラッシュする。そんなことも初心者には、おうおうにしてある。

だからバックアップバックアップ(ry無限ループにはまるシステムも少なくない。

あきらめが大事だ。ある程度であきらめないとキリがない。

で、再度svnクライアント。今度はCommitをちゃんと選ぶ。

が、明らかにUploadしていない。で、終わると、いくつかのファイルアップロードキャンセルされた。とかでる。

svnクライアントsvnリポジトリを再度設定。

で、再度svnクライアントまたまたCommitをちゃんと選ぶ。

ぉ。今度はうまくいく。あきらかにさっきより時間がかかっている。WireShirkで見てないが、あきらかにsvnサーバーにソケットをはっている。

で、おそるおそる、ブラウザからsvnリポジトリをみてみる。

http://code.assembla.com/dmcsystemservice/subversion/nodes/db-view/trunk

ぉぉ。あがっている。

さてタグを設定して、ブランチ作ってみたいみたいが、壊れそうなので怖い。いつからか大人の恋に臆病だ。

XMLEncoderの入出力をBufferedにしようと思ったが、もういいや。

で、寄り道している間に、こんなのを今更発見した。

http://tuigwaa.sandbox.seasar.org/index.html

これだ。俺が欲しかったのはこれだ。

これぐらい楽勝じゃないと、プログラマはわりに合わない。

さっそく落とす。

さっそくstaxインポートする。

が、動かない。誰のせい?それはあれだ。また奴だ。。。



そう。クラスパス。。。

もういい。まんどくさい。この金髪ブタヤロウ!!しね!しね!しね!と誰かにメールしたいが、やめておこう。

2008年12月31日 泰葉


あと、なぜかFaviconを使ってみたくなって、Favicon作った。

http://www.freefavicon.com/

2008-11-29

http://anond.hatelabo.jp/20081129121032

普通CVSでよくないか?

ファイル個別にバージョンがついてて、バージョンまたぎの更新は許さない、そんな単純な機構なだけでかなりのミスを防いでくれるぞ。

CVSという優れたツールがあるのにVSSが生まれ、それを好んで使おうという人が多い理由がわからんのよ。

VSSってこの世に何で存在してるの?

CVSより後発なのに、システムは糞過ぎる。

ウチのプロジェクトで、VSS使われた。使うといわれた瞬間に反発したのに、使われた。

実際事故がおきまくり

CVSのようにファイルごとにバージョン管理タグが入ってないから、V1に反映->チェックインする時V4までバージョンアップしてた->かまわずV1のソースを元にしたものをチェックイン、なんて事が出来る。

何でVSSはこんなひどいんだろ。

チェックアウトしてる間は他のメンバーソースを触れません、っていうのが防御になってると思ったら大違いだと思う。

2008-11-20

ソースコードの修正履歴をコメントアウトで残す方式だった。別れたい

修正履歴をコメントアウトで残す方式だと、新旧のコードを並べて比較した時なんか分かりにくいww

可読性さがっちゃうしww

男にはせめてソースコード管理システムくらい使って欲しい・・・

バグとか出て、ソースコード修正が必要になったら・・・・もう最悪ww

せめて普通VSSCVSぐらいは使って欲しい。

常識的に考えて欲しいだけなんです!

コメントアウト方式のソースコードレビューする時の恥ずかしさとか分かる?

あのね?たとえば商用系で障害が起こって10??20人ぐらいで対策会議とか開くでしょ?

それぞれ腕利きのプログラマとかお客さんとか来るわけじゃない?

みんな普通SubVersionGitMercurialClearCaseとか期待してるわけでしょ?

コメントアウト方式でノコノコ書いてたら大恥かくでしょうがww

2008-07-13

就職してからいままでのことを書いてみる。

就職氷河期の真っ只中に入った会社従業員数一桁のソフトハウス

大学生のころバイトシミュレーターを作っていたり、趣味ゲームを組んでいた僕はすぐに採用になった。

事業内容はあまり気にしなかった。

プログラムを組めればなんでもよかった。

最初は社内でスタディという名の研修?をやった。

研修といっても、電話のとり方とかでなくプログラミング

簡単なプログラムを組んで、「ああ、簡単に仕事ってできるんだな」と思った。

数週間たったころ、あるプロジェクト会社の先輩と2人でアサインされた。

やったことのないUNIXプログラミングだった。会社にはUNIXはない。開発環境もない。

そして他の会社の人から仕様を聞いて、モノを作るのも初めてだった。

まだ僕が客先に行くことができないので、先輩が話を聞いてきて、いろいろな指示をする形で仕事が進んでいった。

だけど、仕様がわからない。

客にメールを投げて聞いても、客自体も協力会社なのでわからない。

あとでこの業界構造がわかったのだが

 発注元→元受→(ウチの会社にとっての)客→ウチの会社

というように、俗に言う孫受けというモノだった。

元受にメールを投げているうちに、ウチの会社の質問は記憶のかなたに消えていった。

確か、「仕様がわかるまでソースを読んで現状を把握しといて」というようなことを客に言われた気がする。

そしてソースを自社に持ち帰り、読んでいたのだが、もともとがどんなプログラムなのかもわからないため、非常に難航する。

なんといっても、main関数だけで数千行のソースもあるのだ。グローバル変数もたくさん使っている。

学生のころから読んでいた

C++基礎講座 http://www.amazon.co.jp/gp/product/4844313088/

C++実用講座 http://www.amazon.co.jp/gp/product/4844313096/

にも、main関数は短めに、グローバル変数も極力使わないように。と書いてあるのに。

そして、ソースの変更場所を客先に説明するため、変更点を全て列挙してソースWordに貼り付けて色をつけるのだ。

無駄な作業だった。

今考えるとsvn or vss or cvs使えばいいじゃない、って思う。

学生のころに想像していた仕事とぜんぜん違った。

まだいろいろ問題点があるけど、早い話がデスマーチのにおいがプンプンするプロジェクトだった。

2008-03-20

[]gcc-xmlVisual Studio 2005を使いたい!

gcc-xmlって何?

gccの構文解析の結果(構文木)を、XMLとして出力してくれるツールです。C++の構文解析はやたらと面倒らしいので、こういうのがあるとうれしいみたいよ。

何でわざわざビルドするの?

Py++」というC++のPytyonバインディングで使われていたので、必要になりました。gcc-xml 0.6はバイナリで配布されてるんだけど、MSVC7.1までしか対応してないようで、Visual Studio 2005だと使えませんでした。うーん、困った。というわけで、最新版のソース一式を取得してビルドしてみます。

CMakeをインストールしよう

gcc-xmlビルドには、CMakeというツールが必要になります。CMakeは、オープンソースクロスプラットフォームビルドシステムなんだとか。CMakeの公式サイトから、Windows版のインストーラーをダウンロードしてインストールしよう。

実は最初は、ここでcygwinのsetup.exe経由でのインストールをしてたんですけど、これだとgcc-xmlビルドの段階でエラーが発生しちゃいました。この原因がどうしてもわかんなかったので、あきらめて公式サイトインストーラーを使うことにした次第です。

gcc-xmlソース一式を取得しよう

ソース一式はCVSから取得できます。CVSクライアントはいろんなのがあるので、好きなクライアントを使って取得しよう。ここではcygwinCVSを使って、シェルから以下の命令を実行して取得しました。40MBくらいあるみたい。

$ cvs -d :pserver:anoncvs@www.gccxml.org:/cvsroot/GCC_XML co gccxml

gcc-xmlビルドしよう その1

Visual Studio 2005 コマンドプロンプト」を起動してください。起動したら、さきほど取得したソース一式が格納されているディレクトリに移動して、以下の命令を実行します。

$ cmake .

cmake.exeにはあらかじめパスを通しておくか、パスを直接指定するのを忘れずにね。

gcc-xmlビルドしよう その2

gcc-xmlビルドはまだ終了してなかった! 一度ビルドが終了しても、第二第三のビルドが必要となって…。などと恐れおののきましたが、二段階でいいみたい。

さきほどの処理が終了すると、同じディレクトリに"gccxml.sln"というソリューションファイルが新しくできあがっているかと思います。これをVisual Studio 2005から開いて、Releaseビルドしよう。ビルドが終了したら、以下の5つの実行ファイルができあがっているはずです。

  • bin/release/gccxml.exe
  • bin/release/gccxml_cc1plus.exe
  • bin/release/gccxml_vcconfig.exe
  • bin/release/gxsysEncodeExecutable.exe
  • bin/release/gxsysProcessFwd9x.exe

gcc-xmlVisual Studio 2005を使えるように設定しよう

まずは環境変数の設定です。Visual Studio 2005を使っていることを、gcc-xmlに高らかに宣言しておこう。

$ set GCCXML_COMPILER=msvc8

つぎに、gccからVisual Studio 2005のインクルードファイルを使えるよう、パッチをあてます。ありがたいことに、"GCC_XML/VcInstall"ディレクトリ以下にVisual Studioバージョンによってパッチが用意されています。そのディレクトリと、パッチを当てたファイルを出力するディレクトリ("gccxml.exe"が置いてあるディレクトリ)を指定して、"gccxml_vcconfig.exe"を実行してください。

$ bin/release/gccxml_vcconfig GCC_XML/VcInstall/ bin/release

gcc-xmlを使ってみよう

あとはbin/releaseにパスを通せば、gcc-xmlが使えるようになったはずです。bin/release以下をどこか適当ディレクトリコピーして、そこにパスを通してもオッケイです。やったね! というわけで、さっそく試してみましょう。

$ gccxml eample1.cpp -fxml=example1.xml

ここでは、解析するC++ソースファイルとしてeample1.cpp入力し、eample1.xmlを出力しています。ちゃんと出力できたかな? できたー! やったー!

以上で終わりです。

2007-09-23

http://d.hatena.ne.jp/shi3z/20070921

マシン語の話

まず

バリバリアクションゲームエンジンプログラマ

組み込み業界についてはここでは置いておく。

残念ながらその辺は自分はあまり語る資格がない。

だいたいそういう人達は人ハードウェア知識云々をもとより人から言われるまでもないだろうし

shi3z氏が檄を飛ばす想定読者もおそらく俺のようないわゆる受託業務システム開発を

しているような人間たちだ。

べつに低レベルアーキテクチャの知識はあればあったで困らないのは事実だし

プロなら最低限は知っとくべきレベルというのは実際あるし

無駄だと言う気はまったくない。

ただ

もし、仕事でその知識を認められたい、あばよくば給料キャリアの足しにしたい、

などという下心があるのなら、下記のことは知っておくべきだ。
『少なくとも自分のいるチームのNo.1にならなければほとんど評価すらされない。』

はっきり言うと俺らの世界では

氏のいうようなレベルバイナリハッカーはチームに一人。

規模と場合によっては会社に一人か二人いれば十分なんである。

ある意味ではフルタイムで雇うほどの需要すらないとさえいえる。

たまに必要なときだけ相談したり調査を頼めればすんでしまうわけで、

そういうバイナリハッカーも普段は他のプログラマと一緒に

地味なプログラムを組んだりしてるのだ。

ましてチーム全員がプロファイラやデバッガを使いこなせる必要なんか全然ないんである。

上で書いた「プロとしての最低限のレベル」ってのは

バイナリハッカーに相談すべきときに相談できる判断力があるかってことなんである。

(故にそれはできて当たり前であって評価の対象にはならない。)

しかし別の面から見ると

shi3z氏みたいなバイナリハッカーだけでは全然足りないのだ。

SQLクエリがくそ遅くてどうしようもないとき

DBのインデックスパラメータ最適化や分散設定ができるやつは身近にいるか?

ネットの負荷が問題になったとき

Apacheルータ、ロードバランサの設定や専門家は回りにいるか?

先輩から教わったCVS(やSubversion)の使い方がどうもgoogle様の

ご宣託と違うような気はしないか?

バグだらけのExcelマクロから吐き出される設定ファイル

共通ライブラリやお仕着せのフレームワークの仕組みや動作に疑問はないか?

tracのようなBTSを導入、管理できる人はいるか?

Excelバグ管理はもういやだ)

OS,開発環境ミドルウェアの導入、設定、管理、

等など、、、

状況によっては

残念ながら上記のような専門家が全員そろった

ドリームチーム仕事ができないことも多い。

そんなとき、この業界で少しでもやる気があるのなら、

むしろ自分にとって手の届くニッチ(はまりどころ)があると喜ぶべきかもしれない。

上記のほとんど全部をこなせるような人間が稀にいないわけではない。

しかし臆することはない。

そんなスーパーハッカーでも一日は24時間であり、

目と手は2つづつしかついていない。

人の時間とモチベーションは有限かつ希少な資源であり、

この業界仕事は一人でやるものではないんである。

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