タグ

2017年12月1日のブックマーク (12件)

  • Go な WebAPI のテスト&ドキュメントの模索 - Qiita

    みなさん Go な WebAPI のテスト&ドキュメントどうしてますか。僕はまだ数ヶ月程度の Go 経験しかなく模索しながら、まだまだ彷徨っている状態です。そこで現時点での自分なりのやり方をまとめておこうと思います。こうやったほうが良いよ!というアドバイスがあればぜひお願いします サンプルコードはこちらのリポジトリに雑においてあります。 https://github.com/zaru/go-api-documents-demo ツール類 今記事では echo + sqlx な構成を例にしています。 使っているもの Go 1.9.x labstack/echo jmoiron/sqlx stretchr/testify/assert API Blueprint aglio dredd drakov テストライブラリは stretchr/testify/assert だけ使っています。モックな

    Go な WebAPI のテスト&ドキュメントの模索 - Qiita
    tofu-kun
    tofu-kun 2017/12/01
  • SIer→社内エンジニア→リモートワーク、3つの職場を経て見えてきた、プログラマにとっての幸せな働き方 - GeekOutコラム

    みなさん、こんにちは。 普段は「give IT a try」というブログを書いている、プログラマの伊藤淳一(@jnchito)です。今回は縁あって、GeekOutでコラムを書かせてもらいます。 僕はプログラマとして働き始めてもうすぐ15年になります。最初に入った会社は大阪にあるSIerでした。そこで4年ほど働いた後、次は外資系企業の社内エンジニアとして働き始めました。社内エンジニア仕事は5年ほど続け、それから株式会社ソニックガーデンへ転職して現在に至ります。 これまでに働いてきた3つの職場は三社三様です。それぞれの職場で良かったことやしんどかったことをあらためて見つめ直してみると、プログラマにとっての幸せな働き方が浮かび上がってきます。もちろん何を幸せと感じるかは人によって異なりますが、同じ「IT業界」といってもいろんな職場があることは知っておいても損はないでしょう。 また、幸せは突然空

    SIer→社内エンジニア→リモートワーク、3つの職場を経て見えてきた、プログラマにとっての幸せな働き方 - GeekOutコラム
    tofu-kun
    tofu-kun 2017/12/01
  • エンジニアの人数が増えて変わったこと、変わらないこと - Innovator Japan Engineers’ Blog

    こんにちは、CTOの@hiro_yです。この記事はイノベーター・ジャパンAdvent Calendar 2017の1日目の記事です。昨年のAdvent Calendarから1年が経って、当社の状況もいろいろと変化しています。 私がイノベーター・ジャパンに関わり始めたのは2014年の5月ごろ、ですからもう3年半前のことになりますね。当時はエンジニアがまだ2人しかいませんでした(東京と福岡に一人ずつ)。それから少しずつ増えて、現在では東京に4人、福岡に4人、合わせて8人のエンジニアがシステムデザインファーム(System Design Firm)のメンバーとして働いています。 採用が順調なのはとてもうれしいことです。それに伴って、個人ではなくチームとして力を発揮できるようにしていくことがここ最近の課題です。 変わってきたこと 少ない人数の場合、エンジニアはなるべく広い範囲を見られることが望まし

    エンジニアの人数が増えて変わったこと、変わらないこと - Innovator Japan Engineers’ Blog
    tofu-kun
    tofu-kun 2017/12/01
    良さ
  • Go の channel 処理パターン集 | Hori Blog

    Hori Blogフリーランスでバックエンドエンジニアとして活動している Ryota Hori のブログです。 最近はテック系記事より雑記ブログ気味。 この記事は Go Advent Calendar 2017 の 1 日目の記事です。 Go の長所に goroutine による非同期処理がありますが、どうしても channel の取り回しで黒魔術化しがちです。少しでも闇を減らしていきたいので、 channel らへんの取り回しについてパターンをまとめました。チートシート的に使えれば嬉しいです。 Go の channel の基礎 入門資料として使いたいので、題に入る前にざっくり基礎を。 定義のパターン channel には capacity という概念があります。 capacity は channel 内でバッファリングしておける容量のことで、 capacity に空きが無い場合は送信側

    Go の channel 処理パターン集 | Hori Blog
    tofu-kun
    tofu-kun 2017/12/01
  • 分散ファイルシステムはブロックチェーンの夢を見るか | メルカリエンジニアリング

    今年からメルカリでもMercari Advent Calendar 2017と称してAdvent Calendarを始めることとなりました。 初日は id:stanaka / @stanaka がロンドンよりお届けします。 分散ファイルシステムという言葉を聞くと、トラウマを刺激され、うっと頭を抱える人も多いかと思います。私もその一人で、以前にPBクラスまではいかずとも数TBのHDDを数百台並べたシステムのお守りをしたことがあり、日々壊れ続けるHDDに負荷に悲鳴を上げるメタデータDBなどネタには困らない状況でした。そういう時にAWS S3を触ると、「ああ、これは天国だ..」ともはや過去には戻れない思いをしたものです。 最近では分散ファイルシステムを運用しているところもめっきり減っていて*1もう過去の分野かな、と思っていたのですが、ここ数年で「ブロックチェーン x 分散ファイルシステム」という

    分散ファイルシステムはブロックチェーンの夢を見るか | メルカリエンジニアリング
  • 本当はこわいMySQLプロトコル - tmtms のメモ

    11/28 に Haskell で MySQL の Xプロトコルを実装したという話が聴ける Club MySQL というイベントがあったので参加してきました。 clubmysql.connpass.com MySQLのプロトコルの話ということで、平日の夜とは言え東京で参加者9人(発表者含む)というマニアックな集まりでした。 自分も1年前に RubyMySQL Xプロトコルを実装していたのですが、このツイートを最後に中断していたのでした。 MySQL X Protocol で Collection の追加はできるようになったが、検索がめんどくさい。条件文字列のパースはクライアントで行う必要があるんだな。— とみたまさひろ💎🐬 (@tmtms) 2017年2月20日 今回話を聞いて、無理に謎条件式文字列をパースするんじゃなくて、処理系で書きやすいように書けばいいんだという方式に目から

    本当はこわいMySQLプロトコル - tmtms のメモ
  • AWS Batchを本番導入するにあたって考えたことアレコレ - nisshieeのブログ

    この記事は Speeeアドベントカレンダー2017の1日目です!よければ購読してやってください。 qiita.com Speee DEVELOPER BLOGもよろしくね! TL; DR AWS Batchを番導入したよ 結構クセはあるが、それを補って余りあるメリット(特にスケーラビリティ) 現状はAWS Batchの活かし方の知見を貯めている段階だが、今後適切な用途があれば積極的に使いたい AWS Batchとは 一言で言うと、「ECSクラスタの薄いラッパー + ちょっと賢いJOB Queue + 賢いAutoScaling(オプション)」て感じ。 ベースにあるのはECSクラスタなので、DockerImageを用意して、ジョブをDockerContainerの実行として定義して、ジョブを発行するという流れはECSと同じ。 ECSはクラスタの各インスタンスが持っている計算リソースと、事前

    AWS Batchを本番導入するにあたって考えたことアレコレ - nisshieeのブログ
  • スマートスピーカーを使って業務システムを作る(考察編) - Qiita

    前置き この記事は OPENLOGI Advent Calendar 2017- Qiita の12日目です。 ⬆︎こんな感じのを作ります。 こんにちは。株式会社オープンロジの@guai3 と言います。 皆さん! WMS作ってますか 我々は、 未来のWMS を作っています。WMSを知らない人のために説明すると Warehouse Management system の略で、物流のための在庫管理システムです。 興味のある方は、是非とも弊社に遊びに来て下さいね。 今年になってGoogle アシスタント対応アプリを日語で作ることができるようになったので、今回は Google Home を使って未来のWMSを作ってみましょう! 業務システムとしてのスマートスピーカー スマートスピーカーは家で使う形で現在は特化していますが、業務用途でもかなり活用できるのではないかと私は考えています。 タブレットや

    スマートスピーカーを使って業務システムを作る(考察編) - Qiita
    tofu-kun
    tofu-kun 2017/12/01
    楽しそう
  • テストがなかった無法地帯にテストを導入して開発速度を1.7倍にした話 - Qiita

    テストがなかった無法地帯のプロジェクトに自動テストを導入して、開発速度を1.7倍にした話をします。 自動テストがなぜないのか 自動テストのないプロジェクトには、そうなる理由が必ず存在します。よくみる理由は、「時間がないから1」「テストの書き方がわからないから」「無理やりテストを書いたつらい経験があったから2」といったものです。今回のプロジェクトの場合は、以下の2点でした: 自動テストの書き方がわからないから レビューがテスト代わりだったから まず、チーム編成が変わって私ともう一人がチームに加わるまで、実装者の中に自動テストの経験者はいませんでした。このような状況では、自動テストは困難になります。なぜなら、何をどうやってどこまでテストするかを決めるには、多少の慣れが必要だからです。この慣れがないと、何をしたらいいかわからないという状態に陥りがちで、結果として自動テストが後回しにされてしまいま

    テストがなかった無法地帯にテストを導入して開発速度を1.7倍にした話 - Qiita
    tofu-kun
    tofu-kun 2017/12/01
    給料が上がった
  • 【新機能】AWS WAFマネージドルールを使ってWordPressに対する攻撃を防いでみた #reinvent | DevelopersIO

    こんにちは、臼田です。 今回はAWS WAFの神アップデートであるManaged Ruleを利用して、Wordpressの脆弱性に対する攻撃を防いでみたいと思います。 WAFマネージドルールって何? 今回発表されたAWS WAFの新機能で、下記に速報があります。 【速報】AWS WAFがサードパーティーのマネージドルールに対応しました! #reinvent そもそもWAFマネージドルールって何がいいの? マネージドルールがこれまでのAWS WAFのルールより優れている点は大きく2つあります。 ルールを自分で管理しなくていい これまでAWS WAFでは、攻撃に対する防御に利用するルールは自分で作成する必要性がありました。 例えば防御したいサイトに対して、SQLインジェクションの防御用のコンディションを作成し、コンディションにフィルターを追加し、コンディションをルールに適用して利用します。 こ

    【新機能】AWS WAFマネージドルールを使ってWordPressに対する攻撃を防いでみた #reinvent | DevelopersIO
  • メルカリのシステム・サービス監視について/Monitoring Mercari service and servers

    メルカリのシステム・サービス監視について Monitoring seminar in Mercari

    メルカリのシステム・サービス監視について/Monitoring Mercari service and servers
  • Gunosyのパーソナライズを支える技術 -計算モデルとアーキテクチャ編- - Gunosy Tech Blog

    この記事は Gunosy Advent Calendar 2017 の1日目の記事です(フライング) qiita.com §1. はじめに こんにちは。データ分析部ロジックチームの @mathetakeです。いつもはデータ分析ブログにいるのでテックブログは初めてです。怖いです。Twitterとかやったことないですね。 最近は仕事でニュースパスというプロダクトの記事配信ロジックの改善を行っており、その一環としてパーソナライズロジックの開発プロジェクトに従事しています。 パーソナライズとはユーザーひとりひとりに対して別々の記事配信を行う事です。下記の記事でパーソナライズプロジェクト発足に至るまでの背景が語られているので、興味のある方はぜひご覧ください。 gunosiru.gunosy.co.jp この記事ではニュースパスの記事配信アルゴリズムのパーソナライズプロジェクトに関連して、 パーソナラ

    Gunosyのパーソナライズを支える技術 -計算モデルとアーキテクチャ編- - Gunosy Tech Blog