タグ

ブックマーク / blog.riywo.com (14)

  • コードが読めるソフトウェア開発者 - As a Futurist...

    僕はコードを読むのは得意な方だけど、それが過ぎてコードを書かなくてもシニアソフトウェア開発者になってしまった。実はコードをちゃんと読めるソフトウェア開発者って希少価値が高いのではないか、と思ったので自分がどんな感じでシニアになったのかをまとめてみた。似た様な人の参考になれば幸いだ。 同意。僕は未だ書く方はほとんど機会なく成果もないけど、コードを読み尽くして、負荷試験や番で挙動を把握し続け、メトリクスでとことん確かめていった結果、Sr. Engineer になれた。 https://t.co/KXtMdEaRr8 — Ryosuke Iwanaga (@riywo) April 16, 2021 コードを書かなくてもシニアソフトウェア開発者になれた 僕は今 Amazon の Sr. Systems Development Engineer という職種で働いている。いわゆるソフトウェア開発職

    コードが読めるソフトウェア開発者 - As a Futurist...
  • フロントエンド初心者がGatsbyでブログを作り直した話 - As a Futurist...

    フロントエンド初心者が無事に Hugo のブログを Gatsby で一から作り直すことができた。その振り返り。 歴史 インターネットを小中学生(もはや 25 年以上前)に触り初めた頃に、HTML で文章の構造を作り CSS でデザインする、ということができるのを知って感動したけど、結局自分には何かが合わなくてそれを突き詰めることができなかった。というか、それを知ったが故にテーブルレイアウトとかがどうしても気に入らず、かといって CSS は float が難しすぎて、結局ウェブサイトを作る、という根的な営みをずっと避けてきてしまった。 時は過ぎ、Wordpress の様なブログエンジンや Hugo の様な仕組みがあったおかげでブログを初めて続けることはできた。13 年前にレンタルサーバに Wordpress を置いて始めたこのブログも 9 年前には VPS での Wordpress 運用に

    フロントエンド初心者がGatsbyでブログを作り直した話 - As a Futurist...
  • ポータブルなwebアプリケーションとそのインフラの未来の一考

    naoya さんのポータブルな Web アプリケーションを受けて最近思ってることをば。140 文字で時々書いてるんだけど、まとまりがないので一回まとめておきます。 12-factor app ステートフルなアプリケーションについては、Heroku の人が提唱してる 12-factor app というのが現在の状況をよく表してます。 The Twelve-Factor App The Twelve-Factor App(日語訳) Heroku や他の PaaS によってもたらされたこうした一種の”制約”によって、アプリケーションの新しいカタチが生まれてきています。引き算によって新しい価値が生まれてきているわけですね。 とはいえ、PaaS は PaaS でそれぞれに独自の仕様を持っているわけですが、Herokubuildpack という仕組みを使って、Heroku とインタフェース仕様

    ポータブルなwebアプリケーションとそのインフラの未来の一考
  • 最近のサーバの抽象化について - As a Futurist...

    学者でもなんでもない現場のいちエンジニアの感想です。しかも、どれもちゃんと使ったことないので、聞きかじりをまとめたメモ書きなので嘘が入ってますが、興味ある方がいればどうぞ。 はじめに かつては「OS=物理サーバ」であって、その物理サーバの資源(CPU,RAM,DISK,etc.)をどのように使うかは OS がプロセスに割り振る形で決定されていました。しかし、それでは例えば以下の様な問題があります。 ファイルシステム資源をプロセスが自由にコントロールできない ProcA と ProcB で使いたい libfoo のバージョンが異なる場合面倒 CPU, RAM 資源もコントロールしにくい 同居してるプロセスがメモリい尽くして、みんな死亡、みたいな そもそも異なる OS を同居して使うことができない CentOS ばかり使ってるのに、使いたいライブラリが Debian でしか動かないとか 解決

    最近のサーバの抽象化について - As a Futurist...
  • JenkinsでCronジョブを定義するjenkins_cronを作ってみた - As a Futurist...

    何年前の話題だよという感じですが、ふと Jenkins を Cron 代わりに使ってみようかなと思ったのですが、ブラウザの画面でポチポチするのはなんだかなーと思ったので、DSL を書いてそれを元に Jenkins の API を叩いて更新するというだけのモジュールを作ってみました。 jenkins_cron | RubyGems.org | your community gem host riywo/jenkins_cron 使い方 こんなイメージ。config/jenkins.ymlに Jenkins サーバへの接続情報を書いておきます。 . └── config ├── jenkins.yml └── schedule └── foo.rb DSL はconfig/schedule/*.rbという名前で、その中で job を定義していきます。 $ cat config/schedule

    JenkinsでCronジョブを定義するjenkins_cronを作ってみた - As a Futurist...
  • MyrokuというHerokuっぽいものを実装してみた - As a Futurist...

    あけましておめでとうございます。SF アドベントカレンダーも書けず、2012 年のまとめとかも書けず、まぁ何をしてたかというと生きるのに精一杯だったんですが、あともう一個やってたのがアプリ書くってことでした。前から、自前で簡単につかえる Heroku っぽい PaaS があるといいなぁと思ってたのですが、やっと動くものができましたので公開します。”My Heroku”で Myroku。 riywo/myroku-cookbooks · GitHub riywo/myroku-server · GitHub どういうもの? 基の挙動は超シンプルです。Heroku っぽい感じ。 好きな名前のアプリを作成する(sample-app) .llenvに使いたい LL のバージョンを書く(node-0.9.3) Procfileに起動するプロセス書く(web: node app.js) 一番最初に

    MyrokuというHerokuっぽいものを実装してみた - As a Futurist...
  • スキーマレスについてちょっと考えてみた - As a Futurist...

    このエントリはたぶんに煽り要素を含めていますが、意図的なものです。僕は NoSQL は素晴らしいと思います。 さて、NoSQL なんて言葉に踊らされてる人は置いといて、最近 RDBMS 以外のデータストアというのが色々でてきてます。今時点で見渡す限りにおいては、安定性、耐障害性、パフォーマンス、情報量、開発者の慣れ、全体のバランスで言えば RDBMS にかなうものはないわけですが、今後どうなっていくかはまぁ分かりません。 一方で、RDBMS がどうしても苦手とする分野というのは存在します。例えば 1 サーバに収まりきらない様な大容量データに対するバッチ処理、リアルタイムなランキング、アクティビティなどのフィード情報、そして構造化されたデータの取り扱い。何でもかんでも NoSQL に置き換えればいいなんて考えは現時点では到底受け入れがたいですが、例として挙げた様なピンポイントな部分ではそれに

    スキーマレスについてちょっと考えてみた - As a Futurist...
  • ひとりで作れる様になってしまうかも知れないと考えること - As a Futurist...

    この記事読んでてちょっと思ったことがあったのでメモ書き。 “理想の製品づくり”に挑む:若手エンジニアたった 1 人のメーカー経営(前編) (1/2) – @IT MONOist デスクライトも 1 人で製品化できる 記事で紹介されている八木啓太さんは、新型の電気スタンドを”一人”で創り上げて販売している。富士フィルムという会社でトータルなものづくりを学び、それを活かしつつ自分のアイデアを自分一人で創り上げることで最速で世に出した。 同社の驚くべき点は、デスクライト STROKE の企画、回路/筐体設計・試作、熱や耐久などの試験・評価、量産設計、梱包デザインに至るまでの全ての工程を八木氏自身がこなしたことだ。しかも、格的な設計開始から販売までの期間が、約 10 カ月。そして現在は、販売も営業も販路開拓も、全て自らでこなしているという。 “理想の製品づくり”に挑む:若手エンジニアたった 1

    ひとりで作れる様になってしまうかも知れないと考えること - As a Futurist...
  • オペレーションエンジニアとは何かを理解するために「ウェブオペレーション」を読んで欲しい

    最近は、@kazeburo さんの真似をして自分も「オペレーションエンジニア」と名乗ろうかと思ってます。正直最初にオペレーションエンジニアって聞いた時、なんのことだかよくわからなかったんですよね。ちょうどこの言葉を最初に見たのは 1 年前くらいで、その時僕は 2 年目に入ったところで MySQL Conference から帰ったばかりで「おらは DataBase Administrator(DBA)なんだ!」と思ってた頃でした。 それからちょうど 1 年。1 年目の時も DB だけをやってたわけではないですが、この 1 年はより広くより深くいろんなモノを見てきた関係で、自分の仕事は「DBA」だけだとちょっと説明に足りないなぁと思ってたところで、「オペレーションエンジニア」という言葉を思い出しました。そう、僕の仕事は「オペレーションエンジニア」なんです。ひよっこだけど ん、ちょっと待てって?

    オペレーションエンジニアとは何かを理解するために「ウェブオペレーション」を読んで欲しい
  • GNU Parallelがすごすぎて生きるのがつらい

    皆さん今日もたくさんのサーバを相手にされていることかと思いますが、いくつかのサーバにアクセスして 1 秒間の統計情報(例えばvmstat 1 2)を集めてパッと表示したい時ってどうやってますかね?shell script を学びはじめたばっかりの僕はこんな感じで書いてました。 $ for i in host1 host2 host3; do ssh $i "vmstat 1 2 | tail -1"; done 0 0 0 329004 210836 14275360 0 0 0 2424 1410 1828 0 0 100 0 0 0 0 0 3716112 587704 25921684 0 0 0 488 1643 2026 0 0 100 0 0 1 0 0 555440 265560 14015548 0 0 0 4204 1534 2392 1 0 99 0 0 vmstatと

    GNU Parallelがすごすぎて生きるのがつらい
  • RStudio使ってApacheのアクセスログをグラフにしてみよう - As a Futurist...

    最近個人的にやっと R のブームが来ています。2009 年に Tsukuba.R に参加して gfx さんの前で Perl の話をするという謎のイベントをこなして以来、「そろそろ R 使うか」と言い続けてはや 2 年。ついに遅れたマイブームがやってきました。 さて、今回やってみたのは前回入れてみたサーバ版の RStudio を使って、Apache のアクセスログを何らかグラフにしてみたという内容になります。凝ったことしようとしたんですが、そもそも R がよく分からなかったのでとりあえずできた最低限の話と、いくつか BK 的なものを。間違ってたら教えてくだしあ>< 今回の目標=アクセスログの 1 時間毎のヒストグラムをグラフにする とりあえずということで、こういうグラフを作ることを目標にしましょう。数値だけであれば以前紹介したコマンドラインで十分でこんな感じ。 参考:突然の Twitter

    RStudio使ってApacheのアクセスログをグラフにしてみよう - As a Futurist...
  • RStudioがすごそうなので使ってみた - As a Futurist...

    最近出たプロダクトで「RStudio」というのがあるんですが、試しに使ってみてあまりにも洗練されてて感動したのでエントリにしました。 RStudio って何? そもそもなにするものかというと、統計分析・グラフ作成プログラミング言語である R の IDE みたいなもので、PC 上でスタンドアローンで動かすこともできますし、サーバ上のリソースをブラウザ越しに扱うこともできます。スタンドアローンの方はすでに WindowsMac などひと通りバイナリありますし、サーバの方も Ubuntu/CentOS はバイナリあって楽々使えるようです。 ちなみに最初 Amazon Linux で動かしてみようと思ってたんですが、Amazon Linux は微妙にパッケージを新しくした CentOS みたいな感じなので各所でライブラリのバージョンがずれてて依存関係で破滅的になりました。だったら make

    RStudioがすごそうなので使ってみた - As a Futurist...
  • リソースモニタリングツール「CloudForecast」入門 - As a Futurist...

    kazeburo さんが開発をされているサーバリソースの可視化ツール「CloudForecast」ですが、個人的に使ってみていてとても使いやすいなと思っています。もっと使ってくれる人が増えるといいなと思い、自重せずに入門エントリを書いてみました。 CloudForecast って何? そもそも何なの?という話ですが、CloudForecast とはリソースのグラフ作成ツールとして有名な「RRDTool」の薄いラッパーとして作られています。記述言語は Perl ですので、Perl と RRDTool の使い方が大体分かっている人にとっては導入さえしてしまえばかなりかゆいところまで手が届く=カスタマイズが簡単かつ自由自在なツールだと思います。とりあえずのイントロとしては kazeburo さんの YAPC::Asia 2010 でのこちらのスライドをご覧頂ければと思います。 RRDTool っ

    リソースモニタリングツール「CloudForecast」入門 - As a Futurist...
  • MySQLでslave追加時にmasterが全力でbinlogを送って困る時 - As a Futurist...

    たまにはしょうもない TIPS でも。MySQL の魅力といえば言わずもがな 10 年の歴史を誇る「レプリケーション」の仕組みだと思います。これさえあれば 1 つの筐体で必死にデータ保全しなくてもコピーがいくらでも増やせるし、@nippondanjiさんのスライドにある通り、レプリケーションの妙技を駆使することで様々に柔軟な運用を行うことができます。 Art of MySQL Replication. slave 追加とは? さてそんなレプリケーションですが、実運用で最も多く行われるオペレーションは「slave の追加」だと思います。追加の方法は大きく分けると 2 通りです。(ストレージエンジンは InnoDB を想定。というか InnoDB 以外認めません><) 論理バックアップを利用 mysqldump 等を利用して論理的にデータの静止断面を作る&その時の binlog のポジションを

    MySQLでslave追加時にmasterが全力でbinlogを送って困る時 - As a Futurist...
  • 1