タグ

ブックマーク / blog.takuros.net (16)

  • 技術書執筆に関するお金の赤裸々な話 - プログラマでありたい

    を書いてると、よく『儲かるの?』と聞かれます。私は決まって、『儲かりません』と答えます。総額ベースではそれなりに貰っているのですが、何故そう答えるか整理してみます。 印税の仕組み 執筆に関する収入として、大きく2種類があります。1つはページ数に対しての単価が設定され、発売部数に関係なく支払われるタイプ。もう1つは、印税率を設定して書籍価格×出版部数×印税率が支払われるタイプです。前者は雑誌やムックなどに多く、それ以外のものは後者の印税のパターンが多いです。 また印税にも契約条件が細分化されています。大きく分けると刷数に対して支払われるのと、実売ベースのものです。当然、筆者としては前者の方が有利になります。 1冊書くと、どれくらいの印税になるのか 最近書いた『Amazon Web Services クラウドネイティブ・アプリケーション開発技法』のケースで考えてみましょう。このの価格は、

    技術書執筆に関するお金の赤裸々な話 - プログラマでありたい
    terazzo
    terazzo 2016/06/09
  • AWSとシステムの認証認可を考える - プログラマでありたい

    原稿執筆が追い込みの為に、すっかりとブログから遠ざかっていました@dkfjです。最近、モバイルアプリについて考えることが多いのですが、その中のテーマの1つがシステムの認証認可です。先日、JAWSUGのアーキテクチャ支部で、それをテーマに議論してきたので今時点の課題意識を整理しておきます。 当日の資料 Lambda認証認可パターン from Takuro Sasaki www.slideshare.net 説明が何も書いていないので、これだけ見てもさっぱり解らないと思います。順を追って、説明します。 認証と認可 まず認証と認可の違いです。認証は人性の確認であり、認可はリソースに対する利用権限の付与です。多くのシステムでは、認証と同時に認可を行いますが、質的には別々の機能ですよねという話です。もちろん、1つのシステムの中で同時に実現することの問題もありません。 Cognitoを利用した認

    AWSとシステムの認証認可を考える - プログラマでありたい
    terazzo
    terazzo 2016/02/03
  • エンジニアを悩ますFabric問題 - プログラマでありたい

    たった1つの単語が、モヤモヤを引き起こして仕方がありません。何とかしてください。Fabric Fabricの何が問題なのか? Fabricの名前を冠する製品・サービス名が多すぎです。 Twitter謹製のモバイルアプリツールのFabric それなりの規模のモバイルアプリの運用するには必須なのがCrashlyticsです。実はこれ、Twitterが提供しているモバイルアプリ向けの開発者ツールで、Crashlyticsの他の幾つかのツールを含めてFabricに包含されています。 Fabric - Twitter's Mobile Development Platform 用例:Fabric入れときますか? デプロイ/構成管理ツールのFabric 構成管理やデプロイツールとして使われることが多いのがPython製のFabricです。そもそもFabricが何の為のツールか調べると、「コマンドライン

    エンジニアを悩ますFabric問題 - プログラマでありたい
    terazzo
    terazzo 2015/12/03
    だからどのFabricだよ問題
  • クラスメソッドさんの勉強会で、Swaggerの話をしてきました - プログラマでありたい

    縁あってクラスメソッドさん&Amazon Web Servicies Japan主催の「AWSモバイル/IoTサービス徹底攻略!!」に登壇してきました。テーマは、"Swaggerで始めるモデルファーストなAPI開発"ということで、Swaggerの話です。 発表の内容 ベーシックセッションで、またそもそもSwaggerって何という人が大半を占めているという予想から、そもそもSwaggerとは何かとかREST APIとの関係、何が嬉しいのというのを中心に紹介しました。そして、AWSとの関係性ということから、Swaggerを使ってAPI Gatewayをインポートするというところまでです。 Swaggerで始めるモデルファーストなAPI開発 from Takuro Sasaki www.slideshare.net 正直なところ、私の理解が追いついていないので、この内容が精一杯でした。当は、A

    クラスメソッドさんの勉強会で、Swaggerの話をしてきました - プログラマでありたい
    terazzo
    terazzo 2015/11/24
  • サーバレスアーキテクチャ(ServerLess Architecture)とBaaSの違い - プログラマでありたい

    先日、サーバレスアーキテクチャ(ServerLess Architecture)について簡単にまとめてみたところ、様々なご意見頂きました。その中で特に多かったのが次の2つです。 サーバレスといっても、裏にはサーバがある 単なるSaaSやPaaS,BaaSを別の言い方にしただけでは? 面白い視点だと思うので、個人的な見解を整理してみます。 裏にサーバがあるのに、サーバレス? 「サーバレスといっても、裏にはサーバがある」というツッコミは、その通りです。この文脈で言うサーバレスというのは、利用者側から見て管理するサーバがないという意味です。従来だと、自前でサーバの設定をして、パッチ当てやログの管理が必要でした。ChefやAnsibleなどの構成管理ツールを使ったとしても、自分で管理する必要があるという点では同じです。 これに対して、サーバレスの場合はユーザがサーバを管理する必要はありません。例え

    サーバレスアーキテクチャ(ServerLess Architecture)とBaaSの違い - プログラマでありたい
    terazzo
    terazzo 2015/10/20
  • サーバレスアーキテクチャとは? - プログラマでありたい

    サーバレスアーキテクチャの整理です。少し前は、2-Tier Architecture(クラウドネイティブなアーキテクチャ)と3-Tier Architecture(従来のアーキテクチャ)という対比で論じられることが多かったです。しかし、API Gatewayの登場により、3-Tierな構造でもクラウドネイティブなアーキテクチャにしやすくなりました。ということで、サーバレスアーキテクチャ(ServerLess Architecture)と呼ばれることが多いです。 サーバレスアーキテクチャのパターン それでは、従来型のアーキテクチャ(旧3-Tier)と2-Tierパターン、API Gatewayを利用したサーバレスアーキテクチャをそれぞれ見てみましょう。 従来型のパターン( アプリケーションサーバ・パターン) まずは従来型のアーキテクチャです。間にELBを挟んでAutoScaleにすることは多

    サーバレスアーキテクチャとは? - プログラマでありたい
    terazzo
    terazzo 2015/10/19
  • 「みんなの体操」で、数年来の肩こりが治った話 - プログラマでありたい

    30台半ばくらいから、肩こりがひどくなりました。特にここ数年はひどく、肩こりからの頭痛に発展することが多かったです。その上、頭痛は気が抜ける週末にくることが多く、何か損した気分でした。当然、改善を試みて幾つか試してみましたが、失敗の連続でした。 試したこと ・ジョギング ⇒運動不足が原因ということで、運動不足解消にはジョギングと試す それなりにまとまった時間がいるので、土日だけになってサボりがちになって消滅。 そもそも肩こりに、そこまで効果がなかった。 ・柔軟体操 ⇒すぐに飽きて忘れる ・筋トレ ⇒腕立てなどを続けていると、肩こりは治った ただし、毎日続けられなくてサボりがちになって消滅 ・鍼灸 ⇒やった後は絶大な効果が発揮する。 ただ2〜3日で元にもどり、通えるのは週末だけ ・足つぼマッサージ ⇒超絶痛かった まぁ何というか、鍼灸以外は一人もくもく系で、それを続ける根気はないのがハッキリ

    「みんなの体操」で、数年来の肩こりが治った話 - プログラマでありたい
    terazzo
    terazzo 2015/09/28
    映像で運動している人を見ながら運動すると捗る(いっしょにとれーにんぐ方式)のはなんか原理があるのかな。
  • 私とAWSの9年間 - プログラマでありたい

    Amazon Web Services パターン別構築・運用ガイド 改訂第2版 作者:NRIネットコム株式会社,佐々木 拓郎,林 晋一郎,小西 秀和,佐藤 瞬SBクリエイティブAmazon 新幹線の中で、もうすぐ発売される「Amazon Web Services パターン別構築・運用ガイド」の前書きを考えています。ふと、AWSとの出会いはどうだったのかなと思い、過去の記録と記憶をサルベージしてみました。 AWSとの出会い AWSとの出会いは、2006年のAmazon S3です。当時はアメリカのシリコンバレーで働いていて、レンタルサーバのようなものを探していました。幾つか探している時に、ちょうどAmazonWebサービスを出すというニュースが飛び込んできました。ストレージのWebサービスとは何か、さっぱり見当つかなかったものの、とりあえず惹かれるものを感じ使いだしたのが最初です。実はそれ以

    私とAWSの9年間 - プログラマでありたい
    terazzo
    terazzo 2015/03/04
  • 5分で何となく解るAmazon Cognito - プログラマでありたい

    年末年始でじっくり調べてみようと思っていたのがCognitoです。先日ようやく時間が取れて、何となく解ってきたので簡単にまとめてみます。Cognitoは、モバイル向けに設計されたユーザーアイデンティティおよびデータ同期のサービスです。主な機能としては、以下の3点です。 FacebookやGoogleなどのOpenID ConnectベースのIdentity Providerを利用して認証できる Cognito Syncで、同一ユーザの複数の端末のデータを同期できる 認証/未認証のユーザにIAM Roleを利用して、AWSリソースのアクセス制御 上記の説明を聞いても、Cognitoの良さはさっぱり解らないと思います。私もCognitoの説明を読んでも、Facebookで認証できるのかぁくらいにしか感じませんでした。Cognito Syncの同期機能も、ほーっと思ったけど必要とする場面はどれく

    5分で何となく解るAmazon Cognito - プログラマでありたい
    terazzo
    terazzo 2015/01/20
  • ヤフー「つぶやき感情分析」で、衆議院議員の人気度を見る - プログラマでありたい

    ネットを見てると、面白いサービスが出ていました。 ヤフー株式会社は12日、ソーシャルメディア上の投稿を検索できるYahoo!検索の「リアルタイム検索」において、「つぶやき感情分析」の正式版を公開した。 つぶやき感情分析は、Twitter上の投稿を分析し、検索したキーワードについてユーザーがどのような感情を持っているかを、「ポジティブ」「ネガティブ」の割合でグラフ表示する機能。2013年9月にベータ版として提供を開始し、今回、正式版として公開した。 ヤフー「つぶやき感情分析」、Twitter上の感情を「ポジ/ネガ」で判定 -INTERNET Watch Twitterの情報をもとに、感情分析をするというサービスです。簡単にいうと、入力されたキーワードに対して、世間は好きか嫌いかを出すというサービスです。こういったことをやりたいなぁと思って、Twitterのデータを大量に収集したり、そのデータ

    ヤフー「つぶやき感情分析」で、衆議院議員の人気度を見る - プログラマでありたい
    terazzo
    terazzo 2014/11/13
    本名フルネーム
  • 作って覚える転置インデックス、「検索エンジン自作入門」 - プログラマでありたい

    先行発売で、検索エンジン自作入門を購入しました。まだペラペラと眺めている状況ですが、これが非常に面白いです。 「検索エンジン自作入門」は、集めた文章をいかに整理するかをテーマとして扱っているです。整理するという意味は、検索エンジンを利用するというライフハック的な意味ではありません。整理する為の検索エンジン自体を自分で作ることで理解するという、極めて硬派なです。 「検索エンジン自作入門」とは? 「検索エンジン自作入門」は、未踏IT人材発掘・育成事業にスーパークリエータに認定された山田浩之氏と、Senna/groongaの開発者の末永匡氏の共著です。検索エンジンについて語らせたら、日でこれ以上の人たちはいないだろうという組み合わせです。ということで、内容は非常に濃いのですが、難しい内容を解りやすく解説されています。 一方で、扱っている内容は非常にマニアックです。下に目次付けておくので見て

    作って覚える転置インデックス、「検索エンジン自作入門」 - プログラマでありたい
    terazzo
    terazzo 2014/09/22
  • みんな大好きc3インスタンスの今 - プログラマでありたい

    先月に発表されて以来、尋常でない人気を博しているのがC3インスタンスです。余りに需要が多すぎて、Amazon社も早急にリソースを増強するという異例の発表を行っています。 私たちは、このインスタンスタイプが人気になると確信していましたが、これだけ人気がでるとは想像していませんでした。 EC2チームが、C3の使用量の増加について、振り返り、調べた結果、これまで新しく導入されたどのインスタンスタイプにも見られないほど高いことがわかりました。 ここでは細かい数字についてはお話しませんが、今まで最も急激に成長したインスタンスタイプが22週間で達成したレベルに、C3はわずか2週間で到達してしましました! 現在、C3をリクエストした際に、そのキャパシティを確保できない方がいらっしゃるのはこのためです。 今まで一番人気だったインスタンスの10倍以上のスピードで、利用量が増えているとのことです。人気の理由は

    みんな大好きc3インスタンスの今 - プログラマでありたい
    terazzo
    terazzo 2013/12/21
  • 私が旨いと思う、普段飲みの1,000円台のワイン - プログラマでありたい

    昨日、軽い感じで1000円台のワインの選び方を書いたら、かなりの反響を頂きました。一方で、内容がないとか、解ってないとか、店員に聞けとか、割とフルボッコだったので少しグヌヌとしております。私はマズいワインに当たらない確率を上げる方法を書いたつもりですが、その当たりは余り伝えられなかったようです。一方で、地域にとっては状況が違うの部分が多いので出来るだけ抽象的に書いたのは問題だったかもしれません。その分、ブコメで俺が考える最強のワインを披露してくれているので、まぁ良いかなと思います。 味覚については人それぞれなので、私が勧めるものも合う人も合わない人もいると思います。でも、折角なので私が定期的に購入してセラーに入れておいているワインを紹介します。好きなように突っ込んでください。 ナパ・セラーズ ピノ・ノワール アメリカ 楽天で見ると2,000〜3,000円くらいで売っているけど、たまにヤマヤ

  • テストのデータ生成は、FixtureよりFactoryモデル - プログラマでありたい

    ブログからコードの匂いがしなくなってきたので、たまには開発論の話をしてみます。最近では、当たり前のようにテストのコードが書かれるようになってきて、時代が変わってきたなぁと嬉しくなります。しかしユニットテストを見ていると気になる事があります。それは、データベース関連のテストをする際に、事前にテストデータを入れ込んだDBでテストしているパターンです。いわゆるFixture(フィクスチャ)と呼ばれる手法です。 Fixtureの便利な点は、テストデータの準備が非常に楽という点にあります。例えば、テスト用のDBsqliteを使っているのであれば、事前にデータを入れておいたsqliteを用意しているだけで済みます。mysql等を使う場合でも、データを用意しておいてインポートするだけで良いでしょう。非常にお手軽に思えます。 では、欠点は何でしょう?テストコードがデータに依存し過ぎて、やがてDBのデータ

    テストのデータ生成は、FixtureよりFactoryモデル - プログラマでありたい
    terazzo
    terazzo 2013/07/18
  • 初めてのVagrant - プログラマでありたい

    @naoya_itoさんの入門Chef Soloとともに、にわかに注目されだしたVagrantです。Vagrantの読み方は、ベイグラントらしいです。意味は、直訳すると浮浪者ですが、意味するとことは形容詞の「あちこちに動く」でしょうね。 元々は、Oracleの仮想化ソフトであるVirtualBoxを操作する為のツールです。それが何故Chefと関係あるのという話ですが、VagrantのPluginのSaharaがもつsandboxという超絶機能のお陰です。何とこれ、サーバの状態をcommit & rollback出来るのです。いわゆるRDBにおけるトランザクション機能です。Chefのレシピを書いたことがある人は解ると思いますが、レシピを書く作業は割と試行錯誤の連続です。元に戻せるように仮想イメージ化するとか、対象の部分を丸ごとコピーしておくとか方法はありますが、割と面倒くさいです。Sandb

    terazzo
    terazzo 2013/04/08
  • Objective-Cで、プライベートメソッド・プロパティにアクセスし、ユニットテストを実行する方法 - プログラマでありたい

    iPhone/iOSの開発をしていく上で、Objective-CでPrivate Methodにアクセスしたいなぁと思うことがあると思います。パブリックメソッドには、外部からのインターフェースのみを実装し、ロジック部分はプライベートメソッドに隠蔽するといったケースは多々あると思います。その場合、ユニットテストはプライベートメソッドに対して行う必要があります。 そもそもObjective-Cでのプライベートメソッドは、どう実装するのでしょうか?実はObjective-Cでは、厳密な意味でのプライベートメソッドは存在しないのです。一般的にはカテゴリーという機能を使って、実装ファイル(.mファイル)に宣言して代用します。次のサンプルのような感じです。 #import "ExampleClass.h" @interface ExampleClass(private) - (void) privat

    terazzo
    terazzo 2012/09/10
    ExampleClass_private.hってファイルを作って.mファイルとテストコードからimportするのはダメなのか。
  • 1