タグ

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

  • Elektrobit Japan – Elektrobit

    zetta1985
    zetta1985 2017/12/01
  • ex-mixi Advent Calendar 2017/12/01 - masartz->log(type=>'hatenablog')

    なかなか珍しい ex-mixi(会社のOB/OG)によるAdvent Calendarの一発目をかます masartz です。 ミクシィは 2ホップ前の会社、現所属はメルカリになります。 どういうスタンスで書けば良いのかわかりませんが、各方面を考えてミクシィ時代から今に至るまで継続してることを述べていきたいと思います。 大規模であるが故の技術的な対策 mixiもメルカリも大規模と言って良いレベルのサービスで、そのための負荷対策はどのエンジニアにも求められるものです。 特にクラウドなインフラ環境が今ほど整っておらず、スケーリングに緻密な設計が求められたミクシィ時代に学んだ分散手法は今も活かされています。 ミクシィエンジニアなら、下記は L1分散作業 と表現すれば、その一言で伝わることでしょう。 tech.mercari.com こういった手法はサービス初期に用いられることは少ないでしょうし、

    ex-mixi Advent Calendar 2017/12/01 - masartz->log(type=>'hatenablog')
    zetta1985
    zetta1985 2017/12/01
  • ID生成大全 - Qiita

    セッションIDやアクセストークン、はたまた業務上で使う一意の識別子など、いろんなところで一意のIDを生成しなきゃいけないケースが存在します。 そこで世間で使われているIDの生成方法について調べてみました。 選択基準 ID生成における要求として、以下の観点が上げられるかと思います。 生成の速度 大量にデータを短期間で処理し、それらにIDを付与する場合、ID生成そのものがボトルネックとなることがあります。 推測困難性 IDを機密情報と結びつける場合、IDを改ざんされても、機密データが見れないようにできている必要があります。 順序性 採番した順にデータをソートする必要がある場合は、IDがソートキーとして使えないといけません。 それぞれについて各生成手段を評価します。 ID生成の手段 データベースの採番テーブル 採番用のテーブルを作り、そこで番号をUPDATEしながら取得していくやりかたです。古い

    ID生成大全 - Qiita
    zetta1985
    zetta1985 2017/12/01
  • Cython0.27で導入された型ヒント・変数アノテーション対応を試す - Qiita

    この記事はPython Advent Calendarの1日目の記事です。 背景 Cythonのバージョン0.27からPython 3.5で追加された型ヒント、3.6で追加された変数アノテーションを、CythonとしてもPythonとしても実行できるコード(Pure Python Mode)を記述する際の型情報として受け付けることができるようになりました。経緯などはこのissueを読むと分かります。 型ヒントはPEP484で、変数アノテーションはPEP526で提案されたものですが、要は下記のように関数の引数、返り値、ローカル変数などに型情報をアノテーションとして付与できるというものです。

    Cython0.27で導入された型ヒント・変数アノテーション対応を試す - Qiita
    zetta1985
    zetta1985 2017/12/01
    "pyannotateによってこの先Python3コードが型情報付きで吐き出されるようになれば、先に述べたCythonの型情報として用いることで、より手軽に高速化が図れるようになるのではないか"
  • Bitbucket

    zetta1985
    zetta1985 2017/12/01
  • 今度こそ絶対あなたに理解させるPaxos - Qiita

    Paxosとは何か 分散システムの金字塔とも呼ばれ、Leslie Lamport大先生の輝かしい成果の一つとして知られる分散合意アルゴリズムPaxos。 既存の解説 実はすでに存在するPaxosの解説は充分に質が高い Wikipediaの項目にも結構長々と書かれていて、これを読んで理解できた人はもう僕の記事を読む必要はない。 同様にPFIの久保田さんによる解説スライドもあり、これも良く書けているし、これを読んで理解できた人もこれ以上記事を読む必要はない。 minghai氏によるブログ記事のこれとか特にこっちなんかはかなり納得感があり、これらを読んで理解できた人も(中略) tyonekura氏によるスライドも良くかけていて(中略) この記事はこれらの説明に目を通してもなお理解できなかった人、もしくはこれらの説明をこれから読もうと思っている人に向けて書き、Paxosアルゴリズムの詳細な説明自体

    今度こそ絶対あなたに理解させるPaxos - Qiita
    zetta1985
    zetta1985 2017/12/01
  • 個人プロダクト開発で、困った時にどうするか - Qiita

    Introduction Webエンジニアであれば、「自分達の手で0から作ったプロダクトで世の中を変えられたらな、それでべてけたらなー」と夢見ることがあるのではないでしょうか。 私たちは、夫婦2人で、プライベートの時間でアプリ開発と運営をしています。その過程でぶつかった壁がとてもたくさんありました。 全てのプロダクトで当てはまることではなく、あくまでも特定のケースなのでなかなか一般的な手法として展開しずらい事例が多いですが、これらの困った体験が何かのお役に立てればと思い書きました。 実際に起こったこともあれば、起こってはないが、経験から推測するとこのケースはこう対処すればいいのかもしれないと思ったこと、の両者を記載しています。やブログなどで得た知識をそのまま紹介するというよりは、実体験に基づいた内容になっています。 人が集まるまで 作る時間が無い 困った たくさん機能開発したいが、普段

    個人プロダクト開発で、困った時にどうするか - Qiita
    zetta1985
    zetta1985 2017/12/01
  • Gunosyのパーソナライズを支える技術 -計算モデルとアーキテクチャ編- - Gunosy Tech Blog

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

    Gunosyのパーソナライズを支える技術 -計算モデルとアーキテクチャ編- - Gunosy Tech Blog
    zetta1985
    zetta1985 2017/12/01
  • 『傾打500円 超有名店販売品ん十万円品を暴く』

    わが国屈指の有名貨幣商で販売された500円180度傾打エラー銭 みごとな傾打だが・・・ 鑑定の依頼を受け調べてみましたところ、40~100倍程度の実体顕微鏡で加工痕を発見 画像からお分かりいただけますでしょうか? ニコイチ物であることがわかりますか? 加工の無い通用銭の拡大画像はこちら↓ 輪の内側をくり貫き精密に研磨された別個体をはめ込んでいるのがわかりますでしょうか? この痕跡は熟達すればルーペでも違和を感じることは可能ですが、こうしたものを目にしたことのない人ではまず気がつかない加工の痕跡でしょう。 事実品を販売したコイン商は知らない人はいないと言う有名店。 当時の古い所見でレベルもまだまだ低いものですが、参考までに その後品をX線透過撮影してみたところ驚愕の事実が判明いたしました。 まずわかりやすいように一般的な流通500円硬貨のX線透過撮影画像をご覧ください 表側と裏側の模様が

    『傾打500円 超有名店販売品ん十万円品を暴く』
    zetta1985
    zetta1985 2017/12/01
  • ゲームの面白さを生み、より高めるための法則とは?──『カービィ』『スマブラ』の生みの親・桜井政博氏による研究の集大成となる講演をWeb上に再現【若ゲのいたり・特別編】

    ゲームの面白さを生み、より高めるための法則とは?──『カービィ』『スマブラ』の生みの親・桜井政博氏による研究の集大成となる講演をWeb上に再現【若ゲのいたり・特別編】 「カービィ」シリーズや「スマブラ」シリーズをはじめ、数々の作品を手がけるゲームクリエイター・桜井政博氏(@Sora_Sakurai)は、国内外問わずゲーム開発者向けに講演を行なっている。 そのテーマは……「ゲーム性について」。 この講演は、「1つでも多く、ユーザーに愛されるゲームが生まれて欲しい」という想いから、自身のゲームデザインのノウハウを惜しみなく伝えているもので、ゲーム開発に携わる人間なら、ぜひ会得しておきたい内容である。 じつは『若ゲのいたり』第六回の取材時に、幸いにも田中圭一先生&電ファミ編集部は、桜井氏にご講演いただく機会を得ることができた。受講した我々は、「より深いゲームへの理解は、ゲーム業界の関係者だけでな

    ゲームの面白さを生み、より高めるための法則とは?──『カービィ』『スマブラ』の生みの親・桜井政博氏による研究の集大成となる講演をWeb上に再現【若ゲのいたり・特別編】
    zetta1985
    zetta1985 2017/12/01
  • 本当はこわい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 のメモ
    zetta1985
    zetta1985 2017/12/01
  • C#で最小構成のブロックチェーンを実装してみる - 451 Unavailable For Legal Reasons

    はじめに この記事は BlockChain Advent Calendar 2017 の1日目の記事です。 qiita.com ブロックチェーンとは ブロックはデータと自身のハッシュ値と1つ前のブロックのハッシュ値を持つことでリスト構造となっているのがブロックチェーンというわけで、各スレッドをノードに見立ててランダムなタイミングでブロックを生成して定期的に他のノードに送信するアプリケーションを実装してみました。 github.com エントリーポイント 6つのノードを生成して適当にP2P接続。並列実行しています。 using System.Threading.Tasks; namespace SmallChain { class Program { static void Main(string[] args) { RunAll().Wait(); } public static asyn

    C#で最小構成のブロックチェーンを実装してみる - 451 Unavailable For Legal Reasons
    zetta1985
    zetta1985 2017/12/01
  • Clojure Language Update 2017 - Qiita

    これは Clojure アドベントカレンダー 2017 1日目の記事です。今年1年のClojure/ClojureScript界隈の動きを振り返ってみましょう。 Clojure 1.9リリース間近 昨年5月に1.9 alpha1がリリースされて以降、alphaリリース20回、betaリリース4回を経てようやく先日RCのリリースにこぎ着けました。すでにRC2までリリースが進んでいますが、RC1, RC2ともに質的にはbeta4と同じもので、正式リリースまでの修正としてはほぼ収束している状態です。 当はここで「ようやく1.9がリリースされました!」と報告できればよかったのですが、残念ながら正式リリースにはまだ至っていません。しかし、RCリリース後も特に大きな問題が出ていないので、1.9のリリースはもうまもなくではないかと思います。 clojure.specの分離 さて、Clojure 1.

    Clojure Language Update 2017 - Qiita
  • RFC 2094 (non-lexical lifetime) の非公式訳 | ubnt-intrepid's blog

    記事は Rust Internal Advent Calendar 2017 第1日目の記事です. 今年の 9/30 に採択された non-lexical lifetimes の RFC である RFC 2094 の非公式訳です. Feature Name: (fill me in with a unique ident, my_awesome_feature)Start Date: 2017-08-02RFC PR: https://github.com/rust-lang/rfcs/pull/2094Rust Issue: https://github.com/rust-lang/rust/issues/44928概要Rust の借用システムにおける,ノンレキシカル・ライフタイム (レキシカルスコープではなく制御フローグラフに基づくライフタイム)対応への拡張. RFC では,この新

    zetta1985
    zetta1985 2017/12/01
    問題例#3、最近ハマったなぁ。やっぱentry使うしかないか
  • Chromium のソースコードの歩き方

    これは Chromium Browser アドベントカレンダーの一日目の記事です。初日ということで、記事では Chromium のソースコードを読む上で役に立つであろう、プロジェクトのディレクトリ構成やファイル構成を紹介します。 (2018/04/09) “The Great Blink mv”1 プロジェクトによってついに WebKit ディレクトリが blink ディレクトリにリネームされました。それに伴い記事の内容を更新しました。差分は以下の通りです。 third_party/WebKit/Source を third_party/blink/renderer に置換。 blink/ 内のファイル名の命名規約を Bar.{cpp,h} から bar.{cc,h} に置換。 置換に伴う説明文の修正。 (2017/12/01) ディレクトリ構成について追記しました。 Chromium

    Chromium のソースコードの歩き方
    zetta1985
    zetta1985 2017/12/01
    OWNERS, DEPSファイルか、なるほど
  • PDCAサイクルの問題14点と致命的欠陥4点 – アイ&カンパニー

    PDCAが回らない PDCAを回せない原因がPDCAを理解していないためだといわれます。速く回さなくてはならないとPDCAの勉強を迫ります。こうして成果なきPDCA信奉が無理強いされていきます。 PDCAが回らないことに対する、経営者や管理職、社、企画部門の認識: 計画が立てられません:情報収集に時間がかかり、情報が不十分で、確かなことが分かりません。計画倒れで実行に移されていません:環境が変わってしまって計画通りに進みません。実行した後のチェックが疎かになっています。:チェックは責任追及になります。計画が達成されても既に状況が変わってしまっています:計画自体が要りません。 PDCAが回らないことに対する、現場の認識: 上層部から計画が降りてきますが、現場のことを知らない者が作った計画に反感を覚えます。現場は計画で想定していたのとは違い、想定していた現場の能力がなく計画が進みません。前例

    PDCAサイクルの問題14点と致命的欠陥4点 – アイ&カンパニー
    zetta1985
    zetta1985 2017/12/01