読者です 読者をやめる 読者になる 読者になる

謎言語使いの徒然

適当に気になった技術や言語を流すブログ。

Playframework2.5.x でプロジェクト分離してみた

サブプロジェクト自体は、Playframework2.3 から存在していて、当時はあまり使い道も思い浮かばなかったが、今では大分使いやすくなってたのでメモ。 完全独立した sbt プロジェクトを取り込む このケースでは、完全に独立した sbt モジュールを取り込みます…

プログラミングの経験と信仰

経験は全ての物事の元となるもので、とても重要なものだと思う。 でも、経験を『信仰』にした瞬間、それは害悪となる。 プログラマは誰しも経験した記憶があるだろう。 「それならコレでもできるよ」と長ったらしい作りをした人を。 かく言う私も、これをか…

パスワード用ハッシュ、jBCrypt を使ってみた

なんでそんなことになったかというと、Playframework の Crypto クラスがいつの間にか Deplicate になってたという事態。 これにより、色々変動があったのだが、「パスワードのハッシュに Crypto.sign 使うんじゃない」だそうです。 Misuse as a Password Ha…

SPAするほどでもない時に気軽に使う JavaScript framework, Vue と Knockout 比較

ちょっと鯖欲しかったので Activator new で作って試す。 nodejs で勉強するチャンスだったかもしれないが、時間もなかったのでとりあえず知ってるやつで。 とりあえず、読めるようにしておく。 build.sbt に libraryDependencies ++= Seq( jdbc, cache, ws,…

Playframework 2.5 で足りてなさそうなセキュリティヘッダ設定を追加する

セキュリティヘッダなんて、ヘッダに組み込むだけのものなので、ザクッと。 package filters import javax.inject.{Inject, Singleton} import akka.stream.Materializer import play.api.Configuration import play.api.mvc.{Filter, RequestHeader, Result…

Scala 関数型デザイン&プログラミング:Exercize3.16-3.23

Scala 関数型デザイン&プログラミング:Exercize3.2 - 3.13 - 謎言語使いの徒然 の続き。 Exercise 3.16 各要素に +1 したリストを返す関数を作れ。 なんか仕様的に map 関数に似てるなーと思った。 とりあえず フォイ def map[A, B](as: List[A], func: A =>…

Winows10 がクソ重い

症状的には定期的にHDアクセスが 100% に突入するというもの。 そういや前も食ったなと思い出して、対処した。 マシンを再セットアップしてからやってなかったなーと IPv6 をオフ OneDrive 同期を停止 毎回やらないと酷いことになるって最悪のエコシステムだ…

Scala 関数型デザイン&プログラミング:Exercize3.14-15

相変わらず教科書はこれ。 Scala関数型デザイン&プログラミング ―Scalazコントリビューターによる関数型徹底ガイド (impress top gear)作者: Paul Chiusano,Rúnar Bjarnason,株式会社クイープ出版社/メーカー: インプレス発売日: 2015/03/20メディア: 単行本…

Scala 関数型デザイン&プログラミング:Exercize3.2 - 3.13

前回 からの続き 教本はこれ Scala関数型デザイン&プログラミング ―Scalazコントリビューターによる関数型徹底ガイド (impress top gear)作者: Paul Chiusano,Rúnar Bjarnason,株式会社クイープ出版社/メーカー: インプレス発売日: 2015/03/20メディア: 単行…

Scala 関数型デザイン&プログラミング:Exercize3.1

続き サンプルコード package fpinscala.datastructures sealed trait List[+A] case object Nil extends List[scala.Nothing] case class Cons[+A](head: A, tail: List[A]) extends List[A] object List { def sum(ints: List[Int]): Int = ints match { c…

Scala 関数型デザイン&プログラミング:Exercize2.2 - 2.5

引き続き勉強がてら Exercise をやってみる。 Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド作者: Paul Chiusano,Rúnar Bjarnason,株式会社クイープ出版社/メーカー: インプレス発売日: 2015/04/30メディア: Kindle版…

Scala 関数型デザイン&プログラミング:Exercize2.1

真面目にやろうかと思った。 書籍はこれ Scala関数型デザイン&プログラミング―Scalazコントリビューターによる関数型徹底ガイド作者: Paul Chiusano,Rúnar Bjarnason,株式会社クイープ出版社/メーカー: インプレス発売日: 2015/04/30メディア: Kindle版この…

投票が近づいて来たので、40代以下に言っておこうか

なんで皆の税率が上がって、将来の年金まで気にするようになるのか、その理由をざっくり説明する。 なんで老人向けの介護とか福祉がこの時期叫ばれるのか? まず、この時期になると声高に叫ばれることがある。それは高齢者福祉だ。 最近では少子化対策で児童…

WindowsでYeaomanしてみる

表題の通り。 環境は Winows10 …つってもあんま意味ないな。 まずは Node.js から。 といっても Windows はインストーラあるから楽勝だね。 v4.2.6 をインストール。面倒なので PATH もひいてもらう。 C:\test>node -v v4.2.6 次、Git for Windows 。 バージ…

Scala で解く「プログラマ脳を鍛える数学パズル」

病院行ったついでに待ち時間暇すぎて書店で見かけたやつ。 www.amazon.co.jp これの問2 1000 - 9999 の中で、「351 , 3 * 51 = 153」(計算結果が元の逆順になる)みたいな数字を見つけ出せ。 使っていいのは四則演算のみで、必ず1回は計算すること。 これ…

似非Ctrl+Fをこっそりアプデ

github.com 何やったのかというと、タグを任意に配置/デザインできるようになった。

JavaScript(CoffeeScript) で似非 Ctrl + F 作ってみた。

まじかと思ったんだけど、マジだったので驚いてる。 shertan.me ちょっと待て基本だろ常考。 こんなもん、Windows XP 初期の時代からデフォルトだぜ? Keyboard Shortcuts for Internet Explorer 6 記憶が確かなら、Windows 98 時代からあった気もする。 ま…

Play2.4 でネストしたJsonをバインドする

何で今更かというと、これつかえねーかなと思ったから。 最初は、Forms でのバインドをしようとしたのだけど、早速フォーラムが見つかりました。 キーワードは Play recursive form https://groups.google.com/forum/#!topic/play-framework/Ya1hPmR2QtY こ…

フォームヘルパーをタグ調整する(Play 2.4.x) with マルチセレクトチェックボックス

Playframework 2.4 において、フィールドコンストラクタの仕様も変わったので、対応したチェックボックスを作ってみる。 Custom Field Constructors これがなんなのかというと、input とかの helpers の外枠の事。 いつぞや Bootstrap 対応した フォームヘル…

Mac で ansible 基礎設定やってみた。

Ansible のことをちまちまやったので、その件メモ。 ネカフェでやってるんだけど、近くのネカフェは速度が遅すぎてこれ以上はちょっと厳しかった。 Install と言ってもこれだけ。 $ brew install ansible ちなみにバージョンは $ ansible --version ansible …

LL Ring 行ったメモ

LLRing memo 第一試合 Ruby vs Perl vs PHP vs JS Python はイベント衝突で不参加 Javascript ECHMA Script 2015 が発表、ECHMA 6 が名称変更で、正式公開。 言語仕様の追加が行われてる。 JavaScript の仕様が変わるとみんな地獄をみる。しかし、ALT JS な…

「AUひかり」で買ってきたルータを使うときの注意

まず、AUの課金の仕方がひどいと思った…とはいえ、建物がAU契約なのでほかの選択肢がなかなかなかったのだが、ともかくひどい。 無線LANを使うには別契約が必要(追加課金) 替えの性能いいルータをレンタルするなら追加課金 ルータすら契約上「貸与」で、も…

なんかもう紹介せざるを得なかったScala記事「バカ向け言語Scala」

まともにモジュール化設計もできていない保守不能糞コードの設計者を「エリート様」と皮肉って、「バカな私は、シンプルさを求めたScalaを使う」と言う記事。 センスに溢れて「いいぞーもっとやれー」と応援したくなってしまいました。 バカ向け言語 Scala -…

Java/Scala 比較。一定期間の曜日ごとの購買集計

単純なお題。 標準出力から、日数と、その日数に応じた日々の購買金額が入力されたとき、曜日ごとの集計額を計算しなさい。 ただし日数は 7 の倍数であることが保証され、曜日の先頭は日曜日である。 入力例: 14 日間を指定、各日付の購買数は、下記の通り…

Play2.4 の DI を弄ってみる

まず適当に Singleton アノテーションをくっつけて使用する。 package utils.modules import javax.inject._ /** * アクセスカウンター */ @Singleton class AccessCounter { @volatile private var price = 0 def add(p: Int) = price += p def get = price…

Playframework 2.4.x でセキュリティヘッダの設定など

まず前提として、Playframework にはフィルタという機能がある。 Playframework 2.3.x 以下の場合は、Global オブジェクトにミックスインする形式をとっていた。 ScalaHttpFilters だが、Playframework 2.4.x 以降は、DI も含めて形式が変更となり、root パ…

LoT LT行ってみた(追記)

IoT縛りの勉強会! IoTLT vol.6 - 資料一覧 - connpassiotlt.connpass.com みっけたのでリンク メモだけざっくり。 整理はしない。 キーワードだけ拾えればいいかな的な発想。 前段 IoT Letter というサイトがある。 IoT 関連書籍やイベント、記事ソリューシ…

Polymer1.0 の入門を始める

Polymer ってなんぞ? What is Polymer? - Polymer Custom elements extend the web 一言でビルトイン以外のカスタムタグを追加すると。 カスタムなイベントや、デフォルトのスタイルも含めてコンポーネントとして定義できるらしい。 面白いのは「フレームワ…

Playframework2.4.xのサブプロジェクトの扱い

完全に親子関係でしたねってだけ。 子のオブジェクトは親から参照できるけど、親のオブジェクトを子は参照できない。 同時に、子は横つながりを持たない。 まぁなんとなく想像通りな訳で、使い道的には、幾つかのプロジェクトで共有しておきたい機能をサブプ…

駄文

まずはじめに最近好きな言語を挙げるが、Scala / F# なんかが好きだ。 そのどれもに共通することを挙げよう。 静的型 型があれば、おかしなコードはコンパイルで弾ける。 規約の準拠チェックもツール作りが動的型よりは容易だ。 関数型 関数が引数や返り値に…

PlayFramework 2.4 でサブプロジェクトで一部URLを切り出してみる

教科書は下記 SBTSubProjects で、まずはプロジェクト root ディレクトリに下記を一気に作成 modules /rest_apis /controllers /conf そして、 modules/rest_apis/build.sbt を作成する。 ここに実は二つ罠があった。 公式では下記(20015/7/8 時点)が書か…

Play 2.4.x をいい加減調べてみる

色々変わったそうなので、まずはハイライトを見てみる。 https://www.playframework.com/documentation/2.4.x/Highlights24 DI サポート テストにおけるモックを容易にしたかった 軽量な組み込みPlayアプリケーションや、一つのJVM上で複数のPlayアプリケー…

AmazonEC2 上に、Redmine 2.6.5 + Backlogs (カスタム)を入れた

AMI 公開 AMI ID : ami-6465ca64 元ネタ AmazonEC2 上に、Redmine 2.6.5 を構築したメモ(AMI有) - 謎言語使いの徒然white-azalea.hatenablog.jp カスタムBacklogs patrickatamaniuk/redmine_backlogsgithub.com 本家が更新停止してるので、fork の中から最近…

Redmine2.6.5 に Backlogs を突っ込んだメモ

事のついでだし、RedmineBacklogs を S3 + Redmine2.6.5 に入れようとしたログ。 元ネタの AMI はこれ AmazonEC2 上に、Redmine 2.6.5 を構築したメモ(AMI有) - 謎言語使いの徒然white-azalea.hatenablog.jp まずは plugins ディレクトリで git clone git://…

アジャイルに使えそうなReminePlugin

見てて気になったものメモ。 フル機能は有償だけど、いろいろ良さげ Redmine Agile pluginwww.redminecrm.com 残念ながら開発がイマイチ息してなくて、有志が fork してる状態のものが下記 Redmine Backlogs :: Home

AmazonEC2 上に、Redmine 2.6.5 を構築したメモ(AMI有)

AMI 好きに使って 下記で作った AMI を共有しました。好きに使って。 当たり前ですが、バージョンアップとか色々あっても保証しないっすよー ami-4001ac40 メールサーバは立ててないので、ご自分で立てて運用してください。 こいつは何よ? 普通に入れても発…

「セキュアプログラミング開発を学習するための第一歩」を受けてみた

セキュアプログラミング開発を学習するための最初の一歩 主催:e-life : アプリケーションセキュリティの診断をやってる。 はじめに セキュリティ技術者はどの程度欲しがられてるか? エージェントはセキュリティ関連も幅が広くて、「セキュリティの仕事した…

HTML5 とか勉強会メモ

まともに整理するのめんどい HTML5 とか勉強会 GoogleI/O 2015 隙間のあるエリア分けだけして出入りしやすいスペースでセッションをする。 一方通行の話というよりは双方向でいろいろ話をするというのが今回のコンセプトとのこと。 基本的に android な話。 …

HTML5 All Starts 勉強会メモを今更晒す

そういや晒してなかったなと思って。 セッション1 ふろしきさん 日本US含む10ヵ国でモバイル検索する人はPC より多い:Google調べ で、下記の話をする アニメーション ネットワーク モニタリング アニメーション 初期:AnimationFrame方式 JS でフル制御す…

セキュアプログラミング開発セミナーみてみた

内容的にはコレ。 http://secure-app-group.connpass.com/event/14083/ はじめに SQL Injection で個人情報が漏れた。WebShop がベンダーを提訴、2200万の損害賠償を支払うことに…。 しかも判例が公開されている。 XSS 問題とか、パスワードが admin/passwor…

Kuromoji 形態素解析を使ってみた

ぶっちゃけこれ kuromoji - japanese morphological analyzerwww.atilika.org Scala2.11.6 +SBT 0.13.x で使ってみたログ。 まずは build.sbt libraryDependencies ++= Seq( "org.atilika.kuromoji" % "kuromoji" % "0.7.7" ) にこんなん書いて、 import org…

全文検索エンジンを作ろうと思って、まずはクローラーを作ってみた

何を使ったのかと言うと、crawler4j を使って、対象のサイトをかたっぱしから動き回る実装をしてみた。 yasserg/crawler4jgithub.com ただし、ディレイとか入れなくて DOS 攻撃になるんじゃねーかとか不安もあるので、応用するときは自己責任で。 ※ スレッド…

要素追加をCSSアニメーションで実装したい

何がしたいって、スライドインアウトしたい。 原理的にはスライドインさえできれば、スライドアウトは似たようなものだろう。 まずはアニメーションできるようにしようか。とりあえずはマウスを上に置いたらアニメーションで色を変える。 .block { display: …

ReactJS の tutorial から学んでみる。

と言っても昨日 18時から20時までチュートリアルコードを読んで試しただけだが。 まず ReactJS ってなんぞやって話だと、下記を参照。 A JavaScript library for building user interfaces | Reactfacebook.github.io BUILDING USER INTERFACES と銘打っては…

play framework で react.js やろうとしてみたメモ

Playframework に ReactJS 突っ込もうかと思ったのだが、そもそもが JSX ベースの開発だ。 Playframework のデフォは Coffee しか対応していない。 他の人はどうしてるのかなぁと思って調べてみたが ssorallen/react-playgithub.com なんてのがあった。 中で…

アニメーションを使う為に特化した CSS

Animate.css 素晴らしいですよね。メモ。

HTML5+JS でメニューをそこそこカッコよく出してみる

前回の続き。 画面にブラーをかけてみる - 謎言語使いの徒然white-azalea.hatenablog.jp マウスを左に持って行ったらメニューを表示する仕様で実装してみた。 タグ構成は下記 <nav role="popup-nav" class="popup-nav" blar-target="all_contemts"> <div class="popup-icon"> <div class="glyphicon glyphicon-menu-hamburger">CONTENTS</div> </div> <div class="content"> </div></nav>

画面にブラーをかけてみる

何を使うのかというと、下記。 Filter Effects Module Level 1 で、これで画面左にメニューを置こうと考えたわけだ。 作りかけだが、やり方を思いついたのでメモする。 まず、タグ構成を下記のようにする。 <nav id="floating_nav" class="popup-nav"> <div class="content"> <ul class="nav nav-pills nav-stacked"> <li> <h4>Contents</h4> </li> <li><a href="#wizard">Wizard</a></li> </ul> </div> </nav>

フォームヘルパーをタグ調整する(Play 2.3.x)

何がしたかったかと言うと、Bootstrap の形状にうまく乗せたかった。 で、試行錯誤して自分で使っててまぁ違和感がなくなったのでメモ書き Playframework の Form については本家を参照すべし。 まず、Playframework の helper で吐き出すと、デフォルトは以…

Teredo でネットワークが切断される

ゲスト OS への仮想マシン接続(vmconnect)が突然切断される これでDB接続とかが切断されることがある。 何が恐ろしいって何処にもエラーログが残らないこと。 なにせ「正常動作」だからだ。 サービス事業者要確認。