トライアスロンはじめました

フルマラソンも走ったことない僕が無謀にもトライアスロンに挑戦します!
つ・・・ついにカミングアウト!こりゃ恥ずかしい!落ち着け!(*゚∀゚)=3ハァハァ

記念すべき(?)デビュー戦は10/27川崎港トライアスロン東扇島。
(Swim1.5km Bike40km Run10kmのオリンピックディスタンスね)
先日ガクブルしながらネットで申し込みました。

いや~唐突ですが実は構想すること足掛け三年。
なんとなくジョギング始めてからいつかは出たいなあという思いを押入れの片隅に放置していました。
常に時間体力資金が準備不足でなかなかどうして踏み切ることができなかったのです。
「いつやるの?今でしょ!」に触発されたとかされないとか。

かといって満を持して・・・というわけではありません。
・自転車でロングライドしたことないし
・OWSもほとんど経験ないし(スキンダイブならちょっとは)
・膝痛いし
・今までトレーニング習慣をちゃんと維持できてないし
・それ以前にハラの肉落ちてないし

う~ん こんなんで完走できんのか?
とはいって練習ばっかしてたら家族に怒られそう。

あ、トライウェアとウェットスーツ買わなきゃ・・・(できればDHバーも)
おこづかい足りるかなあ?

とまあ課題は掃いて捨てるほどあるわけです。

練習内容や節約技の試行錯誤、そもそも動機とか、しばらくネタに困らなそうです。


余談ですがトライアスロンを始めようかな~っと思ったらもうあなたはトライアスリートなんですって
ほんならオリャ3年前から既にトライアスリートじゃけえ!


追記:気分的にはこんなかんじ↓
f:id:azuken8931:20130519160943j:plain
(トライアスロンはじめました。 著:野中秋世)

【VB2010】ByValなのに強制的に参照渡しされる

呼び出し先で列を削ったら元のDataTableに反映されちゃいました。

