先日、「How a single PostgreSQL config change improved slow query performance by 50x」というPostgreSQLのSSD環境でのチューニングの記事を見つけたのですが、これをTweetしたらRTやLikeを比較的たくさん頂きました。 How a single PostgreSQL config change improved slow query performance by 50x https://amplitude.engineering/how-a-single-postgresql-config-change-improved-slow-query-performance-by-50x-85593b8991b0 How a single PostgreSQL config change improved sl
テストがなかった無法地帯のプロジェクトに自動テストを導入して、開発速度を1.7倍にした話をします。 自動テストがなぜないのか 自動テストのないプロジェクトには、そうなる理由が必ず存在します。よくみる理由は、「時間がないから1」「テストの書き方がわからないから」「無理やりテストを書いたつらい経験があったから2」といったものです。今回のプロジェクトの場合は、以下の2点でした: 自動テストの書き方がわからないから レビューがテスト代わりだったから まず、チーム編成が変わって私ともう一人がチームに加わるまで、実装者の中に自動テストの経験者はいませんでした。このような状況では、自動テストは困難になります。なぜなら、何をどうやってどこまでテストするかを決めるには、多少の慣れが必要だからです。この慣れがないと、何をしたらいいかわからないという状態に陥りがちで、結果として自動テストが後回しにされてしまいま
Androidアプリ開発を進めていくに当たって、いろいろな「決めごと」があります。はじめはどのような意味があるのか分からないまま決めてしまい、後になって後悔することも多いので、どのようなことが取り返しがつかないのか、どのように決めればよいのか、をまとめてみようと思います。 前半は当たり前のことを書いていますが、後半ほど意外と意識していない人も多いのではないかと思います。 ※取り返しがつかない。といっても、全く別のアプリとして公開しなおすことまで許容してしまえば何でもありです。ここでは、同一のアプリとしてアップデートができない。もしくはアップデート時に何らかの問題が生じる可能性がある。などの意味になります。 アプリの公開のための情報関係 基本的なところなので問題が起こることは少ないとは思いますが、変更するとアプリの更新ができなくなるというものになります。 アプリのパッケージ名(Applica
[37選]機械学習ライブラリやフレームワークは? 国内AI活用サービスのアーキテクチャを大調査! Webのアーキテクチャ大調査の第二弾は「AI活用サービス」編。プログラミング言語や機械学習のライブラリをはじめ、フレームワークやツールの選定・設計もサービスによって異なります。ぜひ参考にしてください。 2017年4月に掲載したアーキテクチャ大調査の第二弾! 今回は、人工知能(機械学習、深層学習、画像処理など)を活用したWebサービス・アプリを提供しているベンチャーを中心に、36のサービスで使用されているプログラム言語やフレームワーク、その他さまざまな開発ツールなどをヒアリングのうえまとめました。選定理由を記述いただいた12のサービスでは、それもあわせて紹介しています。 前回との違いは、当然ですがTensorFlowやKerasといった機械学習のライブラリが挙げられていること。また、技術領域もH
実行されたコマンドを記録するという要件に対するアプローチ 誰がいつどんなコマンドを実行したかを記録したい ISMSとかPCIDSSでよく言われるモノ 世の中的アプローチ 1.acct/lastcomm 大方のOSが持ってるアカウンティング機能 が、コマンドは分かってもコマンド引数が記録されないという問題があって使いにくい。 それ以前に記録されるコマンド名の長さに制限がある(linux16文字、solaris8文字) イマドキではないな=3 2.シェルのhistoryファイルを利用 実行コマンドがhistoryファイルに出力されるのを利用 以下問題点 ユーザが書き換え権限を持つので、ログの改変が可能 * historyファイルのファイル名と保存位置の変更は環境変数の設定で可能だが、ユーザによる変更も可能(bashはtypsetでROに出来るがtcshはできるのか??) シェルが終了した時点で
11/28 に Haskell で MySQL の Xプロトコルを実装したという話が聴ける Club MySQL というイベントがあったので参加してきました。 clubmysql.connpass.com MySQLのプロトコルの話ということで、平日の夜とは言え東京で参加者9人(発表者含む)というマニアックな集まりでした。 自分も1年前に Ruby で MySQL Xプロトコルを実装していたのですが、このツイートを最後に中断していたのでした。 MySQL X Protocol で Collection の追加はできるようになったが、検索がめんどくさい。条件文字列のパースはクライアントで行う必要があるんだな。— とみたまさひろ💎🐬 (@tmtms) 2017年2月20日 今回話を聞いて、無理に謎条件式文字列をパースするんじゃなくて、処理系で書きやすいように書けばいいんだという方式に目から
こんにちは、@nazomikanです。 この投稿はLifull Advent Calenderの1日目の投稿になります。 本記事はざっくり言うとmapboxすごいよって話です。 ※言うまでもなく素晴らしいgoogle maps apiと比較することでmapboxを深掘りするのが目的で、決してgoogle mapsを貶めるつもりの記事ではないことをご理解ください Mapboxとは 地図サービスです。 GoogleMapsと近い感じでJSやnative appのsdkが公開されてていい感じに開発できるやつです。 データソースはopen streatmapになります。 Google Mapsとの違い タイルのレンダリングについて google mapsは地図をサーバサイドレンダリングして256x256の地図タイル画像として配信してタイル上に配置していきます。 一方でmapboxは地理情報のvec
JavaScriptのプログラミングはこれだけ効率化できる! 使用歴5年目のエンジニアが送るWebStormの厳選神業集 JavaScript(ES2015+)、TypeScriptの需要は高まる一方ですが、プログラミングの効率化をどれくらい意識していますか? プログラミングが効率化されれば、作業時間の短縮、ケアレスミスの軽減、プロダクトの品質の向上、そしてストレスの軽減に繋がります。 筆者が5年間使用している「WebStorm(ウェブストーム)」は、JavaScriptのプログラミングをする上での面倒な処理をほとんど自動化するための機能が揃っていて、ロジックの検討や表現の作り込みに時間を割けるようになります。 本記事では、多くの機能の中からとくに便利だと感じるものをピックアップして紹介します。WebStormを使ったことがない方も、「この作業はツールで自動化できるのか」という知識を得て、
今から、「敗戦処理がきちんとできる人」というのは物凄く貴重なんだけど、企業の中では凄い評価されにくいですよね、ちゃんと評価しないとまずいですよね、という話をします。 ご存知の方も多いと思いますが、株の世界には「コツコツドカン」という俗語があります。 コツコツ積み上げた勝ち分を1回の負けでどかーんと吹っ飛ばしてしまう、という意味の言葉でして、特に投資の初心者にありがちな話として、一般的な用語になっていると思います。 株の世界に限らず、「敗北時のダメージコントロール」という概念は本来ものすごーーーく重要です。 100回チャレンジして100回成功出来るようなチート性能のラノベ異世界転生人類ならともかくとして、大抵の一般人はそういう訳にはいきません。 かの完璧超人ローエングラム公ラインハルトですら、「100戦して100勝という訳にもいくまい」というお言葉を残しておられます。 「敗北」とか「失敗」と
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く