Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。この本では、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...
##What is Preceptor? Today, there are a lot of testing frameworks out there, many of which are optimized for testing specific areas. A couple of these frameworks are: Mocha - The most popular unit-testing tool (according to NPM downloads), testing each individual unit/component of a system in isolation. Cucumber - A high-level acceptance testing tool that tests features through scenarios, giving p
スタートアップ界隈でのRuby on Rails利用率は割と高く感じる。 みんなが使っているから使う?それだけではないはず。なぜ使うのだろう。 railsの特徴を考える。 規約縛りの哲学 周辺gemのエコシステム webの進化への追従の速さ 規約縛りの哲学 Convention over Configurationてやつ。規約を決めて、それに沿えば、フレームワークに乗って素早く開発できるようになる。規約で縛ることでRailsに流れる哲学に従うことを強制化している。 外れると痛い目を見る。Railsに乗るということは電車に乗って簡単に遠くまで行けるということ。Railsから降りるということは電車からも降りるようなものだ。中途半端な理解で突き進むと線路からすぐに降りて歩くことになる。 スタートアップでRailsが採用される一番の理由は、 簡単に遠くまで行ける だと思う。ただ、そんなにうまい話は
zk-SNARKs are zero-knowledge succinct non-interactive arguments of knowledge that allow a prover to convince a verifier of a statement without revealing details. They work by converting a function and its inputs/outputs into a quadratic arithmetic program (QAP) represented as polynomials. This allows a verifier to efficiently check a proof generated by the prover using techniques like Lagrange int
Home Subscribe configureスクリプトとは何なのか 19 February 2015 おはこんばんちは!! 尾藤 a.k.a. BTO です。 みなさん Unix のパッケージをインストールする時、configureスクリプト実行しますよね。 なんかいっぱいいろんな事してるみたいで便利そうですよね。 でも実際は何をしてるんでしょうね。 configureスクリプトの出力見てますか? エラーが起きたときしか見てない事ないですか? 先日、よく使ってるんだけどよく知らないと思われる configure スクリプトの正体について、オトバンクで勉強会をやりました。 魔法の呪文 ./configure && make && make install よく打っているコマンドだと思いますが、これだけで解決します。 素晴らしいですね!! GNU Autotools configure
Home Subscribe configureスクリプトとは何なのか 19 February 2015 おはこんばんちは!! 尾藤 a.k.a. BTO です。 みなさん Unix のパッケージをインストールする時、configureスクリプト実行しますよね。 なんかいっぱいいろんな事してるみたいで便利そうですよね。 でも実際は何をしてるんでしょうね。 configureスクリプトの出力見てますか? エラーが起きたときしか見てない事ないですか? 先日、よく使ってるんだけどよく知らないと思われる configure スクリプトの正体について、オトバンクで勉強会をやりました。 魔法の呪文 ./configure && make && make install よく打っているコマンドだと思いますが、これだけで解決します。 素晴らしいですね!! GNU Autotools configure
関数の一覧が出るので実行するだけ。 関数一覧 cool-peco-filename-search find . -name 的なファイル名検索 cool-peco-ghq ghqコマンドを便利に cool-peco-git-checkout gitのブランチを選択してcheckoutできる cool-peco-git-log gitのログを選択してコミットIDを取得できる cool-peco-history ctrl+r的なコマンドの履歴 cool-peco-ps ps aux的なプロセスの絞り込み cool-peco-ssh ~/.ssh/config から接続先を絞り込む cool-peco-tmux-session tmuxのsessionを選択 基本的に選んだものはプロンプトに入る。選んだもので勝手に何か実行することはない。 alias bindkey '^r' cool-peco
特定のプロジェクトがあり、要件定義をし概要設計をする。 それがアーキテクトの仕事だと思われがちですが、大きな視点を持ち様々な課題を自らリードして解決していく立場としても絶好のポジションです。 このセッションでは、Mobage オープンプラットフォームの立ち上げから、 グローバルプラットフォーム展開、さらには mixi 社との共同プラットフォーム構築、 JavaScript SDK と認証技術の組み合わせによる新しい HTML5 プラットフォーム構築をアーキテクトという立場でリードし続けた立場から、技術選択のみならず実現したい事に対する俯瞰的な捉え方を、これまでの実例と共に紹介し、アーキテクトという役割について、お話します。Read less
ざっくり説明するとconsul-templateとは consulの様々なイベントを検知して 「テンプレート更新」 > 「任意のコマンド実行」 してくれるツールです。 今回実現したかったのは consul-kvsの変更をトリガーにしてほげほげする ことです。 最初はconsul-templateがどういう条件でイベント発火するのかよくわからなかったのですが、 ドキュメントをよく見たらその辺りの仕様が記載されていたのでメモしておきます。 どういう条件でwatchしているのか? 何の事はない話で、基本的には 読み込むテンプレート内で利用している値が変更されたかどうか を見ているようです。 素晴らしいですね。(※一部例外あり) 例: kvsのキーの値を監視する場合 以下のようなテンプレートで key を参照するだけでよいです。
http://connpass.com/event/11516/ とりあえず、見つかった限りのスライドは載せました。 発表者のみなさま、会場のGREEさん、ありがとうございましたm( )m 感想・まとめ 全体的に濃い話だった go-thumber使ってみたい 基本的にみんなImageMagick大好き というか、あまり他に優秀なインターフェースがないんだな、の印象 yoyaさんは神 自力でやりました、という話が中心で、こうやって楽にやってますという話はなかった 切り出しとか考えると、ASPつらいのかもね でもCloudinaryすごいよ? ImageHayabusaへの期待感すごい サムネイルマスタとgo-thumber https://speakerdeck.com/harukasan/use-thumbnail-master-with-go-thumber はるかさんさん pixivの
タイトルの通りです。Go は LL 的に使える、とはよく申しますが、そういう意識で使っていると REPL 的なことをしたいときに困りがちですよね。そこで作りました。gore。いい名前ですね。 motemen/gore · GitHub 以下のスクリーンキャストでだいたいの雰囲気をお察し下さい。 (スクリーンキャストは cho45/KeyCast を使って撮影しました) 特徴 gore の特徴は以下の通りです。 ラインエディタと履歴 複数行入力 パッケージのインポート、補完つき 式および文を実行可能 コード補完(nsf/gocode を利用) プリティプリント(k0kubun/pp か davecgh/go-spew がおすすめ) ドキュメントも引ける(godoc が必要) 以上のように、非常に便利なものになっております。むしろこの程度 REPL には当然あってほしい機能だとも言える。 イン
I have a thing for virtual machines that are implemented in the language (or a subset of the language) they are built to execute. If I were in the academia or just had a little bit more free time I would definitely start working on a JavaScript VM written in JavaScript. Actually this would not be a unique project for JavaScript because people from Université de Montréal kinda got there first with
■ devise をあまりオススメしない理由 いまいち使うのに気が乗らない理由はこんな感じ コントローラレイヤ以降に作用する gem は inspect が物凄くやりにくい、params ないし、必要なコンテキストを全て揃えた上で、コントローラを new して action を呼んで、みたいなこと、考えただけでもだるい テストを書いていたとしても、環境要因、特にセッションとクッキーに影響して挙動が変わる箇所が多すぎるので、全ての環境で正しく再現することが難しい フルスタックすぎることから Rails よりも devise にロックインされることの方が多くなって負債化する そもそも devise で便利になることの多くは、自分で作ってもわけない物が多い 使うからには、devise のコードも全部読むし、PR も投げるしという前提かつ、上のようなことを全て乗り越えるつもりなら僕は止めません!
We just added a new updated article that covers the same topic. You can find it here: Cookies vs Tokens: The definitive guide. Introduction There are basically two different ways of implementing server side authentication for apps with a frontend and an API: The most adopted one, is Cookie-Based Authentication (you can find an example here) that uses server side cookies to authenticate the user on
とくに、英語の decryption を日本語でなんと呼ぶかは人によってまちまちです。 復号 と呼んでいる人もいるのですが、復号は decode の訳語として使いたいので、このエントリでは 平文化 を使います。 公開鍵暗号とは 玄関の鍵は閉めるときも開けるときも同じ鍵を使います。金庫の鍵も普通はそうです。では 金庫に貴重品を詰めて送ってもらう時はどうでしょう? 金庫を閉める鍵と開ける鍵が同じだと、金庫にものを詰めてもらう相手にその鍵を渡す必要があります。その鍵を郵送で送ろうとしたら、途中で誰かに見られて複製を作られてしまうかもしれません。大事なものを送るために鍵をかけようとしているのに、同じ労力をかけて鍵を受け渡さなければいけないとなると本末転倒です。 これは、暗号通信でも同じことが言えます。 そこで、暗号通信において 閉めることしかできない鍵 と 開けることしかできない鍵 のペアを使うこ
Lee Byron, Facebook Immutable data unlocks powerful memoization techniques and prohibits accidental coupling via shared mutable state. It's no accident that these are the the same benefits provided by React. Persistent data structures provide the benefits of immutability while maintaining high performance reads and writes and present a familiar API. Learn about how persistent immutable data str
GoはPythonのようなLLと比べると実行速度は速いのですが、GCは特別速いわけではないので、相対的にGCがパフォーマンスに与える影響は大きくなります。 また、Java に比べると、一時オブジェクトなどのために頻繁にヒープアロケーションを行うとGCの停止時間が長くなりがちですが、一方でヒープアロケーションを避けたプログラミングがしやすい言語でもあります。 MySQL ドライバのような低レイヤーのライブラリを作る場合、アプリケーション側の性能要件を勝手に決めることができないので、現実的な範囲でアロケーションを減らす努力をするべきです。 ということで、前回の記事 で紹介したプレースホルダ置換を実装するにあたって経験した、アロケーションに気を使ったプログラミングについて、チューニングする手順やコード上のテクニックを紹介したいと思います。 1. まずは正しく動くものを作る go-sql-driv
Stetho A debug bridge for Android applications Stetho is a sophisticated debug bridge for Android applications. When enabled, developers have access to the Chrome Developer Tools feature natively part of the Chrome desktop browser. Developers can also choose to enable the optional dumpapp tool which offers a powerful command-line interface to application internals.
TL;DR Terraform + GitHub + CircleCI + Atlas を用いてAWSの操作を自動化した 各ツールの役割は下記のような感じ Terraform => インフラへの変更ツール GitHub => .tfファイルのバージョン管理 CircleCI => CI、Terraformをawsに対して実行 Atlas => インフラの状態を記録するterraform.tfstateの管理 インフラの継続的デリバリー - naoyaのはてなダイアリーにて、言及されていた範囲(Route53の変更、Chefの適用)をAWSの操作全体に拡大した 背景 今までの問題点 AWSの各種操作がブラウザからポチポチ業… 手作業なので誤操作に気づきにくい。事故りやすい インフラの実構成がバージョン管理出来ていない ちなみにRoute53に関してはroadworkerを用いてコードで管理済
はじめに 最近、新しい市場を求めてサービスを海外展開しようとしている会社が増えてきています。サービスを海外展開するにあたって気にしなければならないことがいくつかありますが、そのうちの一つに通信環境があります。私は先週までインドネシアにいましたがAkamai Technologiesによるとのインドネシアの通信速度は日本の6分の1程度で、実行環境に厳しい制約があります。またFacebookによると、Facebookアプリの通信量のうち85%は画像が占めているというデータがあります。そこで、画像の読み込みを改善すると通信量をグッと減らせると思い、画像読み込みライブラリの比較をしました。 Picasso vs Glide Androidでは、Squareが開発しているPicassoと、Bumptechが開発しているGlideというライブラリが有名で、使っている方も多いと思います。次のコードをご覧
Codelab: Webアプリケーションを書いてみよう - golang.jp ここを参考にGolangでWeb開発を初めた。 ./wiki.go:28: loadPage redeclared in this block となってしまうので、 「func loadPage」メソッドを1つだけ書くことに注意。 僕は間違って2つ目を作りそうになった。 あとは、 func loadPage(title string) *Page { から、 func loadPage(title string) (*Page, error) { にすること。 ちなみに、「os.Error」はなくなったせいか、 ./wiki.go:15: undefined: os.Errorが発生する。 Build error · Issue #1 · imbc/go_starter_package · GitHub を参考
HTML5 Canvasのフレームワーク「CreateJS」(基本的な使い方は入門サイトをご覧ください)について、2015年2月10日に開催されたCreateJS勉強会 (第5回) でライトニングトーク「CreateJSとNode.jsを使ってサーバーでCanvas要素を使おう」を発表しました。今回はそのスライドを元に、サーバーサイドでCreateJSを使うメリットを紹介します。 デモ 今回紹介するnode-easelを使ったデモです。スマホ画面にTwitterのアイコンが、PC画面には白い矩形が表示されています。スマホで選んだTwitterのユーザーのアイコンがPC側でアニメーションします。画像加工はサーバーサイドで動くCreateJSを使って行われています。 Section1. Node.jsとモジュールについて Node.jsはブラウザではなくサーバーサイドで動くJavaScript
動かしてみないことにはわからない 前編では、ディープラーニングの理論について説明するとともに、この分野がGoogleやFacebook等の先進IT企業がこぞって注力しようとしている今まさに熱い分野だということについて触れました。ディープラーニングが画期的な機械学習方法だということを強調して書いたつもりではありますが、いくら文章を読んでも、自分で手を動かさない限りその威力はなかなか実感しにくいかと思います。また、ただ手を動かして体験するとはいってもディープラーニングを自分で一からやるには高度な技術力を必要とするため、ごく一部の専門家でない限り、敷居が高いと思われるかもしれません。 筆者が学生の頃、機械学習はまだ手が届きにくく、機械学習を用いた研究を行うにも気の遠くなるような分量のスクリプトを書き、そしてパラメータチューニングに昼夜を問わず明け暮れる、そんな時代でした。このようにディープラーニ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く