よくエンジニアの生産性は10倍とか100倍とか開きがあると言われます。
僕自身、「そうだろうなぁ」と薄々は感づいていました。ですが実際に比較してみたら本当に10倍以上の生産性が出るんだなぁと実感したことがありました。今回はその比較について書いておこうと思います。

比較対象としたのは、自分が現在携わっているプロジェクトと、保守をしているプロジェクトの2つです。

定量的に測ってみる。

ソースコードの行数で測ってみました。ステップ数とかいろいろ言われますが、実際に測れるものはこれくらいだったので。
現在携わっているプロジェクトの手書きステップ数は約30000行。
それに対して、保守をしているプロジェクトの手書きステップ数は約10000行。

開発期間は、現在携わっているプロジェクトが約12ヶ月。
保守をしているプロジェクトは15ヶ月〜18ヶ月。
開発期間に関しては、要件定義フェーズから始まり、仕様変更や不具合が落ち着いてくるまでの期間としています。

この時点で生産性は3倍強〜4倍強。

定性的な要素も加味していく。

保守をしているプロジェクトでは、SQL文もソースコード内に直書き。実測内に含めていないストアドプロシージャが、おおよそ2000行程度でしょうか。
現在携わっているプロジェクトでは、SQL文はTableAdapter内に記述しているので、実測の対象範囲外となっていました。
SQL文の総行数は多分1万行を超えます。TableAdapterでは扱い切れないSQL文を扱うためにビューを作っていたりしたので、それも含めるとあと2000行くらい増えそうです。

画面数は、保守しているプロジェクトが20画面弱。
現在携わっているプロジェクトでは3サブシステムで100を超えるはず。

テーブル数も、保守しているプロジェクトでは20程度。
現在携わっているプロジェクトでは3サブシステムの合計が100を超えます。

案件自体の難易度も違います。
保守しているプロジェクトは、受注と出荷のデータを登録するだけというもの。
現在携わっているプロジェクトでは、勤怠管理・人事評価・給与計算のためのデータ集計の3サブシステムを開発。
法律や細かい運用ルールなど考慮すべき点の多さが違います。

開発人員は共に1人ずつ。ただし、保守しているプロジェクトは、1回交代があった後カットオーバーを経て自分が不具合解消・保守をやるようになりました。

生産性の違い

いったいどれだけの生産性の違いがあるのでしょうか。現在保守しているプロジェクトでは、どのようにして開発が進んでいったかはわかりません。ですが、定性的な要素も加味すると、10倍は超えてくるのではないでしょうか。
いや、決して自分が優れたプログラマというわけではありません。むしろ、普通にプログラムを書けるエンジニアと、コピペエンジニア(CSSとかひどかった。)の間での生産性がこれだけあるわけです。

普通にプログラムを書ける程度のエンジニアと、ハッカークラスのプログラマの間では、ここからさらに数倍、数十倍の生産性があるのでしょう。
それを考えると、ハッカークラスのプログラマとコピペプログラマの間の生産性が100倍以上になることも、納得がいくというものです。

先週に引き続き、今日も映画館へ。
今日は映画デートです!娘(5才)と(・∀・)

いちおう子供向けの作品ですが、
さすがディズニーというべきか、大人がみても十分楽しめました。

映画の後もお昼ご飯を食べたり、ショッピングモールをうろついたりしてデート楽しかったです。
子供2人連れて動くのは大変だけど、1人だとなんて楽なんだ!!


14時ぐらいに帰ってきて、まだ雨も降ってなくて(小雨は降ってたけど)涼しかったので畑仕事もやりましたよ。
とりあえず草削りは一旦おいといて、畝作りを急がねば。

f:id:m_uta:20160828140919j:plain
ということで、昨日草を削ったばかりのここを耕します。

一回全部掘り返して、大きな塊を鍬で叩いて砕きます。
次に牛糞堆肥、化成肥料、ようりん、米ぬかを投入して混ぜ混ぜ。
土を盛り上げて、もう一回混ぜ混ぜ。
都合3 往復したら形を整えて出来上がり!

f:id:m_uta:20160828152739j:plain
まぁまぁ綺麗に出来たかな?
しかし、これ1本作るのに1時間半ぐらい。。。とはいえ、土作りが野菜の出来映えを決めると言っても過言ではないのでがんばるしかないですね!(小型耕運機(管理機?)が欲しい)

ここはニラと人参を植える予定。

あと、キャベツ用の畝と、玉ねぎ育苗用の畝を急がなくては。


f:id:m_uta:20160828140954j:plain
人参の花の上でツマグロヒョウモンの成虫を発見。
幼虫がスミレを好んで食べるらしいけど、野菜は大丈夫っぽい?

ツマグロヒョウモン(Wikipedia)

