続・プログラマー適性

1 of 212Next»
前回Link は軽い内容ですが、今回はちょっとまじめ(たぶん愚痴)。

たまにですが、他人の書いたプログラムを見たり修正したりする仕事が来ます。そのときに見つけた2例。一応Cで例を見せますが、言語は関係ない話です。

例1
呼ばれた時の時刻(1970/1/1 0:00:00から経過した秒数)を返す関数time()を使って
void func(void){
  if( time() == foo1 ){
    (何らかの処理)
  } else if( time() > foo2 ){
    (何らかの処理)
  } else if( time() < foo3 ){
    (何らかの処理)
  } else if( time() == foo4 ){
  (以下似たような繰り返し)
  } else {
    (何らかの処理)
  }
}
  
例2
func1とfunc2は別スレッドで実行される可能性があります。つまり共有変数ABCを使って、どちらか一方だけに処理をさせたいという意図です。
static int ABC = 0;

void func1(void){
  if( ABC == 0 ){
    ABC = 1;
    (何らかの処理)
    ABC = 0;
  }
}

void func2(void){
  if( ABC == 0 ){
    ABC = 1;
    (何らかの処理)
    ABC = 0;
  }
}
  

例1,2を書いたのは別の人です。私は彼らに対して、このコードは危険ではないかと言いました。彼らの答えは「短時間で終わる処理だから、大丈夫だよ」でした。なぜ私が危険に感じたのかは次のページに書きますので、まぁクイズとでも思って。

1 of 212Next»

— posted by mu at 12:11 pm   commentComment [0]  pingTrackBack [0]

絵を描くときの下描き

1 of 212Next»
先ほどNHKで「夢の聖地アフリカへ ジミー大西・絵描き修行の旅」という番組をやってました。絵描きとしてのジミー大西氏が、あこがれるアフリカ芸術「ティンガティンガ」を学びにアフリカに行くというもの。彼が絵描きを本格的に始めた事も聞いてましたし、きっかけになったTV番組も昔見ました。元気でやっているようで。

そこで彼が驚愕したのが、師匠が下描きなしにいきなりペンキでキャンバスに塗りだしたこと。頭にあるイメージをそのまま描けば良いと事も無げに言う師匠に困惑するジミー氏。

私は知りませんでしたが、ジミー氏は定規でサイズを測ったりして緻密にデザインを計算、下描きを経て完成させるそうです。下描きなしに塗るように師匠に言われ、見よう見まねにやるものの結果は散々。

私には下描き無しなんて考えられません。先日のミクLink の場合、顔と前髪の形は原画をそのままなぞったのでそれが下描きと言えますが、原画に無かった首から下とツインテールには下描きしてました。原画の方も漫画の顔を描く基本、楕円形を描いて十字を切る下描きがちゃんと残ってます。

また番組でジミー氏はひとつの課題を持っていました。それは故岡本太郎氏から受けたアドバイス「枠をはみ出せ」。単純にキャンバスの枠にとどまらず、既成の概念・手法を打ち破れと言っているようにも聞こえる難しい言葉。ジミー氏はその答えを求めてアフリカに来たわけですが、結局下描き無しに塗ることができず、紙に下描きを描いてからキャンバスに写していました。もちろん下描き無し=枠をはみ出すことではないでしょうけど、私には枠をはみ出すことは無理だなぁと。

[2009/12/21] 途中の文章を2ページ目に移動・タイトル変更

1 of 212Next»

— posted by mu at 08:59 pm   commentComment [0]  pingTrackBack [0]

SQL Server 2005 ExpressでUser instanceで接続できない

仕事のマシンでここ二日・二台続けて、MS SQL Server 2005 Expressをユーザーインスタンスで接続しようとすると、
Failed to generate a user instance of SQL Server due to a failure in starting the process for the user instance
と出て、DBへの接続が失敗するマシンが出ました。これだけ長いメッセージだと検索も楽でして、ほぼピンポイントでその手のページにぶつかり、以下の情報を得ます。
  • c:¥Documents and Settings¥username¥Local Settings¥Application Data¥Microsoft¥Microsoft SQL Server Data¥SQLEXPRESSを削除して、SQL Serverを再起動
  • SQL Server Configuration Managerを立ち上げ、SQL Server 2005 Servicesツリーの各アイテムをダブルクリック、起動権限をLocal Systemにして、SQL Serverを再起動

