オープンソースカンファレンス2016 Fukuoka

オープンソースカンファレンス2016 Fukuokaに行ってきました。
場所が、百道のSRP。
ヤフオクドームで誰かのライブが開催され、百道の沖合ではアメリカズカップという、とんでない状況。
自宅からSRPまで2時間近くかかってしまいました。
帰りは博多駅まではわりとすんなりいったのですが、空港通りが派手な渋滞…

ということで、最初のセッションには間に合わず。
Raspberry Piに関するセッションto,IBMのワトソンさん(クラウドサービス)の話を聞いてきました。

Raspberry Piは、最初のバージョンをイギリスから通販で買ったら、半年近く待たされた上に初期不良という仕打ちで、そこでくじけてしまったのでした。
が、今回話を聞いたら、性能はかなり上がっているし、日本国内製造になっているとか。

mpdを使いたいというのもあるので、取りあえず、一台買ってみようかと思います。

また、某案件で手こずっているスマホアプリへのpushについても、Niftyのmobile backendの話が聞けたのが良かったです。

カテゴリー: サーバーまわり, Webコンテンツ, PCオーディオ | オープンソースカンファレンス2016 Fukuoka はコメントを受け付けていません。

OS Xのアップデート

OS Xに関して、App Storeから購入・インストールしたアプリのアップデートがあると、多くの場合、かなり時間がかかります。
そんなにたいしたファイルサイズでない場合でも、ダウンロードに結構時間がかかります。
今回のXcode 8.1では、所要時間が1日以上と表示されて、さすがにそれはあり得ないだろう思いまして、ちょっとググってみました。
やはり、同じような目に遭っている人は多数いるようで、解決策らしいものもいくつかありました。
そのうち最も簡単にできそうな、iTunes Helperをkillするというのを実践してみましたところ…Xcodeのアップデートも20分かからず終わりました。
めでたしめでたし。

iTunes Helperが動いていないと、それはそれで不便そうなので、App Storeからのアップデートの時だけアクティビティモニターからkillするのがいいかな。

カテゴリー: その他 | OS Xのアップデート はコメントを受け付けていません。

squidとCakePHPのCake\Network\Request::clientIp

ちょっとひっかかったので、備忘録代わりに…

CakePHPで、アクセス元のIPアドレスを取得する場合、Cake\Network\Request::clientIpを使用することが多いと思います。
http://api.cakephp.org/3.3/class-Cake.Network.Request.html#_clientIp
http://api.cakephp.org/2.4/class-CakeRequest.html#_clientIp

Proxy(squid)経由でアクセスする場合、設定ファイルsquid.confの
forwarded_for off
とすると、httpヘッダの HTTP_X_FORWARDED_FOR に unknown がセットされてしまいます。
Cake\Network\Request::clientIpは、このunknownという値を取得してしまうのでよろしくないようです。

社内LANなどからの外部アクセスを、社内のPROXY Server経由でアクセスするような環境では、
forwarded_for
に、deleteもしくはtransparentを設定しておかないと、HTTP_X_FORWARDED_FOR にLAN側のIPアドレスが設定されたり、unknown となったりして、IPアドレスを正しく認識されない場合があるようです。

カテゴリー: サーバーまわり, Webコンテンツ | squidとCakePHPのCake\Network\Request::clientIp はコメントを受け付けていません。

OS Xのdistnotedの暴走

iMac(OS X 10.11)で、スピンカーソルが回って、応答不能になることがあります。
どうも、distnotedというプロセスが暴走している模様です。
10分〜1時間くらい放置すると、直るのですが、そうそう呑気に待っていることもできません。

で、思いついた対処方法ですが、他のMacからSSHで接続して、ターミナルからdistnotedのプロセスを殺すというものです。

とりあえず、これでうまくいきそうです。多分。。。

カテゴリー: その他 | OS Xのdistnotedの暴走 はコメントを受け付けていません。

mpcbridge ver 4.3

mpd(Music Player Daemon)のリモコンとして動作するWebアプリ、mpcbridge ver 4.3をリリースしました。

mpcbridgeの詳細は、こちらをご覧ください。

↓↓ダウンロードはこちら
https://mpcbridge.fourthgate.jp/download/mpcbridge.zip

以下の修正、変更を行っています。
1) 検索の演奏家名の前方一致と部分一致が逆だったのを修正
2) 五十音順検索に「ら行」がなかったのを修正
3) Ubuntu 16.04のphpとMySQLへの対応

Ubuntu 16.04では、PHPのバージョンが7、MySQLのバージョンが5.7になっています。
PHP 7ではsplit関数が廃止になっていますが、splitを使っている箇所があって、そこでエラーになっていました。
また、MySQL 5.7では、デフォルトではONLY_FULL_GROUP_BYがオンにかわったために、group byしているところでエラーになっていました。
これらの問題を修正しています。といっても、MySQLのほうは根本的な対応ではなく、ONLY_FULL_GROUP_BYをオフにしているだけですが。

以前の変更履歴は、別途「変更履歴.txt」を参照ください。

なお、CakePHP2.X+jQuery mobileによるmpcbridgeはこのバージョンで最後とします。
現在、CakePHP3+Bootstrapに変更中です。
いつになったら公開できるかわかりませんが…。
それ以前の問題として、mpcbridgeを使ってくださっているかたがいるのかわかりませんが(笑)

カテゴリー: PCオーディオ | mpcbridge ver 4.3 はコメントを受け付けていません。

Mac miniにOS X Serverをインストールしたお話

OS X 10.11にOS X Serverをインストールしたので、その備忘録。