派手な柄は有毒のカバマダラに擬態してるんだって。
へぇ〜。

でも、日本にはカバマダラは生息していないので擬態は意味ないんだそうな。
へ、へぇ〜^^;

(。・ω・)ノシ

(*´Д`)

 

残業はちじまでやると何もできない、時間がない。

ていうか、疲れて動けななくなる。(Д)

 

プライベートがなくなるし、そこまでして頑張るという気になるない。

いやもう本当に嫌(*´Д`)

 

K144 黄色い種 黄色い種 音1

 

KIN144

『心からの夢や願いを込めた種をまず植える。

受け入れる姿勢が種を発芽させるには最も適した状態。

驚くほど芽吹く。』

(古代マヤ暦「13の音」シンクロ実践編 越川宗亮著)

 黄色い種の13日間

キーワード「開花の力」「目覚め」「種」「気づき」

この13日間のテーマは

『気づきこそ豊かな人生の秘訣』

開花させるには、まず種を蒔くこと。

今日は音1の日です。意思決定の日。宣言する日です。

どんな種を育てるのか決めましょう。

開花という目的を目指すことで、自分の意志が、気づかぬうちに奥深くに働きかけ、出来事や人との出会いを引き寄せます。

ポイントは、置かれている状況をまずは「受け入れる」こと。

そして、日々目の前に現れる人や出来事について、

「どのような意味」があり

「どのような意図」があるのか、

届けられる情報の本質に気づいてください。

また、知識欲を感じたら迷わず調べてみたり、考えたり、学んでみたりしましょう。

今日は勉強するのにとてもいい日です。専門分野のことを深める日。あれこれいろんなことをするより一つのことを掘り下げる方が向いています。

 

今日も素晴らしい一日を!良いシンクロの流れに乗ってくださいね♪

 

子供たち、GWは楽しく過ごしました。

おばあちゃんの家に行ったり友達と遊んだり。

勉強時間は設けてましたが、あんまり集中してなかったかも。

しばらく勉強してなかったから、少しでも習慣づけになればよいのですが。

 

今は体育祭に向けて練習真っ盛りですが・・・一人、成長痛が出て部活や応援団を休まざるを得ないことになってしまいました。

本人は残念そうですが、歩いても痛みがあるのだから仕方ないですね。

 

塾が再開しました。「宿題たくさん出た?」と聞いたら、「倍でた」そうです。

「倍?こないだは1問だけだったから、2問出た?」と聞いたら「違うよ~4ページ!」って威張ってました。一週間分ですからね、もっとくれ~と思ってます。

 

英語の勉強について。英語はまだまだ馴染んでません。毎日のように thirsty(喉が渇いた)の綴りをテストしても覚えられません。「どうしてthなの?」とか言ってます。

そう思うのも無理はないけど、英単語は何個も覚えるにつれてパターンといいますか、英語ならではの綴りに慣れるようになって欲しいです。

 thirsty hungry の2語を繰り返しやってます。「英語圏で一人になってもこれだけ覚えておけば、誰かが助けてくれる(かもしれない)」ってことにして。

覚える気がないので、間違ってばかりでこちらも意地になってるのですけどね。

 

そう、英語は学校の進度に合わせて? or  先取り? についてです。

塾の先生にどちらで行くか返事くださいと言われてます。

先取りってことは予習になるし、3年生になったら受験勉強の時間を取れるから、先取りがいいのかな。

でも、今の状態で先取りってできるんだろうか???わからないまま進んでしまうこともあるんだろうか???

 

英検5級に挑戦しようかと思ってましたけど、次に延ばすことにしました。

だって、難しいもん。うちの子のレベルでは。

漢検は6月に受けます。と言っても学年相当の4級に挑戦です。頑張って欲しいです。

 

あっという間に夏休みになっちゃいそうで、いつになったらエンジンがかかるのか・・・って小学生の時もこんなだったなあ。

先月から、ファーストレターを頻繁に書いている。

ポスクロ経由でのお誘いが多くなった。

私のプロフィールを見て「まだペンパル募集している?」と

メッセージをくれた人にはファーストレターを書いて~と

お願いしたけれど。

ハガキに「まだペンパル募集中なら手紙頂戴!」と住所付きで

ポスクロのハガキをくれた人たちには

私がファーストレターを書いた。

先月は特によくもらった気がする。

一体、何通、ファーストレターを書いたんだ?と思ったら

5通も書いていました。

ドイツに2通、香港1通、オランダ1通、チェコ1通。

「私たちには共通点があるわよ!」とみなさん書いていた。

「私もチョコが大好きなの~!」と。

先月、受け取った手紙の中でポーランドのパルがアドレスシールを

同封してくれていた。

返事のときの封筒に貼って使って~!と。

