hawk4_nのブックマーク (399)

  • Visual StudioをMicrosoft Azure管理ツールとして使う - 株式会社CFlatの明後日スタイルのブログ

    AWSMicrosoft Azureの両者共に言えることなんですがWebの管理画面の使い勝手がそれほど良くはありません。例えばストレージやキューにデータを手動で置いたり削除したりするのはとても面倒です。Azureのキューに至ってはデータを閲覧できません。 Microsoft Azureを使っていてWindowsを持っているなら、Visual Studioが管理ツールとして使えます。例えばファイルストレージならこんなふうに見たりアップロードしたりできるわけです。 (Browsing and Managing Storage Resources with Server Explorerより) というわけで早速私も実践してみました あらかじめインストールしておいたVisual Studio 2013を起動し、サーバーエクスプローラを開きます。すると、、、 ない!! ストレージも仮想マシンも「A

    Visual StudioをMicrosoft Azure管理ツールとして使う - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2015/02/02
  • UnityでのXcode設定をUnityEditorのスクリプトだけで自動化する - 株式会社CFlatの明後日スタイルのブログ

    Unityが出力したiOS用プロジェクトの手動編集をなんとかしたいと考えていたら、同じような人がやはり多いようでいろいろな方法がブログエントリで紹介されていました。 UnityでXcodeのプロジェクト設定を自動化したい(c#でPostProcessBuildを書く場合) - Qiita A-Liaison BLOG: Unity の PostprocessBuildPlayer を使って Weak Framework を追加する方法 調べた感じではCodeEditor-for-UnityやxcodeprojというRubyのgemを使う方法が多くみられました。前者のライブラリは最近はメンテされていないようですし、後者の場合Rubyが必要になるということで広く導入しにくい(関係者全員にxcodeproj gem入れろとはいえない)ので別の方法がない限りできないかなーと思っていたら、なんとBi

    UnityでのXcode設定をUnityEditorのスクリプトだけで自動化する - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2015/01/05
  • Rails+Sidetiqでお手軽定時処理 on Heroku(無料!) - 株式会社CFlatの明後日スタイルのブログ

    Railsで定時処理をやろうと思って色々トライしました。Sidekiq+Sidetiqを使ってHerokuの無料分で動作させることができたのでその手順を紹介します。 Railsでの非同期処理 古いものから新しいものまでいろいろ選択肢があります。 collectiveidea/delayed_job resque/resque mperham/sidekiq そしてRails4.2で実装される(された)ActiveJobというアダプタのような仕組みがあります。 以前開発したのアプリケーションではResqueを使っていたことと、3つのgemのなかではSidekiqが一番新しいということでSidekiqを使いました。 Sidekiqでの定時処理 来Sidekiqは非同期処理のためのgemなので、Sidekiq単体では定期的に処理を実行するような仕組みはありません。X時間後に実行とかはありますが

    Rails+Sidetiqでお手軽定時処理 on Heroku(無料!) - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/12/22
  • jQuery の関数をオーバーライドする方法 - 株式会社CFlatの明後日スタイルのブログ

    今回は、jQuery を使って$('#hoge').hoge()とした時に、元のhogeの機能に加えて追加のコードが走るようにしたいですね、というお話です。 普通の JavaScript で関数をオーバーライドする方法 こちらは JSer なら常識ですね。 var orgHoge = window.hoge; window.hoge = function() { // TODO: 事前の追加のコード var result = orgHoge.apply(this, arguments); // TODO: 事後の追加のコード return result; }; なお、このコードを見て「処理が足りてないじゃないか」と言える方は、以降の話は全く必要ないかと思います。 jQuery の関数をオーバーライドする方法 では、jQuery で$('#hoge').hoge()とした時のhogeはどこで

    jQuery の関数をオーバーライドする方法 - 株式会社CFlatの明後日スタイルのブログ
  • Theano で Deep Learning <1> : MNIST データをロジスティック回帰で判別する - StatsFragments

    概要 ここ数年 Deep Learning 勢の隆盛いちじるしい。自分が学生の頃は ニューラルネットワークはオワコン扱いだったのに、、、どうしてこうなった?自分もちょっと触ってみようかな、と記事やらスライドやら読んでみても、活性化関数が〜 とか、 制約付き何とかマシンが〜(聞き取れず。何か中ボスっぽい名前)とか、何言っているのかよくわからん。 巷には 中身がわかっていなくてもある程度 使えるパッケージもいくつかあるようだが、せっかくなので少しは勉強したい。 Python 使って できんかな?と思って探してみると、すでに Theano というPython パッケージの開発チームが作った DeepLearning Documentation 0.1 という大部の聖典 (バイブル) があった。 当然だがこの文書では Theano の機能をいろいろ使っているため、ぱっと見では 何をやってんだかよく

    Theano で Deep Learning <1> : MNIST データをロジスティック回帰で判別する - StatsFragments
    hawk4_n
    hawk4_n 2014/12/01
  • UnityでOpenCVまとめ - 株式会社CFlatの明後日スタイルのブログ

    Unityで画像処理と言うと、まだあまり需要がなさそうですが、Oculus Riftの流れ的にも、これからニーズが増えそうですなあ。 さて、弊社でもUnityOpenCVを利用したくなったわけですが、現在パーフェクトな環境はまだなさそうです。 そこそこ調べたので、まとめておきます。 OpenCVSharp かなーり苦労されている様子がわかりますが、Unity Editor上で使っている人は下記にいるようです↓ https://warapuri.com/post/70283352060/unity%E3%81%A7opencv%E3%82%92%E5%8B%95%E3%81%8B%E3%81%97%E3%81%A6%E3%81%BF%E3%82%88%E3%81%86%E4%B8%BB%E3%81%ABmac%E5%AF%BE%E5%BF%9C 調べた感じ、iOS, androidで試して

    UnityでOpenCVまとめ - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/11/10
  • const int よりも int const と書こう、という提案 - 株式会社CFlatの明後日スタイルのブログ

    ……という提案を、試しにちょっとしてみます。 ポインタ型とconst C++er の皆さん、次のコードを正しく説明できるでしょうか? int hoge = 42; const int * p1 = &hoge; int const * p2 = &hoge; int * const p3 = &hoge; もちろん答えはこうなります: int hoge = 42; const int * p1 = &hoge; // p1の指示先を書き換える事はできないが、p1の指示先自体は変更可能 int const * p2 = &hoge; // p1と同じ int * const p3 = &hoge; // p3の指示先を書き換える事はできるが、p3の指示先自体は変更不能 つまり、constが*の前後どちらにあるかで意味が変わってくるわけですね。 この仕様は、知っている人にとっては不思議でも何で

    const int よりも int const と書こう、という提案 - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/10/27
  • 問.Cでオブジェクト指向プログラミングを行なえ - 株式会社CFlatの明後日スタイルのブログ

    問.Cでオブジェクト指向プログラミングを行なえ。ただし「オブジェクト指向プログラミング」とは、次のような特徴を持つプログラミング技法であるものとする: オブジェクトの実装はオブジェクトのユーザーからは隠蔽される(カプセル化/隠蔽) 同一型のオブジェクトと同一メソッドを与えた時、実際のメソッドの動作はオブジェクトの内容により変化する(ポリモーフィズム/多態性) なお、ユーザーが既存のオブジェクトをカスタマイズして新たなオブジェクトを作成する機能は、必要ないものとする。 この問いの狙い よく、「オブジェクト指向プログラミング」と「オブジェクト指向言語」は混同されます。が、前者はプログラムを設計する上での考え方で、後者はその考え方を容易にソースコードに書けるような仕様になっている言語の事で、全く違うものを指しています。 その証拠を示すため、「非オブジェクト指向言語」たるC言語で「オブジェクト指向

    問.Cでオブジェクト指向プログラミングを行なえ - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/10/20
  • openFrameworksを使ったフレーム編集 - 株式会社CFlatの明後日スタイルのブログ

    概要 動画からフレームを抜き出してOpenCVで加工する環境をopenFrameworksで準備してみました。 日語パス周りで少しハマったのでメモ代わりにブログに残しておきます。 動作環境 Windwos7 64bit openFrameworks0.8.4 visual studio 2012 professional opencv 2.4.9 完成図 日語の動画ファイルを読み込み、各フレームを反転して表示する キーフレームの戻る、進むをキーボードから操作する 作成手順 1. openframeworksをダウンロード windows download openFrameworks for visual studioからダウンロード。 まずはopenFrameworksLibのコンパイルが必要です。 詳細はこちらのリンク先 を参照して下さい。 libs\openFrameworksC

    openFrameworksを使ったフレーム編集 - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/10/06
  • 開発時に便利なUnityのTips - 株式会社CFlatの明後日スタイルのブログ

    今週はUnity開発時のTipsをいくつか。 取り込んだ画像の画質が悪い Aniso Levelの引き上げることで、急な角度でテクスチャを見る場合にテクスチャの品質を向上させる。 ついでにpng等透過画像の場合はAlpha is TransparencyのチェックをONにする。 この項目をチェックすると透過付きのテクスチャの透過と非透過部分との境界に発生するノイズが低減される。 NGUIのレイアウト NGUIはバージョンアップ毎に仕様が変わって大変ですが。 最初はFlexibleになってたはず。 これをConstrainedに変更しておけば、多少画面サイズが変わってもある程度いい感じにスケーリングされる。 http://www.tasharen.com/forum/index.php?topic=6710.0 GoogleAnalytics連携 ここ記事を参考にunity3d-google

    開発時に便利なUnityのTips - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/09/29
  • GreaseMonkeyのGM_setValue()の値はどこに? - 株式会社CFlatの明後日スタイルのブログ

    以前もご紹介した GreaseMonkey にて、GM_setValue() 関数がどこに値を保存するか、纏めてみました(Firefox のみ)。 以下、[@namespace]は GreaseMonkey スクリプトのメタタグ@namespaceに設定した値、[@name]は同じく@nameに設定した値、[設定項目]はGM_setValue("XXX", "YYY")のXXXの部分、の意。 なお、これらの情報は今後の FireFox や GreaseMonkey のバージョンアップにより古くなる可能性があります。 GreaseMonkey ~1.12 試しに情報を調べようとすると、いまだに出てくるのがこれ。 現行バージョン(ver 2.2 現在)では使われていません。 ロケーションバーに about:config を入力。警告が出ても華麗にスルーして設定一覧を表示。 greasemonk

    GreaseMonkeyのGM_setValue()の値はどこに? - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/09/22
  • アニメ風レンダリングが簡単にできるBlenderのFreestyleを試してみた。 - 株式会社CFlatの明後日スタイルのブログ

    Blender2.67から利用できるようになったFreestyleレンダリングが面白そうだったので、以前作ってみた動画で試してみました。 以前作った動画 今までにBlenderpythonを使って下記のような記事と動画を作りました。 Blenderの物理シミュレーションをpythonスクリプトで作成 - 株式会社CFlatの明後日スタイルのブログ ミルククラウンをBlenderpythonスクリプトで作成 - 株式会社CFlatの明後日スタイルのブログ カオス的挙動をBlenderpythonスクリプトで作成 - 株式会社CFlatの明後日スタイルのブログ Freestyleでレンダリング FreestyleでレンダリングするにはBlenderのバージョンを2.67以降に上げて、動画作成前に下記のコードを挿入するだけです。 bpy.data.scenes["Scene"].rende

    アニメ風レンダリングが簡単にできるBlenderのFreestyleを試してみた。 - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/09/08
  • Ansibleで自社Wordpressを移行を自動化 - 株式会社CFlatの明後日スタイルのブログ

    先日弊社Webサイト、http://www.cflat-inc.com のサーバーをAWSからさくらVPSに移行しました。元々t1.microを使っていたのですが、さすがに非力すぎて時折アクセスできないこともありました。かといってsmallを使うとスペックの割にコストがかかると考えさくらVPSを採用しました。 サーバーが決まったら次は環境の移行を行いますが、失敗することなく同一の環境を構築するためにまずはVirtualBoxの仮想マシンで動作を検証し、問題がなければさくらVPSでセットアップを行うという流れを取ることにしました。つまり2度セットアップを行うことになります。 2度同じセットアップを行うのはミスが入り込む余地だらけですし、そもそも面倒なのでいわゆるプロビジョニングツールを使うことにしました。PuppetとかChefに代表されるアレですね。今回はその中でも(機能的に)軽量であると

    Ansibleで自社Wordpressを移行を自動化 - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/09/01
  • CUDA6.0用にCPUとGPUの速度比較コードを修正 - 株式会社CFlatの明後日スタイルのブログ

    以前の記事でCUDAプログラミングする際に、CPUGPUを切り替える方法を書いたのですが、 その2日後にCUDA6.0が正式リリースされ、Unified Memoryという 新しいメモリ確保の仕組みが提供されました。 メモリ確保が簡単に CUDA5.5まではCPUGPUの両方にメモリ領域を確保して、それぞれのメモリからメモリへデータを転送するという作業をユーザーがする必要がありました。 CUDA6.0からはCPUGPUで使用するメモリを1変数で管理できるようになりました。当然データを転送する関数をユーザーが呼ぶ必要もありません。 やるべきことはGPUで使用する変数を用意してcudaMallocManaged()で領域を確保し、使い終わったらcudaFree()で解放するだけです。 メモリ管理が簡単になったので、今回は下記のようなコンストラクタとデストラクタでメモリの確保と解放を行うC

    CUDA6.0用にCPUとGPUの速度比較コードを修正 - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/08/25
  • 下手な高速化で地獄を見たお話 ~ XCode編 ~ - 株式会社CFlatの明後日スタイルのブログ

    こういうエラーが起きました。 「Could not insert new outlet connection: Could not find any information for the class named」というエラー。 第一手:IDEIndexDisableという犯人 スタックオーバーフローさん等でいろいろ解決方法が載っており、それらを片っ端から実行していったのですが、ダメ。 XCodeをアップデートしてもダメ。 そんな時この記事で一つ見逃していた箇所を発見。 ios6 - Could not insert new outlet connection - Stack Overflow I recently came across this problem. I soon realized that the cause had been my own doing. I had pr

    下手な高速化で地獄を見たお話 ~ XCode編 ~ - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/08/11
  • Xcodeで余計なCleanを避けるスクリプト - 株式会社CFlatの明後日スタイルのブログ

    XCodeでフォルダ内のファイルを全てプロジェクトに追加する方法には、二種類あります。 一つは「Create groups for any added folders」、もう一つは「Create folder references for any added folders」です。フォルダの色が黄色か青色か、という区別の仕方もアリ。 この二つの違いは以下の通りです: Create groups ...(黄色) 指定したフォルダと同様にグループ階層を作成し、その中に個別のファイルを追加します。 フォルダ内に新たにファイルを追加しても、プロジェクトには一切影響がありません。 リソースにこの方法でファイルを追加した場合、使用時にはフォルダ名を含まずファイル名のみで指定します。 Create folder references ...(青色) 指定したフォルダそのものをプロジェクトに追加します。

    Xcodeで余計なCleanを避けるスクリプト - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/08/04
  • Parse.comのREST APIを使ったPush通知 - 株式会社CFlatの明後日スタイルのブログ

    複数のアプリに対してParse.comを介してPush通知を送りたい場合、Webインターフェースでポチポチやるのは効率が悪く、とても辛い作業になってしまいます。Parse.comのサイトはレスポンスが少し遅いなと感じる程度である上に、1回1回が退屈な作業を何度も繰り返すことになるのでミスも入り込み易いのです。当然ですが、自動化・半自動化をするのが望ましいでしょう。 複数種類のiPhoneアプリを同時開発するときのTips - 株式会社CFlatの明後日スタイルのブログ REST API用のKEY REST APIを使うためには、アプリケーションIDとREST API用のアプリケーションキーが必要です。これらのキーを自動化スクリプトなり、専用のファイルなり、どこかに転載しておきます。 なお、iOS用のアプリケーションキーとREST API用のアプリケーションキーは異なります。 Rubyクライ

    Parse.comのREST APIを使ったPush通知 - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/07/28
  • C++からC++らしくJNIを呼んでみる - 株式会社CFlatの明後日スタイルのブログ

    JNI(Java Native Interface)はJavaとCの連携技術です。Javaアプリケーションの一部ロジックをCで書いたり、さらにその中からJavaのメソッドを呼び出したりする事で、アプリケーションの実行環境が制限される代わりに高速化、あるいは非Javaプラットフォームのコードとの共通化が行なえる、という寸法です。 JavaからC++の関数を呼び出す場合 JNIを用いてJavaからC++の関数を呼ぶ場合、こんな感じになります: // Java package com.cflat; public class Hoge { static { System.loadLibrary("hoge"); } public static native boolean printNative(String s, int x); public static boolean printJava(S

    C++からC++らしくJNIを呼んでみる - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/07/14
  • 忘れがちなXcodeの環境変数はコマンドで一覧できる - ぴよログ

    XcodeでHeader Search PathやLibrary Search Pathを設定するときには環境変数を使ってマシンや人ごとの差を吸収すべきなんですが、環境変数名が覚えにくいので何度も調べる羽目になります。 そんなとき便利なので、xcodebuildコマンドを使って環境変数一覧を表示させてしまう方法です。これを使うと全てを一覧できるので、あとは適当に使えそうなものを探すだけです。 というか、300行ぐらい出力されるので、こんなにあったのって感じで驚きますね。 $ xcodebuild -project MyApp.xcodeproj -target "MyApp" -showBuildSettings このコマンドを覚えておくのもしんどいのでシェルの関数として定義してしまうと楽です。 # .bashrc または .bash_profile xcodeenv() { xcodeb

    忘れがちなXcodeの環境変数はコマンドで一覧できる - ぴよログ
    hawk4_n
    hawk4_n 2014/07/09
  • cocos2d::CCGLProgramがアレなワケ - 株式会社CFlatの明後日スタイルのブログ

    前回のオマケ的な何か。 前回記事の最後で、私は次のように書きました: ともあれ、上記の結果から、原則としてfor版を使いつつ、for版が使えない時にだけ非for版を使ってやればよさそうだとわかります。 実はこの部分にもこっそりと妙な罠が潜んでいるのですが、これについてはまた別の記事にて。 というわけでその「別の記事」が今回です。 cocos2d::CCGLProgramのおかしな仕様 まず、次のコードを、適当なところに書いてみます。さて、どのようになるでしょうか? コードは Cocos2d-x 2系ですが、3系でも同様の事が起こるので試してみて下さい。 CCGLProgram *prog = new CCGLProgram(); bool result = prog->initWithVertexShaderByteArray("a invalid vertex shader.", "a

    cocos2d::CCGLProgramがアレなワケ - 株式会社CFlatの明後日スタイルのブログ
    hawk4_n
    hawk4_n 2014/07/07