はてなブックマークアプリ

サクサク読めて、
アプリ限定の機能も多数!

アプリで開く

はてなブックマーク

  • はてなブックマークって?
  • アプリ・拡張の紹介
  • ユーザー登録
  • ログイン
  • Hatena

はてなブックマーク

トップへ戻る

  • 総合
    • 人気
    • 新着
    • IT
    • 最新ガジェット
    • 自然科学
    • 経済・金融
    • おもしろ
    • マンガ
    • ゲーム
    • はてなブログ(総合)
  • 一般
    • 人気
    • 新着
    • 社会ニュース
    • 地域
    • 国際
    • 天気
    • グルメ
    • 映画・音楽
    • スポーツ
    • はてな匿名ダイアリー
    • はてなブログ(一般)
  • 世の中
    • 人気
    • 新着
    • 新型コロナウイルス
    • 働き方
    • 生き方
    • 地域
    • 医療・ヘルス
    • 教育
    • はてな匿名ダイアリー
    • はてなブログ(世の中)
  • 政治と経済
    • 人気
    • 新着
    • 政治
    • 経済・金融
    • 企業
    • 仕事・就職
    • マーケット
    • 国際
    • はてなブログ(政治と経済)
  • 暮らし
    • 人気
    • 新着
    • カルチャー・ライフスタイル
    • ファッション
    • 運動・エクササイズ
    • 結婚・子育て
    • 住まい
    • グルメ
    • 相続
    • はてなブログ(暮らし)
    • 掃除・整理整頓
    • 雑貨
    • 買ってよかったもの
    • 旅行
    • アウトドア
    • 趣味
  • 学び
    • 人気
    • 新着
    • 人文科学
    • 社会科学
    • 自然科学
    • 語学
    • ビジネス・経営学
    • デザイン
    • 法律
    • 本・書評
    • 将棋・囲碁
    • はてなブログ(学び)
  • テクノロジー
    • 人気
    • 新着
    • IT
    • セキュリティ技術
    • はてなブログ(テクノロジー)
    • AI・機械学習
    • プログラミング
    • エンジニア
  • おもしろ
    • 人気
    • 新着
    • まとめ
    • ネタ
    • おもしろ
    • これはすごい
    • かわいい
    • 雑学
    • 癒やし
    • はてなブログ(おもしろ)
  • エンタメ
    • 人気
    • 新着
    • スポーツ
    • 映画
    • 音楽
    • アイドル
    • 芸能
    • お笑い
    • サッカー
    • 話題の動画
    • はてなブログ(エンタメ)
  • アニメとゲーム
    • 人気
    • 新着
    • マンガ
    • Webマンガ
    • ゲーム
    • 任天堂
    • PlayStation
    • アニメ
    • バーチャルYouTuber
    • オタクカルチャー
    • はてなブログ(アニメとゲーム)
    • はてなブログ(ゲーム)
  • おすすめ

    ブラックフライデー