とーっても楽だったので、

今度から、アドレスシール持っている人からは毎回、

アドレスシール入れて~!ってお願いしようかしらと思ったほど。

でも、宛名面にアドレスシールペタって貼られて

送り主の住所もシールでペタって貼ったら、

そのうち、手書きが面倒臭くなりそう。

もういっそのこと、中身も全部、タイプしたら?と思ってしまいそうで

やめることにした。

ただ、宛名に住所シールはありがたい。

というのも、手書きの文字だと読めなかったり、

間違えてしまったりすることも多い。

単語と違って、これはきっと…と推測することも国が違うと大変で、

それでもパソコンで打ってその住所があるかどうか調べたりしましたが、

数字ですら読めないことも多く、

住所だけはメールで一度、欲しい…と思うし、

宛名シールが貼ってあると、ほっとする。

海外の人たちの文字が汚くて読めないのが原因よ!!

と散々、思ってましたが

先日、「あなたの数字が読めなくてポスクロ登録に時間がかかった」

というメッセージをドイツからもらった。

「ID忘れてたわよ!」というメッセージはよくもらったし、

「なんて美しい文字!」と言われたこともあるのに、

私の数字が読めない?!

ちょっとショックを受けた。一体、どの数字が読めなかったのかしら。


にほんブログ村

Spin Master パープレクサス エピック

Spin Master パープレクサス エピック

  • 出版社/メーカー: Spin Master
  • 発売日: 2013/06/30
  • メディア: おもちゃ&ホビー
  • この商品を含むブログ (1件) を見る

今日は朝イチで兄弟に買い物でした。
アマゾンで注文です。

Xmasプレゼントに届いて一年ほど活躍してくれました。
が、年長次男もできるようになり、まだまだ遊ぶところで、
壊れました。

同じものを二回買うのも
傘やら、ぬりえやら、数度めです。

サッカーボードゲームも壊れたまま買い換えてなかったなー。

兄はもういい。というのですがたぶんあったらやりそうです。次男はやりたい!といいます。

我が家はテレビゲームはしませんが、手を使ったこういうおもちゃは使ってほしいのでそろってます

|恋愛小説r18

2018/07/03

恋愛小説r18について、調べてみました。


ピクシブ初心者です。 ある作品の男性同士の恋愛をかいた小説
ピクシブ初心者です。 ある作品の男性同士の恋愛をかいた小説をのせたいと思っているのですが、ピクシブのなかの腐女子ルールがあとひとつよくわかりません。 タグについてなのですが、(作 品によって多少かわるというのはわかりましたが) とにかくそのカップリング(●×△)と、腐向け、のタグだけつけておけばひとまず間違いはないでしょうか?(作品名はかかないほうがいいというのを読みました) そして性行為がある場合は、それにR18タグ足せばいいでしょうか? プロフィールに、特別なにか書かなければいけないことはありますか? (ボーイズラブ、同性愛、二次創作注意。 ◎◎(作品名)の、●×△の小説を書いています。など以外に) ほかになにか注意しなければいけないことがあれ
ば教えていただけるとありがたいです。 質問のタグも間違っていたらほんとうにすみません…
ベストアンサーには納得です↓
ジャンルごとにルールがあるので、その作品や、カップリングで検索して、他の小説と同じようにタグをつけるのが一番です。 タグは、無ければいいというものではなく、腐向けが苦手な人のマイナス検索にも使われます。 下の回答者さんも言ってますが、作品名に「腐」を入れたものが良く使われてます。例えば「刀剣乱腐」とか。 あなたの作品にも何かそういうタグが作られているかもしれないので、色々見てみてください。 プロフィールは適当で大丈夫でしょう。

BLとゲイについて(R18要素あり)こんにちは。 タイトル通り若干R18的な内容が入ります。 カテゴリがここで間違っていたら申し訳ありません。 多くの人が気持ち悪いと感じる内容かもしれませんので 不快になったら読む...[趣味・アウトxA5
疋◆♦xD6>読書>文学・小説]

英会話スクールや趣味のお稽古など新しい自分を発見したいという思いを胸に秘めているなら、それもちゃんとした出会いが待っているシチュエーションです。同僚と二人じゃなく、ひとりぼっちで通うほうが可能性が広がります。
最近は非現実的な出会いも多くなっています。お見合いサイトだけでなく、ブラウザゲームや趣味のスポーツなどの情報交換サイト経由での出会いも案外出てきています。
女性用に編集された週刊誌では、年がら年中色々な恋愛のHow Toが案内されていますが、あまり大きな声では言えませんがあらかた実生活ではどう使えばいいか分からなかったりするのも致し方ありません。
女性向けの情報誌で記されているのは、大部分がフィクションの恋愛テクニックといって間違いありません。こんな仕様でドキドキしている男の子と恋仲になれるなら、こんなにたくさんの女の人は恋愛に奥手になる必要もありませんね。
才名で歴史が古く、加えて多くの人が使っていて、いたるところにあるボードや人での多いところで配られているポケットティッシュにも広告が
入っているような、名高い押しなべて無料の出会い系サイトを使うのが常套手段です。






