タグ

ブックマーク / qiita.com (700)

  • 2020年現在のNewSQLについて - Qiita

    Disclaimer 当記事はNewSQL開発ベンダの技術ブログや各種論文、その他ニュースサイト等の内容を個人的にまとめたものです。 そのため、理解不足等に起因する誤解・誤認を含む可能性があります。更なる理解が必要な方はリファレンスに挙げた各種文献を直接参照下さい。技術的な指摘は可能であれば取り込み修正しますが、迅速な対応はお約束できません。 NewSQLの解説は二部構成 当記事は前編でNewSQLの概要編となる。 全体の目次は下記である。 NewSQLとは何か NewSQLのアーキテクチャ NewSQLとこれまでのデータベースの比較 NewSQLのコンポーネント詳解 1章から3章までの内容を当記事で解説する。 4章はさらに詳細な技術的解説となり、後編の「NewSQLのコンポーネント詳解」で記述している。 こちらも合わせて一読いただきたい。 1. NewSQLとは何か NewSQLとは、海

    2020年現在のNewSQLについて - Qiita
    fjwr38
    fjwr38 2021/07/05
  • 無料プランは百害あって一利なし - Qiita

    Don't offer a Free Planという非常に力強い主張があったので紹介してみます。 著者はGuido( Twitter / GitHub / Webサイト )です。 Don't offer a Free Plan もしあなたがSaaSプロダクトを提供しているのであれば、無料プランを提供することに意味はないかもしれません。 無料プランはホスティングコストだけではなく、リアルのコストがかかります。 サイトでは、これらの検討事項について解説し、そして無料プランにかわる手段について提案します。 The costs of a free plan 無料プランは、ユーザにプロダクトを知ってもらい、そして後に有料プランにアップグレードしてもらうことを期待します。 プロダクトにもよりますが、無料プランのユーザが増えてもサーバ代にはほとんど変化がありません。 しかし、実際には大きなコストがかか

    無料プランは百害あって一利なし - Qiita
    fjwr38
    fjwr38 2021/06/01
  • JSON Schema や JSON から Go の struct を生成する - Qiita

    golang には標準で JSON 用のパッケージがあって、Go で JSON を読み込んだり、書き出したりするときは、そのための struct を定義することがほとんどだと思います。 便利に使わせてもらっているのですが、 struct を定義していくのが結構面倒だったりして、これを自動で生成しようというソフトウェアがいくつかあります。 自分も作ったうちのひとりなのですが、皆さん考えることは同じですね…… 機能やできることも異なるので、それぞれの特徴などを紹介していきます。 schematyper JSON Schema struct 作者 Igor Dubinskiy ライセンス MIT JSON Schema の type に null がある要素はポインタで表現されます。(*stringなど) JSON Schema で required でない要素は、 omitempty のタグが

    JSON Schema や JSON から Go の struct を生成する - Qiita
    fjwr38
    fjwr38 2021/05/21
  • Let's Encryptのルート認証局移行についてちょっと調べてみた - Qiita

    私も大変有り難く利用させてもらっている、みんな大好きLet's Encryptはいろんな方の寄付のおかげで無料で利用できるSSLサーバー証明書の発行サービスですが、何やらルート認証局の移行が話題になっているので、ちょっと調べてみました。 問題の概要は、こちらのブログでとても詳しく解説されており、とても参考になりました。ありがとうございます。 公式から出ている説明だと、出てくる証明書の関係がわかりにくく、図もちょっと間違っていたので、別の図を起こしました。簡単には、DST Root X3ルート証明書が期限切れを迎えそうなので、新しいISRG Root X1ルート認証局に移行したいわけです。 certbotを使っていると /etc/letsencrypt/archive/ドメイン/ に発行された証明書、チェーン、秘密鍵の履歴が残りますが、その時期を頼りにどうなっていたのか見てみます。 2020

    Let's Encryptのルート認証局移行についてちょっと調べてみた - Qiita
    fjwr38
    fjwr38 2021/05/10
  • 仮想マシンの実装 - Qiita

    概要 コード生成で生成したバイトコードを実行する仮想マシンを実装する.JVMなど,多くの仮想マシンがスタックマシンでの実行を採用しているので,ここでもスタックマシンで仮想マシンを実装する.この仮想マシンでは,とりあえず代入と加算,組み込み関数としてint print()だけ実行できるようにする.なお,printは引数を取れないので,実行しても実行できてるかどうかわからないため,呼び出されたら"hoge"とだけ出るようにする. 各種構造体の定義 まず,仮想マシン,値,定数,関数に対応する構造を定義する. 値の定義 この仮想マシンでは,値として整数と実数が存在するので.値を表現する構造を共用体で定義する.

    仮想マシンの実装 - Qiita
    fjwr38
    fjwr38 2021/05/06
  • すべての開発者へ。すごいGitHubリポジトリ10選 - Qiita

    記事は、Simon Holdorf氏による「10 Extraordinary GitHub Repos for All Developers」(2021年4月4日公開)の和訳を、著者の許可を得て掲載しているものです。 こちらもどうぞ すべてのウェブ開発者へ。人気GitHubリポジトリ9選 面接のリソース、build your own X、優れたパブリックAPIのリストなど Photo by Vishnu R Nair on Unsplash はじめに GitHubは、あらゆる種類の技術、フレームワーク、ライブラリ、コレクションなどを共有するためのNo.1プラットフォームです。しかし、その巨大さゆえに、最も有用なリポジトリを探すのが難しいという問題もあります。そこで私は、すべてのソフトウェアエンジニアに大きな価値のある、素晴らしいリポジトリ10選を作ることにしました。すべてに多くのGitH

    すべての開発者へ。すごいGitHubリポジトリ10選 - Qiita
    fjwr38
    fjwr38 2021/05/06
  • 『LeanとDevOpsの科学』まとめ - Qiita

    以前からAmazonの欲しいものリストにはあったのですが、なかなか読みたい気持ちにならずリストを整理するときに削除しちゃっていたのですが 2月ぐらいからTwitterでこのについての言及が増えたし、ちょうどそのころ開発生産性とは何か、について一考していたこともあったので、読んでみました。 LeanとDevOpsの科学 一旦さらっと読んで、面白いなー、やっぱデリバリ大事だなーと思って読了したんですが 先日texta.fmでこののことが取り上げられており、あー、そんな読み方があったかーと思って改めてちゃんと読み直してみました。 構成 第一部: 調査結果から見えてきたもの(パフォーマンスを向上させるケイパビリティとは何かの話。特にデリバリを中心に多面的に検討している) 第二部: 調査・分析方法 第三部: 改善努力の実際(いろんな会社の取り組みの事例) 読み方 常に付録Aの図A.1を開いてお

    『LeanとDevOpsの科学』まとめ - Qiita
    fjwr38
    fjwr38 2021/04/30
  • シニアフロントエンド開発者みたいにChromeデベロッパーツールを使おう - Qiita

    開発環境にChromeを選ぶなら知っておきたい12のテクニック Photo by Morning Brew on Unsplash さて、何らかの理由で、開発ブラウザとしてChromeを選んだとします。次は、デベロッパーツールを開き、コードのデバッグを開始します。 Consoleパネルを開いてプログラムの出力を確認したり、Elementsパネルを開いてDOM要素のCSSコードを確認したりします。 でも、Chromeデベロッパーツールを当に理解していますか?実は、パワフルだけど知られていない機能がたくさん用意されていて、開発効率を大幅に改善できるのです。 ここでは、最も便利な機能を紹介します。お役に立てたら嬉しいです。 ChromeのCommandメニューから始めましょう。ChromeのCommandメニューは、LinuxのShellのようなものです。コマンドを入力してChromeを操作で

    シニアフロントエンド開発者みたいにChromeデベロッパーツールを使おう - Qiita
    fjwr38
    fjwr38 2021/04/08
    XHR もっかい投げられるの知らんやった
  • Raspberry PiにBluetooth機器を接続する - Qiita

    Raspberry PiでBluetoothを扱う 備忘録メモです。 Raspberry PiはBluetoothが扱えます。 ちょっと試してみました。 参考: https://qiita.com/shskwmt/items/fffabf521201f5835214 https://qiita.com/katsuyoshi/items/9d5417495a47c4b15ac1 https://qiita.com/propella/items/6daf3c56e26f709b4141 https://qiita.com/sunaga70/items/89e2d1eecfd73d3fef21 Bluetoothをスキャンする Bluetoothctl コマンドを利用します。 rootユーザで実行するため、sudo付きです。 プロンプトが[bluetooth]# に変わります。

    Raspberry PiにBluetooth機器を接続する - Qiita
    fjwr38
    fjwr38 2021/03/24
  • マイクロフロントエンドの実現方法 - Qiita

    はじめに マイクロフロントエンドという言葉が流行っているものの、なんとなく具体的な実現方法がわかっていないので、勉強した結果をまとめます。 マイクロフロントエンドとは 「翻訳記事 マイクロフロントエンド」には、以下のように書いてあります。 それはマイクロサービスの考え方をフロントエンドに拡張したものです。 (中略) 開発をすすめていくと、特に複数のチームで管理している場合 フロントエンド層が肥大化して管理が難しくなりがちです。 これを「モノリシックなフロントエンド」と呼びます。 マイクロフロントエンドの背景には ページを独立したチームによって管理された機能の集合体と捉える考え方があります。 それぞれのチームは特定の領域やミッションに特化しています。 チームは組織横断的な作りになっていて、その機能を end-to-end つまりデータベースから UI に至るまでをすべて実装します。 つまり、

    マイクロフロントエンドの実現方法 - Qiita
    fjwr38
    fjwr38 2021/03/16
  • Linuxにおける非同期IOの実装について - Qiita

    はじめに Linux 5.1に新しい非同期IOの仕組みとしてio_uringがマージされてから既に1年以上経ってしまいましたが、これまでのLinuxにおける非同期IOの使い方や実装を見ていきながら、io_uringが登場した背景やLinux AIO(libaio)の問題点をどのように解決しているのかについてまとめました。アプリケーションの書き方については大まかにしか説明していないので、それについてはmanページや別の記事を参照してください。 またIOという範囲が広いのですが、ここではブロックデバイス上のファイルシステムにおける通常ファイルに対するread/writeについて考えています(ネットワークは考えていないのでepollの話はないです)。 前提知識 簡単に前提となる話をおさらいします。 同期IOと非同期IO IOを行うシステムコールとしてすぐに思いつくのはread(2)/write(

    Linuxにおける非同期IOの実装について - Qiita
    fjwr38
    fjwr38 2021/03/09
  • The Event Loop and Dart (翻訳) - Qiita

    Dartとイベントループ 原文: https://www.dartlang.org/articles/event-loop/ 2014/12/10時点の内容を元に翻訳 著者: Kathy Walrath 2013年9月著 (2013年10月更新) 非同期のコードはDartのいたるところで見受けられます。たくさんのライブラリのfunctionがFutureオブジェクトを返しますし、マウスのクリックや、ファイルのI/O完了、タイマーの完了などのイベントに応答するためのハンドラを登録する事ができます。 この記事ではDartのイベントループアーキテクチャを、あなたが驚く事もなく、より良い非同期なコードを書く事ができるように説明したいと思います。Futureタスクのスケジューリングの方法を学び、タスクの実行順序を予測できるようになるでしょう。 Note: この記事の中に出てくるものは、ネイティブに実

    The Event Loop and Dart (翻訳) - Qiita
    fjwr38
    fjwr38 2021/03/05
  • 海外「なぜ日本はハードウェアの時代と同じようにソフトウェアに秀でることができない?」 - Qiita

    Why doesn’t Japan excel in software as they did in hardware? (なぜ日はハードウェアの時代と同じようにソフトウェアに秀でることができない?) という英語Quoraのやり取り、分析が興味深かったので、まとめ。 仮説1: 日は完璧を求める 10人のエンジニアのソフトウェア開発会社を経営しているフランス人の友人が、ルイ・ヴィトン日支社のコンピュータシステムのマネージャーと同意した話:ソフトウェアはハードウェアではなく、産業用でもない。50年間同じトヨタカローラのように構築され、洗練され、完成されたものではありません。ゼロバグでそれを「完璧」にすることは不可能であり、したがって、「ゼロデフォルト」という、総合的な品質、継続的な改善を求める日人の精神に反するものです。 日は職人の国であり、漢字を書いたり、折り紙を折ったりする技術

    海外「なぜ日本はハードウェアの時代と同じようにソフトウェアに秀でることができない?」 - Qiita
    fjwr38
    fjwr38 2021/01/31
  • Goの新しいerrors パッケージ xerrors - Qiita

    先日 xerrors パッケージがリリースされました。 このパッケージは、Proposal: Go 2 Error Inspection で提案されているものをGo1向けに外部ライブラリとして試験的に実装したものです。 Goの標準ライブラリではありませんが、Go公式がメンテナンスをしています。 このパッケージができた背景は、今まで多くのGoエンジニアは下位層のエラーの情報を伝播させるために pkg/errors パッケージ などの外部ライブラリを利用していました。この手法が開発者の間で普及したため標準ライブラリで正式に検討を始めることとなりました。 2019/9/4更新 Go 1.13では %w でのラップや Is メソッド、 As メソッドは正式に導入されました。 しかし%+w や %+v によるスタックトレースの表示の採用は見送られました。 スタックトレースの表示が必要な場合はxerr

    Goの新しいerrors パッケージ xerrors - Qiita
    fjwr38
    fjwr38 2021/01/26
  • はてなブックマーク3万件にみる技術トレンド2020年まとめ - Qiita

    tl;dr 2020年1年間のはてなブックマークの人気エントリー3万件をもとに技術トレンドを分析。 その結論とPythonでグラフ化した手順を書き記します。 ※ご指摘がありましたが、技術トレンドというよりitニューストレンドと言った方が正しいかもしれません。踏まえてお読みください。 前置き 手元に2020年の1年間ではてなブックマークの技術カテゴリーにおいて人気エントリーに一度でも乗ったことのある記事のタイトルデータが3万件ほどあったため、形態素解析を行い単語の出現頻度順に並べてみました。欠損の割合としては多くても1割程度、つまり少なくとも9割程度のデータは揃っているはずなので精度はかなり高いと思います。 (※はてなブックマークはNewsPicksみたくインターネット上の記事をブックマーク・コメントでき、より多くブックマークされた記事が人気エントリーとしてピックアップされるサービスです。w

    はてなブックマーク3万件にみる技術トレンド2020年まとめ - Qiita
    fjwr38
    fjwr38 2021/01/05
  • Not Found

    fjwr38
    fjwr38 2020/12/25
    なんだこれは...
  • ghqでリポジトリ管理とpeco連携で快適git生活 - Qiita

    Gitのローカルリポジトリが増えてくるとどういう構成にすればいいか悩むところだけど、ghqとpecoがあれば考える必要がありません。今まで入れてなかった事を後悔するレベル。 ghqインストール Goがまだ入ってなければGoをインストール

    ghqでリポジトリ管理とpeco連携で快適git生活 - Qiita
    fjwr38
    fjwr38 2020/12/25
  • 自動作曲AI Music Transformerの衝撃 - Qiita

    AIが名曲を生み出す〜 この音楽を聴いてみてください。 See the Pen MusicTransformerDemo by NayuSato (@nayusato) on CodePen. 埋め込みが見られない場合はここ これはGoogleの自動作曲Music Transformerが生み出した曲の1つです。 入力は、最初の6秒だけ。 クラシックのドビュッシー「月の光」の冒頭6秒だけを与えて、その続きを全て作らせるというタスクを行わせています。 十分聴き入って感動できるような曲に仕上がっています。 ケチをつけられる点がないとは言わないけれど、「人の作った曲です」と言われても識別できないほどの精度になっています。 「Music Transformer」 2018年Googleが発表した自動作曲のAI。 自然言語処理のアルゴリズムであるTransformerを音楽に適用することにより、そ

    自動作曲AI Music Transformerの衝撃 - Qiita
    fjwr38
    fjwr38 2020/12/23
  • [翻訳] Shopifyにおけるモジュラモノリスへの移行 - Qiita

    こんにちは、べログシステム部長の京和です。 エントリでは Shopify の Engineering Blog から、Kirsten Westeinde による「Deconstructing the Monolith: Designing Software that Maximizes Developer Productivity」を翻訳して掲載します。 べログではユーザーや飲店に価値を届けるスピードを最大化するべく、マイクロサービス化などをはじめとしたこれまでの組織やアーキテクチャを刷新するための取り組みを始めています。しかし、マイクロサービスはアプリケーションアーキテクチャとインフラアーキテクチャが複雑に絡み合ったシステムで技術的難易度が非常に高く、適切に構築できなければ「分散されたモノリス」と呼ばれるアンチパターンに陥ります。1 Shopifyではマイクロサービスではなく、

    [翻訳] Shopifyにおけるモジュラモノリスへの移行 - Qiita
    fjwr38
    fjwr38 2020/12/23
  • クラスタのノード欠損を復旧しようとしてクラスタを丸ごと落とした話 - Qiita

    これは、私が若…くはないけどピカピカのAWS1年生だった、数年前のお話です。 何をやらかしたのか やらかし前の状態 番運用しているWebアプリケーションの裏側に、EC2インスタンス3台でクラスタを組んだ某データストア製品を使用していました。データはクラスタ内でレプリケーションされており、1台がダウンしただけならクラスタは稼働を継続できます。2台がダウンするとクラスタ全体が機能しなくなります。 ある日、3台のうち1台で障害が発生してインスタンスへ疎通できない状態になりました。この時点ではクラスタは正常に応答しており、あと1台ダウンしない限りはサービスに影響が出ない状態でした。 まず、ダウンしてしまったインスタンスを再起動して復旧させようとしました。ところがEC2マネジメントコンソールから再起動、停止を選択しても障害中のインスタンスは反応しません。そして私は間違いを犯します。 やらかしたこと

    クラスタのノード欠損を復旧しようとしてクラスタを丸ごと落とした話 - Qiita
    fjwr38
    fjwr38 2020/12/12