タグ

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

  • Go言語のio.Pipeでファイルを効率よくアップロードする方法

    パイプ(土管)をGo言語でも楽しめるはじめに前回はGo言語のmime/multipartパッケージによるファイルのアップロードを見ましたが、パフォーマンスの特徴にはあまり触れませんでした。 大規模なETLジョブや、制限の厳しいサーバーレスの環境などでは、ファイルを扱うプログラムのリソースを慎重に考える必要があります。記事ではメモリ使用量を大幅に減らすio.Pipeの使い方を見ていきます。 全てのコードはサンプルレポジトリにあります。 同期処理にある問題前回のコードをもう一度見てパフォーマンスを考えてみましょう。 // ファイルを開く file, _ := os.Open(filename) // リクエストボディのデータを受け取るio.Writerを生成する。 body := &bytes.Buffer{} // データのmultipartエンコーディングを管理するmultipart.W

    Go言語のio.Pipeでファイルを効率よくアップロードする方法
  • みんなの意見を引き出し、スピーディに結論を出す!効率的な会議の進め方

    話し合いで、特定の意見ばかり目立ってしまい、居心地の悪い思いをしたことはありませんか?自分だけが話して周りが意見してくれないな〜、と感じたり、逆に、偉い人の意見に反対しづらいな〜、と感じた経験はないでしょうか。 また、参加者が自由に意見交換ができるような雰囲気でも、なかなか結論がでず長丁場になってしまう会議もありますよね。私自身、今まで色んな会社で働いてきましたが、もっと効率的にできないものかな?🤔と思う会議がたくさんありました。 Pivotal Labsに入ってすぐの頃は、会議のスピード感にとても驚いたことを覚えています。そして気が付いたのは、ちょっとしたコツを掴めば、大人数でもフラットに意見交換ができて、短時間で結論が出る会議にできるということです。そこで今回は、私たちがどのように会議を進めているか、を紹介します🙌🏻 事前に準備するものは次の3つ: 同じ色のポストイット(人数分)

    みんなの意見を引き出し、スピーディに結論を出す!効率的な会議の進め方
  • Experience the next-generation continuous delivery platform: Spinnaker!

    Experience the next-generation continuous delivery platform: Spinnaker! Hi everyone, this is @masudak from the Mercari Software Engineer in Test team. Introducing SpinnakerHow does your company deploy its services? Some companies deploy manually with love, and some deploy with scp/rsync. Some take full advantage of symbolic links, while others use bots — there are just so many different ways to de

    masudaK
    masudaK 2018/02/15
    Published US engineer blog about spinnaker. I am glad you to read this!
  • コインチェック事件は『対岸の火事』ではない

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

    masudaK
    masudaK 2018/01/29
    自戒。"大事なのは、誠実であること。そして何を最優先するべきか、それを間違えないことだろう。"
  • 研究者からエンジニアに転生して1年経ちました

    昨年の1月にDeNAに転職し、研究者からエンジニアに転生してから1年経ちましたので、色々振り返ってみたいと思います。ついでにMediumとやらを始めてみました。書いていて気持ち良いです。 前置き転職前は、KDDI研究所にて10年ほど画像検索・画像認識の研究をしていました。その間に、Stanford Research Instituteに共同研究で半年間滞在させてもらったり、事業部でスマホの企画開発やったり、同時期に博士課程に進学したり、育児休職を取ったりしました。その辺りについては下記に書きました。

  • メルカリでGo Bold賞をもらったのでGo Boldについて触れてみる

    前のQuarterでの動きをGo Bold賞という形で表彰してもらった入社して4ヶ月。Go Bold賞をいただきました。メルカリに入社して4ヶ月。4月〜6月のQuarterにおける表彰があり、Go Bold賞という賞をいただきました。 メルカリは次のようなミッションとバリューを持っています。 <ミッション> Create value in a global marketplace where anyone can buy & sell 新たな価値を生みだす世界的なマーケットプレイスを創る <バリュー> Go Bold — 大胆にやろう All for One — 全ては成功のために Be Professional — プロフェッショナルであれ ↑メルカリは上記のようなミッションを掲げていて、全ての仲間が大切にする3つのバリューがあります。そのバリューそれぞれの観点で表彰がありました。ちなみ

    メルカリでGo Bold賞をもらったのでGo Boldについて触れてみる
    masudaK
    masudaK 2018/01/14
    いい話。相手が忙しそうとかで躊躇してしまうことも多いので、勉強になる。
  • 量子コンピュータの最新動向と日本のスタートアップの可能性

    whowasisaacnewton.comより引用2017年後半から量子コンピュータの商用化に向けたGoogle、IBM、Microsoft等の大手ハイテク企業のニュースがメディアを賑わし始めている。大手企業や政府の動きに呼応するように、D-WaveやRigettiのような量子コンピュータ関連のスタートアップにも注目が集まるようになってきた。私自身、大学時代に量子コンピュータの要素技術であるNMR(核磁気共鳴)と応用領域である量子化学計算を専門としていたのもあり、界隈の動向を興味深くみている。 量子コンピュータはまだ実用化に向けてPoCを繰り返している、言わば、”日の出前”の状況ではあるが、ここ数年で大きな動きが出てくると想定されており、日においても産業創りに向けた仕込みの時期に入っていると考える。そこで今回は、最近までの量子コンピュータ周りの大企業、スタートアップの動向をさらった上で、

    量子コンピュータの最新動向と日本のスタートアップの可能性
  • 2018年に暗号通貨の世界で起こることの予想

    明けましておめでとうございます。今年も頑張っていきましょう。まずは2017年に起きた出来事のおさらいから。 1. Segwitのアクティベーション 2. ビットコインの価格が10万円前後から一気に200万円まで高騰 3. ビットコインからハードフォークしたコインの誕生 4. 米国でビットコイン先物の取引開始 5. 日で法規制 6. ICOの流行 1・・・大変めでたい 2・・・大変めでたい 3・・・ビッグブロック派も頑張って欲しい 4・・・アメリカフットワーク軽くてすごい 5・・・しょうもない 6・・・しょうもない という感じでしょうか。これと対比させる形で2018年の予想をしていきます。大変めでたい系から始めて徐々にしょうもない系になっていきます。 ライトニングネットワークの実用化一部のライトニング実装はテストネットで動いている状態にあり、メインネットで動き始めるのも時間の問題だろうと思

  • KubeCon2017感想: Kubernetes in 2018 – deeeet – Medium

    先週12月6日から8日にかけてTexas Austinにて開催されたKubeCon + CloudNativeCon2017に参加してきた.具体的なセッションの内容などはMercariのTech blogに上がると思うのでここでは簡単に自分なりの感想と概観をざっくりと吐き出しておく. KubeCon 2017の3日間と今後のKubernetesの(大きな)展望は2日目のClayton Coleman氏によるKeynoteのWhat’s Next? Getting Excited about Kubernetes in 2018が総括をしていると思う.自分の今取り組んでること,今後取り組みたいこと,も結局これに集約されていると思う.この発表の中で今後,特に直近の2018年に,k8sでフォーカスが当てられると述べられていたのは以下の7つの分野である. The year of service m

    KubeCon2017感想: Kubernetes in 2018 – deeeet – Medium
    masudaK
    masudaK 2017/12/18
    サービスメッシュとかほんとこれからだよなー。でも、どんどんやっていかないとまずいので、ここは避けられない。
  • ビットコインと日本円は何が違うのか?

    ビットコインやブロックチェーンほど、その意義や用途に関して異なる意見が並行して存在する例は他に無いと思う。 ビットコインとブロックチェーンの発明は単に「新しい技術が生まれた」だけでもなく、「新しいお金が生まれた」だけでもなく、ましてや「新しいババ抜き装置が生まれた」だけでもない。人は新しい物を目の当たりにしたとき、既に持っている知識から近しい物に置き換えて理解しようとする習性があけど、ビットコインは既存のどの領域からも少し距離がある場所にある。ビットコインによって生まれた「何か」は非常に捉えづらいけど、当に新しいと感じている。 この一年以上の間、寝ても覚めてもビットコインについて考えてきたけどまとまった文章にはしてなかったので、ここで一度自分なりの解釈でビットコインとブロックチェーンについて言語化してみようと思った。 ブロックチェーンの発明はサイコロの発明に似ているブロックチェーンの発明

  • 私とお金の話

    はじめに私のお金の使い方は無茶苦茶です。 というか、今までまともにお金を管理したことはなかったという方が正しいですね。 贅沢三昧してきた、というのではなくて、お金についてきちんと考える機会がなかったのです。 そんな自分がお金の使い方を見直してみました、という話です。 そして、給与が年収162万から年収1,000万を超えるまでの簡単な軌跡でもあります。 (しかし、残念ながらこの方法は再現性がないので他の人には何の役にもたたないのです) 給与をあげる話とか、自慢したいという話ではないので落ち着いて聞いてほしいです。 色々な人の経験を聞く限り、給与というのはほぼほぼ選択と運とタイミングですので、給与が上がらない、正しく評価されてない、という人はまず転職(社内の異動でも可)を考えましょう。 他で通用するスキルが身についているかどうかは不断の努力次第ですので、それでもダメならあとは方法を変えるしかあ

    masudaK
    masudaK 2017/12/14
    いつでも使い切ることできるのは逆に才能な気がする。普通はできない。
  • Goのパッケージ構成の失敗遍歴と現状確認

    この記事は Gunosy Advent Calendar 2017の5日目の記事です。前回の記事はGunosyのパーソナライズを支える技術 -ワークフロー編-でした。 GoAPIを書くときの問題僕の在籍するGunosyはGoを昔(?)から番採用しておりまして、ノウハウも潤沢に溜まっている企業だと言えます。 しかし、contextの扱いやベストなパッケージ構成、テスト、net/httpでAPIを書くノウハウなどなど、迷うことは多々あります。 これは弊社特有の事情ではなく、Goのサーバーサイドエンジニア全員にとっての問題です。中でも、パッケージ構成をどうすればいいのか(相互参照せずに快適に開発を進められるパッケージ構成とは)を見つけるのは結構難しく、各々のチームにお任せ、という状況です。 今回は上記の問題のうち、パッケージ構成に踏みこんで見たいとおもいます。会社でもよくパッケージ構成をどう

    Goのパッケージ構成の失敗遍歴と現状確認
    masudaK
    masudaK 2017/12/07
    悩んだところとかも書かれててすごく参考になるけど、結局何が最強かは分からない
  • 早稲田祭で女子高生&大学生のホームスクリーン見してもらった話👧〜SNSから写真加工アプリまで〜

    気づいたら、大学5年生。 最近の女子校生の好きなアプリわからないなぁと思っていたところ🦄🌟 MercariのPMの木下慶さんが “イギリスの女子大生がよく使っているアプリ”という記事をあげていました。 “私でも調査ができるのでは” と思い先日の早稲田祭でスクリーンショット集めを実行しました! (慶さんありがとうございます。) 目次調査対象アプリランキングSNS動画系アプリショッピング系アプリ総評圧倒的人気の インスタ, Twitter 。意外に人気のあるSnapchatとPinterest, Filmarks。写真&加工アプリがやっぱり多い!平均7.7個!すきま時間の競争アプリ上のショッピング面白そうな新しいアプリの発見👀反省 調査対象16人を対象に早稲田祭で声をかけてスマートフォンのホームスクリーンを見せてもらいました。🤗 実行日時は11月5日(日)の13時〜15時。 👧女子校

    早稲田祭で女子高生&大学生のホームスクリーン見してもらった話👧〜SNSから写真加工アプリまで〜
    masudaK
    masudaK 2017/11/13
    LINE、インスタ、ツイッター、YouTube強い。Filmarksは確かに使ってる人たまに見る。メルカリはまだ浸透してないのかな。能動的に使うアプリは勝算あるけど、受動的に使うタイプは相当厳しそう。
  • serverlessconf TokyoでFirebaseの話をしてきました

    経緯最近Realtime Databaseを扱っていて、それなりに使い方と辛みがわかってきたときに、たまたまserverlessconfのことを知って、「Firebaseもserverlessだよな」と思って、CfPを書いて出してみました。CfPに関してはリジェクトの回数の方が多いし、ましてserverlessconfでネイティブの話なんて聞きたい方いらっしゃるんだろうか、という気持ちでした。 通った連絡がないので落ちただろうと、個人スポンサーに申し込みをして数日たった9月の最後の日のことでした。

    serverlessconf TokyoでFirebaseの話をしてきました
  • Android 開発でおかしなときはローカルビルドキャッシュの削除も忘れずに | by Naohiro Oogatta | Medium

    いままで clean しか知らなかったんですが、 cleanBuildCache もとても大事でした。 $ ./gradlew clean cleanBuildCache $ ./gradlew --stop きっかけAndroid Studio 3.0 beta 2 で “d8” という新しい dex compiler がプレビューとして使えるようになったということで、設定してひとしきり遊んで満足したので設定を戻したところ、ビルドはできるのに端末へのデプロイができなくなってしまって、すごく困ってました。 AGPBI: {"kind":"error","text":"Error converting bytecode to dex:\nCause: com.android.dex.DexIndexOverflowException: Cannot merge new index 66701

  • なんで駐在員は大変なのか (英語編)

    (この記事のその後の経緯をこちらに書きました) 今は日で働いているけど、いつか一度は海外で働いてみたいという人もきっと多いだろう。 海外で働く一般的な手段は駐在員かと思うが、日企業の駐在員というのは様々なパターンがある。任期付きの研修風な扱いか、採用目的のただの福利厚生的な位置づけか、社内の「期待の星」を育成するポストみたいになっているか、いっちょ若いやつに任せてみるか的なノープランポストか、そんな感じのイメージかもしれない。 メーカーさんや商社さんなどは、既に現地の市場か生産拠点があり、現地マネジメント、現地オペレーションという意味合いが強いかもしれない。バリューチェーンの中で欠かせないピースとして、海外子会社が存在する。 一方、インターネットの場合はちょっと様相が違うようだ。大半が、買収した海外の会社に行くか、もしくは全くの別事業を展開しているところに行く感じになる。こういった事業

  • 成長期のベンチャーにおける採用の失敗 – Isoparametric – Medium

    成長期のベンチャーにおける採用の失敗2011年2月「任侠道」などのゲームがヒットし、売上が伴ってきたとき、それは終わらないマラソンが始まったことを意味していた。 そして、以後横展開した「道」シリーズがヒットを飛ばしていくために、様々な問題が噴出し始める時期である。 プロジェクトを広げようにも、どのプロジェクトも人が足らない。 加えてエンジニアだけではない「初期の頃のメンバー」が退職を重ねていく時期でもあった。 バックオフィスも開発も、見よう見まねでやっていたところに経験者が入ってきて、ポジションが入れ替わるようなことが頻繁に起きていた。 「自分の好きだったgumiは死んだ」というような事を言って辞めていく人たちもいた。 開発現場でも、のんびりと仲良く売れないゲームを運営していれば良い時代は終わってしまったのである。 「任侠道」が明確なヒットを飛ばしている傍らで、のびのび結果のでないプロジェ

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

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

    masudaK
    masudaK 2017/09/16
  • ソフトウェア開発で学んだが使わなかったもの

    開発手法など、一通り学んだが実際に使っていないものは多少なりあると思う。それらについて掘り起こしてみたい。 スクラム開発認定スクラムマスター研修には研修会場ホストという立場で数回立ち会った。認定外の研修も幾つか受講した記憶がある。書籍もそれなりに読み、Scrum Gathering Tokyoなどのコミュニティにも顔を出し、まあそれなりに色々考えて捉えてきた。でも、自分のチームでは使っていない。スクラム開発というアイデアに矛盾があるからだ。 そもそもスクラム開発ではチームの自律的な行動を良しとしており、それに対する”フレームワーク”を提供しているということになっている。イテレーション、バックログ、ふりかえり、デイリーミーティング(いまだに「朝会」って言ってる人いないよね?)、そしてそれらのお作法。誰が言ったかわからないが、それぞれの作者の意図を察するためには「守」が大事らしい。守破離の「守

    masudaK
    masudaK 2017/08/14
    なかなか現実的じゃないのかな
  • Mocking dependencies in Go

    OverviewWe all use a lot of packages when constructing our applications, both internally developed and third party packages. This blog post will show how you can easily mock these packages using mockery and stretchr/testify/mock. Let’s dive into it; An exampleWhen writing unit tests for our code we might find the external packages problematic. Consider this case: import "github.com/mediocregopher/