1. What’s new in PHP7 PHP7で変わること ̶̶言語仕様とエンジンの改善ポイント hnw PHPカンファレンス関西2015 (2015/5/30)発表資料
この文書はなんですか? この文書は*nix系のシステムにおけるプロセスやシグナルなどについて説明することを目的に書かれました。「プロセスとかよくわかってないからちゃんと知りたいな」みたいなひとたちが想定読者です。 書いているあいだは gist で管理されていたのですが、ボリュームが大きくなったので github で管理するように変えました。 目次 導入 プロセスの生成 プロセスとファイル入出力 ファイルディスクリプタ preforkサーバーを作ってみよう ゾンビプロセスと孤児プロセス シグナルとkill プロセスグループとフォアグランドプロセス epub と pdf epub化したもの、pdf化したものが release ディレクトリに入っています。thanks to mitukiii & moznion! ライセンス この 作品 は クリエイティブ・コモンズ 表示 - 継承 3.0 非移
Spartanとは何か? IEはどうなるのか? Web制作への影響は? また、これらの疑問の鍵を握る「レンダリングエンジン」についてもまとめる。 「Windows 10 技術プレビュー(Technical Preview) 2015年1月版(日本語、ビルド9926)」(以降、Windows 10 TP)が、1月24日ごろに公開された。その発表イベントの中で「Windows 7/8/8.1やWindows Phone 8.1などからWindows 10へのアップグレードが発売から1年は無料」と発表されたことが、大きな話題となっている。このキャンペーンにより、エンドユーザーのWindows OS環境が、その1年で一気にWindows 10に最新化される可能性があるだろう。実際にそうなれば、Windowsアプリを作るデベロッパーや、Webサイトを制作するエンジニアにとっては、最新テクノロジが使い
古い記事なんですが, Pythonのデコレータの概念をつかむには良記事だったので和訳意訳してみました. http://simeonfranklin.com/blog/2012/jul/1/python-decorators-in-12-steps/ Step1. 関数 これは基本ですね. Pythonにおいて関数はdefキーワードにより関数名とパラメータのリスト(任意)とともに定義できます.また括弧付きで名前を指定することで実行できます. Step2. スコープ Pythonでは関数を作ると新しいスコープが作られます.言い方を変えるとそれぞれの関数がそれぞれに名前空間を持つということです. Pythonではこれらを確認することのできる組み込み関数も用意されていて, locals()で自身の持つローカルな名前空間の値を辞書形式で返却します.
CyberAgent エンジニア Advent Calendar 2014の23日目の記事です。 秋葉原ラボの、鈴木(@brfrn169 )、Shtykh Roman、柿島大貴です。 普段は、分散DB(主にHBase)やストリーミング処理基盤の開発・運用などをやっています。 今回は、NewSQLの1つであるCockroachDBについて紹介します。 NewSQLとは CockroachDBについて紹介する前に、NewSQLについて簡単に説明します。 NewSQLとは、一言で言うとNoSQL+SQL機能(トランザクション)です。 RDBMSとNoSQLの良いとこどりをしているともいえるでしょう。 従来、RDBはスケールアウトのしづらいモノリシックな作りになっていました。 しかし、RDBでは、昨今のビックデータの潮流に対応できず、NoSQLの技術が登場します。 NoSQLは、スケールアウトが容
iLiad 電子ペーパー(でんしペーパー)とは、紙の長所とされる視認性や携帯性を保った表示媒体のうち、表示内容を電気的に書き換えられるものをいう。Eインクまたは電子インクと呼ばれることもあるが、本来は一般名詞ではなく米Eインク社の商標である。 1970年代に米国ゼロックス社のパロアルト研究所に所属していたニック・シェリドンがGyriconと呼ばれる最初の電子ペーパーを開発した[注 1]。Gyricon の構造は、半球を白、別の半球を黒に塗り分けた微小な球をディスプレイに多数埋め込んだものである。球の一部は静電気を帯びており、電界によって球を回転させて白地に黒い文字を表示し、数千回の書き換えに耐えた。 2000年代後半から電子ペーパーを利用した製品が一般的に販売されるまでに至り、今後は低価格化が普及の鍵とされる。 低消費電力 表示中に電力を消費しない、または極小で済む。書き換え時の消費電力も
DockerfileのONBUILD Docker 0.8においてONBUILDというDockerfile用のコマンドが導入された.0.8ではOSXのdocker clientが脚光を浴びたが,このONBUILDはかなり強力な機能.リリースノートはこちら.ONBUILDの公式ドキュメントはこちら. ONBUILDを使うと,次のビルドで実行するコマンドをイメージに仕込むことができるようになる.つまり,ベースイメージにONBUILDによるコマンドを仕込み,別のDockerfileでそのベースイメージを読み込みビルドした際に,そのコマンドを実行させるということが可能になる.要するに,親DockerfileのDockerfileコマンドを子Dockerfileのビルド時に実行させることができる機能. これは,アプリケーション用のイメージを作るときや,ユーザ特有の設定を組み込んだデーモン用のイメージ
増えるログ、多様化するログをどう効率的に運用するか:今さら聞けないfluentd~クラウド時代のログ管理入門(1)(1/2 ページ) 仮想化やクラウド化、モバイル化の進展に伴い、管理すべきログが多様化・肥大化しています。そんな中でも効率よく、意味のあるログ管理を実現するツールとして注目されている「fluentd」を、これから始めたい方のために一から解説します。 システムを安定して効率良く運用していくために、ログ管理は欠かせない要素の1つです。仮想化やクラウド化、モバイル化の進展につれてシステムはますます大規模化し、それに伴い管理すべきログが多様化・肥大化する傾向にあります。 fluentdはこういった中でも、効率よく、意味のあるログ管理を実現するために非常に有用なツールです。本連載では、fluentdの基本と具体的な活用方法を紹介します。 ログ管理の現状と課題 環境の仮想化・クラウド化、さ
これは VirtualDOM Advent Calendar 2014 に勝手に参加する記事です。 あたたかい春の昼下がりのこと、あるブラウザベンダの社内を不穏な噂が駆け巡った。 「React.js なるライブラリ、どうも仮想 DOM というやつのせいで速いらしいぞ」 もうリアルな DOM はお役御免、ブラウザも商売上がったりか・・・。雇用に不安を覚える人(私)がいる一方、 そのアイデアをとりこんでブラウザの DOM を速く出来ないかと考える人たちもいた。 仮想 DOM はなぜ速いのか。誰かのつてを辿って React.js チームにおいでいただき、速さの秘密をテックトークしてもらう。 イミュータブルなデータ構造による単純化、非同期適用による処理のバッチ化、差分アルゴリズムによる副作用の最小化… いくつかのアイデアはブラウザからはどうにもならないが、たとえば非同期化なんかは形は違えどブラウザ
これはドリコムAdventCalendarの6日目です。 5日目の記事は、ドリコムの開発を支えるGitリポジトリ@gussanです。 7日目は、般若心経F*ck、コピペで徳を高める話@おーはらさんです。 自己紹介 ドリコムでアプリケーションエンジニアとしてネイティブゲームの開発を行ったりマネージメントをしたりしています。 その他の事はこちら参照: https://gist.github.com/Shinya131/5d9e604d963177ee2cdc はじめに この記事は、プログラミング言語Rubyが持つ凄く面白い特徴を、 Ruby on Rails の一部であるActiveSupport core extensionsのソースコードを題材に解説する物です。 題材に使うActiveSupportは、version 4.1です。 対象とする読者 この記事は、以下のような読者に役立つ内容を
複数に分割されたログインID入力が・・・ タイムズカープラスのログインを、ブラウザが学習しない。 Opera(Presto)だと複数にわかれたIDを学習してたのに、Opera(blink)になってから学習しないので、もう面倒だから拡張機能で対応しようとした。 フォームの値をJavaScriptで送信しようとしてハマったのでメモ。 スクリーンショット 2014-12-05 14.38.08 form.submit でログイン失敗する HTTPのリクエストヘッダを見ていると input に存在しない値を送信している模様。 tpLoginForm:doLoginForTp.x:132 tpLoginForm:doLoginForTp.y:14 どこから出てきた、この値は。と調べてて見つけた。 input type ="image" はクリック位置を送信する模様 知らなかった。X,Y座標を送信する
TypeScriptで複数ファイル構成のプロジェクトを扱う方法について書いてみる。日本語の入門記事や試してみました系の記事で勘違いされてることがたまに見受けられるので、整理してみる。 公式のModules in TypeScriptを既に読んでおられるような御仁は回れ右していただいても結構です。 やりたいこと ソースファイルをモジュールごとに分割して管理したい 実行環境はNode.js or ブラウザ 例えば、こういう処理があって、 // main.ts function trimLeft(str: string): string { return str.replace(/^\s+/, ''); } var input = document.getElementsByTagName('input')[0]; input.value = trimLeft(input.value); tri
Help us understand the problem. What is going on with this article? 「RaptorはどのようにしてUnicornの4倍、Puma, Torqueboxの2倍の速度を達成したのか」を読んでまとめてみました。 原文はこちらです。紹介については許可を貰っています。 How we've made Raptor up to 4x faster than Unicorn, up to 2x faster than Puma, Torquebox とても読みやすい英語ですので是非原文も読んでみてください。 How Ruby app servers work Rackアプリケーションの構成についての紹介と、コネクションをどのように扱うのかについて。 prefork/threadingやBlocking I/OおよびEvent I/Oの組み
00-README.md CoreOS とその関連技術に関するここ半年間の私の活動まとめ はじめに 最近、社内で私が「何者で何をしているのか見えないので可視化して欲しい」という案件が出ているらしいので、ヘコヘコと徒然なるままに書いていきたいと思うのであります。 社内向けというだけでなく社外の人にも発信出来る内容に、との仕様も要求され、社外向けには出来るだけ旬なネタで、かつ、社内向けにはそれを理解する上で必要な関連する技術を個々に触れながら基礎知識が無くても理解出来るように、との追加仕様も提示されております。 で、何をネタにしてどのように書けばいいのか迷った訳ですが、自分が実際にやって来た内容である CoreOS であればそこそこ旬であるし、それをおさらいしつつ、関連技術も Docker、Omaha、systemd、BtrFS、Golang、etcd、Kubernetes 等々多岐にわたるの
3年ほど前に、Ruby製のクローラー"anemone"を紹介しました。その当時から完成度が高く、Rubyでクローラーを使う場合はanemoneを利用してきました。最近、他に新しくて良いのがないか調べましたが、機能面の網羅性という意味でanemoneを超えるものは見つけられませんでした。そこで改めてanemoneのソースを読んでみたところ、クローラーが必要とする機能を必要最小限で実装され、やはり中々良い出来です。冬休みの宿題ではないですが、勉強の意味を兼ねてソースを追っていくことにします。 Anemoneが利用しているライブラリ一覧 anemoneが利用しているライブラリは、4種類に分類できます。 Ruby標準or一般的なライブラリ データ取得で利用しているライブラリ データ解析で利用しているライブラリ データ保存で利用しているライブラリ この分類別に構造をみるとわかりやすいので、順番に追っ
linux上のアプリケーションはプロセスとして起動されます。 プロセスを管理することはOS(ここではlinux)の重要な役割であり、プロセスのスケジューリング、割り込み、シグナル制御、優先度の制御、プロセスの切り替え、状態管理、メモリ管理などを行っています。 プロセスとは何でしょう? プロセスはCPU上で実行されるもので、タスクを完了するために、Linuxのカーネルが制御するあらゆるリソースを使うことができます。 スレッドとは何でしょう? スレッドは1つのプロセスから生成される実行単位です。同じプロセスから並行でスレッドを起動させることができます。 スレッドはメモリや、オープン中のファイルなどのリソースを共有することができます。同じアプリケーションのデータにアクセスすることができるのです。 プロセスはリソースを共有することができないので、これは大きな違いです。 言い換えると、スレッドは同じ
注意 内容については一切保証しません。 ここでは、主に W3C ML での議論や各種仕様などに基づいて書いています。 ここに書かれていることが正しいかどうかは、自身で判断して下さい。 事実としておかしいところなどは、コメントでどんどん指摘して下さい。遠慮はいりません。 ただし、このエントリでは「form が PUT/DELETE をサポートするべきかどうか?」の議論はしません。 「REST の是非」や「PUT/DELETE の意義」についても議論する気はありません。 ここでやっているのは、あくまでもどういった議論の末現状があるのかの調査です。 そうした意見がある場合は、 W3C などに投稿するのが最も有益だと思います。 History 2014/03/29: 公開 2014/03/29: XForm と XHTML の関係を明確化(thanx koichik) 2014/03/29: HT
Section: Linux Programmer's Manual (7) Updated: 2014-07-08 Index JM Home Page roff page 名前 pipe - パイプと FIFO の概要 説明 パイプと FIFO (名前付きパイプともいう) は、 単方向のプロセス間通信チャネルを提供する。 パイプには「読み出し側」と「書き込み側」がある。 パイプの書き込み側で書き込まれたデータは、 パイプの読み出し側から読み出すことができる。 パイプを作成するには pipe(2) を使用する。 pipe(2) は新しいパイプを作成し、ファイルディスクリプターを二つ返す。 ディスクリプターのうち、一方はパイプの読み出し側を、もう一方は 書き込み側を参照している。 パイプは関連するプロセス間の通信を作成するのに使用できる。 例は pipe(2) を参照。 FIFO (Fir
Git を使った開発では、サブモジュールを使うことによって、他のプロジェクトを自分のコードベースに取り込めるようになります。それも、他のプロジェクトの履歴を分離しつつ、あなたのプロジェクトの履歴と同期できるようになるのです。これはベンダーライブラリ問題や依存関係問題を解決する便利な方法です。git に関してはいつもそうですが、このアプローチもかなり自己流なのでうまく出来るようになるまで少しばかり研究することをお勧めします。submodules に関する好例や詳しい説明はすでに公開されているので、ここでまた繰り返すのはやめることにします。この記事では submodule という機能を最大限に活用するのに役立つであろういくつかの面白い情報を共有したいと思います。 目次 コアコンセプト 考えられるワークフロー 初めての人向けの役に立つコツ サブモジュールを自分のフォークしたリポジトリで置き換える
個人的にgitで思った通りの挙動をしないコマンドナンバー2、それがsubmodule。ちなナンバー1はrebase。 submodule自体、使い込むとたいへん便利な機能なのは間違いないものの、誤解をされやすい挙動をするので扱いにくい感じがある。特にチームで使うとなると全員がsubmoduleを理解していないとハマる人が続出しがち。 なので最近はあれはコミットへのシンボリックリンクだ、と説明してごまかしていたりする。 例えばひとつのリポジトリからライブラリ的なものだけを切り出したり、アセット的なものだけを切り出して別途管理したくなることがよくありまして。そういうときにsubmoduleを使って複数のリポジトリに分割すればスッキリするんじゃね、って考えるわけです。 で、いざsubmoduleを使って分割してみたら submodule 配下がなぜか空だったり、なぜか更新されてなかったり、なぜか
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く