フロントエンド

AngularJSのアプリケーションで画像の遅延読み込み(レイジーロード)を導入したメモ

※別にAngularJSに依存していないので、この方法はAngularJS以外でも大丈夫です。 目的 スマホサイトなどでページ表示の体感速度を早めたい ⇒ブラウザスクロールで表示領域にはいったタイミングで画像をロードさせる デモ http://hkusu.github.io/AngularJS_lazyload_demo/ 初期表示でブラウザに収まってる画像は、スクロールしないと取得しにいかないようだ(仕様?) 開発ツールでHTTPリクエストをみてみると、確かに画像が必要になったタイミングで取得しにいっている 導入したもの...

設定とか

自身で作ったライブラリの設定値を読み込ませる方法 echo Config::get('directory/filename.arraykey'); directory/ オプション. app/configからのパスとなる。 filename 拡張子を省いたファイル名。 arraykey 配列の添字になる。 例えば上記の場合、 app/config/directory/filename.php <?php return array( 'arraykey' => 10, ); として echo Config::get('directory/filename.arraykey'); の出力値は「10」となる。 環境依存 データベースとかのパスワードとか環境依存...

R + pandoc + knitrBootstrapでRmdを書き出す

少しRから離れてruby書いていたら、色々バージョンが上がったりしていて驚きました。 knitrBootstrap使っているんですが、新しくなっていたので上げてみました。 環境はMacです。 Pandocを入れる お馴染みbrewでhaskellを入れ、pandocを導入します。 $ brew install haskell-platform $ cabal update # version上がってるよ!と言われたので $ cabal install cabal-install $ cabal install pandoc # path通しておきます $ vim ~/.bash_profile + $HOME/.cabal/bin:$PATH $ source ~/....

DropwizardのManaged Objects

Environmentsを確認。 Health Checkは最初にやったのでManaged Objectsを試す。 動作確認用に作ったのでResource、Health Checkは適当。 Dropwizardのバージョンは0.6.2。 Managedインターフェース Managedインターフェースを実装する。 ここではファイル監視をNIOで書いた。 NioFileWatcher.java package example.core.managed; import com.yammer.dropwizard.lifecycle.Managed; import java.io.IOException; import java.nio.file.*; import java.util.concurrent.ExecutorService;...

VMwarePhosonOSでDocker Swarmを試す

以下URL参照 http://docs.docker.jp/v1.11/swarm/install-manual.html 上記ではDocker Swarmマネージャの冗長化、ディスカバリバックエンドの構築についても 解説しています。 今回はお試しのため下記最低限3つの環境で構築しました。 前述した下記のオーバーレイ構成のホストをそのまま使用 http://qiita.com/umchifre/items/7cb555e3c3d74454b8fc 以下3台のPhotonOSを構築します。 1.マネージャ用[192.168.10.10] 2.エージェント1号機[192.168.10.11] 3.エージェント2号機[192.168.1...

【メモ】 AWSにkopsを使ってkubernetesのクラスタを構築する

kopsでクラスターをインストールしてみたのでメモしておく 眠い。 元ネタ http://kubernetes.io/docs/getting-started-guides/kops/ 普通に上の記事を見ながらやった方が良い kubectlのインストール # 最新が1.5.1だったので1.5.1をインストール # Linux wget https://storage.googleapis.com/kubernetes-release/release/v1.5.1/bin/linux/amd64/kubectl chmod +x kubectl mv kubectl /usr/local/bin/kubectl # Macで作業する場合は以下らしい(やってない) wget https://storage.go...

herokuでDBマイグレーションにphpmigを使う

