ブックマーク / qiita.com (197)

  • Spring boot2 + JPA + Kotlinで複数のデータベースに接続する - Qiita

    はじめに 実際のプロジェクトでは複数のデータベースに繋ぐことが多いと思うので、JPA使って複数のデータベースに繋ぐのをKotlinでやってみました。 環境 Kotlin Spring-boot 2.0.1.RELEASE Properties プロパティはデフォルトの値ではなく独自の値をマッピングするので、それを繋ぎたいだけ用意します。 今回は面倒というのもあり、ローカルに立てたpostgresに2つDatabaseを立ててそれに繋ぎたいと思います。 構成は testdb下にtestスキーマを作成してcorpテーブル postgres下にtestスキーマを作成してuserテーブル としました。 spring.datasource.testdb.driver-class-name=org.postgresql.Driver spring.datasource.testdb.url=jdbc:

    Spring boot2 + JPA + Kotlinで複数のデータベースに接続する - Qiita
    kojiro-s
    kojiro-s 2018/04/15
    複数DBに接続する設定
  • GitHub に AWS キーペアを上げると抜かれるってほんと???試してみよー! - Qiita

    🤔 前書き 稀によくある 、AWS を不正利用されちゃう話、 AWSで不正利用され80000ドルの請求が来た話 - Qiita 初心者がAWSでミスって不正利用されて$6,000請求、泣きそうになったお話。 - Qiita AWSが不正利用され300万円の請求が届いてから免除までの一部始終 - Qiita ブコメ等で GitHub にはアクセスキーを検索するBOTが常に動いていて、公開するとすぐに抜かれて不正利用される 的なコメントがつくのを何度か目にしたのですが、 当にそんな BOT が動いているの? どのくらいの時間でキーを抜かれて、不正利用が始まるの? というのが気になったので、検証してみました。 GitHub にそれっぽいパブリックリポジトリを作成、権限が一つもついてない AWS のアクセスキー&シークレットアクセスキーをうっかり公開、外部から利用されるまでの時間を計測します。

    GitHub に AWS キーペアを上げると抜かれるってほんと???試してみよー! - Qiita
    kojiro-s
    kojiro-s 2018/02/25
    噂には聞いていたが、危ないね
  • Pythonで投資アルゴリズムを開発してみる 1 - Qiita

    はじめに Smart Tradeという、株式投資Pythonで行うための、プラットフォームの使い方をメモ。 Smart Tradeとは Smart Tradeはエンジニアの皆さんに最先端の株式投資システムトレード環境を基無料でご提供します。開発したアルゴリズムはご自身のトレードに、またはSmart Tradeのマーケットプレイスで販売できる予定です。 まだβ版で使える機能も限定されていますが、いまはすべて無料で公開されています。将来的には、App Storeみたいになるのかな? 2018/1/11追記:開発者向け正式版URL https://quantx.io/developer なにができるの? 日中国の過去の株価データをPythonで分析することができます。売買しても良さそうなタイミングがあれば、Smart TradeのAPIを利用して注文することで、どのくらい利益が出たか、と

    Pythonで投資アルゴリズムを開発してみる 1 - Qiita
    kojiro-s
    kojiro-s 2018/02/04
    “Smart TradeのAPI” なんだろ、これ
  • Jupyter notebookで動的なグラフを表示する。(D3.jsのインライン表示) - Qiita

    Jupyterでデータを触っていて、可視化のためにグラフをインラインで表示したいことは多々あると思います。 多くの場合は %matplotlib inline で十分だと思います。 しかし、データが多すぎて読めないグラフが表示されたり、もっと綺麗な図で見たい場合もあると思います。 そこで、動的な綺麗なグラフをJupyterで出す方法をみつけたので試してみました。 まずはデモを見てください。 ↓移動や拡大縮小ができる分散図 ↓Twitterのフォローした人と自分を結んだグラフ図 具体的にはD3.js(https://d3js.org/ )というデータの可視化に特化したJavaScriptのライブラリを使った結果をJupyterにインライン表示します。 まず、jupyterを動かしている環境にpy_d3というエクステンションを入れます。(https://github.com/ResidentM

    Jupyter notebookで動的なグラフを表示する。(D3.jsのインライン表示) - Qiita
    kojiro-s
    kojiro-s 2018/02/04
    ノードグラフ作ってみたいので参考にする
  • Jupyter事始め - Qiita

    はじめに Jupyter初心者なので、AWS EC2上の環境構築方法、簡単な使い方を半年後の自分用にチラシの裏しておきます。 細かい設定はさておき、手っ取り早くEC2上にJupyter環境を構築し、Jupyter上で簡単なPython scriptを動かして、JupyterのUI操作方法の初歩を覚える所までを目標とします。Linux戦闘力が低いので、極力コピペで手順がなぞれる様に心がけます。 なお、Amazon EMRを使ってSpark Cluster上にJupyterを作りたい場合にはこちらを参照下さい。また、Jupyter Notebookは次期VersionよりJuypter Labとなり大きくUI/機能が変わる予定です。Jupyter Labの環境構築方法はこちらを参照下さい。 Jupyter環境構築 まずは、Jupyter環境を構築する手順です。 EC2の作成 Jupyterを動

    Jupyter事始め - Qiita
    kojiro-s
    kojiro-s 2018/02/04
    ジュピター使ってみたいね
  • チーム力向上のためのエトセトラ - Qiita

    この半年間、久しぶりに開発チームのマネージャ的な立場もやることになったので、「ふつうの受託開発チームのつくりかた」以来、工夫したことをまとめておきます。「ふつうの受託開発チームのつくりかた」未見のかたはぜひそちらも見てみてください! チームに名前を付ける 私の受け持つチームは伝統的に「ラスカル」の名を付けるようにし、チームのアイデンティティを保つようにしています。チームメンバも当は出来るだけ長く担当してもらいたいのですが、大きなSIerだとそれが難しいこともあります。 通常のプロジェクトチームだと、サブシステム名くらいで呼ばれることでしょう。これは、そのプロジェクトが終わったらチームも終わり、で帰る場所も無くなることを意味しますし、愛着をもって働くことは難しくなります。 メンバが多少入れ替わっても、チームは継続する"モーニング娘。方式"であれば、またいつか戻ってくることもできるし、OBと

    チーム力向上のためのエトセトラ - Qiita
    kojiro-s
    kojiro-s 2018/01/25
    参考になることがちらほら
  • AnsibleやServerspecより使いやすいサーバ構築・テストツールを作る[FastHandle] - Qiita

    2021年3月、FastHnadle2として、作り直しました。 https://github.com/kuritaka/fasthandle2 Python Fabricを使うのではなく、fhコマンドを自作しています。 FastHandleとは FastHandleは、サーバ構築、サーバテストのオペレーションをサポートするツールです。 サーバ構築をより早く、より正確にすることを目指して作っています。 自動化のために、Fabricコマンド、Expectコマンドなどを利用しています。 現状、こんな感じにしようという枠組みはできましたが、まだまだ作成途中です。動かないこともあると思いますが、少しずつ増やして、テストをしていきます。(2018/01/11) 今はLinuxサーバ向けですが、Windowsサーバも検討していきたいと考えています。(2018/01/11) WindowsやVMwareや

    AnsibleやServerspecより使いやすいサーバ構築・テストツールを作る[FastHandle] - Qiita
    kojiro-s
    kojiro-s 2018/01/12
    “FastHandleは、サーバ構築、サーバテストのオペレーションをサポートするツールです。”
  • 2018 年は Hyperapp の年だ - Qiita

    この投稿は Increments Advent Calendar 2017 の14日目の記事だよ。Hyperapp という JavaScript ビューライブラリを自作しているので、その説明と作った理由について話す。 Hyperapp ができるまでのプロセスや、どんな価値観で作ったかなどを書く。新しいフレームワークを作る時の参考になれば嬉しい。 Hyperapp とは? Web アプリのフロントエンドJavaScript ライブラリ。React, Preact, Vue といった代表的なものよりもずっと小さく、1 KB という超軽量サイズ。他のライブラリに依存することなく使えて、さらにスピードもある Elmアーキテクチャーに基づいてて、アプリケーション設計はElmReact、Reduxと似てるけど、ボイラープレートは少ないし、TypeScriptにも対応して、とにかくシンプル。 El

    2018 年は Hyperapp の年だ - Qiita
    kojiro-s
    kojiro-s 2017/12/28
    hyper app
  • Electronアプリをリリースするまでにあった知見 - Qiita

    はじめに こんにちは、@tsuwatchです。普段はRubyを書くのですが、仕事の幅も広がりつつあり、フロントエンド格的にやっていこうということで、 Kaizokuというニコニコ生放送のデスクトップアプリをリリースしました。 人生の大半の時間がニコ生に溶けているわけですが、かねてからコメントビューワを作ろうと思っていたので、この機会に作ってみました。 しかし、Mac版のコメントビューワにはHakumaiという大変素晴らしいコメントビューワが存在するので、少し違う方向を向いた生放送ビューワをかねたアプリにしました。 Hakumaiはコメントビューワとしては数少ないオープンソースなので、実装やコメントサーバの仕様など大変参考にさせて頂きました。この場をお借りして、お礼を申し上げます。 アプリの機能や今後についての紹介はまた別途ブログで書くと思います。 ご興味がありましたら、ぜひ使ってみてい

    Electronアプリをリリースするまでにあった知見 - Qiita
    kojiro-s
    kojiro-s 2017/12/17
    えれくとろん
  • Webアプリケーションフレームワーク導入時に考慮すべき22の観点 - Qiita

    記事では、 チームによる持続的に変更可能なWebアプリケーションの開発を目標に、フレームワーク導入時に考慮すべき22の観点を紹介する。 フレームワークによって特徴は異なるが、番導入にあたって、考慮すべきポイントはあまり変わらないので、極力フレームワーク1に依存しすぎないよう配慮する。また、話をシンプルにするため、REST APIを提供するアプリケーションを題材とする。 前提 ソフトウェアのエントロピー ソフトウェアがエントロピー増大の法則を避けられないことを、体感している開発者は多いだろう2。普通にアプリケーション開発を続けると、開発スピードは鈍化し、品質は低下してバグが増え、開発者からは技術的負債への怨嗟の声が聞かれるようになる。エントロピー増大というフォースは極めて強力で、意思を持って立ち向かわなければ、容易にダークサイドに堕ちてしまう。 関心事の分離 大規模Webアプリケーション

    Webアプリケーションフレームワーク導入時に考慮すべき22の観点 - Qiita
    kojiro-s
    kojiro-s 2017/12/17
    いい観点
  • [React Native事始め完全版]「いきなりデート」のアプリをReact Nativeで開発した知見をまとめます。 - Qiita

    [React Native入門完全版]「いきなりデート」のアプリをReact Nativeで開発した知見をまとめます。 この記事で説明する事 React Native採用に係る意思決定の話 atom + eslint + flowによるIDE風開発環境 line by lineによるプロジェクト作成方法とリリース方法 デバッグ方法やtips集、補助ツールの使い方 React Nativeとは Facebookがオープソースとして開発するReact.jsの思想の一つである「Learn once, Write everywhere」(元ネタはもちろんJavaのWrite once, Run anywhere)を体現した、Facebookが開発主体となるプロジェクトの一つで、要はJavascriptReactフレームワーク1つでモバイルアプリ(iosとAndroid)を作れる、といった代物です

    [React Native事始め完全版]「いきなりデート」のアプリをReact Nativeで開発した知見をまとめます。 - Qiita
    kojiro-s
    kojiro-s 2017/11/25
    react
  • のび太と学ぶ「機械学習」~FX予測プログラムを作成~【第1話】if文作戦 - Qiita

    シリーズでは、「FXの予想プログラム」を作りながら、機械学習・ディープラーニングを解説します。 (注)のび太くんは有名漫画のキャラとは一切関係ありません。 あらすじ 「のび太と機械学習」は、20歳の大学生、のび太くんが主人公です。 大学生のび太くんは、お小遣い欲しさにFXに興味を持ちます。 そんなのび太くんに、家庭教師のすぐるさんが、機械学習を解説し、FX予測プログラムを一緒に作ります。 残念なことに、FX予測プログラムは、ちょっとしか儲かりませんでした。 ・ ・ ・ のび太くんはその後、学んだ機械学習を生かして、D-mind社を起業し、汎用人工知能を作り上げます。 高齢になったのび太くんは、D-mind社をTMR社に売却し、TMR社の工場で22世紀、汎用人工知能搭載型ロボットが誕生します。 この物語は、そんな汎用人工知能搭載型ロボット誕生につながる、のび太くんの機械学習・勉強記録です。

    のび太と学ぶ「機械学習」~FX予測プログラムを作成~【第1話】if文作戦 - Qiita
    kojiro-s
    kojiro-s 2017/11/15
    面白く読めた
  • イマドキWebフロントエンド環境とReactを触りながらサンプルを10本書いてみた

    はじめに Webフロントエンドの知識がjQueryで知識が止まっていたので、モダンなWebフロントエンドに触れてみた。そのメモ。 良かった点 「今はこうなっているのかー」と分かった。今後はナウい記事を読んでもビビらないと思う。 Reactのすごさ 触ってみて下の記事のいうことが理解できた。何がすごいの?と聞かれたら下の記事を掻い摘んで説明したい。 Reactを使うとなぜjQueryが要らなくなるのか 触ってみたもの ES6 Yarn Webpack Babel Sass/SCSS React とりあえずエディタ開いてHTMLを書くぞというタイプの人間だったので、フロントエンド開発にまずはコマンドラインを打って環境を構築する点が新鮮。自動化できるところはツールで共通化してラクできるところはラクをする、というのは分かった。Reactは使うか分からないが、Webpack/Babel/SCSSは絶

    イマドキWebフロントエンド環境とReactを触りながらサンプルを10本書いてみた
    kojiro-s
    kojiro-s 2017/11/12
    react 興味出てきた
  • ウェブアプリをソースごとパクる業者に対する対策 - Qiita

    こんにちは。みなさんもウェブアプリをリリースしたあとに同業者にソースごとパクられたことってありますよね。難読化しても難読化されたまま同業者のサーバで動くので困ったものです。そこで、私がとった解析しずらい対策をまとめてみたいと思います。 前提 多機能な画面をJavaScriptでゴリゴリ作ったのにもかかわらず、HTMLCSSJavaScriptファイル一式を自社サーバにまるごとコピーして、ライセンス表記だけ書き換えて使うような業者を罠にはめるということを想定しています。 当然通信をリバースエンジニアリングする人もいるので、自社サーバでは防げないという前提です。 HTMLにはauthorメタタグ よくあるMETAタグで権利者を明記します。これは権利の主張もそうですが、JavaScript自体に権利者が認定した権利者でなければ無限ループを起こすという処理のためにも使用します。逆に、権利者が我

    ウェブアプリをソースごとパクる業者に対する対策 - Qiita
    kojiro-s
    kojiro-s 2017/11/12
    ウェブアプリのコードは隠蔽できないから、このような対策が必要なんですね
  • 子供の公文式学習を Google Assistant で見守る。【Raspberry Pi / AIY Projects: Do-it-yourself AI】 - Qiita

    子供の公文式学習を Google Assistant で見守る。【Raspberry Pi / AIY Projects: Do-it-yourself AI】RaspberryPiWioNodeGoogleAssistantgooglecloud 娘達(双子・6歳)も早いもので来年から小学生。就学前に春先から公文式に通い始めました。そこで毎日行う宿題を家族(とGoogle Assistant)で見守る仕組みを考えてみました。 公文式学習法 By Kumon, パブリック・ドメイン 公文式の特長 ~ 公文式学習とは解き方を教わるのではなく、自分の力で教材の問題を解く学習法で、「やればできる」という自己肯定感を育み、未知の領域にも、自分から挑戦する力を培う。公文式は、一人ひとりの「可能性の追求」を目指す教育です。 - 公式HPより 独自の教材を利用して、自分で学ぶ力を身につけていきます。算数

    子供の公文式学習を Google Assistant で見守る。【Raspberry Pi / AIY Projects: Do-it-yourself AI】 - Qiita
    kojiro-s
    kojiro-s 2017/08/01
    すごい教育愛
  • モグラたたき開発になる理由 - Qiita

    モグラたたき開発になる理由 モグラたたき開発を卒業しようの一部として書いていましたが、項目が増えてきたので 別記事に独立させました。 これらは、ほとんどが推測です。 某銀行の次期システムとか、受注したが開発できすに中断した官公庁の案件とか、携帯電話開発の事例 その他もろもろの不幸な事例を元に推測で書いています。まるで自分のプロジェクトとのようだと思われる方がいらしても、他人の空似です。 チームとしての共通の目標を成し遂げようという意識が低下している。 ユーザー視点の欠落 セクショナリズムの蔓延、「それは自分の知ったことじゃない」 「今まで失敗しているから、次も失敗するに決まっているよ。だから今更何をしても無駄だ」というあきらめモードになっている。 開発体制がゼネコン方式になっていると、開発の上位側と下位側で共通の目的を成し遂げようとするチームという意識が形成されにくい。 チームがチームとし

    モグラたたき開発になる理由 - Qiita
    kojiro-s
    kojiro-s 2017/07/28
    “モグラたたき開発を卒業”
  • アプリケーションエンジニアが知っておくべきMySQLのロック - Qiita

    (id=3は欠番) このようなユーザテーブルからptの値を読み取ってアプリケーション側でカウントアップしてDBに書き戻す、という場合を考えます。 今、2つのトランザクションAとBがほぼ同時にid=1のpt値を更新したとします。 ロストアップデートが起こる例 A > START TRANSACTION; A > SELECT pt FROM users WHERE id = 1; -- Aがpt=10を読み取る B > START TRANSACTION; B > SELECT pt FROM users WHERE id = 1; -- Bがpt=10を読み取る B > UPDATE users SET pt = 11 WHERE id = 1; -- Bがpt=11を書き戻す B > COMMIT; A > UPDATE users SET pt = 11 WHERE id = 1; -

    アプリケーションエンジニアが知っておくべきMySQLのロック - Qiita
    kojiro-s
    kojiro-s 2017/07/23
    sqlロックを考慮したアプリ
  • 「1000人を部屋に集めてお金をランダムな相手に渡し続ける」を色々条件を変えてやってみる - Qiita

    はじめに 「100人を部屋に集めてお金をランダムな相手に渡し続ける」とだんだんと貧富の差が生まれる というGigazineの記事があります。 「そりゃあ、まあそうだろ」「おお、驚いた」と色々な感想があると思いますが、簡単な実験なので色々条件を変えてやってみると、意外と面白かったので紹介します。 100人だと少ない気がしたので1000人でやってみます。 1000人が初期に金1000を持って、各ターンで無作為に誰かに金1を渡す場合 それぞれ、10, 100, 1000, 10000ターン目の所持金額とその人数のヒストグラムは以下のようになりました。 基的に、1000を中心とした正規分布っぽい感じですね。試行を繰り返すと裾野が広がっていくのがわかります。 1000人が初期に金1000を持って、各ターンで無作為に渡すが 自分より金持ちに渡す時は10%の確率で再度誰に渡すか考え直す 場合 自分より

    「1000人を部屋に集めてお金をランダムな相手に渡し続ける」を色々条件を変えてやってみる - Qiita
    kojiro-s
    kojiro-s 2017/07/12
    面白いね。お金持ちに払うときに考えるべき
  • LambdaでAWSの料金を毎日Slackに通知する(Python3) - Qiita

    はじめに 個人アカウントは基的に無料枠で運用しているので、少しでも請求がある場合はいち早く気づきたいです。 先日、とあるハンズオンイベントで使ったリソースを消し忘れて、最終的に$30ぐらい請求が来てしまいました。。。 CloudWatchで請求アラートは設定していますが、閾値超えが想定の場合、当然見逃すことになり、最終的な請求額に驚くハメになります。 これを防ぐためにLambdaで毎日SlackAWS料金を通知することにします。 先日LambdaPython3に対応したので、せっかくだし勉強がてらPython3で実装したい。 ネット上にはNode.jsでの実装例が多いようで、今回はこちらを参考にPython3で実装してみます。 必要なもの Slack incoming-webhooks URL 取得についてはこちらを参考に 適当なchannel lambda-uploader req

    LambdaでAWSの料金を毎日Slackに通知する(Python3) - Qiita
    kojiro-s
    kojiro-s 2017/06/24
    料金チェックできるんのか?
  • AnsibleでJavaとTomcatをインストール - Qiita

    --- # JDKとTOMCATをインストールする - hosts: test-servers tasks: - name: JDKのインストーラを取得 get_url: url: http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm dest: /tmp headers: "Cookie:' gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie'" validate_certs: no checksum: "sha256: 3d1e8cc66f4fd77acef6093329d5dd95bd06e4a03926c52

    AnsibleでJavaとTomcatをインストール - Qiita
    kojiro-s
    kojiro-s 2017/06/24
    AnsibleでJavaをインストール