『tkawachi Blog』

  • 人気
  • 新着
  • すべて
  • Covariantとcontravariant - tkawachi Blog

    9 users

    tkawachi.github.io

    今日 Functional Programming Principles in Scala で聞いた話が難しかったのでメモ。 Subtype 書き方として A <: B と書けば A は B の subtype であることを示す。 A >: B と書けば A は B の supertype、言い換えれば B は A の subtype であることを示す。 Subtype とは何か?というのは Liskov substitution principle というので定義されている。 「A <: B であれば、B型の値に対して出来ることならなんでもA型の値に対して出来る」ということらしい。 クラス階層で言えば、 A <: B というのは A が B の subclass または A == B ってこと。 Subtype の概念はクラス階層にとどまらない。 こんな型が定義されていたら、 class

    • テクノロジー
    • 2015/06/17 05:42
    • scala
    • プログラミング
    • あとで読む
    • Akka Memo - tkawachi Blog

      8 users

      tkawachi.github.io

      Scala 2.10 から付いてくる Akka の Actor についてのお勉強メモ。 全然まとまっていないが晒しておく。 概念 Actor akka.actor.Actor。 メッセージを受けて処理をする人。 Mailbox Actorへのメッセージが溜まるところ。 Supervision Actor間の依存関係のこと。 Actorインスタンスはツリー構造になっている。 親が supervisor となる。 Actor が失敗したらどうするかは supervisor の actor が制御する。 親 actor が shutdown したら、その子どもは全て shutdown する。 タスクのまとまり毎にサブツリーを形成するようにすると良いらしい。 Actor Path Actorインスタンスにはツリー構造上の位置を表す文字列がついており、これを actor path と呼ぶ。 /, /

      • テクノロジー
      • 2015/02/27 22:49
      • akka
      • scala
      • Scala の関数 - tkawachi Blog

        27 users

        tkawachi.github.io

        Scala での関数を自分なりに整理する。 ここでいう関数(以下、広義の関数)は 名前(引数) の形で適用できるものを指す。 途中で出てくるコードは Scala 2.11.4 の REPL で確認した。 間違いを見つけたら教えてほしい。 メソッドか、apply()をもつオブジェクトか 広義の関数には次の2つに大別される。 メソッド apply() メソッドをもつオブジェクト メソッドは def を使って定義される。 例えばこんな感じ。 scala> def f(i: Int): Int = i + 1 scala> f(10) res0: Int = 11 一方で apply() メソッドをもつオブジェクトはこんな感じ。 scala> object f { def apply(i: Int): Int = i + 1 } scala> f(10) res1: Int = 11 apply(

        • テクノロジー
        • 2014/11/27 00:05
        • scala
        • Scalaのimplicit - tkawachi Blog

          7 users

          tkawachi.github.io

          Scala の implicit のお勉強メモ。 なぜ implicit を使いたくなるか? コード片を見ただけではわからなくなるので、暗黙的な記述はあまり使わない方がいいんじゃないかと個人的に思うのだけど。 それでも便利な使い道があるから使われているみたい。 今自分が知っているところで次のパターンがあるみたい。 他の便利な使い方もきっとあるんじゃなかろうか。 既存のクラスを変更せずにメソッドを追加したいとき (pimp my library pattern)。 implicit な関数, implicit なクラスを使う。 型パラメータ情報を実行時に使いたいとき。implicit パラメータをつかう。 共通のインタフェースを持たないクラス群に、共通のインタフェースをあとづけするとき (CONCEPT pattern)。implicit パラメータをつかう。 pimp my library

          • テクノロジー
          • 2014/11/14 17:48
          • scala
          • Pythonによるデータ分析入門 レビュー - tkawachi Blog

            4 users

            tkawachi.github.io

            というわけで Pythonによるデータ分析入門 の献本を頂きました。ありがとうございます。 大学時代の友人たちが翻訳しており、発売を楽しみにしていました。 早速レビューします。 著者 Wes McKinney さん Wes McKinney さん(@wesmckinn)は、AQRと いう投資運用会社でクオンツとして働いた経歴があり、その時に自分が欲しい ものを作り始めたのが pandas でした。今年、 DataPad というデータ可視化のサービスを行う会社 を San Francisco で立ち上げて CEO としてご活躍中です。 Blog では PyCon での pandas 関連の発表 資料を見ることができます。 紹介されているツール・ライブラリの役割分担 この本で紹介されている分析方法では、Pythonの各ライブラリ・ツールが以下 の役割を担っています。 pandas – 高速なデ

            • テクノロジー
            • 2014/07/27 14:33
            • Python
            • あとで読む
            • ScalaTestでMockito - tkawachi Blog

              7 users

              tkawachi.github.io

              ScalaTestでMockitoを使うためのお勉強ノート Setup build.sbt に追加。 libraryDependencies ++= Seq( "org.scalatest" %% "scalatest" % "1.9.1" % "test", "org.mockito" % "mockito-core" % "1.9.5" % "test" ) テストで MockitoSugar を mixin し、以下の import 行を追加。 import org.mockito.Matchers._ import org.mockito.Mockito._ Mock作成 // ClassToMock のモックを作成 val m = mock[ClassToMock] 作ったモックはデフォルトで全メソッドコールに対して null を返す。 メソッドの戻り値としてnullではなくモッ

              • テクノロジー
              • 2014/07/23 12:15
              • mockito
              • scala
              • モック
              • mock
              • テスト
              • test
              • Try はモナドじゃない - tkawachi Blog

                7 users

                tkawachi.github.io

                Principles of Reactive Programming 最初週の講義で言ってたこと。 忘れそうなのでメモ。 モナドであるためにはモナド則を満たさねばならない。 モナド則は以下の3つ。 Associativity: (m flatMap f) flatMap g == m flatMap (x => f(x) flatMap g) Left unit: unit(x) flatMap f == f(x) Right unit: m flatMap unit == m ちなみにすごいHaskell本でモナド則は次のように書かれている。 結合法則: (m >>= f) >>= g と m >>= (\x -> f x >>= g) が等価 左恒等性: return x >>= f と f x が等価 右恒等性: m >>= return と m が等価 flatMap を >>=

                • テクノロジー
                • 2014/04/26 20:50
                • programming
                • ActiveRecord のモデルを整理する7つのパターン - tkawachi Blog

                  287 users

                  tkawachi.github.io

                  7 Patterns to Refactor Fat ActiveRecord Models という記事があり、読もう読もうと思いつつ1年くらい経ってしまった。 ようやく読んだので理解した内容を書いておく。 コード例は元記事のもの。 Rails で thin controller, fat model を心がけていると、model がマジで激太りしてヤバくなる。 実際に自分が仕事で書いている rails アプリも激太りしててヤバい。 この blog の筆者が作っている CodeClimate で C 判定をもらう程度には肥満体型になっている。 Mixinに抜き出さない! Model が太ってきた時に考えるのは ActiveSupport::Concern を使って感心事を抜き出して、Mixin にすることだと思う。 実際に手元のアプリでも models/concerns/ なんていうディレ

                  • テクノロジー
                  • 2014/04/21 16:34
                  • rails
                  • activerecord
                  • ruby
                  • refactoring
                  • modeling
                  • model
                  • programming
                  • oop
                  • object
                  • アンチパターン
                  • Play Framework 2.2 Scala 最初の1週間で困った雑多なこと - tkawachi Blog

                    25 users

                    tkawachi.github.io

                    Play Framework 2.2.1 + Scala を触り始めて一週間くらいたった。 触りながら困った点(というか「疑問に思った」程度のものが多いが)をメモしていたので晒しておく。 雑なメモで無知を晒すのは恥ずかしいが、同じことではまる人がいるかもしれないもんね。 間違っているところがあったらコメントで教えてもらえると大変嬉しいです。 Play 関連 Q: app/assets/ と public/ の違いは? A: app/assets は CoffeeScript, LESS など preprocess するもの。public はしないもの。 Q: bindFromRequest すると Cannot find any HTTP Request here って出るよ。 A: Action の先頭に implicit request => を付ける。 Action { implic

                    • テクノロジー
                    • 2013/11/23 22:13
                    • scala
                    • Play Framework
                    • play
                    • Pocket
                    • randomForestで重要な説明変数を見つける - tkawachi Blog

                      4 users

                      tkawachi.github.io

                      Random forest といえば決定木を何本ももつアンサンブル学習で高い精度を持つ。 けど、どの説明変数が効いているかは説明が難しいものだと思いこんでいた。 ご近所のデータサイエンティストが R で効いている説明変数を出す方法を教えてくれたのでメモ。 ここでは R についてきている iris データセットを使う。 irisはアヤメの種類に関するデータセットで、1936年という大昔に フィッシャー が論文で使った歴史のあるデータセットでもある。 萼片 (sepal) の大きさ、花弁 (petal) の大きさ、アヤメの種類(species)が対になっている。 # iris dataset 読み込み > data("iris") > str(iris) 'data.frame': 150 obs. of 5 variables: $ Sepal.Length: num 5.1 4.9 4.7

                      • 学び
                      • 2013/11/06 09:57
                      • IAMユーザのS3アクセスをフォルダレベルで制限する - tkawachi Blog

                        7 users

                        tkawachi.github.io

                        AWS の IAM でユーザを作り、S3 bucket の特定の path 以下にのみアクセスを与えるということを設定したかったのですが、情報を見つけられず時間をつかってしまったので共有しておきます。 (参考: Giving a user permission to acceess just a folder within a bucket) 現状 AWS では bucket 数上限が 100, IAM ユーザ数制限が 5000 になっています。 利用者1人に 1 IAM ユーザを発行すると 5000 人で使えるわけですが、 bucket 毎に共有設定を行った場合は 100 共有までです。 同一 bucket 内で path を切り替えて共有した場合は bucket 数上限は関係なくなるので嬉しい、というわけです。 まず最初に S3 の IAM policy に関するAWS の公式ドキュメ

                        • テクノロジー
                        • 2013/07/10 16:19
                        • S3
                        • aws
                        • Rails で TypeScript を動かそうとして失敗した記録 - tkawachi Blog

                          6 users

                          tkawachi.github.io

                          Microsoft 発の型付き JavaScript こと TypeScript が人気ですね。 typescript-rails という gem があったので、動くのか試してみました。 結論から言っておくと、他のスクリプトやライブラリを参照する TypeScript をコンパイルすることが今回はできませんでした。 $ rails new typescript-rails-test -T $ echo 'gem "typescript-rails"' >> Gemfile $ bundle $ bundle exec rails g controller test index create app/controllers/test_controller.rb route get "test/index" invoke erb create app/views/test create app

                          • テクノロジー
                          • 2013/05/15 14:25
                          • TypeScript
                          • Rails
                          • 使わないと損なバックエンドサービス - tkawachi Blog

                            8 users

                            tkawachi.github.io

                            slash7 の Thomas Fuchs さんが自分たちのサービス Freckle で使っている有償サービス群を紹介している。 小さいチームでは自分のビジネスのコアに集中し、それ以外の部分に力を分散させるべからずというのはまさにその通り。 紹介されていたサービスは以下のとおり。 知らないサービスもいくつかあるなあ。 Travis Pro (ドキュメント) CI(継続的インテグレーション)サービス。 Open source 製品は Pro じゃない方が使える。 NewRelic 性能監視サービス。これは僕も使ってる。 Postmark メール配送サービス。メールを送るならマスト、らしい。メール受信もできるらしい。 同種のサービスは沢山ある。 例えばSendGrid。 Honeybadger Rails用のエラー管理ツール。 僕は Exceptional.io を使っている。 DocRapt

                            • テクノロジー
                            • 2013/04/18 10:53
                            • cloud
                            • *webサービス
                            • 開発
                            • まとめ
                            • jQueryのDeferredとPromise - tkawachi Blog

                              70 users

                              tkawachi.github.io

                              JavaScript(というか CoffeeScript)って90年代にブラウザ上で使われていた頃のイメージが拭えず、どうも気持ち悪くて逃げて回ってたんですが、事情があって最近は渋々書いてます。 JavaScripterの皆様にとっては何を今更だとは思いますが jQuery.Deferredを使って楽しい非同期生活を送る方法 を読んで Deferred 便利だな、と思ったので理解したところをメモしておきます。 利用シーン $.get() ってエラーハンドリングできないのか。使えないなー。と思ったとき 複数の AJAX リクエスト(などの非同期処理)を同時に開始して、全部終わったら何かしたいとき。 Deferred object キーになるのは Deferred object です。 状態 Deferred object は状態を持ちます。状態は3つのうちいずれか。 未解決(unresolv

                              • テクノロジー
                              • 2013/01/28 10:24
                              • jquery
                              • deferred
                              • javascript
                              • promise
                              • async
                              • document
                              • Ajax
                              • js
                              • Rails の JavaScript (CoffeeScript) でローカライゼーションを簡単に - tkawachi Blog

                                3 users

                                tkawachi.github.io

                                Rails 3.2 のプロジェクトで作業していて JavaScript (CoffeeScript) でのローカライゼーションをしたくなりました。 調べてみたところ i18n-js が簡単につかえてよさそうな感じです。 まずは Gemfile に追加して bundle install 。 Gemfile

                                • テクノロジー
                                • 2013/01/28 10:16
                                • i18n
                                • javascript
                                • rails
                                • Bootswatchのテーマをtwitter-bootstrap-railsで使う - tkawachi Blog

                                  9 users

                                  tkawachi.github.io

                                  美的センスに乏しい私のようなプログラマにとってTwitter bootstrapが便利なことは言うまでもありませんが、知っている人には一見して「あ、Bootstrapだ」とわかるサイトになってしまいます。 これ自体は別に悪いことはないと思うのですが、他のサイトと見分けの付かないサイトになってしまうのは良くないですよね。 そこでbootstrap用のテーマを入れよう、となるわけです。 テーマを入れることで色・フォントなどが変更されるので、bootstrap臭が軽減されます。 bootstrap theme などで検索すると有償・無償を含めテーマを取り扱っているサイトが見つかると思いますが、今回は Bootswatch を twitter-bootstrap-rails と共に使う方法をメモします。 bootstrap-sass, sass-twitter-bootstrap, less-ra

                                  • テクノロジー
                                  • 2013/01/23 19:57
                                  • bootstrap
                                  • rails
                                  • twitter-bootstrap
                                  • css
                                  • design
                                  • twitter
                                  • Compile Ruby 1.9.3 on Mac OS X Lion Using RVM - tkawachi Blog

                                    4 users

                                    tkawachi.github.io

                                    仕事で Ruby を使うことになったので、家の Lion ちゃんにも ruby インストール しとこうと思ったらエラーになる。 rvm の version は 1.10.0。 $ rvm install 1.9.3 Installing Ruby from source to: /Users/kawachi/.rvm/rubies/ruby-1.9.3-p0, this may take a while depending on your cpu(s)... ruby-1.9.3-p0 - #fetching ruby-1.9.3-p0 - #extracted to /Users/kawachi/.rvm/src/ruby-1.9.3-p0 (already extracted) Fetching yaml-0.1.4.tar.gz to /Users/kawachi/.rvm/arch

                                    • テクノロジー
                                    • 2012/01/05 13:39
                                    • ruby
                                    • mac
                                    • *programming

                                    このページはまだ
                                    ブックマークされていません

                                    このページを最初にブックマークしてみませんか?

                                    『tkawachi Blog』の新着エントリーを見る

                                    キーボードショートカット一覧

                                    j次のブックマーク

                                    k前のブックマーク

                                    lあとで読む

                                    eコメント一覧を開く

                                    oページを開く

                                    はてなブックマーク

                                    • 総合
                                    • 一般
                                    • 世の中
                                    • 政治と経済
                                    • 暮らし
                                    • 学び
                                    • テクノロジー
                                    • エンタメ
                                    • アニメとゲーム
                                    • おもしろ
                                    • アプリ・拡張機能
                                    • 開発ブログ
                                    • ヘルプ
                                    • お問い合わせ
                                    • ガイドライン
                                    • 利用規約
                                    • プライバシーポリシー
                                    • 利用者情報の外部送信について
                                    • ガイドライン
                                    • 利用規約
                                    • プライバシーポリシー
                                    • 利用者情報の外部送信について

                                    公式Twitter

                                    • 公式アカウント
                                    • ホットエントリー

                                    はてなのサービス

                                    • はてなブログ
                                    • はてなブログPro
                                    • 人力検索はてな
                                    • はてなブログ タグ
                                    • はてなニュース
                                    • ソレドコ
                                    • App Storeからダウンロード
                                    • Google Playで手に入れよう
                                    Copyright © 2005-2025 Hatena. All Rights Reserved.
                                    設定を変更しましたx