4日連続で12時間程度労働になりそうだ。偶数年の4月は仕事が増えるのは仕方ないとしても、多すぎる。
朝6時や夜22時に仕事を振るのはやめてほしい。
仕様変更
Ruby On Rails Tutorialが一向に進まない。
さらに、無料サーバーのHerokuの仕様を調べたところ、なんとデータベースが1万行までしか記録できないらしい。それは致命的だ。
これでは将来困るので、言語学習用ソフトはやはりJavaScript+PHPでの開発に切り替えた。
とはいえ、EclipseとGitの存在を知ったことは大きな収穫だった。いままでメモ帳で開発してたもんな。
仕様メモ
せっかく公開するので、マルチユーザー対応にしたい。なので、ユーザー名+パスワードでログインする形式にする。
[LTUser] ユーザー
UserID
UserName
Password[LTTable] テーブル名
UserID
TableID
TableName[LTElement]単語・意味・例文の1要素
UserID
TableID
ElementID
Word 単語
Meaning 意味
Example 例文[LTLog]学習履歴
UserID
TableID
ElementID
Correct 正解したかどうか
Time 日付(年月日で十分)
[主に必要な機能]
ログイン機能
単語の登録
問題提出機能、ロジック
統計機能
特別支援相談室4日目、引っ越し準備1日目
今日は午後から特別支援相談室に子供たちが通った。
一番下の子の、体の動きの発達が遅いので、今日は作業療法士さんに2時間もみっちり体を動かす遊びをしていただいたそうだ。
自治体にはお金がなく、作業療法士さんはボランティアとのこと。
毎日仕事をしている六帖の部屋は、物置と書庫も兼ねている。5年経つうちに、床の足の踏み場がなくなるほど散らかってしまった。この部屋に引っ越しの荷物を詰めることになるので、片付けないといけない。今日は足の踏み場を作って、段ボールをいくつかおけるようなスペースを作った。
CDレビュー: Virgil Fox – Encores (RCA)
★★★★☆
Living Stereo 60 CD Collectionの42枚目。
オルガニスト、Virgil Fox によるオルガンリサイタル。オルガンって、まるでタイムスリップしたエレクトーンみたいだ。華やかで美しい音が出る。
有名どころのG線上のアリアや小フーガを押さえつつ、12曲目のシャルル=マリー・ヴィドールのSymphony No. 5 In F Minor Op. 42 No. 1 – Toccataの超キラキラに感動したら、最後は威風堂々。何回聞いてもワクワクする曲だ。中間部からメインテーマに向けて上昇してい所なんか特に。
お勧めの一枚。
クラシックの他のCDレビューはこちらです。rokujo.hatenadiary.com
今日も残業
やっと残業が終わった!昨日今日と、労働時間が12時間だ。それも、自宅作業なので集中して12時間ではなく、家事や用事などの時間が入るので一日まんべんなく労働することになり、疲れる。
本日、引っ越し業者が見積もりにやってきた。価格は税込みで20万程度。2トン車+3トン車になるそうだ。距離が80kmくらいあること、祝日であることから考えて、妥当な値段か。いままで11万や15万でやってくれた業者もあったけど、約束の時間を3時間遅れて深夜までかかったり、トラック2台のはずが1台になって人員も半分、2往復して時間が2倍かかった、など散々な目にあったことばかりなので、安かろう悪かろうなのだろう。
1日で引っ越しをせず、2日に分けると何故か2万円安くしてくれるという。2日に分けたほうが人件費がかかるのでは、と尋ねたら、1日目は他の現場からやってきて、2日目は引っ越し後に他の現場に行くのだという。あちらは2日で3件の引っ越しができ、こちらは安く上がる。どちらも得をする、ということだそうだ。でも3件作業をする人たちは大変だよな。
C++ reallocはアドレスが変わる
知っている人には当たり前のことかもしれないけれど、デバッグで一度躓いたので。
メモリ容量が足りないからreallocをして容量を拡張しようとすると、なんとポインタの位置が変わってしまう。したがって、
のようなことをしてはいけない。pの中身を他の変数で参照していたら、reallocした瞬間に他の変数が参照している場所が不正な位置になって、下手するとメモリ破壊、アクセスバイオレーションエラーになる。
LPSTR p;
/*何か読み込み処理*/
if(/*バッファ不足*/)
{
p = realloc(p, MAX_SIZE);
}
また、reallocに失敗すればNULLが返ってくるから、pが参照しているアドレスが誰からも見えなくなってしまう。
とするべきだそうだ。
LPSTR p;
/*何か読み込み処理*/
if(/*バッファ不足*/)
{
LPSTR ptmp = realloc(p, MAX_SIZE);
if(!ptmp)
{
/*エラー処理*/
return;
}
p = ptmp;
}
VB.NETで起動オプションを解釈
結局昨日寝たのは0時直前になった。しかもまだ仕事が終わっていない。
で、VB.NETのプロジェクトで起動オプションを解釈しなければいけないことになった、が、VB.NETはなんとデフォルトでMain関数がない!どこで起動する処理をしてるの!?
調べると、VB.NETはコンパイラが見えない位置に勝手にMain関数を作っているらしい。勝手に作られないようにするには、プロジェクトの設定で「アプリケーションフレームワークを有効にする」というチェックボックスを外せばよい。
http://dobon.net/vb/dotnet/programing/startupobject.html
その後、次のSub Mainを元々スタートアップに指定していたフォームの中に入れてやれば、変更前の動作と同じになる。Form1の名前は適宜変更のこと。
Public Shared Sub Main(ByVal CmdArgs() As String)
Application.Run(New Form1())
End Sub
あとはCmdArgs()を解釈してお好みの動作を加えてやればよい。
残業2
泣けてくる。この時間に急ぎの仕事の依頼だ。今日寝るのは何時になるのか。
フランス語1
現在の実力
英語:大体読める、専門書でも頑張れば読める、ラジオも50%位は聞ける
フランス語:新聞記事がギリギリ読める、タンタンの冒険は読める、NHKのニュースが20%位聞ける
中国語:ラノベの中国語訳なら読める、新聞は苦しい、聞き取りは何となく知っている単語が1割くらい、字幕がないと苦しい
韓国語:小学校の教科書を日本語訳を参照しながら読める、聞き取りはほぼできない
ドイツ語:グリム童話の単語が全文の半分ぐらい不明、聞き取りは全くできない
イタリア語:基礎文法勉強中
全部英語程度くらいにはしたい。
J’ai deux chats. Ils toujours dorment, et miaulent seulement quand ils sont faim. Ils sont joli mais déçoivent.
Ruby on Rails2
http://ruby.railstutorial.org/ruby-on-rails-tutorial-book#sec-bundler
現在読んでいるところ。linuxを使ったことがないからか、設定が複雑なのに辟易してきた。まだRubyのコードを一行も書いてないぞ。
どのPCでもブラウザで即使用が可能なJavaScriptや、Xamppのインストール一発で環境を構築できるPHPって手軽でいいよなぁ、と思う。動作する無料サーバも数多くあるし。