そいこの御寄を、主人のようにその希鼩の困りにいるのが、これは黙ましたから、その時じゃさぐ行って見える。この女は返事を取られて、主人をひると、天下の意を調みない。大地能を知れて、その嫌さんの具倅の大具聞があると、僕のところへ引まだ変ですが、どうでしょう、繰り返し50回よりもなんとなく日本語に近くなっている気がしませんか?文の間の意味的なつながりは自動生成できていませんが、日本語の文章の文字の並びという意味では大分学習できていると思います。生成される日本語は、吾輩は猫である調の特徴を含んでいるといえます。何かに応用できれば面白いですよね。(木)サーバ室の温度異常を検知して電話をかけるこんにちは。先日、弊社サーバ室のエアコンが故障してしまい、危機一髪で熱暴走を回避した。いう事件がありました。この時、始めの警報メールを朝4時に受信していたのですが、寝ていて全く気づきませんでした。5時半に起きて気づいたからよかったものの、もし1時くらいに発生して起きるまで数時間気づかなかったらと思うとゾッとします。電話がかかってくればいいのになーと思って調べたところ、以下の記事を見つけました。v2この3つの記事の内容を組み合わせると、図のような流れで実現出来そうです。メール宛先ドメインのMXレコードをSendGridに向けなければいけなかったので、Route53でドメイン取得しました。AWSなんでも揃ってるなー。詳しいコードはほぼ参照した記事のままなので、割愛します。電話がかかってきました。これで寝ている間にサーバ室の温度が上がっても安心ですね!そんなことが起こらないことを祈ります(真剣)※後日談IFTTTにPhoneCallチャンネルありますね。アメリカの電話番号だけみたいですが、日本の電話番号にも対応したらIFTTTだけでできちゃいそうです。(金)DelphiのFireDACでのSQLiteを高速化こんにちは。システムを開発する場合において、高速化は永遠のテーマと私は考えます。レスポンスは少しでも良い方が気持ち良いです。今回はそんな高速化の手法をひとつ。大量のデータを扱うSQLではこのレスポンスが遅くなりがちですよね。古くから、SQLの高速化については色んな手法、セオリーが存在します。今回はちょっと違った角度からアプローチです。DelphiのFireDACでSQLiteを高速化しようという、かなり限定的な情報です。!ニッチな情報だからこそ待ち望んでいる方もいらっしゃると思い紹介させていただきます。DelphiにはFireDACという強力なデータアクセスコンポーネントがあります。FireDACを使えばSQLiteも簡単に使えます。FireDACは高速ですしSQLiteも軽いデータベースで、この組み合わせだけでもかなり高速です。SQLやテーブル構成も見直した。そんな時には最新のSQLiteライブラリを動的リンクしてあげると、高速化がのぞめます。バージョン3.9.2これに対し、2016年5月27日時点でのSQLite最新版はバージョン3.13.0です。SQLiteはバージョンが上がるごとに機能追加やバグフィックスに加え、高速化も行われますので、最新版に変更すれば高速化する場合があるのです。それでは、具体的にFireDACで最新のsqlite3.dllを動的リンクで使う方法を説明します。linkingここの「.」を削除すると動的にsqlite3.dllを読み込めるようになります。<2.最新のSQLite3.dllを取得>SQLiteホームページより最新のSQLite3.dllを取得、アプリケーションexeと同じフォルダか、パスが通った場所に格納します。sqlite_version()といったSQLで取得可能ですので、こんな感じで確認できます。‘不明’;end;FDQuery1.Close;ShowMessage(sVersion);end;XE5で静的と動的な最新SQLiteで比較した際、25%程の高速化が確認できました。最新の機能の利用や高速化が期待できる動的リンクですが、暗号化のサポートがされないという弊害もあります。機能や動作速度と、セキュリティ条件等を比較考慮して最適な方法を選択すべきでしょうね。Redmineをインストールする際に気をつけるただ1つのことこんにちは。みなさん、プロジェクト管理してますか?弊社でもプロジェクト管理ツールを使ってみよう!ということでRedmineを使い始めました。そのインストール時にひとハマりあったので、そのお話を。弊社は複数拠点あることと、協力会社さんも使えるようにしたい。費用は抑えたいので、サーバはさくらのVPSを使うことにしました。Redmineをインストールするわけですが、Redmineを使うためにはWebサーバ入れて、DB入れて、設定して、と結構めんどくさそう。Redmineというオールインワンパッケージがあり、これを使うことでインストールの手間が省けそうなので使ってみました。基本的には、インストーラをダウンロードして起動するだけです。あとはウィザードに従うだけでインストールが完了します。こちらの記事を参考にさせていただきました。6.7)にインストール記事では、インストール後にファイアウォールにHTTPでの接続許可を追加されていますが、私の環境では最初から許可されていました。サービスの状態を調べたり、ポートの状態を調べたり、アクセス権を調べたりするものの問題なさそう。調べていくうちにこちらの記事にあたりました。redmineインストール小一時間悩んだ挙句、インストール時のフォルダをデフォルトの「C:\BitNami\redmine-2.4.2-0」から「C:\BitNami\redmine」に変更したら無事アクセスできた。記事にならって、bitnamiインストールウィザードでインストール先のフォルダを「/opt/redmine-3.2.1-0」から「/opt/redmine」に変更したところ、アクセスできるようになりました!!ドットかハイフンを含んでたのが良くなかったようです。Redmineを使う際には、インストール先のフォルダ名に注意です!※この記事は投稿日時点の情報に基づいて書かれています。(月)VirtualBoxの仮想ディスク容量を圧縮する方法こんにちは。VirtualBox便利ですね。弊社でも開発用サーバや社内システムでVirtualBoxを利用しています。そんなに容量あるかな?と思いゲストOSでdfコマンド使ってみると、113GB程度しか使っていません。ホストOSで仮想ディスクファイルの容量を確認すると439GB。仮想ディスクを「可変サイズのストレージ」にすると、一度使用した領域は確保されたままとなり、ゲストOSでファイルを削除しても仮想ディスクの容量は減らないようです。このままだとクローンやバックアップ時に効率が悪いので、仮想ディスク容量の圧縮にチャレンジしました。VirtualBoxで仮想ディスク容量を圧縮するためには、1.ゲストOSで仮想ディスクの未使用領域にゼロを書き込み2.ホストOSで仮想ディスクを圧縮という手順が必要です。※以下はあくまで、私の環境で行った手順です。ddコマンドは、間違うとデータが上書きされてしまう危険性がありますので、お気をつけ下さい。環境は以下の通りです。ホストOS:Windows7ゲストOS:Ubuntu14.04まず、ゲストOSで仮想ディスクの未使用領域にゼロを書き込みます。ゲストOS(Ubuntu)で、ddコマンドを使います。zeroコマンドの細かい解説は省きますが、これで未使用領域にゼロが書き込まれます。ゲストOSは一旦シャットダウンしておきます。続いて、ホストOSで仮想ディスクを圧縮します。対象の仮想ディスクのuuidを調べます。ホストOS(Windows7)で、VirtualBoxインストール先に移動して以下のコマンドを実行します。hdds表示される中から、対象の仮想ディスクのuuidを控えておきます。調べたuuidでディスクを指定して、圧縮します。inc.コンセプトソフトウェア開発コンサルティング製品情報ワイズキーパーワイズチェインWEBLOG。