ということで恋愛小説r18の関連動画をチェック





今が旬のニュース!

d8bf74fa.jpg

初めて、サンラータンを作ってみた。

どんなものかも知らずに・・・笑

あまりの酸っぱさに吃驚したけれど、
サンラータンを知る両親には、
とても絶賛してもらえてよかった〜!

味に厳しい兄も認めてくれました!

ありがたやありがたや〜

select

2018/04/09

selectは、複数のファイルディスクリプタを監視し、なんらかの状態変化が発生した場合に、この関数を抜けることで知らせるUNIXシステムコール・・・。

Man page of SELECT

これで、最大5つのクライアントを同時接続できるサーバをつくる・・・。

クライアントは、connect.cに、

このようなsendrecvループを持つような形で作成・・・。
今回のクライアントは"fin"でクライアントを終了するだけ・・・。

でサーバのselect.cだが、

最大5つのアクセプトソケットを格納できるようにclient_accを要素数5の配列にしている・・・。
また、fd_set型mask、struct timeval型timeoutも重要な要素・・・。

リッスンした後、まだアクセプトソケットが格納されていないということを示すために、client_accをすべて-1に初期化・・・。

ここからは、アクセプトループに入る・・・。
アクセプトループは、サーバが終了するまで、クライアントの受付をし続けるループ・・・。

まずはFD_ZEROでマスクを初期化・・・。

FD_SETでサーバソケットとマスクを紐付ける・・・。これでサーバソケットがまず監視対象になる・・・。

rangeは監視するソケットファイルディスクリプタの範囲を指定するものだが、まだサーバソケットしか監視しないので、soc+1とする・・・。

アクセプトしたソケット数を表すのがcount・・・。
まだアクセプトしてないのでcountは0、つまりこの監視対象ソケットの範囲を広げる部分は実行されない・・・。
しかし、countが増えるごとにFD_SETでアクセプトソケットがマスクに追加されていき、rangeも一番大きいアクセプトソケットファイルディスクリプタの値+1となる・・・。

select1回で何秒監視するかをtimeoutにセットする・・・。
tv_secは秒、tv_usecはミリ秒・・・。
ここでは5秒監視としている・・・。

selectにrange, mask, timeoutなどをセットする・・・。
戻り値が負の値ならエラー、0の場合タイムアウトとなる・・・。(今回は5秒過ぎたということ・・・。)
それ以外なら、何らかの状態変化があったということ・・・。

FD_ISSETで、変化が起きたソケットが指定されたものかどうかがわかる・・・。
socつまりサーバソケットの場合、acceptでアクセプトし、アクセプトソケットファイルディスクリプタを取得する・・・。
アクセプトしたクライアント情報を出力したら、client_accの空いてる場所に、アクセプトソケットファイルディスクリプタを格納・・・。

アクセプトソケットの場合、どのアクセプトソケットかを特定し、アクセプトソケットからデータを受信したり、データを送信し返したりする・・・。
"end"が入力されたら、server_exitを1にする・・・。

server_exitが1になったら、サーバ停止となる・・・。

すべてが終わった時、

クライアントソケット、サーバソケットすべてを閉じる・・・。

$ ./select
soc = 3
setsockopt(SO_REUSEADDR) success.
bind success.
listen success.
count = 0
timeout!
count = 0
timeout!
count = 0
timeout!
count = 0
timeout!
count = 0

サーバを起動すると、なにも起きてないので、count=0でtimeout!し続ける・・・。

別のターミナルから、connectクライアントで

$ ./connect
hostname: localhost
port: 3000
connect success.
>abc
abc
>hoge
hoge
>

接続して、abcやhogeを入力すると、

accept!(IPAddress = 127.0.0.1, Port = 56848)
count = 1
timeout!
count = 1
abc
count = 1
hoge
count = 1
timeout!

countが増えて、接続してきたのがわかり、データも送られている・・・。

$ ./connect
hostname: localhost
port: 3000
connect success.
>foobar
foobar
>xyz
xyz
>

別のターミナルで接続し、foobar, xyzを入力・・・。

count = 2
foobar
count = 2
xyz

countが2になり、foobar, xyzが来ている・・・。

これで2つのクライアントを同時接続して通信できているのがわかる・・・。

Sample/select.c at master · bg1bgst333/Sample · GitHub
Sample/connect.c at master · bg1bgst333/Sample · GitHub