2016年12月26日のブックマーク (11件)

  • Slack上でインタラクティブに遊べるゲームを作るためのフレームワークを作った - MANA-DOT

    この記事は Slack Advent Calendar 2016 24日目の記事です。 半年ほど前に下のようなエントリを書きました。 Slack上でインタラクティブに倉庫番を遊べるhubot-slack-soukobanを作った - MANA-DOT Slackのリアクション機能と編集機能を活用し、Slack上でインタラクティブにゲームを作るという趣旨の内容でした。 今回は、このようなゲームを汎用的に作るための slack-game-bot というnpmパッケージを (アドベントカレンダーのネタのために)作ったので紹介します。 概要 兎にも角にも、例を見ていただくのが早いです。 const {Game, GameBot} = require('slack-game-bot'); class MyGame extends Game { getButtons() { return ['one'

    Slack上でインタラクティブに遊べるゲームを作るためのフレームワークを作った - MANA-DOT
  • 2017年、新規にJavaScriptを書くならどんな設計をするか|デロイト トーマツ ウェブサービス株式会社(DWS)公式ブログ

    この記事はJavaScript Advent Calendar 2016の記事です。 今回は、2017年、新規にJavaScriptを書くならどんな設計をするか、というテーマで書いてみようと思います。2017年といっても、しばらくはこんな感じのアーキテクチャでやってきましたので、どんな構成でJavaScriptを設計してきたかという方が正しいかもしれません。基的にはSPAをベースとしています。 また、最新のイケてる技術バリバリ使ってやるぜ、というよりは、堅牢で、はやりが変わってもメンテができるということを意識してみました。 DOMのレンダリング Virtual DOMを代表とした、DOMのレンダリングを行うライブラリをなにか採用します。特に理由がなければReactでいいと思います。Virtual DOMではありませんが、AngularでもDOM管理においてはさほど違いはありません。この2

  • 文字列アルゴリズムの学びかた - Hatena Developer Blog

    こんにちは!はてなアプリケーションエンジニアの id:takuya-a です。 みなさんは、このような疑問をもったことはありませんか? grep はどのように文字列を検索しているのか? MeCab はどうやって辞書を高速にルックアップしているのか? パーサやコンパイラを作りたいけど、何から始めればいいのか? 稿では、「文字列アルゴリズムとはどんなものなのか?」「なぜ重要なのか?」「何を知っておくべきか?」「どうやって勉強すればいいのか?」といった疑問にお答えしていこうと思います。 文字列アルゴリズムの意外な応用や、モチベーションを保ちやすい勉強のしかた、文字列アルゴリズムを勉強するために行った社内での取り組み、実装するときのコツといったトピックについても触れています。 このエントリは、はてなエンジニアアドベントカレンダー2016の22日目の記事です。昨日は id:syou6162 さんに

    文字列アルゴリズムの学びかた - Hatena Developer Blog
  • 小指奮闘記 (Vimmer の Vimmer による Vimmer のためのキーマッピング) - Λlisue's blog

    どうも、サブタイトル通りご無沙汰しております有末です。 この記事は Vim Advent Calendar 2016 の 24 日目の記事となります。 小指の痛み VimEmacs など他のエディタとは違い、モード切り替えの概念があるため、修飾キーを押す機会は少なめです。 しかしながら、エディタにこだわりを持つほどのヘビーユーザーであればキーボードに触れている時間は長く、一般的なユーザーに比べ指の疲労がたまりがちかと思います。 かくいう僕も、近頃小指の疲労が如実に現れだしこれはヤバイと思ったため 小指をなるべく使用しない方法 を二ヶ月ほど試行錯誤してきました。 日はその試行錯誤に関して、お試し難易度レベルごとに書いていきたいと思います。 Level 1. Vim 内で完結する まずは Vim の設定やプラグインだけで小指の使用頻度を下げてみましょう。 ノーマルモードにおける Ctr

    小指奮闘記 (Vimmer の Vimmer による Vimmer のためのキーマッピング) - Λlisue's blog
  • お部屋をスマートホーム化して1年が過ぎました - ワタナベ書店

    この記事は おうちハック Advent Calendar 2016 - Qiita の24日めの記事です。 お部屋をスマートホーム化して1年が過ぎました。 目次 まえおき 我が家のスマートホーム 全体 デスク リビング ベッドルーム 考察 参考リンク まえおき 去年のアドベントカレンダーで、こんな記事を書きました。 senyoltw.hatenablog.jp 今回はお部屋のおうちハックが手当たり次第何もかも実装してあまりにカオスなためHomekitにとらわれず、僕のお部屋のスマートホーム紹介と、お部屋をスマートホームにした考察をしようと思います。 僕が使っているhomebridgeのプラグインは何か気になる方はこちらをご覧ください senyoltw.hatenablog.jp 我が家のスマートホーム 全体 お部屋の全体図です。 別アングルからの全体図です。 いい感じにおしゃれです。 どこ

    お部屋をスマートホーム化して1年が過ぎました - ワタナベ書店
  • 若手プログラマー保存版!フローチャート徹底解説と作成カンニングペーパー

    フローチャートを書く能力はプログラマーにとって必須スキルであり、優秀なプログラマーになるための第一歩です。なぜなら、フローチャートの有無、もしくはフローチャートの内容次第で出来上がるプログラムの品質に大きな差が出るためです。だからこそ、若手プログラマーやSE教育の場で必ず登場するのです。 しかし、フローチャートというテーマは、それだけで書籍1冊になるほどの分野であり、多忙なIT業界においていかに効率的に学習するか悩んでいる方も多いと思います。 プログラマーとしてスキルを高めたいが… 実はそもそもフローチャートのことをよく理解していない 最低限の知識で良質なフローチャートを作りたい フローチャートを書くことに自信がないが、今さら人には聞きづらい このようなことをお思いではないですか?このような悩みから解放頂けるよう、最短ルートで良質なフローチャートを書くための方法を1ページにまとめました。

    若手プログラマー保存版!フローチャート徹底解説と作成カンニングペーパー
  • 開発速度と品質のトレードオフの判断基準の合意 - Hatena Developer Blog

    Webサービスの開発は、ユーザ/顧客へ価値を早く届けるため、競合より早くリリースするため、人的リソースを無駄使いしないためなど、とにかく素早く進めたいものですね。一方で、開発を急ぐあまり品質を犠牲にすればかえって価値が失われたり、技術的負債が溜まって長期的なコストが大幅に増大する可能性もあります。開発速度とプロダクト品質は基的にはトレードオフの関係にあるのでしょう。 開発速度と品質のどちらを優先するかはプロダクトの性質や、チームもしくは会社の状況によって異なるとおもいます。この状況の認識がチームメンバー間でずれていると、チームのパフォーマンスを最大限に発揮できないばかりか、チーム内の関係悪化も招きかねません。エンジニアたちとプロダクトオーナーの間の対立のようなありがちな問題の原因の一つかもしれません。 そこで、開発速度と品質のトレードオフをどう判断すべきかの基準を明確にして、原則それに従

    開発速度と品質のトレードオフの判断基準の合意 - Hatena Developer Blog
  • ドメイン駆動設計の道標 - sandbox

    この記事は 2016年 第2のドワンゴアドベントカレンダー、20日目の記事です。 qiita.com ドメイン駆動設計に関して悩める若者に送るポエムを書いていたら長くなりました。 20日目なはずなのに今日は 12/25 ですが、お察しください。 TL;DR ドメイン駆動設計には3つの顏がある それは「哲学」「戦略」「戦術」である 「戦術」にスポットがあたりがちだが、まず「哲学」とコアの「戦略」から理解する プロダクトにおけるドメインモデルの全体像を描いてから「戦術」を検討しよう ドメイン駆動設計をどの程度取り入れるかの 「ドメイン駆動設計の適用レベル」について はじめに ドメイン駆動設計(DDD)、以前と比較して認知が上がってきたのか、よく「DDD やってるんですか?」 「DDD ってどうはじめればいいんですか?」と聞かれることがあります。そしてこの時にまず話に上がるのが、エンティティ、集

    ドメイン駆動設計の道標 - sandbox
  • エンジニアの評価制度について - console.blog(self);

    Goodpatch Advent Calendar 2016 25日目の記事です。 「エンジニア向け評価制度」とは、技術やスキルなどの側面を評価するための制度という意味合い。いまエンジニア向けの評価制度を作っていて、いろいろな会社のエンジニア向け評価制度について調べてみた。 大別すると、こんな感じ。 そもそも評価制度がない エンジニア向け評価制度がない エンジニア向け評価制度がある そもそも評価制度がない 時雨堂やソニックガーデンには評価制度がない。 評価制度の無い評価制度 エンジニアの評価基準、短期評価をやめてみたら? | サイボウズ式 こういった考え方は、たしかになーと思う。 良い悪いを短期的に見ないからです。短期的に評価すると、短期的な視線で仕事をしちゃうじゃないですか? 一番イヤなのは、チームで助け合って働くのが大事なのに、“自分の評価を考えると、この人を助けている場合じゃない”と

    エンジニアの評価制度について - console.blog(self);
  • そのReactほんとに必要ですか?~もうすぐElectronで使えるようになるWeb Componentsの世界~ - SourceChord

    この記事はelectronアドベントカレンダー 2016 21日目の記事です。 遅くなってしまい申し訳ありません。。。 ※アドベントカレンダーのリンクが間違っていたので修正しました・・・汗 前置き ↓去年はこんな記事を書いていました。 このCSS Grid Layout Module Level1ですが、少しずつ仕様の策定が進み、とうとう勧告候補の段階まできました。 CSS Grid Layout Module Level 1 CSS Grid Layout Module Level 1 (日語訳) CanIUseを見ると、もうすぐFirefoxとChromeでの対応が行われるようです。 http://caniuse.com/#search=grid https://developer.mozilla.org/ja/Firefox/Releases/52 未来は意外と早く来るもんですね。

    そのReactほんとに必要ですか?~もうすぐElectronで使えるようになるWeb Componentsの世界~ - SourceChord
  • 低レイヤーの歩き方 - るくすの日記 ~ Out_Of_Range ~

    この記事は Kobe University Advent Calendar25日目の記事です。 低レイヤー技術(後述)をこれから学びたい人向けの入門記事です。 自身の経験を踏まえ、より多くの人達にこのレイヤーに興味を持ってほしくて書きました。 決して卒論がやばくてAdvent calendarのネタが作れなかったわけでは(ry なぜこんな記事を書いたか いわゆるシステムプログラミングのような低レイヤー(と言って差し支えない)ジャンルって一体何から始めれば良いのかいまいちピンと来ないし、何が面白いのかも分からないと思われている事が多いと思います。 にもかかわらず低レイヤーの魅力や学び方の指針みたいな物を示した、いわゆる入門記事ってかなり少ないんですよね。 記事はこれからシステムプログラミングを始めたい方や、既にかじってみたが中々先が見えてこない、将来何の役に立つのか不安という方達に読んでい

    低レイヤーの歩き方 - るくすの日記 ~ Out_Of_Range ~