phpmigはフレームワークに依存しないシンプルなdatabase migrationツールです。 phpmigでは、どのマイグレーションが実行済みかという情報を保存する方法を切り替えることができます。もっとも単純なのはPhpmig\Adapter\File\Flatで、これはファイルにバージョン情報を保存します。 以下の例では、migrations/.migrations.logというファイルにバージョン情報を保存します。 phpmig.php $container['phpmig.adapter'] = new Phpmig\Adapter\File\Flat(__DIR__ . DIRECTORY_SEPARATOR ....

EMR + Elasticsearch on YARN + Sparkでインデックス作成

これはElastic stack (Elasticsearch) Advent Calendar 2016の20日目の記事です(ごめんなさい、一日遅刻の上に未完成です・・・)。 はじめに Elasticsearch for Apache HadoopはElasticsearchとHadoopソフトウェアスタックを組み合わせて利用する幾つかのプロジェクトの集合です。よく使われている成果物としてHadoop等からElasticsearchを読み書きするelasticsearch-hadoopライブラリがあります。 他方でこれに比べるとマイナーなプロジェクトとしてYARN上でElasticsearchを実行するE...

[memo]Chef Server環境セットアップ手順

2015年11月時点で個人勉強で構築した手順です。無くさないよう、ここで記載します。 最小構成でインストールしたCentOS7.1にChef Server 12.2をインストール手順です。 本手順で作成される環境 ソフトウェア バージョン Chef-Server chef-server-core-12.2.0-1 OS CentOS7.1 workstation Ubuntu15.04 node Centos7.1 CentOSの設定 SELinuxを無効にする /etc/sysconfig/selinuxを編集 SELINUX=disabled 変更後、CentOSを再起動 reboot 再起動後、SELinuxは無効になっているかを確認 get...

WordPress テーマ _s にFoundation6 を組み込んでみる

Foundation _s に CSSフレームワーク Foundation を組み込む。 Bootstrap3はこちらを参考に http://qiita.com/gatespace/items/800d78886258f1a8b00f 手順はほぼ同じ _s のダウンロード http://underscores.me/ Foundation の CSS と JS をテーマに埋め込む http://foundation.zurb.com/sites/docs/installation.html 本来なら Sass版を組み込んだほうが後々楽です。 https://github.com/Automattic/_s/blob/master/functions.php#L105-L113 functions.php 104〜114行目の部分を以下に...

shinyの出力にはoutputのリスト名でidが振られている

タイトルの通りなんですけども、 shinyを使ってレンダリングしているオブジェクトには どれもidが振られています。 そして、id名はouptut$hogehogeという風に指定した リストのattribute名がidとして振られます。 試しに、shinyのチュートリアルコードを走らせてみましょう # こっちがserver.R library(shiny) # Define server logic required to draw a histogram shinyServer(function(input, output) { # Expression that generates a histogram. The expression is # wrapped...

OSXにTensorflowをインストールする

環境 Python 3.5.2 OSX 10.10.5 事前準備 condaをインストールする http://conda.pydata.org/docs/install/quick.html#os-x-miniconda-install 環境構築 $ conda create py35con python=3.5 $ source activate py35con ※py35conは適当な名前 Tensorflowをインストール $ export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/mac/tensorflow-0.9.0-py3-none-any.whl $ pip3 install --upgrade $TF_BINARY_URL 参考サイト: https://www.tensorflow.org/versions/r0.9/get_...

Zend Framework 2 のイベントの流れをログる

Zend Framework のスケルトンアプリケーションのイベントの流れをログってみました。 方法 application.config.php の service_manager で SharedEventManager のファクトリを次のように設定します。 application.config.php // ...snip... 'service_manager' => array( 'invokables' => array( 'SharedEventManager' => null, ), 'factories' => array( 'SharedEventManager' => function(){...

いますぐ採用すべきJavaフレームワークDropWizard(その2)

Dropwizardについての続きです。 前回は以下の説明をしました。 mavenでのbuild Configurationクラス Applicationクラス Resourceクラス Representationクラス HealthCheck機能 今回は前回のサンプルに以下を追加していきます。 静的ファイルの表示 テンプレートエンジンによる動的ファイルの表示 ssl通信 認証 静的ファイルと動的ファイル maven設定 静的ファイルはdropwizard-assets 動的ファイルはdropwizard-views-freemarker、またはdropwizard-views-mustache に依存させます。...

JavaScriptのモジュールの書き方

モジュールの汎用的な書き方を整理したかったのでPromiseライブラリであるQをお手本に定義の基本的な処理だけを抜粋してみました。 お手本 https://github.com/kriskowal/q 定義の書き方だけを抜粋 1.基本 まずは基本構造として、モジュールを定義する関数とエクスポートする関数を分けている。 この時点でかなりわかりやすくてクリーンな感じがします。 MyModule.js (function(definition){// 定義する関数を引数にとり、エクスポート処理を行う関数 // モジュールのエクスポート...

BEAR.SundayでDoctrine2のORMとSymfony2のValidatorを一緒に使ってみた(1)

BEAR.SundayでDoctrine2のORMを使ってみた http://qiita.com/[email protected]/items/7b67e490ac59dcab0ca8 の続き。 前回はDoctrine2のORMを使ってDBデータを取得するところまでで終わった。 せっかくだから、今度はDBにデータを保存してみたい。 AppResourceにonPost()を追加 まずは前回のMy\NoteApp\Resource\App\Noteに新規登録用のonPost()を追加。 // src/Resource/App/Note.php namespace My\NoteApp\Resource\App; use BEAR\Resource\ResourceObject; use Doctrine\ORM\EntityMana...

Docker まとめ Chaos その2

概要 Docker まとめ Chaos で502エラーが頻発するようになったので記事を分けました。dockerについて書いていきます。現在適宜トピックを追加しており、書いていること精査はできていません。カオスです。 Kubernetes Kubernetes覚え書き に移動中 構築 Kubernetes クラスターを作成して Docker フォーマットのコンテナーイメージを実行する kubernetesによるDockerコンテナ管理入門 podの作成 ### httpdコンテナ作成用のYAMLファイルを作成 $ vi pod-httpd.yml =====================...

Emacs23でcaskを試す

追記: 最初に言っておきますがemacsあまり詳しくありません。 $ lsb_release -a No LSB modules are available. Distributor ID: Debian Description: Debian GNU/Linux 7.5 (wheezy) Release: 7.5 Codename: wheezy $ emacs --version GNU Emacs 23.4.1 Copyright (C) 2012 Free Software Foundation, Inc. GNU Emacs comes with ABSOLUTELY NO WARRANTY. You may redistribute copies of Emacs under the terms of the GNU General Public License. For more information ab...

gruntでファイル変更を監視しながらFuelPHPのテストをPHPUnitで実行する

注意 FuelPHPもgruntも勉強し始めたばかりのオレオレ流なので、真似て良いかどうかは疑って下さい TestCaseを継承したテストを実行する場合です PHPUnit_Framework_TestCase を継承するテストの場合は、 http://qiita.com/gigatune/items/e95936565c18e9e2e7ef の方が簡単です http://qiita.com/gigatune/items/e95936565c18e9e2e7ef のように、composer.pharでPHPUnit をインストールしているのが前提です 設定 項目 値 FuelPHP のプロジェクトpath /path/to/project gruntコマンドを...

MacにAnsibleをインストール

なんかMacをAnsibleのサーバーにした方がらくちんな気がしてきた今日この頃。 どうせ最初からPython入っているのでMacにAnsibleを入れてみた。 Pythonのバージョン確認 とりあえずバージョン確認。 $ python --version Python 2.7.5 Mervelicksは最初から2.7.5が入っているみたいなのでOK。 pipのインストール 公式参照。 http://pip.readthedocs.org/en/latest/installing.html $ wget https://bootstrap.pypa.io/get-pip.py $ sudo python get-pip.py らくちん。 Ansibleのインスト...