「ReVIEWによる書籍制作フローを勉強する会」では個人の書籍制作現場(コミケだよ!)で助けられた経験から書籍制作を支援するReVIEWのプラクティスや課題を共有しようという趣旨で開催しました。 ここ数年稀に見る面白さの勉強会でした。 イベント概要:http://www.zusaar.com/event/977003 togetter : http://togetter.com/li/546854 書籍制作でReVIEWを使う実践ワークフロー @mhidakaのEffective Android制作体験記 ReVIEWのおかげで何とか破綻せずに印刷間に合いました! ReVIEW & CI - ChefでCI環境構築 @vvakameのReVIEWの継続的インテグレーション環境をChefで立ち上げる話。 LiveTeX 2.3GBを毎回落としてくるあたり壮絶な努力。わかめ偉い。 13.08.
「Internet Infrastructure Review」は、インターネットの基盤技術に関する最新の技術動向や、セキュリティ情報を積極的に発信する季刊の技術レポートです。IIJがインシデント観測の仕組みで収集した各種攻撃の傾向と対策に関する情報や、インターネットバックボーンの運用を通して蓄積した技術的知見を掲載しています。 冊子の定期的な発送をご希望の方は、下記よりお申し込みください。 * Internet Infrastructure Review(IIR)は、IIJ.news(IIJグループ広報誌)との同梱でお届けします。 IIJ.news、IIRの送付をご希望の方はこちらから 2024年 Vol.64 (2024年9月) ブロードバンドトラフィックレポート〜この5年間を振り返って〜 仮想化技術の変遷とIIJの取り組み Vol.63 (2024年6月) 日々高度化するサイバー攻撃
最近の日誌 06月19日 楽しかったなあ 1. HND 2. HND-HNL A330 3. HNL 4. HNL-ITO B717 06月06日 買い物うろうろ 06月04日 ひさびさ島外 1. ITO-HNL B717 2. HNL 3. HNL-HND A330 05月14日 生きてます 1. コードの更新 07月07日 七夕の日曜日 1. Raspberry Pi Zero Wが来た 2. Ryzenさんがやってきた 07月10日 ちょっと焦げ臭い 1. スタティックリンクされたvimをマルチバイト対応でビルドする (失敗編) 07月09日 いい感じに曇り 1. スタティックリンクされたvimをビルドする 07月01日 火山ガスの匂いが少し 1. 最新に追随 06月24日 火山ガスもくもく 1. NetBSD 8.0を2番目のハードディスクにインストールする 03月17日 島の反対
『JUnit実践入門』写経・実践会 in 横浜 #7 のハンズオン用。 このエントリではJava(Groovy)について書いていますが他言語でもだいたい同じです。 前準備 : MavenかGradleでテストできる状態にあるプログラムをGithubに公開する 1 : Travis CIにアクセスする https://travis-ci.org/ の右上からGithubアカウントでログイン 2 : 自分の名前→Accountsでリポジトリの一覧が出る 3 : スイッチをOFFからONに切り替える Github側も勝手に連携される Tokenも全部設定されてるSUGEEEEEEEEEE!!!!!!!!!!1111111111 4: リポジトリのルートに設定ファイル( .travis.yml )を置く Java language: java jdk: - openjdk6 - openjdk7
2013/6/15 〜 2013/6/16でTDDBC Fukuoka 2013を開催しました。 TDD Boot Camp Fukuoka 201323人参加のうち5人が学生という、自分が開催した勉強会では珍しい会となりました! まとめTDDBC Fukuoka 2013 1日目のつぶやきのまとめTDDBC Fukuoka 2日目のつぶやきのまとめTDD Boot Camp Fukuoka 2013/1日目KPTTDD Boot Camp Fukuoka 2013/2日目KPTTDDBC FukuokaのFBグループ今回は主催者ということで、コード殆ど書いてないですが振り返りを。 主催者としての振り返りKPTで出てきた部分は除いており、個人的な振り返りです。 立地、電源やネット環境等も鑑みると、会場は大分いいところを用意できたかなと思ってます。色々なところで和田さんに頼りすぎてしまった感
リソース監視はちゃんとしないとと思って、gangliaを入れてみました。 gangliaに関しては、 * クラスタリングできる * 一覧性が優れてる * プラグインがそれなりに豊富 * Nagiosとの連携が取りやすそう * yumでサクッと入れられる(fedora16の場合) ってことで試用してみました。 gangliaは日本語のドキュメントがなくて大分苦労しました・・・・ ganglian自体の概要は@yuzorockさんのスライドに詳しく載っています! CloudForecastも考えたのですが、fedora16でうまくperlのモジュールが動かず断念しました。 ## 構築 今回、監視+表示をするサーバーをホスト、監視される側のサーバーをクライアンとします。 gagliaはホストでgmetadとgmond、クライアントでgmondのデーモンを動かす必要があります。 **ホストサーバー
今やクラウド、ビッグデータに次ぐキーワードになったDevOps。だが、その意義や価値に対する理解はまだ浸透しているとはいえないようだ。なぜ今、DevOpsが必要なのか? その意義と実践のポイントを探る。 企業が生き残る鍵、「DevOps」とは何か? 「DevOps」という言葉が注目を集めている。一言でいえば「開発部門と運用部門が密接に連携しITサービスのリリースサイクルを速める」といった概念だ。昨今、セミナーやイベント、メディアなどでこの言葉が登場する機会が大幅に増えた。 というのも、近年は市場環境変化が速く、時間をかけて製品・サービスを企画・開発し、入念に作り込んでから世に出すウォーターフォール的な開発・提供スタイルでは変化についていけない時代になりつつある。これはそもそも変化が速いWebサービス分野の業態に限らない。BtoB、BtoCを問わず「顧客」が存在するおよそ全ての業態に当てはま
Dev(開発担当者)とOps(運用担当者)が連携してサービスのリリースサイクルを速める概念「DevOps」が注目されている。市場が激しく移り変わる現在、企業は各種ITサービスを短期間でリリースし、ニーズをくみ取りながら、迅速にサービスを改善していくことが生き残りのカギになる。DevOpsはその一手段として関心を集めているわけだが、その実現にはアジャイル開発の実践をはじめさまざまな課題がある。本稿ではDevOpsのポイントや、その鍵となるアジャイル開発導入の要点がつかめる3つのホワイトペーパーを紹介する。 DevOpsの全容と実践のポイントを分かりやすく整理 IT部門の開発チームと運用チームが断絶してしまう7つの理由 提供:日本ヒューレット・パッカード(8ページ) 市場変化に応じてビジネスをスピーディに展開する上で、DevOpsが重要なことは認識していても、すぐに実践に移すことはなかなか難し
昨今、「DevOps」という言葉が企業の関心を集めている。一言でいえば「Dev(開発担当者)とOps(運用担当者)が連携してサービスのリリースサイクルを速める」といった概念だ。市場環境変化の加速に伴い、今、企業には市場の声を迅速に製品・サービスに反映することが求められている。その実現のためには、製品・サービスを速いペースでリリースし、市場ニーズをくみ取りながら改善を重ねるアジャイル開発のアプローチが不可欠となる。DevOpsは、その具体的な手段として注目されているわけだ。 だが開発部門と運用部門の間には、常に“壁”が立ちはだかってきた。開発部門はビジネス部門の要求に応えるために、スピーディな開発、テスト、リリースを目指す。一方、開発成果物を本番環境にリリースし、安定的に運用しなければならない運用部門としては、開発のスピードよりも成果物の品質を重視したい。こうした相反するミッションを持つ両部
最近さまざまなイベントやブログエントリで見かける「DevOps」。この言葉をひもとき、なぜ「Dev」と「Ops」が衝突するのか、その解決に必要な要素とは何かを分かりやすく解説します。 DevOpsとは 2009年にオライリーが開催した「Velocity 2009」というイベントにおいて、Flickrのエンジニアが、“開発と運用が協力することで、1日に10回以上のペースでリリースが可能になること”を紹介しました。いまさまざまなシーンで見かける「DevOps」という言葉は、このプレゼンの中で登場したものです。 DevOpsとは、開発(Development)と運用(Operations)が協力し、ビジネス要求に対して、より柔軟に、スピーディに対応できるシステムを作り上げるためのプラクティスです。多くの人々により議論は続けられていますが、ITILとは異なり、現時点においては、DevOpsに厳密な
表のような転置インデックス完成後は、クエリに対する結果を返す処理は簡単です。例えば、ユーザーが「Vim」というクエリを発行すると、検索エンジンは「Vim」を含む文書IDリストを返します。表では文書IDの「2」を返します。 検索エンジンを取り巻く7つの技術 検索エンジンのコア技術は前節で紹介したインデックスです。しかし実際に、検索インデックスだけで構成する検索エンジンから、検索サービスを構築するには多大なコストが掛かります。以下の節で検索エンジンを利用したシステム、検索サービスを構築する際に便利なコンポーネントを紹介します。 これらの機能のいくつかは、多くの検索エンジンが組み込んでいます。一方で、簡素な検索エンジンは、以下で紹介するコンポーネントをサポートしていないため、ユーザーが独自に開発するか、その機能を持つコンポーネントを組み込む必要があるものもあります。 【1】トークナイザ 検索エン
Hadoopプロジェクトは3つの「サブプロジェクト」で構成されています。 Common:Hadoopの基本機能FileSystem、RPC、Serializationのライブラリ HDFS:分散ストレージを仮想的に1つに扱うためのファイルシステム MapReduce:膨大なデータセットをクラスタ上で分散処理するためのソフトウェアフレームワーク これらが、「Hadoopファミリ」の核であり、並列分散処理機構を支えています。それ以外の「関連プロジェクト」は2011年12月時点では下記のようになっています。 Avro:Commonの持つ機能を拡張したデータシリアライズシステム Cassandra:単一障害点のないスケーラブルなマルチマスタデータベース Chukwa:大規模な分散システムでのデータ収集システム HBase:大規模な構造化データをサポートする、スケーラブルな分散データベース Hive
いまさら聞けないKVSの常識をHbaseで身につける:ビッグデータ処理の常識をJavaで身につける(3)(1/3 ページ) Hadoopをはじめ、Java言語を使って構築されることが多い「ビッグデータ」処理のためのフレームワーク/ライブラリを紹介しながら、大量データを活用するための技術の常識を身に付けていく連載 ビッグデータの要! KVSとは何なのか 「KVS(Key-Value Store)」とは、Key値を指定してValue値の格納や取得を行う方式です。それに対して、RDBではキー(プライマリキー)が必須ではなく、逆に複数のカラムをセットしてキーにすることもできます。 テーブル構造だけを見れば、KVSとRDBは似ています。例えば、RDBでプライマリキーと1つのBLOB型を持ったテーブルを作れば、KVSと同じような構造にもなります。しかし、RDBでKVSのまねごとをするのと、KVSとして
リアルタイム分散処理の常識をApache S4で身につける:ビッグデータ処理の常識をJavaで身につける(6)(1/2 ページ) Hadoopをはじめ、Java言語を使って構築されることが多い「ビッグデータ」処理のためのフレームワーク/ライブラリを紹介しながら、大量データを活用するための技術の常識を身に付けていく連載 Hadoopの弱点「リアルタイム分散処理」とは 「ビッグデータ」処理のためにHadoopを用いると、「複数のマシンに大量データ処理を分散して飛躍的に性能を向上する」ことが容易にできます。 ところがHadoopの弱点として、ビッグデータをいったん蓄積し、バッチで一括処理する形態で処理するので、処理データが発生してから、それに対する処理結果が得られるまで、必ずタイムラグが発生します。このため、クレジットカードの不正アクセス検知、センサデータなどでの異常値検出のようなリアルタイムな
Hadoopの現実解「バッチ処理」の常識をAsakusaで体得:ビッグデータ処理の常識をJavaで身につける(7)(1/4 ページ) Hadoopをはじめ、Java言語を使って構築されることが多い「ビッグデータ」処理のためのフレームワーク/ライブラリを紹介しながら、大量データを活用するための技術の常識を身に付けていく連載 “ビッグデータ”時代の「バッチ処理」 アプリケーション開発というと、システム利用者に一番近い画面系の開発が花形ですね。一方「バッチ処理」というと、何となく地味な感じがしますが、「バッチ処理」は縁の下の力持ち、これがないと、大概のシステムは稼働できません。 絶対に必要だけど、影の薄い「バッチ処理」でしたが、“ビッグデータ”への注目度が高まり、大量データを短時間に処理する「並列分散処理バッチ」が活躍する場面も増えてきました。 本稿では、並列分散で「バッチ処理」を行う方法につい
管理が困難―分散処理の常識はZooKeeperで変わる:ビッグデータ処理の常識をJavaで身につける(8)(1/3 ページ) Hadoopをはじめ、Java言語を使って構築されることが多い「ビッグデータ」処理のためのフレームワーク/ライブラリを紹介しながら、大量データを活用するための技術の常識を身に付けていく連載 分散処理の課題が「管理」なのは常識 複数の計算機上で動作(分散)するアプリケーション、ソフトウェアが多く存在します。分散ソフトウェアは複数の計算機で動作することで大量のデータを扱えたり、高負荷な状況に対処します。本稿では、複数の計算機(クラスタ)で動作する各サーバを「インスタンス」と呼びます。 本連載で紹介した分散Key-Valueデータベースである「HBase」は複数の計算機で動作する代表的なソフトウェアです。両ソフトウェアはともに「Apache ZooKeeper」(以下、Z
Express 4 がリリースされたので、さっそく試してみました。 なお、コードは github に上げてみました。 https://github.com/hoshi-takanori/express-sample プロジェクト作成 Express 3.x ではプロジェクトの雛形を作成するための express コマンドが用意されていましたが、Express 4 では廃止というか、別パッケージ (express-generator) に分離されたようです。 基本的に app.js (と package.json) があればいいので、express コマンドは使わなくても大丈夫です。グローバルに express パッケージをインストールする必要もありません。 適当なディレクトリを作って app.js と package.json を作ります。
iOSの通信状態を確認する方法は、「Reachability」を使用する方法が一般的です。 以下のリンク先からApple公式の「Reachability」を取得し、アプリのソースに組み込みます。 ※非公式のARC対応「Reachability」を薦めているサイトがありますが、上記公式の「Reachability」を使用することをお薦めします。 現時点最新の「Reachability」は、ダウンロードした「Reachability.h」「Reachability.m」を自分のアプリにコピーするだけで使用できます。 実装方法はダウンロードした「Reachability」のViewControllerを参考にするとよいです。 ちなみに私は「Reachability」から通信状態を取得する「ReachabilityController」クラスを実装し、AppDelegateのdidFinishLa
概要 設計力に関しては経験によるところが大きいので、実践+コードレビューでまかなえるところが大きいが、ある程度網羅的でやった感の出るものとしてデザインパターンを使って学習する。 増補改訂版Java言語で学ぶデザインパターン入門を利用 デザインパターン自体は、C++/Java用だったりして古いので、そのパターンが必要な背景を元に、Ruby(/ObjectiveC)で書き直してそれを使うべきか自分たちで再評価する。 またRuby, Railsその他有名なライブラリでそのパターンが使われている部分を探す。 実際に本を読んだりネット上を調べる際の、具体的なチェックポイントとしては、以下の5つを用いる。 どういう時に使うか メリット (+ デメリット) そのパターンを使わないとどうなるか Rubyではどう書くか(同じものがある/似たものがある/必要ない) Ruby/Rails/Gemで実際に使われて
Chrome34ですが、HTML内の<img>要素をマウスでつまむと、勝手にマウスの近くにその画像の半透明なものがくっついてきて、しくみによってはその動作を利用できます。 ただ、その間は、マウスイベントが発生しないようです。 上の図では、<img>要素にonmousedownを設定し、右側のマスにonmouseupを設定し、キャラをマスに置こうとしたのですが、マウスアップしてもonmouseupが発生しませんでした。 同様に、ゲーム画面全体にjQueryObject.onmouseleaveを設定していたのですが、つまんだ状態では、onmouseleaveイベントは発生しませんでした。 画面外でつまんでいるのを離すと、その瞬間にonmouseleaveイベントが発生しました。 ドラッグ状態の時は、マウスイベントが発生しない、と解釈するべきのような気がします。 上記の仕様は、<img>要素の
RubyでArrayを複製するときにハマったのでメモしておきます。 変数 Arrayについて理解する前に、まずは変数について確認します。 変数が保持しているのはオブジェクトへの参照です。次の例のように、update1で渡された引数に新しいオブジェクトを代入する場合、元のオブジェクトが変更されることはありませんが、update2で渡された引数の参照に対して変更する場合、元の変数も変更されてしまいます。 def update1(var) p var.object_id # => 1 var = "adc" # ローカル変数varに新しいオブジェクト"abc"が代入される p var.object_id # => 2 end def update2(var) p var.object_id # => 1 var[1] = "d" # ローカル変数varが参照しているオブジェクトに"d"が代入され
第三回でまとめてconfigファイルを書きましたが、 あとからormパッケージを入れるかもしれません。 リアルタイムで書いてるとこういうことが起こる(´@ω@`) Controller_Templateの実装に入っていきます。 前回までのおさらいはこちら - FuelPHP開発入門_01 - FuelPHP開発入門_02 - FuelPHP開発入門_03 - FuelPHP開発入門_04 Controller_Templateとは 第四回でも書いたとおり、ビューテンプレートを利用することのできるコントローラークラスです。 HTMLの<head>部分や<body>内の<header><footer>などを複数作成せず、 その内側のcontent部分だけを動的に差し替えて表示することができます。 実装 実際の書き方の基本はこう。
ドットインストールのCSS入門を見て勉強しました。その際のメモを自分用にまとめておきます。 指定の仕方 HTMLの要素はタグをそのまま指定する idを指定する場合は#を付けてid名を書く classを指定する場合は.を付けてclass名を書く セレクタの使い方 * は全てのセレクタを指定 複数指定した場合はa, bとカンマで区切る a bのようにスベースで区切るとaの配下のすべてのbを指定する a > bのように区切るとaの直下にあるbを指定する a + bのようにプラスで区切るとaの直後のbを指定する abのようにくっつけるとand条件になってaかつbのものを指定する スタイルの優先度 後から書いたほうが優先 インライン(HTMLの中でstyleを指定する)で書いたほうが優先 詳細度の高いほうが優先(ポイント制) # idは100ポイント . クラスは10ポイント 要素は1ポイント !i
source "https://rubygems.org" gem 'rails', '4.0.0' gem 'turbolinks' # Use ActiveModel has_secure_password gem 'bcrypt-ruby', '~> 3.0.0' #gem 'jbuilder', '~> 1.2' gem "twitter-bootstrap-rails", "~> 2.2.8" gem 'bootstrap-sass', '2.3.2.0' gem 'jquery-rails' group :assets do gem 'sass-rails', '~> 4.0.0' # Use Uglifier as compressor for JavaScript assets gem 'uglifier', '>= 1.3.0' # Use CoffeeScript fo
前回は、Jenkinsからbacklogのリポジトリを監視できるようにしました。 今回は、同プラグインを利用して、backlogのアカウントでJenkinsにログインできるようにします。 設定方法 Jenkinsの管理>グローバルセキュリティ設定で以下のとおり設定します。 管理権限でいきなり「ログイン済みユーザに許可」に設定してしまうと、Backlog URLなどが誤っていてログインできなくなった時、Jenkinsのグローバルセキュリティ設定をリセットする必要があるので、まずは「全員に許可」にしてログインできることを確認することをおすすめします。 ログインできなくなった時の対処法 上記を参照して、/var/lib/jenkins/config.xml を修正する。 Register as a new user and use Qiita more conveniently You get
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 概要 AWS上で簡単なサイトを作って公開しています。 恥ずかしながら、レンタルサーバ以外で初めてちゃんとサイトを公開しました。 あとで思い出して恥ずかしい思いをするために、以下を書いておきます。 整理はされていませんが。 サイトの構成 苦労した、してる所 嬉しかった所 これからやりたいこと 以下は当サイトのコンテンツです。 「動物はあなたのごはんじゃない」ジェネレータ http://betahikaru.com/notfood/ 「よく使うハンドサイン」ジェネレータ http://betahikaru.com/handsign/ 現在の
AngularJSを利用したのなら、絶対にKarmaとか Protractorを活用すべきです。ちゅうか、活用しなさい。と言いたいです。システムを保守フェーズに安定的にメンテナンスするならそう考えるのがふつうになるべき。 (※Protractorについては、こちらの記事がとても参考になります) 例によって「Mastering web application development with AngularJS」を読んで書かれていたポイントを読んだ感想をこちらにまとめてますが、 2章のテスト解説部分に下記の文章があります。 There is a quote saying that writing code without a Version Control system (VCS) is like skydiving without a parachute. Today one would
Homebrewの拡張でGUIのアプリケーションインストールにも対応 caskに存在しないアプリケーションでも設定ファイルを作成することでインストール可能 Brewfileと合わせる事で自動で任意アプリケーションのインストールが可能 インストール可能アプリケーションの表示
一つの関数内で容量の大きなファイルを読み込み加工する処理を連続して行っていたらメモリが足りなくなった。 ARC ではスコープを外れ(て参照カウンタがゼロになっ)たオブジェクトは、すぐに破棄されると思っていたのでしばらくハマった。 問題のソース(ARC使用) ローカルでもWebでも何でもいいけど、ファイルから無視できない程度の容量のデータの読み込みを繰り返す処理。 - (IBAction)buttonDownWithArc:(id)sender { NSString* path = @".../bigdata.img"; for (int i = 0; i < 10000; i++) { NSData* data = [NSData dataWithContentsOfFile:path]; [NSThread sleepForTimeInterval:0.5]; data = nil; }
事象 Ubuntu を日本語を選択してインストールすると、ホームディレクトリ以下に日本語で「デスクトップ」だの「ダウンロード」だの日本語のディレクトリができて鬱陶しい事この上ない。 解消法 以下のコマンドで出てくるダイアログの指示に従えば、英語に変更できる。 ただし、すでにそれらのディレクトリを使用していると、英語のディレクトリは作られるが日本語ディレクトリも残ってしまうので、自分で始末する必要がある。 特に、「デスクトップ」はその特性上(常に「そこ」にあって使用中)なので、再起動してからでないと消せない(と思う)。 変更による問題 英語に変更した後、起動時に /usr/bin/blueman-applet がエラーを起こす。これは /home/user/.gconf/apps/blueman/transfer/%gconf.xml の中に "/home/user/公開" という記述が残っ
"/etc/environment"に書かれてるらしい これ毎度毎度編集するより.bash_profileにこれ書いておくのが一番楽そう aliasだからその他のオプション効かなくなるけど多分いらないだろ 必要になったらエスケープして呼び出せばいいし利便性考えるとこれでいいかな .bash_profile
チームでコーディング規約を徹底する方法としてXcodeに整形させる方法があると思うのでメモ。 Uncrustifyを使う Objective-Cのコード整形をするツールの一つとしてUncrustifyがある。Xcodeから実行するプラグインとしてBBUncrustifyPluginがあるのでこちらから利用する。BBUncrustifyPlugin 2.0.2ではuncrustify 0.60が同梱されている。 BBUncrustifyPlugin 2.0 インストール https://github.com/benoitsan/BBUncrustifyPlugin-Xcode/releases からダウンロード UncrustifyPlugin.xcplugin を ~/Library/Application Support/Developer/Shared/Xcode/Plug-ins に
SSH認証キーをGitLabに登録・設定手順 覚書 をアップしたので、今回は、SourceTreeの設定手順をまとめたいと思います。 色々と情報が多かったので、自分用のメモになります。 こちらの記事で、随時更新していきたいと思います。 設定条件 Gitサーバが既に用意している(ホスティングサービスではなく自分で構築したもの) Winで設定 SourceTree設定 windows版 以下よりSourceTreeのインストーラをダウンロードして実行します。 SourceTree公式サイト Gitコマンドをインストール インストール後、SourceTreeを起動しセットアップウィザードが立ち上がります。 最初に gitコマンドのインストール方法を設定します。 SourceTreeと一緒にGitをインストールする場合は、一番上の「システム全体ではなく、SourceTree単独で使うためだけの内蔵
#課題 突然キャンペーンとかの高トラフィックが来る!とか言われると色々困ることはあるものの、今のご時世クラウドだからスペック上げときゃなんとかなるでしょ。ってとりあえずCPUとかメモリあげて見たものの、キャンペーンが始まったら意外と早くブラウザからつながらない!!とか言われたりする。 CPUもメモリもそんなに負荷は特に高くもない。調べてみたらTIME_WAITが大量にあった。 #とりあえず何とかしたい ####TIME_WAIT数をコマンドで確認 $ netstat -anp|grep TIME_WAIT __(snip)__ tcp 0 0 192.168.1.1:80 192.97.67.192:56305 TIME_WAIT - tcp 0 0 192.168.1.1:80 192.63.64.145:65274 TIME_WAIT - tcp 0 0 192.168.1.1:80
ウェブアプリ、とくに滞在時間が長いSNSやゲームだと、なんかいろいろあって裏側で大量のデータを初期化しないといけないケースがよくある。 そういうときに誤魔化し方を考えてたりする。 保存先 localStorage IndexedDb WebSQL(deprecated) ネイティブ側のSQLite(ガワアプリ) 事前に初期化したいデータ マスターデータの類 月1で更新されるぐらいのやつ 更新頻度化が低く、かつ頻繁にアクセスするデータ たとえばショップのアイテム一覧とか UI関連の画像 汎用ボタンの画像とか、絶対に読み込むことがわかってる画像にprefetchかけておく 初期化したくないデータ 更新頻度が高いソーシャル関連 タイムラインとか 基本的に同期でとるけど、こういう場面の初期化でユーザーの操作はブロックしないでいいようにする ユーザーに閲覧させたくないデータ ゲームならモンスターのス
codesign -s gdb-cert /usr/local/Cellar/gdb/7.7/bin/gdb sudo killall taskgated なお、署名の手順などの詳細は次のページを参照してください。 BuildingOnDarwin - GDB Wiki Installing GDB on OS X Mavericks - Neil Traft あとは、このgdbに、パスを通したり、エイリアスやリンクを張ればよいでしょう。 alias ggdb=/usr/local/Cellar/gdb/7.7/bin/gdb Goでgdbデバッグできるようにする こちらもbrewを用いました。 brew install go そして、環境変数GOROOTをセットしておきます。これは設定ファイルに書いてもよいでしょう。 export GOROOT=/usr/local/Cellar/go/
5. How to profile your MySQL? ● dstat -apr ● 他のサーバーと比べる時に便利 ● SET GLOBAL する時は一緒に流しておく ● 定常値的なものを把握するのに ● カーネルによっては -r 使えない ● iostat -mx ● await, svctm あたり ● I/O なのかそれ以外なのか…というあたり ● top -iH -p `pidof mysqld` ● 見るのは State くらい ● "f"=> "J"(CPU 番号 ), "P"(SWAP) 6. How to profile your MySQL? ● perf top -p `pidof mysqld` ● 役に立ったことはないけど紳士のたしなみ ● pt-ioprofile --cell sizes --run-time 10 ● どのファイルに対して I/O したか見
Big Sky :: プログラミング言語の作り方 Big Sky :: プログラミング言語の作り方(2) Big Sky :: プログラミング言語の作り方(4) Big Sky :: プログラミング言語の作り方(5) もうちょっと続けてみようと思います。 Big Sky :: プログラミング言語の作り方 github の trending を見てたら面白い物を見つけた。 orangeduck/BuildYourOwnLisp - GitHub Learn C and build your own pr... http://mattn.kaoriya.net/software/build_your_own_programming_language.htm Big Sky :: プログラミング言語の作り方(2) この前の記事がなかなか人気があったので、続きを書いてみます。 Big Sky ::
僕はSymfony+Doctrineプロジェクトで機能テストを作る際、 LiipFunctionalTestBundle を使ってテスト環境だけSQLiteで動作するようにしているのですが、ある時から途中でDBがロックしてしまい、テストスイートがパスしなくなってしまいました。 SQLSTATE[HY000]: General error: 5 database table is locked 原因を探っていくうちに、以下のテストケースに問題がある事が分かりました。 <?php $query = $entityRepository->createHogeQuery(); // Doctrine\ORM\Query $iterator = $query->iterate(); $iterator->rewind(); $this->assertSame($expectedEntity, $it
今回のテーマは時間管理です。時間だけは誰しもが共通にもっている唯一のリソースです。怠惰に過ごしても、みっちり過ごしても1日が24時間なのは変わりません。そこでより単位時間あたりの生産性を高めるためにも効率的な時間管理に取り組んでみましょう。 選定基準 Pomodoro対応 時間間理系で最も有名なテクニックになりつつあるのがPomodoroです。25分間作業するのが基本ですが、大事なのはまずタスクを25分単位に分けるという作業です。それにより大枠での作業見積もりが可能になり、重たいものは3Pomodoroかかるなど可視化されるようになります。 小休止は5分程度と言われていますが、それでも2時間で3Pomodoroくらいが良いところといった実感があります。そう考えると1日集中しきったとしても、11Pomodoroがベストで、実際には9〜10Pomodoroくらいしかできません。ミーティングが合
ある日、 id:cero-t がJJUGの重鎮たちと話している中で、とある宿題をもらいましたとさ。 「Java8のラムダの中で例外が発生したら、どうなるんだろう?」 こんにちは、アキバです。 もう皆さんはJava8を使ってみましたか? とりあえずインストールしてみた人! ・・はーい (おまえか という冗談はさておき、 今回は、id:cero-t に代わって私が冒頭のお題を調べてみました。 1. SerialStreamで動かしたラムダで例外が発生したら まずは、小手調べにシングルスレッドの場合を見てみましょう。 検査例外が発生するようなコードをラムダに書いてみると、コンパイルエラーになります。 こんなコードです。 try (BufferedWriter writer = Files.newBufferedWriter(Paths.get(W_FILENAME))) { // writer.
DigitalOceanといえばSSD VPSなのに1時間当たり約1円弱で使える格安VPSとして有名です。 有名な紹介記事はこちら。 徳丸浩の雑記帳: 試験環境用VPSとして1時間1円から使えるDigitalOceanが安くて便利 VagrantとSSDなVPS(Digital Ocean)で1時間1円の使い捨て高速サーバ環境を構築する - Glide Note DigitalOceanのことはrebuildfm#2で知って興味持ちました。 Rebuild: 2: Rails, Redis, VPS (Kenn Ejima) それまでVPSといえばさくらVPSがメジャーだと思ってましたが、 調べてみるとDigitalOceanがなんとも良さ気です。 今回はDigitalOceanの登録から簡単な使い方を説明します。 こちらのリンクから登録していただくと、私に少しバックがあるようです。 Di
オブジェクトにさまざまな動きを実現できるCSS3アニメーション「Create Special Effects with Magic CSS3 Animations」 デザインに多彩な表現を加えることが可能となるCSS3。もはや欠かすことのできない存在として確立していますが、今回紹介するのはオブジェクトにさまざまな動きを実現できるCSS3アニメーション「Create Special Effects with Magic CSS3 Animations」です。 CSS3を利用し1つのオブジェクトに与えられる、いろいろな動きのバリエーションがまとめられています。 詳しくは以下 回転、出現、スライド、フェードアウト、その他、さまざまな種類の動きがカテゴリに分けられており、動きも反映させることで、デザインに個性を演出することができそう。またどの動きも洗練された印象が感じられるので、クリエイティブな雰
最近、RSpecやCapybaraでRailsのテストを書くたびに、ちょっとした書き方がわからずググったり、冗長なテストを書くことに結構悩んでいました。ということで、思い切ってRSpec再入門として、『Everyday Rails - RSpecによるRailsテスト入門』を読みました! Rails/Rubyはどんどんバージョンアップするので、紙媒体の書籍だと情報が古くなってしまっている場合があります。この書籍は著者や訳者さんが、しっかりとアップデートを続けてくれているので、最新の入門チュートリアルとしてRSpecの実践的な使い方を習得できる書籍です。 またこの本を読むにあたってRSpecのドキュメントやWebサイトを読みなおしたので、合わせてRSpec初学者向けのマトメを作りました! 🎉 RSpec 3初心者向けの資料まとめRSpec 3初心者向けの資料まとめ[Ruby] ちなみにその
Perlで use や require を使ってモジュールを読み込む場合、通常は @INC 配列に入っているパスのどこかに、所定の形式で配置されている必要があります。 具体的には、Foo::Bar というモジュールがあり、@INC 配列に /opt/lib/site_perl/ といったパス文字列があってそれが対象となる場合、/opt/lib/site_perl/Foo/Bar.pm というファイルとして存在している必要があります。 最終的には @INC をいじる必要があるのですが、現在のファイルの場所などを元にして、それをどう抽象化・簡略化するか、様々な手法があるようなのでまとめてみました。 ##モジュールが存在して読み込めるかどうかをワンライナーで確認する 例えば LWP::UserAgent モジュールが存在するかどうかを確認したい場合には以下のようにします。 存在すれば何も表示され
Dropboxは先週iOS、Android向けに発表した写真管理アプリCarouselを発表しました。Carouselの開発にあたり、がまずチャレンジすべき目標は、デバイスのローカルに保存された写真を閲覧するギャラリーアプリにパフォーマンスが劣らないようにすること。その取り組みを同社のエンジニアブログで紹介しています。ポイントとしては、ユーザのアクションを邪魔しないこと。 1) 解決すべき問題点 クラウドに保存された写真を閲覧するCarouselにおいて、まず問題になったのは、 写真タブにおいて、ユーザのアクションをサーバと同期させる際に、HTTPSリクエストが待機した状態が起きる。例えば、写真をシェアする場合、このような画面になる。写真を削除する場合も同様。ネットワークの接続がよくなければ、後でユーザは再トライする必要がでる。 Dropboxにアップしてない写真、つまりデバイスのローカル
昨日は 葉桜js でした。 今回は客層からかテストとセキュリティの話が多かった。t_wada, malaさんの影響は大きい。 #葉桜JS— Yosuke FURUKAWA (@yosuke_furukawa) April 14, 2014 僕のLT t_wadaさんが来るということでテストっぽい話をしたくて、Docker Node Testerの話をしました。 Node.js v0.12 に関して このブログで Node.js v0.12で変わることについて色々と紹介してきました。NANの話もそうですし、traicing apiとかsync child_processもそうです。 Node.js v0.12では他にもコアモジュールに色々とバグ修正やエンハンスが加わっています。 コアチームが互換性に配慮しているとはいえ、影響を受けてしまい、自分のモジュールが動かなくなることは考えられます。
iHover CSS3ベースの新しいhoverエフェクトが実装できる「iHover」 マウスオーバーした際のホバーエフェクトをCSS3アニメーションを使ってリッチにすることが出来ます。 コードは必要な物を読み込んだ後、マークアップにclass属性でアニメーションタイプを指定すればOKみたい ちょっと派手目で、乱用は控えたいところですが、お手軽でいいですね。 関連エントリ CSS3のグラデーションがより簡単に使えるようになるjQueryプラグイン「Rainbow.js」 FontAwsomeのアイコンフォントをCSS3でアニメーションさせる「Font Awesome Animation」 WEBデザイナ必携のHTML5&CSS3のコードジェネレータ「HTML5 & CSS3 Tools and Tutorials」
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました 正規表現を使えないプログラマはいないと思いますが、その実力を100%引き出しているかと言われると自信はないのではないでしょうか。実際、機能は多いので一筋縄ではいきません。さらにプログラミング言語ごとの方言もあって極めるのは困難です。 そんな正規表現を使いこなそうと思ったら練習あるのみです。そのためにはテスト環境が必要です。RegExrがまさにそのためのソフトウェアになります。 RegExrの使い方 RegExrはJavaScript向けの正規表現が出力できるようです。実際のテキストを見ながらテストできるので、どこで失敗しているか、または別な文字で試した時に不具合がないかなどがチェックできます。 RegExrはnode/JavaScript製のオープンソース・ソフトウェア(MIT L
はじめに こんにちは植木和樹です。本日は社内フォワードプロキシサーバー構築手順の備忘録になります。 お客様と案件のやりとりをする際にクラスメソッドではredmineやBacklogなどチケット管理システムを使うことが多いです。redmineを使う際には弊社グローバルIPからしか繋がらないようIP制限をかけています。redmine以外にも開発中・検証中のサーバー環境にはIP制限をかけてクローリングや第三者からの閲覧を防ぐことも多いです。 社内LANからこのredmineにコメントを書き込む際には問題ないのですが、出先や在宅勤務中はコメントが書き込めず困ってしまいます。そのためクラスメソッドにはVPN環境が用意され、社内LANに接続して作業ができるようになっています。 しかしVPN経由でIP制限のかかったサイトに繋ぐには下記のような手順をふむ必要があります。 Macbookに入っているVMwa
はじめに GitLab.org / GitLab recipes | GitLab に従って新規にインストールした GitLab 6.7 でプロジェクトを作成した後、画面の指示に従って git clone や add, commit, そして push を行ってから、再度 GitLab にて Project にアクセスしたところ、500 Internal Server Error が発生しました。 エラーログでぐぐってみたところ、同じ問題で困っている人も数名いるようでした。日本語の情報は見つからなかったので、ここに記録しておきます。 エラーログ Started GET "/yu-umezawa/gitlabtest" for 202.225.5.123 at 2014-04-15 02:24:33 +0000 Processing by ProjectsController#show as
development: adapter: 'sqlite3' database: './list.db' require 'active_record' require 'yaml' class List < ActiveRecord::Base end config = YAML.load_file('./config/db.yml') p config ActiveRecord::Base.establish_connection config['development'] ActiveRecord::Schema.define do unless ActiveRecord::Base.connection.tables.include? 'lists' create_table :lists do |table| table.column :user_name, :string t
$ prove -lr t/lib/Hoge.t .. ok All tests successful. Files=1, Tests=1, 0 wallclock secs ( 0.03 usr 0.01 sys + 0.02 cusr 0.01 csys = 0.07 CPU) Result: PASS $ prove -lr ./.git/logs/refs/heads/fugafuga.t .. Number found where operator expected at ./.git/logs/refs/heads/fugafuga.t line 1, near (途中略) Execution of ./.git/refs/heads/fugafuga.t aborted due to compilation errors. ./.git/refs/heads/fugafuga
archiveのときだけ実行したい aggregateをtargetに追加する。(Editor > Add Target) 追加したaggregateのBuild Phasesにrun scriptを追加する schemaを変更してarchive時だけ、targetを実行する もともと、crashlyitcsのrun scriptをarchiveのときだけ実行したかったので、上のようにaggregateを作成して実装したけど、ダメだった。。理由は、build settingを見てcrashlyitcsのrun scriptは実行されるから。 buildsettingに関係なく実行するscriptで、archiveのときだけ実行したいならいいかもしれない configurationがReleaseの時だけ実行したい これでも毎回buildすることはなくなる releaseConfig="Re
概要 最近は「TortoiseGit」,「EGit」よりも勢いがある 履歴がグラフィカルで見やすい リベース、チェリーピックがGUIで簡単にできる pullしなくてもGUI上でリモートに更新があったことがわかる! 自動フェッチ機能 git-flowにも対応! ver1.4からWindowsも日本語対応!! 導入 本体ダウンロード http://www.sourcetreeapp.com/ git.exeが見つからないといわれたので、前にインストールした場所を指定 もしなければ、同じウィンドウから導入可能 Mercurial.exeが見つからないといわれたので、「使用しない」にした ネーム、Eメール(GitHubで使用しているもの)を入力 チェックボックスは全部チェック グローバル設定の変更を許す 改行の自動処理 ライセンスに同意する OpenSSLを使うにチェック GitHubで登録したS
SharedPreferencesを使った、カンタンな KVS をデータソースに持つモデルを作った時、そのモデルをテストしようとすると、どうしても SharedPreferencesをモックしたくなります。 SharedPreferencesは、その取得方法によって、2 種類のものが存在します。 1 つは、Context#getSharedPreferences(String, int)で、自分で好きに名前を決めたSharedPreferences。もう一つは、PreferenceManager#getDefaultSharedPreferences(Context)で、システムによって生成されたSharedPreferencesです。 SharedPreferencesそのものはインタフェースですので、SharedPreferencesのインスタンスをモックするのであれば、以下のようにモ
VirtualBoxはとても便利なんですが、USBメモリなんかをゲストOSに認識させるのが割と苦手ですね。さくっと認識できないときの覚書を残しておきます。 ちなみに詳しいことはよくわかってないです。 ホスト側でドライバがないUSB機器でもゲスト側で認識させることがホントはできるので調整しましょう。 やることはチェックポイントは3つです。 Extension Packをいれとけ! vboxusersグループに追加しておけ!(linux) USBデバイスフィルターに追加しておけ! 準備 Extension Packをインストールしておきましょう。 https://www.virtualbox.org/wiki/Downloads USB2.0なんかが使えるようになるみたいです。 LinuxでUSB機器の一覧がでない USB機器の一覧がでないときは、virtualboxを起動するユーザがvbox
はじめに 私の職場では、Excelがテンプレートになっていて、 文章作成時はWordではなくExcelである事が多いです。 また、正式版として提出する場合は、PDFに変換するようにとも言われます。 どのバージョンからか忘れましたが、ExcelにPDF出力する機能が増え ExcelのPDF変換は楽になったものの、大量のExcelがあると開いては出力という、手間がかかります。 そんな時に作った、ツールをサンプルコードとします。 ExcelのPDF出力 以下で作った、jsにExcelファイルをドラッグ&ドロップすると Excelと同じフォルダに、ファイル名(拡張子含む)+「.pdf」という PDFファイルが作成されます。 ただし、Excelのページ設定がちゃんとされていないと、 文字が削れたりするので注意してください。 また、PDFの出力ファイルはダイアログなしで上書きされます。 // パラメー
module.exports = function (grunt) { grunt.initConfig({ connect: { local: { options: { keepalive: true, port: 1234 } } } }); grunt.loadNpmTasks('grunt-contrib-connect'); }; 質疑応答 起動したと思ったらすぐ終了する keepaliveの設定を。 あるいはgrunt connect:local:keepaliveで起動しても動き続けた。 起動したは良いけど止まらないんですが Ctrl+Cで終了。(⌘じゃないよ。) 起動したままだとコンソールが使えないんですが もっとタブ開けば? ある程度慣れてるなら、&付き起動とか^Zからのbgとか。 静的ファイルだけじゃなくてスクリプトを実行したい 出来ないと思う。 node-expres
追記 追記(1)Failed: Incorrect syntax near 'output' (a reserved keyword) のエラー こちらが参考になった esper の予約語のようですな はじめに タイトル通り sensu server を検証するあたりログをチラチラ見れたら嬉しいよね しかもせっかくログまでも JSON な sensu は fluentd との相性は抜群!ということで試した 準備 細かい設定については割愛させて頂きます... 既に稼働している sensu server に td-agent と norikra をインストールする 以前に作った Dockerfile を一部流用 fluentd.conf(td-agent.conf) 今回は td-agent を利用したので td-agent.conf は以下のような感じでシンプルに。 <source> typ
RubyでHTMLやXMLをパースする構文解析ツールの定番は、Nokogiriです。スクレイピングする際の必需品で、なくてはならないモジュールの1つです。ただ色々なことが出来る反面、どこから取りかかれば良いのか解り難い部分もあります。自習を兼ねて、Nokogiri概要と主要な機能を紹介してみます。 Nokogiriとは何か? ReademeによるとNokogiriとは、「HTMLとXMLとSAXとXSLTとReaderのパーサー」で、特徴としては、XPathとCSS3セレクター経由で探索する機能を持つことのようです。他にもHTMLやXMLのビルダーの機能を持っていますが、HTMLとXMLのパーサー(構文解析器)と覚えておけばよいでしょう。 Nokogiriのクラス構造 Nokogiriは、なかなか巨大なライブラリです。10以上のモジュールと70以上のクラスで構成されていて、yardでダイア
iPhoneアプリはApp Storeにリリースされていますが、Android版でもIRKitを使いたいじゃないですか!ということで公式サイトで提供されているJavascriptを改修してスマートフォンのブラウザから操作しやすいようにしてみました。 こちらで紹介されているHTMLについて、index.htmlの中のbootstrap.jsを最新版としてスマートフォン対応にするためにmeta タグでviewportを指定しました。 こちらが適用前の状態でAndroidのChromeブラウザから開いたところです。 こちらが適用後です。 こちらのプリセットを自分で修正すればカンタンに自分のリモコンが出来上がります。Javacriptで操作できるというのは非常にありがたいです。応用の幅が一気に広がります。 HTML、CSS、Javascriptのセットは以下のGitHubにあります。Dropbox
「Stormboard」はブレインストーミングなど、アイデア出しや複数人での情報共有に便利なウェブサービスです。ブレインストーミングではホワイトボードに書いたり付箋を貼ったりしますが、それをオンライン上で行えます。様々なテンプレートが用意されているので、登録してすぐに活用できるかと思います。 以下に使ってみた様子を載せておきます。まずStormboardへアクセスしましょう。無料登録後、「Storm」を作成することができます。様々なテンプレートが用意されているので、目的に応じて最適なものを選びましょう。 このように各項目にコメントを寄せたり、スクリーンショットやフリーハンドで描いた図を載せたりすることもできます。それぞれに対してコメントをつけられるので、いろんなアイデアにつっこむことが可能。 チャットルームも常備されているので、みんなで話し合いたいことがあれば、その場でコミュニケーションを
vim-ref-jvmis 使い方 " Vundle の場合 " vimrc に追記&再読込して :BundleInstall Bundle 'ebc-2in2crc/vim-ref-jvmis' " NeoBundle の場合 " vimrc に追記&再読込して :NeoBundleInstall NeoBundle 'ebc-2in2crc/vim-ref-jvmis' Jvmis というコマンドが勝手に定義されるので、調べたいオペコードの上にカーソルを置いて :Jvmis を実行すると ref.vim インタフェースでリファレンスを閲覧出来ます。 リファレンスは The Java Virtual Machine Instruction Set から引いて来るので環境によっては一瞬もたつきますが、デフォルトでキャッシュを有効にしているので2回目以降は素早く引くことが出来ます *1 これ
どうもご無沙汰してます自称 sensu 芸人のかっぱです。 はじめに sensu の Mutators を試せていなかったのでまずはドキュメントを見よう見真似で試す Mutators とは? ざっくり言うと... 監視イベントをハンドラに渡す前にイベントデータに手を加える処理 イベントデータに手を加える必要がなければ特に設定は不要 試す ドキュメントの Handlers と Mutators を参考に試してみるよです。 Handlers こちら に従って /etc/sensu/handlers 以下にスクリプトを設置する。 #!/usr/bin/env ruby require 'rubygems' require 'json' # Read event data event = JSON.parse(STDIN.read, :symbolize_names => true) # Writ
これまでVagrantやChefをつかってインフラのコード化を勉強してきましたが、今回はさらに一歩進めてServerspecを使ったインフラのテストと、『test-kitchen』を使ったTDDにチャレンしてみました! 慣れてくるとtest-kitchenのコマンドで設定をやり直し => インフラのテストがソースコードを書くような感覚で、インフラを構築できるのがすごく心地良かったです。 ようやくですが、localのvagrantと『AWS EC2』、『Digital Ocean』に対応しました。コマンドひとつでChefを適用したり、Serverspecでリモートの環境をテストできます! (05-02 08:35) Rubyサーバ・デプロイまでのチェックリストを追加 🐝 今回のソースコードVagrant/Digital Ocean/AWS EC2上にnginx/MySQL/rbenv/Ru
JavaとJavaScriptには、Unicode escape sequenceというものがある。どちらも同じ文法で、\uに続いて4文字の16進数文字を指定することで、Unicode Code Pointを指定できる。あたかも、Unicode Code Pointを記述したかのように振る舞う。 ところで、JavaとJavaScriptは、このUnicodeエスケープシーケンスの使い方が異なる。例えば、行終端文字\u000Aを、以下のように書く。 // これは\u000Aコメント これは、JavaScriptで解釈すると、以下のようになる。 // これは\u000Aコメント 以下は、Javaによる解釈である。 // これは コメント Javaでは、Unicodeエスケープシーケンスが、実際に行終端文字として扱われてしまう。したがって、行終端文字以降が一行コメントからはみ出してしまう。 これ
大学で計算機科学を教える著者が、「パズルを解くことで、アルゴリズム的思考を鍛える」というコンセプトに基づいて、古今東西150の「アルゴリズム的」な数学パズルを収録。優れたアルゴリズム設計戦略と分析テクニックを通して、アルゴリズム的思考と柔軟な発想を育てます。また、近年では、入社試験にパズル的な難問を出す企業も増えており、その対策としても役立つ一冊です。 質問形式の序文 謝辞 パズル一覧 チュートリアルのパズル 本編のパズル 墓碑銘パズル 第1章 チュートリアル 一般的なアルゴリズム設計戦略 魔方陣(Magic Square) nクイーン問題(The n-Queens Problem) 有名人の問題(Celebrity Problem) 数当てゲーム(Number Guessing)(別名20の扉(Twenty Questions)) トロミノ・パズル(Tromino Puzzle) アナグ
JavaScriptのオススメのユーティリティ(配列・文字列・日付)ライブラリを紹介します。Read less
超チューニング祭開催のお知らせ ニコニコ超会議3内で開催予定のチューニングイベント! ニコニコ動画のスマートフォンサイトをHTML/CSS/JavaScriptでフロントエンドチューニングしよう! (表示速度のみの判定ではありません!ユーザー投票あり!) ニコニコ動画史上最速の座を賭けた白熱の2日間・・・ 豪華賞品と名誉は誰の手に!? 協賛 株式会社ドワンゴ 公式ページ Twitter / Facebook 参加スターエンジニア 君はドワンゴの精鋭達に勝つことができるか!? 戀塚昭彦 @koizuka / 世界で最初のニコ厨 江添亮 @EzoeRyou / C++標準化委員会エキスパートメンバー 山田将輝 @masarakki / Ruby界隈で著名なエンジニア 水島宏太 @kmizu / 日本Scalaユーザーズグループ 代表 日時・会場 日にち:2014年4月26日(土)・27日
Gitはバージョン管理システムで、このブログの読者も既に使っている人がいるでしょう。バージョン管理といえば以前はSubversionがスタンダードでしたが、最近ではGitを採用するケースが増えてきました。GitはSubversionに比べるとコマンドや機能が多く、敷居が高いと感じている人もいると思います。 そんなGitの解説本は何冊か出版されており、そのほとんどは機能や仕様を網羅的に解説したリファレンス本です。ここで紹介する「Git 逆引き入門」は『できることを軸』に解説されているため、Gitの具体的な使い方ややりたいことがすぐに分かる本です。 本書は帯にもあるように「コマンドライン」「GUI」のどちらにも対応しているのも大きな特徴で、プログラマー、エンジニアの人以外にも、デザイナー、ディレクターなどウェブ制作に携わる幅広い職種の人を対象としています。はじめてGitに触れる人でも、Gitの
しかし、開発推進セクションとしてリーダーを中心に「基本的には必須ですが、相談には乗ります」と伝えてきました。もちろん、こちらとしても妥協することはありますが、基本は書いてもらうように言い続けたことは良かったと思います。今ではテストケースは2,000ケース以上となり、毎日jenkinsからもallTestの結果が送られてくるようになったのですから。そんなやりとりをしていく中で、こんなFAQも生まれました。 Q:巨大なメソッドで1行だけ修正したのですが、そのメソッド内をすべてテストしないといけないの? A:基本はテストしてください。 ただしトラブル対応など、どうしてもすぐにリリースしないといけない場合はその限りではありません。 結果的にこのようなFAQは、開発メンバーにJUnitの導入を受け入れてもらうために必要なことだったと思います。やはり、開発スピードを重視するチームにとって、やることが多
先日 Docker Meetup Tokyo に参加しました。 会場の収容人数100人をはるかに超える400人以上が登録しており、注目度の高さを感じました。 会場でスタッフの @mopemope からいろいろ教えていただき、docker 単体ではなく、クラスタを構成するなどして実用的な分散システムを組むこと、そのために docker をはじめ有用な機能をまとめている CoreOS 全体を把握していくことの重要性を把握しました。 同じように感じている方もいらっしゃるかと思い、CoreOS のドキュメント「Using CoreOS」を翻訳しました。 オリジナル: https://coreos.com/using-coreos/ CoreOS について日本語での解説としては @mopemope の CoreOS 入門 が詳しいのでそちらも併せてご参照いただくとよいと思います。 なお CoreOS
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました JavaScriptが色々な場面で使われています。Webブラウザ上で動くだけの言語だったのがサーバサイド、スマートフォンアプリ、さらにはnodeを使ったコンソールアプリにもなっています。JavaScriptを習得することでコーディングの幅が広がりそうです。 そんなJavaScriptをさらに活用しようと考えているのがDuktapeです。C/C++のコード中にJavaScriptのコードを埋め込んで実行できるようにするソフトウェアです。 Duktapeの使い方 例えば下のようなコードがあります。 /* test.c */ #include "duktape.h" int main(int argc, char *argv[]) { duk_context *ctx = duk_cre
import com.jcabi.http.Request; import com.jcabi.http.request.ApacheRequest; public class Main { public static void main(String[] args) { String html = new ApacheRequest("https://www.google.com") .uri().path("/users").queryParam("id", 333).back() .method(Request.GET) .header(HttpHeaders.ACCEPT, MediaType.TEXT_HTML) .fetch() .as(RestResponse.class) .assertStatus(HttpURLConnection.HTTP_OK) .body(); }
uberVU/grid GitHub ドラッグ&ドロップで移動できるグリッドレイアウト作成jqueryプラグイン「GridList」。 次のように複雑なレイアウトが組めつつ、ドラッグ&ドロップでの移動も可能にすることができます。 Windows8のようなパネル型のレイアウトに類似のWEBサイトが作れそうです。 関連エントリ ダイナミックなタイル状レイアウトを実現できるjQueryプラグイン「Freewall」 ドラッグ&ドロップで再編成できるPinterest風レイアウト作成プラグイン「jQuery.Shapeshift」 エレメントを45度傾けてカッコよくレイアウトできる「jquery.diamonds.js」 レスポンシブでPinterest風レイアウトのギャラリーが作れるjQueryプラグイン「Galereya」
E-Commerce Web Data ExtractionExtracting protected, high value web data is hard and only getting harder. Import.io delivers the data that others can't get to. Get a demo
はじめに こんにちは! 前回のUITableViewのデータを検索するから引き続き、UITableViewについて書きます。 今回はテーブルビューセルのカスタマイズについて覚えましょう。 この記事は4月からiOSアプリエンジニアとして働く方、転向する方を対象としています。 「iOSアプリケーションを1度でも作ったことがある」、もしくは「入門書を1冊読んだことがある」方には特に参考になるような記事になると思います。 マジックナンバーは極力使わない 毎回小ネタを挟んでいるので、今回は マジックナンバー について書きます。 マジックナンバーとは マジックナンバー (プログラム) プログラムにおけるマジックナンバー(魔法数字)とは、何らかの識別子として用いられるプログラム中に書かれた具体的な数値(「10」「123」など、数字によって記述される値)である。 そのプログラムの製作者は数値の意図を把握し
Interested in the Go programming language? This tutorial will show you how to write a simple command-line task tracker using Go. It is assumed you have completed the tour and have a working Go environment already installed. Our program will work similarly to todo.txt. When done, we will be able to add, list, and complete tasks from the command line using the command “todo”: $ todo ls [1] [2014-3-2
私が PowerShell をやる理由、好きな理由、今自分が 果たす必要があること。それは Windows におけるデプロイであり、私が PowerShell に興味を持っているすべてです。 Linux 大好きです。Deploy や Automation のトレンドは Linux 界隈を見ると楽しいです。 Windows 超好きです。C# 大好きです。クラウド最高です。なので 謎社 の サーバーは Amazon Web Service 上の Windows Server 2012 です。*1 そんなWindows におけるデプロイに PowerShell をどう使って楽にするのかを毎日考えています。 でも、Windows で デプロイ? どうやるの? といわれると実例も乏しく手法も普及していない残念な現実。なので、今回はそれを考えて見ます。 目次 目次 Windows での Deploy
IRKitに向けてリモコンのボタンを押すだけで簡単に赤外線信号をキャプチャできるiPhoneアプリがありました。ただしXcode等の開発環境が必要になります。 @makoto_kw さんがIRKit iOS SDKでキャプチャアプリを作ってくださっています。詳細はこちらのブログをご確認ください。 公開されているソースをXcodeでビルドする必要があります。シミュレーターだとこんな感じになります。 環境準備とXcodeのビルド方法 環境準備としてXcodeとCocoaPodsが必要になります。XcodeはMac App Storeからインストール出来ます。 CocoaPodsは以下のサイトを参考にインストールしてください。既にrubyが入ってれば $ sudo gem install cocoapods とするだけです。
UITextViewを編集可能にしてなにやら文章をいれたりすると、以外と行間が狭かったりして、結構圧迫感のある見た目になってしまう。そういうときは、以下のようにして、改行幅を変える。 NSLayoutManagerDelegateというプロトコルを使い、 lineSpacingAfterGlyphAtIndexというdelegateメソッドを実装する。 @interface TSViewController () <NSLayoutManagerDelegate> @property (strong, nonatomic) IBOutlet UITextView *textView; @end @implementation TSViewController - (void)viewDidLoad { [super viewDidLoad]; self.textView.text = @"
idobata.ioがついに公式リリースされましたね!idobata.ioは気軽にBotやHookが設定できます。そして、有名なBotフレームワークとしてHubotがありますね。idobataではHubotのadapterが用意されているので、簡単にHubotとお話することができます。この記事では、HubotをHerokuにデプロイして、idobata.ioにJOINさせる方法を書いていきます。 nodeとnpmのインストール まずは、node.jsとnpmをインストールします。 $ brew install node で入ります。Homebrewでは同時にnpmもインストールしてくれます。 hubotの準備 idobata/hubot-idobata · GitHub の通りにやってあげれば良いです。まず、coffee-scriptとhubotをインストールします。 $ npm inst
みんなー! マニュアルはそれを使いなれていない人のために書こう! いいかー、お姉さんとの約束だ!(お前いくつだよ) ということを研究室のアドレスに届いていたメールを見て思いました。 いや、あそこの人たちは頭が良すぎるからね、まあ……。 さて、今週末は正規表現をどれか1個の言語でしっかりやりたいな、と思って、 http://docs.ruby-lang.org/ja/1.9.3/doc/spec=2fregexp.html を読んでました。 いや、正直二時間くらいで理解していけるわー、と思っていたけど、スクロールバーの幅が想像の半分くらいしかなかった。甘かった。 昨日は疲れてぼーっとしていたし(まだ張り切りすぎたりでペースがつかめてない)、 今週はもういいかな? と思いましたが、そういうのは、研究室で研究が上手くいかなくなる代表的パターンその1ですので、院生として死亡フラグを踏んできたことに
Androidアプリを開発する上でこれはダメなUX、UIをGoogleのエンジニアが動画で詳しく紹介してくれます。 iPhoneアプリ開発にも通ずるところがあるので必見です。 要点をまとめておきます。 読み込み中のダイアログを頻繁に出さない 何度も出るとうざいし、読み込みをキャンセルできないと端末を叩き付けたくなります。 解決策としては、アクションバーの下にプログレスバーを出したり、コンテンツの表示部分だけにロード中のマークなどを出すようにする。 ボタンが小さすぎる 縦、横48dp以上が望ましいです。 ダイアログの「はい」「いいえ」ボタンの位置を標準に合わせてね フィードバックがない ボタンや選択できるエリアをタッチしたら何らかのフィードバックを。 選択部分の色を変える。pressとfocusedの状態を用意するとなお良いです。音もありかな。 UIデザインはこだわりすぎない やりすぎず、あ
知り合いのデザイナーさんから「iOS&Androidアプリをデザインする時に何か知っておくべき事ってありますか?」と質問を受けたので、思い浮かんだ事をずらっと書いてみました。他にも何かありましたらコメントお願いします!ツッコミも歓迎(´ロ`) #iOS ##モバイルアプリデザインの原則とiOS 量が少し多いが、公式のiOSヒューマンインターフェイス ガイドラインは必読。(※ダウンロードに時間かかるので注意) iOSだけに限らず、モバイルアプリのデザインをするにあたって重要な事がまとまっている。 ###載っていること ヒューマンインターフェイスの原則 アプリケーション設計戦略 iOSテクノロジーの使用に関するガイドライン 標準で用意されている各UI要素(タブやツールバー等)の使い方 ##マルチスクリーン対応 どのような違いがあるのかを把握する 画面密度(ppi)や画面サイズなど 参考:iPh
1. ZabbixのAPIを使って 運用を楽しくする話 Masahito Zembutsu @zembutsu Technology Evangelist , Creationline, Inc. Apr 12, 2014 , Tokyo, ZABBIX-JP 6th Meetup #zabbix_jp Serf the Liberator – 始まりの物語 × 2. 今日の概要 1. ZABBIX API 超入門 ➡ シェルで始める ZABBIX API ( 言語知識不要 ) • 今日、今すぐ始めましょう♪ まずは ZABBIX API を、このスライドが終わるこ とには「すぐ使える!」事を目指しましょう。 API というと難しい印象がありますが、ZABBIX の API は、シェルスクリプトでコマンドを実行 するだけで、簡単に使えます。プログラムの専 門的な知識が無くても大丈夫です
数多のアプリが氾濫する Android アプリですが、過去に開発の経験がある方・現在進行形で開発中の方……数多くいらっしゃるかと思います。 そんな方に是非、ご覧頂きたいのが Google が Youtube にて公開している ANDROID DESING in ACTION UX アンチパターンです。ご存じの通りアンチパターンとは「べからず集」のことで「これは駄目だからこうして欲しい」といったことがわかりやすく紹介されています。 動画の内容としては、ダイアログの表示方法、ボタンの位置、タッチフィードバック……etc 開発者の方はそのまま知識を吸収することができますし、開発者ではない方も「へー」と思えること間違いなしです。
はじめに タイトル通り 昨日の第3回 コンテナ型仮想化の情報交換会での @y_uuk1 さんの話を聞いてやってみた 参考 第3回 コンテナ型仮想化の情報交換会@大阪 (コンテナ型VMや関連するカーネル等の技術が話題の勉強会)に参加した Increase max image depth to 127 #2897 dotcloud/docker aufs 準備 以下のような感じで 127 行以上の Dockerfile を生成した。 #!/bin/sh for i in `seq 1 1 127` do echo "RUN ls" >> Dockerfile done exit 0 ひたすら ls するだけの Dockerfile を作成。 実行 asciinema asciinema で docker build を録画してみたw 結果 おお、確かに 127 parents とか出てるし何か
はじめに 以前の記事で、X-CSRFトークンをAjax送信することについて言及しました。 それについての説明の追加と、Jasmineによるユニットテストを実行した場合に エラーにならない方法について記述します。 X-CSRFトークンについてと、Jasmineによるユニットテストの実行について 1.X-CSRFトークンについて RailsでPOST送信を行う場合、CSRFトークンが必要になります。 デフォルトでは、application.html.erbに以下のタグがある場合、metaタグ内に CSRFトークンが付与されるようです。 application.html.erb <%= csrf_meta_tags %> このため、以前の記事ではCSRFトークンを付与するため AngularJSに以下のように記述し、metaタグからCSRFトークンを取得し $httpProviderのheade
「自分のPCのiTunesデータを他のPCで共有できたらいいのに」そう思ったことありませんか。原則的に、1つのiPhoneには1つのiTunesとPCしか同期できません。 別のPCにiPhoneを繋げ、iTunesを開こうとすると、 というアラートが表示され、「消去して同期」を押すと、データが全て上書きされてしまいます。 意外に知られていないのですが、実は家の中などの同じネットワーク内であれば、1つのiTunesのメディアライブラリを別のPCで共有することができるのです。それが、”ホームシェアリング”という機能です。 iPhoneは取扱説明書を見なくても簡単に操作することができ、そこも大きな魅力のひとつですが、実は更に便利に使い倒すための隠れた設定や、テクニックが沢山あります。そんな「iPhoneのテクニック」をわかりやすくご紹介するコーナーです。 ホームシェアリングとは? 複数のPCでひ
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました どこまで読まれているかは大事ですね! Webサイトの人気はPVで見られることが多いです。そのため単純にファーストビューが表示されたかどうかが重要になっており、実際のコンテンツが読まれたかがどうかは軽視されがちです。しかし本来であればそちらのが大事でしょう。 そこで使ってみたいのがScroll Depthです。スクロールを感知してAnalyticsに記録してくれるライブラリです。 Scroll Depthの使い方 jQueryプラグインなので、そのまま実行するだけです。 <script src="jquery.scrolldepth.min.js"></script> <script> $(function() { $.scrollDepth(); }); </script> こうす
いろいろな文字列連結のコードを書いた人がいたのでまとめておきますね。 主に変態さん。 とりあえず、基準として、メモリ確保したStringBuilder版 public static String stringBuilderJoinMem(){ StringBuilder s = new StringBuilder(9100).append("["); for(int i = 0; i < strarray.length; ++i){ if(i != 0){ s.append("],["); } s.append(strarray[i]); } s.append("]"); return s.toString(); } 1037ms ということで、まずはbackpaper0さん。比較的常人のコード。 https://gist.github.com/backpaper0/10273558 pu
はじめに 前日の Docker Meetup Tokyo #2 に続いて第3回 コンテナ型仮想化の情報交換会@大阪に参加したのでメモ。 参加された方の記事 第3回 コンテナ型仮想化の情報交換会@大阪 (コンテナ型VMや関連するカーネル等の技術が話題の 勉強会)に参加した 「VagrantユーザのためのDocker入門」を発表してきました 発表 聴講メモ 昨日はメモるのが異常に調子悪かった... 各種スライド 気づいたら随時追記していく。 Linuxコンテナ入門 @ten_forward さん VagrantユーザのためのDocker入門 @shin1x1 さん VagrantユーザのためのDocker入門 from Masashi Shinbara コンテナ事例 CircleCI, Cucumber-Chef @sawanoboly さん コンテナ事例 CircleCI, Cucumber
Mac OSXを使っている限り切っても切れないのがターミナルです。プログラマであれば常時立ち上げておくのが当たり前になっているでしょう。ブラウザ、テキストエディタそしてターミナルさえあればプログラマは生活できてしまいます(後IDEかな)。 そんなターミナル用のテーマとしてTumblr Terminal Themeを紹介します。名前の通り、配色がTumblr風になります。 Tumblr Terminal Themeの使い方 インストールは簡単で、Tumblr.terminalを実行するだけです。 変更後はこんな感じに。 対応しているカラーリングは次のようになります。 まさにTumblrっぽいですね。 Tumblrが好きであのダッシュボードを良く見ている人であればきっと分かってもらえるでしょう。個人的にはこれはありで、今後はこの配色にしようと思っています。しかもこれはTumblrの中の人が作っ
php の 755ファイルが面倒 php って便利なんだけど、至る所に、apacheユーザでファイルを作りまくられては困る。 755のパーミッションで、apacheユーザのファイルがあるのは/var/ww以下なら良いんだけど 自分のpublic_html内部にapacheユーザーの権限ファイルがあるとあれこれ面倒が多いよね。 phpがはき出したファイルを触るのにsetid・・つまり 、adduser takuya _www; chmod -R g+w path/to/web; chmod a+s path/to/web; umask 0002 とかしておく必要があるのがいやだし・・・ だから、cgiモードでtakuyaユーザーのファイルを作ってほしい。 先に状況を確認 OSXでcgi-binは以下のようにマッピングされている takuya@rena:~/Sites/upload$ cat
一通り入力すると、以下のようになります。[Save]ボタンで保存します。 続いて、あらかじめELBが用意されていればレイヤーに登録しましょう(必須ではないので、飛ばしても構いません)。メニューから[Network]を選択し、[Elastic Load Balancer]でELB(今回はDockerELB)を選択し[Save]で保存します。 これで準備OKです!画面右上の[Instances]をクリックし、インスタンス追加画面に切り替えます。 4. インスタンスの作成とDockerコンテナのデプロイ [Add an Instance]ボタンでインスタンス作成画面を表示します。 [Size]を好みのインスタンスタイプに設定し、あとはスタックおよびレイヤーの初期設定から引っ張ってくれるので、変更の必要がないか確認しましょう。問題なければ、[Add Instance]でインスタンスが作成されます。
OSX にPythonをeggインストールして使おう easy_install もいいけど、いい加減pipかなと。 sudo でシステム空間に突っ込むのが一番手っ取り早いとは思うんだけど、システム空間は汚したくないよね。 HOMEディレクトリに作る mkdir ~/.py/ export PYTHONPATH=~/.py #仮置き場 virtualenv を用意 easy_install --install-dir ~/.py virtualenv mkdir -p ~/.python/virtualenv/ #実際に入れる場所 ~/.py/virtualenv ~/.python/virtualenv/ rm -rf ~/.py echo "export PYTHONPATH=~/.python/virtualenv" >> ~/.bashrc echo "export PATH=~/.
レンタルサーバなら「さくらのレンタルサーバ」! 月額換算でわずか129円、缶ジュース1本分のお値段で使える格安プランから、ビジネスにも使える多機能&大容量プランまで、 用途と予算に合わせてプランを選べます。 さらにマルチドメイン対応でメールアドレスも無制限。無料ウイルススキャンや無料電話サポートもあるので安心して ご利用いただける共用レンタルサーバサービスです。
これは potatotips第6回め で発表した この話 のまとめと後書きです。 Storyboardいいですよね! Storyboardを使うことで、 画面と画面が疎結合になる 簡単な画面遷移ならノンコーディングで実現できてソースコードを汚さない といったメリットがあります。 Storyboard登場以前だと、次の画面に遷移させるだけでも #import "NextViewController.h" NextViewController *nextViewController = [NextViewController new]; [self.navigationController pushViewController:nextViewController animated:YES]; といったコーディングをし、遷移元のViewControlelrは遷移先のViewController
2. 自己紹介 名前 乃村 翼 facebook Tsubasa Nomura で検索してください お仕事 Windows Serverのサポート 英語とMCPの勉強中。。。 サポート終了! 2 3. 目次 1. FreeBSD jailとは 2. FreeBSD jailとは(もう少し詳しく) 3. FreeBSD jailの構築(基本編) 4. FreeBSD jailの構築(ezjail編) 5. FreeBSD jail Tips 6. 【番外編】Hyper-Vでの仮想環境構築Tips 3 4. FreeBSD jailとは コンテナ型仮想化のひとつ Linux界隈で盛り上がっているLXCと類似。 各jailはホストマシン上で動く仮想機械であり、独自のファイ ルシステムやプロセス空間、ユーザーアカウントを持つ。 (by Wikipedia:h
はじめに 前回構築したAngularJS+Ruby on Railsのアプリに 今回はCRUDの内のDelete機能を実装し、ウィスキーの情報を削除する機能を作成しました。 一覧画面(index.html.erb)のDeleteリンクをクリックすると AngularJSにより非同期でサーバを呼び出し、削除を行います。 以下に、実装する上でのポイントとなる箇所を記述していきます。 尚、ソースコードは以下のGitHubに置いてあるので、全ソースを見たい方は参考にしてください。 AngularjsWhiskyList 実装について 1.一覧画面 一覧画面は前回と同じです。 index.html.erb <h1>Whiskies#index</h1> <%= link_to "new whisky", new_whisky_path, :class => 'btn btn-mini' %> <ta
最近まったくRSSをチェックしなくなったのも、全部こいつのせいです。Reeder for Macが無くなったせいです。 Reeder for Macの便利さ、快適さ、高速さを享受できないようでは、RSSなんてチェックする意味などないと巡回をやめていたのですが、先日、ついにReeder 2 for Macのベータテストが始まりました。 いつ完成するのかは分かりませんが、完成した暁には2,000円だろうが2,350円だろうが買う所存でございます。 しかし、Reeder for Macを使うならある程度のショートカットキーを把握してないと、最大にその便利さを味わうことなんて出来やしません。 というわけで、現在確認できるReeder 2 for Macのショートカットキーを全てリストアップしてみました!
はじめに 前回構築したAngularJS+Ruby on Railsのアプリに 今回はCRUDの内のCreate機能を実装し、ウィスキーの情報を登録する画面を作成しました。 画面遷移としては ・一覧画面(index.html.erb)よりリンクをクリックし、登録画面(new.html.erb)に遷移する ・登録画面でボタンを押下すると、AngularJSにより非同期でサーバを呼び出し、登録する ・登録後、AngularJSにより一覧画面に遷移する というようにしました。 以下に、実装する上でのポイントとなる箇所を記述していきます。 尚、ソースコードは以下のGitHubに置いてあるので、全ソースを見たい方は参考にしてください。 AngularjsWhiskyList 実装について 1.ルーティング routes.rbに以下のように記述し、whiskyモデルに対するCRUDのルーティングを定義
はじめに 前回構築したAngularJS+Ruby on Railsのアプリに、今回はCRUDの内のRead機能を実装し DBに登録してあるウィスキーの一覧を表示する画面を作成しました。 以下に、実装する上でのポイントとなる箇所を記述していきます。 尚、ソースコードは以下のGitHubに置いてあるので、全ソースを見たい方は参考にしてください。 AngularjsWhiskyList 実装について 1.application.js application.jsに、AngularJSのスクリプトを読み込むよう、以下の定義を追加します。 (ベタに参照するjsを書いているので、本当はフォルダを指定した方がイイと思いますが・・・) //= require ngapp/app/lib/angular/angular.min.js //= require ngapp/app/lib/angular/an
t.hondaです。AngularJSとRailsの勉強がてら、CRUD機能を持つサンプルプログラムを作ってみました。 ウィスキーの名前と価格を、登録して表示するアプリです。 先ずは開発するための環境を構築する手順を、メモ書き程度に書いておきます。 「開発するため」なので、AugularJS側、及びRails側でユニットテストも実行できる環境を整えたいと思います。 また、ViewにはTwitter Bootstrapを使用します。 では、手順です。 プロジェクト作成 0.(rails new などでRailsアプリケーションを作成) 1.Gemfileに以下を追加 gem 'therubyracer' gem 'execjs' gem "twitter-bootstrap-rails" gem "less-rails" group :development,:test do gem 'rs
長らくこの時を待ち望んでいた人も多いのではないでしょうか。Mac用RSSリーダーとして期待のアプリ「Reeder 2 for Mac」のパブリックベータ版が公開されています(ダウンロード、9to5Mac)。 Reederは、もともとGoogleリーダーの専用クライアントとして人気を集めていたアプリでしたが、Googleリーダー終了の影響を受けてMac版は公開停止中です。iOS版が復活したのに続き、Mac版も新バージョン復活が期待できそうですね。 さっそくインストールして使ってみました。 各種RSSサービスとの同期に対応 Reeder 2 for Macは、iOS版と同様に、各種RSSリーダーサービスと同期することが可能。現在のところ「Feedbin」、「Feedly」、「Feed Wrangler」、「Fever」をサポート。同期しないローカルRSSも使えるようです。 メイン画面は見慣れた
MOONGIFTはオープンソース・ソフトウェアを紹介するブログです。2021年07月16日で更新停止しました Webサイトの基本と言えばCMSです。最近では何でもWordPressで行ってしまおうと考える風潮もありますが、やはりサイトの特性によって合ったものを選択すべきでしょう。特に何かあった時に内部を探る必要がある場合、既に見知ったフレームワークを使っているかどうかは重要です。 今回はPHP製のCMS、RedKite CMSを紹介します。フレームワークにSymfony2、デザインにBootstrapを採用し、カスタマイズ性も保持されたCMSになっています。 RedKite CMSの使い方 RedKite CMSの特徴の一つにWYSIWYGがあります。ユーザの見ている画面そのままに修正を行える機能です。 左側に出ているアイコンをクリックするとメニューが表示されます。 以下は紹介動画です。
家庭内のエネルギー効率を上げれば、お財布にも環境にもプラスになります。でも、どこからはじめたら良いのでしょうか? 上のピラミッド(マズローの欲求階層ピラミッドのような図)では、すべての省エネ対策がもっとも簡単でお金のかからない選択肢から順にまとめられています。 省エネピラミッドの内訳 1段目の層(理解) 『Power of One Portal』(省エネ支援ツール)の使用 行動計画を立てる オンラインリソースを活用する 節電ヒントとツールを調べる 現場の解析 新たな建築設計を調べる 2段目の層(ローコスト対策/ノーコスト対策) 温度設定/プログラム可能なサーモスタットの調整 温水設定の調整 ゲーム機器等の電源オフ設定 コンピューターの電源設定 ポータブル機器のプラグを抜く 定期的なメンテナンス 3段目の層(照明の見直し) 電球型蛍光灯(CFL) 照明器具の見直し LED照明の検討 4段目の
Perl › Mojolicious 次にルーティングについてもう少し詳しく解説します。ルーティングとはURLと処理の対応の記述のことです。 簡単なルーティングについては、これまでも使ってきました。 get '/' => sub { ... }; get '/info' => sub { ... }; get '/date/:date' => sub { ... }; ここでは、ルーティングについてもう少し詳しく解説します。 プレースホルダー 最初にプレースホルダーについて解説します。 通常のプレースホルダー 先頭にコロンをつけると、その部分はパラメーターとして取得できることは説明しました。 get '/date/:date' => sub { my $self = shift; my $date = $self->param('date'); }; Mojoliciousでは、これをプレ
Thank you for being patient. We are doing some work on the site and will be back shortly.
8年間使っていたテーマ「vicuna」にサヨナラを告げた後、色々と見てまわってようやく出会えたこのテーマ。レスポンシブ対応のフリーテーマ「Pinboard」です。 “Pinboard”を選んだ理由まずは、ぱっと見てデザインがシンプルで、可愛らし過ぎもなく、派手すぎることもなく、クール過ぎることもなく、記事の邪魔をしなさそうだったこと。 それから、レスポンシブ対応デザインだったこと。以前のvicunaテーマでは、スマートフォン用にWP touchというプラグインを使ってスマホ対応していましたがカテゴリが表示されなかったり、サイトの雰囲気がまったく別だったりで、あまり満足していませんでした。 なので、もしテーマを変えるのであれば絶対レスポンシブ対応テーマにしようと思っていたので、その点もこの「Pinboard」はクリア。 レイアウトデザインやフォントも管理画面からカスタマイズでき、ウイジェット
はじめに Docker Meetup Tokyo #2 で LT させて頂いたのでメモ。 スライド 頂いた感想としては @koemu さんの下記のツイートが全てを...(略 かっぱさん、本当にあのネタで一年戦ってる!!! #dockerjp— Yuichiro SAITO (@koemu) April 11, 2014 もうそろそろ次の仕込みを考えなければ... 感想 Docker や LXC 等のコンテナ仮想化技術周りのことが改めて勉強になった次第 「差分こそ Docker のキモ」 本物のコンテナを例に挙げて「荷物をコンテナに放り込むことで運び方を選ばなくなった」という説明が一番しっくりきた やっぱ Namespace / Cgroups は真剣に向き合うべき Dockerfile の一行、一行にコンテナ ID というのは初めて知った Docker はインフラだけでなくその上で稼働する
Reeder 2 for Macの共有書式がやっぱりアレ Reeder 2のMac版が発売されました。 Reeder 2 カテゴリ: News 販売元: Silvio Rizzi(サイズ: 6.2 MB) 全てのバージョンの評価: (0 件の評価) 例によってTwitterなどへの共有の書式が素っ気なくて、改善したいところです。 そこで、共有時の書式を自分好みにするパッチを作ってみました。 「エントリのタイトル」→「”エントリのタイトル | ブログ名”」といった風に、パイプで区切ってブログ名を後ろに付け、全体をダブルコーテーションで括るようにします。 普段ならカーソルを先頭に持っていくところですが、今回はお手上げ。「Ctrl+A」でカーソルを先頭に飛ばせますので、それを使うといいんじゃないでしょうか。(続きは[Read More]から) 免責 自己責任でお使いください。 SPONSORED
ブログ「HomeMade Modern」に、1枚の合板から多用途デスクを作ったという投稿がありました。上の動画を見たら、今すぐ購入したいと思うことでしょう。残念ながらそれは叶いませんが、真似して作ることならできます! 狭いアパートでは「机」の用途はさまざまです。仕事をするためだけの場所ではありません。工作スペースになることもあれば、1人用のディナーテーブル、お化粧台、さらには未開封のDMや請求書を置いておくところにもなります。そこで、あらゆる用途に適した小さくてシンプルな机、フリップデスクを作ってみました。 この作業には多くの労力と時間が必要ですし、工具の使い方も知っておく必要があります。しかし手先が器用であれば、もしくは知り合いで器用な人がいれば、色々な使い方ができてスペースも節約できる素晴らしいデスクが手に入るでしょう。週末を使ってできる作業なのも魅力的です。 以下リンク先のHomeM
WordPressのデザインは「テーマ」で変える WordPressでブログを作る際に外見(=デザイン)の基盤となるのが、各種テンプレートファイルで構成される「テーマ」。 ↑ WordPressをインストールすると、最初から入っているテーマがあります。サーバーの「wp-content/themes/」の下にテーマフォルダがあり、2014年4月時点だと「twenty-thirteen」や「twenty-fourteen」といったテーマが最初から入ってます。 ↑ 気に入った有料テーマや無料テーマを見つけた時や、自作テーマを作った時は、新しいテーマフォルダの中にWordPressテーマが入り、それを管理画面で有効化することでブログのデザインを変更できます。 ↑ 後日、別のテーマを気に入って導入したくなったら、新テーマをインストールし、有効化すれば切り替わります。 以前のテーマフォルダをそのまま残
iOS ではすでに定番となった RSS リーダーアプリ、Reeder 2 の OSX 版のベータテストが始まっています。 もともと Reeder は高速な Google Reader 対応アプリとしてこの OSX 版から始まり、iOS 版があとで開発されたのですが、Google Reader 終了に伴いアップデートには膨大な作業がかかるため、これまで iOS 版だけが先にリリースされていました。 しかし長く待った甲斐はあります。OSX 版 Reeder 2 は非常に高速で、自然に使えるアプリとしてすでにこれまで使っていた Readkit を置き換えられそうな仕上がりとなっています。### 瞬速でフィードを閲覧できる自然な速さ まず Reeder を立ち上げると、主だった RSS サービスを登録するアカウントパネルが登場します。 Feedly を使っている人が多いと思いますが、実は私は Fe
Docker Meetup Tokyo #2 に行ってきました。 Docker Meetup Tokyo #2 - connpass #1は行ってないですしDocker自体、全然触れてないですが先着入れたので。 メインの発表は3本。 @mainyaaさんの「今からでも間に合うDocker基礎+Docker 0.9概要+Docker 0.10概要 」 Docker基礎+docker0.9 0.10概要 from Kazuyuki Mori Dockerの基礎から説明してくれていたので、Noobな自分でも大体の概要はわかった感じ。 VagrantでVM立てるのと違うんだなーってのがわかっただけでも大収穫。 AUFSでレイヤー構造になってるってのが理解しておくのが大事。省メモリだしディスクも取らない差分だけだから。 途中のデモで使ったこのサービスが最高な感じあった。 ターミナルの録画 ascii
本連載では「Active Directoryとは?」「なぜ、Active Directoryを使う必要があるのか?」などをあらためて考察し、より効果的に運用するための方法を探っていく。 連載目次 Active Directoryを使う理由とは? 「十年一昔」とはよく使われる言葉だが、ITの世界における10年は十分過ぎるくらいに昔を指す。 2000年にリリースされたWindows 2000 Serverの目玉機能として登場した「Active Directory」は、現在までに多くの企業に導入されている。Windows Serverのアップグレードを繰り返しながら、10年以上経過しているところもあるのではないだろうか。初期導入からかなりの年月が経過したActive Directoryでは、最初に設計した担当者や運用管理者が入れ替わり、当初の設計意図とはかけ離れたものになっている可能性もある。
Fluent Dashboardって? Fluent Dashboardは、Fluentdで集計したデータをグラフやテーブルで表示できるGoogle Spreadsheet。fluent-plugin-https-jsonを使ってイベントログを送ると、以下のようにリアルタイムにデータを表示してくれる。 使い方 詳しい使い方はREADMEにある通りで、Spreadsheetをコピーして公開設定等をポチポチするだけで準備完了。3分もかからない。あとはfluent-plugin-https-jsonのログ送信先URLとしてFluent SpreadsheetのエンドポイントURLを指定すれば動き始める。 集計ログの表示向け 任意のFluentdログを受け取ってグラフやテーブルを描けるけど、大量のログを直接受け取ることはできない。集計後のログを3秒に1回ほどの割合で受け取って表示する、といった使い
はじめに 2014年4月11日(金)に開催されたDocker Meetup Tokyo #2で、「Docker + serverspecで作る configspec CI」というタイトルでLTしてきました。 この内容について、少し詳細に落とし込んだのがこの記事です。拙いところも改善するべきところもいっぱいあるんですが、とりあえず動いたよ、というところで。 イベント中のtweetはTogetterにまとめました。 Docker Meetup Tokyo #2 #dockerjp - Togetterまとめ やりたいこと 結果としてやりたいこと、出来上がるものがこちらの図になります。 configspecとserverspecをRakefileとしてまとめておき、githubのリポジトリに配置しておきます。そのリポジトリにgit pushされると、webhookによってJenkinsに通知が入
RubyからPSDファイルを操作することができるライブラリとして話題になった「PSD.rb」がバージョンアップして様々な新機能が追加されるとともに(リリースノート)、同機能をネイティブで書きなおしたバージョン「PSD Native」が公開されています(LayerValut、GitHub)。 PSD Nativeは、PSD.rbの中でスピードに影響する部分をCのソースコードで書きなおしたもの。使い勝手は同じですが、処理速度が大幅に向上しているため、プロダクション環境で使用する場合に適しているでしょう。 インストール方法 GitHubに書かれていますが、Gemfileに「gem 'psd_native'」を追加して、 $ bundle bundle経由で使うか、 $ gem install psd_native gemで直接インストールして使用することができます。 使用方法 PSD.rbの場合
数多くあるメッセージアプリ。その使用の前提となる電話回線やインターネットへの接続が不要のアプリ「FireChat」が登場し、注目を集めている。これを使えば近くにいるユーザーと無線でやり取りができるので、通信費も節約でき、セキュリティーが確保されるというメリットもある。 このサービスのベースにあるのが、AppleがiOS 7に搭載した無線接続機能。同機能を搭載する端末同士がネットを介さずにデータの送受信ができるというものだ。例えば、地下鉄や無人島、森の中など電波の届かないところでも10メートルほどの範囲内であれば、メッセージや写真のやり取りが出来る。 ■ユーザーが増えるほどネットワーク拡大 FireChatでは、このユーザー同士が直接つながることができる技術を活用して、サーバーなしのネットワークを構成する。アプリの「Nearby」という機能では、近くのユーザーを探し出しメッセージをやり取りす
Appleより、開発環境Xcodeの最新版「Xcode 5.1.1」がリリースされています。 Xcode カテゴリ: 開発ツール 価格: 無料 このバージョンには、 OS X 10.9 Mavericks、OS X 10.8 Mountain Lion、iOS 7.1用のSDKが含まれていて、以下の不具合の修正/安定性向上のための改善が行われています。 Fixes an issue that would reposition the Interface Builder canvas unexpectedly. Improves the reliability of Quick Look within the debugger. Fixes an issue where test cases would report as failed when in fact they had passe
科学者、エンジニア、学生、プログラマなどにオススメの多機能計算機アプリPCalcの最新版「PCalc 4 for Mac」がリリースされています。 PCalc カテゴリ: ユーティリティ 価格: ¥1,000 PCalc 4 for Macは、iOS版PCalcの最新コードを元に完全に書きなおされており、モダンな64bitCocoaアプリに生まれ変わっているということ。複数行表示オプションや、計算履歴を表示することができる「Ticker Tape」オプションの追加、ユーザー関数のiCloud経由のMac/iOSデバイス間での同期機能など、様々な新機能も追加されています。 計算機アプリマニアの方はチェックしてみてください。ちなみにiOS版はこちら。 PCalc Lite - The Best Free Calculator カテゴリ: ユーティリティ 価格: 無料 PCalc - The B
例のごとく、『第5回 #potatotips』『第6回 #potatotips』について @hirama2 さんの記事を読んでキャッチアップさせていただきました。 第5回 #potatotips で発表された12個のiOSのtipsをまとめる - Think Big Act Local 第6回はUIEvolution開催! #potatotips で発表されたiOSのtipsまとめ - Think Big Act Local で、ちまちまメモとして勉強になったことをツイートしてたのですが、わりとふぁぼられ率が高いので、ニーズあるかもしれないのでこちらにまとめておきます。 『え!?Storyboard使ってるのにそんな画面遷移のしかたしてるのですか!?』 ViewControllerを疎結合にしておくための、値の受け渡し方の提案、およびそれを実現するための TKRIntent の話 by @
米Googleは4月9日、プログラミング言語「Dart SDK 1.3」を公開した。サーバーサイドでの処理性能を大きく改善したという。 DartはWebアプリケーション構築などの用途に向けたプログラミング言語。JavaScriptを置き換えるものとして開発されており、クラスベースのオブジェクト指向、高いセキュリティなどを特徴とする。2011年秋にオープンソースプロジェクトとして発表、BSDライセンスで公開されている。クライアントサイドとサーバーサイドの両方で利用でき、クライアントサイド向けではJavaScriptへのコンパイルが可能。コンパイルされたコードはGoogle ChromeやFirefox、Internet Explorer、Opera、Safariといった主要なWebブラウザで動作する。また、Dartコードをそのまま実行できるChromeベースのWebブラウザ「Dartium」
Web フォントがレンダリングされるタイミングを得ようとすると、そのやんちゃな挙動を制御するため人類は今まで下記のような対策をしてきた。 Web FontsをHTML Canvasで使う canvas要素にwebフォントを確実に描画する方法 typekit/webfontloader 無知な僕は同様の事象にハマり、一通り調べた後、下記の答えにたどり着いた。 canvas に WebFont を指定するとき、一回どこかの DOM で使う WebFont をレンダリングしておかないと死に至る現象を発見したので皆様もお気を付けください — ダメレオン (@damele0n) April 10, 2014 要するに DOM もしくは canvas 上で、そのフォントが指定されていて一度そのフォントがレンダリングされてからでないと canvas 上はレンダリングされない、ということだ。 (ちなみに
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く