2020年6月16日のブックマーク (11件)

  • 自作サービスがDDoS攻撃された話 - 週休7日で働きたい

    攻撃に立ち向かうイヌさんThe English version is available here. タイトル訂正: 「自作サービス『に』→『が』DDoS攻撃された話」「それはDDoSではない」という指摘に関して末尾に追記 (6/18)SaaSを開発していると当にいろんな事が起こります。それらは時に開発者に喜びや悲しみ、怒り、感謝、落胆や興奮をくれます。思い返してみれば結局はみんないい思い出になるものです。先週末に、拙作の小さなウェブサービスがDDoS攻撃を受けました。言わずもがな、悪い出来事です。稿ではこの事故がどんなものだったのか、どうやって対処したのかについてお話します。 どうもTAKUYAです。僕はInkdropというクロスプラットフォームなMarkdownノートアプリを独りで3年以上開発・運用しています。ユーザ数2万人以下のとてもニッチなSaaSで、僕はこのサービスで生計を立

    自作サービスがDDoS攻撃された話 - 週休7日で働きたい
  • 超高速!多倍長整数の計算手法【後編:N! の計算から円周率 100 万桁の挑戦まで】 - Qiita

    4-1. N! の高速な計算 $N! = 1 \times 2 \times 3 \times 4 \times \cdots \times N$ を計算してみましょう。 $N!$ は場合の数を求める問題でよく出てきて、こんな感じのものが求まります。 $1, 2, ..., N$ が書かれたトランプのカードが 1 枚ずつあるとき、これを一列に並べる順番は何通りあるか? 例えば、$N = 13$ の場合 $13! = 6,227,020,800$ 通り、のように計算できます。 また、$N!$ は二項係数 $_NC_K$ を求めるのにも使われます。 $N!$ が求まれば、$_NC_K = N! \div K! \div (N-K)!$ で掛け算・割り算するだけで計算できますね。 $N$ 個の区別できるボールから $K$ 個を選ぶ方法は何通りか? これが $_NC_K$ になります。例えば、$N

    超高速!多倍長整数の計算手法【後編:N! の計算から円周率 100 万桁の挑戦まで】 - Qiita
  • 凡人は論理的思考すべし - 怠惰を求めて勤勉に行き着く

    登 大遊 (Daiyuu Nobori)さんの論理的思考の放棄というエントリが時を超えて話題になった。 softether.hatenadiary.org これは氏の類まれな才能あってなされることで、僕を含む凡百のプログラマはこれを読んで(あるいはタイトルだけ見て内容すら読まずに)論理的思考を放棄してプログラムを書くのは危険である。 当該エントリおよび氏の過去のエントリを拝読する限りにおいて、氏が才気あふれるソフトウェア技術者であることは自明であるように思われる。氏が筑波大学に入学しソフトイーサ社を立ち上げる過程を軽妙に綴った次のエントリなどは、ユーモアに溢れ、優れた技術者は文章もうまいのかと嘆息してしまった。 futureship.sec.tsukuba.ac.jp また僕が普段から敬愛する素晴らしいエンジニアによる証言も氏の大きな才能を裏付けている。 ちなみに、大学1年生の時でも、登さ

    凡人は論理的思考すべし - 怠惰を求めて勤勉に行き着く
  • 人は言葉に縛られる生き物ーー脳科学者・中野信子氏が解説する「言語ってなに?」

    人は言葉に縛られる生き物ーー脳科学者・中野信子氏が解説する「言語ってなに?」 中野信子氏 インタビュー #1/3 新型コロナウイルスの蔓延によるリモートワーク普及の影響もあり、ビデオコールやチャットなど、コミュニケーションの手段が少しずつ変化してきている、昨今。将来的には「言語」にとどまらず、映像や音楽、脳内アイディアを用いた「非言語」によるコミュニケーションが増えてくる可能性もある。そこで、それらが人間社会に与える影響について、脳科学者・中野信子氏にお話を伺った。パートでは「そもそも言語とは?」について、中野氏に語ってもらう。 そもそも「言語」とは? ――リモートワークの影響もあり、ビデオコールやチャットなど、コミュニケーションの手段が少しずつ変化してきています。将来的には言語にとどまらず、映像や音楽など非言語によるコミュニケーションが増えてくる可能性もあり、それらが人間社会に与える影

    人は言葉に縛られる生き物ーー脳科学者・中野信子氏が解説する「言語ってなに?」
  • 【翻訳】ハイパフォーマンスチームを作るためにプロダクトオーナーがすべき10のこと

    みなさんこんにちは。@ryuzeeです。 スクラムにおいて、スクラムチーム全体のパフォーマンスをどのようにして上げていくかは難しいテーマですが、プロダクトオーナーの視点でこれを捉えた「10 things you must do to build high-performing Scrum Teams as a Product Owner」という記事が良い記事だったので、翻訳したものをご紹介します。 翻訳に際しては、著者のMaarten Dalmijnさんに快諾いただきました。 なお、著者のMaartenさんはほかにもプロダクトオーナーに関する有用な記事を書いているので、参考にするとよいかと思います。 プロダクトオーナーの開発チームへの関わり方は、開発チームのパフォーマンスにおいてとても重要です。ダメなプロダクトオーナーだと、ハイパフォーマンスチームを簡単に潰してしまう可能性があります。 私

    【翻訳】ハイパフォーマンスチームを作るためにプロダクトオーナーがすべき10のこと
  • ZOZOTOWN マイクロサービスプロジェクトにおける継続的な改善を支えるCI/CD戦略 - ZOZO TECH BLOG

    ZOZOテクノロジーズ SRE部の川崎(@yokawasa)です。ZOZOTOWNのアーキテクチャをマイクロサービスで再設計してリプレイス化を推進するチームに所属しております。 記事では、このZOZOTOWNのマイクロサービスプロジェクトで実践している継続的インテグレーション/継続的デリバリー(以下、CI/CD)についてご紹介します。 はじめに まずはじめに、記事に登場する中心的なキーワードであるCI/CDと、Infrastructure as Code(以下、IaC)について簡単に説明します。 IaCとは、インフラ構成をコード化して、そのプロビジョニングを自動化する手法です。コード化されたファイルはコードリポジトリで管理することが多く、また、IaCを実現するためのツールやサービスの利用が不可欠になります。 CI/CDは、その名の通り、CI(継続的インテグレーション)とCD(継続的デリ

    ZOZOTOWN マイクロサービスプロジェクトにおける継続的な改善を支えるCI/CD戦略 - ZOZO TECH BLOG
  • オウンドメディア運用でありがちな"やりづらさ"の解消法 - はてなビジネスブログ

    この記事では、オウンドメディアの運用に課題を感じている方向けに、「ガイドラインの整備」「サイトリニューアル」という2種類の課題解決の方法をご紹介します。 オウンドメディアの運用には異なる領域の知識が複合的に求められるため、部署を横断した多人数型のプロジェクトになることが少なくありません。 そして多人数のプロジェクトであるがゆえに、期間の経過にしたがってメンバー間の連携やサイト管理に問題が出やすくなりがちです。 「目立ったトラブルはないけど、なんとなくやりづらい」という悩みは、オウンドメディアの運用体制上避けられないものともいえるでしょう。 こうした「やりづらさ」は、放置しておくとメディア運用全体のボトルネックになりかねません。 長期運用が成果に繋がるオウンドメディアという施策だからこそ特に、ボトルネックの種は早々に解決しましょう。 ■ この記事の対象となる人 オウンドメディアを運用していて

    オウンドメディア運用でありがちな"やりづらさ"の解消法 - はてなビジネスブログ
  • AIエンジニアが知っておきたいAI新ビジネス立案のノウハウ・コツまとめ - Qiita

    記事では、AIエンジニアAI関連のビジネスパーソン向けに、起業および新規事業立案に関するノウハウ・情報をお知らせします。 AIに特化していない新ビジネス立案関連の内容も多いのですが、ご容赦ください。 AIに関わる内容は記事の後半部分から始まります。 記事は、 [1] スタートアップ系での有名なアドバイスを引用掲載 [2] それに対して、私(小川)なりの私見を記載 という構成で執筆します。 AIエンジニア向け記事シリーズの一覧 その1. AIエンジニアが気をつけたいPython実装のノウハウ・コツまとめ その2. AIエンジニアが知っておきたいAI新ビジネス立案のノウハウ・コツまとめ(記事) 記事の目次 はじめに 0. 起業や新規事業立案を学ぶうえで知っておきたい人物・組織 アイデアの見つけ方 アイデアの育て方 ユーザーインタビューの仕方 AI新ビジネス立案について MVPの作成

    AIエンジニアが知っておきたいAI新ビジネス立案のノウハウ・コツまとめ - Qiita
  • データベース設計の際に気をつけていること - 食べチョク開発者ブログ

    皆さんこんにちは、エンジニアの西尾です。 新しい機能・サービスを開発する際、私は特にデータベース設計に気をつかいます。 データベースはシステムの土台です。 土台が不安定だと、その上に積み上げていくアプリケーションコードがいびつなものになり、つらい思いをします。 また、一度動き出してしまったシステムのデータベース設計を変えるのは、容易なことではありません。 データベース設計には”これだ!”という正解はないと思っています。 サービスの特徴、システムの性質、toB向け/toC向け、Readが多い・少ない、Writeが多い・少ない。 その他もろもろの背景により、データベース設計の仕方も変わってきます。 このテーブルは正規化していないから駄目だ、この設計はいわゆるポリモーフィック関連だから使ってはいけない、などということはありません。 アンチパターンと呼ばれるものも時と場合によっては正解になります。

    データベース設計の際に気をつけていること - 食べチョク開発者ブログ
  • データサイエンス初学者のための実践的な学習環境 「データサイエンス100本ノック(構造化データ加工編)」をGitHubに無料公開 | 一般社団法人データサイエンティスト協会

    一般社団法人データサイエンティスト協会(所在地:東京都港区、代表理事:草野 隆史、以下データサイエンティスト協会)は、構造化データの加工について実践的に学ぶことができる無料の学習環境「データサイエンス100ノック(構造化データ加工編)」をGitHubに公開しました。 「データサイエンス100ノック(構造化データ加工編)」は、データサイエンス初学者を対象に、データの加工・集計、統計学や機械学習を駆使したモデリングの前処理等を学べるよう、データと実行環境構築スクリプト、演習問題をワンセットにしています。 近年、データ活用の重要性についての認知が広がる中で、書籍やWebサイトなど、データ分析のスキル向上に役立つ情報源も多く提供されています。一方で、実践するための「データ」や「プログラミング実行環境」を持ち合わせていないことも多く、「実践力」を身につける機会が限られていました。特に、「構造化デ

    データサイエンス初学者のための実践的な学習環境 「データサイエンス100本ノック(構造化データ加工編)」をGitHubに無料公開 | 一般社団法人データサイエンティスト協会
  • 機械学習を記事配信に採用したママリ - 0から構築したレコメンドエンジンのアーキテクチャ設計 - エンジニアHub|Webエンジニアのキャリアを考える!

    機械学習を記事配信に採用したママリ - 0から構築したレコメンドエンジンのアーキテクチャ設計 コネヒト株式会社が運営する女性向け情報サービス「ママリ」では、2019年12月に記事配信で機械学習によるレコメンドエンジンを構築、2020年初頭にテストが完了しました。 機械学習を採用した背景、設計したアーキテクチャとテストの結果について伺いました。 コネヒト株式会社が運営する、女性を対象とした情報サービス「 ママリ」は、2014年のリリース以降、着実にユーザーを増やし、2020年3月現在、アプリ会員数は240万人(日で2019年に出産した中で3人に1人が利用)、ママたちが集まるオンラインコミュニティとして定着しています。 ママリでは2019年12月、サービス内に掲載する記事の配信について機械学習を採用したレコメンドエンジンへ変更し、2020年初頭にテストが完了、いよいよ正式リリースとなりました

    機械学習を記事配信に採用したママリ - 0から構築したレコメンドエンジンのアーキテクチャ設計 - エンジニアHub|Webエンジニアのキャリアを考える!