クライアントがOS X 10.11の場合、ファイル共有へはafpではなくsmbで接続する。
ボリューム間のバックアップにTimeMachineではなく、rsyncを使うと、日本語ファイル名が文字化けするので、brewなどで提供されているrsyncをインストールする必要があります。
→実は、Linuxでファイル共有していたボリュームの中身をコピーする時に気づきました。
ググったら、山のように出てきました(笑)

nfsははじめから動いているので、
/etc/exports
を記述すれば、nfsでのファイル共有もできます。
同様に外部のLinuxなどのボリュームもnfsでマウントできます。

Xcodeをインストールすると、gitサービスが提供されます。
subversionはないみたいなので、別途インストールしないといけません。

TimeMachine用とファイル共有用のアカウントは別々にできます(というかしたほうが良いみたいな感じ)

Windowsクライアントからサイズが大きなファイルをコピーした際に、ファイルが勝手にロックされることがあります。
https://support.apple.com/ja-jp/HT203574
この説明だけでは分かりにくいが、Serverアプリでサーバを選択し、ストレージのタブから問題のボリュームに対してアクセス権の設定と継承を行うようにしないといけません。
特にOS X Serverを動かしている管理者ユーザが、共有しているボリュームに対して、デフォルトでは編集・削除の権限がないみたいなので、かなり焦りました。

また、Windowsクライアントから大きなファイルを共有ボリュームにコピーした場合、そのファイルをサーバー側のMacで開けないことがあります。
もちろんクライアントでも開けません。
サーバーのFinderで、くだんのファイルを選択して、「情報を見る」を実行すると開けるようになりました。
いわゆる「Finder情報」(EA属性)が作成されていない状態だからとかだろうか?

以前のOS X Serverでは、clamavやpostgresqlが入っていたと思ったんだけど、無くなったのかな?

カテゴリー: その他 | Mac miniにOS X Serverをインストールしたお話 はコメントを受け付けていません。

Unix考古学の夕べ in 福岡

https://saku-love.doorkeeper.jp/events/46304

「Unix考古学の夕べ in 福岡」でお話を聞いてきました。
参加者は、IT系イベントの中では屈指の平均年齢の高さでした(笑)
先日のPHPカンファレンス福岡2016では、参加者の平均年齢はぱっとみた感じでは30代前半くらいの感じでしたが、今回のそれはどうみて40代。白髪混じりのかたも結構いました。

今回の「Unix考古学の夕べ」は3回目らしく、過去の内容と重複しないようにということから、Unix以前のMultics中心のお話でした。
実は僕もMulticsについては全く知りませんでした。
Multicsは、ベル研、MIT、ゼネラルエレクトリック(後ハネウエル)の三社で開発をはじめたが、途中でベル研が抜けたことがUnix開発のきっかけとなったとか。

また、久しぶりにApollo Domainという名前を聞きました。
僕が新卒で入社した会社(諏訪精工舎)でCADが導入されたのですが、それが動いていたワークステーションがApollo製でした。
Domain/OSというのも聞いたことがありましたが、これがPascalで書かれていたとは知りませんでした。かなりびっくり。
というのも、僕が大学の講義で習ったプログラミング言語がPascalだったのです。
当時、Pascalはプログラミング言語の学習には適しているが、実用的ではないなんていう話を聞いていましたし。
もっとも、その後発表されたAppleのMacintoshもPascalがメインでしたし、Macで動くLightspeed Pascal(後にThink Pascal)やボーランドのTurbo Pascalなんかが出てきましたが。
確か、初期のPhotoshopも、Pascalで書かれたいたと記憶しています。

懐かしいお話が聞けて、楽しかったです。
遅まきながら、「Unix考古学 Truth of the Legend」を買うことにします。

カテゴリー: その他 | Unix考古学の夕べ in 福岡 はコメントを受け付けていません。

mpcbridge ver 4.2

mpd(Music Player Daemon)のリモコンとして動作するWebアプリ、mpcbridge ver 4.2をリリースしました。

mpcbridgeの詳細は、こちらをご覧ください。

↓↓ダウンロードはこちら
https://mpcbridge.fourthgate.jp/download/mpcbridge.zip

以下の修正、変更を行っています。
1) フリーテキスト検索に、ジャンルと年を追加しました
2) 一部のJavaScriptにミスがあったので修正しています
3) phpの警告が出ていたのを修正しています
4) 五十音検索に「ら」行が抜けていたのを修正
5) 日本人アーティスト名情報を追加しています

以前の変更履歴は、別途「変更履歴.txt」を参照ください。

カテゴリー: PCオーディオ | mpcbridge ver 4.2 はコメントを受け付けていません。

CakePHP 3.2でPEARのCalendarを使う

本来であれば、Date & Time ClassとTime Helperを使うべきなのでしょうけど、使い慣れたPEARのCalendarをなんとか使おうと頑張ってみました。

四苦八苦しましたが、以下のようにすれば、いけるようです。

composer.jsonに以下の記述を追加します。

require-devの項に、
“pear/calendar”: “dev-trunk”
を追加します。

autoloadの項に、
“classmap”: [
“vendor/pear/calendar/Calendar”
]
を追加します。

これで、composerをアップデートすると、vendorディレクトリに、PEAR/Calendarがダウンロードされます。

あとは、コントローラーの先頭で、例えば、
use Calendar_Month_Weekdays;
とすればOKです。

が、そもそも、PEAR/Calendarはとっくにメンテナンスが終わっているので、これを使い続けることのほうが問題なんでしょうけど。。

とりあえず、備忘録代わりということで。

カテゴリー: Webコンテンツ | CakePHP 3.2でPEARのCalendarを使う はコメントを受け付けていません。

お仕事募集中です

現在、とても暇しております。
つきましては、絶賛お仕事募集です。

主にPHPによるWebアプリをやっております。

カテゴリー: 仕事 | お仕事募集中です はコメントを受け付けていません。