サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
ノーベル賞
www.1x1.jp
Shin x blog Advent Calendar 2013 の 17 日目です。 「プログラマーには 2 つのタイプがいる。ブロックを作るか、使うか、だ。」 レゴブロック型プログラミング プログラミングをやるようになって、思ったのは、部品を組み合わせていく感覚が、子供の頃、夢中になって遊んでいたレゴブロックに似ているなあということです。 ブロック(部品)は多数用意されており、それらを組み合わせることで何かを作っていきます。ただプラモデルなどと違うのは、何度でもバラして、また組み直せるということ、そして、ブロックはプリミティブなものであり、組み合わせ方によっては全く異なるものを作ることもできます。 扱う言語や環境によって、そのブロックの粒度は変わっていきます。C がレゴブロックなら、LL は、ダイヤブロックくらいかもしれません。ただ、それらを組み合わせて何 かを作るということは同じです
Shin x blog Advent Calendar 2013 の 16 日目です。 最近話題の Docker 色々と触っています。 触ってみる中で、普段の開発現場でどのような用途に使えそうなのかを考えています。こうだ!という結論が出ているわけではないのですが、一度書き出してみます。 前提 Webシステムの開発現場を想定しています。 言語は普段使っている PHP ですが、内容にはあまり関係無いです。 開発機には Mac OSX を使っています。 検証環境(サンドボックス) まず一番に思いつくのが、検証環境としての利用です。Docker を使えば、OS のみがインストールされている状態のコンテナを手軽に作成できるので、そこでミドルウェアのインストール、設定などを自由に行い、検証が済んだら、破棄します。 OSX 環境では Docker は動かないので、Vagrant + VirtualBox
2014 年も残すは、あと 1 週間になりました。今年も様々なイベントで登壇しましたので、発表したセッションと資料をまとめてみます。 写真提供:久岡写真事務所 登壇イベント 2014/04/04 「わかってるフレームワーク Laravel」Laravel勉強会福岡 「わかってるフレームワーク Laravel」とうタイトルで発表しました。 Laravel で、とあるプロジェクトの開発が終わった後だったので、Laravel への良さを主観たっぷりでお話しました。 翌日の Laravel Meetup Tokyo と合わせて、一人 Laravel Japan ツアーでした:D 2014/04/05 「知っておくべき Auth オートログイン」 Laravel Meetup Tokyo vol.3 Laravel 4.1.25 以前にあった Auth フィルタ利用時のオートログインの問題点について
Home > Advent Calendar 2013 | AWS | PHP | 開発環境 > CentOS 5, 6 / Amazon Linux で PHP をパッケージインストールする方法まとめ Shin x blog Advent Calendar 2013 の 15 日目です。 Cent OS 5, 6 / Amazon Linux にて、PHP の各バージョンを yum でインストールする方法をまとめてみました。 CentOS 6 CentOS 5 Amazon Linux CentOS 6 PHP 5.3 CentOS 6 では、公式パッケージが PHP 5.3.3 なので、公式のリポジトリからインストールできます。 $ sudo yum -y install php (snip) $ php -v PHP 5.3.3 (cli) (built: Dec 11 2013 0
Shin x blog Advent Calendar 2013 の 14 日目です。 PHP の高速な実行環境として知られる HHVM の新しいバージョン 2.3.0 がリリースされました。 今回のリリースでは、オープンソースプロジェクトの CI サービスとして人気の Travis CI へのサポートが発表されました。以前から Travis CI では、PHP 5.2 から PHP 5.5 の実行環境がサポートされていたのですが、ここに HHVM 環境が新たに加わることになります。 さっそく、Travis CI の HHVM 環境を試してみました。 Travis CI の設定 Travis CI 上で HHVM 環境でのテストを行う設定は簡単です。.travis.yml の php: に hhvm を追加するだけです。 php: - hhvm これで、次回のテストから hhvm 環境で実
Shin x blog Advent Calendar 2013 の 13 日目です。 Web 制作においては、黒い画面を使うことで利用できる便利なツールがいくつかあります。ただ、日頃から「黒い画面」を使っていない人にとっては中々馴染みが無いものです。 そうしたツールを学ぶにも、まずは「黒い画面」を出してみないことには始まりません。ここでは「黒い画面」の出し方について書いてみます。 黒い画面を出す 黒い画面というのは通称で、Mac の場合は「ターミナル」というソフトがそれにあたります。 ターミナルは、Finder から開くことができますので、実際に起動してみましょう。 まず、Finder を起動して、「アプリケーション」フォルダを開きます。そして、中にある「ユーティリティ」フォルダを開きます。 (「ユーティリティ」フォルダは、Finder を起動して Command + Shift + u
Shin x blog Advent Calendar 2013 の 12 日目です。 写真の本は「MSXマシン語入門講座」という本です。この本を買ったのはもう 20 年以上前のことになります。 私にとっては、プログラムを学ぶ上で、また、何かにチャレンジする上で良い教訓を得た一冊です。 BASIC でゲームを作る 中学生の頃、ファミコンのゲームが好きだったので、その延長線上で MSX2(FS-A1)というパソコンを購入しました。 当初は、ファミコンとは違うゲームができるもの程度の認識しか持っていなかったのですが、なんとなくプログラムには興味があったので、付属していたBASICの入門書を片手にプログラムを作るようになりました。 サンプルソースを入力して、動かしてを繰り返す内に、少しづつBASICが分かるようになったきたので、次はBASICでゲーム作りにチャレンジするようになりました。 Z80
Shin x blog Advent Calendar 2013 の 11 日目です。 日常が忙しく、新しい技術なんか追ってられない。わかります。 そんなの使うかどうかも分からないのに今やる必要無いよね。困った時に探せば良いでしょ。それもわかります。 そんな忙しい毎日だからこそ、技術の「種」くらいは蒔いておきましょうという話です。 技術の種 「技術の種」とは何でしょう。 私がイメージしているのは、その技術のイメージをざっくりと朧気ながらで良いので掴んでおくということです。(ユースケースもあるとより良いです。) きちんと土を掘って、一つ一つ植えられれば良いのですが、じっくりと植える時間はなかなか無いと思うので、とりあえずバサッとで良いので、撒き散らしておきます。 そうしておいた種は、何かのきっかけで芽を出すことがあります。 多くは解決すべき問題に直面した時です。この問題は手元の技術では解決で
Shin x blog Advent Calendar 2013 の 10 日目です。 Vagrant 1.4 がリリースされました。Docker Provisioner を中心に新機能をざっくりと見てみました。 ダウンロードページの変更 さあ、1.4 をダウンロードしよう、と今までのダウンロードページに行くと 1.4 のリンクがありません>< 新しいダウンロードページからダウンロードしましょう。 Download Vagrant – Vagrant Docker Provisioner Docker 対応として Docker Provisioner が追加されました。 このプロビジョナを使うと Docker 自体のインストールが自動で行われ(!)、その後、docker pull や docker run を実行することができます。 下記の Vagrantfile では Docker Pr
Shin x blog Advent Calendar 2013 の 9 日目です。 Docker で PHP アプリケーションを動かしてみようということで、WordPress でやってみます。 WordPress 用 Docker コンテナを作る Docker は現状 Linux 上でしか動かないので、OSX 上では直接動きません。Vagrant で Linux(CentOS)の仮想マシンを作り、その上で Docker を動かします。 さっそく Linux 環境から WordPress が動く Docker コンテナまで、一気に構築できる Vagrantfile を作りました。これを使うだけで環境構築は終わりです。 shin1x1/vagrant-docker-wpdev まず、GitHub から git clone します。 $ git clone https://github.com
Shin x blog Advent Calendar 2013 の 8 日目です。 これまで Docker を RHEL/CentOS で動かす際に懸案だったのは、AUFS への対応でした。RHEL/CentOS 6.x のカーネルは AUFS へ対応していないので、Docker を動かすには、AUFS 対応のカーネルを入れる必要がありました。 Docker 0.7 では、この対応としてストレージドライバという機構が採用されました。 ここでは、ストレージドライバによる RHEL/CentOS 対応について見てみます。 CentOS 6.5 で利用されているストレージドライバ Docker 0.7 で採用されたストレージドライバは、Docker コンテナが利用するファイルシステムを選択する機構です。これにより、AUFS 以外のファイルシステムを利用ことが可能になっています。0.7 では、a
Shin x blog Advent Calendar 2013 の 7 日目です。 いよいよ CentOS 6.5 から Docker がサポートされたということで、実際にインストールしてみました。 Vagrant で CentOS 6.5 環境 Vagrant で CentOS 6.5 環境を作ります。( CentOS 6.5 環境がある場合は不要です。) CentOS 6.5 の Box ファイルには、Opscode が提供している Bento プロジェクトのものを利用しました。 $ vagrant init opscode-centos65 http://opscode-vm-bento.s3.amazonaws.com/vagrant/virtualbox/opscode_centos-6.5_chef-provisionerless.box $ vagrant up $ vag
Shin x blog Advent Calendar 2013 の 6 日目です。 とあるサイトに、Varnish をリバースプロキシとして導入して、半年が経過しました。 導入した経緯やその効果など書いてみたいと思います。 Varnish とは Varnish は、HTTP アクセラレータです。Web サーバのリバースプロキシとして動作し、キャッシュを生かして高いパフォーマンスを発揮するのが特徴です。また、VCL という独自の設定言語を持ち、これにより状況に応じた設定を柔軟に行うことができます。 導入の経緯 このサイトでは LAMP 構成の CMS を利用しており、インフラには AWS を利用しています。基本、閲覧が中心なのですが、イベント時に多数のアクセスがあります。S3 や CloudFront も検討したのですが、コンテンツを数分おきに更新する必要があるので今回は採用しませんでした
Shin x blog Advent Calendar 2013 の5日目です。 お、これ blog に書こう!と思いついて、書き始めたものの何だか上手く進まない。あーでもないこーでもないと、ちょっと試行錯誤はしてみたけど、結局やる気が無くなってしまい、そのまま放置。。。 てな事がありませんか? 私はわりとあります。 Advent Calendar 中なので、自分に毎日書くことを課しているのですが、それでも中々進まない日はあります。 うーん、なんでだろ。というわけで、blog を書き始めたのに公開していない理由を考えてみました。 1. 内容がつまらない 「これは面白い!」と思って書きだしたものの、内容を掘り下げて考えてみるとどうもつまらないと感じてしまうパターンです。 うーん、まあつまらないならしょうがないですが、もう一捻りしたり、視点を少し変えれば、面白くなるかもなので、諦めるのはまだ早
Shin x blog Advent Calendar 2013 の4日目です。 6分で分かるべく最近のPHP事情をざざざっとご紹介します。 過去のエントリはこちら。 6分でわかる最近のPHP ― 2012夏 5分でわかる最近のPHP – 2011夏 1. PHP 5.5 リリース PHP5系の新しいバージョンとして、PHP 5.5 が 2013年6 月にリリースされました。 新しい機能としては、ジェネレータや finally 句の、パスワードハッシュ関数、OPCache などが追加されています。 2013/12/04 現在では、5.5.6 が最新版となっています。 PHP5.5 のコードキャッシュは APC から Zend OPcache へ PHP: PHP 5.4.x から PHP 5.5.x への移行 – Manual PHP 5.5の新機能:さっくり理解するPHP 5.5の言語仕
Shin x blog Advent Calendar 2013 の3日目です。 エンジニアを目指して新卒で就職して早5年。とにかく仕事を覚えたい、先輩に追い付きたい、スキルを上げたいとがむしゃらに開発に没頭してきた。そろそろ仕事はひと通りこなせるようになり、自分がリーダーとして参加するプロジェクトも増えた。 充実した毎日ではあるが、気が付くと自分が会社の中では一番のエンジニアとなっていた。 自分では分かっている。会社の中では一番かもしれないが、外に目を向けると、自分よりすごいエンジニアは山といることを。 「そろそろ、次に進む時なのかもしれない。」 転職すべきなのか、はたまたいっそのこと独立して起業すべきなのか。 といった事は、わりと良くある風景なんだと思います。 起業してかれこれ13年、なんとかやってこれたので、こういった状況の人から相談を受けることがあります。そこで、私自身がこれまでや
55インチテレビとApple TVで、ワイヤレスな快適プレゼン環境(Shin x blog Advent Calendar 2013 Day2) Shin x blog Advent Calendar 2013 の 2日目です。今日は、1×1の事務所で構築したプレゼン環境についてです。 PCで作った資料を元にプレゼンを行う際に煩わしいのが、プロジェクタなど画面を投影する機械とPCとの接続です。とくに Mac の人だと多くの場合 VGA との接続アダプタが必要になるので、忘れたり、誰かが持っていても接続できないものだったりします。 また、勉強会などで複数人で順番にプレゼンを行う場合、各々でケーブルを持ち回して接続するのに意外に時間を食ったり、ケーブルの近くにいちいち移動しないといけないのも面倒です。 そこで Apple TV を使って、ワイヤレスなプレゼン環境を事務所に作ってみました。 55
Home > Advent Calendar 2013 | mac > Mac で集中して文章を書く環境を作るアプリ(Shin x blog Advent Calendar 2013 Day1) さて、はじまりました。Shin x blog Advent Calendar 2013。今日12/1から12/25まで、毎日エントリを書いていきます! 初日は、まず blog を集中して書く環境作りから。 blog を書こう書こうと思い立って、MacBook Air を開くのは良いのですが、ついつい Twitter 見たり、Facebook 見たりして、TL に流れてくるエントリやスライドを眺めているうちに、もう blog 書くことがどうでも良くなって、また今度にしよう、となることがままあります。 書きたい!と思ったネタは、その瞬発力に任せて一気に書き上げられるように集中できる環境を作りたいもので
決断〜Decision〜 今回のテーマは「決断〜Decision〜」でした。 スピーカーの依頼を頂いた際にテーマを聞いて、内容を色々と考えたのですが、私自身はそれほど大それた決断をしてきたわけではないので、分かりやすい決断として起業について少し触れました。 スライドにもあるとおり、私にとっての起業は生活する糧を稼ぐための手段であり、またやってみたいことの一つでした。正直、それほど大きな決断だとは思っていませんでした。 もちろん、いま考えるとこれは大きな決断だったと思うのですが、それはあくまで結果論で、決断の本当の大きさというのは、その時には分からないものなのかもしれません。 キャラ立ちする キャラ立ちしましょう! スライドを少なく 実は、今回スライドを少なくして、話すということにチャレンジしてみました。 理由は3つです。 まず、発表スライドを作っていると、どうしてもあれもこれも入れたくなっ
2013/11/8, 9に大阪南港で開催されたKOF(関西オープンフォーラム)2013にて「関西PHP勉強会」のセッションを行いました。 今回は、いまやPHPerの必須ともいうべきComposerをテーマにしました。その中で「Composer 再入門」を発表してきました。 Composer再入門 この発表では、Composer の基本的な使い方を紹介しています。自分でライブラリを公開する際の内容は @slywalker さんが発表されています。 Composer を使うこと自体は簡単なので、基本的なところさえ知っておけば、特に問題は無いと思います。 ただ、今回の発表や先日行った Vagrant ハンズオンの際に感じたのですが、ターミナル操作の経験が無い人には、取っ付きづらいツールかもしれません。Composer を使わなくても、ZIP ファイルを直接ダウンロードすれば、フレームワークやライ
Twilio 盛り上がってきていますね。電話という身近でありながらシステムとして扱うには複雑な仕組みが必要なものを単純な API で操作できるというのは面白いサービスです。 先日大阪で行われたTwilio API勉強会@大阪にて、PHP から Twilio を触ってみるハンズオンセッションを行ないました。Twilio を使うと簡単な PHP コードで、自分の携帯を鳴らしたり、携帯から電話をかけてみたり、簡単に試すことができるので、これはハンズオンとしてもなかなか楽しかったです。 お声がけいただき、ありがとうございましたm(_ _)m 発表資料はこちら。 ハンズオンの手順は、Gist に書いています。ここでは、Composer を使って、twilio-php(PHP版のTwilioライブラリ)をインストールしています。 https://gist.github.com/shin1x1/7006
PHPカンファレンス2013でPHP開発環境をVagrantで作る発表を行ったのですが、具体的なVagrantfileが欲しいという声を頂いたので、GitHubに公開しました。 ご自身で構築するベースになれば良いと思うので、どう作れば良いの?と言う方は参考にしてみて下さい。 なお、このリポジトリの Vagrantfile は、開発PC内の VirtualBox 上で開発環境として動かすことを想定しています。セキュリティについては考慮されていないのでご注意下さい。 vagrant-lapp-sample https://github.com/shin1x1/vagrant-lapp-sample このリポジトリは、PHPアプリケーション(CakePHP)をイメージしています。構成は以下です。 CentOS 6.4 Apache 2.2 PHP 5.4 PostgreSQL 9.3 phpPg
9/28に京セラドームで開催されたJAWS FESTA Kansaiの1トラックとして、関西PHP勉強会を開催しました。 Photo by omoon. 午前のセッションにも関わらず、多数の方に参加頂き、ありがとうございました。 いまどきのPHP 今回の勉強会では、3セッションを行ったのですが、私のセッションでは「いまどきのPHP」について発表しました。 いつもの勉強会とは違い、JAWS FESTA Kansai の中で開催したので、PHPユーザ以外の方(普段は別の言語で開発している、以前は書いていたけど最近の動向は知らない)が参加されるかもと思い、いま多くの言語で行われているオブジェクト指向開発がPHPでもきるんだよということを伝えたくて、PHPのオブジェクト指向機能をメインにしました。 結果としては、ほとんどの方がPHPをメインで使われているとのことだった(まあ、PHP勉強会なので当た
(2013/10/09追記) PHP開発環境を構築するサンプル Vagrantfile をアップしました。 PHP開発環境のサンプルVagrantfile 第7回関西PHP勉強会で発表した下記の内容をベースに、より実践的な内容を追加しました。 PHPシステムの開発環境をVagrantで作ることを題材に、基本的な流れをお話しました。 ポイントは、プロビジョニングにシェルを使う部分と、やはり synced_folder ですね。AWS上にも同じ環境を構築できる部分ももう少し深くお話したかったのですが、時間が足りませんでした>< また、Vagrantfile があるディレクトリ(vagrant upしたカレントディレクトリ)も synced_folder となっていて、仮想マシンでは /vagrant としてアクセスできるということも知っておくと便利です。これを利用するとChefのtemplat
「Vagrant入門ガイド」という電子書籍を技術評論社さんから出版しました。Kindle ストア と Gihyo Digital Publishing にて購入できます。 Vagrantは、まだエンジニアが中心に触っている状況ですが、いずれはWebデザイナーやコーダーの方など、サーバ構築を自分ではやらない人にも、制作するWebサイト、システムの動作検証を行う環境として利用する場面が増えていくと思います。 blog エントリなども多数あるのですが、断片的な情報も多く、また、Vagrant自身の進化が早いため、最新の環境だと上手くインストールできなかったり、動かないということがままあります。(このblogの過去エントリも。。。) もちろん、じっくりと調べていけば解決できる問題なのですが、できれば、はじめの一歩くらいは、まとまった情報が日本語であると良いなと思い、本書を書きました。 目次 本書は
2013/9/13に「PHPエンジニア養成読本」というムック本が技術評論社から出ます。 この本の巻頭記事を執筆させて頂きました。巻頭記事では本書のイントロダクションとして、PHP5.3/5.4/5.5の新機能と「いまどき」のPHP開発を紹介する2章構成になっています。 PHPを取り巻く環境は大きく変わっていっています。普段からそういった変化を追いかけている人は良いのですが、日常の開発に没頭しているとついそういった動きに気づかないままということがあります。また、昔のPHPのままのイメージで止まっている人も多いかもしれません。 そこで、PHP が大きく変化した 5.3(名前空間、クロージャ、LSB)から、5.4(トレイト、配列の短縮構文、ビルトインサーバ)、最新の 5.5(ジェネレータ、finally、パスワードハッシュ関数)を第1章で紹介しています。 第2章では「いまどきのPHP開発」という
Home > Vagrant | 開発環境 > Vagrant + VirtualBox で nfs を使って、synced_folder を速くする Vagrant + VirtualBox で便利な synced_folder を nfs を使ってパフォーマンスを向上する方法です。 開発環境として Vagrant + VirtualBox を使う上で欠かせないのが synced_folder です。ホストとゲスト間でディレクトリを共有できるので、ホストで書いたコードをゲストですぐに実行することができます。 synced_folder はVirtualBox が持つ shared folders という機能をつかているのですが、代わりに nfs を使うことで、パフォーマンスを向上させることができます。 nfsd をホスト側で起動 synced_folder に nfs を利用するには、ホ
VirtualBox 4.2.14 + Vagrant 1.2.2 の組み合わせで、正常に動作しなかった問題が、VirtualBox 4.2.16 で解決されたようです。 VirtualBox 4.2.14 + Vagrant 1.2.2 の組み合わせで、一部の環境にて vagrant up ができないという現象がありました。 $ vagrant up Bringing machine 'default' up with 'virtualbox' provider... [default] Importing base box 'precise32'... There was an error while executing `VBoxManage`, a CLI used by Vagrant for controlling VirtualBox. The command and std
PHP5.5 リリースにより、再び盛り上がってきた phpenv + php-build 環境を Vagrant で作ってみました。 CentOS6.4 + phpenv + php-build + nginx という構成になっています。 nginx + phpenv + php-build の環境構築については hnw さんの下記エントリがとても参考になりました。 php-buildで複数バージョンのPHP-FPMを用意する – hnwの日記 インストール https://github.com/shin1x1/vagrant-phpenv-phpbuild github へ Vagrantfile + Chef レシピファイルをアップしています。こちらの README に書いたとおりですが、手順としては以下になります。 VirtualBox インストール Vagrant インストール g
次のページ
このページを最初にブックマークしてみませんか?
『1×1株式会社|Webシステムの技術パートナー』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く