blog.petitviolet.net

icon
Written by petitviolet
Implement SSTable to learn Rust and for fun
Recently, I’ve been learning Rust. Then, I started implementing sorted string table in Rust in order to learn Rust deeply and also understand SSTable architecture, which is used by underlying storage…
Reading note of a paper of Google's Spanner which is a well-known globally distributed database
This post is my reading note for the paper of Spanner. Distributed SQL database and also NewSQL are a kind of trends in our industry. I think that Spanner, Google’s globally-distributed database, is…
How to use YugabyteDB as a backend storage of Ruby on Rails application.
YugabyteDB is “The Leading High-Performance Distributed SQL Database”. https://www.yugabyte.com/ It has been developed as an open source and called Distributed SQL. YugabyteDB is a Distributed SQL…
Build a tiny compiler for a toy programming language in Ruby
As a software engineer’s habit, I’ve implemented a toy programming language in Ruby for my learning. GitHub repository is petitviolet/9cc-ruby. What it looks like Almost basic syntax is supported, and…
Reading note of Presto the Definitive Guide, architecture ovewview, terminologies
A book about Presto, “Presto: The Definitive Guide” has been published by Starburst. We can get PDF for free from here O’Reilly Presto Guide Download – Starburst Data The book covers a broader themes…
Build an API for oEmbed expansion of blog posts powered by Gatsby
Previously, I wrote a post about that this blog has a capability to expand oEmbed articles using raae/gatsby-remark-oembed. As it is embed here, this blog is also able to expand self posts as well…
Getting started ksqlDB, and how it works
Recently, I’ve listened a couple of podcast episodes about ksqlDB. kSQLDB: Kafka Streaming Interface with Michael Drogalis - Software Engineering Daily Easier Stream Processing On Kafka With ksqlDB…
How to write app.yaml to specify 404 in static file hosting
tl;dr Use for not 404, and wildcard routing for 404 to handle the other paths. . Routing in GAE To set routing rules in GoogleAppEngine(GAE), it needs to write app.yaml with following the format app…
Introduction of Circuit Breaker and RCB gem I developed
I’ve developed a circuit breaker in Ruby, and published it as gem in RubyGems.org. GitHub: petitviolet/rcb RubyGems: rcb What is CircuitBreaker? CircuitBreaker is a well-known pattern to make…
Quick overview of pattern match in Ruby and Gems to empower it
Ruby2.7 provides Pattern Matching feature as an experimental one. https://www.ruby-lang.org/en/news/2019/12/25/ruby-2-7-0-released/ I used to do pattern matching in Scala, so I’m excited to be able to…
Download my contents and tranform into Gatsby style
Qiita began to provide a feature to show what types of articles I write and +1. At that time, made it public even what I read. ユーザーページをリニューアルしました - Qiita Blog I’d like not to make my browsing…
Schedule a pulishing of new blog entry using GitHub Action
When I write a new blog entry, I’d like to schedule its publishing, since usually write it at night and it’s not a good time to make it open. As I write the last post, this blog is running on GAE and…
Deploy automation using GitHub Actions.
This blog(https://blog.petitviolet.net) is hosted by Google AppEngine. GAE is useful not only for dynamic WEB applications but also for static sites. To deploy application and site to GAE, it just…
oEmbed expansion in Gatsby
oEmbed oEmbed is a format for allowing an embedded representation of a URL on third party sites. The simple API allows a website to display embedded content (such as photos or videos) when a user…
New Blog using Gatsby
Created a new blog using GatsbyJS and gatsby-starter-blog. The end of the fiscal year is good time to build something new. 1 year ago, I renewed my portfolio as well using Gatsby. So far, I used…
これはなに?本記事ではKubernetesにおけるPodという形でアプリケーショ
これはなに? 本記事では Kubernetes における Pod という形でアプリケーションを起動する際、どのように初期化処理を実行できるのかについて取り上げる。 なお終了処理は触れない。 lifecycle.postStart を使う を利用すればライフサイクルにおける”起動”直後に何かしら処理を差し込むことが可能。 これは Pod の起動、ENTRYPOINT や CMD…
Scalaプログラマの観点からGraalVMを紹介、使ってみる。GraalVM?
Scala プログラマの観点からGraalVMを紹介、使ってみる。 GraalVM? GraalVMは、思い切り雑に紹介すると Scala(Java)プログラムを高速化することが出来る(ことがある)らしい。 このあたりを読むともう少し詳しく書いてある。 https://www.graalvm.org/docs/why-graal/#for-java-programs…
GraphQLなAPIを実装するにあたって、認証をどうするか。-GraphQL内
GraphQL な API を実装するにあたって、認証をどうするか。 GraphQL 内部で認証する GraphQL の外で認証する 認証とスキーマ 参考: A guide to authentication in GraphQL – Apollo GraphQL Learn SangriaのAuthentication and Authorisationセクション Scala で Sangria…
sangria-graphql/sangriaを使ってGraphQLなAPIを実
sangria-graphql/sangriaを使って GraphQL な API を実装する時に interface をどうやって使うか、という話。 interface 自体は特に難しい話ではないが、地味に動かなくて困ったので残しておく。 まとめ interface の実装自体はを使うだけ にを与えるだけだと Scheme がエラーになる 解決策として あるいはでその interface…
Scala用GraphQLフレームワークのsangriaでUpdateCtxを使
Scala 用 GraphQL フレームワークのsangriaでを使って認証処理を実装する。 使い方に注意点がいくつかあるが、まずは普通に動かすための方法について。 UpdateCtx を使って実装する 認証処理に関するドキュメントはLearn SangriaのAuthentication and Authorisationセクションにあり、「Resolve-Based Auth…
この記事は何タイトル通り。kubernetes上でコンテナなWebアプリを動かす
この記事は何 タイトル通り。 kubernetes 上でコンテナな Web アプリを動かす時に必要になってくるヘルスチェックや起動時のデータ読み込みをどうやって設定するか。 ドキュメントはこの辺り。 Configure Liveness and Readiness Probes | Kubernetes コンテナのヘルスチェックには 2 種類あり、liveness と readiness…
まとめnginx.confなどの設定ファイルをkubernetesのConfig
まとめ nginx.conf などの設定ファイルを kubernetes の ConfigMap で記述し、Volume としてマウントすることが出来る。 ドキュメントはこの辺り。 Configure a Pod to Use a ConfigMap | Kubernetes Volumes | Kubernetes 実際の yaml ファイルはGistにある。 何が課題か kubernetes…
タイトル通り。minikubeでローカルにkubenetesクラスタを構築してみ
タイトル通り。 minikubeでローカルに kubenetes クラスタを構築してみる。 インストール Homebrew-Cask で簡単にインストール出来る。 事前準備 して minikube を起動する。 そして、で認識されることを確認する。 minikube が docker を内包している形になっているので、環境変数もろもろを書き換える。 ローカルの docker と minikube…
この記事はなに?ScalaでgRPCなアプリケーションを作るためのやりかた。具体
この記事はなに? Scala で gRPC なアプリケーションを作るためのやりかた。 具体的には 4 つの通信方式、 unary server straming client streaming bidirectional streaming それぞれについてサーバ/クライアントを Scala で実装する。 参考 gRPC | Scala での Protocol Buffer scala…
この記事はなにタイトル通り。主にsbt-native-packagerのとりあえ
この記事はなに タイトル通り。 主に sbt-native-packager のとりあえずの使い方紹介。 Akka-HTTP で Web アプリを実装し、sbt-native-packager を使って Docker イメージを作成、localhost で稼働させて HTTP リクエストを受け付けられるようにするまで。 環境 Scala 2.12.4 sbt 1.0.4 Akka-HTTP 1…
この記事はなにSangriaでGraphQLなAPIを実装するにあたって、公式の
この記事はなに Sangriaで GraphQL な API を実装するにあたって、公式のサンプルだけだと少し足りないためそれの補足というか tips 的な記事。 Sangria の導入にはこちらをどうぞ。 [Scala]Sangria を使って GraphQL API を実装する - Qiita 複数のモデルにアクセスしたい Ctx と Val についての補足にも少し書いたが、sangria…
この記事はなに?ScalaでGraphQLサーバを実装するためのsangria/
この記事はなに? Scala で GraphQL サーバを実装するためのsangria/sangriaの導入。 公式ドキュメントおよびLarning Sangriaを読むのが一番速い。 さらに公式がサンプルも用意しているので、そちらを参照するのが良い。 sangria-graphql/sangria-akka-http-example…
GoogleAppEngineStandardEnvironmentforJav
Google AppEngine Standard Environment for Java8 に乗せたアプリケーションで非同期処理しつつログ出力すると、 ログがリクエストに正しく紐付かずに別のリクエストのログとして出力されてしまう、という細かすぎて伝わらない問題と戦った話です。 なお言語は Scala で、Skinny Microを使用。 まとめ まず結論。 GAE…
この記事はなにPropertyBasedTestingは何となく難しくて普通のア
この記事はなに Property Based Testing は何となく難しくて普通のアプリケーション開発におけるテストコードには使用しないイメージかも知れないが、単にテストデータ自動生成器くらいに捉えてカジュアルに使ってみてはいかがでしょうか?という紹介です。 言語には Scala を用いますが、他言語でも探せばライブラリやフレームワークは見つかると思います。 UnitTest…
この記事は何?scalazのTaskを使う上で知っておきたいtipsとか注意点と
この記事は何? scalaz の Task を使う上で知っておきたい tips とか注意点とか。 以前、こういう記事を書いた。 [Scala]scalaz の Task は何が嬉しいのか - Qiita Scala の Future と同じようなこと出来る + 便利な API…
Task?scalaz/scalazにあるクラス。[scalaz/Task.sc
Task? scalaz/scalazにあるクラス。 scalaz/Task.scala これはscalaz/Future.scalaを wrap したクラスとなっている。 Future? と同じく非同期処理を表現するクラスになっているが、 違いとしてはやにを必要とせず新しいタスクを生成しないようになっている点。 これによってスレッドの再利用性が向上しているとのこと。 こんな感じ。 monadic…
この記事はなに?caseclassを使いながらコンストラクタを隠蔽してファクトリ
この記事はなに? case class を使いながらコンストラクタを隠蔽してファクトリー経由で生成するように強制したい。 ここでいう”コンストラクタ”はで生成する通常コンストラクタに加えて case class で自動生成されるも対象としている。 まとめ を使う こちらのコメントをご参照下さい(@aoiroaoino さんありがとうございます) きっちり隠蔽したければ case class…
こんな感じsleep3;echoの結果を最大5秒間キャッシュしている様子。![c
こんな感じ の結果を最大 5 秒間キャッシュしている様子。 cache-ttl-on-sh.gif キャッシュの実装 実装はこのあたりに置いてある。 TTL 付きのキャッシュを実装するにあたり、シェルで実現するならファイルに保存しておいて、作成日時はそのファイルのメタ情報を利用すれば楽。 また、やろうと思えば更新日時と作成日時がどちらも取れるので、細かい TTL…
社内勉強会の資料をちょっと改変したやつ。メタプロ&scala.metaの入門編。
社内勉強会の資料をちょっと改変したやつ。 メタプロ & scala.meta の入門編。 メタプログラミングとは プログラミング技法の一種で、ロジックを直接コーディングするのではなく、あるパターンをもったロジックを生成する高位ロジックによってプログラミングを行う方法、またその高位ロジックを定義する方法のこと。 メタプログラミング - wikipedia…
tl;dr直接、annotationclassの型パラメータやコンストラクタには
tl;dr 直接、annotation class の型パラメータやコンストラクタにはアクセス出来ない。 その代わりに、を用いてパターンマッチで取得することが出来る。 題材 mix-in injection とか minimal cake pattern と呼ばれる、DI 対象となる class を mix-in する macro annotation…
scalametaはinlinemacroと呼ばれるmacroannotatio
scalameta は inline macro と呼ばれる macro annotation のためのツールキット。 型安全に macro 出来る。 公式とチュートリアルは以下。 scala.meta A Whirlwind Tour of scala.meta setup まずは使えるようにするために build.sbt に追記。 ちなみにAmmonite-REPL…
とりあえず使えるようにするAkka-PersistenceでKryoをとりあえず
とりあえず使えるようにする Akka-Persistence で Kryo をとりあえず使えるようにする設定については以前書いた。 Akka-Persistence コトハジメ#serializer として kryo を使う serializer 選択について Akka-Persistence ので永続化するメッセージは serialize…
実装してみる理由ReactiveSystemやMicroservices等の文脈
実装してみる理由 ReactiveSystem や Microservices 等の文脈で登場する CircuitBreaker について以前調べた。 [Akka]CircuitBreaker はどう動くのか - Qiita Akka の CircuitBreaker と Netflix の Hystrix の違い - Qiita CircuitBreaker は内部に, , の…
この記事はなに?マイクロサービス等の文脈で登場するCircuitBreaker。
この記事はなに? マイクロサービス等の文脈で登場するCircuitBreaker。 Scala で使えるものの代表(要出典)として以下の 2 つを比較する。 Circuit Breaker - Akka Documentation シンプルだが単機能 Netflix/Hystrix 高機能 ちなみに個人的な好みは Akka の方。 Scala…
CircuitBreakerとは原典にあたるのは[MartinFowler氏のp
CircuitBreaker とは 原典にあたるのはMartin Fowler 氏の postになるはず。 リモートへのリクエストが失敗した時にうまいこと障害が伝搬しないようにするためのデザイン。 昨今の Microservice…
Akka-Streamでアプリケーションを実装する場合、SourceとFlowと
Akka-Streamでアプリケーションを実装する場合、 Source と Flow と Sink を組み合わせてを構築し、して実行する。 本記事では Akka-Stream の部品のメインとなる Source, Flow, Sink を、 Akka-ActorおよびActorPublisher, ActorSubscriberを使う場合/使わない場合でシンプルに実装してみる。 Actor…
この資料はなに?Makeの良さを伝えるものです-CとかC++の持ち物じゃない-普
この資料はなに? Make の良さを伝えるものです C とか C++の持ち物じゃない 普段使うコマンドのショートカットみたいな 2016 年でも Makefile は便利 2016-10-19 19.11.07.png Make ってなに?Makefile??? make…
状態の保持/状態遷移に長けたFSMと、その状態/状態遷移を永続化する[Akka-
状態の保持/状態遷移に長けたFSMと、その状態/状態遷移を永続化するAkka-Persistentの組み合わせとしてPersistentFSMがある。 状態を持つ Actor でイベントを永続化したいケース(EventSourcing など)には強力な武器となる。 ただ、と同様に普通の Actor(PersistentActor…
Akka-Persistenceはstatefulなactorの内部状態
Akka-Persistenceは stateful な actor の内部状態を永続化することによって、生成時、再開時、migration 時などに状態を復旧することを可能とするもの。 内部状態に至るまでのイベント(メッセージ)を永続化しておくことで、そのイベントを再生すれば全く同じ状態を再現させることが出来るため、CQRS/ES の文脈で最近はよく出てきている(気がする)。 build.sbt…
有限オートマトン?FiniteStateMachine(FSM)ざっくり言うとイ
有限オートマトン? Finite State Machine(FSM) ざっくり言うとイベントを受け取って状態遷移するステートマシン。 詳しくはWikipedia参照 FSM を Actor で実装する まさにそのためのがあるので、これを使って実装する。 FSM に必要な型を定義する 必要となるのは以下の 3 つの型 FSM の状態 FSM が内部的に持つ情報 FSM…
Akka-HTTPで公式にサポートされているJSONライブラリのspray-js
Akka-HTTP で公式にサポートされている JSON ライブラリのspray-jsonの使い方。 JSON Support — Akka Documentation Akka-HTTP と一緒に使いたいので、Marshaller/Unmarshaller として使用法も載せる。 tl;dr クラスのフィールドに独自の型を使わない場合 or 独自の型に対応させて json…
akka.http.scaladslパッケージをimportすることで使えるよう
パッケージを import することで使えるようになる DSL が、 裏側でどのように実装されているか気になったので調べた。 題材 akka-http において、単純なルーティングについて考えてみる。 に GET リクエストを送ると期待通りにと返ってくる。 implicit conversion を明示する このがたるために、implicit conversion…
httpリクエスト/レスポンスでやり取りするStringな値をアプリケーションが
http リクエスト/レスポンスでやり取りする String な値をアプリケーションが期待する Scala の型に変換する方法について。 リクエストを型で縛る ユーザーからのリクエストをなるべくとして触らないようにする。 URL パラメータ 以下のルーティングを考える。 URL…
MonadicでReactiveだと言われているSlick3.xを使ってみる。本
Monadic で Reactive だと言われている Slick3.x を使ってみる。 本記事時点での最新はは 3.1.1 となっている。 公式のサンプルだと h2 を使っていたが、今回はローカルに立てた MySQL を使用する。 Getting Started — Slick 3.1.1 documentation 準備 事前にテーブルを作っておく 導入 build.sbt に slick…
ここでの静的ダックタイピングはScalaの構造的部分型(StructuralTy
ここでの静的ダックタイピングは Scala の構造的部分型(Structural Typing)を用いて実現されるものを指しています。 構造的部分型については以下が参考になるかと思います。 構造的部分型について - Qiita Scala School - Advanced types Structural typing - Effective Scala tl;dr…
ちょっとでもJava7なAndroidを気持ちよくプログラミングしたい、Java
ちょっとでも Java7 な Android を気持ちよくプログラミングしたい、 Java っぽい(?)ところがありつつもモダンなパラダイムが取り入れられている Scala が羨ましく見えたので、Scala っぽく書きたいという意志から書いています サンプルコードでは紙面の都合上、retrolambda で lambda 式使っています Scala…
やり方read.returnを使って型を指定すれば良い haskellPrelu
やり方 を使って型を指定すれば良い の場合には以下のようにしてあげれば良い ちょっと詳しく 大事なのはこの型指定 をリスト(モナド)への変換操作として用いており、 さらにの返り値としてを同時に指定している 分解するとこうなる 当然リスト以外を使うことも出来て、 例えば文字列をに変換したければを使って以下のように書ける 使えるシーン Problem 8 - Project Euler from…
元の解説はこちら[objectivec-"sending'constNSStr
元の解説はこちら objective c - “sending ‘const NSString _’ to parameter of type ‘NSString _’ discards qualifiers” warning - Stack Overflow 起こったこと 以下のように constant な文字列を定義したとき、discards qulifiers…
最近知ったAssertJというテストライブラリを使ってみた[AssertJ/Fl
最近知った AssertJ というテストライブラリを使ってみた AssertJ / Fluent assertions for java Fluent assertions とあるように流れるような assertion が出来ると聞いてちょっと気になった AssertJ の導入 gradle の設定 AssertJ / Fluent assertions for java…
流行りのh2o/h2oをインストールして動かしてみたApacheがすでに動いてい
流行りのh2o/h2oをインストールして動かしてみた Apache がすでに動いていてその上で PHP とか uwsgi とか動いていたので、今回はリバースプロキシとして導入することにした 環境 さくら VPS インストール Install - H2O…
RxJavaのAndroidバインディングであるRxAndroidを使い始めてB
RxJava の Android バインディングであるRxAndroidを使い始めて Backpressure ではまったので整理 retrolambdaで lambda 式使っていますが、使っていなければ適宜するコードに置き換えてください Backpressure Backpressure · ReactiveX/RxJava Wiki 通信処理に RxJava…
OkHttpがサンプルとして用意している[AsynchronousGet](ht
OkHttp がサンプルとして用意しているAsynchronous Getレシピのように、OkHttp をバックグラウンド通信に使用した時、クラスのとはどちらもバックグラウンドで実行される Android で OkHttp…
新し目のバージョンのAndroidにしか無いViewを使いたいが、xmlをバージ
新し目のバージョンの Android にしか無い View を使いたいが、xml をバージョンで分けたりしたくない そこで、そういった View をラップする CustomView を作る 今回、ICS 以上で、それ以下でを使ったカメラを実装した リポジトリ https://github.com/petitviolet/MultiCamera…
Gradleを使ってAndroid開発しているとき、Gradleのtaskを選択
Gradle を使って Android 開発しているとき、Gradle の task を選択することが多く、以前書いた内容で TAB 補完は出来るようになった Android - Gradle を Zsh で補完する - Qiita 今回は、task を TAB 補完ではなく peco で選択出来るようにした gradle_comp.gif…
shfunctionpeco-tree-vim(){localSELECTED
オプションでフルパスを表示しつつオプションで罫線に使用する文字を変更して扱いやすくし、で選択した行にある罫線をで除去してで開く で起動して便利 vim-tree.gif from: https://qiita.com/petitviolet/items/7797c917691ca2933555
はじめにR-Tips見たら全部わかるデータの用意ファイルの読
はじめに R-Tips 見たら全部わかる データの用意 ファイルの読み込み の引数のにかのどちらを与えるかでヘッダーの扱いが変わる 要素へのアクセス ヘッダーにを与えているとでアクセスできる 統計情報 簡単なものでが便利 それぞれ : 最小値 : 第一四分位数 : 中央値 : 平均値 : 第三四分位数 : 最大値 第一四分位数は下から 1/…
rubyのguard/guardを使ってファイルの変更を監視して、裏で自動コンパ
ruby のguard/guardを使ってファイルの変更を監視して、 裏で自動コンパイルする 準備 まずをインストールする 以下の様な Gemfile を用意する そして でなどをインストールする 参考: Guard でファイル変更を監視して作業を自動化する | Tech-Sketch ファイルの監視およびコンパイルの設定 まずの初期設定をする すると Guardfile…
この記事はVimAdventCalendar2014-Qiita22日目の記事で
この記事はVim Advent Calendar 2014 - Qiita 22 日目の記事です 21 日目の記事は @mitsuse さんの非英語ネイティブでも Vim で快適に英語を書きたいでした Vim アドベントカレンダーですが、ちょっと趣向を変えてVimperatorという、(常に vim キーバインドが良い && キーボードから手を離したくない人)に便利なFirefox…
内容-shellでのバックグラウンド処理 -ジョブ制御フラグ-メタ文字による標準
内容 shell でのバックグラウンド処理 - ジョブ制御フラグ メタ文字による標準出力の管理 Android - Gradle を Zsh で補完する - Qiitaという記事を書いた時に なお、初回のみタスクの読み込みに時間がかかるが、2 回目以降はファイルキャッシュを読み込むため比較的速くなる と書いたが、初回の読み込み時の長さが気になるので読み込み中である indicator…
QiitaAPIv2のPythonラッパーがなかったので作りました-Github
Qiita API v2 の Python ラッパーがなかったので作りました Github: petitviolet/qiita_py Pypi: qiita_v2 0.1.0 : Python Package Index テストとかで適当に書いてるのしか無いので、バージョンはとしています インストール Pypi…
快適なAndroid(Studio)ライフを送りたい内容ZshでもGradleコ
快適な Android(Studio)ライフを送りたい 内容 Zsh でも Gradle コマンドを補完出来るようにした gradle_zsh_complete.gif 参考 zsh 補完関数を自作すると便利 - はこべブログ ♨ 動機 Android 開発を爆速にする 10 のコマンドラインスクリプト - クックパッド開発者ブログ この記事で Gradle…
AndroidでJsonを扱うライブラリとして有名なGsonですが、Progua
Android で Json を扱うライブラリとして有名な Gson ですが、 Proguard を有効にしたビルドだと問題が発生します 問題 普通だと でをクラスに変換出来るはずです しかし Proguard を有効にしてあると、クラスのフィールド名が難読化されて例えばアルファベット 1 文字に変更されているため、 における json…
この記事はPythonAdventCalendar2014-Qiita2日目の記
この記事はPython Advent Calendar 2014 - Qiita 2 日目の記事です 前日は @kureikei さんのBlender 関連 でした 最近は golang でツールを作るのが流行っていますが、負けじと python ももっと盛り上がって欲しいですね ということで、コマンドラインツールを作る時に必要な引数・オプションパーサを紹介していきます コンテンツ Python…
-ActionBarメニューの表示/非表示を切り替える-Fragmentにメニュ
ActionBar メニューの表示/非表示を切り替える Fragment にメニューを表示させる ActionBar メニューの表示/非表示を切り替える 概要 な Activity の ActionBar にあるメニュー(options menu)について、 をしても消えてくれなかった options menu…
AndroidStudioでビルドした時に、com.android.dex.De
Android Studio でビルドした時に、 っていうが出て困った。 なんとか解決したので、メモ 参考 Building Apps with Over 65K Methods | Android Developers android - Unable to execute dex: method ID not in [0, 0xffff]: 65536 - Stack Overflow…
頑張って書いたJavaDocをAndroidStudioから生成する手順環境An
頑張って書いた JavaDoc を Android Studio から生成する手順 環境 Android Studio 0.8.6 jdk1.7.0_60.jdk 手順 メニューのTools -> Generate JavaDoc…を選択 スクリーンショット_2014-11-09_0_19_48.png JavaDoc を生成する Scope…
Fragment自身でActivityで言うところのfinish()を実行したい
自身でで言うところのを実行したい で出来た 追記 backstack がある場合は以下の方がいいでしょう from: https://qiita.com/petitviolet/items/9a8302d1f08fbde1fc65
まとめAnsibleでローカルのファイル/ディレクトリをリモートに持っていくため
まとめ Ansible でローカルのファイル/ディレクトリをリモートに持っていくためには ではなくモジュールを使えば良い と ansible directory copy - Google 検索すると、との 2 つのコマンドが出てくるkobito.1411812903.512220.png copy ファイルをコピーするためのコマンドっぽい document…
Flaskで普通にloggingをする場合、Flaskloggingexampl
Flask で普通に logging をする場合、Flask logging exampleのように、 のようにすれば簡単に出来る。 しかし、の外部ファイルから設定を読み込む やが使えない やると当然となる。 そのため、でコードでいちいち書かないとだめっぽく感じる。 しかし、はをラップしただけなので、する前にを呼べば設定は反映される。 設定ファイル 基本的にはやはりドキュメントを参照する yaml…
ざっくり概要-commonsguy/cwac-cameraというカメラ用のライブ
ざっくり概要 commonsguy/cwac-cameraというカメラ用のライブラリを使う Android で写真を撮る - 動作設定をする - 起動・撮影・保存する 撮影した写真をあとで使う - イベントバスのOttoを使う カメラの動作設定 基本的には cwac-camera/SimpleCameraHost.java をベースに手を加えれば良さそう。 SingleShotMode…
まとめheader関数を使っている関数などをテストする際には、テストを走らせる前
まとめ 関数を使っている関数などをテストする際には、テストを走らせる前に と書きましょう 問題 PHP でテストしようとして、何故かSimpleTest - Unit Testing for PHPを利用した テストを実行するとによるエラーが出た E_WARNING: Cannot modify header information - headers already sent by…
内容-Mac -homebrewを使ったインストール-CentOS -ソースから
内容 Mac - homebrew を使ったインストール CentOS - ソースからコンパイルしてインストール ドキュメント ここ読み込んだら幸せになれそう http://vim-jp.org/vimdoc-ja/ Mac に homebrew…
概要-日本語で検索-GETパラメータをキーワードとして検索-PDO使ってMySQ
概要 日本語で検索 GET パラメータをキーワードとして検索 PDO 使って MySQL に接続し、プレースホルダを使って SQL を構築する 可変長な AND(OR)検索 ポイント 日本語対策 をファイルの先頭に書く 今回は特に関係ないっぽいですが、とりあえず書いてます 作成の際にを指定する MySQL の設定を変更する こうなってたら動いた mysql> show variables like…
やりたいこと-zshでオリジナルな関数を実装したい-自作関数にも補完を効くように
やりたいこと zsh でオリジナルな関数を実装したい 自作関数にも補完を効くようにしたい ファイル一覧を表示させたい オプションも付けたい 参考 zsh の補完関数の自作導入編 自作関数 をにするだけのコマンド(もらいもの)に置き換えており、はに置き換えている 以前は としてあった これだとファイル一覧の候補や、などのが持つオプションをうまく使えなくて困っていた 結果 こんな感じ output…
tips-データベースエンジンの指定-複数カラムに対するユニーク制約-外部キー制
tips データベースエンジンの指定 複数カラムに対するユニーク制約 外部キー制約 NULL を許さない unsigned int(MySQL) 随時追加? バージョンは 0.9.4 です データベースエンジンの指定 で指定出来る ユニーク制約 単一カラムへは簡単だが、複数カラムにユニーク制約を貼るには を使用する必要がある なお、上の InnoDB…
参照http://stackoverflow.com/questions/451
参照 http://stackoverflow.com/questions/4513380/scala-match-help 問題 こんなコードがある ん???? 意味 パターンマッチを行う際にで、にマッチしたものをにバインドするということらしい つまり、上の例ではがにマッチするようなものだった場合に、がにバインドされる 他の例 参照 URLで出されている例そのままだが、リストに…
要約-GithubクローンのGitbucketの導入-ssh経由でGitbuck
要約 Github クローンのGitbucketの導入 ssh 経由で Gitbucket を利用する流れ Gitbucket の導入 ダウンロード tomcat のインストール wget http://ftp.kddilabs.jp/infosystem/apache/tomcat/tomcat-7/v7.0.53/bin/apache-tomcat-7.0.53.tar.gz tar zxvf…
sftpだとTAB補完が効かないので不便だったでもsshでファイル転送したかった
sftp だと TAB 補完が効かないので不便だった でも ssh でファイル転送したかった 使い方 これだけで補完の効く sftp になる sftp だとだったのがになったり、少しだけ違う だとワイルドカードが展開できないのでを使う で上書きを許可するにはと入力すれば OK でインクリメンタルサーチ出来たり見れたり便利 from: https://qiita.com/petitviolet…
Pythonでパッケージを作って、PyPIに登録した時の作業メモなお、今回はコマ
Python でパッケージを作って、PyPIに登録した時の作業メモ なお、今回はコマンドラインツールを作りました PyPI に登録することによってでインストール出来るようになります ディレクトリ構成 ファイル詳細 requirements.txt、src/init.py で作った空ファイルです README.md github用 src/hoge.py…
なにかライブラリが無いかと思ってcrawler4jに行き着きました。使用準備ht
なにかライブラリが無いかと思ってcrawler4jに行き着きました。 使用準備 http://code.google.com/p/crawler4j/ のサイドバーにあるDownloadsから crawler4j-3.5.zip と crawler4j-3.5-dependencies.zip をダウンロードする。 html のパースには jsoup…
これが正しい方法かどうかわかりませんが、アラームとして機能したのでメモAndro
これが正しい方法かどうかわかりませんが、アラームとして機能したのでメモ Android でアラームを鳴らすためには、 アラーム時に起動するサービスを PendingIntent を使って指定する 指定されたタイミングで起動したサービスから sendBroadcast を利用してレシーバーを起こす 起こされたレシーバーからアラーム時に起動する Activity を Intent…
既にインストールされているパッケージをアップデートしたいが、sudo権限がなく、
既にインストールされているパッケージをアップデートしたいが、sudo 権限がなく、 -I や—user だけでは permission エラーや ez_setup.py がない等で出来なかった。 手順 手元にダウンロードして解凍し、解凍後のディレクトリから pip で user 環境にインストールする ~/.local にインストールされるので、PATH を通しましょう。 from: https…
userテーブルとarticleテーブルがあり、articleテーブルにはuse
user テーブルと article テーブルがあり、article テーブルには userid という user.id を参照する外部キーを持っている。 そして、article.userid に on (delete|update) cascade…
Pythonの便利なマルチプロセスライブラリであるmultiprocessing
Python の便利なマルチプロセスライブラリである multiprocessing と SQLAlchemy を組み合わせて使用するサンプル プロセス間のデータのやり取りは Queue で行い、DB には SQLALchemy の session を使ってアクセスする 注意点 ここで scoped_session で Session を作成すると Could not locate column…
以前、OptParserの使い方として記事を書いたが、どうやらargparse.
以前、OptParser の使い方として記事を書いたが、どうやら argparse.ArgumentParser の方がなういらしい なので argparse.ArgumentParser の使い方のメモ optparse も argparse もそんなに変わらないと思う 細かな所が変わっているのと、argparse…
pythonのnetworkxを使ってグラフを作ってみたのでメモ py:make
= python の networkx を使ってグラフを作ってみたのでメモ ここで、networkx のバージョンが 1.5 以上でなければ日本語は表示できません。 おそらく、 ValueError: matplotlib display text must have all code points < 128 or use Unicode strings…
py!/usr/bin/envpython-*-coding:utf-8-*-
このファイルを –help オプションをつけて実行すると from: https://qiita.com/petitviolet/items/c2ba174a153bbdc5ad22
pythonで疎な文書ベクトルの類似度や距離を計算をするメモScipyで疎行列を
python で疎な文書ベクトルの類似度や距離を計算をするメモ Scipy で疎行列を使う際の基本的な操作について 書いたのが昔なので、どっか間違ってるかも from: https://qiita.com/petitviolet/items/545f49e3da2d50b95ed7