MySQL 5.6からTIME, DATETIME, TIMESTAMPがマイクロ秒精度をサポートしました。 MySQL 5.6 Reference Manual :: 11.3.6 Fractional Seconds in Time Values で、ドキュメントにはちゃんとroundされるけどこれはSQL標準に従う挙動だからエラーとかワーニングは出ないよってさらっと書いてあるんですが、5.5では小数点以下は切り捨てだったんでマイクロ秒を付けてクエリ投げてた場合ハマりポイントになってます。 MySQL Bugs: #68760: Datetime rounding problem ActiveRecordにおけるDATETIMEのマイクロ秒サポート ここからはジョーカーさんのRails-4.2+MySQL-5.6での時刻オブジェクトのミリ秒の扱いについてへのアンサーエントリになるんです
はじめに バン ECSはよ バン (∩`・ω・) バン ECSはよ / ミつ/ ̄ ̄ ̄/  ̄ ̄\/___/ — ʎǝʞuoɯʎǝʞoɯs (@smokeymonkey) December 18, 2014 とか言ってたら使えるようになりました! ECSの始め方については大瀧のAmazon EC2 Container Service (ECS)を試してみたをご覧ください。 今回は静的Webサイトをコンテナ化して、ECSでデプロイしてみました。 やってみた 静的Webサイトを自家製コンテナ化する まずは静的Webサイト用のコンテナを作成します。以下のように、nginxを使うDockerfileを作成します。 $ mkdir nginx $ cd nginx $ vi Dockerfile FROM nginx COPY html /usr/share/nginx/html 静的W
App Groupsを使います。 App GroupsはiOS8から追加されてApp Extensionでだいたい利用しますが、 WatchKitでも使えます。 事前準備 App Groupの登録 App Groupsを使うには事前にiOS Dev Centerで登録が必要です。 Certificates, Identifiers & Profiles > iOS Apps > Identifiers > App Groups こちらで、App Groupの情報(App Groups Description / Identifier)を登録します。 今回の例ではIdentifierに"group.com.hoge.example"と指定したことにします。 プロジェクトの設定 App Groupsを使うことをプロジェクトに設定します。 Project > Capabilities > App
この投稿はDart Advent Calendar 2014の18日目の記事です。 Dartで利用可能な信頼できるUIライブラリとして、PolymerDartとPaperElementsがあります。 未だdeveloper previewという段階ですが、UI構築の効率が劇的に上がるため、個人的に今から積極的に動作検証をしています。 自分の経験の範囲では、PolmerJSとPaperElementsはmobile safariでもある程度安定して動く感触です。 PolymerDartのPaperElementsはJS版をproxyを通じて動作させているため、同様の動作となることが期待できます。 アプリで使えるUIライブラリが整いつつあるので、これを用いてハイブリッドアプリ化を試みています。 今回はCordovaに乗せてみました。 前提 Cordovaの開発環境がセットアップ済み Dart
http://nanapi.doorkeeper.jp/events/18274 Time Schezdule 時間 テーマ 発表者 19:00〜19:30 開場・受付開始 - 19:30〜19:40 挨拶 株式会社nanapi和田 19:40〜20:00 プロダクト開発を最適化するためにやめた4つのこと 株式会社nanapi 小島 泰洋 20:00〜20:20 Coineyのチーム文化 コイニー株式会社 松本 隆応 20:20〜20:40 未定 株式会社VASILY 村田 卓朗 20:40〜21:00 Qiita/Qiita:Teamの開発 Increments株式会社 小西 智也 以下個人的まとめ。 ※個人の主観が入っているので、必ずしも発表内容を反映しているわけではない部分があります。予めご了承ください。また修正がある場合は即座に修正させていただきます。 19:40〜20:00 プロ
この記事は C++ Advent Calendar 2014 18日目の記事です。色々とネタに迷った結果、まだ日本語の解説記事が全然ないodeintを紹介することにします。(なぜこれほど日本語での解説が少ないのか。。) Boost.Odeintとは 皆さんご存知Boostライブラリの1つで、常微分方程式を解くために使います。簡単にいうと という形をした方程式に対して使います。$x$は$t$に依存する変数、つまり$x=x(t)$ですね。これを解くアルゴリズムにはRunge-Kutta法(RK)やその改良版などがあります。Boost.OdeintはこのRK法を実装しています。GPGPUやMPI, OpenMPを利用した並列計算にも対応していますが、今回はそこまで説明しません。 いちばん簡単な方法 数値計算法に馴染みがない人も読むかもしれないので、上記の方程式を解くいちばん簡単な考え方を紹介しま
はじめに こんにちは。CYBIRDエンジニア Advent Calendar兼Phalcon Advent Calendar 20日目の@MiuraKatsuです。 CYBIRDエンジニア Advent Calendarの19日目は@khironoriさんのPHPCSとJenkinsでコードレビューの負担をちょっとだけ軽くしたいでした。Jenkins使って自動化するのは、すばらしいですね。僕もどんどん取り入れていきたいです。 Phalcon Advent Calendarの19日目は、@kenjisさんのPhalcon Forumを動かしてみるでした。すばらしいですね。 そもそも Phalconを知ったのは去年のことでした。 "最速"というフレーズに惹かれて、サイトを見に行ったのですが、 日本語のドキュメントがまだ充分にできておらず、 英語力が残念な私は半分あきらめていました。 しかし、有
今回は、CentOS 7で採用されている新しいログ管理の仕組み「journald」を取り上げます。またjournaldとrsyslogとの連携やシステム全体に渡って様々なログを収集するsosreportについても簡単に触れます。 CentOS 7におけるログ機構「Systemd Journal」を使いこなす CentOS 7は、ログの管理を行う新しい仕組みが導入されています。従来のCentOS 6系では、長年親しまれてきたsyslogがベースのログ管理手法が採用されていましたが、CentOS 7からは、ログに関するより細かい指定や操作を行うことができるようになっています。CentOS 7でのログ管理は、systemdが担当しています。サービス名は、「systemd-journald.service」です。一般的には、「journald」と呼ばれています。CentOS 6までのsyslogで
ついにはてなブログがMarkdownとはてな記法の都度切り替えができるようになった!すげー便利だ!(ただ、なんかリンク埋め込み時とかに、無駄に改行がはいるような?バグかな) さておき、本エントリはWebアプリエンジニア養成読本アドベントカレンダーです。 Webアプリエンジニア養成読本 Advent Calendar 2014 - Qiita Webアプリエンジニア養成読本[しくみ、開発、環境構築・運用…全体像を最新知識で最初から! ] (Software Design plus) 作者:和田 裕介,石田 絢一 (uzulla),すがわら まさのり,斎藤 祐一郎技術評論社Amazon 私の担当分においては、こちらの書籍でお話できなかった、初心者向けの事について書いたりしております。 あと一週間ですが、ネタ切れ著しいです、だれかネタをください。 ライブラリとは ライブラリは、特定の処理を再利用
開発合宿で作ったQuyoをはてラボでリリースした.捨てた物の思い出を投稿できるサービス. Quyo | つづろう、モノの思い出 リリースの告知はこちら. つづろう、モノの思い出──新サービス「Quyo」をはてラボにリリースしました - Hatelabo Developer Blog メンバーは大承認と同じで,エンジニアをid:shimobayashiさんと2人でやって,デザインをid:ueday,あとリリース時にはドメインの用意をid:y_uukiさんに手伝ってもらった. 前回の開発合宿と同じアーキテクチャで,すばやく作る作戦で,開発合宿は3日間あるのだけど,2日目の午後には社内リリースして,合宿中に社内でワイワイ遊んでもらいながら開発も続ける,という作戦を展開した.プロトタイピングに向いた構成で,層は薄く,テストは書かない,という作戦. 作戦考えた これは開発中に昼休みに睡眠する様子.前
はじめに SSLv3のパディングに注目した攻撃手法であるPOODLEは、以前こちらのブログのエントリで取り上げたことがあるBEASTとCRIMEに非常によく似た攻撃です。今回はこのPOODLEについて、一般的な視点とはやや異なる、筆者独自の意見を述べてみたいと思います。 必ずしもSSLv3を無効にする必要はない POODLEの対策として書かれている情報はそのほぼ全てが「SSLv3を無効にする」というものですが、個人的には技術的にもう少し踏み込んで考えてみても良いのではないかと感じます。私は以前のエントリで次のように指摘しています。 BEASTもCRIMEも、意図しないリクエストが飛ばされ、そこにCookieが自動的に含まれてしまう点を攻撃するという意味で、CSRF攻撃の一種だと言えるでしょう。BEASTが発表されたらBEAST対策(RC4にする/TLSをバージョンアップする)を行い、CRI
パターンマッチングライブラリを作ってみた Java8 でラムダ式が導入されたことで関数定義がシンプルに書けるようになりました。 このラムダ式を使えば Scala のパターンマッチみたいな事もある程度できるよねってことで pattern-matching4j というライブラリを作りました。 ライブラリの作成においては以下の記事を大変参考にさせていただきました。 ありがとうございます。 http://www.akirakoyasu.net/2012/12/22/re-thinking-pattern-matching-in-java/ http://d.hatena.ne.jp/nowokay/20131212 使い方 早速どんな感じに使うのか見ていきましょう。 FizzBuzz FizzBuzz を print するメソッドは以下のように書けます。 void fizzbuzz(int num
Scala Advent Calender 2014の記事です。遅れてすみません。 デザインパターンをScalaで書いてみるとどうなるか?ということで、今更ですがGoFのデザインパターンをScalaで書いてみました。デザインパターンについての説明は他の人にお任せしますw Wikipedia に載っている順に紹介していきます。なかには、流石Scalaといったのもありますが、Javaとかとあまり変わらないのもあります。 AbstractFacotry Javaとかとほとんど変わりません。 trait AbstractFactory{ def createA() : A def createB() : B def createC() : C } class ConcreteFactory extends AbstractFactory{ def createA() : A = ... def c
JavaScript人気の高まりをうけ、現在、次々とJavaScriptライブラリやスクリプトが開発され続けています。便利な反面、利用者からするとあまりにも数が多すぎて、どのライブラリが本当に有用なのか判断しづらい面もあるかもしれません。 そんなときに使いたいサービスが「Libscore」です。世界中の人気サイトで使われているJavaScriptライブラリ/スクリプトの情報を収集し、様々な方法で検索することができるサイトです。 検索方法は例えば、ライブラリが提供する変数名(jQuery、Modernizr、$.ui、$.fn.fancyboxなど)や、外部ライブラリ名(scriptプリフィックスを使用。script:stats.wp.com or script:use.typekit.netなど)を使って、使用サイトを検索したり、逆にあるドメインが使用しているJavaScript一覧をドメ
http://project-itoh.com/ 〔註:すでにサイトはリニューアルしており、この記事の内容を現物で確認することはできません〕 今時めずらしいほどヒドイUI設計を見かけました。こういうものが蔓延しないよう、警鐘として、啓蒙的な文章を書くことにしました。 UIデザインの訓練をしていない人は、「なぜ使いにくいのか」を説明出来ないものですし、そもそも「使いにくさ」に気づかないものです。使いにくいものを無自覚に、つまり「使いにくい」と思わずに使っていたりします。 プロならひと目なのですが、素人向けに、この文章では細かく「使いにくさ」について説明します。 第1セクション:キービジュアルとインストラクション Project Itohの画面キャプチャ:”scrool down”というインストラクション部分を強調したものこのウェブページを開いた直後、初期状態です。ここでページのインタラクショ
開発時の意外と手間のかかる作業として、テスト用のダミーデータを準備する作業があげられるかもしれません。特にデータベースにある程度の量のダミーデータを投入する必要がある場合、その作業はさらに面倒くさいものになってしまいます。 そんなとき頼りになるツールが「Fake2db」です。Python製のツールで、Sqlite、MySQL、PostgreSQL、MongoDBに対応したもっともらしいダミーデータを簡単に作ることができます。 インストール スクリプト本体はpipコマンドでインストールできます。 pip install fake2db さらにDBごとのコネクターが必要となります。MySQL用のコネクタはインストールしないと動きませんでした。 pip install mysql-connector-python --allow-external mysql-connector-python こ
皆さんご存知のObjectRTC(ORTC)ですが、実際に動くサンプルアプリはあるのかー? 気になる方も多いんじゃないでしょうか! そこで、今日はORTCを使ったアプリを実際に動かしてみることにします。 1.環境を整える ORTCを試すために必要な環境はこちら。 OS : Windows8.1 ブラウザ:IE11 必要な周辺機器:USBカメラ ※VMware Fusionなどの仮想環境ではUSBカメラを認識できず動かないので注意 WindowsPCを2台用意するのが吉ですね。 2.プラグインをインストール ダウンロードは HTML5Labs から。 http://html5labs.interoperabilitybridges.com/media/178056/ortc_prototype.zip ダウンロードファイルを解凍したらプラグインをインストールします。 インストール後IE11を
Docker Advent Calendar 18日目の記事です。 12/4 に、Docker から Machine, Swarm, Compose という3つの機能が発表されました。(引用) ANNOUNCING DOCKER MACHINE, SWARM, AND COMPOSE FOR ORCHESTRATING DISTRIBUTED APPS http://blog.docker.com/2014/12/announcing-docker-machine-swarm-and-compose-for-orchestrating-distributed-apps/ Docker Advent Calendar 17日目が Machine, Swarm の記事でしたので、今回は Compose を試してみようと思います。 Composeとは Figからインスパイアされたプロジェクトのよ
Stop the CNAME chain struggle: Simplified management with Route 53 Resolver DNS Firewall Starting today, you can configure your DNS Firewall to automatically trust all domains in a resolution chain (such as aCNAME, DNAME, or Alias chain). Let’s walk through this in nontechnical terms for those unfamiliar with DNS. Why use DNS Firewall? DNS Firewall provides protection for outbound DNS requests fro
2104/12/20更新 : Dockerの動作に一部不具合があり、ECS-Optimized Amazon LinuxのAMIが更新されました。「3. ECS-Optimized Amazon Linuxの起動」のAMI IDを変更しました。 ども、大瀧です。 AWSのイベント、re:Invent 2014で発表されたDockerコンテナを扱うサービスEC2 Container Service(ECS)のプレビュー申請が通ったので、ドキュメントのチュートリアルを試した様子をレポートします。 1. IAMロールの作成 まずは、Dockerコンテナを実行するEC2インスタンス(ECSインスタンス)からECS APIにアクセスするためのIAMロールを作成します。IAMの管理画面から[Roles] - [Create New Role]で作成ウィザードを表示し、ロール名に「ecs-ec2-rol
今回はOSのクローンではなく、RHEL系Linuxの機能である『Kickstart』を用いた自動インストール(Silent Install)を行う。 『KickStart』での自動インストールは、専用のconfigファイル(定義ファイル)を用いて行われる。 configファイルの読込みは、インストールディスクとは別のUSBメモリやDVD、ネットワーク上のファイルを読み込ませる方法もあるが、今回はOSのディスクと組み合わせた自動インストールディスクを作成することにした。 検証に使用するOSはCent OS 6.5だ。 1.『Kickstart』で可能な事 『Kickstart』では、configファイルに動作を記述することで以下のような事ができる。 インストーラーの自動実行 OSインストール時のパッケージ自動インストール インストール前、後のスクリプト自動実行 これらを実現するため、『Kic
この投稿は、 JavaScript Advent Calendar 18日目の記事です。 更新履歴 こちら をご覧下さい JavaScript の書き方をアップデートする JavaScript Good Parts で書かれているような JS の書き方は、古くなりつつある部分も多いです。 正直なところ、自分はあの本が「今でも」良書だとは思っていません。 初学者に勧めることもしません。まんべんなさと普遍性と客観性から「パーフェクト JavaScript」 を勧めています。 その頃と比べると、 JavaScript をとりまく環境は変わりました JavaScript の進化に合わせて書き方もアップデートしていくべきなので、今回は分かりやすいしきい値として 「IE10 以下を切れるとしたら」 という前提で、列挙してみます。 たとえば XHR2 や File API に依存したサービスをやる場合な
こんにちは。大掃除が一向に終わる気配を見せないせーのです。 クラスメソッド年末のお祭り「re:Growth 2014」も東京、札幌共に大盛況に終わりました。東京は特に大雨の中来てくださったお客様には大いに感謝しております。ありがとうございました。 イベントの内容についてはこちらに順次スピーカーの皆様のフォローアップ記事がリンクされてくる予定ですのでお楽しみに。 re:Growth2014 特集 - https://dev.classmethod.jp/series/cm-regrowth-2014/ re:Growth2014 SAPPOROまとめ - https://dev.classmethod.jp/cloud/aws/devio-mtup11-sapporo/ re:Growth2014 TOKYOまとめ - https://dev.classmethod.jp/cloud/aws
なんとインテルが、FPGAアプリケーション エンジニアなる職種で求人を始めてた。 From Jobs at Intel この募集要項がいろいろ味わい深いので、まとめてみた。 目的:次世代のクラウドをFPGAでつくる The DCG/CPG (Data Center Group/Cloud Platform Group) team develops technologies that accelerate cloud computing. We are looking for FPGA Application Engineers to help us deliver the next generation cloud computing platforms. 目的はずばり、「次世代クラウドプラットフォームの構築」。単なる組み込みデバイスの開発じゃなくて、データセンター/クラウドプラットフォー
連載目次 ストアアプリのコードを書いているとき、あるいは、これから開発しようと考えているとき、コードのサンプルを見たいと思うことはないだろうか? もちろんWebページを検索してもよいのだが、ストアアプリのサンプルコードを集めたサイトや、便利なツールもある。本稿ではそれらの中から、Visual Studioに組み込むツールと、サンプルコードを集めたMSDNのサイト、そしてそのサイトを検索するアプリを紹介する。 事前準備 ユニバーサルプロジェクトを使ってユニバーサルWindowsアプリを開発するには、以下の開発環境が必要である。 SLAT対応のPC*1 2014年4月のアップデート*2適用済みの64bit版Windows 8.1 Pro版以上*3 Visual Studio 2013 Update 2(またはそれ以降)*4を適用済みのVisual Studio 2013(以降、VS 2013)
この記事は Spark, SQL on Hadoop etc. Advent Calendar 2014 の18日目の記事です。 Drill のここがすごい 先日 Apache Drill も晴れて Apache Software Foundation のトップレベルプロジェクトになりまして、来年初頭のバージョン1.0リリースに向けて機能が追加され品質も徐々に高まってきています。さて、Drillとはどういうものかについては去年のHadoopアドベントカレンダーの記事でも触れました。 が、改めてDrillの特徴と他のSQL-on-Hadoopプロジェクトとどういうところが違うのかについて説明しましょう。 速攻使える (Agility) リレーショナルデータベースの世界でも、データウェアハウスの世界でも、そして近年のHadoopのような分散処理プラットフォームの世界でも、データ分析を行う上での
はじめに 前回のこれからはじめるGulp(17):SketchTool(Sketch 3 command line tool)を使ったアートボード・スライスの書き出しとgulp-execプラグインを使ったSketchtoolの呼び出しでSketch 3のコマンドラインツール「SketchTool」を使ったアートボード・スライスの書き出しとgulp-execプラグインを使ったSketchToolの呼び出しについて試しました。今回はSketchToolの各コマンドとオプションを試して、Gulp.jsと連携するための下調べをしたいと思います。 SketchToolのコマンド まずは、コマンドについてお復習いです。主にexportコマンドを使うことが多いと思います。今回はexport/listコマンドを中心に試してみます。 分類 コマンド アクション 例
此の記事はNode.js Advent Calendar 2014の18日目です。昨日はSails.js と Vue.js で API ファースト + リアルタイムな Web アプリケーションをさくっと作るでした。明日は id:slowquery さんです。 io.jsとは何故ですか。 Proxyが使へればなんでもできさうな気がしますね。 さて、あまりnode.jsといふよりはJavaScriptの話となります。 JavaScriptの型検査といへば、TypeScriptやFlowやAtScriptやES6など事前に型検査を行なふことになってゐます。jsのままやらうとしてもEsprimaなどで構文解析し、依存のグラフを作ってゆかねばなりません。事前の型検査を實裝[実装]する大変ですが、實行[実行]時の検査は、値が手元にあるので簡単です。そこでもしmacroが簡単にJavaScriptで使へ
「OSSライセンス=契約」という誤解を解く:OSSライセンスで条件を指定する権利はどこからくるのか?(1/2 ページ) オープンソースソフトウェアについて解説した記事の中には、「OSSライセンスは契約である」という誤解を目にすることが多い。この連載は「第9回著作権・著作隣接権論文」で佳作に入選した論文をベースに、その誤解を解いてみるという試みをしたい。 問題意識:OSS開発者が条件を指定する権利はどこに由来するのか 前回の連載「企業技術者のためのオープンソースソフトウェア(OSS)ライセンス入門」では、企業がオープンソースソフトウェア(OSS)とうまく付き合っていくためのポイントを、ライセンスという観点から解説した。 それから6年が経過した。当時もそうだったが、OSSはますます広がり、企業が新たなビジネスやサービスを展開する際に利活用するのはもちろん、自らの成果物をオープンソースとして公開
連載目次 プッシュ通知とは? なぜ開発者はアプリにプッシュ通知機能を搭載するのか スマートデバイスにおける「プッシュ通知」はアプリにとって欠かせない機能の一つであり、メールマガジンと同様に重要な集客ツールです(図1)。スマートフォンをお使いの方でしたら、一度はプッシュ通知を受け取ったことがあるのではないでしょうか。 プッシュ通知はユーザーがスマートデバイスを起動していなくても通知を送ることができる仕組みであり、以下の特徴があります。 開くと直接アプリを起動するためアクションにつながりやすい アプリをインストールしているユーザーのみに届くため開封率が高い 上記のような特徴から、プッシュ通知は以下の用途で使うことが多くなります。 リアルタイムな情報配信 直接アプリ起動につながるため、ニュースなどリアルタイム性の高い情報の配信に向く ユーザーのアクティブ率向上 開封率が高いため、定期的にアプリを
App Extensionsのテストコードを書きたいなと思って、いざやってみると少し苦労した話です。 2014/12/17 potatotips #12で発表した内容です。 発表資料はこちらです。 前置きとして簡単にApp Extensionsとユニットテストの説明を記載しましたが、既にご存知の方は飛ばしてください。 App Extensionsとは iOS 8.0とOS X v10.10以降、App Extensionsにより、アプリケーションを超えて独自の機能と コンテンツを拡張でき、ユーザが他のアプリケーションやシステムを利用している場合でも、それ らを利用することができます。 提供されているExtension Extension point Typical app extension functionality
こんにちは、id:hakobe932 です。はてなエンジニアアドベントカレンダーの18日目として、はてな社内で導入をためしている話題提供Slack botの機能と実装について紹介します。昨日はid:astj による Herokuとwerckerによる継続的インテグレーション・自動デプロイでperlのwebアプリケーションを開発するでした。 #enginnerで技術交換 はてなではメインのチャットツールとしてSlackを活用しています。チームや職種などの単位のたくさんのチャンネルがあり、それぞれのチャンネルでコミュニケーションが行われているのですが、もっぱら技術的な議論を行っているのが #enginner というチャンネルです。#engineer では、チームをまたいだ技術的な相談のほか、新技術や勉強会の紹介など、技術に関わるさまざまな話題で情報交換しています。 もっと技術の話題でわいわいし
オンラインイベント「Connect();」で、マイクロソフトが明らかにした.NET 2015構想。本稿では、.NET 2015を構成する主要素について概観していく。 連載目次 マイクロソフトが先日開催したオンラインイベント「Connect();」では、.NET関連の発表が多数行われた。Visual Studio(以下、VS)の最新バージョン、VS 2015 Preview、VS 2013 Communityなど、注目すべきトピックは多々あるが、ここでは.NETの新バージョン「.NET 2015」にフォーカスを当て、そのPreview版を基に.NET 2015の構成要素を概観していく。 もう1つの大きなトピックであるVS 2015については、山本康彦氏による記事「VS 2015の新機能をプレビュー版で見てみよう」を参照していただきたい。 .NETとは何だったのか .NET 2015の話をする
やけにレトロでカックィー時計じゃんよ! 宇宙にたくさんの宇宙船が飛び交う時代、そして数えきれない種類の宇宙人がうごめく大宇宙に、 ブービーズなんてチェーン・レストランみたいなのが、あちこちに点在しているんだろうか。 現代に生きる誰にも体験できない空間だけど、なんとなくワクワクしてしまうのは、 あのハニーちゃんのせいだろうか… なにはともあれ、ダンディの愛機アロハオエ号のデザイン&カラーをモチーフに、真鍮で制作しました。 インデックスには作中の宇宙語数字を使用。 こんな時代にあえてアナログで真鍮無垢の時計を身に着けている彼(あなた)こそが、 まさにダンディじゃんよ…? ©2014 BONES/Project SPACE DANDY スペース☆ダンディ 公式サイト ご注意: こちらの時計は既に刻印入りです。名入れの刻印は受け付けておりませんので予めご了承下さい。
ファイルの表示が・・・ takuya@rena:~/Desktop/test$ git status On branch master Changes to be committed: (use "git reset HEAD <file>..." to unstage) new file: "\343\201\202" takuya@rena:~/Desktop/test$ 日本語名がエスケープで表示される場合の対策 表示時のクォートをオフにする。 git config --global core.quotepath false 設定後 takuya@rena:~/Desktop/test$ git status On branch master Changes to be committed: (use "git reset HEAD <file>..." to unstage) ne
tagomoris/fluentd-v1-checker · GitHub fluentd-v1-checker | RubyGems.org | your community gem host Fluentdの設定ファイルについてはv1 config という新書式がある。v0.14からはデフォルトでこちらの書式でパースが行われる予定。 ここに @repeatedly さんが書いてるけど、今のうちから v1 config で書いて --use-v1-config しておくと将来的に困らなくてよいと思う。書式的にも綺麗になっているはず。 ところで v1 config といってもいろいろな経緯から、これまでの書式の設定ファイルをぶちこんでもなんとなくパースできるようになっている。値に # とかを含めたいとかでなければ設定を変更しなくても通る場合も多い。 「場合も多い」これが困る。起動してみて動
はじめに 「Meteor」というフレームワークってご存知でしょうか? こちらにて紹介させていただいています。 リアルタイムWEBアプリケーションフレームワークであり、リアクテイブフレームワークです。 個人的に上記2点が自分の惹かれるポイントなわけですが、 問題は基本的にWebsocketによる双方向通信を行なっており、 WebAPIは用意されていない点がネイティブクライアントアプリとの接続に問題がありそうです。 しかし、Meteorは独自にWebScoket上にDDPというプロトコルを定義しています。 しかもiOS用にクライアントが開発されているようでしたので使ってみることにしました。 ですが、まずはDDPってどんな通信をしているか見てみましょう DDPの通信をみる Meteorのインストールは完了しているものとします。 すごく簡単ですので、是非ここから試してみてほしいです。 DDPを監視
昔はgitbashを使っていたのですが、最近Visual StudioからGitを操作するようになったので、Visual StudioからGitを扱う際の各画面について解説します。Gitは勉強中なので、私の分かる範囲で… ホームと接続 Visual Studioのバージョン管理機能にアクセスするには、「表示>チーム エクスプローラー」を開きます。次のような画面が開きます。 ホーム画面からは、変更、分岐、同期、設定画面へ飛ぶことができるようになっています。この画面には、現在"接続"されているリポジトリ内のソリューションが表示されています。各画面では、接続されているリポジトリに対して操作を行うことになります。接続先のリポジトリを切り替えるには、「接続」ボタン(コンセントのプラグのようなアイコン)をクリックします。次のような画面が開きます。 「ローカル Git リポジトリ」から目的のリポジトリを
*「 Xamarin Advent Calendar 2014 」18日目の記事です こんにちは、マイクロソフトの渡辺です。 秋に開催された Xamarin の開発者向けカンファレンス Xamarin Evolve 2014 および 昨年の Xamairn Evolve 2013 でのセッション動画は既に公開されています。Xamarin Studio に関するセッションは、2年連続で Xamarin Studio の開発をしている Michael Hutchinson さんが担当。 Become a Xamairn Studio Expert ( Xamarin Evolve 2014 ) Getting the Most from Xamairn Studio ( Xamarin Evolve 2013 ) この 2つのセッションで紹介されている Xamarin Studio Tips
ウィスキー、シガー、パイプをこよなく愛する大栗です。 昨日弊社AWSチームで開催したre:Growth 2014 TokyoでAuroraについて話してきました。 Aurora? 先日のre:Invent 2014で発表された新しいクラウドネイティブなRDBMSです。MySQL 5.6と互換があるので、移行が容易です。 絶対安全データは消えない! 3カ所のDCに計6重化でて保存しており、継続的にS3へバックアップしているので耐久性はS3と同様に99.999999999%になっています。既存RDSのMulti-AZはEBSの2重化なので、耐久性のレベルが異なります。 ストレージ不足?何それ? Auroraの目玉の一つと言える機能です。Auroraはストレージ容量が自動で増加します。既存RDSでも手動であればストレージ容量を増加できますが、移行中の性能低下や切替え時のサービス瞬断が発生してしま
ヤフー株式会社は、2023年10月1日にLINEヤフー株式会社になりました。LINEヤフー株式会社の新しいブログはこちらです。LINEヤフー Tech Blog 普段 Android アプリの開発を行っている takahirom こと毛受(めんじゅ)です。 さて、Android のIDEとしては先日長きベータ時代に終わりを告げてついに Android Studio が 1.0 となりました。 今まで Eclipse + ADT 環境から移行するのを迷っていた人たちも、ようやく重い腰を上げて Android Studio へのも進むのではないかと思います。 そんな Android Studio では次世代のビルドツールとして注目を集めている Gradle が採用されています。 Gradle の特徴 Gradle で採用されているビルドスクリプトは非常にシンプルな記述をできるのが特徴で 例えば
ECMAScript 6の新機能を使ってみよう ここではECMAScript 6(以下ES6)の実行環境をつくり、動かしてみました。 環境もできたので、ES6の新機能を試してみましょう。 動作環境 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.9.4 Node : v0.10.33 ここの記事に従いtraceur-compilerをインストールしておいてください。 ECMAScript 6の新機能をためしてみる ※traceurが実験的にサポートしてるものも含む Array Comprehension Array内包表記機能です。配列の中でforループや関数、if分などを使用して処理をさせることができます。 適当な場所にes6.jsファイルを作成し、次のような内容で Array内包を使ってみましょう。 //Array内包 var array = [for (x
Sadayuki Furuhashi @frsyuki いま @taroleo がMountain Viewオフィスに来ていて、Prestoのスケジューラの改善方法について話していたのだけども、やはりPrestoのようにin-memoryでDAGな実行エンジンで多数のクエリを同時にスケジュールするのは、かなり難しい。 Sadayuki Furuhashi @frsyuki Prestoは最低限クラスタが落ちないようにする部分はカバーしていて、それだけでも比較して良くできているのだけども、クラスタがoverloadedなときのスケジューリングはまだ原始的。でも0.78、0.80で色々と改善が入っていて、Facebook内でかなり揉まれてる感はある Sadayuki Furuhashi @frsyuki 欲しいと思ったのは、クエリが2つ走っていて、それぞれがtable scan taskを10
この記事はJava EE Advent Calendarの18日目のエントリです。昨日はn_agetsuさんのApache Shiro を使ってみましたでした。 Webサービスやソーシャルゲームのボトルネックになりやすいのがデータベースアクセスです。そしてこれらのサービスではデータベースにMySQLが多く使われています。 高負荷なMySQLの負荷分散の一つにデータベースをマスター/スレーブのレプリケーション構成にしてINSERT/UPDATE/DELETEなど更新系のクエリはマスターに対して行い、スレーブにマスターの更新内容をレプリケート、SELECTなど参照系のクエリはスレーブのデータベースにクエリを発行して負荷分散を行う手法があります。 このエントリではそのようなマスター/スレーブのレプリケーション構成のMySQLにJPAを使ってクエリを発行する方法をご紹介します。 MySQLのJDB
「Gimp」:素晴らしい画像編集ソフトウェア 筆者は言葉が得意な人間だ。筆者が絵画の能力やデザインのセンスを持ち合わせていないことは、筆者と付き合いのある出版社のグラフィックデザイナーが証言してくれるだろう。しかし、数年前から、筆者は画像処理方法の基本を学ぶ必要に迫られている。そこでGimpの出番だ。 Gimpは「Photoshop」ではないが、熟練したユーザーの手にかかれば、Photoshopに全く引けを取らない性能を発揮する。筆者は熟練したユーザーではないが、Gimpを使えば画像の変形やリサイズ、簡単な編集、フォーマット変換を容易に実行できることは知っている。筆者からしてみれば、それは非常に大きな進歩である。 ところで、写真の若い女性は、1969年に「Apollo」宇宙船のリードソフトウェアエンジニアを務めたMargaret Hamilton氏だ。Hamilton氏の上に崩れ落ちそうに
対策のポイントはどこか まず、制御システムのセキュリティ対策するポイントはどこに設定すべきだろうか。ここで考えるべきポイントは大きく分けると「入り口」と「内部」の2つに分けられる。 侵入口となるもの ゲートウェイ USBメモリ・持ち込みPCなどの持ち込み機器 侵入後に内部の活動に利用されるもの 制御システム内ネットワーク 制御機器 これらを簡単な制御システムのネットワーク構成図にプロットすると図1のようになる。 ゲートウェイ ネットワーク サーバ(プラント用DMZ) サーバ/クライアント(制御情報ネットワーク) サーバ/クライアント(コントロールネットワーク) 外部記憶媒体(USBメモリなど) 持ち込みPC それぞれのポイントによって、セキュリティ対策の考え方や守るべきものが異なってくる。以下1つずつ解説していく。 1.ゲートウェイ ゲートウェイは、工場とオフィス、工場内での各ネットワーク
This post is partially inspired by Braulio Bhavamitra’s comments about Ruby being faster when compiled with Clang rather than GCC and partially by Brendan Gregg’s comments about compiler optimisation during his Flame Graphs talk at USENIX LISA13 (0:33:30). In short I wanted to look at what kind of performance we are leaving on the table by not taking advantage of 1) The newest compiler versions &
なお Comparator は java.util パッケージに含まれるインタフェースで次のように宣言されています。 ? super や ? extends (下限または上限つきワイルドカード)は Java でジェネリクスを使う上で特に難しい部分です。比較的新しい言語( C# 、 Scala 、 Ceylon など)では同じ目的のためによりシンプルでわかりやすいアプローチがとられています。 Java が採用した方法は Use-site variance annotation と呼ばれ、 C# などが採用した方法は Declaration-site variance annotation と呼ばれます。本投稿では Declaration-site variance annotation の考え方をベースに Java でどのように ? extends や ? super を使えば良いか につい
Tableau Server アップグレード手順(単一サーバ構成:既存コンテンツを維持)|Tableau Software Tips&Viz Advent Calendar 2014 #18 #tableau 2014年アドベントカレンダー『Tableau Software Tips&Viz(全部俺) Advent Calendar 2014』18日目です。Tableau Softwareに関する機能紹介、便利ネタや可視化ネタ等を毎日1本ずつ計25本、『1人(全部俺)』で担当してお届けしています。 Tableau Software Tips&Viz(全部俺) Advent Calendar 2014 - Qiita 昨日17日目の投稿ネタは『Tableau Serverバックアップ作業の自動化』でした。 Tableau Serverバックアップ作業の自動化|Tableau Software
日本語の文章を形態素解析するときは、トークナイズする前に文字列の正規化を済ませて検索精度を向上させよう! この記事は、Elasticsearch Advent Calendar 2014 の18日目のエントリーです。即席で申し訳ないですが、なんとかまとめましたので是非最後までお付き合いください。 今回は、日本語形態素解析における文字列正規化のお話です。 それでは早速本題に。 非正規化された日本語の文章を形態素解析を使って、なるべく意図したようにトークナイズするためには、全角英数字を半角英数字に正規化したり、半角カタカナを全角カタカナに正規化したり、不要な文字を除外したり、単語ではなく、文字単位での正規化が重要になってきます。 Japanese (kuromoji) Analysis Plugin のページでも紹介されているように、全角英数字や半角カタカナの正規化には、CJK Width F
尾野道男さんのRCBControllerはiPhone/iPadをゲームパッドとして使うためのアプリ。Konashi、Koshian、RFduinoなど、多くのBLEデバイスに対応している。十字キー&ボタンの典型的なパッドだけでなく、テレビのリモコン風レイアウトも用意されている。自作デバイスの簡易コントローラとして良さそうだ。 RCBControllerのわかりやすい使用例がrobo8080さんのブログにある。 mbed HRM1017 + RCBControllerで、タミヤのタンクを動かしてみた。 BLE対応コントローラとしてmbed HRM1017を使っている。robo8080さんのコードもmbedサイトで公開されているので(BLE_RCBController2_Motor)、すぐに試せる。 BLE対応のソフトとハードが普及してきたことで、ユーザーインタフェイス(UI)とデバイスを切
OSvは、ハイパーバイザやIaaSプラットフォームへアプリケーションをデプロイすることに特化した軽量OSです(※詳しくはこちら)。 今回はRuby on Railsで書かれたブログエンジン「Publify」をインストールしたOSvのイメージをGoogle Compute Engine(GCE)へデプロイしてみます。 プロジェクトを作成 まずOSv用にプロジェクトを作成してみます。 Cloud Storageの登録 Cloud Storageが有効化されてなかったので登録しておきます。 GCE SDKのインストール GCE管理用のコマンド群を使用するため、SDKをインストールします。 curl https://sdk.cloud.google.com | bash プロジェクトIDの設定 先ほど作成したプロジェクトへログインしてIDを設定します。 gcloud auth login gclo
この記事はUnity Advent Calendar 2014のための記事になります。昨日はkomiyakさんのUnity を使いはじめたばかりの頃の自分に伝えたい、Unity の基本 【2014年版】でした。いやー、これはまとまってて嬉しい情報です。ところでカレンダー的には穴開けちゃってます(遅刻遅延!)、すみません……。 さて、今回の内容ですが、私の作っているUniRxというReactive Programming(バズワード of 2014!)のためのライブラリを、最近ありがたいことに結構使ってみたーという声を聞くので、Rxの世界とUnityの世界を繋ぐ根幹である、MainThreadDispatcherと、その前準備に必要なコルーチンについて書きます。 Coroutine Revisited コルーチンとはなんぞや。なんて今更ですって!はい。とりあえず、Unityは基本的にシングル
どうも、やなぎさわです。デザインや提案資料などに使用する写真素材を探すのって、正直めんどうだなぁなんて思ったことありませんか? 今回は、無料で商用可の写真素材を提供している「BEIZ Graphics」というサイトをご紹介します。 素材のカテゴリーは全部で18種類あり、ストック枚数は約5,000枚あります。主に、風景などの自然写真が多いのですが、デザイナーの方ならよく使うであろう、ペイントや壁、鉄などの合成で使えそうなものまで豊富に揃っています。 これを知ったら、社長からもう有料のやつ使うなって言われるかも…。それぐらい素敵なサイトです! 商用可・無料写真素材サイト「BEIZ Graphics」 また素材を探しに来たくなるような、とにかく使える素材が沢山あります。ブックマークしておけば便利だと思います! 「BEIZ Graphics」 サイズも3種類あるので、使い勝手がいいですね。 それで
今回は、CentOS 7で採用されている新しいログ管理の仕組み「journald」を取り上げます。またjournaldとrsyslogとの連携やシステム全体に渡って様々なログを収集するsosreportについても簡単に触れます。 CentOS 7におけるログ機構「Systemd Journal」を使いこなす CentOS 7は、ログの管理を行う新しい仕組みが導入されています。従来のCentOS 6系では、長年親しまれてきたsyslogがベースのログ管理手法が採用されていましたが、CentOS 7からは、ログに関するより細かい指定や操作を行うことができるようになっています。CentOS 7でのログ管理は、systemdが担当しています。サービス名は、「systemd-journald.service」です。一般的には、「journald」と呼ばれています。CentOS 6までのsyslogで
こんにちは。CTOの馬場です。 このエントリはGoogle Cloud Platform Advent Calendar 2014の18日目です。 濃いエントリばかりのなかで恐縮ですが、 カンタン方向に寄せて「クリックデプロイ」を使ってWordPressをインストールしてみます。 クリックデプロイでLEMPスタック(Linux, Nginx, MySQL, PHP)とphpMyAdminをインストールし、さらにWordPressをインストールします。 まずはブラウザでGoogle Cloud Consoleにアクセスします。 やりかたがわからないかたは Google Cloud Platformをはじめようチュートリアル #gcpja - インフラエンジニアway - Powered by HEARTBEATS を参考にしてください。 コンソールにアクセスしたらプロジェクトを選択(なければ
こんにちは。Droonga開発チームの結城(Piro)です。 Groonga Advent Calendar 18日目は、16日目に引き続きDroongaの解説です。 Droongaを題材にした過去4回の記事(6日目、7日目、9日目、13日目)では、分散処理の初歩の初歩を解説しました。 それに続くDroongaの基盤部分を紹介するシリーズとして、16日目はノード間の通信プロトコルについて紹介しました。 今回はその続きとして、ノード間でのメッセージ転送における転送先の決定方法と、そのために必要となるクラスタ構成の情報をDroongaではどのように扱っているのかを紹介します。 転送先を決めるのは誰か? 「検索リクエストをレプリケーション内でランダムに転送する」や「更新リクエストを適切なパーティションに転送する」といった動作を行う時、Droongaノードはどのようにして転送先を決定しているのでし
この記事はzsh Advent Calendar 2014 - Qiitaの18日目のエントリです。 zshでcontrol-w(カーソル左の単語切り取り), control-u(一行切り取り), control-k(カーソルから行末まで切り取り), meta-d(カーソル右の単語切り取り)等で切り取った文字列はcontrol-yでペースト出来ます。 で、control-yだと直前に切り取ったものしかペースト出来ませんが、meta-yでそれ以前に切り取った文字列をペーストすることが出来ます(meta-yは「escape押してy」の意味) 使い方は、control-yで直前に切り取った文字列をペーストしてからmeta-yすると、control-yでペーストした文字列がその1回前に切り取った文字列に置き換わります。あとはmeta-y押す度にその前に切り取った文字列で置き換えすることが出来ます。
Appleは本日、iOS Developer Programに加入している開発者に対し、2015年2月1日以降、新規iOSアプリではiOS 8 SDKを使用し64bitサポートが必須になること、および2015年6月1日以降は、更新されるアプリに関しても同様の要件が要求されることをメールとWebサイトで通知しました(MacRumors、AppleInsider。iDownloadBlog)。 Appleは、64bitサポートを有効にするために、Xcodeのデフォルト"Standard architectures"ビルド設定の使用を推奨しています。 このアナウンスは10月に一度告知済みのものですが、対応期限が迫ってきたため再度開発者向けにメールが送られたものだと思われます。まだ対応していない開発者の方はそろそろ64bit対応の準備を始めたほうが良いかもしれません。
かめ板 es6-Kameita ahomu/es6-Kameita es6-Kameita は ECMAScript 6 で JavaScript ライブラリを開発するためのプロジェクトスケルトン(テンプレート)です。初期設定はブラウザ向けですが、Nodeモジュールにも対応します。 6to5 でトランスパイルされたコードを Browserify でビルドし、mocha + power-assert でテストを実行します。Browserify を採用しているため、初期状態では bower に依存せず npm を活かしています。 経緯 6to5/6to5 がリリースされて以来、しばらく手元で ES6 を使い続けていたので、ぼちぼち開発の構成を固めてしまいたいなと思った次第。 最初は GianlucaGuarini/es6-project-starter-kit を fork して何とかしようと
自宅でgitサーバーを運用中であるが、DNSサーバーを建てていないのでサーバーのLAN内に入った時にいちいち /etc/hosts を書き換えなければならない。(コメントアウトするか外すか) 例えば 192.168.0.2 example.com を #192.168.0.2 example.com にするためだけに、 sudo vim /etc/hosts として書き換えるのは阿呆らしい。 かといって稼働中でバリバリ使用中のサーバーサイドをいじりたくなかったので、hostsファイルを半自動で書き換えてしまえと思いました。 以下シェルスクリプト(OSX用) #!/bin/sh var=`sudo /System/Library/PrivateFrameworks/Apple80211.framework/Versions/A/Resources/airport -I|grep "\sSSI
前回の(1)はこちらから。 字句解析器の作り方 (2)では、一般に字句解析器や構文解析器に利用されるパーサジェネレータツール(Yacc/Bison)を利用せずに、自分の手で字句解析器を作成する際に気をつけなければいけない点や設計方針について、Compiler::Lexerを開発した際に得られた知見をもとに解説します。 正規表現で処理するのは正解? 字句解析器や構文解析器を開発するときによく利用するものとして正規表現があります。正規表現は文字列処理を行ううえでとても有益ですが、言語処理系の場合はそうとも限りません。正規表現で表現できないシンタックスが存在する場合や同じ文字を何度も探索しなければならない場合は、正規表現ではなく、後述する1文字ずつ処理する方法をお勧めします。 正規表現で表現できないシンタックスが存在する場合 当然ながら、Perl 5のような複雑なシンタックスの場合、すべてを正規
Android Weekly Topics 2014年12月第3週Go言語がAndroidを正式にサポート、Android WearがAndroid 5.0にアップデート Go言語がAndroidを正式にサポート 米Googleは、12月10日にプログラミング言語の「Go 1.4」をリリースしました。 今回のリリースで、Go言語でAndroidアプリが開発できるようになりました。 Go 1.4 Release Notes - The Go Programming Language とは言っても、現状のJava言語を使ったアプリ開発のように、高レベルなライブラリも一緒にリリースされたわけではないので、一気にJavaから移行できるわけではありません。いち早く試してみることができるレベルです。また、ビルド可能なバイナリもARMに限られています。Goで、ライブラリがビルドできるので、これをJava
Mac用のデザインツール「Sketch 3」が人気です。Mac App Storeで販売されているアプリとしては少し高めの価格設定ですが、Illustratorと比較すれば十分安価であり、アプリのアイコンやUIを作成するツールとして利用者が増加しています。 Sketch 3 カテゴリ: グラフィック&デザイン 価格: ¥9,800 Illustrator代替が期待されるベクタードロー系アプリ。 通常価格9800円。 Sketch 3ユーザーの中には、自分でアプリのアイコンまで作りたいという開発者の方もいると思いますが、慣れないツールだと使い方を覚えるまでが大変かもしれません。そんなときに利用できそうなチュートリアル「Sketch 3 Basics & App Icon Design」が公開されています。 Sketch 3の基本を学びながら上の図のようなTODOアプリのアイコンを作成するチュ
Labelauty jQuery Plugin checkboxやradioをアイコン付きでよりオシャレにできるjQueryプラグイン「Labelauty」。 ボタンの横にアイコンを表示させてON/OFFでアイコンを変えたりすることが可能。 通常のデザインが分かりやすい時もあれば、そうでない時もあるかもしれないので、そういう場合の選択肢にこれを知っておいても良さそう 関連エントリ チェックするといい感じにアニメーションするcheck,radioが作れるjQueryプラグイン「checkBo」 押しやすいカスタムデザインのcheck/radioボックスを実現できる「jquery-asCheck」 radioボタンをかっちょいいスライダーにしてくれるjQueryプラグイン「radiosToSlider」
対象 開発フローの中でコードレビューを実施しているひと git add -p や git rebase -i でコミットの分割や統合ができるひと レビュー無しにマージしてもらうために同僚をいかに抱き込むか。 という話ではなく、レビュワーの コードレビューの負荷を下げる ことを意図しています。 無視できるコミットを増やす どうすればレビュワーがより短時間で自分の書いたコードをレビューできるか。この問に対して、レビューの妨げとなるものを排除する、というアプローチがあると思っています。そのための良い方針だと考えている 無視できるコミットを増やすこと について書きます。 前提 コミット どのコミットにおいてもテストが通るようにする コミットメッセージ ちゃんと Git のスタイルで記述する (Gitのコミットメッセージの書き方 の原則を守る) Git の操作 雑にコミットしても、後できれいにコミッ
フラットUIが流行ですが、完全に真っ平らでは情報の軽重がつけづらいのが欠点です。そこでちょっとした印象付けのために行われるのが影付けです。といってもフラットに直線で、ぼかしなくつけられているのでフラットの雰囲気にはマッチしています。 そんな影を自動で、かつ現在時刻に合わせて変化させる面白いライブラリがFour Shadowsです。 Four Shadowsの使い方 Four Shadowsは全部で4パターン(左右上下の組み合わせ)で影の向きが変化します。それによって時間を表現しています。デザインとして面白いですし、ユーザ自身の時間によって変化するというのはアダプティブWebデザインのようで面白いですね。 Four ShadowsはJavaScript製、MIT Licenseのオープンソース・ソフトウェアです。 Four Shadows - It’s not always just 5 o
Heroku Advent Calendar 2014の18日目の記事です。 この記事では、herokuでRailsアプリを運用していくにあたってのノウハウや便利なGem等を紹介します。 herokuでのサイト表示の高速化(配信データのdeflate圧縮)herokuで運用するアプリはWebサーバをチューニングしてページ読み込み負荷を減らすという最適化がなかなか難しいですが、heroku上のRailsアプリであればheroku_rails_deflateというgemを使うことで、Rack::deflaterによるファイルのdeflate圧縮配信をheroku上で実現できます。 gemの組み込みと多少のasset設定(environments/production.rb)をすることで、予め圧縮済みのファイルを配信できるためCPU使用率にも優しいです。 heroku_rails_deflate
jThreeとは jThreeはオブジェクトをタグの形で記述できるWebGLのライブラリです(リンク:jThree)。オブジェクトの生成、マテリアル・テクスチャの割り当てをタグで書くことができて、オブジェクトを出してみるあたりまでであれば、JavaScriptの知識がなくてもWebで3Dを体験することができます。簡単にMMDモデルを踊らせることができたり、最近では立体音響に対応したり、ハコスコ等で見られる形式に対応していたりします。 名前の通り、スクリプトもjQueryの記法で書くことができる上、オブジェクトのクリックイベント等も同様にイベントハンドラ(on)で取得できるので非常に便利です。 jThreeの弱点 さて、jThreeの便利なところとか、どんなものか、ということは何度か書いたように思うので、今回は弱点に迫ってみたいなと思って書いています。jThreeの弱点といえば 公式ドキュメ
URL Config WANDBOX_BASE: Wandboxのベース。 指定がなければhttp://melpon.org/wandbox/ 最初のhttp://は必要。最後のスラッシュはあってもなくても良い。 Usage /wandbox list/ コンパイラ一覧を返す。 gcc-head: warning,optimize,cpp-verbose,boost-nothing,boost-1.47,boost-1.48,boost-1.49,boost-1.50,boost-1.51,boost-1.52,boost-1.53,boost-1.54,boost-1.55,boost-1.56,sprout,c++98,gnu++98,c++11,gnu++11,c++1y,gnu++1y (snip) /wandbox setinput ?(?<input_uri>\S*)/ std
企業のソフトウェア/サービス開発の部門と運用部門が連携し、1日に数十回というサイクルでソフトウェア/サービスをリリースし改善していく考え方「DevOps」が注目されて久しい。米国では開発、運用現場の「スピードと品質の両立」を目指し、金融などの事業会社でもDevOpsの導入が進んでいる。ある大手銀行ではDevOpsの考えに基づき、1カ月に1万7000回ものデプロイを行い、バンキングアプリケーションの品質向上を行っているという。 DevOpsは国内でもWeb系企業を中心に導入が進んでいるが、一般の事業会社への導入はこれからだ。ITをビジネスに生かす機会が増え、一般事業会社でもソフトウェア/サービス開発と運用の効率性向上が強く求められている。国内でDevOpsを実践し、効果を挙げている先駆者はDevOpsをどう捉えているのか。DevOpsを導入するヒントとは? 2人に話を聞いた。
.app 1 .dev 1 #11WeeksOfAndroid 13 #11WeeksOfAndroid Android TV 1 #Android11 3 #DevFest16 1 #DevFest17 1 #DevFest18 1 #DevFest19 1 #DevFest20 1 #DevFest21 1 #DevFest22 1 #DevFest23 1 #hack4jp 3 11 weeks of Android 2 A MESSAGE FROM OUR CEO 1 A/B Testing 1 A4A 4 Accelerator 6 Accessibility 1 accuracy 1 Actions on Google 16 Activation Atlas 1 address validation API 1 Addy Osmani 1 ADK 2 AdMob 32 Ads
「私の環境がおかしいので動きません。あなたの環境で動かしてもらえますか?」と、ある人が勢い込んで私のところにJSPファイルを持ってきました。 仕方がないのでデバックする前にソースコードを読むと、なにやらif文のORのフォントが微妙に違うような……。 なんと||と書くべきところがllとアルファベットのLでORが書かれている! その上これを指摘すると、「そっちかー!」という返答が。こいつORの存在すらわかってないのか……。 とりあえず見よう見まねで書けるJavaもLL言語ということでしょうか。 ※LL言語:コードの作成や修正が容易なプログラミング言語のこと。主にスクリプト言語を指す。 コメット(男/34歳/プログラマ・SE) あるあるあるあるある…。他にも0とOとか。:と;とか。何よりも憎たらしいのが全角スペースですよ。なんだあれ!だれだあんな文字作ったの!見えねーんだよ!インデントを全角スペ
Make は、様々なタイプのファイルのビルド作業を自動的に行ってくれるシンプルかつ強力なツールです。しかしながら、makefileを書く際に問題にぶち当たるプログラマもいれば、Makeの基本知識がないことで、既存のものを再発明してしまうプログラマもいます。 Makeの働き デフォルトでは、Makeは一番目のターゲットから開始します。このターゲットのことをデフォルトゴールと呼びます。 Makeはカレントディレクトリのmakefileを読み込み、一番初めのルールで処理を開始します。しかし、Makeが完全にこのルールを処理する前に、ルールが依存するファイルのためのルールを処理しなければなりません。各ファイルそれぞれは、自身のルールに従って処理されます。 実はこれは、各ターゲットの再帰的アルゴリズムになっています。 ターゲットをビルドするルールを見つける。ルールがないようであれば、Makeはうまく
まずは環境から。 sensu-client:社内仮想サーバ(not AWS, 64bit 8コア 320GB)x 8台 sensu version:0.14.0 sensu-community-pluginからmetricスクリプトを拝借 sensu_influxdb_handlerを使用して、InfluxDBにmetric送ってGrafanaで描画してます checkの間隔は30秒に1回、metricは10秒に1回 Tomcat & Apacheは起動しているものの、LBから切り離されてて本番投入はされてない という状態です。 この時、Grafanaでポチポチグラフ作ってたら、sensu-clientのサーバのloadが高くなる謎現象に遭遇しました。 8コアなのでこれぐらいなら全く問題ないのですが、ちょっと気持ち悪かったのと本番投入前で無茶できたので、内緒でいろいろイジってみました。 固
このエントリーは「HTML5 Advent Calendar 2014」12月3日の記事です。私自身HTML5技術で気になっている機能をひと通り味見しましたので書き留めます。気になる機能は Promise ダイアログ要素 Web Animations API Web Components です。ダイアログ要素というのがかなりマニアックだと思いますが業務アプリケーションを作るときにはこういった機能が重要になってきます。 HTML5 Advent Calendar 2014 - Qiita Promise Promise は「非同期処理を抽象化したオブジェクトとそのオブジェクトを操作する仕組み」を提供します。MDNやHTML5 Rocksでも取り上げられています。Single-page Applicationを作るときは基本的にはRestful APIを使いデータを取得すると思います。例えば5
本記事はGo Advent Calendar 2014の18日目の記事です. Go言語は,クロスコンパイルや配布のしやすさからコマンドラインツールの作成に採用されることが多い.自分もGo言語でいくつかのコマンドラインツールを作成してきた.例えば,GitHub Releaseへのツールのアップロードを簡単に行うghrというコマンドラインツールを開発をしている. コマンドラインツールをつくるときもテストは重要である.Go言語では標準テストパッケージだけで十分なテストを書くことができる.しかし,コマンドラインツールは標準出力や標準入力といったI/O処理が多く発生する.そのテスト,例えばある引数を受けたらこの出力を返し,この終了ステータスで終了するといったテストは,ちゃんとした手法が確立されているわけではなく,迷うことが多い(少なくとも自分は結構悩んだ). 本記事では,いくつかのOSSツール(得に
Objective-C で iOS アプリは書けるけど、Swift はどうなんだろ?って方も多いかと思います。 先日アプリをリリースしたのですが、そのほとんどを Swift で書きました。言語仕様やツールが固まっていない中で色々苦労しましたが、その中で見つけた、Swift に移行するために最低限必要な事をまとめてみます。 この記事は Swift Advent Calendar 2014 17日目の記事です。 Swift の新しい機能は使わなくてもよい Swift は新しい言語であり、タプルやジェネリックといった様々なモダンな仕組みが導入されていますが、それらを使わなくても iOS アプリを開発することは可能です。 もちろん、それらを使ったたほうが効率よく開発できたり、パフォーマンスの面でも有利なこともありますが、まずは、Swift でアプリを作ることに慣れて、その後に新しい仕組みを導入して
こんにちは!Web開発部の渋谷です。 この記事は ChatWork Advent Calendar 2014 の 18 日目の記事です。 先日、待望されていたメッセージ取得APIがリリースされましたね! メッセージ取得API ドキュメント メッセージ取得APIが使えるとBotが作れたりと、夢が広がりますね 社内では、特定のBotアカウントへ「なに」と発言するとオフィスで流れている曲名を教えてくれるBotが作られたりと、おもしろいものが作られています 通知アプリ ChatWork Notifierそこで今回は、チャットワークをブラウザで開いていなくても通知を受け取れる通知アプリ ChatWork Notifier を チャットワークAPIを利用して作成しました! 「チャットワークをブラウザで開くのを忘れて、メッセージに気付けなかった」などの声があったりしますので、解決の手助けになれば幸いです
コカコーラが大好きな梶です。 2014/12/12に、弊社イベントCM re:Growth 2014 SAPPOROを実施し、そこでreinvent 2014のCloudformationのベストプラクティスのレポートをお話をしましたので、本日はそのご紹介をします。 概要 CloudFormationとは re:Invent2014 APP304 CloudFormation ベストプラクティスレポート APP304 CloudFormationベストプラクティスレポート 私は現地に行っておらず、Youtubeで見てSlideshareで内容を確認しました。 40分の内容だったのですが、お話しする持ち時間が20分のため、抜粋しています。 英語苦手&なまりがあって聞き取れず、理解不足があるかもしれません。 解釈に誤りがあったらコメントください。 ポイント スタックをどう計画するのか? レイヤ
今年の4月に投稿した現在のandroid端末の解像度と今後とこれからが定期的にストックされつづけていたこともあるので、最近の情報に合わせた2014年冬版を書くことにしました。 ちなみに今回はandroid端末のカテゴリ(ldpiとかxxhdpiとか)にはほとんど触れませんので、詳細は公式のガイドラインか、4月版の記事を参照ください。 Supporting Multiple Screens | Android Developers 現在のandroid端末解像度 ハンドセット(電話)端末 フラッグシップ界隈 7月にauからisai FL(LGL24)が発売されたのを皮切りに、国内でも2560x1440の端末が増え始め、「フラッグシップモデルは2K(WQHD)解像度」の時代に突入しようとしています。 Googleもこの動きを無視することはできず、Nexusシリーズの最新機種であるNexus 6
よく訓練されたアップル信者、都元です。昨日のエントリーはこちらです。本日は軽めのネタにて。 Edisonは内部に時計を持っています。チュートリアルの通りにさっさとWiFi接続をしてしまえば、その時からネットワークを介した時刻同期が行われるためあまり意識せず、現在時刻を扱えます。 しかし、Edisonには内臓のバッテリーは無いため、リアルタイムクロック(RTC)は給電を止めると初期化されてしまいます。それでもまぁ、ネットワークに繋がり次第同期を行うため、問題に気づくことはなかなかありません。 実験 Edisonのファームウェア初期化を行い、時計の状況を見てみましょう。 # reboot ota この初期化の直後、Edisonはネットワークに繋がってはいません。しかし、電源は継続してONの状態であるため、時刻は正確なものを表示しています。 # date Thu Dec 18 05:31:48
米ZeroTurnaroundは12月16日、インタラクティブなJavaプロファイラ「XRebel 1.2」を発表した。プロプライエタリな商用ソフトウェアだが、無料のトライアルも同社Webで公開している。 XRebelは軽量のJavaプロファイラ。Webアプリとともに動く常時オンのインタラクティブなプロファイラで、アプリケーションと性能が関連した問題をウィジェット形式で知らせてくれる。コード作成やテスト時にリアルタイムで問題を通知してくれる「WebアプリのX線」と表現している。 データベース接続が関連した拡張性や性能に関連するバグなどを発見すると、Webブラウザ内で通知する。データベース接続、セッション肥大化、隠れた例外処理などのデータを提供し、ドリルダウンして問題を解決できるため、Webアプリケーションの品質や性能を改善できるという。同社は6月に「XReebel 1.0」を発表している。
リアルタイム集計・可視化環境(Norikra+Kibana4+Elasticsearch+Fluentd+Nginx)をfig一発で気楽に立ち上げる。ElasticsearchDockerNorikraKibanafig このエントリーはドワンゴアドベントカレンダー17日目のエントリーです。 ストリーム処理エンジンのNorikraについて、最近聞くことが増えてきました。 使ってみたい方は結構いるのではないでしょうか。 とは言え、「ストリーム処理を試してみたい、環境構築してやってみよう」と思っても、JRuby入れてNorikra入れて、fluentd入れてNorikraとのin/outの連携して、集計結果を格納する為にElasticsearch構築して、Kibanaから見れるようにして、認証機構や改廃の機構も入れて...あ、ストリームソースも用意しなきゃ...となって、そこそこ手間が掛かりま
D3.jsを使って、チャートを一つウェブに表示することはexampleを利用すればできますが、たとえば以下のような場合にはどうしたらいいでしょうか。 ・データが異なるバーチャートをいくつか掲載したい ・カラースキーム(色の指定ルール)が異なるバーチャートをいくつか掲載したい ・バーチャートとパイチャートに同じデータを適用したい これらのような場合に、一つひとつexampleのような書き方をすると冗長ですし、整合性をヒューリスティックに確かめなければなりません。D3.jsのメインコントリビューターであるMike Bostockが使った‘reusable’=再利用可能、というキーワードがここで登場します。 Towards Reusable Charts再利用可能なチャートに向けて ただ、再利用可能なチャートのためのフレームワークはD3.jsには含まれていず、個々人で用意するか、既存のD3.js
導入 Gitはとても便利なツールです。ですが、「これをやったら無意味だろ」「せっかくのGitが台無し」「むしろ開発の妨げ」的なこともいくつか存在します。ここではそんな「べからず」集の一部をご紹介します。 ケース1:ブランチを使わない 深刻度:論外 修正難易度:とても易しい それ、SVNでやりなよ度:最大 コメント:トップバッターがいきなりアレですが、要はブランチを使いましょうということです。Gitの特徴としてマージが比較的容易であるという点が挙げられます。じゃんじゃんブランチを作り、マージしましょう。 ケース2:ブランチ名がhogeやBug fixだらけ 深刻度:中 修正難易度:易しい 身にしみる度:中 コメント:ブランチを作るのはいいのですが、ブランチ名にも変数名と同じく気を遣いましょう(変数名、気をつけてますよね?)。当たり前ですが、同じ名前のブランチを複数作ることはできません。まあ、
Arduino Advent Calendar 2014 17日目の記事です。 以前書いた、「Arduinoで、小っちゃいIC(ATTiny)を使う方法」の続きです。 メリークリスマ〜ス(ちょっと早い) 前回、ArduinoでATTinyという小さいAVRを開発すると楽しい、という話をしました。(超てきとう) 今回は、このATTinyシリーズ (製造元サイト)の中から、独断と偏見で Arduino初心者でも扱いやすいと思うもの(基本的にArduino UNOなどのArduinoボードとArduino IDEだけで書き込みできるもの) をピックアップして紹介したいと思います。 Arduino IDEとArduino UNOでATTiny45に書き込んで作ったUSB MIDI音源 ArdionoでATTinyを開発する方法については、Arduino IDEで ATtiny/ATmega 開発環
最近SSL関連の脆弱性がたびたび話題になったが、これに関連してか、HTTPSを利用しているのにCookieのsecure属性を設定していないサイトについてが話題になっているようだ(セキュリティ研究家高木浩光氏によるTogetterまとめ)。 Cookieのsecure属性については、2004年に高木浩光氏がまとめた「安全なWebアプリ開発の鉄則 2004」の「CookieにSecure属性を」以下が分かりやすいが、この属性をセットしておくと、HTTPSでの通信時にのみそのCookieが送信される、というもの。secure属性が設定されていない場合、HTTP通信の際にもそのCookieが送信されるため、通信内容を傍受するなどでセッションIDなどが盗まれる可能性がある。 高木氏が検証したところ、secure属性が設定されていないサイトとしては全日空やニコニコ動画、OCNメールなどがあった模様。
初めまして。bowz_standardともうします。 最近ネイティブアプリのプロトタイプを作成する事になり、小回りが利きそう&ECMAScriptならさくっと作れちゃうんじゃね?(死亡フラグ)ということでHaxe+OpenFLを本腰を入れて使ってみました。その際どういったところでハマったかやこの辺が使って良かったといった面を備忘録も兼ねてつらつらと書いていこうかと思います。年末なので。 実装の方法や環境の構築手順などはこの記事では割愛します。今回の実装で参考にしたサイトは記事後半で記載します。 開発環境 Mac OSX Mavericks IntelliJ IDEA 13 Haxe(3.1.3) OpenFL(1.2.2) TweenX(0.0.4)★shohei909氏作 実際に作ったもの ◆パズル形式のバトルロジックを導入したゲームアプリです(○ズドラとか○ャンディクラッシュとかみたい
Angular Advent Calendar 2014 の 17 日目の記事です。Angular そのものではなく、AngularJS 用の E2E テストツールである Protactor について書きます。(日付越えてしまいました。すみません・・・。) Angular チームが作っているという Protractor。Angular アプリの E2E テストをするならこれに違いないと思いつつも、使い始める前はいろいろこわい点がありました。 コードがどこで動いているかわからなくてこわい。 処理がどういう順序で実行されるかわからなくてこわい。 この記事ではこれらの点について説明し、Protractor を自信を持って使えるようになることを目的としています。 読者としては以下のような方を想定します(主に先日の自分)。 Protractor のインストールをして動かしてみた。 日頃から Prom
こんにちは、中山です。 この記事は TECHSCORE Advent Calendar 2014 の 18 日目の記事です。 プライバシー(端的にはトラッキング)関連技術をキュートな概念図にまとめてみました。 補足させて頂きますと、キュートというのは私の主観です。 今回はこのキュートな図から見てとれる課題を二点ピックアップし、ご紹介します。 Cookie と JavaScript における 1st/3rd party の扱い相違 キュートな図から Cookie と JavaScript では 1st/3rd の関係性が異なることが分かります。 例えば 3rd party JavaScript は 3rd party Cookie ではなく 1st party Cookie に対して R/W を行っていることが分かります。 また Cookie と JavaScript では 1st/3rd
この記事はG*Advent Calendar(Groovy,Grails,Gradle,Spock...) Advent Calendar 2014 - Qiitaの18日目です。 Asset PipelineはRuby on Railsによって生み出された仕組みです。Grailsでは、このRailsの仕組みを参考にしたAsset Pipelineプラグインが提供されています。 このAsset Pipelineプラグインは、Javascript、スタイルシート、画像といった静的なリソースを管理するプラグインです。アセットとは日本語で「資産」という意味で、Javascript、スタイルシート、画像といった静的なリソースを指しています。 静的リソースを管理するプラグインは、Grails 2.3まではResourcesプラグインがデフォルトのプラグインでしたが、Grails 2.4からはこのAs
この記事はHTTP2 Advent Calendarの17日目の記事です。 はじめまして。nunnunと申します。HTTP2 newbieなので戦々恐々としておりますが、よろしくお願いします。 注意: HTTP/2.0はHTTP2もしくはh2と表記が変更になりました。 先日HTTP2のExplicit Proxyとそのプライバシー上の懸念について記事を書かせていただきましたが、その後のプロキシに関する議論を書きたいと思います。 IETF 91 HonoluluではProxyに関する議論がいくつか行われました。 draft-nottingham-web-proxy-desc-01 draft-loreto-wpd-usage-00 draft-chow-httpbis-proxy-discovery-00 背景 Explicit Proxyの議論が生まれた背景はGoogle ChromeのS
TinyMCE ほど高機能な WYSIWYG エディタでなくても、カーソル位置に文字列を挿入する機能くらいつけたいなぁなんてことありませんか そこで今回ご紹介するのが「caret binding」です ko.bindingHandlers.caret = { init: function(element, valueAccessor, allBindings) { var $elm = $(element), suspend = true, value_writer = allBindings()._ko_property_writers.value; function updateModel() { var pos = $elm.caret(); var modelValue = valueAccessor(); suspend = true; if (ko.isObservable(m
December 18, 2014 06:30 カテゴリiOS (iPhone/iPod touch/iPad) 【12/18】Apple、2015年6月1日からiOSアプリのアップデートでも64-bitサポートとiOS 8 SDKでの開発が必須になると案内。 Posted by applebrothers No Comments No Trackbacks mixiチェック Appleが、2015年2月1日から App Store にアップロードする新しいiOSアプリは、64-bit をサポートし Xcode 6 以降の iOS 8 SDK で開発する必要があると10月に案内していましたが、2015年6月1日以降はアプリのアップデートも同様の必要条件に対応する必要があると案内しています。 ■ 64-bit and iOS 8 Requirements for App Updates -
(Last Updated On: 2018年8月13日)Phalcon Adventカレンダー18日目として書いています。 一台のアプリケーションサーバーで10リクエスト/秒で十分というサービスであれば、どんなプラットフォームを選んでも問題ありません。一台のサーバーが10リクエスト/秒しか処理できなくても、ページがキャッシュできるならリバースプロキシで簡単に数千リクエスト/秒以上でサービスできます。このようなサービスであればPhalconのようなフレーワムワークを使わなくても大丈夫です。 しかし、メッセージング系などリアルタイム性の高いサービス、つまりHTTPキャッシュがあまり有効に利用できないシステムでは速度が非常に重要です。 ある程度の規模(Webサーバーが複数)のサービスの場合、速いシステムはコスト削減に役立ちます。リアルタイム性がそれほど重要でないサービスであっても、速くレスポン
この記事は ドワンゴ Advent Calendar 2014 20日目の記事です 新しい年を迎える準備 もうあと10日もしたら新年です。 みなさん新年を迎える準備はできているでしょうか? ん? その前に大事なイベント? コミケのことかな??? 正月の準備といえば、家を大掃除し、しめ飾りや門松を飾り、餅を撞き、おせちを作り、色々ありますが、 これはすべて神様を迎え入れるための準備なんですね。 年神様という、元日に各家に訪れ、一年の実りと幸せをもたらしてくれるありがたい神様です。 年神様を心から歓迎し、失礼ないようおもてなしすれば、次の一年の幸福と繁栄とマネタイズは約束されたも同然です。 さて、今年は、Railsエンジニアが年神様をお迎えするにあたって、 その前に供物を捧げ荒ぶる現世神の怒りを鎮めなければなりません。 すなわち、今年のうちに secure属性がついたcookie を現世神にお
こんにちは。Wright Flyer Studios部のにしだ(@hosi_mo)です。 部内で、主にcocos2d-xやUnityでゲームクライアントの開発をしています。 GREE Advent Calendar 2014の18日目は、 ネイティブゲームクライアントの幸せな設計図という題でお話しします。 Wright Flyer Studiosで開発するにあたり、 早く、安全に、見通しの良い実装で企画者の実現したいことを具現化するために、気をつけていることをお話しできればと思います。 1 : 後悔しない技術選定 cocos2d-xはC++で…、UnityはC#! と対比させられがちですが、技術選定時点でのエンジニア自身の言語習得能力によって選択肢を狭めることほど悲しいことはないので、純粋に企画との相性とパフォーマンス(チューニングで苦労したくない)で決めます。 また、エンジニアリングを
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました コンピュータと現実世界との間で情報をやりとりする方法はいくつかあります。目で見てキーボードで入力するのも一つですが、非常に面倒くさいです。昔からある手法として知られているのがバーコードです。 バーコードスキャナーを使うことで伝票や商品に印字されたバーコードを読み取れます。しかしいくつかのバーコードを読み取るだけでスキャナを購入したくないという方はQuaggaJSを使ってみてはいかがでしょう。 QuaggaJSの使い方 QuaggaJSはJavaScriptで書かれたバーコードリーダーです。 残念ながらQuaggaJSはCode128とEANにのみ対応しており、日本で使われているCode39には対応していません(フォークして作れそうな気もしますが)。Androidは既に対応しているの
今回はTwitterでStreamiingAPiで取得した内容をmilkcocoa経由でHubotを使ってSlackに流し込んでみます。 milkcocoaの準備 socket.io-client socket.io-client@1.0.x を使います。最新ではダメです。 hubotディレクトリ内でnpm installしておきます。 $ ls Procfile bin hubot-scripts.json package.json README.md external-scripts.json node_modules scripts $ npm i --save socket.io-client@1.0.x スクリプト記述 超短いw scriptsフォルダ内にgetTweet.jsを作成します。 robot.messageRoom(チャンネル名, 内容);となります。 それにしてもめ
Linuxデスクトップ 筆者のLinux PCで、「Windows」がなければできないことなど何もない。本当に、それほど単純明快なのである。 筆者は自分の「Linux Mint 17.1」で、「Crossover」を利用してWindows向けのゲームをプレーし、「Steam」が提供するタイトルを多く含む膨大な数のネイティブゲームをプレーしている。さらに、あらゆるFUD(恐怖、不安、疑念)戦略が試みられているにもかかわらず、これまでに感染したデスクトップLinux向けウイルスは1つもないので、アンチウイルスソフトウェアに頭を悩ませる必要もない。 本題に入ろう。本記事では、筆者が毎日、仕事を遂行し、友人と連絡を取り合うために利用している6つのアプリケーションを紹介する。Windows版しか提供されていない特定のプログラムを利用している人以外は、筆者と同じように、これら6つのプログラムで日々のニ
この投稿はドキュメント作成技術 Advent Calendar 2014の18日目の記事です。 皆さん、ER図やテーブル定義書は何で管理されていますか? まさかExcelでちまちま書いていたりしませんか? ER図を書いてから、手動でテーブル定義書を作る。 もうそんな不毛なことは止めましょう。 それを解決するのが、皆さんご存知【A5:SQL Mk-2】です。 (え、ご存知ない?そんな方はググってください!w) ここではそんなA5:SQL Mk-2の便利さを語って行きたいと思います。 1, ER図を書いてみよう メニューから【ファイル→新規】を選択後、【ER図】を選択。 そうするとプロジェクト名と対象DBを選択して完了を選択。 これでER図が書けるように様になります。 2, エンティティを書いてみよう! ER図のメニューから【エンティティの追加】を選択。 適当な場所をクリックして、エンティティ
この記事は Linux Advent Calendar 2014 の 18 日目のエントリとして書いています。 Docker が盛り上がって、Docker が使ってる「コンテナ」という技術が盛り上がって、Doker の解説がそこら中にあふれるようになったので「Docker? そんなの FreeBSD が jail でずっと前からできてたぞ」というちょっと的外れな発言を見かけることは少なくなりました。一方でコンテナの歴史を追って見る的な企画をみかけるようになりました。 みかけた歴史の解説でいくつか「ちょっと違うやろー」というものを見かけたのでここで愚痴ります。 コンテナの歴史として大体書かれているのが 1979 年 chroot(2) システムコールの Version 7 Unix への導入 1983 年 chroot(2) システムコールの 4.2BSD への導入 2000 年 FreeB
Refinements のスコープについて勉強した内容を紹介します RubyHiroba 2014 にて、このネタの LT をやりましたが、いまひとつまとまっていなかったので、まとめ直しました 朴訥なモンキーパッチ まず、Fixnum クラスにこういう変更を適用したいという事にします gem 'test-unit', '3.0.9' require 'test-unit' class Fixnum def to_hoge :hoge end remove_method :succ def succ :overridden end end class MonkeyTest < Test::Unit::TestCase sub_test_case '通常のメソッド呼び出しをすると' do test '上書きされた succ を呼び出せる' do assert { [:overridden, :
本格的なテストを行うまえに 情報収集したものを備忘録として残しておきます。 外部サービス appium 名前から分かるとおりseleniumのようなテスト自動をアプリで行うことが可能。必要条件は「Mac OSX 10.7以上、XCode 4.5以上 」となっているがSwiftも対応しているかは実際にコードを書かないとわからない。 saucelabs https://saucelabs.com/ seleniumやappiumのテストを高速実行。実行時のビデオも残してくれる。 Remote Test Kit リモートによる実機テストができる。 機種依存ポイントとなるセンサ周りのテストがしづらいのは残念。 OSS Quick Swiftが発表された2日後にGithubにコミットされた、世界で一番最初のSwiftのテストフレームワーク。RSpec, Specta, Ginkgoの影響を受けている
業務でiOSアプリを作っている場合、ほぼ確実にユーザの行動分析用にトラッキングを入れてるかと思います。よくありそうなのだと、viewDidAppearで画面の閲覧ログを取ったり、ボタンタップ時のIBActionメソッドでタップ数を計測したり。 こういった処理自体はせいぜい一行程度だと思いますが、できればUIライフサイクルのイベントメソッドでは行わず、 アプリケーションロジックとトラッキング処理は分離したい といった気持ちがあります。 また、大抵の場合トラッキングはアプリ内の様々な箇所で行い、その数が膨大になりがちです。アプリの改修を行っていく上で、追加や削除といった事も頻繁に発生するでしょう。なので、 計測する場所やタイミングは一箇所で一元管理できる ことが望ましいです。 ここでは自分が今のところこれが良いかな〜と思っている手法をまとめてみました。 ※トラッキングの送信まわり等、ロギング処
Android用の音楽プレーヤ PowerAMPは、アルバムアートを自動的に取り込んでくれるのはありがたいが、結構間違っている。一度間違うと長押ししても直らないケースが多い。 それを直す方法を紹介します。 (注)ここでは埋め込みアルバムアートは一切扱っていません。 [PowerAMPの仕様] たぶん、以下のような仕様だと思う。 画像がキャッシュされる場所は、ここ。 /sdcard/Android/data/_com.maxmpz.audioplayer/ この下の3つのディレクトリに画像キャッシュがある。 album_art/ (プレーヤ画面の大きい画像) micro/ (リスト表示の「ライブラリ」の小さい画像) selected_aa/ (長押しで選択される優先的な画像) ここでの画像ファイル名のルールは、次の通り。 アーティスト名 - アルバム名.jpg ただし、アーティスト名やアルバ
この記事はLinux Advent Calendar 2014の17日目です。 virt-managerのGUIを使って仮想環境を作るときにOS Typeというのを選択していると思いますが、これの設定はどのように使われているのか見てようと思います。 特に最近のvirt-managerはやたら選択可能なOSが多いように思えるんだけど、LinuxディストリビューションのところではArch LinuxとかGentooが無いんですね。その割にRedhat Linux 1.0なんてかなり昔のディストリビューションも入ってたりする謎さ加減です。 今回使っているvirt-managerのバージョンは1.1.0です。 Windowsだとこうだったり、 Linuxだとこうだったりです。 まず、これら選択項目がどこから来ているのか?というのが最初の疑問です。これはvirt-managerではなくてlibosi
つづき 前回、 Visual Studio を使って Managed(C#)なPluginを作ってUnityVSを使ってデバッグする方法について書きました。 今回はその続きで、Native(C++) な Plugin をつくってデバッグする方法について書きます。そもそもOpenCVを使いたくてプラグイン化をしているので、今回が本命です。 環境 Windows 8.1 pro 64bit Unity 4.6.0f3 pro Visual Studio 2013 Community GitHubにあげました 記事はmanaged/nativeで2回に分けましたが、プロジェクトは一つにまとめてあります。 Native Plugin の場合 UnityVS/MS 公式によれば、 UnityVSとしてはサポートしていないことになっています。 UnityVS の使用 - Visual Studio T
この記事は, Spark, SQL on Hadoop etc. Advent Calendar 2014 - Qiita の 12 月6日のための記事です. 今回の記事では,最近話題になっている word2vec の Apache Spark 実装を EC2 上で動かす方法について解説します. word2vec とは? 自然言語処理に新風を巻き起こしたWord2Vecとは何か - 日経BigData の説明を拝借すると,word2vec とはつぎのような説明になります Word2Vecは、その名前の表す通り、単語をベクトル化して表現するする定量化手法である。例えば日本人が日常的に使う語彙数は数万から数十万といわれるが、Word2Vecでは各単語を200次元くらいの空間内におけるベクトルとして表現する。 それぞれの単語を200個の要素の組み合わせとして表現するため、このような手法は「分散表
12月17 Java/Swing 使いのための C++/Qt 講座 カテゴリ:開発 Live2Dには関係ないですが、Qtのアドベントカレンダーに参加したのでこちらに記載させてもらいます。 Qtに興味のある「Live2Dとはなんぞや?」という皆様、Live2Dはキャラクターなどを立体的に動かす映像技術です( Live2D.comへ ) 。 現行シリーズのLive2D CubismはJavaで開発されており、次世代版のLive2D EuclidはC++ / Qt で開発しております。 只今、Qt 好きで、世界の度肝を抜くようなグラフィックエディタ・ゲーム用SDKなどを開発したい方を大募集中です! さて、今回の記事ですが、Javaに慣れている方が Qtにスムースに移行することを支援するための記事となります。 辞書的に使いやすくしたいので、随時更新していきます。予めご了承下さい。現時点では、主に
やることがありすぎたり単純に眠れなかったりで、日中に睡魔に襲われる人も多いはず。そこで、例えオフィスや車中であっても心地よい眠りにつけるようにするのが、腕や手に装着して即席でフカフカぽかぽかの腕枕を完成させる「OSTRICHPILLOW MINI」です。「昼寝をすると記憶力・学習能力が上昇する」とも言われており、生産的に動くためにも重要なので、OSTRICHPILLOW MINIの実力はどんなものなのか、実際に使って確かめてみました。 OSTRICHPILLOW ® MINI | STUDIO BANANA THiNGS http://www.studiobananathings.com/product/ostrichpillow-mini OSTRICHPILLOW MINIはマスクのようにかぶってあらゆる状況でお昼寝できるようにする「OSTRICH PILLOW」の小型&改良版。OST
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く