Looking to improve your open source skills, or network with other open technology professionals? Explore our training and certification offerings and upcoming virtual experience events.
![Linux.com Japan | The source for Linux information](https://cdn-ak-scissors.b.st-hatena.com/image/square/023b8f3e20f4d396799c4faa614e9c605a728b7d/height=288;version=1;width=512/https%3A%2F%2Fwww.linux.com%2Fwp-content%2Fuploads%2F2019%2F08%2Fldc_social.jpg)
元々やりたかった事 apacheのアクセスログをfluentdで取り込んでElastic Searchに投入してKibanaで分析したい アクセスログはちょっと形式をいじってレスポンスタイムが記録されるようになっている ElasticSearchで10秒以上とか遅いアクセスを抽出したい 困った事 標準のapacheのログ形式は使えないので自前で下記の感じで正規表現を定義 <source> type tail format /^(?<host>[^ ]*) - - \[(?<time>[^\]]*)\] "(?<method>\S+)(?: +(?<path>[^ ]*) +\S*)?" ( ?<code>[^ ]*) (?<size>[^ ]*) (?<restime>[^ ]*) (?<resstate>[^ ]*)(?: "(?<referer>[^\"]*)" "(?< agent>
view.layer.cornerRadius = 3.0; view.layer.masksToBounds = YES; みたいにすればOKですが、「上側だけ」「下側だけ」「右側だけ」「左側だけ」丸くしたい、というケースがあります。 例えば片側だけ角丸にすることで、角丸になってない方に「画面の続きがある」ように見せる、とか。 (左側だけ角丸にしたビュー) 方法 どうやるかというと、cornerRadius自体は使えないのですが、 UIBezierPathで角丸のパスを生成 CAShapeLayerを生成し、1のパスをセット 2をマスクレイヤーとして(片側だけ角丸にしたいビューのlayerに)セットする という感じで実現できます。 サンプル たとえば、下側(左下、右下)だけ角丸にする場合は、下記のようなコードになります。 let maskPath = UIBezierPath(round
function relativepath($dst) { switch (false) { case $src = getcwd(): case $dst = realpath($dst): case $src = explode(DIRECTORY_SEPARATOR, $src): case $dst = explode(DIRECTORY_SEPARATOR, $dst): case $src[0] === $dst[0]: return false; } $cmp = DIRECTORY_SEPARATOR === '\\' ? 'strcasecmp' : 'strcmp' ; for ( $i = 0; isset($src[$i], $dst[$i]) && !$cmp($src[$i], $dst[$i]); ++$i ); return implode( DIRECTO
Javaで和暦を使う Java6から標準で和暦対応のCalendarクラスが提供されています。 Calendarクラスのインスタンス生成時にロケールが「ja_JP_JP」となっていれば 和暦に対応したJapaneseImperialCalendarインスタンスが生成されます。 DateFormatのパターンで元号は「G]で表します。 「G」が1~3個の場合「H」「S」のようにアルファベットで表示し、 4個の場合「平成」「昭和」のように漢字で表示します。 //ロケールを指定してCalendarインスタンスを取得 Locale locale = new Locale("ja", "JP", "JP"); Calendar calendar = Calendar.getInstance(locale); //calendar.getTime()で現在日時を取得して和暦にフォーマットする Date
以下の条件を満たす入力フォームの作成例です。 もっとスマートなやり方があるかもしれません。。。 和暦に対応する DatePickerではなくセレクトボックス形式で 不正な日付の入力は極力させないよう元号、年、月、日のセレクトボックスを連動させる 完成イメージ サンプル 1. HTML HTMLでは<select>タグのみ定義し、<option>タグはJavaScriptで設定します。 レイアウトにはBootstrapのグリッドシステムを使っています。 <div class="container"> <div class="form-group"> <div class="row"> <div class="col-sm-3"> <div> <select class="form-control" name="date_of_birth_era" id="date_of_birth_era"
ちょっとテストコードを見直す機会があったのでこの機会にTurnipを入れてGherkinで記述する事でより、第三者が見やすいようにしてみた。 その際に色々調べたのでメモ。 1 Turnipってなんぞや? 簡単にいうと、 ・大枠はCucumberと同じ ・Cucumberの際に一番ネックとなっていた正規表現の部分をよりプレースホルダーを使って簡単に記述 ・Capybaraの開発者が作ったものなので、Capybaraとの相性は申し分なし 2 Gherkin書式ってなんぞや? ・ Cucumber により拡張された書式。Business Readable DSL(≒仕様記述のDSL)といわれている ・システムの振る舞いを記述するための自然言語に近い書式 (下記の実際のコードを見てもらえれば理解できるかと思います) ※ちなみに...有名な他のDSLとしは、 Rspec :テストのDSL Chef
これは何かというと、最近イケてる(trendingな)リポジトリを一覧できるページ。 主に3つの一覧があるみたい。 Showcases Trending Stars Showcases 各ジャンルごとのリポジトリが色々載ってる。 例えば showcases/devops-tools というページには puppet, chef, ansible 等々のリポジトリ一覧がある https://github.com/showcases ↑のページの右上をみると RSS feed もあるみたい Trending https://github.com/trending Trending repositories (today / this week/ this month) 今日(今週/今月)話題になってるリポジトリ一覧 最近だと webscalesql/webscalesql-5.6 や faceb
selenium webdriver android-serverの準備 Androidのデバッグモードを有効にする Android 4.2以上はデフォルトで開発者向けオプションがない 「設定」=>「端末情報」=>「ビルド番号」を7回タップすると「設定」に開発者向けオプションが表示される 「デバッグモード」をonにする AndroidをUSBケーブルでMacにつないで、adbコマンド使えるようにする Driverがなければインストール PATHを通す $ vim ~/.bashrc # AndroidSDK export ANDROID_HOME="/Applications/adt-bundle-mac-x86_64-20131030/sdk/" export PATH="/usr/local/heroku/bin:/Applications/adt-bundle-mac-x86_64-
前回の続きです。 今回はウイルス検知処理をデーモン化するのと、ウイルス定義ファイルの自動更新するところをまとめますね。 1. ウイルススキャン処理のデーモン化 デーモン化にはclamdというパッケージが必要です。yumでインストールします。 # yum install clamd Loaded plugins: fastestmirror, security Loading mirror speeds from cached hostfile * epel: ftp.kddilabs.jp Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package clamd.x86_64 0:0.98.1-1.el6 will be installed --> Finished
What's Google Guava? Googleが開発しているOSSのjava core libraryで、Googleの多くのJavaベースのプロジェクトで使用されており、 Java 1.5 以上で使用できる。 昔、Google Collectionとして開発されていた。 Apache Commons の Lang、Collectionsなどに替わる機能を提供していて、パッケージ名を見れば大体の機能について想像がつくと思います。 com.google.common.annotations com.google.common.base com.google.common.cache com.google.common.collect com.google.common.escape com.google.common.eventbus com.google.common.hash c
By see like click 画像ファイル形式として極めて広く利用されているJPEG形式のメリットは、画像クオリティをある程度保ったまま圧縮する非可逆圧縮によりファイルサイズを小さくできることですが、Firefoxなどを開発する非営利組織のMozillaは、そんなJPEGファイルを品質を落とさずにさらに10%程度圧縮できる新しいJPEGエンコーダ「mozjpeg」のプロジェクトを開始しています。 新しい JPEG エンコーダ「mozjpeg」プロジェクトを開始します | Mozilla Japan ブログ http://www.mozilla.jp/blog/entry/10384/ 1992年頃に登場し、今ではウェブ上にある画像フォーマットの大半を占めるといっても過言ではないJPEG形式ですが、MozillaではまだまだJPEG形式が持つ圧縮能力は完全に実現されていないという結論に
2月くらいからツイキャス作ってるモイさんにジョインしております。 2月下旬にwakateweb(第7回若手Webエンジニア交流会 #wakateweb) というイベントがあって、LTしませんか?とメッセージ頂いたので、 「APIの宣伝になるかな」、と LT用にツイキャスAPIを使ってwebアプリを作りました。 作ったのは、 ツイキャスで配信中の動画を「まとめてこっそり見れちゃう!?」 サービスです。 ↓↓↓ Twitcast Monitor Room - ツイキャスモニタールームhttp://monitor-room.com/ (閉鎖中) (Safariブラウザ(PC)のみ対応) (イメージ) 一応、モバイルでも、 どのブラウザからも見れますが、Safari(PC)で見るのが一番おもしろいです。 *映像を100個くらい一気に動かすキチガイ仕様ですが…(注意) twitterでの反響? #w
schooで授業もやるし、まぁ隠しておく意味もないかなーと思ってので、wri.peのソースを公開する事にしました。 https://github.com/masuidrive/open-wripe 全部公開しているので、キーを適切にセットすれば自分で動かす事ができます。 元々、公開するつもりでは無かったので、ソースは読みやすくはなっていません(汗 pull-requestを貰えれば取り込みなども行いますので、興味のある方は直接投げてもらうか、Twitter/Facebookなどで声をかけてください。 4/1からwri.peの作り方を解説する授業を4週間schooで行いますので、興味のある方は聞いて頂けるとうれしいです。 増井雄一郎の「wri.pe」を事例に学ぶ、自作サービスの作り方〜サービスデザイン編 増井 雄一郎 先生 – 無料動画学習|schoo(スクー) Webサービスのつくり方
Promise API Overview Constructor var promise = new Promise(function(resolve, reject) { /* (非同期)処理 */ }); Instance Method promise.then(onFulfilled, onRejected); promise.catch(onRejected); Static Method Promise.all() 、 Promise.resolve() などの便利メソッド系 Promiseのキホン的な流れ function asyncFunction() { return new Promise(function (resolve, reject) { setTimeout(function () { resolve('Async Hello world'); }, 16);
これは便利!意外と使えるiPhone純正イヤホンの隠し機能8つ Tweet 1:以下、暇人がお送りします:2014/03/31(月) 【豆知識】活用してる? 意外と使える iPhone純正イヤホンの隠し機能8つ この「隠し機能」はイヤホンについているコントローラーに備わっているものだ。コントローラーには、「+」と「−」がついているので、音量の調整ができることは想像がつくが、ほかにもこんな使い方があるのだ! 【意外と使える純正イヤホンの隠し機能8つ】 1.曲やビデオの再生 / 一時停止 ・コントローラーのセンター(真ん中のくぼみ)を1回タップ 2.曲やビデオのスキップ ・次の曲にスキップ → センターを2回タップ ・前の曲にスキップ → センターの中央を3回タップ 3.曲やビデオの早送り / 巻き戻し ・早送り → センターを2回タップ、2回目を長押し ・巻き戻し → センターを3回タップ、
KDE ProjectのオープンソースのオフィススイートCalligra(旧名称:KOffice」開発チームは3月28日、最新版「Calligra Suite 2.8.1」をリリースした。 CalligraはKDE Communityの下で開発が進んでいるKDE向けの軽量オフィススイート。旧名称は「KOffice」で、ワードプロセッサ「Words」、表計算「Sheets」、プレゼンテーションツール「Stage」、ビジュアルデータベース「Kexi」、プロジェクト管理ツール「Plan」、ダイアグラム/フローチャート作成ツール「Flow」、ドローソフト「Karbon」、ペイント/画像エディタ「Krita」などを含む。 2.8.1は、3月初めに公開されたバージョン2.8のメンテナンスリリースとなる。2.8ではWordsおよび書籍編集ツール「Author」でドキュメントにコメントを入れられる機能が加
Single Page Application ではない場合 JavaScript コードのエントリポイントはどこにあるべきか? - @kyanny's blog Backbone.Routerは基本的にhistory APIやhashchangeを使ったSPAのためのルーティングをしてくれるものなので、SPAじゃない場合に使うのはあんまりオススメできない。 方法は色々だと思うけど、自分の場合はそういうケースでは次のような簡易的なURL Dispatcherを書いて対応することが多い。 dispatcher.js これをこんな感じで使う。 // main.js new Dispatcher() .route('.*', 'Common') .route('/', 'Top') .route('/user/([^/]+)', 'User') .dispatch({ path: locatio
【ピックアップ】は世界のテク系スタートアップの資金調達やトレンド記事を概要と共にお届けします 国会提出法案等: 金融庁 3月31日19:50追記 本記事におけるクラウドファンディングの閣議決定について、追加説明をさせて頂きます。「閣議決定」とは、閣議決定後に法案を国会にて提出、衆議院と参議院にて可決、国会にて成立後公布、施行という流れとなります。そのため、正式な法案成立というわけではなく、今国会での成立を目指し、今国会で成立すれば2014年度から施行されることとなります。 また「これまでは、未上場の企業に関する株式の投資は禁止されていたのですが」の記述に関して不適切な表現とのご指摘をいただきました。補足としまして、従来は未上場株に対する投資勧誘は、日本証券業協会の自主規制で原則禁止(グリーンシート銘柄に関しては投資勧誘が可能)という状況でした。これが、新制度では日本証券業協会の自主規制に基
時刻表風のフリーフォント「DiaPro」が個人開発者のばっとさんによって公開された。車両や車種を示す記号もフォントとして表示できる。 文字を組み合わせて特定の記号を表示する合字(リガチャ)機能を利用し、「グリーン車」「寝台車」などの車両、「特急」「快速」などの車種、発着番線などを示す記号もフォントとして表示できるのが特徴だ。合字は、欧文・英文両方に対応。「NoSmoking」「きんえんしゃ」と入力すると、どちらも「禁煙車連結」の記号を表示できる。 全角数字を入力すると太い書体になるなど、時刻表の表現に特化した機能を搭載。アルファベットとひらがなが入っているが、あくまで合字入力用であり「欧文フォントやかなフォントとしての利用はお勧めしない」としている。 紹介ページには、画像を使わず全て同フォントのみで組まれた時刻表のサンプルを掲載し、合字をプレビューできるテキストボックスも設けている。 開発
「HackerNews翻訳してみた」が POSTD (ポスト・ディー) としてリニューアルしました!この記事はここでも公開されています。 Original article: What is a Web Framework? by Jeff Knupp Webアプリケーションフレームワーク、略して「Webフレームワーク」がWeb対応のアプリケーション構築に広く使われているのは、皆さんご存じですよね。単純なブログからAjax機能を搭載した複雑なアプリケーションまで、Web上のすべてのページはコードで記述されています。最近気になるのは、FlaskやDjangoのようなWebフレームワークに興味を持ってはいるけれど、実際にはWebフレームワークの目的や機能をちゃんと理解していない開発者が意外に多いということです。そこでこの記事では、ややもすれば見落とされがちなトピックであるWebフレームワークの基
2014年4月1日(火)に消費税が5%から8%へ17年ぶりに引き上げられることになり、ありとあらゆる製品・サービスの価格・料金に変動が生じます。増税となることで消費者の負担増となるため、日常品や食料品などの税率を抑える軽減税率の導入が議論されていますが、世界的に見たときに日本の消費税と軽減税率は高いのか?低いのか?軽減税率とは一体何なのか?ということがわかるインフォグラフィックが公開されています。 どんな差がある?世界の消費税(付加価値税)と軽減税率 | Harmoney.jp http://www.harmoney.jp/archives/1121 以下は国ごとに黄色で消費税(標準税率)、茶色で食料品などの軽減税率を表したもの。最も消費税が高い国はハンガリーの27%で、同率2位のノルウェー・スウェーデンが25%と増税後の日本と比べても3倍近くの消費税が設定されていることがわかります。一方
先週末、もろもろの事情によりMacのOSをMavericksにアップデートしたので、 そのとき発生した問題と解決のメモ。 結論から言えば、 全部がんばれば直ります。 なので、がんばれるときにやった方がいい。 ちなみにおかげで、Lobic Pro Xが使えるようになった。うふふ。 何より先に xcode-select install で、xcodeのコマンドラインツールをいれた方がいい mountain-lion以前と違い、XCode起動してインストールする形じゃないので注意 各種ソフトウェアの現象と解決 virtualbox アプリ自体は動くけど、VMの起動ができない → 丁度アプリのアップデート来てたので、アップデート(というか再インストール)したら直った VMの設定など無事 genymotion 起動できなかったけど、virtualboxなおしたら復活 Emacs 起動できるけど、 p
Article Number: 96 | Rating: 4.3/5 from 60 votes | Last Updated by rspielman on Wed, Mar 6, 2024 at 8:44 PM Installing Nagios Core From Source This document describes how to install Nagios Core from source. This guide is broken up into several sections and covers different operating system (OS) distributions. If your OS Distribution is not included in this guide then please contact us to see if we
何を使うべきか? 公式サイトのForumにて http://www.scala-lang.org/node/9826 Java における JUnit のようなデファクトスタンダードはないの? ScalaTest を使うとしてどのスタイルが一般的?(JUnit、BDD、Features、FunSuite・・) ScalaTest、specs(specs2)、ScalaCheck、JUnit、TestNG あたりが選択肢 どれか一つに絞るというより、ScalaTest と ScalaCheck を併用のような使い方もアリ 私は ScalaTest を BDD スタイルで使うことが多い ScalaCheck の入力を自動生成するアプローチは機能テストのようなものに特に向いている 私の環境(Java/Scala が混在する maven プロジェクト)には ScalaTest よりも specs の
<?php use Aws\DynamoDb\DynamoDbClient; $dynamo = DynamoDbClient::factory(array( 'key' => AWS_KEY, 'secret' => AWS_SECRET, 'region' => AWS_REGION, )); <?php $result = $dynamo->putItem( array( 'TableName' => 'table_name', 'Item' => $dynamo->formatAttributes( array( 'key1' => $value1, 'key2' => $value2, 'key3' => $value3, ) ), // INDEXES | TOTAL | NONE 'ReturnConsumedCapacity' => 'TOTAL', // NONE | A
Railsはエラーページをもともと用意してくれていて本番で動かすと そこに飛ばしてくれるので、まぁいいっちゃいいのですが、 簡単に設定できるのでやってしまえばいいかと。 (レイアウトとかそのまま使えてサイト内ページっぽくなるし) ■環境 Rails 4.0.3 Ruby 2.1.1 とりあえずローカルで見たいのでWEBric(rails s)を本番設定で起動して確認します。 (developmentのままだといつもの赤いページが表示されます) まず、ActionController::RoutingErrorを拾うためにroutesに設定が必要です。 # config/routes.rb # どこにも当てはまらなかったものを取得するので最終行に書いて下さい。 get '*path', to: 'application#render_404' class ApplicationControl
using Newtonsoft.Json; using Newtonsoft.Json.Converters; using Newtonsoft.Json.Linq; public class MyToken { [JsonIgnore] public int? id {get;set;} public int Number { get; set; } public string Name { get; set; } [JsonExtensionData] public IDictionary<string, JToken> Extends; } [TestMethod] public void TestSerializerExtensible() { var token_str = @" { ""Number"": 432143, ""Name"" : ""Hoge Hoge"", "
プライムとCRTパラメータが無い場合は、RsaKeyParameter(true) で生成すること! それ以外はRsaPrivateCrtKeyParameters()(こっちの方が処理が速い) public static RsaKeyParameters ToRsaPrivateKey(this Jwk jwk) { System.Diagnostics.Debug.Assert(jwk.kty == Jose.Jwa.KeyType.RSA); // Private Key if( jwk.p == null ) { return new RsaKeyParameters(true, jwk.n, jwk.d); } return new RsaPrivateCrtKeyParameters( jwk.n, // Modulus jwk.e, // Pulbic Exponent jw
smartparens.elは対応カッコの自動挿入や選択範囲をカッコで囲むなど便利なelispです。 しかし、いつの間にかEmacsでカーソルを動かすだけで少しフリーズするようになり、その原因がsmartparens.elだということがわかりました。 次の機能を使わなければ、他の良い機能は快適に使い続けられるかと思います。 原因1 対応カッコのハイライト機能 show-smartparens-global-modeを有効にしているとかなり重くなるので現状使わないほうがいいかもしれません。 smartparens-global-modeだけ有効にしています。
Zabbixでのログ監視の自分的設定メモ すぐに忘れてしまうのでこちらに残しておきます。 アプリ系のログは通常はfluentdを使ってログをゴニョゴニョしてメールを飛ばしているが システム系ログをZabbixで監視設定した時のメモ。テンプレートにすれば楽なので。 ポイントは普通に設定してしまうと監視対象のログの全メッセージが Zabbixに格納されてしまい、無駄に容量食うので必要なキーワードだけを監視対象にしたい。 前提 前もってZabbixがroot権限で実行できるように/etc/zabbix/zabbix_agentd.conf内の# AllowRoot=0をコメントインしておく。 # AllowRoot=0 ↓↓↓ AllowRoot=1 メモ GUIでZabbixサーバへログインし、管理 -> 一般設定 -> GUIの設定 -> 正規表現 -> 正規表現の作成 条件式を下記のように
WindowsでのPHP開発を教えるようになってきましたが、環境構築でXAMPPの特殊な手順をどうしても覚えたくなかったのでVagrantをWindows対応させました。CentOS 64bit版が動かないパターンに遭遇したので、32bit版のboxを使っています。 (05-01 21:15) Ruby InstallerのRubyコマンドプロンプトの説明を追記 🍮 VirtualBoxVirtualBox 公式サイト パッケージをDLしてインストール。 🤔 Ruby InstallerRuby Installer Rubyの安定版&最新版をダウンロード。(3/30時点ではRuby 2.0.0-p451) インストールが完了したら、Windowsのスタートメニュー内に「Ruby x.x.xフォルダ内にRubyコマンドプロンプトを開く」というショートカットが増えていると思います。ここをク
最近はカレンダーというとWebアプリケーションで提供するケースが多いように思いますが、今回はGUIアプリケーションを紹介します。しかもJava製とあって、Windows/Mac OSX/Linuxとマルチプラットフォームで動作します。 Raplaは単独のクライアントアプリとしての動作も、サーバモードとして立ち上げて他のRaplaから接続することもできます。カレンダーサーバとして社内で共有するのも良さそうです。 Raplaの使い方 メイン画面です。左側に種別、右側がカレンダー表示になっています。 マウスのドラッグで時間の幅が指定できます。 イベントを作成します。 Java製だからでしょうか…ちょっと表示が残念な感じです。 エクスポートはCSVまたはiCalでできます。 設定画面です。 デイビュー。一日だけのスケジュールが確認できます。 アポイントメント。予定だけをリストアップします。 マンス
CoreOS は Alex Polvi が設立した会社であり、OS、新しい Linux Distribution である。OSS で公開されている。 Polvi 氏といえば Rackspace に 買収された CloudKick を立ち上げ、その後も Rackspace 働いていたクラウドの専門家とも言えるだろう。 その Polvi 氏以外にも Googler や Linux 関連の人材、アドバイザーに Linux の stable branch のメンテナ を迎えるなど、Linux に関する知識がかなり豊富なメンバーが集まっている。 その彼らが作っているのが CoreOS である。 CoreOS は Google や Facebook などの環境を参考にしており、柔軟にスケールし、さらにはインフラ構築その もののプロセス自体も効率よく合理的に行えるよう設計されている。 また運用、管理(セ
自社でDNSサーバを管理する際にその選択肢としてはBINDまたはPowerDNSなどが考えられます(他にも幾つもありますが)。PowerDNSはMySQLやPostgreSQL、OraleやLDAPなどと組み合わせて使えるのが魅力です。 そんなPowerDNSを管理するフロントエンドがPowerDNS GUIです。Webベースで使えるので任意のブラウザから管理出来ます。 PowerDNS GUIの使い方 PowerDNS GUIがあれば普段の運用時のドメイン設定においては十分ではないでしょうか。サーバにログインしたりしない分、不用意にアカウントを作成したりしないので安心して運用できます。履歴機能もあるので社内運用にぴったりでしょう。 PowerDNS GUIはPHP製のオープンソース・ソフトウェア(GPL)です。 PowerDNS GUI pdns-gui - PowerDNS GUI -
webmobileは、みんなが知りたいスマホ・通信ガジェットの使い方を発信しているレビューサイトだよ♪ webmobile(ウェブモバイル)は、大好きなPixel/iPhone/MVNO/amazonについて、気づいたこと・困った事の解決など経験したことを発信しています。 運営歴はかれこれ10年以上です。 私が初めて買ったスマートフォンは、auから発売されたSHARP製IS03。今でもデザインの良さに感銘を受けます。 今のメイン機はGooglePixelとiPhone15ProMAXです。 昔はASUS製ZenFoneにはまり、新製品が発売されるごとに買っていました。 MVNOのお店に我が子と訪ねる旅、楽しかったなぁ♪ ご縁あって、UQコミュニケーションズ本社に行くこともありました。 UQモバイル公式グッズをたくさん手に入れる機会がありました。 東京新宿にあるLINE株式会社に招待して貰っ
DDN は 音楽 ・ 映像 に関する デジタル アート を中心に情報ミックスを配信中
お手軽に各種バンディットアルゴリズムの特性・性能を比較することができる Web ベースのバンディットアルゴリズムシミュレータを、Yeoman, Bower, Grunt, D3.js, NVD3.js, AngularJS, Bootstrap なんかを使って作ってみましたよ、というお話です。 デモサイト&ソースコード シミュレータのデモサイトとソースコードはそれぞれ以下になります。 デモサイト : http://playground.k11i.biz/bandit-simulator/ ソースコード : https://github.com/komiya-atsushi/bandit-simulator 動機 とあるお仕事で各種バンディットアルゴリズムの特性を調査・検証したことがあって、そのときは Java で各種アルゴリズム&シミュレータを実装 → TSV ファイルにシミュレーション結
今回はパソコンで各種スマートフォンでの表示を再現できる便利なアプリケーション【Mobilizer】の導入方法を解説します。 Mobilizer - Preview tool for mobile development on Vimeo 【Mobilizer】をダウンロードするにはまずこちらに移動してください。 Springbox | Mobilizer | Mobile Preview Desktop App 画像にあるようにメールアドレスを入力してください。 その後Downloadをクリックするとすぐにダウンロードリンクが貼られたメールが来ます。 そのリンクをクリックすると自動的にダウンロードが始まります。 上の画像のファイルが落ちてくるんですがあまり見かけない拡張子.air です。 このファイルを開くにはAdobe AIRが必要になります。未導入の方はこちらからダウンロード出来ます。
とはいえ、屋外のWi-Fi環境のない場所での、モバイルネットワークでの視聴は、データ通信量の大きさを考えると、避けたいものです。そうなると、自宅でレコーダーから番組を転送しておき、外に持ち出すほうが現実的でしょう。 SONYの「TV SideView」アプリは、4月下旬のアップデートで、SONYのBDレコーダーから番組を持ち出せる「ワイヤレスおでかけ転送」と、「外から予約録画」が利用可能です。 そしてこの「ワイヤレスおでかけ転送」と「外から予約録画」は、何もBDレコーダーを持っていなくとも、実は「ある製品」を持っていれば、実現可能です。 リーズナブルにスマホ・タブレットを「テレビ化」 その「ある製品」とはSONYのネットワークレコーダーnasne(ナスネ)です。モノリスみたいなデザインがかっこいいですね。 nasneはメディアストレージにもなるネットワークレコーダーです。家庭のWi-FIネ
markusさんは12歳の時にXboxを分解しMODチップを使って改造した経験を持ち、ハードウェアハッキングに情熱をささげるレンセラー工科大学の学生です。そして2011年に発売されたもののハッカーによってカーネルアクセスに成功され、ファームウェアもダンプされた「ニンテンドー3DS」のCPUを、ソフトウェアではなくハードウェアの側面からの分解に挑戦し、その様子を公開しています。 Depackaging the Nintendo 3DS CPU http://gaasedelen.blogspot.jp/2014/03/depackaging-nintendo-3ds-cpu.html メモリを分解するのに、markusさんはニンテンドー3DSのマザーボードをeBayから5ドル(約520円)で購入。また、大学の同級生からニンテンドー3DS LLのマザーボードもゲットしました。 こちらが今回分解
在宅してくつろいでいるとき、あるいは家事をしているとき、よく音楽を流しているという人もいるだろう。今はWebの音楽ストリームを利用することも当たり前になったが、同じ音楽を家中のあちこちで楽しみたいなら、「Beep」という新しい音楽ツールがよいかもしれない。 手のひらほどの小型の大きさのデバイスで、家庭のワイヤレスネットワークを使い、各スピーカーを連動させて、Webからの音楽を流すことができるというもの。この「Beep」の優れている点は、わざわざ「Beep」専用のスピーカーを用意する必要がなく、AUX、RCAなどの適合する外部端子さえあれば、どんな既存のスピーカーでも使えるところだ。たとえば、リビングのホームシアタースピーカーで流している音楽を、そのままキッチンのスピーカーでも同時に流す、といったようなことが可能になる。 また、「Beep」の機器本体には、再生や音量調節機能も付いていて、1度
「Qi」規格によるワイヤレス充電・Bluetoothによるスピーカーからの音楽再生とデータ通信による音楽ファイルの自動同期・Wi-Fi接続によるTwitterやメールなどの受信通知とLEDの組み合わせなど、ありとあらゆることをこなしまくってくれる驚くべき多機能さを兼ね備えたすさまじいスピーカーが「Glowdeck」です。 Glowdeck - A companion for your smartphone. by Power Light and Sound Company, Inc. — Kickstarter https://www.kickstarter.com/projects/glowdeck/glowdeck-a-companion-for-your-smartphone 「Glowdeck」がどのようなスピーカーなのかは以下のムービーから見ることができます。 「無線充電パッド」
Deprecated: Hook custom_css_loaded is deprecated since version jetpack-13.5! Use WordPress Custom CSS instead. Jetpack no longer supports Custom CSS. Read the WordPress.org documentation to learn how to apply custom styles to your site: https://wordpress.org/documentation/article/styles-overview/#applying-custom-css in /home/ho2/hayashikejinan.com/public_html/wp-includes/functions.php on line 6078
状態動詞と動作動詞の違いと見分け方 について例文を用いて解説します。 状態動詞と例文 現在形の解説で、以下の例文を用いました。 I live in Japan. 「私は、日本に住んでいます。」 通常、この文は以下のような 現在進行形の文にはできません。 I'm living in Japan now. 「私は、今日本に住んでいるところです。」 ※仕事などで一時的に日本に住んでいるという場合、 進行形の形を使ってI'm living in Japan.と言えますが、 現在進行中の動作を表している訳ではありません。 なぜでしょう? 現在進行形は今まさに進行中の動作を表し、 その動作をすぐにやめたりすぐ始めることができる 動作動詞の時に現在進行形を作ることができます。 上の文で用いられているlive「住む」という動作は、 3秒後にやめたり、始めるということができません。 普通どこかに住んたらある
Javaは言語仕様上の制約により、ボイラープレートコード(自明だが省略できないお決まりのコード断片)がいくつかあります。例えば、メンバ変数を読み書きするだけのgetterメソッドやsetterメソッドがこれにあたります。Lombokを使えば、これらJava特有の冗長なコードを、見やすく簡潔なものにすることができます。本記事ではLombokを利用して、ボイラープレートコードをシンプルに記述する方法について解説します。 はじめに 今やJava開発に必要不可欠となったものの一つに、IDEの存在があります。例えばEclipseではメンバ変数さえ定義すれば、getter/setterの自動生成や、equalsメソッドやhashCodeメソッド、toStringメソッドなどの自動生成などさまざまな場面でコーディングを強力にサポートしてくれます。 これは大変便利な機能ですが、裏を返せばJavaの言語仕様
UPDATE: Round 2 of Testing (November 2014) is now available. WordPress as a platform has become the most popular CMS around, claiming to power almost 19% of the web. As a result, Managed WordPress hosting has become a very popular niche. Many companies in the managed WordPress space are charging a very high premium over the traditional shared web hosting providers. So beyond the marketing speak, w
iPhoneなどの急激な普及により、PCとモバイルデバイス間の同期やシェアリングに関する新しいサービスが次々に生まれています。 こうしたサービスを利用すれば、モバイルで撮影した写真をPCへ送ったり、パソコンで閲覧したURLをモバイルへ送るなどといったことが簡単にできるようになり、情報やデータをどこからでも参照することができるようになります。 今回はそんなサービスの中から、Firefoxを使ってモバイルとPCでデータの送受信を行うことができる「Pushbullet」をご紹介したいと思います。 「Pushbullet」は、Android端末やiOS端末のデータをFirefoxやGoogle Chrome、およびWindowsアプリ(Beta版)を使ってPCと送受信することができるというサービスです。 Firefoxをご利用の方なら、専用のアドオンをインストールしておくことで、閲覧中のURLや選
こんにちは、運用部 アプリ運用グループの清水です。Golang鋭意勉強中です。 今回は、SNS「mixi」に限った話ではなく、ミクシィ社全体として利用している仮想環境について紹介したいと思います。パブリッククラウドも一部のサービスで利用していますが、今回は、自社で運用している仮想環境にフォーカスして書いてみようと思います。 今まで利用してきた仮想環境 今まで利用してきた仮想環境というと、手作業で構築したKVM(Kernel-based Virtual Machine)環境が中心でした。手作業といってもある程度手軽に構築できるように、シェルスクリプトとCobblerでVMを構築できるようになっています。構築の流れは以下のとおりです。 CobblerにVMのIPやホスト名などをスクリプトで登録する。 KVMのホスト上でスクリプトを実行(koanコマンドでCobblerと連携してVMをセットアッ
2014.03.31 Project Tango:GoogleのMaker向け3Dスキャナー付き電話 Text by kanai 今、私は Tango を手にしている。数日前にこれが発表されてからは、こいつがこの10日間で最高にホットなガジェットだ。 私にとって、これは魔法に近かった。2003年にTrimbleに買収されたMENSIチームの一員として、90年代(前世紀だぞ、若者たちよ!)から3Dスキャンに関わってきた私は、そのころから家庭で使える3Dスキャン装置を夢見ていた。Xbox 360に接続して使うMicrosoft Kinectは家庭用3Dスキャナーの主流となり、何百万台も売れた(そのうちいくつかはハックされた)。そして今、Googleにいる我らの友人たちが、ポケットサイズの、実用的な、3Dスキャナフォンという新しいツールを開発してくれたのだ。そのGoogleのProject Ta
(訳注:この記事は本家OKFn.org記事の日本語訳です) データのために「バージョン管理」を行う能力は重要な関心事です。様々な選択肢がありますが、最も魅力的なもののひとつは、Git やMercurial のように、コード用の既存ツールを再利用することです。この投稿では、私たちが暫くの間使用してとても効果的だということが分かったツールを利用する、データの格納とバージョン管理のための単純な「データ・パターン」について記述しています。 序章 行われた変更を格納し、それを他の人と共有する、データのバージョンとリビジョンを管理する能力、とりわけ分散的な手法は(オープン)データ・コミュニティにとって大きな便益となるでしょう。私はその理由を以前(こちらの初期の記事を参照)議論しましたが要約すると: 効率的な分散型の共同作業が可能です。私のデータセットを取り出し、変更し、それを再び私と(同時に他の人とも
日本におけるテスト駆動開発(TDD)のスペシャリストとして知られる和田卓人氏。講演活動やハンズオンイベントを通してテストの重要性を語り続けている。その深奥にあるプログラムの哲学とは── 父親がデータベース設計を得意にするソフトウェア・エンジニアで、受託開発の会社を経営していました。私は大学在学中からその仕事を手伝っていて、その延長で大学を出るとその会社の一員になりました。 そのころのことで一番印象に残っているのは、電子政府関連の公共システム開発に関わる大規模プロジェクトへの参加です。複数のSIerやソフトハウスが関わり、要件定義に時間をかけ、膨大な設計文書をつくっては、何千人というエンジニアを投入する、典型的な大規模システム開発です。私はそこにSEの一員として参加することになりました。 ただ、私は初日から生意気にも「Excelで設計書を書き続けるために来たのではありません」と嘆願して、基盤
はじめに 色々、テストをしてみてる結果をまとめてみた。 検証は、自分がやっている訳ではないので、検証結果からのまとめ。 あと、公開出来ない部分もあったるするので、若干、整理しきれてないけど その辺は、また、修正出来るかな。 以下の感じで繋がっている。 td-agent --> td-agent out_webhdfs ---> HDFS ZeroMQ_pub ---> Subscriberここまでのチューニングで、上記の2つのPluginが、ボトルネックになるという事がわかった。 ZeroMQ_pubは、Aggregatorに仕込んであり、情報が見たい時に、自由に件数などを見れる様にしているらしい。 ということで、以下、チューニング。 チューニング zmq_pubについて zmq_pubは単一スレッドで動いている。その場合、fluentdがflushできるのは1秒間に1チャンクのみ。 従っ
nrbrook/BlurBox GitHub 背景をぼかしてコンテンツを立体的にみせるLightBox「BlurBox」 次のような、背景はそのままだけどボカすことで一眼レフで撮影したような立体感を出すことができるようです。 ブラウザの発達でこういうこともFlashなしで出来るようになりましたね。 関連エントリ レスポンシブで何でも埋め込めるLightBox実装jQueryプラグイン「VenoBox」 レスポンシブでタッチフレンドリな軽量LightBox実装jQueryプラグイン「Image Lightbox」 フラットデザインが美しいレスポンシブなLightbox「Nivo Lightbox」 動画/地図/画像のポップアップが可能でレスポンシブなLightBox実装jQueryプラグイン「MagnificPopup」 Medium風のシンプルなLightBoxが実装できるjQueryプラ
全角ひらがな・カタカナ・アルファベット・数字などに対応した手作りフォントが「はらませにゃんこ」。無料でダウンロードでき、デジタル・アナログどちらのコンテンツにも使え、商用利用や改造も可能です。 フリーフォント「はらませにゃんこ」 http://inatsuka.hp2.jp/extra/haranyan/ 使用例はこんな感じ。フォントは「手作りならではの柔らかさ・雑さが魅力」とのこと。 力強いフォルムなので、タイトルやロゴデザインに活用しても目を引きます。 収録文字はひらがな・かたかな・数字・記号・アルファベットなど。 「ミリ」や「センチ」などの環境依存文字は肉球や猫・ハートなどの記号となって変換されます。 ダウンロードはページ下部のオレンジのボタンを押すと始まります。 「はらませにゃんこ」の作者は稲塚 春さん。使用するコンテンツの種類を選ばず、商用利用も可能ですが、勝手に第三者に利用許可
Months after adopting the Red Hat Enterprise Linux clone CentOS, Red Hat is starting to unveil its CentOS plans. Napa Valley, CA: First things first. Here's what Red Hat is not planning to do with CentOS: 1) Red Hat's not going to charge you for CentOS; 2) CentOS will not be replacing Red Hat's community distribution, Fedora; and 3) CentOS is not being put out to pasture to die. OK? OK! So, what
InnoDBのテーブルから、プライマリキーを取得するクエリを書いたのに、なぜかセカンダリインデックスが使われることがある。この仕組みを、InnoDBのインデックスの格納方法から解説する。 今日、EXPLAINの結果を色々と試してみている時に、興味深い問題にぶち当たったので、ドキュメントには載っていないこの現象をここで共有しておこう。 とても単純なInnoDBのテーブルを考えるところから始めよう。2つのINT型のカラムを持ち、最初のカラムがプライマリキーで、2番目のカラムに普通のインデックスが張ってある。 CREATE TABLE `t1` ( `id1` int(10) unsigned NOT NULL, `id2` int(10) unsigned DEFAULT NULL, PRIMARY KEY (`id1`), KEY `id2` (`id2`) ) ENGINE=InnoDB;
X-editable Demo Bootstrap3ベースでコンテンツのインライン編集を可能にする「X-editable」。 クリックすると編集ボックスに切り替わるあのUIをクールにBootstrapで実現できます。 インラインだけでなく、ポップアップでの編集も出来ます。 関連エントリ Bootstrap用、横スライド式メニュー等の追加コンポーネントが使える「Jasny Bootstrap」 フリーのBootstrapテーマが満載「Bootstrap Zero」 Bootstrap用のフォームバリデーター実装jQueryプラグイン「BootstrapValidator」 Bootstrap対応でレスポンシブなWYSIWYGエディタ「Summernote」 Bootstrapなalert,confirm,promptが実装できる「Bootbox.js」 Bootstrap3のUIをベクター形
「Casto」はライブコーディングを支援するサービスです(開発者ブログ)。 ファイルをドロップするすると、ファイルの変更内容が、サーバーを経由して、ブラウザ側にリアルタイムに反映されていきます。URLを共有すれば、複数のユーザーで同じライブ編集を共有できるので、遠隔地の開発者がコラボレーションして作業するときに便利かもしれません。 使ってみた 「Start Coding」を押すとファイルのドロップが可能になります。適当なファイルをドロップします。ここに表示されたURLを表示すれば同じ編集内容を見ることが出来ます。 ファイルの編集はローカルで行います。ドロップした同じファイルをエディタで開き、内容を変更して保存すると、ピッという通知音とともにブラウザ側の内容も書き換わります。 遠隔地の開発者の共同作業の他にも、スタープログラマーの超絶コーディングをみんなで見たりといったおもしろい活用方法もで
「WhiteHat Aviator」はセキュリティ企業WhiteHat Securityがリリースした世界一安全な(と開発元は主張している)Webブラウザです(Neowin)。現在Mac / Windows用のバイナリがダウンロードできます。 Chromiumベース FAQによると、オープンソースのChromiumをベースにしたWebブラウザで、「デフォルトをプロテクトモードに変更」、「Connection Controlを使ってカスタムブラウジングルールを作成」、「Disconnect拡張をバンドル」、「サードパーティCookieをブロック」するなどのセキュリティ重視の改造が行われている様子。 例えばWebサイトを表示してみると、プロテクトモードで動作している事が確認できます。 広告などをブロックするDisconnectという拡張もインストールされていました。 最初からかなり安全な設定に
個人的にもよく使っているwri.peがオープンソース化されました!Ruby on Railsで作られており、本家はHerokuで動作しているなど自前でWebベースのメモ環境を作るのがとても手軽になりそうです。 ということで早速触ってみましょう。Web APIのトークン設定をすればすぐに動かせます。 wri.peの使い方 トップページです。見たまま本家のwri.peそっくりです。 ログインしました。早速メモを作ってみましょう。 右側にプレビューもあって分かりやすいですね。 カレンダー。メモを作った日付が分かります。 検索はSolrを使っており日本語も対応しています。 バックアップはEvernote、Dropboxにできます。 殆どの機能がJSON出力に対応していたり、iCalでの出力や多数のWeb API、OAuth対応がされているなど今風のWebサービスを作るのに参考になる点が多いと思いま
rawdiskの操作を誤ると、対象のストレージを破壊してしまうことがありますので十分ご注意ください。マジで。 RaspberryPi謹製のSDカードは複数のOSがブートできるようになっています。手元にRaspbianをインストールして運用しているハードウェアがあり、このSDカードをMacBook Proのにマウントして読み書きしたい、というのが今回のお題です。 MacBook ProのSDカードスロットはUSBコントローラと接続されておらず、仮想マシンのUSBコントローラから見えないため通常の方法ではマウントすることが出来ません。しかし、Macのrawdiskとして設定することでマウントすることが出来ます。 SDカードをMacBook Proに挿すと次の3つのパーティションが見えます。 RECOVERY boot disk1s6 (EXT4) DiskUtilityで見るとこんな感じ。 d
<VirtualHost 192.168.0.2:80> DocumentRoot /var/www/vhost/bts.example.test/public_html ServerName bts.example.test <IfModule ssl_module> Redirect / https://bts.example.test </IfModule> ErrorLog "| /usr/local/apache2/bin/rotatelogs /var/www/vhost/bts.example.test/logs/error_log 86400" CustomLog "| /usr/local/apache2/bin/rotatelogs /var/www/vhost/bts.example.test/logs/access_log 86400" common CustomL
はじめに JPAを使うときの指針メモです。 JPQLではなくCriteriaを使う SQLを知っているとJPQLの方がとっつきやすいのですが、以下の理由からCriteriaを使ったほうがよさそうです。 CriteriaはDB変更に強い JPQLはタイプセーフではないので、Entityクラス名や変数名が変わってもコンパイルエラーになりません。 対応箇所は自分で洗い出すか、動かしてエラーになるまでわかりません。 一方Criteriaは、Entityを変更した時点でコンパイルエラーになるので対応箇所がすぐにわかります。 JPQLをデバックするのは大変 SQLと違ってDBのコンソールで試すことが出来ないので、SQLの感覚で長いJPQLを書いてエラーになったらデバックするのがかなり大変です。 エラーメッセージとにらめっこする羽目になります。 コード例
- (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(); CGContextSaveGState(context); CGContextSetFillColorWithColor(context, [UIColor whiteColor].CGColor); CGContextFillRect(context, rect); [self gaien:context rect:rect]; [self siro:context rect:rect]; [self kuro:context rect:rect]; [self naienKuro:context rect:rect]; [self naienSiro:context rect:rect]; } //太極図の外円 -
とりあえず、簡単そうなところでpingのサンプルを読んでみる。 ソースは mirage/mirage-skeleton · GitHubのping/unikernel.ml。 基本的に自分用のメモです。 open Lwt open V1_LWT let red fmt = Printf.sprintf ("\027[31m"^^fmt^^"\027[m") let green fmt = Printf.sprintf ("\027[32m"^^fmt^^"\027[m") let yellow fmt = Printf.sprintf ("\027[33m"^^fmt^^"\027[m") let blue fmt = Printf.sprintf ("\027[36m"^^fmt^^"\027[m") let ipaddr = "10.0.0.2" let netmask = "255.
はじめに Apacheのmod_rewriteの設定をhttpd.confや.htaccessへ記載する際、ちょっと込み入ったことをしようとすると記載内容が複雑になり可読性が落ちてしまいます。 そもそもmod_rewriteはプログラマルな処理には向いていないのですが、一時変数としてApacheの環境変数を利用することで可読性を上げることができますので、記載例を紹介します。 例 例①:スマートフォンまたはFacebookクローラからのアクセスである場合は、それぞれ表示するロゴや適用するCSSを変更する RewriteEngine on RewriteRule .* - [E=X_ACCESS_DEVICE:NULL] RewriteCond %{ENV:X_ACCESS_DEVICE} ^NULL$ RewriteCond %{HTTP_USER_AGENT} Android [NC] R
double→BigDecimal変換ではnewではなくvalueofを使う。 newを使うと期待通りの値にならない。 double doubleVar = 0.1; System.out.println("doubleVar:" + doubleVar); BigDecimal aaa = BigDecimal.valueOf(doubleVar); System.out.println("BigDecimal.valueOf(doubleVar):" + aaa); BigDecimal bbb = new BigDecimal(doubleVar); System.out.println("new BigDecimal(doubleVar):" + bbb); 結果 doubleVar:0.1 BigDecimal.valueOf(doubleVar):0.1 new BigDeci
Nokogiriでゴリゴリやってます。やっと使い方分かってきました。 Nokogiriだとデフォルトでも割と文字化けしないなと思ったんですがさすがに色んなサイトを対象にしようとすると化けました。ので何とかします。 他にいい方法があったら是非教えて下さい。 (注意:下に追記があります。binaryで読み込んでkconvのtoutf8、charsetにutf-8を指定でほぼ起きなくなりました。) require 'open-uri' require 'nokogiri' uri = "http://www…" page = URI.parse(uri).read charset = page.charset if charset == "iso-8859-1" charset = page.scan(/charset="?([^\s"]*)/i).first.join end document
各サイトに埋め込めるタグなどを配布側として開発する場合の注意です。 (例:Tweet Feed) おもにiframeまわりの話となります 埋め込みスクリプト 以下みたいなのを各サイトに埋め込んでもらう前提です。 <div id ='hoge'></div> <script type="text/javascript"> (function() { var js = document.createElement('script'){ js.async = true; js.src = '//yourOrigin/hoge.js'; document.getElementsByTagName('head')[0].appendChild(js); })(); </script> 要するに、各サイトに//yourOrigin/hoge.js を読み込んでもらいます。 hoge.js は$('#h
【他キーワード】 第一級関数(高階関数が扱える) カリー化(部分適用) 型推論 気をつけるべきは三点 JavaScriptで関数型を考えるにあたっては、 抑えるべきポイントは下記三点となります。 すべての関数が値を返す 関数に副作用がない(参照透過) 関数を値として扱える 関数型として気をつけることはほかにもあるのですが、 入門として今回は扱いません。 すべての関数が値を返す 関数がすべての値を返すようにします。 // Good function hello() { return 'Hello' } console.log(hello()); // Hello // Bad function hello() { console.log('Hello'); } hello();// Hello これによりその返り値を利用し、さらに関数を組み立てていきます。 関数に副作用がない(参照透過) 簡
GSアルゴリズムとは GSアルゴリズムとは、ノーベル経済学賞を受賞したシャブレー教授の考案したマッチングアルゴリズムです。 ようするに男と女、就活生と企業、病人と病院などのペアをうまいこと結びつける手法です。 この手法を使えば参加者ほぼ全員が 「第一候補とまでは行かなかったけど、自分の身の程じゃこんなもんかなぁ…」 という無難なカップリングに行き着きます。 個人はともかく全体で見ればベストな組み合わせです。 具体的には、 男女の参加者がそれぞれ好みの異性のランキングをつける。 男性は一斉に第一候補の女性に告る。 女性は告ってきた男性の中から一人選んでキープする。 選ばれなかった男性は第二候補の女性に告る。 女性は新たに告ってきた男性と、今キープしている男性の中から1人選ぶ。 一度はOK貰ったのに後から振られた男性と、まだOK貰ってない男性は第三候補の女性に告る。 以下、すべての男性が身を固
HaskellのWebアプリケーションフレームワークであるYesodで作ったアプリをHerokuにデプロイするのはなかなかたいへん・・・と思いきや、heroku-buildpack-ghcという素晴らしいツールのおかげで、実に簡単にデプロイ出来ます。 buildpackの指定 Herokuにbuildpackを指定するには、プロジェクト作成時に指定する方法と、後から環境変数で指定する方法があります。 私は前者の方法を使いました。 プロジェクト作成時にbuildpackを指定する方法 プロジェクト作成時に—-buildpackオプションを付けます。 heroku create —-stack cedar --buildpack https://github.com/begriffs/heroku-buildpack-ghc.git --app app-name
##はじめに FirefoxとかChromeなら問題ないがIEだと上手く動作しないとかはよくある話だと思う。その要因の一つであるconsole.log使用時のエラーに、つい最近ハマったのでメモしておく。 ##対処法 そもそもなぜconsole.log使用時にエラーが出るのかといえば、IEがConsoleAPIに対応していないために、window.consoleの時点でundefinedを吐くからである。対処法としては、 // consoleプロパティとlog関数作ってとりあえずエラー回避 if(!window.console) { window.console = { log: function(msg){} }; }
今日は Single-dispatch generic functions (PEP-443)。Generic functionは汎用関数と訳されることも多いが、言語によって微妙に違う使われ方をしている。Pythonでは「引数の型によって動作が異なる複数の関数に同じ名前をつける」という意味合いで使われているようだ。 と書いてもさっぱりわからないので、例示。引数の型によって出力が異なる関数を考える。Generic functionsを使わないとこんな感じ。 def print_func(arg): arg_type = type(arg) if arg_type is int: print("found integer:", arg) elif arg_type is list: print("found list:", arg) else: print("found something:"
正常にインストールされると、gasコマンドが使えるようになります。 (which gasで確認) 初期設定 では、さっそくgasコマンドを使ってみます。 # ローカルで管理するためのディレクトリを作成 mkdir -p ~/workspace/GAS/gas-manager-sample cd ~/workspace/GAS/gas-manager-sample # 実行 gas init すると、こんなメッセージが表示されます。 クライアントIdとシークレットを持っているかと尋ねられます。 ここでは"no"を選び、続いて作成するか聞かれるので"yes"を選択。 すると、 どうやら、Googleの開発コンソールで以下の設定を行う必要があるそうです。 プロジェクトを新規作成する 作成したプロジェクトのDrive APIを有効にする クライアントIdとシークレットを作成する コンソールでEnt
ユーザー登録/ログインしないと見れないページを LocomotiveCMS に組み込みたくなりましたので、やってみました。Rails のバージョンは3.2.16、LocomotiveCMS は2.4.1が対象です。 ユーザークラスの作成 まず、LocomotiveCMS には最初から devise というRails用の認証プラグインが組み込まれていますので、新しい認証機能を付け加えるのは簡単そうです。LocomotiveCMS 上ではAccountモデルというのが、CMS自体の管理者ユーザーの管理に使われていますが、それとは別にしたいのでUserモデルを新たに作ってみます。 LocomotiveCMSでは mongoid を使っているので、db:migrate は必要ありません。unicorn_rails の再起動をして、http://localhost:8080/users/sign_u
静的コンテンツをApache、動的コンテンツをTomcatに役割分担していると、動的コンテンツ側で認証がかからなかったので、対応のメモ。 <Direcoty>の中で ajp にrewriteしてやるのがポイント。 Alias / /var/tomcat/web/1/webapps/ <Directory "/var/tomcat/web/1/webapps"> Allow from all AllowOverride AuthConfig RewriteRule ^(.+)\.jsp(.+)? balancer://ajp-balancer2/$1.jsp$2 [P,L] RewriteRule ^(.+)\.json(.+)? balancer://ajp-balancer2/$1.json$2 [P,L] </Directory>
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く