C-limber's highへようこそ。
C-limber's highは山登りのサイトではなく、福岡システム開発WEB制作会社 C-limber(クライマー)株式会社の技術メモブログです。
福岡システム開発ホームページ制作をお探しの方はお気軽にご相談下さい。

2015年7月1日水曜日

PHPカンファレンス 福岡 2015に行ってきました

13:23 Posted by Unknown , No comments
こんにちは!
PHPerの井口です。

PHPカンファレンス 福岡 2015に行ってきました!
http://phpcon.fukuoka.jp/

福岡で初のPHPカンファレンスということで、
PHPの大きなイベントに地元で参加できることの幸せを感じつつ
それぞれの発表を聴かせてもらいました。


聴いた発表

================================
全てを結ぶ力郡山 昭仁 (@koriym)
PHP20周年。PHPの名前に隠された”Hypertext”その秘密。Webアプリケーション開発者の知らないWebの原則、Webの力。
YOUR.Sunday郡山 昭仁 (@koriym)
フレームワークの製作を通じて体得した知見を共有し、これからあなたがフレームをつくるとしたら?を仮定してこれからのWebエンジアリングのあり方を考える。
PHP × AWS でスケーラブルなシステムをつくろう井上 泰治 (@inufs)
東急ハンズの社内システム/サービスで使っている、しくみ、事例を紹介しながら、PHP × AWS で運用しやすい、スケール可能なシステム構築について話したいと思います。
phpspecで始めるBDD竹澤 有貴 (@ex_takezawa)
phpspecの利用方法とビヘイビア駆動開発のポイントを解説します
behatによるRESTFUL APIのテスト、及びbehat extensionの作り方富所 亮 (@hanhan1978)
Restful APIのテストを例に出しつつ、behat extensionの自作方法をレクチャーします。 内容的には中級者向けですが、なるべく初心者でもステップを踏めば、自作可能なように努力します。 PHPにおけるBDDの裾野が少しでも広がればと思います。
オープンソースな帳票ツールを作りました日高 克也 (@hidakatsuya)
オープンソースな帳票(PDF)ツール Thinreports for PHP の紹介。シンレポーツと呼びます。特徴としては、マルチプラットフォーム対応のデザイナで簡単にレイアウトが作れること、日本語表示ももちろん OK なこと。使い方や今後のロードマップなどを紹介します。
Laravel5を使って開発してみた野田 健夫
Laravel4からディレクトリー構造を刷新して見た目の印象が変わったLaravel5。このLaravel5を使って開発した事例を紹介したいと考えています。
Phalcon PHPフレームワーク Sense of Use近藤 和宏
Phalcon PHPフレームワークの紹介や使用感などを話します。
PHPで学ぶ仮想マシン型正規表現エンジンの仕組み久保田 光則 (@anatoo)
PHPで実装した正規表現エンジンを紹介しながら仮想マシン型正規表現エンジンの仕組みと実装方法を解説していきます。
PhpStormで始める快適PHP開発生活山本 裕介 (@yusuke)
話題のPHP IDE、PhpStormの主要機能についてデモを交えながらご説明いたします。
とある事業の脱レガシー 〜技術的負債を取り戻すプロジェクトの物語〜田中 ひさてる (@tanakahisateru)
もっともイケてないタイプの架空のPHPプロジェクトを例に取り、いまどきのWeb開発では一般的にどうしたらいいのかを、未経験者でも楽しくわかりやすい形でお伝えできたらと思います。これから始める人、うっかりイケてない始め方をしちゃった人に、経験者から、今のうちに知って欲しい、PHPプログラミングの周辺の基礎を。
================================


どの発表も大変勉強になりました。

すでに弊社で取り入れているaws周りではより規模の大きな事例での使い方を教えていただき、自分たちのやっていることの延長線上で、大規模なシステムを動かせることを再確認できましたし、その中でどういう問題にぶつかり、どう対処していくか、などのお話は大変勉強になりました。

弊社ではYii Frameworkをメインにつかっていますが、Larabel,Phalconの情報も仕入れることができましたので、勉強になりました。

twitterで知っている(フォローさせてもらっている)有名な方々を生で見て、お話をお聞きすることができて、大変刺激になりました。

