タグ

ブックマーク / itnews.org (13)

  • プログラマーがドキュメントを書かない理由

    この記事は、著者の許可を得て配信しています。 Why programmers don’t write documentation 最近ではずっとコードのドキュメンテーションに関連した記事を書いていたので、当然、私のMediumのおすすめ記事には「開発者がドキュメントを書かない当の理由」という記事が表示されるようになりました。この記事では、ドキュメントを書くための優れたツールがないことが、ソフトウェアエンジニアが自分の作業や判断をドキュメンテーションする意欲を失わせる最大の原因について書いています。 私は普段、特定の記事を批判したりはしませんが、この記事には怒りを覚えました。このライターは図解ツールについていくつかメリットに関して述べてはいますが、全体的に誤解を招くような内容になっており、この重要な問題をより分かりにくくさせています。2つの図解ツールを比較して、どちらも不十分なツールである

    プログラマーがドキュメントを書かない理由
  • 過大評価されるDDD(ドメイン駆動設計)

    この記事は、著者の許可を得て配信しています。 Is Domain-driven Design overrated? ドメイン駆動設計(DDD)は、システムのモデリングと構築のための優れたガイドラインを提供する大変便利なアプローチですが、それ自体が目的ではなく、目的のための手段です。その概念は有効ですが、それを使うことだけに限定すると、その一方で多くのことを失うことになります。つまり、実際にはDDDの先にも人生があるということです。 最近、「DDD は過大評価されている」というクリックベイトなタイトルの記事を投稿したところ、皆様からかなり注目を集めました。今回の記事は、社内やソーシャルメディア(TwitterやHacker Newsなど)で受けたフィードバックを取り入れて、前回の記事に内容を加えたものとなっています。また、私の考えにもう少しニュアンスを加えたかったので、あまり過激なものにはし

    過大評価されるDDD(ドメイン駆動設計)
  • 退屈な技術を選ぶことについて

    この記事は、著者の許可を得て配信しています。 https://panelbear.com/blog/boring-tech/ 注:この記事で書かれている考え方は、過去に何度も取り上げられています。長年にわたって私の視点に大きな影響を与えてきた記事の一つに、McKinley氏の「Choose Boring Technology(退屈な技術を選ぶ)」というものがあります。以下では、私自身の経験からこのトピックを探り、最近のプロジェクトKubernetesを使うことになった経緯を紹介します。 長年にわたり、私は多くのエンジニアが会社の成功や失敗の多くを技術的な選択が原因であると主張する傾向があるところを見てきました。私にももちろんそういう時もあります。それはしばしば正当化されますが、大多数のスタートアップ企業にとって、プログラミング言語、フレームワーク、あるいはデータベースの選択はそれほど重要

    退屈な技術を選ぶことについて
  • Visual Studio Code時代の到来

    この記事は、著者の許可を得て配信しています。 https://blog.robenkleene.com/2020/09/21/the-era-of-visual-studio-code// 使用するツールを選ぶときに私が最も重視しているのは寿命です。ソフトウェアの学習は投資であり、後で別のアプリケーションに切り替えなければならない場合は、今まで投資してきた資産の一部を失うと言っても過言ではありません。 ほとんどのソフトウェアのカテゴリにおいて、寿命の長いソフトウェアを選ぶのは簡単で、最も人気のあるツールは、通常、最も長く続いているものです。Microsoft ExcelとAdobe Illustrator は両方とも1987年にリリースされましたが、今でもそれぞれのカテゴリで最も人気のあるソフトウェアであり続けています。 一方、テキストエディタは、最も人気のあるオプションが一番古いものでは

    Visual Studio Code時代の到来
  • Kubernetesは自分にとって必要なのか

    この記事は、著者の許可を得て配信しています。 https://mbird.biz/writing/do-i-need-kubernetes.html 私がチームからよく聞かれる質問がこれです。「スタックをKubernetesホストすべきか」というものです。技術の世界でKubernetesが話題になっていることを考えると、多くの人がそうすべきだと思い込んでいます。 私は数年間k8s(Kubernetes) を使って仕事をしてきました。非常に強力で複雑なプラットフォームを使うことも多々ありました。 ただ真実はもっと微妙だと思っています。 ここでは、その判断をした経緯を紐解いてみたいと思います。スタートアップや、自社製品のホスティングに責任を持つ、より広い組織内の自給自足のチームを対象とした記事となっています。また、大規模な組織の従来のIT部門の人々にも役に立つ記事になっていると思います。 何

    Kubernetesは自分にとって必要なのか
  • 開発者の開発ペースを落とさずに強固なインフラストラクチャ・セキュリティを実現するためには - ITnews

    Gravitational 「teleport」「teleconsole」など、クラウドネイティブのアプリケーションとインフラストラクチャを提供するオープンソースソフトウェアベンダー この記事は、著者の許可を得て配信しています。 https://gravitational.com/blog/solid-infrastructure-security-without-slowing-down-developers/ この記事では、SaaS企業が強固なクラウド・インフラストラクチャ・セキュリティを持つことと、やりすぎて自社のエンジニアを怒らせてしまうことのトレードオフにどのようにアプローチしているかについて、私の見解を共有したいと思います。 セキュリティというものはイライラの原因になります。セキュリティがイライラの原因にならなければ、日々の暮らしがもっと楽になるかもしれません。もしあなたがSR

    開発者の開発ペースを落とさずに強固なインフラストラクチャ・セキュリティを実現するためには - ITnews
  • Webpackの70倍!Go言語で書かれたJavascriptバンドラー「esbuild」をベンチマークテストしてみた

    Webpackの70倍!Go言語で書かれたJavascriptバンドラー「esbuild」をベンチマークテストしてみた esbuild https://github.com/evanw/esbuild/ esbuildの特徴 複数モジュールの依存関係を解決し、1つにまとめるバンドラーは、現代のフロントエンド開発においてなくてはならないツールの1つ。 The State of JavaScript 上位5つに人気が集中し、なかでもWebpackのシェアは実に約60%に達しています。 今回ご紹介する「esbuild」は、Go言語で書かれた高速なバンドラーで、これらメジャーなツールとの性能比較(ベンチマークテスト)をやってみました。 公式のベンチマーク結果 計測方法は、three.jsライブラリを10回複製し、キャッシュなしで単一のバンドルをゼロから構築しています。なんと、Webpackに比べて

    Webpackの70倍!Go言語で書かれたJavascriptバンドラー「esbuild」をベンチマークテストしてみた
  • React+TypeScriptでできたミニマルな管理画面「react-admin-template」

    react-admin-template https://github.com/delprzemo/react-admin-template react-admin-templateの特徴 「react-admin-template」は、以下で構成されたオープンソースの管理画面です。巨大なリファクタリング/クリーニングを回避するため、コア機能のみ提供するコンセプトになっています。 ・React ・jQueryなし ・TypeScriptReact Hooks ・Redux react-admin-templateをインストールします $ git clone https://github.com/delprzemo/react-admin-template.git React-Admin-Template # リポジトリをダウンロード $ cd React-Admin-Template

    React+TypeScriptでできたミニマルな管理画面「react-admin-template」
    yk5656
    yk5656 2019/11/21
  • GoogleスプレッドシートでアプリライクなWebサイトがつくれる「Glide」

    ◆ Glide https://go.glideapps.com/ 紹介 「Glide」は、Googleスプレッドシートをストレージとして、ノーコードでアプリライクなWebサイトを構築できます。 事前準備 こちらがホーム画面。動画チュートリアルも充実しています。 アプリはスクラッチから作れるほか、7種類のテンプレートも用意されています。今回は、テンプレートの1つ「Conference」をベースに作っていきます。 まずは、左下にある「Coopy to my apps」からテンプレートをコピーします。 すると、My Appsに保存され DB代わりになるGoogle スプレッドシートもコピーされました。 データを編集する それでは実際に、テンプレートを編集しながらアプリを作っていきます。 まずはプロダクトの肝となるデータの編集からです。 データは、テンプレートをコピーした際にできたGoogle

    GoogleスプレッドシートでアプリライクなWebサイトがつくれる「Glide」
  • プログラミングの命名規則ガイドラインを規定するオープンソースプロジェクト「NamingConvention」

    ◆ NamingConvention https://namingconvention.org/ 紹介 「NamingConvention」は、プログラミング命名規則のガイドラインを作成・収集・維持するオープンソースプロジェクトです。 「C#・GitJavaPHPVueJS・Python」が、現在作成進行中です。 Gitの章には、ブランチ名やコミットメッセージ、プルリクのネーミング規定が記載されています。 例えば、ブランチネームだと必須や許可と一緒に例文も記載されています。 プログラミング言語(Java)だと、このようになっています。 推奨のネーミングというより、キャメルケースなど、最低限準拠すべき形式が書かれています。 プログラミング版wikipediaになるような、熱量高いコミュニティが続いて欲しいです。 ◆ NamingConvention https://namingconv

    プログラミングの命名規則ガイドラインを規定するオープンソースプロジェクト「NamingConvention」
  • ノーコードでWebページをスクレイプできるChrome拡張「AnyPicker」

    ◆ AnyPicker https://anypicker.ryang-studio.com/ 紹介 「AnyPicker」は、ノーコードでWebページをスクレイプできるChrome拡張ツールです。 Chrome拡張機能をインストール後、スクレイプするWebサイトを開くとこのようなサイドバーが出現します。 STEPは全部で5つあり、その1つ目がこちら。今回は初めての登録なので「New recipe」を選択します。 続いてSTEP2、ここで実際にスクレイプするコンポーネントを登録していきます。 取得対象にカーソルを合わせてクリックすると フィールドとバリューが取得できます。 同じ要領で、ピックアップ全部のタイトルを選択しました。 なお、フィールド値は自由に設定可能。後にアウトプットデータのKey値になるので、取得しやすい英単語が好ましいでしょう。 続いてSTEP3は、リンク元を取得&サジェス

    ノーコードでWebページをスクレイプできるChrome拡張「AnyPicker」
  • インフラの知識不要!GitからインポートしてWebサイトが構築できる「Render」

    ◆ Render https://render.com 紹介 「Render」は、Gitからインポートするだけで無料のSSL、グローバルCDN付きのWebサイトが構築できる統合プラットフォームです。 事前準備 まずはアカウントを登録します。 続いて、構築するサービス形態を選択しますが、今回は「New Web Service」にしました。 デプロイは全てGitからインポートする形式になっているのが、Renderの特徴でもあります。 インポートが完了するとリポジトリ一覧が表示されます。 デプロイ それでは早速Webサイトをつくっていきますが、まずは静的ページ(Static Site)の構築をやってみます。 必要な設定をポチポチするだけで、細かな設定は一切ありません。 Your site is live. と表示されれば構築完了です https://itnews-lp.onrender.com/

    インフラの知識不要!GitからインポートしてWebサイトが構築できる「Render」
    yk5656
    yk5656 2019/10/08
  • オープンソースのWebアプリケーション分析ツール「Cube.js」

    「Cube.js」は、npmやyarnでインストールできるオープンソースのWebアプリケーション用分析ツールです。RDBだけでなく、AWS AthenaやGoogle BigQueryなどのサーバーレスクエリエンジンと連携するように設計されています。機能が非常に豊富なので、今回は初期セットアップに的を絞ってご紹介します。 ◆ オープンソースのWebアプリケーション分析ツール「Cube.js」 https://cube.dev/ 紹介 「Cube.js」は、GUIも完備した高機能なWebアプリケーション分析ツールです。 インストール $ npm install -g cubejs-cli # or $ yarn global add cubejs-cli npmまたはyarnでインストールします。 $ cubejs create <プロジェクト名> -d <データベースタイプ> (データベー

    オープンソースのWebアプリケーション分析ツール「Cube.js」
  • 1