EclipseでAndroidのプロジェクトを作ろうとしたら、なぜか
could not write to file org.eclipse.jdt.core.external C:\Users\baba\workspace\.metadata\.plugins\
org.eclipse.jdt.core\.org.eclipse.jdt.core.external.folders
といったエラーが出てしまいました。
プロジェクトは作成できるのですが、Android SDKなどが読み込まれず、上手く動きません。
よく分からないですが、該当フォルダ内にある .project を削除したら動いたので、めでたしめでたし。
ちょっとしたデータサーバ障害により、バックアップをしていなかった、C#で開発していたミニプログラムのソースコードが紛失してしまいました。
そこで Reflector.NETの出番!
exeやdllを読み込ませると、リバースエンジニアリングでC#の形に復元してくれます。
マシン語にコンパイルされるC++などと違い、C#は変数名やオブジェクト構造も維持するMSILにコンパイルされるため、精度は抜群。
コメントが消えたり、プロパティが get_* というメソッドに置換されたり、ラムダ式が展開されていたりするくらいで、ほとんど元のソースコードが復元できます。
むしろ面倒なのが、XAMLの記述やリソースファイルの配置だったり・・・
とにかくReflectorは便利ですね。
その分、読まれても問題ないコードを書くように気をつけないといけませんが・・・
さくらインターネットサーバの障害により、本日BPSのWebサイトが半日以上ダウンしていました。
最近、メモリやNICなどのハードウェア障害が立て続けに発生して、かなり大変でした。
さくらインターネットは、リブートは早いのですが、それ以上の障害になると途端にレスポンスが遅くなります。
復旧に時間がかかるのも問題ですし、そろそろメインの環境をクラウドに移行した方が良いかもしれませんね。
いくらバックアップや多重化等の対策をしても、結局は費用対効果の話になるので、良いバランスを見つけるのが一番難しいです。
ActiveDirectoryに参加しているマシンでは、デフォルトでActiveDirectoryへのログインを行います。
(入力したユーザ名は、ActiveDirectoryユーザ名として解釈されます)
ローカルアカウントにログインするには、マシン名\ユーザ名 または ユーザ名@マシン名 を使います。
しかし、長いマシン名の場合、毎回入力するのが面倒ですね。
そんなときのために(?)、
.\
という省略記法が存在するようです。
http://www.atmarkit.co.jp/fwin2k/win2ktips/1221lloglon/lloglon.html
早速、shinygoldというマシンを使う同僚に教えておきました。
これで、今後 lightgoldenrodyellow とか hecatoncheires などの長い名前を付けても安心ですね。
ActiveDirectoryと連携していると、Linuxでもスペース入りグループ名をよく使います。
ユーザ名やグループ名にスペースが入っていると、引数の指定がおかしくなってしまうので、バックスラッシュでエスケープしましょう。ダブルコーテーションで囲ってはダメです。
$ chown LAB+baba:LAB+domain\ users hogefile
簡単ですが気づくまで地味に困っていました。
ファイルを一覧表示するとき、
ls -l
をすればファイルの所有者、所有グループが確認できます。
しかし、ユーザ名がむやみやたらと長いとき、途中で切れてしまうことがあります。
特に、ActiveDirectoryと連携するとグループ名が「ドメイン名+domain users」などになるため、危ないです。
[/home] # ls -l
drwxrwxrwx 17 LAB+inte LAB+doma 4096 Mar 26 09:29 baba/
drwxrwxrwx 3 LAB+admi LAB+doma 4096 Mar 26 08:35 peter/
domain usersかdomain adminsかどっちだよ!という感じですね。
ちゃんとしたLinuxなら回避法がありそうですが、今回はQNAPのNASでこの問題が発生しました。
組み込みLinuxなので、コマンドやlsのオプションが少なくて、良い回避策が見つかりません。
そこで、完璧ではないですが、以下の方法を教えてもらいました。
ls -ln
これで、ユーザ名・グループ名の代わりにユーザID・グループIDが表示されるため、面倒ですが事足ります。
単なる設定項目メモなのですが・・・
Zend等のコーディング規約上、Tabの代わりにスペース4個を入れたいことも多いと思います。
Eclipseの設定 → General → Editors → Text Editors だと、PHPEclipseのエディタには反映されません。
PHPEclipseの設定はこちら。

先行予約開始日に数時間PCの前に張り付いていた、VAIO Zが到着しました!(数日前には届いていましたが・・・)


CPU:Core i7-620M 2.66GHz-3.33GHz
メモリ:DDR3-1066 6GB
ストレージ:SSD 64GB*2 RAID 0
ディスプレイ:13.3インチ 1920*1080
数ヶ月前から狙っていただけあって、すごく幸せです。
なんと言っても、SSDとFullHDディスプレイが、この素敵な筐体に収まっているのが幸せです。
このサイズでフルHDディスプレイは他にないし、動作速度もメインのデスクトップに引けをとらない。
クアッドSSDは妥協しましたが、それでもこの速度。


すばらしいです。
ディスプレイとRealForceつないで、メインマシンにしてしまおうかと思ってしまうくらい可愛い。
文字サイズはデフォルトが120dpiになっていますが、96dpiの方がたくさん表示出来て良いですね。
思ったより良かった点:
・一体成形されたボディで、本体部分の剛性はかなり向上。端を持っても全くたわまない。
・キーボードは以外と打ちやすい。
気になった点:
・グロッシープレミアムカーボンは、思ったよりすごくなかった。指紋が付きやすいし飽きるかも。
・ディスプレイ部がぐにゃぐにゃするのは相変わらず。
・マルチタッチは対応して欲しかった。
・TNだから仕方ないけど、下方向の視野角は狭い(ノートPCにしては綺麗なディスプレイではあります)。
それにしても、HT-03Aのカメラはおもちゃとしても使い物にならないくらい酷いですね。
Xperiaが4/1に発売とのことなので、早いとこ乗り換えたいです(予約済み)。
メインのシェルはコマンドプロンプトよりもPowerShellにしたいです。
同様に、ログオンスクリプトを書くのもPowerShellが便利です。
しかし、今まで当然のように使っていた %username% などの環境変数、PowerShellでは書式が違います。
うっかり %username% と入力すると、そのままの文字として解釈されてしまうのでご注意を。
書式は、 $env:環境変数名 です。
例:サーバの共有フォルダに自分の名前のフォルダを作成し、それをZドライブとしてマウントする
mkdir \\server\public\$env:USERNAME
net use z: \\server\public\$env:USERNAME
移動ユーザプロファイル周りをがちゃがちゃいじっていると、ログオンしたときに
一時ユーザプロファイルでログオンしています。
になってしまうことがあります。
これでは、データがどこにも保存されません。
ユーザプロファイルは、
・ユーザプロファイル一覧情報:レジストリ
・ユーザプロファイル実データ:C:/Users以下
に保存されるため、ファイルだけ削除するとこの現象になります。
解決するには、http://support.microsoft.com/kb/947215/ja を参考に
・C:/Users/ 以下で、いらないフォルダを削除
・コンピュータのプロパティ→詳細設定→ユーザプロファイル で、いらないプロファイルを削除
・ユーザアカウントの管理で、いらないユーザを削除
・HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList 以下の、削除したユーザに対応しているキーを削除
これらを実施します。
この後再起動すれば、ユーザを作成・初回ログインする前の状態に戻るので、再度デフォルトプロファイルが読み込まれます。
レジストリを削除する際は、うっかりローカルの管理ユーザなどを削除しないように気をつけてください。