タグ

2016年9月24日のブックマーク (39件)

  • クラウドにあるステージング環境のシステムコスト大幅削減を進めている話 - astamuse Lab

    こんにちは。並河(@namikawa)です。 このブログは持ち回り制にしているのですが、前回分でメンバーが一通り書き終えましたので、今日から2巡目になります。早いなぁ。 幸いにしてエキサイティングな毎日なので、ブログに書くようなネタはたくさんある(真顔)のですが、一緒に開発・デザインしてくれるメンバーが早くたくさん来てほしいと思う今日この頃です。 さて、今回の私のエントリは、タイトルの通り、弊社で持っているサービス群のステージング環境のシステムコストの削減を進めている話をします。 ・・・当は、弊社オフィスのある銀座近郊の美味しいラーメン屋を紹介するエントリとか書きたいんですけど、技術ブログという名目でありながら前回のエントリも技術っぽくない内容だったのと、おまえ会社のブログで何書いてるんだと上から怒られそうなので、ちゃんと真面目に(技術の話を)書こうかな、とw (冗談です。怒られません。

    クラウドにあるステージング環境のシステムコスト大幅削減を進めている話 - astamuse Lab
  • Embulk について - astamuse Lab

    山縣です。 前回はSpark について書きましたが今回は最近良く使うようになっているEmbulk について書きたいと思います。 Embulkとは? Embulk はオープンソースのバルクローダーです。あるデータストアから別のデータストアにデータを転送するためのツールです。たとえば CSV形式のデータをPostgreSQLMySQLのようなRDBMS や Google のBigQueryなどにロードしたい、あるいはRDBMS上のデータを CSV 形式で gzipで圧縮して取得したいなどというような使い方ができます。 Embulk では様々なデータストアへの対応をプラグインという形でサポートします。Embulk のサイトから持ってきた下図のように、入力プラグインから取り込まれたデータはEmbulk のデータ型に変換され、出力プラグインに渡されます。このように入力と出力が独立したプラグインとし

    Embulk について - astamuse Lab
  • 最近の Java EE について調べてみた - Humanity

    私は仕事Java に関わってきましたが、実質仕事で関わってきたプロジェクトはまだ3~4年ぐらい、 そしてそのプロジェクトの中にはいくつかコードを書く仕事ではなく Excel 仕事がメインというプロジェクトもあり、 正直言うとあまり積極的に Java に関わろうとはしませんでした。 そんな自分が最近、自宅サーバを管理する時にちょっとした Web アプリ(というか Web GUI)がほしいと思って Java で作ろうと思って色々調べた程度のまとまらない文章なので、 以下の文章は沢山の間違いを含むと思います。よって識者の方のコメントをお待ちしています。 最近は(という程最近でもないけど)Java SE 環境でも Java EE の機能がある程度使えるようになってきた。 それを後押しした *1 のが、Spring Boot、 Dropwizard、 WildFly Swarm、Payara M

    最近の Java EE について調べてみた - Humanity
  • PyConJP2016: 週末サイエンティストのススメ

    7 plugins de la communauté à ne pas manquer ! - Liferay France Symposium 2016Sébastien Le Marchand

    PyConJP2016: 週末サイエンティストのススメ
  • https://github.com/tell-k/pyconjp2016/blob/master/reference.rst

    https://github.com/tell-k/pyconjp2016/blob/master/reference.rst
  • Tensorflowでレコメンデーションシステム | developer's blog

    はじめに 今回はTensorflowを使って、シンプルなレコメンデーションシステムの構築を行ってみる。 レコメンデーションのアルゴリズムはいくつか存在するが、今回使うのは「協調フィルタリング(Collaborative Filtering)」と呼ばれるもの。 全体像 お薦めレストランを紹介するサービスがあったとする。ユーザは、利用したレストランに対して1〜5の評価をつけることができる。 このサービスでは、ユーザが過去につけた評価から、他のお薦めレストランを紹介する機能を作りたいと考えている。 まずは話を理解しやすくするために、以下のような少ないデータで考えてみる。 ここで、佐藤さんにはレストランBを紹介すべきなのか、それともレストランDを紹介すべきなのか。また、伊藤さんにはレストランAを紹介すべきなのか、それともレストランBを紹介すべきなのか。この部分を機械学習を使って解いてみたいと思う。

    Tensorflowでレコメンデーションシステム | developer's blog
  • 「HTTPプロクシライブラリproxy2の設計と実装」というタイトルで発表した - ももいろテクノロジー

    プレゼンテーション:HTTPプロクシライブラリproxy2の設計と実装 | PyCon JP 2016 in TOKYO PyCon JP 2016で以前作ったPython製HTTPプロクシライブラリについて発表した。 HTTPプロクシライブラリproxy2の設計と実装 from inaz2 きちんとPython 3対応にした状態で発表できなかったのが少し心残りではあるが、以前の発表であまり触れられなかった実装面のあれこれについてまとめることができてよかった。 また、Accept-Encodingの扱いが雑で、うまくいかないケースが出てきていることに気づけたという点でも、よい機会だった。 スタッフ、参加者の方とも交流することができ、楽しいイベントでした。 PyCon JPスタッフのみなさま、ありがとうございました。

    「HTTPプロクシライブラリproxy2の設計と実装」というタイトルで発表した - ももいろテクノロジー
  • データサイエンティストを目指す人のpython環境構築 2016 - Qiita

    pythonの環境構築について "python 環境構築"でググると20万件くらいヒットしますが、割と内容が古いです。 タイトルにはデータサイエンティストと書いてありますが、データサイエンティスト以外にもanacondaはおすすめです。 2.x or 3.x? 3.xは動かないライブラリが多いので2.x推奨 > 3.xで動かないライブラリがある、くらいまで来ました。 easy_installでpipを入れて、setuptoolsも入れて、でもwheelというのもあって... > 古いです。 virtualenv 必須 > そんなこともないです。 winでは64bitは不具合が多いので32bit推奨 > 古いです。 winでは非公式バイナリからダウンロードしてインストール > お世話になりましたが、最近は使っていません。 2016版 OS毎python環境構築法決定版 Windows: an

    データサイエンティストを目指す人のpython環境構築 2016 - Qiita
  • Python を支える技術: モジュール・インポートシステム編

    See https://speakerdeck.com /knzm/python-module-import-system 1

    Python を支える技術: モジュール・インポートシステム編
  • キャズムを大きく超えた Python - PyCon JP 2016 振り返り - Librabuch

    PyCon JP 2016 に参加しました。Development Splint の日程をまだ残しておりますが Conference Day の振り返りです。ちなみに自分の活動振り返りおよび感じたことなどがおもで他の登壇者のかたのセッションのレポートはありません。つまりポエムです。 PyCon JP 2016 とわたし 昨年は以下のエントリにて、CfP だせばよかったかなとぼやいていた次第ですが、 PyCon JP 2015 振り返り コミュニティのライフサイクルについて - Librabuch 今年はイベント開催中の(会社的な)状況がまったく見えなかったので CfP を見送ってしまいました。Lightning Talks については、ネタが思いつけば手を上げたかったのですが、至らず。いま思えば SymPy ネタなどで攻めていけばよかったですね。PyCon JP 2017 ないし、APAC

    キャズムを大きく超えた Python - PyCon JP 2016 振り返り - Librabuch
  • 3回目のPyCon参加と3年目のコミュニティ参加と4回目の野球Python〜 #PyConJP 2016レポート - Lean Baseball

    こんばんは、野球Pythonの人こと@shinyorke(なかがわ)です. 盛会なまま、無事(いや、一部色々あったけれども)終了しましたね、PyCon JP 2016カンファレンスDay. 自分はSprintに参加する予定が無い(理由は後述)ので、一足先にPyCon JPをDone.しました. トークセッションやポスターを聴いたりご覧になったりしてくださった皆さま、スタッフの皆さま、親愛なるPythonistaな皆さま、当にお疲れ様でした&ありがとうございました! 今年のレポートは、33+4歳に掛けて、 3回目のPyCon参加で自分にもたらされた変化 コミュニティ参加3年目を振りかえる (PyCon JPでの)4回目の野球トーク「ビックデータとPythonを用いた野球の統計分析」 この3つのテーマで自分語りをしたいと思います. 最初二つ(3回目のPyConと3年目のコミュニティJoin)

    3回目のPyCon参加と3年目のコミュニティ参加と4回目の野球Python〜 #PyConJP 2016レポート - Lean Baseball
  • おもしろそうだったので自分もwc書いてみたけど、元のCで書かれたwcをあんまり改良するところがなかった…

    wc.go ���8�U @?�8�U package main import ( "flag" "fmt" "io" "log" "os" "runtime/pprof" "sync" "unicode" "unicode/utf8" ) type result struct { err error filename string bytes int lines int words int } var cpuprofile = flag.String("cpuprofile", "", "write cpu profile to file") var showbytes = flag.Bool("c", false, "print bytes") var showlines = flag.Bool("l", false, "print lines") var showwords = fl

    おもしろそうだったので自分もwc書いてみたけど、元のCで書かれたwcをあんまり改良するところがなかった…
  • 「Vagrant」と「Ansible」でInfrastructure as Codeを体験してみよう (1/2)

    関連キーワード OS | OSS | Red Hat(レッドハット) | オープンソース | Docker | Linux 前回の記事「人気のOSS構成管理ツール『Chef』『Ansible』を比較」では、Infrastructure as Code(コードによるインフラの構成管理)を実現するために重要な構成管理ツールの中から、代表的なOSS(オープンソースソフトウェア)のツールである「Chef」と「Ansible」について、それぞれの特徴や違いを紹介した。 最終回となる今回は、第1回の記事「いまさら聞けない『Infrastructure as Code』、一体どんなメリットが?」で紹介した仮想環境構築ツール「Vagrant」で仮想サーバを構築し、その仮想サーバに対してAnsibleを実行して、簡単なWebサーバを構築する方法をチュートリアル形式で説明する。チュートリアルで使用するOSは、

    「Vagrant」と「Ansible」でInfrastructure as Codeを体験してみよう (1/2)
  • [AWS]EC2やRDS、ELBの停止忘れを一発で防ぐMoneySave[CloudFormationテンプレート] | DevelopersIO

    コンニチハ、千葉です。 以前紹介させていただいたブログがあります。EC2やRDS、ELBの停止忘れ、削除し忘れを防ぐ!LambdaScheduleイベント #reinvent あれから約1年経ちました。こちらをアップデートして、より使いやすい形にしたのでご紹介です。 何ができるの? 起動しっぱなしになったリソースを通知してくれます。 これを利用することで、会社で利用している開発用のアカウントや個人で持っているアカウントに対して適用し、無駄に起動しているリソースが無いかをチェックして通知してくれます。 例えば、「EC2を起動しっぱなしで月末に衝撃が走った」というような悲しみから解放してくれます。数クリックで利用できるようにしたので、是非ご活用していただいて悲しみから解放されましょう! チェック対象リソース チェック対象のリソースは以下となります。 EC2 ELB([new]アプリケーションロ

    [AWS]EC2やRDS、ELBの停止忘れを一発で防ぐMoneySave[CloudFormationテンプレート] | DevelopersIO
  • curlでヘッダを見る方法いろいろ - Qiita

    --verbose --verboseオプションをつけるとリクエストヘッダ、レスポンスヘッダ、httpsならTLS handshakeの様子等が出力されるようになります。なので、--verboseをつけるとヘッダが見れます。 また、この"verboseな"情報は標準エラー出力に出力されるので、ヘッダだけ見たい、と言う時は標準出力は/dev/nullに捨てちゃうといい感じに見やすくなります。 $ curl --verbose http://increments.co.jp/ 1> /dev/null * About to connect() to increments.co.jp port 80 (#0) * Trying 75.101.145.87... % Total % Received % Xferd Average Speed Time Time Time Current Dloa

    curlでヘッダを見る方法いろいろ - Qiita
  • [Rundeck] Rundeck導入手順(Ubuntu 16.04) - Life with IT

    2016/09/22更新 対応バージョン: 2.6.9 ジョブコントローラRundeckは今まで煩雑になりがちだったcronに代表されるUNIXにおける定形処理を統合的に管理してくれるサービスで、多重実行の制御、処理結果の保存、エラー時の処理やジョブ間の連携、メールやWebhookによる通知など様々な機能が提供されている。 リモートホストに対するジョブ実行に対してもエージェントのインストールが不要なため(要SSH接続)、複数ホストにまたがるジョブの管理が容易になる。 またWebのUIが用意されているので直感的なジョブの定義や操作が可能で、スケジューリングにcrontab形式が使用できることによりcronからの移行もスムーズに行える。 ここではこのRundeckをUbuntuに導入する手順を示す。 インストール RundeckはJavaで書かれているのでまずJavaの実行環境をインストールす

  • C++の参照渡しとCのポインタの値渡しの違いをマシン語で比較してみた結果 - Qiita

    ポインタの値渡し、参照渡しはしばしば話題になる事柄なので、興味位でマシン語(アセンブリ言語)レベルの比較を行ってみました。 OS CentOS release 6.8 コンパイラ gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-17) g++ (GCC) 4.4.7 20120313 (Red Hat 4.4.7-17) 参照渡しと値渡しの違い ググってもQiita内で調べても、詳しいエントリは既にありますので、そもそもの違いはそちらのエントリを参考にして見て下さい。 値渡し、ポインタ渡し、参照渡しの違い 要するに C言語では、あるオブジェクトへのポインタを引数として渡せば、そのポインタから参照外しをして呼び出し元のオブジェクトにアクセスができます。 ただし、それはあくまで元のオブジェクトに対して、アドレス演算子を作用させて取り出したオブジェクトのアドレス

    C++の参照渡しとCのポインタの値渡しの違いをマシン語で比較してみた結果 - Qiita
  • ECSのデプロイツールを試している話

    2016/09/21 JAWS-UG コンテナ支部 #6 #jawsug_ct http://jawsug-container.connpass.com/event/37895/ 当スライドで引用した資料のリンクを以下に全て置きました。 https://git.io/viHHI @yukiyan_w https://twitter.com/yukiyan_w http://yukiyan.hatenablog.jp/

    ECSのデプロイツールを試している話
  • コンテナ時代の Twelve-Factor App - na_o_ysのブログ

    Twelve-Factor App (Adam Wiggins, 2012) を読んで感動したので、あらためてコンテナ技術が流行する 2016 年現在の Web アプリケーション環境を意識しながら覚え書き、まとめです。 記事は主に Web アプリケーション開発者、Web アプリケーションインフラ構築に関わる方を対象としています。 Twelve-Factor App https://12factor.net/ja/ Heroku が提唱するソフトウェア開発および CI 環境構築における方法論で、下記を大目的とした 12 の指針からなる。 プロジェクトに新しく加わった開発者が要する時間とコストを最小化する 実行環境間での移植性を最大化する サーバー管理やシステム管理を不要なものにする 開発環境と番環境の差異を最小限にし、アジリティを最大化する継続的デプロイを可能にする ツール、アーキテクチ

    コンテナ時代の Twelve-Factor App - na_o_ysのブログ
  • docker-composeでmysql使うとき初回起動時に複数のDBを作る方法 - Qiita

    とりあえず自分が慣れてるんで docker-compose のymlの書式で書きますが、コマンドラインからでも同じことはできるはずでやんす。 tl; dr MYSQL_DATABASE をenvに指定すれば1個は作ってくれるけど、複数個のDBは作ってくれない /docker-entrypoint-initdb.d にあるSQLは勝手に突っ込んでくれるしシェルがあればシェルを実行してくれる /docker-entrypoint-initdb.d にいい感じのシェルを書くといい感じにDBが作れるというか、なんでもできる。 やりたいこと 以下のような docker-compose.yml を用意して、2つのDBを作りたいと思っています。 version: '2' services: db: image: mysql environment: MYSQL_DATABASE: first_datab

    docker-composeでmysql使うとき初回起動時に複数のDBを作る方法 - Qiita
  • Akka starter kit

    This post comes as a continuation for Scala starter kit. If you are new to Scala ecosystem I would recommend to check it out. Being a Scala developer there is a big chance you will develop highly concurrent and scalable applications using Akka. This article comes with some high level information about Akka along with a list of useful resources that will definitely help you to get started. What is

    Akka starter kit
  • introduction-to-git/README.md at master · takanabe/introduction-to-git

    文書は Git の基的な概念と使い方を、なるべくわかりやすく説明する意図で書かれています。書を読む事で かんたんな Git の使い方ができる ブランチを使える 複数人での協調作業ができる わからないことがあったときに google で「どんな単語で調べればいいのか」 がわかる ようになるのが目的です。 対象読者は、「Git を使ってみたいと思ってるけどなんか怖い」「業務で Git 使ってるけどよく詰む」「なんかいろいろ英語でてくるけどよくわかんないから読んでない」「なんとなく使ってるけどよくわかってない」というひとが対象読者です。逆に、「べつに Git で困ってない」「git flow おいしいです」「普通に毎日使ってる」「もうGitなしには生きられない」「彼氏が VCS 使ってなかった、別れたい」というようなひとは対象読者ではありません。 なお、一部 Mac OS X 向けの記述に

    introduction-to-git/README.md at master · takanabe/introduction-to-git
  • Python を支える技術: モジュール・ インポートシステム編 / python-module-import-system

    Python を支える技術: モジュール・ インポートシステム編 / python-module-import-system

    Python を支える技術: モジュール・ インポートシステム編 / python-module-import-system
  • pandas による 時系列データ処理 // Speaker Deck

    All slide content and descriptions are owned by their creators.

    pandas による 時系列データ処理 // Speaker Deck
  • Pythonで動かして学ぶ機械学習入門_予測モデルを作ってみよう

    The document summarizes a presentation on machine learning methods for graph data and recent trends. It introduces graph data and common graph neural network (GNN) approaches, including Recurrent GNNs, Convolutional GNNs, Graph Autoencoders, Graph Adversarial Methods, and Spatial-Temporal GNNs. It then discusses the GNNExplainer method for explaining GNN predictions and concludes with an overview

    Pythonで動かして学ぶ機械学習入門_予測モデルを作ってみよう
  • 【RPMによるパッケージ管理】rpmコマンドの使い方

    Red Hat系のOS、CentOSやFedraではRPMというパッケージ管理システムを使う。 このページではRPMについて基や便利なオプションなど含めて一通り解説した。参考にしていただければと思う。 パッケージ管理の概要について知りたいという方は下記を参考にしてほしい。 RPMとは? RPMはパッケージ管理システムのひとつだ。 「Red Hat Package Manager」の略だったのだが現代では「RPM Package Manager」の略で再帰的頭字語となっている。 主にRHELを始めCentOSやFedoraなどの「RedHat系列」なディストリビューションに採用されていることが多いパッケージ形式だ。 実際はこの上でパッケージを統合管理する「パッケージマネージャフロントエンド」が機能しパッケージを処理するため、単体で触れる機会は少なくなっている。 RMPのパッケージ RPM

    【RPMによるパッケージ管理】rpmコマンドの使い方
  • 【簡単に解説】RPMパッケージを作成する方法

    このページではRPMパッケージ作成の方法を紹介する。 初心者の方であれば、とりあえず知らずともまったく問題がない。Linux入門を上から確認している方は、飛ばしてもいいだろう。 パッケージを作成するときはシステムに致命的な損傷を与えないよう、一般ユーザ権限でホームディレクトリの下で行うことをお勧めする。 環境準備 まずは開発環境をインストールする。 # yum install rpm-build # yum groupinstall 'Development tools' CentOSではこの二つのコマンドを叩くとRPM開発環境が整う。 RPMパッケージの作成 src.rpmファイルのダウンロード 多くのRPMパッケージにはバイナリパッケージとソースパッケージが用意されている。ソースパッケージはSRPMと呼ばれ、.src.rpmという拡張子がつく。 準備が整ったら「src.rpm」ファイル

    【簡単に解説】RPMパッケージを作成する方法
  • PyCon JP 2016、良かったTalkまとめ. - SE Can't Code

    PyCon JP 2016の面白かったTalkをまとめる。今年も最高だった。やっぱりこうやって社外のコミュニティに参加して、新鮮な情報や知識を入れることは大事なことだ。モチベーションも自然と高まるので、より技術力向上に精が出るだろう。ではでは、Talkのまとめ。 週末サイエンティストのすすめ PyConJP2016: 週末サイエンティストのススメ from Yuta Kashino www.slideshare.net 研究リテラシーをもって、週末に研究する。オープンデータはWebに転がっているので誰でも週末に研究ができる。こういうことをやらないとデータ解析とかのスキル上がらないなぁと思う今日この頃。kaggleとか始めるのもよいと思っていたが、こういうのを始めて、blogに研究を公開するのもありか。 Pythonで作るWebクローラ入門 speakerdeck.com 違うTalkを聴き

    PyCon JP 2016、良かったTalkまとめ. - SE Can't Code
  • 【Linux】ローカルリポジトリを作成してみる

    RPMを作成するようになると、当然そのパッケージも統合管理したくなるだろう。 このページではローカルリポジトリを作成する方法について簡単にお伝えする。 こちらも初めてLinuxを触る方は全く知る必要がない。参考程度だと思って見ていただければと思う。パッケージ管理全体に関しては下記でまとまっている。 ローカルリポジトリを作成してみよう。 まずローカルリポジトリを設置するためのディレクトリを作る。 # mkdir /usr/my_repo そのディレクトリへ移動 # cd /usr/my_repo ローカルリポジトリへ置きたいパッケージを持ってくる。今回はホームディレクトリの下rpmbuildでrpmファイルを作成したと仮定する。 # cp /home/<hoge>/rpmbuild/RPMS/x86_64/* . 「createrepo」このコマンドで実際にリポジトリをセットアップする。リポ

    【Linux】ローカルリポジトリを作成してみる
  • 【初心者でもわかる】yumコマンドの使い方とリポジトリの追加方法

    yumはパッケージの統合管理システムだ。 RPMパッケージを管理するもので、rpmコマンドを使うよりも便利で使いやすい。 このページではyumとは?とyumコマンドの使い方、リポジトリの追加方法についてお伝えした。 パッケージが何かよくわからない方は下記ページを先に見ていただくのがいいだろう。 yumとは? yumは「Yellowdog Updater Modified」の略だ。 元々はYellow Dog Linuxのパッケージ管理システムであるYUP「Yellowdog Updater」というものが前身にあった。その統合パッケージ管理システムをRedHatへ改変移植したものが現在のyumとなる。 役割としてはRPMパッケージを統合管理するというものだ。RPM単体ではパッケージ情報、依存関係などの情報を持ち合わせているものの、それを統合的に管理運用するシステムがない。ユーザの手間を減らす

    【初心者でもわかる】yumコマンドの使い方とリポジトリの追加方法
  • PyCon JP 2016 に参加してきました #pyconjp | カメリオ開発者ブログ

    白ヤギの開発者の森です。 今週の中日 (2016-09-20から09-24) から PyCon JP 2016 が開催されました。白ヤギコーポレーションは例年スポンサーをしていますが、「シルバースポンサーではうちの会社が目立たないだろう」的なノリで今年は初めてゴールドスポンサーとして参加しました。普段なら私は個人としてチケットを購入してカンファレンスに参加していましたが、ゴールドスポンサーは招待チケット枠が3つあったこともあり、スポンサーチケットを使って参加してきました。 今年のテーマは Everyone’s different, all are wonderful.「みんなちがって、みんないい」 でした。早稲田大学 さんの施設で行われ、正にテーマを表した5トラックという、例年よりも発表枠を拡大し幅広い分野における Python を使った事例や開発について様々な発表が行われていたように思

    PyCon JP 2016 に参加してきました #pyconjp | カメリオ開発者ブログ
  • 『オブジェクト指向設計実践ガイド』を読んだ

    当に良いでした。読んで良かった。初心者を中心に中級者にも刺さる だと思います。輪読などして、チームで読むとオブジェクト指向設計の そもそもの話をしなくて良さそうです。 難しい話が易しく説明されており「あ、そうだったのか」と思うことが度々 でした。ボリュームも全9章とコンパクトで、1日1章読むのに丁度よかっ たです。 読んでメモった箇所を中心にまとめていきます。 第2章 単一責任のクラスを設計する# インスタンス変数へのアクセス方法を誤解していました。 P46 変数はそれらを定義しているクラスからでさえも隠蔽しましょう 今まで他のクラスから隠蔽する時は、直接 @hoge などにアクセスしてい ましたが、中からも attr_reader などで隠蔽する必要があるそうです。 「データではなく、振る舞いに依存する」ためだそうです。 メモ化などでこうした手法は使っていたけど、単純な参照も隠蔽す

  • #pyconjp でWeb(WSGI)フレームワークの作り方について話してきました - c-bata web

    昨年のPyConJPでは pandas-validator について話していたのですが、今回はトークセッションをしてきました。 Twitter見てると早速スライドを見ながら実装してくださってる方もいらっしゃって嬉しいかぎりです。 日語のWSGIフレームワークの作り方の資料としては最もまとまっているものになっていると思うので、ぜひご活用ください。 基礎から学ぶWebアプリケーションフレームワークの作り方 WSGIの解説から始まり、ルーティング・リクエスト・レスポンス・HTMLテンプレートやミドルウェアについて順番に解説しながら、ボトムアップでフレームワークを作り上げていく話をしてきました。 半分ライブコーディングみたいな形だったので、少し不安もありました。 もう少しこうやればスムーズだったかなと反省点も少しありますが、スライドとかTogetterまとめがホッテントリ入りしていたらしく、周り

    #pyconjp でWeb(WSGI)フレームワークの作り方について話してきました - c-bata web
  • 責任(関心)を意識したアプリケーション設計 - Qiita

    プログラムが上手く組めるようになりたい プログラミングが上手くなりたいと考えたときに、個人的には『名付けを意識』するのと、『アプリケーション設計のときに責任を意識する』考え方を取り入れることをおすすめしております。 今回は『アプリケーション設計のときに責任を意識する』ことについて書いてみたいと思います。 基的には単一責任原則と、関心の分離のお話になります。 ※ タイトルに『関心』というワードがありますが、アスペクト指向プログラミングの話ではありません 単一責任原則とは まずは単一責任原則とは何かについてです。 よく単一責任原則の説明では「クラスを変更する理由は複数存在してはいけない」というニュアンスの言葉がよく使われます。 例えば、社員管理システムの実装を行いたい場合、一つのクラスに「社員登録」「出勤管理」「給与管理」などの機能を詰め込むと、『社員登録』の変更をする際にそのクラスが変更さ

    責任(関心)を意識したアプリケーション設計 - Qiita
  • PyConJP2016に参加してきました! - Taste of Tech Topics

    こんにちは、@tereka114です。 なんと、私、先日PyConJPに参加してきました! ちなみに、Python歴4年目にして初参加です。 実はこのカンファレンス知ってからずっと参加したいと思っていて やっと参加することができました! そこで参加したセッションや感想を書きました。 セッションについて 今回は全体的にデータを分析するセッションが多かったように感じますが 多種多様ですばらしいセッションの数々です。 今回、私が参加したセッションは次のとおりです。 1日目 Pythonを含む多くのプログラミング言語を扱う処理フレームワークとパターン たった一ファイルの python スクリプトから始める OSS 開発入門 ニューラルネットワークのフレームワークであるChainerで始める対話Botの作成 複数の言語からなるプロジェクトを作るということ 確率的ニューラルネットの学習と Chaine

    PyConJP2016に参加してきました! - Taste of Tech Topics
  • フロントエンドの適材適所と、エンジニアは何を学ぶべきか

    Kaizen Platform フロントエンドエンジニアの中村です。 現在開発中のプロダクトでは、フロントエンド開発のフレームワークに React + Redux を採用しています。 当初は自分が一人で開発していましたが、チームのRubyエンジニアの皆が次々と React を習得、気がつけばフロントエンドの機能実装も担うようになり、おかげでフロントエンド専門の自分はUIデザインの補佐 & UXの向上へ手が回せるようになりました。 弊社のビジョンは『21世紀の新しい雇用と働き方の創出』ということで、会社の壁を越えた適材適所を目指しているのですが、社内でも「適材適所」が進んでいるというわけです。 畢竟、開発チームの皆さんが仕事しやすいよう、技術基盤の整備に邁進するのですが、新しいツールやライブラリを導入するにも適宜判断が必要になりまして、じゃあ何をどう選ぶかについて意見を持てる & 説明ができ

    フロントエンドの適材適所と、エンジニアは何を学ぶべきか
  • 高速なハッシュテーブルを設計する | POSTD

    (訳注:2016/9/28、頂きましたフィードバックを元に記事を修正いたしました。) はじめに 稿では、高速で汎用的なハッシュテーブルを作るために行う、設計についての多くの意思決定事項を紹介します。最終的に、私の emilib::HashSet とC++11の std::unordered_set の間のベンチマークが出来上がりました。もし、ハッシュテーブルに興味があって、自分で設計したいなら(どのプログラミング言語かに関わらず)、稿がヒントになるかもしれません。 ハッシュテーブル は、素晴らしい発明です。 ならし計算量O(1) ( O(√N)時間 )で、挿入、削除、検索を行うことができます。ならし計算量とは、ハッシュテーブルの計算に平均でO(1)の計算量がかかることを意味しますが、時々、これよりも多くの時間がかかる場合があります。具体的には、ハッシュテーブルに空きがない場合で、挿入の

    高速なハッシュテーブルを設計する | POSTD
  • 「それ、アジャイルできてへんのちゃいますか?」チェックリストの公開 - メソッド屋のブログ

    DevOps を導入して、リードタイムの短縮などの効果を出したい時に、前提条件となっている「アジャイル」がまだ導入できていないケースが多い。そういったケースでは、まずアジャイル導入のご支援をすることもよくある。 そういった支援に入ると、「アジャイル導入前提」で構成されたはずのプロジェクトであっても、全然「アジャイル」のポイントを外しているというケースは珍しくない。更に問題なことに、「アジャイルをできます!」と言っているベンダーさんを連れてきても、全然ポイントを外しているというケースすら珍しくない。今回のブログではそういったケースでも、簡単に確認できる、「アジャイルになっていないかもしれない簡単なチェックポイント」を対策付きでいくつかご紹介しよう。 スプリントの中で、ウォータフォールを実施するのではない。それはミニウォータフォールというバッドプラクティスだ。 1. 進化型設計ができていない

    「それ、アジャイルできてへんのちゃいますか?」チェックリストの公開 - メソッド屋のブログ
  • CentOSでHadoopとHiveを試してみる(2015年秋編) - Qiita

    やりたいこと Hadoopファミリーは日々進化しますが、とはいえ、MapReduceとHiveのニーズは不滅です。現行(最新)かつ素のHadoopとHiveをCentOS上に構築して動作確認してみます。 環境 CentOS6.7(7でも基同じ:手元にイメージがあっただけ・・・) Hadoop 2.7.1 Hive 1.2.1 準備 CentOS6.7をMinimal構成でインストールした後、 yum update yum groupinstall 'Development tools' yum install wget を実行した状態。テスト自体は、VMWareFusion8上で行っているが、多分依存などは無い。 ssh 疑似分散モードを利用するためには、ssh localhostでパスフレーズ無しでログインできるようにしておく必要があります。

    CentOSでHadoopとHiveを試してみる(2015年秋編) - Qiita