Private Sub hoge()
 'Excelがインストールされてないサーバーで動かすのでJetOle4.0で読む トホホ
  Dim table As DataTable = GetTableFromOleDb() 
  fuge(table)
  Dim list As New List(Of String)
  For Each dr As DataRow In table.Rows
    'ここで落ちる あれ?No列がなくなってるYO!
    list.Add(dr("No").ToString()   
  End For
End Sub

Private Sub fuge(ByVal srcTable As DataTable)
  srcTable.Columns.Remove("No") 'No列を削除
End Sub

結局新しいDataTableをコピーしたものを使いました。(コードは忘れたので省略)

ちゃんとしたソースは見ていませんが、String以外の参照型は勝手に参照渡しになっちゃうのがVB仕様らしいです。
どんなだよ!

暗黙的ならわかりますがわざわざByValつけてるんだから警告くらいしてくれてもよいのでは?
と思っちゃうのはintellisenseを始め何かと便利なMSへの甘えなのでしょう


追記:あ、上のコードコンパイル通んないや。さてどこでしょう? 超初級編だね

自転車保険

自転車通勤の頻度が高くなってきたので保険に入りました

au保険
http://www.au-sonpo.co.jp/pc/standard_shogai/bicycle/index.html

ここに決めた理由は個人賠償と死亡・後遺障害の補償のみですが保険料が1,070円/年と激安のため。

珍しく重説に目を通しました
以下気になったところ

交通違反を犯していた場合の事故は補償が受けらない場合があります

 道交法自体に矛盾があるため法律の完全遵守は無理だけど
 一応当たり前・・・だよね?

・競技またはその練習、興行の場合は補償対象外です

 え? じゃあただのサイクリングやツーリングはダメなの?
 通勤用だし。。まあいいか


以下参考

サイクルベースあさひの比較ページ
http://www.cb-asahi.co.jp/html/tokusyu_hoken.html

ロードバイク ディレイラハンガー交換

シフトチェンジがとっても滑らかになりました や~んウソみたい!

交換後の古いハンガー
f:id:azuken8931:20130607001419j:plain

横から見ると・・・
f:id:azuken8931:20130606235449j:plain
ちょっと判りづらいけど ひん曲がってますね


ずいぶん前からずーっと、変速がガコガコして調子悪い
ディレイラー調整は何回やってもダメ 

こりゃ自転車職人さんに見てもらわねば
と思ってた矢先、

たまたま立ち読みしてたメンテ本に
ディレイラーハンガーが曲がっていないかチェックしよう」
「もし曲がってたらいくら変速調整してもムダ」

改めて自転車を見たら明らかに曲がってる。
おお!これだ!

早速Y'sロードで発注しました

ANTARES 201用ディレイラーハンガー 1,680円

最近のモデルじゃないので手に入るか不安でしたが
他店舗で在庫があったので取り寄せてもらいました

予備があった方がいいかなあと思いましたが
店員さん曰く
「滅多に交換するものじゃないので、ハンガーが手に入らないくらい古いものはフレーム自体がもう寿命かも」
とのこと 

もう立ちゴケなんかしない!

Garmin Edge 500 再フォーマット(FAT32)

先日ファームをダウングレードしたガーミンちゃんがやっぱり調子悪い・・・

最初は問題なく動作しているのですが、走行中に気付くとSpeedが0km/hになってしまいます
そしまた気が付くと復活したりします

もう不安定すぎてストレス!
表示が気になって走りながら設定をガチャガチャいじってみましたが問題はなさそう
 

とりあえずWebUpdaterでバージョンをv3.20に戻してみました 
→変わらず もうわけわかんね


もう(半ばヤケで)フォーマットだ!
ドライブを右クリック→フォーマット→FAT32で実行 
USBメモリを初期化する手順ね 
 ちなみに実行OSはWindows Vista home x86です

→無事すっからかんになりました


電源OFFONして再度PCに挿し、事前に取っておいたバックアップファイルでリカバリするかねー

と思ったら
・・・ファイルたちが復活していました あれ!?

まあいいか
初期設定して近所をテスト走行
→GPS感度は問題なし!すこぶる調子いい! 

前回の糠喜びで気が抜けないので往復約35kmの通勤を3日間使って検証してみました
→今度こそ直ったっぽい! 
 なんだかわからんけどやったね!


今回原因追求はハナから放り投げ、もう壊れてもいいやぐらいの気持ちで作業しました
もしフォーマットされる場合は自己責任でお願いします
あとサイコンをいじりながらの自転車の運転は危険極まりないのでやめましょう

Garmin Edge 500 ダウングレード(3.20→3.00)

自転車のサイクルコンピューターの話です。興味ない方はスルーしてください。

現象

どうもGPSの調子が悪い・・・
1. 速度がメチャクチャ
  30km/hの主観に対して16km/hとか0km/hとか表示されたりとにかく不安定
2. 距離がおかしい
  一見カウントは問題なさそうだが総距離が20%ほど少ない

原因

先日GarminConnectにログインするとアップデートのお知らせが表示されました
当然よく考えずにファームウェアをv3.00からv3.20アップデートしました

う~ん 根本原因は不明ですが間違いなくそれがトリガーですなあ

対策

ソフトリセットによるデータ初期化(POWER+RESETボタン長押し)をやってみる
→ぜんっぜん改善せず

じゃあファームウェアを戻してみちゃう?

v3.00アップデートファイル取得
https://forums.garmin.com/showpost.php?p=89239&postcount=5

ファーム入れ替え手順
https://forums.garmin.com/showpost.php?p=89089&postcount=2

1.アップデートファイルをリネーム
gupdate300.gcd → gupdate.gcd

2.edge500をPCにつないでファイル転送
転送先はルート\Garminフォルダ直下
 ※念のため全ファイルバックアップしとく

3.引っこ抜いて電源ON
メッセージ表示

Software update detected is older than your current software.
Continue? No/Yes

→もちろんYesで。
こんなメッセージが表示されるくらいだから
ダウングレードすること自体は想定オペなのでしょう
2分くらいでアップデート完了

テスト

速度表示:OK  ・・実感とリンクしてます。値も安定してます。
距離表示:Not Yet ・・ある程度走らないとわかんね。

結果

とりあえずはオッケーでしょう!
itunesと同様で何でもやたらにアップデートしないこと!

【T-SQL】指定した行番号のデータを取得する

T-SQLではOracleみたいにテーブルに行番号のメタ情報がないので自分でつけます

--2013/05/31から3営業日後の日付を求める
--ROW_NUMBER()は2005以降じゃないと使えない
 SELECT * FROM
 ( SELECT ROW_NUMBER() OVER(ORDER BY date) AS rowNum, * 
   FROM calender 
   WHERE date > '2013/05/01' 
   AND holidayFlag = 0 )
 WHERE rowNum = 3

たまにはお仕事ネタ
最近はVB.net2005+SQLServer2005で証券会社の業務システムを作ってます グローバルな業界のため仕様書が英語だったりするため四苦八苦してます。
VisualStudio2010に慣れているため、エディタの拡大縮小やPowerToolsなどの拡張機能がないので2005はデバッグしにくいです。