This domain may be for sale!
Dockerfile @�8 -V @�` -V # Docker container that spins up a Jupyter notebook server # with CUDA accelerated Theano support. Assumes the host # system has CUDA drivers installed that match the version below. # # Launch with a comman line similar to the following: # # docker run -it \ # --device /dev/nvidiactl --device /dev/nvidia-uvm --device /dev/nvidia0 # -p 8888:8888 # -v /[where notebooks are o
.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
データ分析部の久保です。 最近行ったライブはAimerのAcoustic Live Tour 2017です。 早いもので2017年も3月になりましたが、機械学習分野は相変わらずとてもホットな分野です。 去年はAI、人工知能という言葉がディープラーニングとともにバズワードになり、その傾向は尚も続いています。 その流行の元となったのが機械学習なわけですが、今その最先端ではどういう人がどのような研究をしているのかをかなりざっくりと見ていきたいと思います。 調査方法は2013年に同様のことを行ったとき qiita.com と同じく、NIPSとICMLという機械学習の代表的国際会議の過去3年分を対象とし、1st authorの重要度をそれ以外の著者よりも重くしてスコアづけしました。具体的には複数人の著者がいる場合は1st authorを0.8として、残りの0.2を他の著者に分配、1人の場合は1として
アメリカ人です。 Hello 👋 この記事の目的 多くの日本人は自分の英語力には自信がないではないでしょうか。残念ながら「英語がわからん」、「英語が全然できない」という声をしょっちゅう聞いています。でも、今まで英語ができて意味がちゃんと伝わる何人かの日本人に会ったがあります。完璧な英語ではないけど(外国人も英語でミスる時もある...)、がんばって話そうとするので充分仕事ができる人たち。そういうがんばる姿勢はオープンソースのプログラムや英語圏のプログラムに手を出すためには一番大事なことだと思います(外国人側もすごく助かります)。日本の文化では「私はできる!」と自慢することは少ない中、この記事を通して、流暢に話せなくても自分のプログラミングの命名の仕方にはちょっとだけでも自信を持たせたいなと思います。完璧じゃなくていいです。Let's go! 合わせて読んでいただきたい 【日本人エンジニア必
渡辺です。 Ansibleを使っている皆様、テスト書いてますか? え、書いてない? 弊社では、社内共有しているAnsibleのRoleの検証にServerspecを利用しています。 今日はよく使うリソースタイプを紹介します。 テストの流れ テストのフレームワークとしてはTest Kitchenを利用しています(kitchen-ansiblepushを利用したAnsible roleのテスト環境構築)。 はじめに、Test KitchenのEC2 Driverを利用し、AWS環境にEC2インスタンスを作成します。 次に、ひとつのRoleを実行するAnsibleのPlaybookを流します。 続けて、サーバの状態が期待された状態になっているかをServerspecで検証します。 最後に、AWS環境にEC2インスタンスが破棄されます(検証失敗時は破棄されない)。 Ansibleでもテストの仕組み
Dockerfileを作っている最中に動作確認中に途中で落ちてしまって、その状態でイメージの中身を確認したい時とかが多々あるかと思いますが 今回はそんなやり方、定番かもしれないですが書いてみようと思います。 まずは適当なDockerfileを作ってビルドします。 docker build --rm -t building . このビルド時にエラーが出てイメージの作成が止まったという想定です。 docker buildで失敗すると・・・ docker imagesには というイメージが出来ています。 こいつは Dockerfile上のタスク(RUNとかADDとかの単位)で正常に処理が完了した状態が一時的にイメージ化されているものです。 で、docker buildで失敗した状態というのは docker ps -aで表示される停止しているコンテナが持っています。 なので、このコンテナに入ること
Chainerによる多層パーセプトロンの実装(2015/10/5)のつづき。今回はChainerで畳み込みニューラルネットワーク(CNN:Convolutional Neural Network)を実装した。Theanoによる畳み込みニューラルネットワークの実装 (1)(2015/6/26)で書いたのと同じ構造をChainerで試しただけ。タスクは前回と同じくMNIST。 今回は、MNISTデータの取得や訓練/テストの分割にscikit-learnの関数を使ってみた。 Chainerで畳み込みをするためには、訓練データの画像セットを(ミニバッチサイズ、チャンネル数、高さ、幅)の4次元テンソルに変換する必要がある(ここに書いてある)。今回はチャンネル数が1なので単純にreshapeで変形できる。 3チャンネルのカラー画像だとnumpyのtranspose()で4次元テンソルに変換できるみたい
Go言語でシステムプログラミングの世界を覗くこの連載では、前々回からファイルシステムに関係する話題を扱ってきました。 今回の記事では、その総まとめとして、アプリケーションから見たファイルシステム周りの最深部を辿っていきます。 扱う話題は次の4つです。 ファイルロック ファイルのメモリへのマッピング 同期・非同期とブロッキング・ノンブロッキング select属のシステムコールによるI/O多重化 ファイルのロック(syscall.Flock()) ファイルのロックは、複数のプロセス間で同じリソースを同時に変更しないようにするために「いま使用していますよ」と他のプロセスに伝える手法のひとつです。 ファイルロックの最も単純な方法は、リソースが使用中であることをファイル(ロックファイル)によって示すというものでしょう。 たとえば、古いプログラマ(30代以上?)にはお馴染みのCGI(かつて動的なウェブ
ここ2年ぐらいffmpegとかopencvとかRuby + CUDAみたいなやつとか たまーにビルド職人になることがあって上手くコンパイルするために各種コマンドを使うことがあるのだけど、 使い方はおろか、普段あんまり使わないのでコマンド名すら忘れることが多々あるためコマンド名とか使い時を覚えている限りざっくりメモしとく。 あとはmanを読めば良い。 pkg-config インストール済みのライブラリをコンパイルに利用するときに必要なコンパイルオプションを返してくれるやつ .pcファイルを元に返してくれる。 PKG_CONFIG_PATHを指定して利用したりする。 ldd .so(Shared Object)ファイルが動的リンクで依存しているライブラリへの依存関係を表示してくれる。 何かをコンパイルした結果、共有ライブラリがリンクできているかを調べるのに使える。 $ ldd `which f
DOCKER 0.11 IS THE RELEASE CANDIDATE FOR 1.0 1.0のRCである0.11はいくつかの新機能が追加された.例えば,SELinuxのサポートや,Host networking機能,Link機能でのホスト名,Docker deamonへのpingなど. この中でもHost networking機能がなかなか面白いので,実際に手を動かして検証してみた.事前知識として“Dockerのネットワークの基礎”も書きました.ネットワークに関して不安があるひとが先にみると,Host Networing機能の利点/欠点もわかりやすいと思います. TL;DR Host networking機能を使うと,異なるホスト間のコンテナの連携がちょっぴりやりやすくなる.SerfやConsulのようなサービスディスカバリーツールとの相性も良さそう. まだ出たばかりの機能で実際に使っ
こんにちは、okutani(@okutani_t)です。『GitHub+dotfiles』を利用すると、開発環境を一瞬で作れて便利なことを最近知りました。 dotfilesはツールでもなんでもなく、単純に『.vimrc』『.emacs.d』『.zshrc』なんかの「頭にドットがつくファイル」を格納したディレクトリのことです。 このdotfilesをGitHubで管理しておいて、「dotfilesリポジトリをクローン+install.shの実行」で、「環境構築をらくーにおこなおうじゃないか!」といった感じです。 今回はMac上で動作させていますが、Linuxでも同じようにinstall.shを作成することができるかと思います。 ちなみに、たくさんの方がdotfilesの管理方法について記事にしているので、めっちゃ参考になります。 参考dotfilesを管理しよう – Qiita 参考ミニマル
こんにちは、技術部モバイル基盤グループの茂呂(@slightair)です。 今回は、ちょっと地味ではありますが、クックパッドのiOSアプリ開発を支えているスクリプト群について書きたいと思います。 日々iOSアプリ開発を行うとすれば、Xcodeまたはその他のお気に入りのエディタでコードを書き、ビルドと実行を繰り返して開発を進め、アプリが完成したらサブミット、めでたくリリースという流れになると思います。 場合によってはこうした開発の所々をサポートするツールを使うこともあるでしょう。クックパッドでもいくつかのツールを使っていますし、場合によっては自作することもあります。 ツールを導入することで解決できることであればそれでよいですが、もうちょっと気の効いたことをして欲しい、リリースフローなど自分たちのアプリ開発の進め方の都合で発生する繰り返しタスクを省力化できないか、というような比較的小さな問題を
概要 メモリリークやデッドロックなどの問題を解析する方法はインターネットにたくさん公開されています。しかし、解析の対象となる問題自体は、いつ、どのようなものが目の前に現れるか分からないので、実際に問題に直面するまでに、体系的に解析の方法を習得し、実践しておくのはなかなか難しいことではないかと思います。 そこで、実践形式で学習ができるように、問題を意図的に再現可能なバグだらけのWebアプリケーションを開発し、Qiitaにもそれに関する情報を公開してみました。このWebアプリケーションは、コマンド1つでビルドや起動ができるとても手軽なものなので、実験や教育の目的でも活用できると思います。 このWebアプリケーションを使って、これからいろいろな問題(バグ)とそれを解析する方法を少しずつ紹介していきたいと思います。 ということで、第1回目に紹介するバグは、Javaのスレッドのデッドロックです。 デ
プログラマとして身に着けるべきスキルはたくさんありますが、中には、ソフトウェアエンジニアリングの標準カリキュラムに組み込まれていないものもあります。そうしたスキルは少しずつ自然に、あるいは経験豊富な人と一緒に仕事をする中で学ぶ必要があります。1つDavid MacIverが取り上げているのは、 値の型を追跡するスキル です。 他には、コード中のオブジェクト所有権を理解するスキルも必要です。つまり、コードのどの部分がメモリ内の特定オブジェクトを所有し、それがどんなアクセスを予期しているかを知るということです。 その理解なしにコードを書くと、プログラムがクラッシュしたり厄介なバグに悩まされたりすることになるかもしれません。さらに悪いことに、プログラミング言語の中には、この問題に役立つ手段さえ提供してくれないものもあるでしょう。 自然に身に付ける これは、私がこのスキルを学んだ方法です。私は大学
GCCで標準で定義されているマクロ(predefined macros)を確認する方法のメモ TL;DR 以下で確認できます。(g++でも同様です) $ gcc -dM -E - < /dev/null | sort #define __amd64 1 #define __amd64__ 1 #define __ATOMIC_ACQ_REL 4 #define __ATOMIC_ACQUIRE 2 #define __ATOMIC_CONSUME 1 #define __ATOMIC_HLE_ACQUIRE 65536 #define __ATOMIC_HLE_RELEASE 131072 #define __ATOMIC_RELAXED 0 #define __ATOMIC_RELEASE 3 #define __ATOMIC_SEQ_CST 5 #define __BIGGEST_AL
達人プログラマーを熟読中、今まで考えないようにしていた計算量の見積もりが出てきたのでメモ 規模のスケールでそのアルゴリズムのパフォーマンスはどう変化するか? データを200万回追加しました。 毎日1000件データが増えます。 サービスは2019年の3月までがサポート予定です。 などなど、処理の内容は変わらないが、処理対象の規模が変動するのが一般的だと思う。 プログラマーなら現在のシステムの処理速度がどのように変化するか?という点を常に意識したい。 単純なループ 基本は1からnまでの繰り返し 具体例としては、 順次検索 配列の最大値取得 チェックサムの生成 forループの中でSQLを実行する(ぐるぐる系) テーブルのフルスキャン 等 データの量に応じて処理時間は比例の関係にある。 ネストしたループ
Linux From Scratch(LFS)開発チームは2月25日、カスタムLinuxを構築するためのドキュメンテーション「Linux From Scratch 8.0」および「Beyond Linux From Scratch 8.0」をリリースした。標準版とsystemd版の2種類が用意されている。 Linux From Scratch(LFS)はソースコードからカスタムなLinuxシステムを構築するために必要な作業を段階ごとに記したドキュメント。また、それ以外にも完成したLFSインストールをよりカスタマイズしたシステムにするための作業を記した「Beyond Linux From Scratch(BLFS)」や「Automated Linux From Scratch(ALFS)」、「Cross Linux From Scratch(CLFS)」といったドキュメントや、各種支援ツール
はじめに パトリシア木を使ってHTTPルーティングすると早いって聞いたので、 こんな感じかなと思ってGoで実装してみました 要件 まず、下記のようなパスのパターンをルーティングするとします GET /users GET /users/:name GET /users/taro/man GET /users/hanako/woman GET /users/akira/:sex GET /users/:name/:sex GET /users/:name/woman パスのパターンとして二種類あって、パラム付きは : と * の二種類をメタ文字として扱います まあよくあるやつです 静的パターン /users/taro/man パラム付きパターン /users/:name/woman 優先度は 静的 → : → * とします 実装 で、考えた結果こんな感じの木になりました オレンジは終端ノードで
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く