「SubVersion」を含む日記 RSS

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

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-09-25

Git より Subversion のほうがいいと言っている人、老害率高い

その発言をする背景として Git が使いこなせていない、新しく勉強する気がない年配の方が多い

もちろん SVN の方が得意な処理や使い方もあって、ケースによって使い分けるまたはその使い方が好みという意図だったら問題ない

ただ、リアル世界でそれを言っている人は前者しか会ったこと無い、後者ツイッターとかはてなではたまに見かける


きょうびチーム開発するなかで分散リポジトリ使えないとかアンチパターンすぎるよね

2016-07-08

Rubyの開発をSVNでやってることについて改善のつもりがないと断言するのまじプゲラなんだけど

https://moneyforward.com/engineers_blog/2016/07/07/ruby-core-201606/

[#11741] Migrate Ruby to Git from Subversion

またこれか。

いつも「なぜRubyGitに移行しないんですか」とかいスレッドが立つんですけど、結論としては簡単で、移行するモチベーションがある人がいない。外野でガヤガヤ言うだけの人がどんなにたくさんいても無意味で、きちんと結果にコミットしていく係になるだけの気概のある人が必要で、そういう人が出てこない限りは何も変わらないと思います

ひとしきりゲラゲラ笑ったあとゾッとするよね。生産性の低い方法をとりつづけることを変えようとしない、コミッタ陣のその老害っぷりに。

SVNからGitに移行する」というのはそれ自体は開発手法の変化において本質的とは思わない。重要なのはパッチGitHubのpull-requestやGitLabのmerge-requestのような、差分を見ながら細かく議論できるウェブインターフェイスを使って適用していくことだと思ってる。だからGitに移行したいというリクエストを「またこれか」「移行するモチベーションがある人がいない」で済ませるのは、そういうpull-requestベースの開発手法をよしととしていないってことでしょ。それでいいの?

別におれはRubyコミッタじゃないしパッチ送ったこともないし、Git移行の作業を手伝うつもりもないよ。だって関係ないもん。ただ、いちRailsユーザとしてこのRuby開発陣の老害化にはちょっと背筋が寒くなる。自分たち老害化していることについて、もっと危機感をおぼえたほうがいいんじゃないのかな。

2015-10-30

プログラマに嫌われる書類書くだけのかんたんなお仕事のひとたち

プログラム書くようになってあるプロジェクト実践でも投入されるようになってから数年。当時の上司プログラマって名乗っていいんじゃない?とか言われてプログラマという自認もできた。

もともとはSE的な立場として仕様書を書いたりしてた。ゲーム業界からSEはいわず企画とかプランナーとか呼ばれる職種書類仕事がメインで、自分ツール作るかスクリプター的な役目でないかぎりコードみたいなものを書いたりはしなかった。コード書くの楽しいVBなんかに戻れないし、もう書く事もできないだろうな。

からってわけでもないけれど、できる企画ダメ企画ってのがわかるのよね。プログラマからみての意見になるからディレクターからみて、とかデザイナーから見て、とかはまたちょっと違うのだと思うのだけど。

なのでプログラマからみてダメ企画をつらつら挙げていく。

わかったふりをしてる

自分ちょっとコードの読み書きできるのでわかってます、な体で仕様書書いてくるのだけど、全然穴だらけ。要件不明なままフローだけ書いてくる。実際にやりたいことは何なの?そこを説明して実装プログラマに任せようよ、と。

イベント駆動とかもわかってないから仕様書の書き方も不明

エクセル方眼だけど図は皆無

ゲーム作るのにはバージョン管理システムを導入するのが常。subversionとかgitとかあるでしょ。すごく便利なんだけど基本的にテキスト形式ファイル管理するためのものなので、エクセルみたいなバイナリ突っ込まれると差分じゃなくて全部のバージョンが入るから容量を圧迫するの。

画像データはまだいいよ。githubがpsdの差分さえ教えてくれるからね。

だがエクセル、てめーはダメだ。

文字情報メインなのに差分を見る事もできない。検索もできない。

ただ、データ管理としてのエクセルは優秀なのよ。ちょっとしたツールもつくれちゃうし。仕様書エクセル方眼で書いてくるやつはカスだ。

俺も若い頃はよく使ってたけどMarkdownを知ってからは断然こっちの方が書きやすい。そしてなにより読みやすい。検索もできるし成型もできる。強調表示や画像も貼れる。文法も簡単だし覚えやすい。

Markdown文字列情報だ。文章だ。文章一次元的に表現される。つまり書く側が完全に整理した思考でないと書ききれない。読む側に理解させるにはどういった順番で説明をすればいいか考えてからでないと表現できない。おのずと書類の内容、精度が上がる。ただの文章からこそだ。

エクセルはタブやらなんやらで並列なまま多次元情報としたまま表現できる。思考が整理されてなくても表現できてしまうし、表現した気になる。書いてる側の思考がまとまってないまま表現できてしまうあたりはエクセル自由度の高さでもあるのだけど、通して読む事ができない形式でもあるので、読む側のことを考えていないクソみたいな仕様書も提出されてきてしまうのが難点。

プログラマ「あの仕様どこにかいてあるの?」

企画「XXファイルのYYタブに書いてありますよ。ちゃんと読んでるんですか?」

殺意が沸くわ。

しまいにゃ図で示せばらくなものでも図にしてない。

Photoshopなり何なりで書いた絵図をGyazoにでもあげてリンクだけMDに貼れよ。エクセルでシェイプ駆使して作るより早いだろ。

パワポの方がマシですわ。あれはページにスペースの制限があるから1ページ内にまとめよう、伝えようっていう意思能力がないとまとめられないから

データ構造とか意識できない

要件を伝えるのもいいけどバランス調整するための調整項目だしなよ。調整できるようにするし、こっちも使う変数を見出すきっかけになるから助かるんだよね。

データ構造意識できてないとバランス取れないと思うよ?

3Dアーティストのあげてくるデータ仕様書書くでしょ?あれの要件とかもまとめられないでしょ。ノードとか意味わかる?揺れもの数とか制限あるのわかる?

新しい事覚えようとしない

なんでもいいからゲームエンジン触れよ。Unityとか簡単じゃん。プログラム書かなくてもいいじゃん。

俺があれだけMarkdown簡単だから覚えろって言ってもエクセルで上げてくるし、古い知識のままアップデートされない人って存在迷惑ですわ。

説明が下手

プランナー説明が下手って終わってるよね。俺も下手だわ。よく怒られてた。ごめんなさい。これは別にプランナーに限った話ではないけれど、プランナーて人に伝えてなんぼなので職能としてこれがないのは致命的だよなぁ。

書いてすっきりしたので寝る。星くれ星くれ

2015-07-17

何故SubversionよりもGitって流れなのか未だにわからない

なのでうちはまだSVNのままなんだけど、特に困ってはいない。

Git入門読んでも基本的にできる事変わらないと思ったし、実際に使ってもコミット時にプッシュが必要な分面倒。

こんなこと言ってると今時の開発者馬鹿にされるわけ?確かにうちは規模は小さいけどさ。

2015-05-23

2ヶ月前にgitを始めた私からこれから始める皆さんへ

Subversionで十分

2015-04-08

Subversionで事足りてる場合Gitにしてもデメリットしかない

という結論に達した。

SourceTree 応答なし が致命的。アンインストールした。

2015-01-21

IT開発者以外には伝わりにくい、subversionの斬新な使い方

途中参加したプロジェクトsubversionの斬新な使い方。

しばらく気づかずに使い続けてしまった自戒を込めて。

/trunk

file_ver_1.0.0.zip

file_ver_1.0.1.zip

file_ver_1.0.2.zip

file_ver_1.0.3.zip

file_ver_1.0.4.zip

file_ver_1.0.5.zip

file_ver_1.0.6.zip

file_ver_1.0.7.zip

file_ver_1.0.8.zip

file_ver_1.0.9.zip

text_ver_1.1.0.gz

text_ver_1.1.1.gz

text_ver_1.1.2.gz

text_ver_1.1.3.gz

text_ver_1.1.4.gz

text_ver_1.1.5.gz

すべて同じファイルバージョン違い。

したがって最新バージョンはtext_ver_1.1.5.gz

2014-06-02

全日本デスマーチ選手権

今週もやってまいりました。

全日本デスマーチ選手権


日本中の兵どもが、プロジェクト破壊するために死闘を尽くします。


本日は解説にギコさんをお呼びしております

さぁ、ギコさん、ウンコーダ選手まなざしはどうですか?


「いやー面接じゃなにもわかりませんからねぇ。どんな荒業が飛び出すか想像もできません」


では、注目してみてまいりましょう。


おっと!ウンコーダ選手テストコード記述を拒否!!!!!

やったことがないから、できませません!!!!!

でたーーーー!!開幕早々の大技だ!


これはすごいですね。難しそうな作業は全部拒否するATフィールドを展開して、リーダを牽制しています


おっと、リーダ、食い下がる。

しかし、理屈にならない理屈を並べて攻撃をかわします。


面接でみせた、一見、口が上手くてコミュニケーションが得意そうにみえるという罠にはまりましたね。現場を離れた人が面接官だとよくひっかかりますよ」


おっと、リーダあきらめた。ある意味凄い交渉力だ。

実装を始めているようですが、どうですか?ギコさん。


「いえ、よく見てください」


おおっ!実装しているふりしてYahooニュースを見ているぞ!

人が後ろを通るたびに切り替える!!まさに変幻自在フットワーク!!!


さぁ、さすがに仕事をはじめたようです。

ここまで、始まったばかりですが、序盤戦をみていかがでしょうか?


変数名や関数名のつけ方がよくないですね」


はいスペルミスや、わけのわからない略語ですね。

コーディング規約とかはないんでしょうか?


「一応ありますが、見ていないようです。まぁ、命名程度じゃプロジェクトを倒すまでにはいきませんねぇ・・・ああ、これはあぶないですよ!」


ギコさんどうしました!?


「みてください。全部グローバルです。変数関数も全部グローバルスコープです!」


かって古のプログラマーを苦しめ、プロジェクト地獄においやった伝説必殺技グローバル変数の乱用が21世紀現代によみがえったああああ!!!


おっと、せめてコメント記述するようです。

鬼の目にも涙。せめてもの慈悲がウンコーダ選手にも残っていたようです。


「いえ甘いです!コメント日本語として意味が通じない文章になっています!」


まさか英語スペルミスならともかく、母国語意味の通じない文章記述するとは、嫌らしい責めをします。

さて、アルゴリズムとかはどうですか?


「いけませんね、この処理はライブラリサポートされているのですが、車輪の再開発をしてますね」


どうですか、ライブラリとくらべて性能面については?


メモリと処理時間に順調にダメージを与えていますね。100倍程度の差はあるんじゃないですか?」


赤い仮面の男を遥かに超えた100倍の速度差がきた!!

てこの原理ウォーズマン理論か!圧倒的なレバレッジ!!!


おおお!!!

コピペコピペがきました!

処理の共通化はしないで、コピペですますようです!!!

まさに分身の術!

平成のTHE忍者だあああああああ!


ああ!?subversion操作しているぞ・・・ま、まさかまさかあああああ!!!

ノーテストコミット!!!!!

プロジェクトダメージを与える必殺の一撃がはいったああああああ!!!!!!



「いえ、定期ビルドエラーが発生しました。この程度でプロジェクトは倒せませんよ」


リーダがつめよります

すごい!蝶のように責任回避しつづけるその姿はまさにモハメドアリです!

でたあああああ!必殺技!『私の環境では動いていたので別の人のせいじゃないっすか?』

テストしてないのにすごい自信だあああああ!


「人によって動いたっていう定義が違いますからねぇ。テスト合格したら動いたという人もいますし、コンパイル通ったら動いたっていう人もいますからね」



かんかんかんかーーーん!>



時間切れだ!!!

定時時間がきれたので、ウンコーダ選手退場しま!!!!!!!!!

セミファイナル

http://anond.hatelabo.jp/20140603100845

2014-04-05

http://anond.hatelabo.jp/20140405222456

Subversionもまともに使えないとかふざけるな。

まり、おまえがふざけてるってこと?

http://anond.hatelabo.jp/20140405215537

http://anond.hatelabo.jp/20140405214722

もしかして、まともなツールないのかよ。

開発にはMacがいいって大嘘じゃん。Subversionもまともに使えないとかふざけるな。

2014-02-16

http://anond.hatelabo.jp/20140216172928

とりあえず、バージョン管理システム(GitとかSubversion)と、自動テストは導入したほうがよい。

既存コードを書きかえるにしても新機能追加するにしても、役立つから

2013-11-22

http://anond.hatelabo.jp/20131122082134

なに?元増田は30そこそこの物凄い仕事が出来ない人?

35歳以上 は Subversion を 使っていて 35歳未満 は Git を 使っている

えーと、30代なら一番成長する20代半ばころはsvnだったと思いますし、仕事場でGitを使い始めたのなんて

早い企業で2,3年前だと思いますが、どういうことでしょう??

それとも、企業とかじゃなくて趣味での話をしてるの?

35歳以上 は オレオレFW を 作っていて 35歳未満 は オープンソースFW を 使っている

FWって何か、って話だよね?ちょっとしたスクリプトを組む事自体FWとか言ってそうだし、

ワンラインで出来るような物を大層なプログラムとして公開して、バカどもがそれを有難がってるようなのがありふれてるけど、

元増田はそういった何も自分で考えないでオープンソースを使う、ってのをよしとしたいのかな?

35歳以上 は パフォーマンス を 重視 35歳未満 は 開発効率 を 重視

効率が何か、って話だけど、35歳以上になってくると、最初開発やってる頃はマシンスペックがまだ十分じゃないかパフォーマンス重視、ってなるか。

そして今となっては馬鹿が描いたコードでもなんでも動くからなんでもいいから手が速いほうが良い、それは確かだな。

35歳以上 は Redmine を 使っていて 35歳未満 は 有料サービス を 使っている

これは上のオープンソースFW若者が使う、ってのと矛盾してるよな?

35歳以上 は Skype を 使っていて 35歳未満 は チャットワーク を 使っている

これなんかはそもそもそれぞれの使い道が違うものなんで。。。それすら分かってない辺り。。。

45歳以上 は 息 を していない

35歳以上、でも言えることだが、まともな人間は30代にもなれば現場で働く事はしない。

かっこ良くぷろぐらまー、なんてずっと現役でやってるのは、まともに管理仕事できないからそのまま現場に残ってるだけなのに。。

45にもなって現場で息してたら逆にキモいわ。。。

2013-10-26

http://gihyo.jp/lifestyle/serial/01/engineer-employment/0002

カッとなって書いた。増田って便利ね

ーーーーーーーーーーーーーーーーーーーーーーーーー

技術者の話は難しい。込み入り過ぎ。専門的過ぎ。客とか社長とか金を払う人からすれば全く理解できない世界。この状況でエンジニアが何か説明をしようとしてもなかなか伝わらない。

そんなエンジニアが自信を持てるわけがない。別に能力がない」と思い込んだりしなくても、技術者でなくても、だれでも一緒。そもそも話が通じないのだ。無理解は一番の拒絶。拒絶されるのに慣れてる人が自信を持てと?

それでもシステムが作られて動かないとアイデアとかやりたいことの実現ができないから、客は意味不明人種であってもエンジニアを雇おうとするのだ。でも客は「どうやって作られるかなんてどうでもいい、思い通りに動けば中身は知らん。むしろ技術者と話をしていると難しい話ばかりされていつのまにかセキュリティ事故責任を取らされるから絶対イヤだ。だいたいこんな若者ガー。でもシステムは欲しい(キリッ)」って考えてる。エンジニアは中身をどうやって作ろうかと色々な選択肢を常に吟味しているというのに。

gooleにせよfacebookにせよエンジニア自身でサービスを立てて成功してる人は本当にえらいと思う。中身の話は無理。理屈抜きで万人が好んで使うサービスを作りたいもんだ。

ーーーーーーー

なんでみんな勉強するのかといえば、勉強せずに過ごして自分技術や知識が陳腐化すると周りからバカにされるからだ。キモーイいまどきsubversionが許されるのは小学生までだよねーキャハハハとか言われるのだ。

同僚からは当然笑われる。客も上司流行りのキーワードの中身は知らなくても耳にはするから笑われる。後輩からも笑われる。彼らは世代若いので自然に最新のもの勉強して来ているのだ。

周り全員から馬鹿にされる。以前(今でも?)WebについてこれないVBerとかコボラーがバカにされていたのと一緒だ。

勉強したい。勉強できるならどこでも良い。自学自習には限界がある。けれど、社内にそんなに技術に詳しい人はいない。外に出てくる人はそういう理由で出てくるのだ。能力を向上させたいのではなく、陳腐化を避けたいか勉強するのだ。

2013-10-18

http://anond.hatelabo.jp/20131017174236

同じ事がGITにも言える。実際現場で見るのはSubversionばかり。ステマだったのね。

2013-10-14

Macで開発してる人に聞きたい

Subversionクライアントでまともなものがなくない?

WinTortoiseSVNみたいなものないの?こんなんでみんなよく開発してるな…

2013-04-18

エンジニアの人には分からない話でスマソ。

弊社はバージョン管理トラブルも多発してるのでsubversionからgit&githubに変えたいと主張してたんだけど

ずっとCTOに拒否されてたんだよね。

その割には最高の技術力があります!とか炎上案件はありません!とかインタビューで答えてるんで

どこが最高なんだとおもいっき突っ込みいれたいわけです。

はいえ、subversionでも適切な運用されていれば問題ないんだけど、基本とされているtrunk/branch/tag運用もされていないし

本番リリースも手でファイルコピーとかありえない状況だったりする。

で、この前コピー忘れでエラーおきたときsvn logを見ていてふと気がついた。

エンジニアN人アサインしますという人月契約なのに、実働してるのがN-1とかN-2人しかいないんだよね。

アカウントは共用だから実はだれがcommitしたかからないという状況。

ところが、gitとかgithubに移行すると1人1アカウントが基本だから

そのへん全部ばれて訴訟問題に発展するんではないかと。

ちなみに人数足りない現場ブラック運用で回すことでカバーしてる。

当然離職率も偉い高い。○ニク○も目じゃないくら高い。

その割にはCTOのビックマウスのお陰で人はくるんだけど最近は化けの皮がはがれたのか、スカトロ女優みたいのばっかり採用している。

さて、そろそろ職務経歴書の手直しでもはじめようかな。

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-04-11

うちの会社ビルドシステムおかしい気がする

http://anond.hatelabo.jp/20120407162253 に便乗して。

それなりに大きなとある会社プログラマだけど、うちの会社ビルドシステムおかしい気がする

まりにも原始的なので違和感を感じるんだけど、自分ビルドシステムに対する知識が圧倒的に不足しているので、今やってる作業に本当に意味があるのかよく分からない。詳しい人に教えてもらいたい。

環境

でどんな方法ビルドしているかというと

  1. Subversion からファイルをチェックアウトしてくる
  2. バッチファイルを使ってワーキングディレクトリファイルを全部 C ドライブ直下ディレクトリファイルコピーする。 C:\PRODUCT とする。これは決められた名前以外では動かない
  3. メインのソースツリーを製品ハードごとのツリーにエクスプローラーコピーする
  4. 製品ハードごとの依存部分をさらに上書きする
  5. 10個ぐらいあるバッチファイルから必要なものを選んで実行し、ビルドする。スクラッチビルドしかできない

こんなこといちいちやるので、ビルドに数時間かかる

あとソース更新した時の手続きは

  1. 製品ごとのソースツリーで、同じファイルを使っているものには手動で上書きする
  2. 更新したファイルワーキングディレクトリに手動でコピーする
  3. ビルドしたバイナリごとチェックイン

手動でコピーするからよく事故が発生するし、同じファイルが複数箇所にあるので全然履歴が追えない。

あと、中間ファイルや実行ファイル(.o とか .so とか) も含めてごちゃまぜにチェックインされているので、もっと訳がわからなくなってる。

ビルド成功しないのが当たり前」とかいう人ばかりで、正直発狂しそうになる

フォルダツリーがわかりづらいと思うので図を書くと

 /
  Main/         -- 共通ファイルディレクトリ
       foo/
           bar.c
       driver/
           common.c
  ProductA/
       foo/
           bar.c -- ProductA 用の変更が入ってる
           baz.c -- ProductA 専用ファイル
       driver/
           common.c
  ProductA_Orig/ -- ProductA/ 内の ProductA用ファイルが丸々入ってる
       foo/
           bar.c
           baz.c
  ProductB/
       foo/
           bar.c -- Main と全く同じ
       driver/
           common.c
  ProductC/
       foo/
           bar.c
       driver/hoge.c
  ProductC_Orig/
       driver/hoge.c

こんな感じになっていて、共通部分は Main/ の中とそれぞれの ProductA, ProductB, ... ディレクトリの中にすべてコピーされている。

チェックインするときはすべてのファイル、例えば bar.c を更新したら Main, ProductA, ProductB, ProductC の bar.c を手動で更新する必要がある。

ビルドするときは Main/ のファイルを ProductA/ にコピーして、 ProductA_Orig/ の中の機種依存ファイルさらに ProductA/ にコピーする。これは、同名のファイルが Main にもあって、 ProductA のファイルが上書きされるかららしい。

こんな状況なので、ソースツリーは常にビルドが通らない状態

ビルドできないので、最後最後まで結合テストが出来ずに、みんなローカルPCで開発してる。誰かのPCが吹っ飛ぶとその人が開発していた差分消失する。

近々また製品バリエーションが増える...

「ツリーを共通部分と依存部分きちんと分けて、ビルド自動しましょうよ」って上長に提案したら「この会社はこれでやってる。むしろバイナリが入っているのでビルドできなくてもテストできる」という感じであまり真面目に取り合ってもらえなかった。

2012-02-18

http://anond.hatelabo.jp/20120217153335

Eclipseはその豊富機能を覚えるのもプラグインインストールするのも非常に面倒(Subversionプラグインさえ入れたのに使い方がわからなくて使ってない、調べたけど動かねーし)。あとアホみたいに重い。起動も重いし検索も遅いしでかいファイルを開くとカーソルの移動さえ重い、最新のPCなのに。あとバグが多いのはいわずもがな。しょっちゅう落ちるか、謎のエラー(無害ぽいが)が出る。

しかしそれでも、今時タダのレガシーエディタコード書きたくないわ。設定次第で何でもできるようだが、俺はコードを書いて仕事を進めたいのであってエディタの設定に何時間も使うのは一度でも嫌だ。あとIDEはやっぱり必要。

ちなみに30後半のおっさんプログラマ

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-01-17

大分県出身ゆとりが1匹、うちの会社に迷い込んだ。

阪神淡路大震災で7000人を殺し「温泉街www」と笑っていた大分県人。

何をしてやろうか。

ちょっとsubversionに細工して、わざと会社を傾かせて・・・

田舎者から土地と金は持ってるはずだ。

金はもともと都民税金だ。それを交付金として持って行きやがったんだ。

それを返してもらおう。

2011-06-27

aptanasubversion


とりあえず、aptanaでsubbersionをやってみる。

インストール

  • とりあえずできた!

次はサブバージョン側の設定と。

2009-09-07

http://anond.hatelabo.jp/20090907215702

SubVersionとか微妙に信頼感がない。

サーバーの調子が悪くなったりすると同期がとれなくなったりとか。

ファイルステータスイマイチよくわからなかったり。

大人数が同時に開発するときは必須だけど

長期的にソース保守していこうとすると不安定要素が増えるだけのような・・・。

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

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

下向いちゃうしww

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

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

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

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

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

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

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

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

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

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