タグ

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

  • そのコードに価値はあるか?kintone開発チームでスクラムトレーニングを受講しました - Cybozu Inside Out | サイボウズエンジニアのブログ

    こんにちは。kintone開発チームの天野(@ama_ch)です。3ヶ月ほど前からスクラムマスターを始めました。 10/18(金)に@ryuzeeさんにサイボウズ東京オフィスにお越しいただき、kintone開発チームのメンバーでスクラムトレーニングを受講しました。 きっかけ 私が開発しているkintoneはクラウドサービスですが、サイボウズはパッケージ製品の開発でスタートした歴史があり、開発プロセスにもパッケージ時代の習慣が強く残っていました。 長大な要件リスト 実装と試験工程の分断 開発後期での手戻り etc... もちろんこれまで手をこまねいていた訳ではなく、開発チーム内では次のような活動に取り組んできました。 タイムボックス(イテレーション)を区切った開発 テスト自動化の推進 ビルドパイプラインの構築 開発者環境への継続的デリバリー ふりかえり KAIZEN DAY, KAIZEN合

    そのコードに価値はあるか?kintone開発チームでスクラムトレーニングを受講しました - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 【QCon Tokyo 2016】今どきのアーキテクチャ設計戦略:鈴木 雄介 氏

    Spring BootによるAPIバックエンド構築実践ガイド 第2版 何千人もの開発者が、InfoQのミニブック「Practical Guide to Building an API Back End with Spring Boot」から、Spring Bootを使ったREST API構築の基礎を学んだ。このでは、出版時に新しくリリースされたバージョンである Spring Boot 2 を使用している。しかし、Spring Boot3が最近リリースされ、重要な変...

    【QCon Tokyo 2016】今どきのアーキテクチャ設計戦略:鈴木 雄介 氏
  • 今だからこそ使いたい、若手エンジニア向けEmacs実践入門 - エンジニアHub|若手Webエンジニアのキャリアを考える!

    今だからこそ使いたい、若手エンジニア向けEmacs実践入門 エディタソフトウェアとして有名なEmacs。若手エンジニア向けに、今だからこそ「Emacs実践入門」をお送りする。 はじめまして、大竹智也と申します。過去に『Emacs実践入門』(技術評論社)を上梓し、雑誌での執筆経験もありますが、Webでの執筆は初めてとなります。そのためお見苦しい点があるかもしれませんが、何卒ご容赦ください。 突然ですが、みなさんはGNU Emacs(以下、Emacs)というソフトウェアを知っていますか? 日はまだEmacsをよく知らない方に向けて、このソフトウェアの魅力を紹介していきます。 Emacs概要 Emacsの簡単な歴史 Emacsの特徴 Emacsの基的な5つの機能 1. 検索と置換 2. シンタックスハイライトと自動インデント 3. ウィンドウ分割 4. 矩形(くけい)編集 5. バージョン管

    今だからこそ使いたい、若手エンジニア向けEmacs実践入門 - エンジニアHub|若手Webエンジニアのキャリアを考える!
  • Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2024 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    Javaはどのように動くのか~図解でわかるJVMの仕組み 記事一覧 | gihyo.jp
    etakaha
    etakaha 2016/12/11
  • Concurrent Mark-Sweep Garbage Collection #jjug_ccc

    Re-Introduction: Concurrent Mark-Sweep Garbage Collection @ Japan JUG Conference.

    Concurrent Mark-Sweep Garbage Collection #jjug_ccc
    etakaha
    etakaha 2016/12/11
  • 秒速でgitの自動補完を有効にする小技 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作

    こんにちは、GUIは甘えだと信じて疑わないフロントエンド、じぇしーです。 皆さん、gitはもちろんCUIで使ってますよね。OSに依存しない統一したインターフェースが提供されていたり、他のコマンドと組み合わせることが容易であるなど、様々なメリットがあるCUIですが、初期状態ではtabによるコマンドの補完が効かないのが玉に傷です。特にブランチを指定した操作をする時が辛いです。 そうは言っても、個人開発のユーティリティやサードパーティではサポートに不安があります……。 そこで、今回は公式ドキュメントでも紹介されているgit-completionを導入して、コマンドやブランチ名を補完できるように設定しましょう。

    秒速でgitの自動補完を有効にする小技 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作
    etakaha
    etakaha 2016/12/11
  • CQRSとイベントソーシングの使用法、または「CRUDに何か問題でも?」 | POSTD

    書き込みと読み込みのどちらに力を入れているかは、ストレージエンジンによって異なります。たとえば昔ながらのリレーショナルデータベースは、外部キーなどの制約を使ってデータの整合性をうまく制御できるようになっています。一方でNoSQLデータベースは、スループットとスケーラビリティを確保するために、そういった組み込みのガードレールをはずしてしまいました。データ層においても、どちらか一方に特化した最適化をすることがあります。たとえば、あらかじめ計算済みの値を保持しておけば、「一日あたりのサイト訪問者数」などの読み込み操作を効率よく行えるでしょう。ストレージソリューションのメーカーはどこも、「うちのプロダクトならあらゆるニーズを満たせます」などと自社製品の機能を自慢します。しかし実は、昔ながらのCRUDモデルに沿ってストレージエンジンを選んでデータ層を設計した時点で、さまざまな関心事の間で何らかの妥協

    CQRSとイベントソーシングの使用法、または「CRUDに何か問題でも?」 | POSTD
    etakaha
    etakaha 2016/12/11
  • 大きな組織で情報共有するためのOSSつくってみた - Qiita

    この記事は、Fujitsu Advent Calender 2016の6日目の記事です。 はじめに 仕事柄、沢山の人が関わるお仕事の効率化に関心があり、プライベートで研究や開発をしています。システム・インテグレーションをはじめ沢山の人が関わるお仕事は、人海戦術で行なわれる事がよくあります。しかし、経験上ITが関わるお仕事の人海戦術はおすすめできません。効率面、品質面、労務管理の面で問題が発生する事が多いからです。 人海戦術にならないようにするには、「人間的な仕事」と「機械的な作業」を切り分けて、機械的な作業をIT化するのが近道ではないかと考えています。 ITの現場における機械的な作業の例 情報を記録する(課題とか、バグとか、更新履歴とか) 情報を探索する(あの資料どこだっけ?とか) 情報を収集する(進捗どうですか?だめですか?とか) 情報を転記する(メールからエクセルとか) 情報を伝達する

    大きな組織で情報共有するためのOSSつくってみた - Qiita
    etakaha
    etakaha 2016/12/11
    情報共有ツール プリザンター
  • レガシーシステム上のJavaScriptをモダンビルドにしていくwebpack利用実例 - Qiita

    (function(){ var self = this; $("button").click(function(){ // }) })() // 古いコードはglobalに定義された何か SomeLib.prototype.foo = function(){ // } 下記のような特徴があります。 ライブラリ系(jQueryやjQuery.functionなど)は別途読み込み common.jsのようなよくある共通ファイルが存在 1ページ中で、scriptはファイル単位で複数読み込み 原始的なJavaScript配信状態(Sprocketsのようなビルドプロセスとは全く無縁な状態) jQuery以外に、ライブラリ・フレームワークなどは基入っていない 色々とJavaScript初心者殺しな記法が多い (function(){})()を利用したglobal汚染回避 self = thisの

    レガシーシステム上のJavaScriptをモダンビルドにしていくwebpack利用実例 - Qiita
  • エンタープライズとDevOps - Qiita

    The DevOps Handbookが2016年10月に発売になりました。これを読んで、SIerが開発対象とするようなエンタープライズ領域において、DevOpsは価値があるのかどうか、考えてみます。 The DevOps Handbookでは、DevOpsの目的を以下のように定めています。 開発者は生産性向上というとプロセスタイムの短縮にばかり目がいきがちだが、リードタイムをいかに短縮するかの方が、顧客にとっての価値であり、それがDevOpsの目的である。#DevOpsHandbook — :SIer/kawasima (@kawasima) 2016年10月19日 リードタイムとプロセスタイムの違いは、以下のような定義です。 実際にDevやOpsのタスクを実行している時間は、プロセスタイムです。それ以外の時間も短くする努力が必要です。 SoRとSoE SoRとSoEというシステム分類が

    エンタープライズとDevOps - Qiita
    etakaha
    etakaha 2016/12/11
    リードタイムとプロセスタイム
  • コードレビューをより効果的にする方法

    ツールに任せることができないどんなことを人間は指摘できるのだろうか? 驚くほど多数の事柄があることがわかっている。この記事の残りで幅広い重要事項のリストに触れ、2つの特定の領域、パフォーマンスとセキュリティに関してはもう少し深く言及する。 設計 新しいコードは全体アーキテクチャに適合しているだろうか? コードはSOLID原則、ドメイン駆動設計、もしくはチームが採用する他の設計手法に従っているだろうか? 新しいコードでデザインパターンは使用されているだろうか?これらは適切だろうか? コードベースの標準や設計スタイルが混合されている場合は、新しいコードは現在の原則に従っているだろうか?コードは現在の方向性を引き継いでいるか、徐々に除去される古いコードの例に従っているだろうか? コードは正しい場所に配置されているだろうか?例えば、コードが注文に関係する場合は、それは注文サービスの中にあるだろうか

    コードレビューをより効果的にする方法
  • 現場を改善したいあなたに送る、くじけない業務改善のメソッド - Qiita

    現場を改善するというのは難しい。そして徒労である。 こちらの記事を読んで、当時のことを幾ばくか思い出すきっかけになった。 業務改善を現場に求める狂気 私も実際に現場の改善に取り組んだことがある。ただ、その中には失敗だけでなく成功もある。というか、多くの失敗から成功させるために何が必要なのかを得たという感じで、成功したものは後半に行ったものになる。成功といえるものの中で大きめなものは、以下の二つになる。 Gitによるバージョン管理と、タスク管理ツールの導入(当時書いたもの) 開発にJavaScriptフレームワークを導入(当時の検証結果をまとめた記事) 私が身につけた手法が、改善を目指す誰かがくじけないために有用なこともあるかもしれないので、ここで得られた知見を紹介しておこうかと思います。つまりこれは、ポエムです。 前提: 改善できないのは特別なことではない 何かを改善したいと行動してみる。

    現場を改善したいあなたに送る、くじけない業務改善のメソッド - Qiita
  • AWSの保守運用を自動化するためのアーキテクチャ - Qiita

    はじめに SIerで働いてます。周りを見渡すとまだまだオンプレだけのシステムが多いですね。 少し前はクラウドは選択肢にすら入ってきませんでしたが、今はどんなに固いシステムでも必ずクラウドが選択肢に入ってくるようになりました。そして、この1~2年くらいはクラウド、特にAWSを利用したシステムの構築案件が増えてきたなぁと実感しています。 社内の人と話していても、「AWSなにそれ?」とか「AWS安くなるらしいから使おうよ。」という人もさすがに減ってきて、オンプレ脳から徐々にクラウド脳にシフトしていってるのかなと感じます。 この記事は、社内のAWSのイベントでLTで話した内容をベースに書いています。ただSWFについてはマニアックなので避けました。少しでも若手や興味を持っていただいた方の勉強になればと思いまして、その考えに至った背景などをかなり寄り道しながらできるだけやさしく書いてみました。 なぜ自

    AWSの保守運用を自動化するためのアーキテクチャ - Qiita
  • Re:dashでRedmineのチケットを可視化する - Qiita

    日々優先タスクをこなすことに追われ、分析や改善が後回しになってしまうことはありがちです。 RedmineではチケットをCSVでダウンロードできるのでExcelワークで分析することはできますが、 Excelでの分析は時間がかかるためKPIとして常に監視するのは難しいです。 チームやプロジェクトの状態を把握し改善箇所を見つけるためにも定量的なデータの分析とKPIの監視が大切です。 最近、Re:dashを使ってRedmineのチケット分析を行ったのでその事例を紹介したいと思います。 これはre:dash Advent Calendar 2016の8日目の記事です。 記事ではRedmineとRe:dashの連携方法を説明し、 Redmineのチケット分析に必要になるテーブル構成やSQLクエリのサンプルを紹介したいと思います。 こんな感じのダッシュボードが簡単に作れました。 RedmineとRe:

    Re:dashでRedmineのチケットを可視化する - Qiita
  • 秒間500件以上のLOGフローアーキテクチャ - Qiita

    今年の9月、社内でLOGのアーキテクチャの改善を計るチームに参加する事になりました。 その際に経験させていただいた、知見をここでまとめてみようと思います。 背景 チームが作られた経緯としては、社内のLOGアーキテクチャを利用している際、問題が発生したためです。 問題発生した際の簡単なLOGアーキテクチャ図です。 backendのmongodbLOGの流量に耐えきれず落ちた。 log dispatcherまで派生し、他のbackend_serviceへのLOG流入にまで影響を及ぼした。 各種log dispatcherサーバの設定時、backend毎に流量の微調整を行わなくては行けないので障害発生時やサーバ構築時の対応にてインフラチームの人員コストが増大していた。 今回の目標 上記問題をふまえて、今回のLOGアーキテクチャ検討チームの目標は 秒間500件以上を各backendまで流し込むア

    秒間500件以上のLOGフローアーキテクチャ - Qiita
  • 最速・最高のファイルアップロードに近づくための1歩 - Qiita

    Webアプリを作っていてよく出くわすのがファイルアップロードですね。単純にアップロードするだけなら実装自体はたいしたことないものですが、より良くしようと思うと想像以上に奥が深く…悩ましい沼感があります🤔 今回は今までファイルアップロードを実装していく中で手に入れた改善ポイントを紹介していきます。これで最速・最高のファイルアップロードに1歩でも近づけられればと思います。 なお、僕が普段開発をしているアーキテクチャの都合上、 nginx Rails の話が出てきますが一部を除きWebアプリなら普遍的に使える話だと思います。 2つの側面から紹介します。 UI編 と パフォーマンス編 です。 UI編は、HTML5を中心に使い勝手を向上させるためのポイントを紹介します。パフォーマンス編ではRailsのファイルアップロードを約10倍高速化⚡️した事例を紹介します。それでは長いですが、よろしくお願いし

    最速・最高のファイルアップロードに近づくための1歩 - Qiita
    etakaha
    etakaha 2016/12/11
  • ScalazでウェブアプリもCHA-LA HEAD-CHA-LA

    2016/12/02に開催された「Better Javaの一歩先へ! Scalaリファクタリング入門」で使用された発表資料です。

    ScalazでウェブアプリもCHA-LA HEAD-CHA-LA
  • 一から始めるJavaScriptユニットテスト - Hatena Developer Blog

    この記事は、はてなエンジニアアドベントカレンダー2016の5日目の記事です。 こんにちは、はてなでアプリケーションエンジニアをしている id:shiba_yu36 です。先日、buildersconにおいて、現在所属しているプロジェクトJavaScriptのユニットテストを導入した知見について、「一から始めるJavaScriptユニットテスト」というタイトルで発表しました。 speakerdeck.com この発表は、実際にJavaScriptのユニットテスト環境を作ってみると非常にハードルが高いと感じたので、そのハードルを少しでも下げられればという思いで、非常にシンプルな例で一から環境を作る例を紹介しました。アジェンダは次のとおりでした。 カクヨムのJS環境 JSのテストツールを整理する 通常の関数のユニットテスト DOM操作する機能のユニットテスト カクヨムのJS環境や、JSのテスト

    一から始めるJavaScriptユニットテスト - Hatena Developer Blog
  • 新しめのCSS設計まとめ 〜2016年冬〜 - Qiita

    最近新たに色々なCSSの設計が提唱されているので、学習を兼ねて簡単にまとめました。 どれも実際に実践してないものばかりなので、表面を舐めたいなくらいの気持ちで読んでください。 ググればもっと詳しく解説してくれている良記事があります。 以降のCSS設計へ影響を及ぼした3大アーキテクチャ 派生したCSSの設計たちは、ほぼこれらの考え方に影響を受けている。 はじめに簡単におさらい。 OOCSSYahoo!のNicole Sulivan氏提唱。 構造と見た目を切り分けて考える。オブジェクト指向型CSS。 .box { width: 100px; height: 100px; } .box-red { background-color: red; } .box-blue { background-color: blue; }

    新しめのCSS設計まとめ 〜2016年冬〜 - Qiita
    etakaha
    etakaha 2016/12/11
  • 運用フェーズにおけるGCPとAWSの違いについて - Qiita

    Google Cloud Platform(2) Advent Calendar 2016 8日目を担当するk-bataです。 Qiitaへ投稿するのは初めてで読みづらい点もあるかと思いますが、最後までお付き合いくださいませ。 今年になってGCPの東京リージョンが発表され、AWSにしか関心がなかった自分がGCPを触ってみたところ、非常に使いやすいと感じました。 特に運用フェーズではGCPの方が使いやすいと感じるところがありましたので、AWSと比較しながら紹介したいと思います。 対象となるかた AWSでたくさんのアカウント(VPC)を管理しているインフラ担当 GCPに興味はあるが、運用で楽できるのか不安に思っている方 ハードウェアメンテナンスで仮想マシンが停止しない AWSで100台以上のインスタンスを運用していると、月に一度はどこかの仮想マシンがメンテナンス再起動の必要に迫られます。 AW

    運用フェーズにおけるGCPとAWSの違いについて - Qiita
    etakaha
    etakaha 2016/12/11
  • テスト自動化あれこれ - bluebird

    ソフトウェアテスト Advent Calendar 2016 - Qiitaの9日目エントリーです。 qiita.com エラーが「自動的に」増殖するのがDevOps To make error is human. To propagate error to all server in automatic way is #devops.— DevOps Borat (@DEVOPS_BORAT) 2011年2月26日 継続的デリバリーの核心は、フィードバックのサイクルを素早く回すことにありますが、それはユニットテストのカバレッジが十分になければ不可能です。 A/Bテスト、オートスケール、カナリヤテスト、Blue-Green Deploymentなど、DevOpsを推進する上での各種プラクティスは、いずれも、プロダクトの品質が安定していることを前提としています。品質が安定していない状態でリリ

    テスト自動化あれこれ - bluebird
    etakaha
    etakaha 2016/12/11
  • 次世代監視の大本命! Prometheus を実運用してみた - Qiita

    こんにちは!freeeでインフラゾンビをやっている @sugitak です。ゲームではレベルを上げて物理で殴る派です。 freee ではたまにインフラエンジニアの数が減るのですが、その減ったインフラエンジニアはインフラゾンビへと進化し、社内を闊歩します。インフラゾンビは主に開発チームに所属して、アプリっぽいインフラの仕事をインフラからアプリ側へと持っていきます。デプロイとか、Dockerとか、Jenkinsとかの、いわゆる DevOps 系のところですね。こうすることで開発者は手を出せるものの自由度が増えるし、インフラはより来のインフラとして純度を上げていける、 so, win-win ってわけです。 さて、そんなわけで監視です。freee Engineers Advent Calendar 2016の9日目の記事として、 Prometheus による監視が最高なのでみんなもっと使おうと

    次世代監視の大本命! Prometheus を実運用してみた - Qiita
    etakaha
    etakaha 2016/12/11
    Windows版もあるっぽい
  • リーダーであるための視野・視座・視点 - Tech Inside Drecom

    はじめに 十名~数十名ぐらいのプロジェクトで開発することの多いドリコムだが, プロジェクトの中に「プロジェクトリード職」という役割を置いている。 プロジェクトの実現性と健全性を担保するのが仕事だ。 ディレクター,プロダクトデザイン,プランナー,アート,エンジニアリーダーという風に 職種別のリード職を設けていて,エンジニアリーダーの場合はアーキテクチャや安定稼働, (技術的な) ユーザビリティ等への専門性を持って責任を負うのと,エンジニアチームの チーム作りもミッションに加えている。 最近は開発ライン数が増えてきたこともあり,新卒 2,3 年目のリード職が増えてきた。 リード職になった人に「一メンバーだった頃と何が違う?」と聞くと, よく「視野が広くなった」と返ってくる。 視野が広くなるとは具体的にどういうことなのか,掘り下げてみようと思う。 主に 2 年目エンジニア向けのエントリです。 仕

    リーダーであるための視野・視座・視点 - Tech Inside Drecom