タグ

2017年3月9日のブックマーク (24件)

  • Python の map とfor内包表記(リスト内包表記)は結局どっちが速い? - 私が歌川です

    tl;dr map が遅いとされるのは関数呼び出しの差があったため 現在では(list にこだわらなければ) map は (2017/3/10 11:00追記)イテレータを生成するときは 圧倒的に速い 総合的に見ると,式のみのときはfor内包表記が速く,関数のときは map が速い様子か 追記が増えてきたので,追記部分も読んでもらえるとよさそう. はじめに 「Pythonmap とfor内包表記(リスト内包表記)は結局どっちが速い?」というのは,Python 使いなら誰しもが抱く疑問かと思われる.そういう記事もいっぱいある. そこで,今回はバイトコードと実行時間を見ることで,どちらが速いのかを検証してみた. Python2.7.12 の場合 次のようなコードを用意した.どちらも0から9までの自然数の2乗のリストを返す. 初めに逆アセンブルされたバイトコードを出力し,次に timeit

    Python の map とfor内包表記(リスト内包表記)は結局どっちが速い? - 私が歌川です
  • Python: python-fire の CLI 自動生成を試す - CUBE SUGAR CONTAINER

    今回は Google が公開した python-fire というパッケージを試してみた。 python-fire では、クラスやモジュールを渡すことで、定義されている関数やメソッドを元に CLI を自動で生成してくれる。 ただし、一つ注意すべきなのは、できあがる CLI はそこまで親切な作りではない、という点だ。 実際にユーザに提供するような CLI を実装するときは、従来通り Click のようなフレームワークを使うことになるだろう。 では python-fire はどういったときに活躍するかというと、これは開発時のテストだと思う。 実装した内容をトライアンドエラーするための CLI という用途であれば python-fire は非常に強力なパッケージだと感じた。 今回使った環境は次の通り。 $ sw_vers ProductName: Mac OS X ProductVersion:

    Python: python-fire の CLI 自動生成を試す - CUBE SUGAR CONTAINER
  • python3 urllib でPOST/GET/PUT と JSON 送信 - それマグで!

    python3 の urllib を使う。 ひさしくpython2.7 だし全然不満がないのですが。python3.6 の文字列展開とjinja2 が便利そうだしそろそろ python3 使ってみようと思い立って、まずは基的なリクエストを投げるところから。 urllib.request で各種リクエストを作る urllib.request は 公式ドキュメントにすら Requests を使ったら?と書かれてたりする。 まぁ、そうなんだけど。py3から使い方も変わったしおさらいしておくことにする。 基的なリクエストの流れ import urllib,urllib.request url = 'https://t.co' req = urllib.request.Request(url=url) f = urllib.request.urlopen(req) print(f.read().

    python3 urllib でPOST/GET/PUT と JSON 送信 - それマグで!
  • (翻訳)毎秒10GBでArrowからpandasへ - Qiita

    始めに:pandasの作者であるWes McKinneyさんがPythonのデータツール関連でとても興味深いblogを書かれているので、翻訳して日のPyDataコミュニティに公開してもいいでしょうか、とお聞きしたところ、快諾をいただきましたので少しずつ訳して公開していこうと思っています。 (原文:http://wesmckinney.com/blog/high-perf-arrow-to-pandas/ ) 2016/12/27 このポストでは、汎用的なArrowの列指向のメモリを、pandasのオブジェクトに高速に変換できるようにするための最近のApache Arrowでの作業について述べます。 pandasのDataFrameオブジェクトを高速に構築する際の課題 pandasのDataFrameオブジェクトを高速に構築する際に困難なことの1つは、「ネイティブの」内部メモリ構造が辞書や

    (翻訳)毎秒10GBでArrowからpandasへ - Qiita
  • Java9のModule機能について

    こんにちは。飲領域で開発統括をしている小林です。 現在、私が担当している領域のプロダクトの中にはサーバーサイド開発において、Java6を使用しているものもあり、Javaのバージョンアップについて、少しずつ議論を進めています。 有力な候補はJava8であるのは間違いないのですが、今年2017年にJava9がリリース予定ということで 今日はJava9で追加される大きな新機能のうちの一つModule機能について、プレリリース版で調べてみたことを書いてみたいと思います。 Module機能とは 従来のJava(8まで)が抱えるclasspathの問題の解決する新機能になります。 Project Jigsawと呼ばれているようです。 言葉で説明する前に、実際の動きを確認した方がわかりやすいと思いますので試していきましょう。 classpathを辿ればライブラリの作者が意図してないAPIまで触れる 外

    Java9のModule機能について
  • Play Framework 2.5 (Java) の開発環境をEclipseで構築:Windows編 - Qiita

    Windowsに、Play Framework 2.5 (Java)の開発環境をEclipseで構築します。 ※Macはこちら ⇒ Play Framework 2.5 (Java) の開発環境をEclipseで構築:Mac編 - Qiita Windows 10 Play 2.5.10 JDK 1.8.0 Eclipse 4.6 Neon (Pleiades All in OneのJavaパッケージ) 事前準備 事前に以下の設定をしておく。 JDK 1.8のインストール Eclipse 4.6 (Pleiades All in OneのJavaパッケージ) Pleiades - 統合開発環境 Eclipse 日語化プラグイン Typesafe Activatorのインストール Lightbend社のページから、Typesafe Activatorをダウンロードする。 https://w

    Play Framework 2.5 (Java) の開発環境をEclipseで構築:Windows編 - Qiita
  • 20170303 java9 hadoop

    1. © 2017 NTT DATA Corporation 2017年3月3日 NTTデータ OSSプロフェッショナルサービス 鯵坂 明 Apache HadoopとJava 9とJigsaw 2. © 2017 NTT DATA Corporation 2 鯵坂 明 (Akira Ajisaka)  Apache Hadoopなど分散処理に関連するOSSを利用したPoC や、商用導入における技術支援  商用導入後のサポートサービス  Apache Hadoop Committer/PMC member  JIRAへのバグレポート  修正、レビュー、マージ  リリース作業の手伝い  脆弱性の修正・開示  などなど 自己紹介 https://github.com/apache/hadoop/graphs/contributors 3. © 2017 NTT DATA Cor

    20170303 java9 hadoop
  • Akkaで始める並行処理(3) - アクターの基本 (Java編) - エンタープライズギークス (Enterprise Geeks)

    前回の記事では、Scala による Akka の基的なサンプルプログラムを紹介した。 Akka は ScalaJava それぞれに対応した API を提供している。 今回は、前回 Scala で作成したサンプルプログラムの Java 版を紹介する。 サンプルプログラムの全体構成を以下に再掲するが、詳細に関しては前回の記事を参照していただきたい。 今回のサンプルプログラムも、github で公開している。 子アクターの生成 Java 版では、アクターは、抽象クラスのUntypedActorを継承して定義する。 まず、子アクターの定義のうち、staticメンバーのメッセージオブジェクトの定義について示す。 // UntypedActor を継承 public class SubActor extends UntypedActor { // イミュータブルオブジェクトとしてメッセージクラ

    Akkaで始める並行処理(3) - アクターの基本 (Java編) - エンタープライズギークス (Enterprise Geeks)
  • Java Authorization Guide with Apache Shiroをテキトーに訳した - kagamihogeの日記

    Apache Shiroのチュートリアルの一部でAuthorizationに関する部分の https://shiro.apache.org/java-authorization-guide.html をテキトーに訳した。 Java Authorization Guide with Apache Shiro 認証もしくはアクセス制御とは、リソースへのアクセス権を特定する機能です。つまり、誰が何にアクセスするのか、ということです。 認証チェックの例を挙げると、ユーザに対し、webページの閲覧・データ編集・ボタンの可視性・プリンターへの出力、を許可するかどうかをチェックします。これらはすべて、ユーザが何にアクセスできるかどうかを決定しています。 Elements of Authorization 認証には三つの中核要素があり、パーミッション・ロール・ユーザで、これらはShiroでは頻繁に参照しま

    Java Authorization Guide with Apache Shiroをテキトーに訳した - kagamihogeの日記
  • Big Sky :: golang と Generics と私

    以下の記事は Java について触れていますが、Java を dis っている訳でもありませんし、冗長に見える例を意図的に使っています。 最近 Twittergolang に Generics が無い事についてずいぶんと盛り上がったのですが、僕の意見をこのブログにも書いておこうと思います。 golang に多相が無いのはアレだとか開発者の怠慢だみたいな話はだいたい他の言語を覚えた人から出る感想で、静的型付言語である golang を見ると確かにそう見えるかもしれない。ただ golangJava や他の言語と違って Duck Type を採用している。 — Vim芸人 (@mattn_jp) March 7, 2017 スクリプト言語の多くに多相が求められないのと同じ様に golang を深く触る人達から多相が欲しいという意見がそれほど出ないのは golang の型が Duck

    Big Sky :: golang と Generics と私
  • 今更まとめるdockerコンテナの開発Tips - Qiita

    最近ようやっと格的に触りだしたので備忘録的に書きます。 プラクティスやアンチパターン的な話なので、 いわゆるチートシートやチュートリアルについては他記事を参照ください。 Dockerfile関連 FROMは慎重に選ぶ なるべく公式のDockerfileを使う。 refs: https://hub.docker.com/explore/ だいたい必要なものは揃ってるはず ユーザーコンテナは自分でDockerfileを作成する時の参考に Download数の多いDockerfileは特に参考になる 軽量コンテナについて はじめはなるべく標準のコンテナを使い、軽量コンテナの使用は一旦避ける まずはコンテナ運用のメリット・デメリットを体感し自分が求めるものかどうかを見極める 軽量コンテナ自体はnode:7-slim,golang:alpineなど公式的に提供されているので使う場合はこれらを使う

    今更まとめるdockerコンテナの開発Tips - Qiita
  • MySQLのレプリケーション手法の違い | Yakst

    ソリューションエンジニアチームに所属する筆者が、今では様々な手法が存在するレプリケーション機能について、改めて特徴や注意点を解説しつつ、レプリケーションのよくある「誤解」に対してもお答えしています。 このブログ記事では、MySQL(および Percona Server)環境におけるレプリケーション手法に関して改めて考察を行いたいと思います。あわせて、時折見受けられるレプリケーションの間違った考え方についても考えてみます。 私がソリューションエンジニアとして働き始めてからというもの、沢山の情報が公開されているにも関わらず、レプリケーションに対する「誤解」や「不完全な理解」が無くならないことを日々感じていました。 そもそもレプリケーションとは何か? レプリケーションは、1つのデータベースにデータを蓄積するだけでなく、別のデータベースにデータを複製し、転送することを保証してくれる機能です (複製

    MySQLのレプリケーション手法の違い | Yakst
  • データの可視化に使えるD3.jsでユーザーのページ遷移を表現してみた | PLAID engineer blog

    D3.jsを使ってユーザーがサイト内の各ページを遷移している様子をアクセスログから可視化してみました。

    データの可視化に使えるD3.jsでユーザーのページ遷移を表現してみた | PLAID engineer blog
  • Vue2.x系のハマりどころ templateとコンパイラを完全解説するよ

    Vue2.xでは仮想DOMが使われるようになりました。それに伴い、Vue用のテンプレートを仮想DOMをレンダリングするための関数に変換するという処理をコンパイル時に行ってくれる仕組みが組み込まれています。 そして、お手軽にVueを試したい人、プロダクトにVueを使いたい人、コンポーネント志向でアトミックに実装したい人など、様々な用途に応じたテンプレートの書き方(&コンパイルの方法)を用意してくれています。 そのためテンプレートの書き方とコンパイルの種類については仕様がやや複雑で、公式ドキュメントだけでは理解が難しくけっこうハマりどころだと感じている(事実ずっぽりハマりました)ので、知見を残しておこうと思います。 ※この記事を書いている時点でのVueのバージョンは2.2.1です。 おさらい Vue.jsの利用方法3パターン 1. Vueを<script>タグで埋め込む方法 2. Vue CL

    Vue2.x系のハマりどころ templateとコンパイラを完全解説するよ
  • Learn Angular step by step for Beginners - Lab 1

    This article  was written in the initial days of Angular 2. With lot of changes Angular went through i have rewritten the complete article using Angular 4 , please do refer this article to avoid further confusion   Learn Angular 4 step by step Download  100 page Learn Angular  Ebook ( covering 10 labs) - 3.2 MB Download Lab1CustomerAngularProject.zip - 94.1 KB Contents Introduction What is the Goa

    Learn Angular step by step for Beginners - Lab 1
  • Go言語で標準入出力をスタブする方法 - Qiita

    Pipeを駆使してスタブする 結論をここに載せておきます。 https://play.golang.org/p/JtIHncxhGw こんな感じの関数をテストしたい!って時です。 //標準入力を行番号付きで標準出力に出力する。refer to https://golang.org/pkg/bufio/#example_Scanner_lines func hoge() { i := 0 scanner := bufio.NewScanner(os.Stdin) for scanner.Scan() { i++ fmt.Println(i, scanner.Text()) // Println will add back the final '\n' } if err := scanner.Err(); err != nil { fmt.Fprintln(os.Stderr, "readin

    Go言語で標準入出力をスタブする方法 - Qiita
  • 公式チュートリアルから始めるVue.js vol.2「Github コミット」

    公式チュートリアルから始めるVue.js vol.2「Github コミット」
  • Full-stack React + GraphQL Tutorial | Apollo GraphQL Blog

    This tutorial uses an old version of Apollo Client, and we’re working on updating it soon. For a more up to date introduction to the new constructor API, check out this getting started guide. Most of this tutorial will be identical and can be completed with the new API. GraphQL is a new API-definition and query language that has the potential to become the new REST. It makes it easy for UI compone

    Full-stack React + GraphQL Tutorial | Apollo GraphQL Blog
  • EnzymeでReactコンポーネントのテストを書こう - DMM.comラボエンジニアブログ

    こんにちは、プラットフォーム開発部の新卒エンジニアの松下です。 普段は会員基盤フロントエンドチームでログインやアカウント登録などの会員基盤システムの開発をしています。 早いものであと1ヶ月ちょっとで1年目が終了。春には次の新卒が入ってくるとのことで、うかうかしていられないなと思う今日このごろです。 さて日はEnzymeを使ってReactのテストを書く方法を紹介したいと思います。 Enzymeは宿泊予約サイトのAirbnbが開発しているReactコンポーネントのテストツールです。 チームでは以前よりテスティングフレームワーク「Mocha」とアサーションライブラリ「Chai」でNode.jsアプリケーションの単体テストや結合テストを行ってきました。しかし、これらのツールだけではReactのテストを行うことができず、今回Enzymeの導入を検討することにしました。 目次 Enzymeのセットア

    EnzymeでReactコンポーネントのテストを書こう - DMM.comラボエンジニアブログ
  • 100+ Free Data Science Books

    100+ Free Data Science Books Pulled from the web, here is a our collection of the best, free books on Data Science, Big Data, Data Mining, Machine Learning, Python, R, SQL, NoSQL and more. If you’re looking for even more learning materials, be sure to also check out an online data science course through our comprehensive courses list. Looking for more books? Go back to our main books page. Note th

    100+ Free Data Science Books
  • 2017初頭Vue.js習得用ページまとめ | xxv

    年明けからVue.jsを結構触ってます。 参考になったなとか、このへん読んどくといいなと思ったリンクなど紹介していきます。 でもとりあえずVue.jsの公式のドキュメント(https://jp.vuejs.org/v2/guide/)を一通り眺めたほうがいいです。 公式のドキュメントは文量もそんなにないので、手を動かす前にパラパラと流し読みしてしまいましょう。 では読み終わった人向けに、紹介を続けます。 Vue.js概要? http://qiita.com/asip2k25/items/bd4bdccd5201d542953c 他のフレームワークとの比較と、Vue.jsの志向しているものを解説しています。文量は結構ありますが、Vue.jsを無駄なく使っていくためには良いガイドですので、ぜひ一読してください。 Vue2のディレクトリ構成を考える http://qiita.com/kurosa

    2017初頭Vue.js習得用ページまとめ | xxv
  • 機械学習エンジニアが知るべき10のアルゴリズム

    前回の投稿から大分時間が空いてしまいましたが、現在マーケティング部では、データサイエンスに関する知識を深めるために海外のデータサイエンス記事を翻訳するという取り組みを行っています。主に、KDnuggetsというサイトで紹介されている記事で人気のあるものを中心に選び、原著者より翻訳の許諾をいただけた記事を公開しております。不定期ですが、データサイエンスに関心のある皆様により良い情報を日語でお届けできるように取り組んで参ります。 初回に取り上げたい記事はJames Le氏の「The 10 Algorithms Machine Learning Engineers Need to Know」です。機械学習の手法が網羅的に紹介されており、実用例も示されています。初めて機械学習に取り組む方のご参考になれば幸いです。 SOURCE https://gab41.lab41.org/the-10-alg

    機械学習エンジニアが知るべき10のアルゴリズム
  • Spring Kafka Consumer Producer Example

    In this post, you’re going to learn how to create a Spring Kafka Hello World example that uses Spring Boot and Maven. (Step-by-step) So if you’re a Spring Kafka beginner, you’ll love this guide. Let’s get started. What is Spring Kafka? #The Spring for Apache Kafka (spring-kafka) project applies core Spring concepts to the development of Kafka-based messaging solutions. It provides a ’template’ as

    Spring Kafka Consumer Producer Example
  • JavaエンジニアにScalaの話を聞いてみたい@ScalaMatsuri2017

    私は2016年には学生ボランティアとして、 今年は社会人エンジニアとしてScalaMatsuriに参加させていただきました。 2016年はScalaの今やScalaの開発におけるtipsを学び、Scalaエンジニアと知り合うことができました。ただScalaのフレームワークを用いたサービス、アーキテクチャにあまり興味がなく(研究のために使っていただけなので。。。)、一番研究に近そうな機械学習に関するセッションは「数式は省きます」、のせいもあってセッションの大半はつまらないという感想でした。なんとなくで参加するのはダメですね(笑) 一方2017年はエンジニアとしての価値観を装備し、「streamに関して知見を集めてこい」との上司の司令もあって、目的意識を持って参加してみると実りの多さに興奮しました。 昨年のボランティア参加経験によって私のことを覚えてくださっていた方もチラホラいらっしゃり、積極