・・・だめです、何度試しても、Windowsを再起動しても、動いちゃくれません。

ヒントは上の解決法で消せと指示されるc:¥Documents and Settings¥username¥Local Settings¥Application Data¥Microsoft¥Microsoft SQL Server Data¥SQLEXPRESSディレクトリ内のerror*.logにありました。c:¥Program Files¥Microsoft SQL Server¥MSSQL.1¥MSSQL¥Template Data¥mssqlsystemresource.mdfが見つかりません。そのファイル何?

調べてみるとサーバーのインスタンスなどが記録されている非常に重要なファイルで、バックアップも特別な手順が必要という代物。ほとんどSQL Serverの実行ファイルの一部とみなしても良いらしくて、回復方法は再インストールしかないそうで。

というわけで、この手のトラブルで検索で見つけた方法でもだめな場合、一度エラーログをご覧になってはいかがでしょうか。

たしかに動作しているマシンにはこのファイルがある。なぜ消えちゃったのだろ?相変わらずこのサイトへの検索ワードダントツトップのSP3へのアップグレードLink 問題といい、SQL Server Expressって難題をプレゼントしてくれるなぁ。

[参考]

— posted by mu at 07:50 pm   commentComment [0]  pingTrackBack [0]

ネギークリスマス

NeggyChristmas2009es

ちょっと早いですが、描きあがったのでクリスマスカード代わりに。

最初はPSULink で知り合ったガゼルさんが描いたスケッチに色を塗る軽い気持ちで始まったのですが、結局作業時間6日間計30時間、GIMP総レイヤー数50弱の大作に。

困ったのは原画は首より下が襟とネクタイしか描いてないこと。顔塗りながら胴体どうしようかなぁと考えていたのですが、季節がらサンタ服なんかどうかなと。最初は明石家サンタの八木亜希子さんを見本にしてたのですが、ある時操作ミスで胸より上の赤が消えてしまい「これは行ける!」ということで、今の服装となりました。

完成図を見たガゼルさんは本当に自分の絵がベースなのかと疑問。原画は線が太かったのでほぼ全て細線で描き直してあるものの、顔や前髪は結構忠実なんですよ。ツインテールは完全に無視しましたがw

ミクお約束のねぎも持たせたので、タイトルもこんなのにしてみました。

さぁて、年賀状描く気力なくなっちゃった。どうしよorz

[2009/12/14 追記] SXGA環境で見たらすごく絵が大きく見えてびっくりしたので縮小。オリジナルサイズはこちらLink

[2009/12/25 追記] マイナーチェンジLink 。いじればいじるほどわけ分かんなくなってきた…

[2009/12/25 追記] 原画を見て、目を描き直しLink

[2009/12/26 追記] 服の影&色のはみ出しを修正Link 。どこまで直せば気がすむのか>自分

[2009/12/29 追記] 左袖の影修正&ペンダント追加Link 。たぶん2009年最終版。

— posted by mu at 01:20 pm   commentComment [0]  pingTrackBack [0]

今年の銀杏

blog20091203-Ginko

仕事で時間的にも精神的にも遠出して紅葉を撮りに行く余裕もなく、今年は通勤路の銀杏を撮影しただけ。しかも遅刻確定の朝における現実逃避だしw

気のせいか、通勤路の道路沿いの銀杏の葉がなんか元気ないんですよね。ぱっと開ききらないし、色も鮮やかさにかけるような。なんかあったのでしょうか・・・

— posted by mu at 05:54 pm   commentComment [0]  pingTrackBack [0]

T: Y: ALL: Online:
ThemeSwitch
  • Basic
Created in 0.0211 sec.
prev
2025.7
next
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31