タグ

ブックマーク / medium.com (26)

  • プログラマーテストの原則 by Kent Beck

    チョコレート対バニラTDD対BDD。このテストツール対あのテストツール。テストビフォー対テストアフター対これは動くから俺を信じろ。ある時期から、こうした詳細に関する議論には飽きてしまった。もっと原則について議論したい。 詳細に関する議論はなかなか結論に至らずに、話が行ったり来たりする。チョコレート対バニラ。チョコレート。バニラ。チョコレート。バニラ。 詳細の議論に負けを認めさせられるようなことがあっても、その譲歩は絶対的なものではない。私の状況がチョコレートを勧めているのに、私にバニラをべさせてくれと言えるだろうか? これでは埒が明かない。 原則一方、原則は議論を生み出す基盤になる。原則には賛成しても状況が違っているのなら、答えは違ってくるかもしれないが、そこで論争になることはない。原則が、異なる状況における異なる答えを生み出したのである。 詳細で論争するよりも、原則で論争したほうが生産

    プログラマーテストの原則 by Kent Beck
    tenkoma
    tenkoma 2019/10/25
  • 優秀な人ほど転職市場に出てこない世界の話

    「元々そうやったやん」という声もあるかも知れないけど、ここ数年は特に顕著に感じるし、共感してくれた方が多かったのもそういうことだと思う。 今だから感じている今のこの世界をきちんと言語化しておきたいと思う。 過去に同じような話を数多させていただいてきたのでもしかしたらどこかで同じ話をしてしまっているかもしれない。 またここで言う私が感じているこの世界は、現在の日でも特に東京、インターネット業界の話である。また転職の仕方によって、その人が優秀か優秀でないかとかそういう話がしたいわけではないのでご理解いただけると幸いだ。 世はまさに、超売り手時代最近のこの界隈はお陰様で以前と比較するとお金の集まる業界になっている。インターネット業界のコストはいろんな事業モデルが出てきたもののやはりコストにおける人件費の割合は非常に大きく、事業成長に対する「人」の重みが特に強い業界な気がする。お金の使用用途はも

    優秀な人ほど転職市場に出てこない世界の話
    tenkoma
    tenkoma 2019/07/23
  • RootlessモードでDockerをより安全にする [DockerCon発表レポート]

    NTTの須田です.Moby (≒Docker),BuildKit,containerdなど,コンテナ関連のオープンソースソフトウェアのメンテナ (開発委員.コミッタとも.)を務めています.また,Docker Meetup Tokyoの企画・運営も行っています. 2019年4月29日~5月2日にかけて, Docker公式のカンファレンスである DockerCon が サンフランシスコにて開催されました. Dockerをより安全に使うための技術「Rootlessモード」に関して発表してきましたので,紹介します. RootlessモードとはRootlessモードは,Dockerデーモン及びコンテナを,非rootユーザで実行する技術です.Rootlessモードを用いることにより,万一Dockerに脆弱性や設定ミスがあっても,攻撃者にホストのroot権限を奪取されることを防ぐことが出来ます. 須田は

    RootlessモードでDockerをより安全にする [DockerCon発表レポート]
    tenkoma
    tenkoma 2019/05/11
  • 私的コードレビュー お作法

    集団でソフトウェア開発をするときは、コードレビューをしたりされたりしながら進むのが当たり前となった昨今。 僕が自然と心掛けるようになったコードレビューお作法などをお気楽に書いてみます。 安易に「良い」とか「悪い」とか、一次元的な評価を下すのはよす他人のコードに対し、絶対的に「良い」とも絶対的に「悪い」とも、「大正義」とも言わないようにしている。 コードの書き方や設計の出来栄えは、評価するための色々な物差しがあって、「良い」「悪い」の2つに1つ、斬って捨てられるようなものではないと思う。(むしろ、そういう単純なものではないからこそおもしろいんじゃないだろうか……?) どのような指標をもちだすか、どういった利点/欠点に注目するのか、どんな畑で育ってきたプロダクトか、状況によって下すべき評価は変わるし、数えきれないほどある 設計パターンや慣習、従うべき原則、美的感覚のなかには、相反する「正しさ」

    tenkoma
    tenkoma 2019/04/24
  • Block party

    There’s now a simpler, more flexible way for you to build engaging apps in Slack. Two releases make this possible: Block Kit, a UI framework made up of stackable “blocks,” and the Block Kit Builder, a prototyping tool that enables you to quickly design and code interactive Slack apps. Defining your app’s TL;DRCheck out the sample app below. Isn’t it formatted nicely? The call to action to approve

    Block party
    tenkoma
    tenkoma 2019/02/15
  • 12 Factor CLI Apps – Jeff Dickey – Medium

    CLIs are a fantastic way to build products. Unlike web applications, they take a small fraction of the time to build and are much more powerful. With the web, you can do whatever the developer programmed. With CLIs, you can easily mash-up multiple tools together yourself to perform advanced tasks. They require more technical expertise to use, but still work well for admin tasks, power-user tasks,

    12 Factor CLI Apps – Jeff Dickey – Medium
    tenkoma
    tenkoma 2018/10/11
    dry run モードを用意するとか、なるべく再実行しても問題が起こらないように作る、みたいなのも期待したけど。企業内で使うツールよりは公開するツール寄りの話かなと思った。
  • 株式会社メルカリに新卒入社しました

    2018年4月に株式会社メルカリに新卒入社しました.職種はソフトウェアエンジニアで,Goでマイクロサービスを開発しています.ちなみに,入社したのはメルカリですが,メルペイに出向となったので現在は株式会社メルペイにいます.なんで4月じゃなくて,今書いているのかという話ですが,試用期間中だったので(入社エントリ書いて即解雇されたら辛いので...)書きませんでした.今日出社したら席がちゃんとあり,なんとかまだ在籍できているみたいなので,入社エントリを書きました. 入社するまでの経緯@b4b4r07さんのこのエントリがきっかけでした. このエントリ中で, 16 新卒は 6 人いて、今は 17⁄18 卒の新卒採用に向けて動いています。 採用会など、まずは話から聞いてみたいなという方がいましたら、僕経由で繋ぐことができるかもしれませんので興味があれば Twitter DM でもいいですし、コンタクト

    tenkoma
    tenkoma 2018/07/03
  • 辞める時に会社のほんとうの姿が見えるよね、という話

    私自身、独立するまで3回転職しているので、何度かは「会社辞めます」と上司や社長に伝えていることになるのですが、その際に思ったのは、辞める時に伝えた時の反応やコミュニケーションで会社の当の姿が見えるなーと思いました。 いままではぼんやりとそう思っていたのですが、先日友人との話の中で「会社が当に社員をどう思っているか」「辞めた社員がその会社のことを何と言うか」は辞める時の対応によってだいぶ変わるなーと感じる場面がありました。 辞めるときの対応として印象的だったのはその友人が話していたことを簡単に書くと、前職はIT系スタートアップを辞めることを代表の方に伝えたところ、「なるほど…。そういうことか、わかったよ。給与2倍にするから」と言われたそうです。 まじか…という感じですが、結構こういう社長というか会社あるんですかね!? どうやらこの会社は退職者が続いていて、当の理由はこの代表の価値観につ

    辞める時に会社のほんとうの姿が見えるよね、という話
    tenkoma
    tenkoma 2018/06/24
  • 就職/転職活動に悩むみなさんへ

    能動的な意思決定を結論を先に書きます 二つ以上の選択肢を自力で見つける(=決めるのは自分)その上で自分の意思で決める(=モノサシは自分で持つ)この2つがとても大切だと思っています 前のめり突然ですが、「何らかの決まりごと」についてみなさんが「やりたくないなー」みたいな、「少し嫌な思い」をしたことを思い出してください。 おそらくそれは「人が決めたこと」だったり「周りに流されて決まったこと」だったのではないでしょうか。 人に言われて何かを学ぶ流行りだしたから何かを始めてみるこれらが続かないのに、 自分がやりたくて始めたことは不思議と続くものだったりします。そして次第に前のめりになっていきます(前のめれる仕事、いいですよ) 情報は集めるよりも減らすほうが大変就活は情報戦、とよく言われます。 ある広告担当の友人から聞いた話ですが人は1日に5000以上の広告情報を目にするそうです。 就職、転職に関す

    就職/転職活動に悩むみなさんへ
    tenkoma
    tenkoma 2018/05/19
    たくさんの情報を集めるんじゃなく、自分で決めるための情報集めとか
  • 真面目な人を本気にさせる方法

    先日、他社の開発の方々が、アジャイルに関する相談ということで、弊社にいるアジャイルに詳しい髪の長いおじさんに訪ねてきた。その中で、実感駆動開発の話になって、久しぶりに「気(マジ)と真面目(マジメ)」の話を聞いた。 この話を聞いてから、人がプロダクトの価値について考えられるようになるにはどうしたらいいのか考えてみた。 TL;TRありきたりな回答だけれど、さっさとリリースして、さっさと使ってもらう。それをできるためのことを、もちろんリスクを下げつつ、できるようにするためのことを頑張ろう。

    真面目な人を本気にさせる方法
    tenkoma
    tenkoma 2018/04/27
  • GEからBASEへ。大事にし続けたい事3つ。 – Toshi Yabe – Medium

    tenkoma
    tenkoma 2018/04/15
  • Twitter就活とキャリアとか

    今回、あまり意図しない転職であったため、いろいろと想定外のことも起こったのですが、私の今までのキャリアも含め、Twitterで就活して良かった点、苦労した点を書いていこうと思います。 新卒で某大手のネット企業に入ったのですが、働くということについて疑問を持ったのと、父がガンになり介護が必要などと家族の事情で2年間と半年間、実は実家手伝い(=実質ニート)という人から見たらだいぶアレな感じでした。 ここまで落ちぶれてしまうと、田舎品工場でお寿司にたんぽぽを乗せる仕事などが適切な感じなのですが、投げた人生を可能な限りリカバリーしてみようと思ったのでした。 今に至るまで2014/4 ~ 2016/9 ニート時代 ProjectEulerなどをやったり、家族を病院に送り迎えしたり、地元のヤンキーたちと遊んでたりしていました。 2016/9 働いてみようかなと思う 機械学習については大学と大学院で

    Twitter就活とキャリアとか
    tenkoma
    tenkoma 2018/04/03
  • YouTube LiveのWebRTCサポートを技術的にみた感想 – meteor – Medium

    今朝、Twitterを眺めていたらYouTubeがウェブカメラから直接配信できるサービスを始めたと聞いて詳しく調べてみました。 以前にもYouTube LiveにてGoogleハングアウトを使ったカメラ配信は出来たのですが、これは恐らくRTMPを使ったもので今回はWebRTCを使っているため、全く別物です。 現在はGoogle Chromeのみ対応しているようですが、FirefoxやSafariにも今後対応していくと考えられます。 配信基盤 YouTube Liveのカメラ配信では、先ほど述べたとおりWebRTCを使っています。 ですので、ブラウザ単体で配信することが出来ます。現在はカメラのみで画面共有は対応していないようです。 視聴者側はWebRTCではなく、トランスコード処理を行いMPEG-DASHまたはHTTP Live Streamingで配信されています。 これはWebRTCで大

    tenkoma
    tenkoma 2018/03/22
  • 年収に効く要素とは何か

    Getting Started年収を表現するには様々なものから予想する必要があります。 新卒での就職や、中途での就職にはどのような方法で選ぶのでしょうか。 働き方などもあると思いますが、一つ重要な要素として年収(給与)の大きさがあるかと思います。 DoDaさまという転職サイトには大量の求人が記されており、この説明文から給与を予想することで、どのようなことが年収に影響をおよぼすのか、定量的に確認していきたいと思います アルゴリズムElasticNetを利用します。単語ごとに重みをつけるBag of Wordsを利用しようと思います 精度自体はさほどではないですが、解釈性がよいので、見通しが立てやすく、LassoとRidgeの双方の正則化項を利用します(ゴミみたいな情報が多いので正則化項は重要です) 予想精度自体はGBMやDeep Learningのほうが当然いいのですが、解釈を求めていきます

    年収に効く要素とは何か
    tenkoma
    tenkoma 2018/02/26
  • ペイモのリファクタリングとの戦い

    割り勘アプリ「ペイモ」がリリースされて早1年。僕がペイモiOSの開発に関わり初めたのはリリース直後だった。驚くべきことに、当時、弊社AnyPayにはアプリエンジニアが誰もいなかった。 誰がペイモを作ったのか。そう、完全に外部のチームがペイモiOS/Androidを作りあげたのだ。それもおよそ3ヶ月という短い期間で。さらに、プレスリリースの日付も決まっていたので、決して遅れることは許されなかった。今、当時の仕様書を振り返ってみても、よくこれをそんな短時間で作り上げたな…となってしまう。 では、そんな短時間でこんなハードな開発を行うとどうなるのか…。ブクブクに太ってしまったViewController。APIから受け取った配列データをDictionaryにマッピングした結果期待通りの順番が保証されていないデータ群。急に登場するTableViewController。どこで値が更新されているのか

    ペイモのリファクタリングとの戦い
    tenkoma
    tenkoma 2018/02/02
  • コインチェック事件は『対岸の火事』ではない

    私は創業してからおよそ2年のベンチャー企業を経営しており、CTO兼唯一のプログラマだ。私含め3人の共同創業者と、多くの支援者の力により、これまで自己資でなんとか開発を続けてきた。 先日、私達の会社は大きなマイルストンを迎え、サービスをβ公開させ、これから大きく勝負に出ようと思っていた。その最中、今回のコインチェック事件が発生した。 私達が行う事業は暗号通貨とは全く関係が無いため、来であればこれは『対岸の火事』だ。しかし、総額580億円という被害額を生んだ今回の事件は、暗号通貨市場だけでなく、スタートアップ界隈全体へ影響を及ぼすことが容易に想像される。 事件の余波今回の事件で最も強く感じたのは、技術の力で新領域を切り開くスタートアップ企業こそ、時には成長を犠牲にしてでも、技術的安全性・信頼性を優先するべき、ということだ。 顧客にリスクを押し付けることが絶対に起きてはいけないし、少しでも顧

    tenkoma
    tenkoma 2018/01/29
  • Day One – Yamotty – Medium

    2017年12月20日に生まれて初めてプレスリリースを出し、いくつかのメディアから取材記事も公開していただいた。 PR TIMES プレスリリースTechCrunchTHE BRIDGEこのMediumエッセイは上記で伝えきれなかった自分の思想を、ポツポツと、とりとめもなくまとめたものになる。また性懲りもなく長いため、お時間のある際に読んでいただければ嬉しい。 Make Something People Want僕は「人が欲しがるプロダクトを創ること」に人生をかけたい、と思っている。 僕は毎日新しいプロダクトとの出会いを求めて、とにかくいろんなものを手にとって触る習慣がある。リアルプロダクト、アプリ、Web、IoT、コモディティ、証券など、なんでも。 毎日、必ず、新しいものを触る。そして手に取ったプロダクトを通じて、作り手のビューを想像する。「このプロダクトは、誰の、何を解決するものなのだ

    Day One – Yamotty – Medium
    tenkoma
    tenkoma 2017/12/30
  • Stop supporting old releases.

    A call to action for maintainers to support themselves and move forward. Big notable projects like Linux and Node.js have comforting long term support cycles that ensure Enterprises and other production users can continue to use a release for years without migrating to a new one. The ecosystems built on top of these projects tend to try and follow a similar cycle. They keep old releases in their C

    Stop supporting old releases.
    tenkoma
    tenkoma 2017/11/04
  • CTOと技術執行役員就任 – Isoparametric – Medium

    CTOと技術執行役員就任会社の最も大きな課題であった「ゲームが売れていない」は解決し、それぞれの技術的な課題も解決できないほど大きなものではなかった。 しかしながら、そうしてゲームを高速に水平展開することを進めていく中、ヒットゲームの運用ノウハウを持っていないために、チームは疲弊を溜め込んでいた。 運用の仕組みをつくる前に運用が始まって負荷が急上昇したのだから、必然とも言える。 速度が必要とされるソーシャルゲームでは、ゲーム内イベント開始の前日に正式なグラフィックが出来てきて、テストプレイしたら修正依頼が入り、直前であっても修正を余儀なくされるということが頻発していた。 朝7時に始まるイベントをギリギリまで開発していて夜中の2時に「これは無理だな」といって延期のお知らせを出したことさえある。 また、積み重ねがないため、障害時のトラブルも頻発していた。 夜中だろうと何だろうと、たった一人しか

    tenkoma
    tenkoma 2017/09/17
  • 知らないうちにどんどん人が増えていく会社 – Isoparametric – Medium

    知らないうちにどんどん人が増えていく会社gumiに入って一ヶ月か二ヶ月が過ぎたころ、チームに所属して様子を見てみると、gumiには一ヶ月の間にかなりの多くの人(5人とか10人とか)が入ってくるのに気がつかされた。 幾つかのチームが組成され、それぞれがゲームを開発、運用しており、解析班などと呼ばれるようなチームもあった。 (そして、それは機能していなかった。売れてないのだから、解析する内容などあるはずもない) そして、入ってきたプログラマは時折適当にプロジェクトにアサインされたりした。 私のチームにも新しいプログラマがやってきたわけだが、そのことを切っ掛けに、うやらプログラムがまともに組めない(仕事を任せられない)人が入ってきていることに気がつかされることになる。 困ったので当時のCTOにどういう基準で人を採っているのか訊いてみた。 特に基準はない、みんな頑張ればできる、とのことだったので、

    tenkoma
    tenkoma 2017/09/15