タグ

ブックマーク / hakobe932.hatenablog.com (16)

  • gRPCを学んでいる - はこべにっき ♨

    マイクロサービスや自作ミドルウェアのAPIをメンテナブルにしたいよねっていう文脈で、OpenAPIGraphQLgRPCといった技術が採用されるのを最近よく目にする。 バックエンドを実装しているWebエンジニアとしては、こういう仕組みが整備されつつあるのはありがたい。APIをシステムの外に公開しようとすると、ドキュメンテーション/バリデーション/クライアントの実装など、意外と副次的な作業が必要なので、、汎用化されたツールに頼れるのは助かる。マイクロサービスを用いたアーキテクチャを考えるにあたっても、システム間のアダプタをイメージしやすくなる。 そういう背景で、最近家ではgRPCを調べている。このあとはgRPCについて調べたことのメモや感想のコーナーになっているので、興味があったらどうぞ。 主な情報源 だいたいこのへんを眺めておくと、gRPCの基については抑えることができる。 grpc

    gRPCを学んでいる - はこべにっき ♨
    advblog
    advblog 2018/04/05
  • Fluent Pythonを読んだ - はこべにっき ♨

    Fluent PythonPythonicな思考とコーディング手法 作者: Luciano Ramalho,豊沢聡,桑井博之,梶原玲子出版社/メーカー: オライリージャパン発売日: 2017/10/07メディア: 単行(ソフトカバー)この商品を含むブログ (1件) を見る ちょいちょいPythonのコードを書くことが出てきたので、ちゃんとした使い方を学ぶために読んでみた。Pythonic にオレはなる! 目次 を見るとわかるのだけど、データ構造、関数、オブジェクト、制御構造、メタプログラミングと言語の機能を広く深く取り扱っていて、Pythonをしっかり理解するという目的にはぴったりだった。Pythonの基文法は抑えてるのが前提になっているので、初学者は入門 Python 3あたりを読んでおくと良いと思う。 このが良いのは、各章ごとに参考文献がかなり充実している点だ。章の終わりに油

    Fluent Pythonを読んだ - はこべにっき ♨
    advblog
    advblog 2018/02/19
  • ざっとわかるPythonの紹介 - はこべにっき ♨

    普段Perlを書いている自分がざっくりPythonについて調べて発表した時の資料が手元に転がっていたので、せっかくなので公開した。 普段、別の言語でWeb開発している人が、自分の言語のアレはPythonだとコレなのねって雰囲気わかるようになっているといいなと思って作ったけど、見返すとそうでもない気がする。 自分もPython初心者なので、「おいおいまったくまちがっているぜ! 」といったことがあったら教えてほしいです。京都に住んでいるのだけど、関西のPythonコミュニティの雰囲気もよく知らないので情報募集です。 あと資料で紹介しているブログのコードは以下においてある。自分がよくやる感じの薄い設計でかんたんなブログシステムをPythonで書いたらこんな感じかな~ってコードになっている。 github.com

    ざっとわかるPythonの紹介 - はこべにっき ♨
    advblog
    advblog 2017/11/03
  • レガシーソフトウェア改善ガイドを読んだ - はこべにっき ♨

    めっちゃ似た名前の"レガシコード改善ガイド"とは別の。レガシーコード改善ガイドは結構前のだけど、このレガシーソフトウェア改善ガイドは去年刊行されたばかりだ。hitodeくんと会話してて気運が高まったので読んだ。 レガシーソフトウェア改善ガイド (Object Oriented Selection) 作者: クリス・バーチャル,吉川邦夫出版社/メーカー: 翔泳社発売日: 2016/11/11メディア: 単行(ソフトカバー)この商品を含むブログを見る このは、レガシーソフトウェアがメインのテーマにしているけれど、古びてどうにもならなくないソフトウェアプロジェクトへの対処のみにフォーカスしているのではなく、普段から開発しているコードをどうやって継続して進化させられるかといった内容が主で、どんなソフトウェアエンジニアにも勧められそう。 このの章の構成をみると、大きくはリファクタリングに関

    レガシーソフトウェア改善ガイドを読んだ - はこべにっき ♨
    advblog
    advblog 2017/02/13
  • PythonでWebアプリケーション作る練習をした - はこべにっき ♨

    最近流行っている雰囲気があるPythonだけど、僕も年末にふと気分が高まったので、練習をしてみた。 自分にとってはPerlRubyよりも先に勉強した、初めてのスクリプト言語がPythonだったので、ちょっとだけ思い入れがある。とはいえ、何年も前に初めてのPythonで勉強した後は、稀に使うくらいだったのでPythonならではの良い書き方とか、良いライブラリの知見とかは全然持ってなかった。 そこで、Pythonに入門しなおしてPython流を思い出した後、自分が気になっているWeb開発をやってみてどういうもんなのかを一通りやってみた。 このエントリは、GoでWebアプリケーション作る練習をしたの続編です(さらに続きはないでしょう)。 入門 Python3 を読んだ 入門 Python 3 作者: Bill Lubanovic,斎藤康毅,長尾高弘出版社/メーカー: オライリージャパン発売日:

    PythonでWebアプリケーション作る練習をした - はこべにっき ♨
    advblog
    advblog 2017/01/17
  • HTTPSのWebサーバを設定した (h2o + Let's Encrypt) - はこべにっき ♨

    最近、ハイパフォーマンスブラウザネットワーキングを読んでいて、HTTPSについてちょっと勉強しています。勉強にあたっては、実際に試せる場所があったら便利そうなので、自分のさくらVPSにHTTPSのWebサーバを設置してみることにしました。この次はHTTP2の実験もしたいので、先進的なHTTP2の機能が実装されていそうなh2oを使ってみることにしました。 環境 今回の作業は以下のような環境でやりました。 $ uname -a Linux douzemille 4.4.0-36-generic #55-Ubuntu SMP Thu Aug 11 18:01:55 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux $ cat /etc/lsb-release DISTRIB_ID=Ubuntu DISTRIB_RELEASE=16.04 DISTRIB_CODENA

    HTTPSのWebサーバを設定した (h2o + Let's Encrypt) - はこべにっき ♨
    advblog
    advblog 2016/09/23
  • 手を動かして電子工学を学ぶ - はこべにっき ♨

    このエントリは、はてなデベロッパーアドベントカレンダーの20日目のエントリです。昨日の記事は id:aereal さんの連打を支える技術でした。明日の記事は id:astj さんです。 最近はWeb技術以外にもできることを増やそうと考えて、電子工学に入門しています。ほとんど何もしらないところからの入門ですから、理論を学びつつ手を動かして何か作ってみる作戦でいきたいところです。 しかし、自分の場合、手を動かすために丁度良い課題に取り組みたいものの、何をやればまったくわかりませんでした。 こんな風に困ってしまうことは、0から電子工学に学びはじめたい人にとっては、よくあるのではないでしょうか。そこで、このエントリでは、電子工学をはじめる人がとりあえず何か手を動かして学ぶための方法をご紹介したいと思います。 TL;DR Make: Electronics ―作ってわかる電気と電子回路の基礎を読み、

    手を動かして電子工学を学ぶ - はこべにっき ♨
    advblog
    advblog 2015/12/20
  • node.jsでtrayという画像アップローダを作った - はこべにっき ♨

    昨日のKyoto.js #2 で、trayというお手軽な画像アップローダについて発表してきました。ドラッグアンドドロップで画像がアップロードされます。画像は12枚のパネル上に表示され、誰かがアップロードするとリアルタイムで画面が切り替わったりします。 http://tray.douzemille.net:8080 http://imagetray.herokuapp.com/ でお試しできますので、お手元の適当な画像をドラッグアンドドロップして遊んでみてください! 何アップロードされているかはよくわからないので、ご注意ください。たまに勝手に適当な写真に切り替わるようにしてあります。*1 ドラッグアンドドロップでのアップロードが手軽で便利なだけではなく、12枚のパネルにきれいな画像をはめこむおもしろさもあります。 割と簡単に設置できておもしろいのでぜひおためしください。GIFアニメを投稿しま

    node.jsでtrayという画像アップローダを作った - はこべにっき ♨
    advblog
    advblog 2012/11/30
  • TitaniumのコードをGUIなしでエディタからすばやくbuildする - はこべにっき ♨

    最近ちまたではTitaniumが話題ですね。はてな技術勉強会で紹介されたのをきっかけに少しいじってみています。 Titanium開発では、通常Titanium DeveloperというGUIアプリケーションを使ってコードをbuildします。開発中は、どうしてもTitanium Developerとエディタとの行き来が必要で、なかなか不便です。 そこで、Titaniumのコードをvimなどのエディタから一発で、すばやくbuildできるようになるスクリプトを書いてみました。ついでにXCodeもTitanium Developerも(GUIの部分は)起動しなくてよくなります。 https://gist.github.com/715378 使い方 https://gist.github.com/715378 を Titaniumのプロジェクトの直下に置いて、 $ perl build.plのよう

    TitaniumのコードをGUIなしでエディタからすばやくbuildする - はこべにっき ♨
    advblog
    advblog 2010/11/26
  • ScalaでWebM形式の動画再生 - はこべにっき ♨

    それなりにたいへんそうで勉強になるかと思い、ScalaでWebM形式の動画を再生するコードを書いてみた。やりたくなったから、やっただけなので特に有用性とかはないです。 WebMのデコーダを準備する Javaで、WebM形式の動画を扱うには gstreamer-java が使える。 gstramer-java はネイティブのgstreamerを呼びだすのでインストールする。また、gstreamerがWebM形式の動画をデコードできるように、デコーダもインストールしておく。 WebMデコーダのインストール WebMのデコーダ(libvpx)のソースコードをcloneしてビルド/インストール。 $ git clone git://review.webmproject.org/libvpx.git $ cd libvpx $ ./configure $ make $ sudo make insta

    ScalaでWebM形式の動画再生 - はこべにっき ♨
    advblog
    advblog 2010/07/11
  • はてなフォトライフに写真を投稿するAndroidアプリ - FotoHook - はこべにっき ♨

    FotoHookという名前のAndroidアプリを作りました.FotoHookを使うとAndroidで撮った写真をはてなフォトライフに簡単にアップロードできます. 特徴として,FotoHookは写真のアップロード完了時に,自動的にWebHookを起動することができます.WebHookにはアップロードされた写真のURLなどもろもろが渡されるので,その情報を使って写真に対していろいろな処理をすることができます.例えば,アップロードした写真のURLをtwitterに投稿したり,小さく圧縮した写真をメールでだれかに送ったりすることができます. まとめると,以下の図のようになります. このFotoHookをAndroid Marketに登録して公開しています.FotoHookで検索すると見つかると思います.また,ソースコードをgithubで公開しています. 使い方 基的な使い方は,demuyanさ

    はてなフォトライフに写真を投稿するAndroidアプリ - FotoHook - はこべにっき ♨
    advblog
    advblog 2009/10/15
  • Kansai.pmでコルーチンについて発表してきた - はこべにっき ♨

    Kansai.pm#11にて「Perlで学ぶコルーチン」という発表をしてきました. だいぶ前のRuby勉強会でRuby 1.9のFiberをみてPerlでもいろいろやってみていたので,その時しらべたことを中心にぐだぐだとしゃべりました. Perlで学ぶコルーチンView more presentations from hakobe. コルーンは継続や並行処理などいろいろな概念がからんでいて調査がたいへんでした.PerlでのCoroの実装がどうなっているのかもう少し詳細に調査/発表できたらよかったです. スライドにも書いてますが,Ruby 1.9のFiberとまったく同じインターフェースをもったFiber.pmをつくってみました.githubで 公開しています. http://github.com/hakobe/perl-fiber/tree 以下のように簡単にFiber(=コルーチン)をつ

    Kansai.pmでコルーチンについて発表してきた - はこべにっき ♨
    advblog
    advblog 2009/03/23
  • gitのステータスをプロンプトに表示したよ - はこべにっき ♨

    みんなやってて今さらな感じですね. これまでおれおれスクリプトを使ってやっていたんですが,zsh-gitというプロジェクトで公開されているPROMPTテーマを使うとすごい楽に高機能なプロンプトにできました.インストール方法とかはREADMEと付属のzshrcを参照してね! 現在のブランチ名以外にも,untrackedなファイルがあると '!' を表示したり,modifiedなファイルがあると '?' を表示してくれたりするので,なかなか高機能です. ただ,ちょっと表示がうるさい感じだったのでちょっとカスタマイズして使っています. 不覚にもゆのっちに表情がついて良い感じです. このプロンプト設定ファイルはこちら

    advblog
    advblog 2009/02/01
  • Kanasan.JS #6 で prototype.js を読んだよ! - はこべにっき ♨

    あ…ありのまま 今日 起こった事を話すぜ! 『前回参加したときに読み始めたprototype.jsが,次に参加したときには読み終わっていた』 というわけで,#1にいったっきり参加できていなかった,Kanasan.JS prototype.js CodeReading#6に参加してきました.全部で,4221行あるprototype.jsも6回目で,ついに,最後にたどりつきました. といっても,うちはなかなか参加できて無くて,今回が2回目の参加であるばかりか,10:00開始だったのに起きたら11:00とかというぐだぐだっぷりで,あまり読めてないのですが><.しかし,せっかくなので,今日読んだ部分の後半部分で気になったところのメモを残しておきます.以下,行数はprototype.js 1.6.0.2に対応します. 3843行目あたり function getEventID(element) {

    Kanasan.JS #6 で prototype.js を読んだよ! - はこべにっき ♨
    advblog
    advblog 2008/10/17
  • Google Tech Talk in 京都 に行ってきた - はこべにっき ♨

    Google Tech Talk in 京都に行ってきた.詳しいレポートはどっかがきちんとやってくれると思うので,個人的な雑感をだらだらぐだぐだと書いておくよ.ちなみに,ustは禁止されていたのでできなかった. 発表内容は,技術講演会というよりも技術紹介が多かった印象.もうすこしつっこんだ話があるのかと思ったけど,そうでもなかったかなぁ. 内容がおもしろくなかったというわけではなくて,Googleの開発のスタンスがかいま見られたのは良かった.意外と日オフィスでも,メインの開発に関わっているのだね. はてなのid:naoyaさんの発表も興味深かった.発表の最後のほうにあった,「世界を変えることで自分の人生を良くしよう」というフレーズはすばらしい. あと,はてなはサマーインターンを募集しているらしく,個人的にインターン熱の高まる昨今,非常に興味があるものの,現在のバイトとの兼ね合いとかもあっ

    Google Tech Talk in 京都 に行ってきた - はこべにっき ♨
  • gitリポジトリの仕込み方 - はこべにっき ♨

    最近のgitリポジトリの仕込み方のオレオレまとめ. このソースコードはバージョン管理しとこうかなと思ったら,プロジェクトのディレクトリで, $ git init としてリポジトリをつくる.とりあえず,ここでコミットしまくる.初期化のらくちんさがgitの良いところの一つだと思う. そのうち,このリポジトリを複数のマシンからアクセスしたくなる.(サーバ/クライアントなsvnっぽく使いたくなる.) そうなったら,おもむろにサーバ機で $ git clone --bare /path/to/git/working /path/to/git/repos.git としてbareリポジトリをつくる.bareリポジトリは,作業ファイルがない管理情報だけのgitリポジトリ.リポジトリにgit pushとかをしたい場合はbareリポジトリにする.bareじゃなくてもいけるっぽいけど,どうせそこでは作業しない(

    gitリポジトリの仕込み方 - はこべにっき ♨
    advblog
    advblog 2008/05/22
  • 1