エンジニアtypeは、各種エンジニアをはじめ「創る人たち」のキャリア形成に役立つ情報を発信する『@type』のコンテンツです。
FastCGI対応機能がH2Oにマージされたことを受けて、uzullaさんが「H2OでPHP(がちょっとだけ動くまで)」という記事を書いてくださっています。 ありがたやありがたや。 その中で、 http://hoge/entry/1 みたいなのをphpにマップする方法はまだよくわかってません。その内しらべます github.comを読む限り FastCGI (or PHP) applications should be as easily configurable as it is for the Apache HTTP serverということで、やったぜ!ってなるんですけど、nginxはもとより、Apacheにおいても現状ルーターをつかっているようなアプリだとhtaccessをいちいちかかないといけないので、Apacheみたいなスタイルが楽なのか?というとちょっと疑問があります。 (たと
昨日夜中にごちゃごちゃやりまして、メモでございます。 github.com 最速httpdとなるであろうH2Oについて、最近fastCGIサポートが載った(まだstableリリースではなく、betaか、masterブランチ)のですが、まだ公式サイトに設定がのっていないので、うごかしてみたメモですね。 追記:今朝、リリースされてたそうです、めでたい! 設定ファイルを こうするんじゃ(抜粋なので、サンプルから必要そうな所だけ修正してください) file.custom-handler: extension: .php fastcgi.connect: host: 127.0.0.1 port: 9000 type: tcp hosts: "127.0.0.1.xip.io:8080": paths: /: file.dir: /var/www/htdocs やったぜ H2OでPHP7うごいたゾー
こんにちは、id:hogelog(会員事業部 小室)です。 現在自分が開発しているAndroidアプリのプッシュ通知の実装に Amazon Cognito, Amazon SNS, Amazon DynamoDB を使ったらアプリコード(と、AWSの設定)だけで機能が実現できてしまい、予定していたサーバサイド実装がまったく不要となったのでその知見を共有します。 アプリプッシュ通知の要件 今回実装したプッシュ通知の要件は以下です。 プッシュ通知を許可したユーザ全員に共通した内容を一斉通知 通知はバッチプログラムから週に数回程度 年内には一万ユーザぐらいに利用されること目標 GCMトークンはデータストアに記録しておく 将来的にはA/Bテストなどをおこなうことも可能なように 当初はこれらの機能を実現するため、適当なRailsアプリでGCMトークンを受け取ってうまいことあれこれするAPIを実装しよ
6月6日(土)に家CON-2015 と連携した「スマートハウスを活用した新発想アプリを考えよう!!」というアイデアソンイベントを開催しましたので、そのレポートになります。 家CON-2015とは、スマートハウスから収集したHEMSデータや家電・設備機器の制御機能と、Web上で公開されている地図情報や気象情報、インターネットに接続できる家庭用ロボットやセンサー等を組み合わせて、新たな発想のアプリケーションやサービスを開発するコンテスト。 コンテストにて提供されるの機能は以下のようなもの。 ・スマートメーターや蓄電池などの電力関連データ ・世帯属性別の統計情報 ・エアコンや照明等の家電・設備機器制御機能 これらを利用するAPIを搭載したシュミレーターソフトを使って開発を行っていただきます。 ベストアイデア賞は、電力消費が嵩んだら家がキレる 「いえったー」でした。 おめでとうございます。 それで
知る者は言わず、言う者は知らず — 老子 世界で最も有名なプログラムの 1 つに、 hello world というものがあります。 <?php echo 'hello, world'; 出力先に対して「hello, world」という 12 字を書き込むだけの単純なプログラムで、プログラミング言語やライブラリの利用例を最小限の形で示すものです。 この記事ではメジャーな Web プログラミング言語の 1 つである PHP 処理系が、hello world をどのように実行するのかについて、簡単に解説します。 以下の 4 節で構成されています。 「PHP スクリプト実行の大体の流れ」は実行時の概略を箇条書きでまとめたものです。 「SAPI」では、PHP 処理系の起動のされ方についての基礎知識を解説します。 「Zend Engine とオペコード」は PHP 公式処理系の仮想マシンの命令と、PH
$regex = '/\A[\p{L}0-9!#$%&\'*+\/=?^_`{|}~-]+(?:\.[\p{L}0-9!#$%&\'*+\/=?^_`{|}~-]+)*@(?:[_\p{L}0-9][-_\p{L}0-9]*\.)*(?:[\p{L}0-9][-\p{L}0-9]{0,62})\.(?:(?:[a-z]{2}\.)?[a-z]{2,})\z/ui'; 実際のところ、メールアドレスの正規表現については普遍的な正解というものは有りませんので状況に応じて適宜修正してご利用下さい。 参考:PHPしか書けないザコがメールアドレス正規表現でガチ勢に挑んでみた クレジットカード番号にマッチ 全てのカード会社のカードにマッチするのは以下。 $regex = '/\A(4[0-9]{12}(?:[0-9]{3})?|5[1-5][0-9]{14}|3[47][0-9]{13}|3(?:0[0
昔リリースしたアプリが、どのバージョンのXcodeでビルドされたものなのか調べる必要があったので、その方法をまとめておきます。 結論 ipaファイルを解凍すると出てくるInfo.plistのDTXcodeを見ればOKでした。 手順 iTunesでダウンロードするなりして、調べたいアプリのipaファイルを手に入れる 念のためコピーしてから、拡張子を.ipaから.zipに変更する ダブルクリックして解凍する Payloadフォルダの中にあるアプリを右クリックして「パッケージの内容を表示」する 中に入っているInfo.plistをダブルクリックで開く(要Xcode) DTXcodeの値を見る。0632だったらXcode 6.3.2でビルドされている 備考 アプリをiTunesでダウンロードした場合、iTunesの「マイ App」の中から該当アプリを右クリックして「Finder で表示」でipaフ
Let's eat DietCake! Organic and Healthy Application Development Web アプリケーション開発のための、シンプルな PHP フレームワーク。 View on GitHub Hello World example 高速動作 1億PV/日のアクセスを前提に設計しています。数十万人を超えるアクティブユーザーに対して、数ミリ〜数十ミリ秒オーダーでレスポンスを返すために作られました。 低学習コスト シンプルな構造と規約のため、PHP に関する基礎的な知識があればすぐに使い始めることができます。プロジェクトに参加したメンバーが価値のあるコードをコミットするまでの時間を短くできます。 自由にカスタマイズ プロジェクトごとに必要な機能を組み合わせましょう。小さい部品を集めて全体を構成できるようになっているので、セッション、DB 抽象化レイヤー、
突撃隣の六本木ヒルズ!@yimajoです。 iOSアプリ開発者に最近の開発スタイルを訊いてまわる「iOSアプリ開発の現場で訊いてみた」待望の7社目に行ってきました。 今回はフリマアプリのメルカリ社。 最近六本木ヒルズにオフィスを移転したとのことで広くて新しいオフィスでした。 訊いてきたこと インタビューに応じてくださったのはメルカリ社のiOSアプリ担当の@ooba、 @yam86、Androidアプリ担当の@operandoOSでした。 インタビュアーは過去インタビューに応じてくださった@kishikawakatsumiにも同席お願いしました。 執務室に入る前のエントランスはこんな感じ 古いテレビがあったり... 緑の自転車...? 執務室にはいるとバーン!とカフェっぽい Q.メルカリ社に入った経緯を教えてもらえますか? @ooba もともと仕事としてはWindowsアプリを作ったり 個人
1度使うと2度とそれ無しの生活に戻れない、それがフレームワーク。 PHPで代表的なフレームワークと言えば、「Zend Framework」とか「Symfony」とか「CakePHP」とか「FuelPHP」とか。最近だと「Laravel」というフレームワークが人気のようです。 2014年 Webアプリケーションフレームワークトレンド(PHP / Java / Ruby / Python / Perl) – Qiita これらはサービスを提供するのに必要な機能がすべて揃っている、いわゆる「フルスタック」というやつで、それさえ入れればすべて解決する(自分で何かを開発する必要は無い)一方で、インストールするにはある程度の知識と権限が必要。また少しツールを作りたいとか、小さいサービスを作りたいだけとか言った場合には、使わない機能が多すぎて逆にコストが高くなってしまいます。 で、最近流行ってるのは機能
こんにちは、Swiftエンジニアの杉本です。 先週、Swift2.0が発表されました。 そこで今回の投稿では、Swift2.0の新機能のなかで私が注目している3機能をご紹介します。 do-catch・try・defer guard Protocol Extension do-catch・try・defer do-catchはエラー処理に関する構文で、他の言語でのtry-catch構文にあたります。 基本的な使い方は下の通りです。 enum MyError: ErrorType { case Error1 case Error2 } do { throw MyError.Error1 // throwで例外を発生させる } catch MyError.Error1 { print("Error1") } catch let error { print(error) } 例外が発生しうるメソッ
Swift1周年! 去年の WWDC で Swift が発表されてから約1年が経ちました。 次々と新しいバージョンの Swift が発表され、WWDC 2015 ではSwift 2.0 が発表されたり、オープンソース化が発表されたりと、Swiftを取り巻く状況はドラスティックに変化し続けています。 そんな中、今回は、本ブログ Developers.IO で、この一年に公開された記事の中から Swift のプログラムが載っている記事をまとめてみました! 記事を直接読んで Swift のプログラムが書かれているか確認しているので、ちょっとヌケがあるかもしれません。気づいたら直していきますね! (※ Swift の記事は他にも沢山公開していますが、今回はコードが直接載っているものだけを集めました。) 言語仕様 [Swift] WWDC で 発表された Swift 2.0 の新フィーチャー – O
Goutte という PHP 製の Web スクレイピングライブラリを使って Web ブラウザを操作するテストを書いてみたのでサンプルを紹介します。 Goutte とは、Symfony 開発者の Fabian が手がけるライブラリです。Symfony コンポーネントの BrowserKit, CssSelector, DomCrawler ほか Guzzle HTTP というライブラリを使っていて、PHPUnit と組み合わせることで Symfony のファンクショナルテストと同じ感覚でブラウザテストを書くことができます。 レガシーな PHP アプリケーションのテストに悩んでいる方は選択肢のひとつとして参考にしてみてください。サンプルは karakaram/goutte-sample - GitHub に置いておきます。 動作確認環境 PHP 5.6PHPUnit 4.7Goutte 2.
2015年4月に開催されたイベント「AWS Summit 2015 San Francisco」で発表されたアマゾン ウェブ サービス(以下、AWS)の機械学習に関する新サービス「Amazon Machine Learning」。発表当日から利用可能となっており、ビッグデータ系のサービスを使用していたユーザーなどには特に注目を浴びています。 『機械学習』というテーマが注目を浴びている一方で、いざ実践してみるとなるとどうすれば良いのだろうか、またこのテーマについては統計や分析に関する知識も求められる部分がありますので、気軽に触ってみる……というのもAWSの他のサービスと比べると少しハードルが高い印象があるかと思います。 そこで当連載では、機械学習について興味を持ってはいるものの、これまでそういった実戦経験がない(かくいう私もそんなステータスです)、そんな立ち位置の人が読み進め・実践し・理解で
市場規模は縮小していますが、出版社の数は減っておらず、1700社ほどあります。年間の新刊タイトル数は約4万2000点で、2010年とあまり変わりありません。つまり、実売率は6割しか残っていないことになり、2000部売れていた本も1200部しか売れないわけです。 ―― 日本のいわゆる出版不況と状況は似ていますね。スマホ普及の影響もあるのでしょうか。 黄 そうですね。ただ、出版社側の電子書籍に対するマインドが日本を含めたアジア諸国の中でも非常に消極的なのが大きな違いです。電子書籍に対する取り組みがとても遅いんですね。 その大きな理由が、書籍に占める翻訳タイトルの多さです。4万2000点のうち半分以上が教科書・参考書で、その4分の1は翻訳書。セールスランキングの上位70%も翻訳書が占めています。台湾オリジナルのタイトルは少ないです。 このことが電子書籍化に当たってハードルになります。台湾で生まれ
2015年3月に2012年億調達企業33社の行方を検証した記事を出しました。この手の記事は、「回収できなそうですね」みたいなことも記事内でいうので、非常にバズりにくく寂しいですが、地味にPVは伸びるというTheStartup定番スタイルだったりします。 スタートアップ業界のしょこたん様からリクエストを受け、「いや、2012年版はやったんだけどな」と思いつつ、2013年版を作成しました。 読者からのリクエストに応える、ジェントルマンな筆者であります。 2013年に1億円以上の資金調達を実施した企業は本誌独自調査では74社。その後どうなったか、下記に簡単にステータスを。ちなみに2012年は33社でしたので、2013年は倍増以上。スタートアップ投資が盛り上がり始めた時代といえるかもしれません。 ■2013年億調達:74社 IPO:8社 M&A:4社 プレIPO観測:8社 10億以上調達:11社
こんにちは。ヘルスケア事業部の関口(@tanukiti1987)です。 普段はRailsを使いつつ、おいしい健康というサービスの開発をしているのですが、ご縁があって3ヶ月ほど前からAndroidアプリ開発に携わっています。 今回はそんなAndroid用のライブラリを誰でもお手軽に公開して、Android開発をグイグイ高速化していこう!という観点からお話をしたいと思います。 忙しい人向けの3行まとめ Android向けライブラリを公開するのは、わずか5ステップのみ 公開するライブラリにはきちんとライセンスを書こう ライセンスに特にこだわりがなければ、Apache2.0, MIT あたりがよい はじめに iOSとAndroidの開発上の違い 私自身、前職で2年ほどiOSをメインで開発していたということもあり、Androidは機種差分、バージョンの断片化こそあれ、ネイティブアプリ作りの根幹は変わ
*既に実現しているラノベ作品があるかも 電子書籍は印刷本の劣化版だが、印刷本にはない 「製本コストを抑えられる為値段が安くなる」 「購入したらすぐ手元に届く早さ」 「電子情報のため部屋を圧迫しない」 などの魅力がある媒体だというのが個人的な認識だった。 しかし佐々木俊尚氏のweb文芸・百年後の本によれば「印刷本とは全く異なる媒体」らしい。劣化版でも類似品でもなく、そもそも違う存在とのこと。 今はまだ黎明期の演劇と映画が分化していなかったのと同じく既存の印刷本のページをめくり読み進める体感の域を電子書籍は一歩も出ていないが、しかしこの先電子書籍は独自のUX(=主観的かつ総体的な感覚)を獲得し別々の道を進んでいくだろうとされている。 電子書籍のUIは、タブレットや電子書籍リーダーといった機器、液晶や電子ペーパーといった素材、そして最近ではタッチスクリーンを指で直接操作するという動作などによって
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く