懇親会では、今、世界で流行っている謎のフレームワーク、PHPixie(http://phpixie.com/)の謎ぶりも勉強させて頂きましたw

今、世界で流行っているフレームワーク、ほとんどLaravelが1位なんですが、
↓こちらのサイトのデータです
Best PHP Framework for 2015 – SitePoint Survey Results
ちょっとずるいなと思うのが、

Yii1とYii2を分けている!!

点です。
我らがYiiFrameworkも バージョンで分けられなければけっこういい勝負してたんではないかと思いますが、
いかがでしょうか??
ちょっと悔しい気分です。


PHP愛にあふれるエンジニアの集いは珍しい(?)ので
PHP使いの僕にはすごく幸せなカンファレンスだったのですが、
一番嬉しかったのは、弊社がYii Frameworkを使うきっかけになった田中 ひさてるさん(@tanakahisateru)にお会い出来たことです。

今回のPHPカンファレンスを運営されている方々の輝かしい姿をみたり、
登壇されたり、LTしたりされている方々のエネルギーに満ちた姿を見て、
いつか自分も何か発信したり、発表したりして、PHPコミュニティに貢献できればいいなと思いました。

PHPカンファレンス福岡2015、すばらしい集いでした。
この刺激をもとに、さらに精進したいと思います。

--------------------------------------
弊社では独自管理画面によるシステム開発、Web制作など幅広く対応しております。
お気軽に問い合わせ下さい。
福岡のシステム開発・Web制作 C-limber(クライマー)株式会社

2015年6月3日水曜日

[Ruby on Rails]Mac OSX のhomebrewでRailsの環境を作る

21:18 Posted by 池田 , No comments
homebrewをアップデート


$ brew update
$ brew install rbenv ruby-build
$ echo 'eval "$(rbenv init -)"' >> ~/.bashrc
$ source ~/.bashrc $ rbenv --version rbenv 0.4.0
インストールされているRubyのバージョンを確認
$ rbenv versions
* system (set by /Users/eikichi/.rbenv/version)
2.1.3
Ruby の新しいバージョンが有るか確認
$ rbenv install -l
2.1.0
2.1.1
2.1.2
2.1.3
2.1.4
2.2.0-dev
2.2.0-preview1


新しいバージョンの Ruby をインストール
$ rbenv install 2.1.4
Downloading ruby-2.1.4.tar.gz...
-> http://...
Installing ruby-2.1.4...
Installed ruby-2.1.4 to /...

プロジェクトディレクトリに移動してローカルのRuby を設定
$ cd /path/to/project
$ rbenv local 2.1.4

プロジェクトディレクトリに .ruby-version ファイルが生成される
ローカル Ruby のバージョン確認
$ rbenv version
2.1.4 (set by /...

Rails のローカルインストールの準備
ローカル Ruby に Bundler のみをインストール
$ rbenv exec gem install bundler
$ rbenv rehash

Gemfile 作成
$ rbenv exec bundle init

Gemfile 編集
$ vi Gemfile

編集内容
source "https://rubygems.org"
gem "rails", "4.1.7" # 出来るだけ開発開始時の最新バージョンを指定

Rails を vender/bundle ディレクトリ以下にインストール
$ rbenv exec bundle install --path vendor/bundle

インストールされた Gem を確認
$ rbenv exec bundle list 
Gems included by the bundle:
  * actionmailer (4.1.7)
  ...

Rails プロジェクト作成
MySQL を利用
$ rbenv exec bundle exec rails new project-name --skip-bundle -d mysql
※--skip-bundle を必ず指定すること。指定しないとと bundle install が発動し、ローカル Ruby 自体 に Gem がインストールされてしまう


Rails をローカルインストールするために使用した Bundler 環境を削除
$ rm -f Gemfile
$ rm -f Gemfile.lock
$ rm -rf .bundle
$ rm -rf vendor

Rails プロジェクトセットアップ

Rails プロジェクトディレクトリに移動
$ cd project-name

必要に応じて Gemfile などを編集
Bundler で必要な Gem をインストール
$ rbenv exec bundle install --path vendor/bundle

Gitの管理対象から vendor/bundle ディレクトリを外す
$ echo '/vendor/bundle' >> .gitignore

Rails プロジェクト起動
$ rbenv exec bundle exec rails s
bundleコマンドはgemコマンドでインストール。
"rbenv exec" は「システムrubyのgem」ではなく「rbenvで現在有効なrubyのgem」であることを明記する表記。
"gem" がrbenvで有効なrubyのgemを指している場合は省略可能。

2015年5月27日水曜日

2015年4月14日火曜日

[Cake2]Model内でsessionを使うには

14:33 Posted by Unknown , , No comments
井口です。
cake2でのお仕事中です。

自由なYiiから抜けだしてCake2やると
やっぱり窮屈に感じてしまいます。

Model内でのSession取扱い、というか使い方
cakephp - Accessing Session in Model - Stack Overflow

App::uses('CakeSession', 'Model/Datasourse');
$session=new CakeSession();

// ここからはsession変数使って色々書ける
$session->check('hoge');

cake2とYiiを比べてみて思うのは、
cakeのほうがフレームワークとしての歴史が長い分、色々な書き方で書けるような気がしました。
でもただそれが、「こういう書き方でも書けてしまうんだよね」的なものなのかなという印象も受けました。
とっちらかってるイメージです。
ViewやModelが命名規則や、「data」変数で部分部分で自動でくっついて自動化されてますが、
それが逆にちょっと複雑になると、「逆にめんどくさい」状態になってしまうのかなと感じてます。
もっとcake2勉強したら違うのかもしれませんが。
cake3ではオブジェクト指向色が強まるらしいですが、cake2とcake3が違いすぎてはまた逆に結果的にめんどくさくなるのではないかなと思います。
view側も配列もりもりで、少々見づらいですね。

逆にYiiはcakeに比べてすごくシンプルです。
View内でModelをぶん回すのは当たり前。
Model内に機能を追加しまくって、そのModelを各所でぶん回すっていうシンプルで強力な作りだと思います。
ComponentにもModelさえ渡しちゃえば、結構自由に戦えちゃう感じです。
Fat Model。Modelありき。
余計にYiiが好きになりました。

弊社もYii2に近日移行予定です。
楽しみです。

以上です。


--------------------------------------
弊社では独自管理画面によるシステム開発、Web制作など幅広く対応しております。
お気軽に問い合わせ下さい。
福岡のシステム開発・Web制作 C-limber(クライマー)株式会社

2014年9月9日火曜日

[MYSQL]date型の最大値

19:09 Posted by Unknown No comments
date型のフィールドに最大値をデフォルト値として持たせたいとき

date型の最大値は'9999-12-31'です!

以上〜

2014年7月31日木曜日

[PHP]csvへエクスポートする際の注意点

0:47 Posted by Unknown , No comments
井口です。

phpにexportする際の注意点を備考録。

・各項目の中のダブルコーテーションはシングルコーテーションに変更もしくはエスケープ
・各項目はダブルコーテーションで囲む
・ゼロバインディング(ゼロ埋め)する項目は、ダブルコーテーションで囲ったあとにイコール(=)を頭につける

$zero_binding_text='=' . '"' . sprintf("%05d", $target_text) . '"';

以上です。


--------------------------------------
弊社では独自管理画面によるシステム開発、Web制作など幅広く対応しております。
お気軽に問い合わせ下さい。
福岡のシステム開発・Web制作 C-limber(クライマー)株式会社

2014年7月1日火曜日

[CSS][sass]source mapsの導入

17:06 Posted by Unknown , No comments
sass,compassを使って作業してたら
chromeのDeveloper Toolsでcssの確認した際に
どのscssファイルに記載しのか知りたくなることがあります。
そういう時のメモ

参考サイト
google chrome - Chromium: missing sass support - Stack Overflow
Sass - Compassのsourcemap出力 - Qiita

「souce map sass」で検索すると
いろんなサイトが出てきますが、古い記事が多いです。

chrome側の設定の話が出てきた時は古い記事です。

chromeのv30以降では標準でsassに対応してるらしいです。

手順
1. sassのアップデート
source mapへの対応はsassのv3.3.0以降のみとなるので、
まずそれをインストール
gem install sass -v '>=3.3.0alpha' --pre
結構時間かかりますが辛抱強く待ちましょう

---compassを使わない場合はこれで終了
sass --watch --sourcemap sass/styles.scss:styles.css

compassを使う場合は
Compassは現時点ではsourcemapの出力に正式対応していないのでalpha版をインストールする
2.compassのアップデート
gem install compass --pre

3.compassのconfig.rbに一文追加
sourcemap = true

以上でchromeのDeveloper Toolsにsassのファイル名・行番号が 出力されるようになります。


--------------------------------------
弊社では独自管理画面によるシステム開発、Web制作など幅広く対応しております。
お気軽に問い合わせ下さい。
福岡のシステム開発・Web制作 C-limber(クライマー)株式会社