並び順

ブックマーク数

期間指定

  • から
  • まで

241 - 280 件 / 3663件

新着順 人気順

codeの検索結果241 - 280 件 / 3663件

  • 30分で完全理解するTransformerの世界

    はじめに 初めまして。ZENKIGENデータサイエンスチームのはまなすです。正式な所属はDeNAデータ本部AI技術開発部なのですが[1]、業務委託という形で今年度から深層学習系の開発等に携わっています。 深層学習界隈では、2017年に衝撃的なタイトル(Attention Is All You Need)の論文が発表されてから早5年半、元出自の機械翻訳タスクを大きく越えて、Transformer関連の技術が様々な領域で用いられる汎用アーキテクチャとして目覚ましく発展し続けています。 今回はそんなTransformerが現時点までにどのように活用されてきたか、また、どのように工夫されてきたかをざっくりと俯瞰し、流れをおさらいする目的の記事になります。本記事の大枠は、2021年時点でのサーベイ論文である A Survey of Transformers に倣いつつ、適宜、2023年2月上旬現在ま

      30分で完全理解するTransformerの世界
    • プログラマーがドキュメントを書かない理由

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

        プログラマーがドキュメントを書かない理由
      • 過去の自分に教えなければならないVSCodeのショートカット - Qiita

        以下はVitor Paladini ( Twitter / GitHub / dev.to ) によるVS Code shortcuts that I would teach myself if I had a time machine with limited fuelの日本語訳です。 VS Code shortcuts that I would teach myself if I had a time machine with limited fuel 「やあ俺だ。黙って聞いてくれ。時間がないんだ。」 「待って待って、お前誰だ。どうやって部屋に入ってきた。あとどうして俺そっくりなんだ。」 「俺は未来のお前だ。ここまで来たのは、特別にVSCodeのショートカットを教えるためだ。さあいくぞ」 「正気か?ロト6の番号でも株式情報でもなく、わざわざVSCodeのショートカットを教えにやってきた

          過去の自分に教えなければならないVSCodeのショートカット - Qiita
        • プログラマーのための原則(2 万字) - Qiita

          はじめに 今でも語り継がれる「原則」は、それだけ価値のあるコンセプトです。 歴史を振り返ることは、失敗を防ぐための効率の良い方法になります。 👑 DRY (Don't repeat yourself) 「同じことを繰り返すな。」 Andy Hunt と Dave Thomas の著書『達人プログラマー』(1999 年)で提唱された原則で、プログラミングに関する最も重要な原則といっても過言ではありません。 DRY 原則だけでなく、どんなデザインパターンやベストプラクティスでも、同じ処理が重複することは基本的に許されていません。 これにはどういう意図が込められているのでしょうか。 🔖 表面的な理由 この原則は、コードの再利用性を高め、そのために疎結合な状態を保つことは、極めて有用なことを示唆します。 1 箇所を直せば済むべき箇所をあちこちに分散させてしまうのは、自分で事故を招いているのと同

            プログラマーのための原則(2 万字) - Qiita
          • メルカリShops の技術スタックと、その選定理由 | メルカリエンジニアリング

            こんにちは。ソウゾウの Software Engineer (CTO) の @suguru です。連載:「メルカリShops」プレオープンまでの開発の裏側の1日目を担当させていただきます。 7月末にメルカリShopsという新しいサービスが公開されました。メルカリShops は、2021年1月にメルカリのグループ会社として設立したソウゾウが新たに立ち上げたサービスです。 この記事では、メルカリShops を作るにあたり、どういった技術、アーキテクチャを選定したのか、その背景と意思決定をまとめて共有したいと思います。 monorepo まず最初にプロジェクトをスタートしたときに、サービスのリポジトリを作るのですが、迷わず monorepo による構成を選択しました。monorepo は、システムを構成する複数のコンポーネントの独立性を保ちつつ、全ての構成を1つのリポジトリで管理する手法です。今

              メルカリShops の技術スタックと、その選定理由 | メルカリエンジニアリング
            • オープンワールドゲームを糞ほどやった俺がトップ3出すよ

              ハードは基本的にPC。専売のものだけコンシューマ機で。 Subnautica星間移動が日常的なものとなった未来を舞台に、 宇宙船の事故で海しかない惑星に放り出された主人公が星からの脱出を目指すゲーム。 ゲーム内ロケーションの90%くらいが海中という特異なゲームで、 人間の持つ深海や暗闇への根源的な恐怖を思う存分刺激してくれる作品。 特に、VRプレイ時の恐怖は筆舌に尽くし難く、 既に何周もクリアし、この海域には何もいないことを知っているのに冷や汗が吹き出るほど。 本作においては、レベルデザインの巧みさが特筆出来る。 ・恐怖を克服して行動範囲を広げる探索パート ・素材収集やクラフト、ハウジングを行うサバイバルパート ・この惑星に点在する先史文明の遺跡を調査し、過去の歴史を解き明かす謎解きパート と、ゲーム内に全く種類の違う楽しみ方を用意し、しかもそれを自然且つシームレスに提供することで、 ホラ

                オープンワールドゲームを糞ほどやった俺がトップ3出すよ
              • ブラウザからDBに行き着くまでただまとめる

                はじめに あなたはブラウザからデータベース(DB)に情報が行き着くまでにどんな技術が使われているか説明できますでしょうか? どのようなプロトコルが用いられ、どの技術を駆使してサーバと通信しているのか、Webサーバでは何が行われ、どのようにして負荷が分散されているのか、トランザクションはどのように管理されているのか、そしてデータベースではシャーディングや負荷対策のためにどのような対策が取られているのか… なんとなくは理解しているものの、私は自信を持って「こうなっている!!」とは説明ができません。 そこで今回は「大規模サービス」を題材としてブラウザからデータベースに至るまでの、情報の流れとその背後にある技術について、明確かつ分かりやすく解説していきたいと思います。 対象としてはこれからエンジニアとして働き出す、WEB、バックエンド、サーバーサイド、インフラ、SREを対象としております。 1.

                  ブラウザからDBに行き着くまでただまとめる
                • OAuth 2.0 を参加者全員がある程度のレベルで理解するための勉強会を開催しました | DevelopersIO

                  現在私は barista という OpenID Connect と OAuth2.0 に準拠したID製品の実装を行っています。 また、私の所属する事業開発部では prismatix というEC、CRM の API 製品の開発を行っていますが、この prismatix の認可サーバーとして barista を利用しています。 barista チームの増員や、prismatix の認可についての理解を促進するため OAuth 2.0 をある程度しっかりと理解しているメンバーを増やしたかったので、勉強会を開催しました。 勉強会の内容 概要 雰囲気でOAuth2.0を使っているエンジニアがOAuth2.0を整理して、手を動かしながら学べる本を全員で輪読 OIDC 編はこのあとやる予定 攻撃編もやりたい RFC 読んだりもしたい 参加者全員が以下を満たすことが目標 OAuth 2.0 の意図を理解

                    OAuth 2.0 を参加者全員がある程度のレベルで理解するための勉強会を開催しました | DevelopersIO
                  • ChatGPTをオープンソースで再現、わずか1.6GBのGPUメモリですぐに使用でき7.73倍高速なトレーニングが可能

                    OpenAIの対話型AI「ChatGPT」は史上最も急速な成長で「月間1億ユーザー」をわずか2カ月で達成するなど、大いに注目を集めています。それに伴い、GoogleがChatGPTのライバルとなる会話型AI「Bard」を発表したり、中国企業が続々とChatGPT風AIを開発していると報道されている一方で、OpenAIはChatGPTのコードを公開していないためChatGPTを効果的に複製することは難しくなっています。AIのディープラーニングトレーニングを最適化するオープンソースプラットフォームのColossal-AIが、ChatGPTトレーニングプロセスをわずか1.6ギガバイトのGPUメモリで7.73倍高速なトレーニングに再現したと告知し、オープンソースで公開しています。 Open-source replication of ChatGPT implementation process!

                      ChatGPTをオープンソースで再現、わずか1.6GBのGPUメモリですぐに使用でき7.73倍高速なトレーニングが可能
                    • 【サボりたいエンジニア向け】コーディングに役立つチートシートまとめ - Qiita

                      はじめに こんな人が役に立つ記事 コーディング業務の効率を上げたい。 コーディングに関するチートシートを知りたい。 打つのもめんどいからコピペでなんとかしたい(笑) 今回は、コーディングに役立つチートシートをまとめました。 VSCODEチートシート エンジニアなら必ず使うであろうVsCodeのショートカットチートシート。これはよく使ってます! HTML系のチートシート集 HTMLに関するチートシートをまとめてみました。 HTML5 タグチートシート HTML5 のタグチートシート。サイトには 5 から廃止になった避けるべきタグなどもまとめてられており、 PDFでダウンロードできます。 HTML5 入れ子チートシート HTML の入れ子の可否を視覚的に分かりやすく、色づけしてくれます。対象要素の親、子を選ぶだけで、簡単に調べることが出来ますので便利なチートシート 特殊文字一覧:HTMLで使え

                        【サボりたいエンジニア向け】コーディングに役立つチートシートまとめ - Qiita
                      • PWAの作り方をサクッと学ぶ - 「ホーム画面に追加」「キャッシュ操作」「プッシュ通知」の実装 - エンジニアHub|Webエンジニアのキャリアを考える!

                        PWAの作り方をサクッと学ぶ - 「ホーム画面に追加」「キャッシュ操作」「プッシュ通知」の実装 PWAをテーマにしたコミュニティ「PWA Night」を運営する菅家大地さんが、既存のWebアプリをPWA化する簡単な実装方法を解説します。 はじめまして、菅家(@kan_dai)といいます。普段は株式会社TAMという会社でフロントエンドをメインに、クライアントのWebサイト制作やWebサービスの開発をしています。PWA(Progressive Web Apps)をテーマにしたコミュニティ「PWA Night」の運営もしています。 さて、2018年ごろからPWAという言葉を聞く機会が多くなってきました。2019年現在、毎月コンスタントにPWAに関する仕事の相談を受けるようになっており、PWAへの関心の高まりを感じます。日本経済新聞やスマートフォン版Yahoo! Japanといった有名サービスでの

                          PWAの作り方をサクッと学ぶ - 「ホーム画面に追加」「キャッシュ操作」「プッシュ通知」の実装 - エンジニアHub|Webエンジニアのキャリアを考える!
                        • 中年プログラマの競プロ事始 - hydrakecat’s blog

                          これはなに 自分がここ2年ほど趣味として競技プログラミングをやった経緯と感想です。いわゆるプログラマの定年と呼ばれる35歳を過ぎてから始めたのですが、思ったよりも楽しめました。自分のようなシニアと呼ばれるプログラマが競プロに興味を持ってくれたらいいなと思って書きました。 競技プログラミング(競プロ)とは 競技プログラミング(以後、競プロ)は、プログラミングをして順位を競うコンテストです。コンテストはたいていオンラインで毎週のように開かれており、誰でも参加できます。形式としては、与えられた時間内にいくつかの問題を解くコードを提出して、その正解数と提出までにかかった時間を競うというものです。たいていは、コードの実行時間および使用メモリに制限があり、その制限内で実行できるコードを書く必要があります。またコードが正解かどうかは出題者が用意したテストケースをパスするかどうかで判定されます。 多くのコ

                            中年プログラマの競プロ事始 - hydrakecat’s blog
                          • Flutter入門 - 簡単なアプリを作ってUI宣言やホットリロードなど便利機能の使い方を理解しよう|ハイクラス転職・求人情報サイト AMBI(アンビ)

                            Flutter入門 - 簡単なアプリを作ってUI宣言やホットリロードなど便利機能の使い方を理解しよう モバイル向けアプリケーションのフレームワーク・Flutterを使って簡単なアプリケーションを作成する基本的な開発について、FlutterのGoogle Developers Expertである上田哲広さんに解説していただきました。 こんにちは。上田哲広(@najeira)です。FlutterのGoogle Developers Expertとして活動しています。 Flutterは、Googleが中心となってGitHub上でオープンソースなプロジェクトとして開発されている、モバイル向けアプリケーションのフレームワークです。AndroidとiOSのアプリを単一のコードベースで開発できます。 GitHub - flutter/flutter: Flutter makes it easy and

                              Flutter入門 - 簡単なアプリを作ってUI宣言やホットリロードなど便利機能の使い方を理解しよう|ハイクラス転職・求人情報サイト AMBI(アンビ)
                            • 年収800万円以上のITエンジニアは95%以上がリモート勤務と回答

                              ファインディ株式会社(東京都品川区、代表取締役:山田裕一朗 以下「当社」)はITエンジニア転職動向調査を実施した結果とマーケットレポート解説イベントを開催することをお知らせします。 ■調査結果サマリー 年収800万円以上の層は95%以上がリモート勤務 現職給与から20〜30%以上UPであれば転職を前向きに考える層が5割超 ■回答者属性 回答者の属性は25〜34歳が約5割、正社員・契約社員が8割超の方にご回答いただきました。 ■年収800万円以上の層は95%以上がリモート勤務 年収800万円以上の層は95%以上がリモート勤務(フルリモート約8割)で、年収とリモートワークの割合は比例傾向であることがわかりました。特にフルリモートの割合は顕著に表れています。 ■現職給与から20〜30%以上UPであれば転職を前向きに考える層が5割超 過去の調査結果と比較すると、直近の一年間で大きな変化は見られませ

                                年収800万円以上のITエンジニアは95%以上がリモート勤務と回答
                              • 東京大学の講義「AWSによるクラウド入門」をTypeScriptで写経した - dackdive's blog

                                AWSによるクラウド入門 少し前に話題になっていた東京大学の講義資料をやってみたので、内容、感想などメモ。 講義で使用するソースコードはすべて Python で書かれていますが、自分が実際に使うとしたら TypeScript で書くだろうなと思ったので TypeScript で写経しました。 が、CDK のコードはすべて TypeScript で書けましたが、Lambda 関数や動作確認用のスクリプトなどを全て置き換えるところまでは至らず、Python のままです。 写経したリポジトリは https://github.com/zaki-yama-labs/intro-aws に。 学べること 本講義資料には全部で5つのハンズオンがあります。 各ハンズオンで利用する AWS のサービスについては以下の通り。 全般 AWS CDK: Cloud Development Kit CloudFor

                                  東京大学の講義「AWSによるクラウド入門」をTypeScriptで写経した - dackdive's blog
                                • ChatGPT で自分の仕事がどう楽しくなるのかを考えるネタ集

                                  ChatGPT を継続して見つめ続けて。Plugin Ecosystem と Code Interpreter の Beta提供によって、自分の仕事への適用のシナリオが更に広がりました。 人とComputerの在り方が大きく変わったこれらも交えて。それらが周囲にあふれ出すその日のために、今はしっかりと Prompt の仕方を学んでおきたいものです。そのためのサンプルも幾つか継続して提示しています。

                                    ChatGPT で自分の仕事がどう楽しくなるのかを考えるネタ集
                                  • Kubernetes 専門家として知るべき 47 のこと - 誰かの役に立てばいいブログ

                                    この記事は私が過去 3 年ほど Kubernetes に携わる中で学んだ、ちょっと見つけにくい知識をまとめたものです。 特にカスタムコントローラーを開発するような人に必要となる知識群です。 感想とか指摘とかあれば Twitter までお寄せください。 更新履歴 2021-03-05: "コンテナの resources.limits と resources.requests の違いについて" の項を補足しました (thanks to @superbrothers) API コントローラー実装 プログラムと連携動作 資源管理 ネットワーク モニタリング アクセスコントロール API kube-apiserver が備える拡張機構を列挙しなさい 回答例 Custom resources: OpenAPI スキーマで独自のリソース型を追加できる Aggregation layer: kube-ap

                                      Kubernetes 専門家として知るべき 47 のこと - 誰かの役に立てばいいブログ
                                    • 0から始めるNode.jsパフォーマンスチューニング

                                      近年の Node.js は API のサーバとしてはもちろん、Nuxt.js や Next.js といった SSR や BFF などフロントエンドのためのバックエンド言語としての人気が高まっています。 フロントエンドエンジニアがコンテキストスイッチ少なくバックエンドの整備ができることは非常に大きな利点です。 ですが、フロントエンド(ブラウザ側)とバックエンド(サーバ側)ではパフォーマンスチューニングで見るべき点が大きく違います。 しかし Node.js アプリケーションのパフォーマンスイシューの見つけ方などがまとまっている資料は少ないです。 そこで、本記事ではフロントエンドエンジニアが Node.js でパフォーマンスイシューを見つけ、改善するため自分が普段パフォーマンスチューニングを依頼されているときにみている基礎的なポイトをまとめていきます。 1. 計測ステップlink Node.js

                                        0から始めるNode.jsパフォーマンスチューニング
                                      • 「スタートアップだからテストを書かない」は正しいか - An Epicurean

                                        スタートアップのCTOクラスの人がたまにそういうことを言っているのを聞くことがあります。もしくは「スピード優先だからテストを書かない」等です。 それは真ではなく、言ってしまえば、未熟だからテストを書「け」ない、のではないでしょうか。ただ、スタートアップという言葉に未熟であるという意味が含まれているのであれば「スタートアップだからテストを書かない」という問は真になるかも知れません。スタートアップは得てして未熟なものだし、それでも良いからです。 テストを書かないというジャッジをするのは構いません。でもそれは、スタートアップだからでもスピード優先だからでもない。自分達が未熟だからで、そこには向き合うべきだと考えます。状況のせいにするのではなく、徹底的に自分ごと化する。それがスタートアップに求められる姿勢です。少なくとも技術のトップが自分たちの技術力に向き合わないのはまずいでしょう。 「スタートア

                                          「スタートアップだからテストを書かない」は正しいか - An Epicurean
                                        • 状態、結合、複雑性、コード量の順に最適化する - valid,invalid

                                          There’s No Such Thing as Clean CodeのHacker Newsコメント経由でコードやシステム設計・最適化についての良いコメントを見つけた。どうやらHacker Newsで何度も引用されているらしいが日本語で言及された記事が見つからなかったので取り上げてみる。 コメントは2016年のSandi MetzのThe Wrong Abstractionに関するもので、発言者のcurun1rいわく「私は設計の優先順位をこの順序で学習することで、優れた開発者になれた」。*1 4つの基準と優先順位のガイドライン 状態 > 結合 > 複雑性 > コード量 私は状態 (state)、結合 (coupling)、複雑性 (complexity)、コード量 (code) の順に削減することでコードを最適化する。 コードがよりステートレスになるなら、結合を増やすこともいとわない 結

                                            状態、結合、複雑性、コード量の順に最適化する - valid,invalid
                                          • VSCodeでコードを書く時に役立つ設定・テーマ・機能拡張、知っておくと便利なテクニック

                                            Visual Studio CodeでWeb制作・開発のコードを書く時に役立つ設定・テーマ・機能拡張、知っておくと便利なテクニックを紹介します。 My Web Development VS Code Settings, theme, Extensions, tips and tricks br lampewebdev(@lampewebdev) 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 私がVSCodeを使用している理由 VSCodeのテーマ・アイコン・フォント VSCodeの機能拡張 VSCodeの設定 VSCodeの便利な使い方 私がVSCodeを使用している理由 私はプログラミングを始めて以来、たくさんのエディタやIDEを使ってきました。Eclipse、Netbeans、Notepade ++、Brackets Ed

                                              VSCodeでコードを書く時に役立つ設定・テーマ・機能拡張、知っておくと便利なテクニック
                                            • シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita

                                              はじめに シェルスクリプトで二重起動防止やロックをする方法を検索すると、いろいろな方法や書き方が見つかりますが、どれを使えばよいのか、本当に正しく動くのか、不安になりますよね? ディレクトリ (mkdir) やシンボリックリンク (ln) を使った独自実装の例も見かけますが、エラー発生時や予期せぬ電源断、CTRL+C で止めたときなどでも問題は発生しないのでしょうか? まず、ディレクトリやシンボリックリンクを使った独自実装はしない。これを肝に銘じてください。シェルスクリプトでのロック管理はとても難しく、一般的な排他制御の知識に加えて、シェルスクリプト特有の問題、シグナルやトラップ、サブシェルや子プロセスの問題、さらには特定のシェル固有の仕様やバグなどさまざまな問題に対処する必要があり大変です。独自実装の例では古いロックファイルが残ってしまい、それをいつどのタイミングで片付ければ安全なのか?

                                                シェルスクリプトで安全簡単な二重起動防止・排他/共有ロックの徹底解説 - Qiita
                                              • Jupyter AIが出た!試した!!すごい!!! - Qiita

                                                ターミナルにトークン付きのURLが表示されますので、ブラウザでアクセスします。 起動しました。 チャットインターフェイス 左パネルにチャットのボタンが追加されています。 Welcomeメッセージが表示されます。 language modelとembedding modelを選択します。 これで準備完了です。 チャットができます。 おお! ノートブックについて質問できる ただチャットができるだけではありません。ノートブックのセルに対して範囲選択をすると、チャットエリアの下部にInclude selectionとReplace selectionが表示されます。 Include selectionだと選択したコードを含んだ形で質問ができます。 すっげー! (DefaultActor pid=473) (DefaultActor pid=473) (DefaultActor pid=473) >

                                                  Jupyter AIが出た!試した!!すごい!!! - Qiita
                                                • 新入社員のみんな、「ChatGPT×Python」で鬼にならないか?|ピーナッツ

                                                  ChatGPTが本当にヤバい。 断言する。新卒がこれを使いこなせば、今職場で「優秀」とされている5-6年目くらいの先輩なら余裕で出し抜ける。鬼になれる。 筆者はメーカー社員なので、メーカーの新入社員がChatGPTを使って鬼になる方法を1つ提案したい。 「ChatGPT×Python」である。 Pythonとは、ご存知のとおり物理シュミレーションからデータサイエンス、機械学習までカバーする汎用性をそなえたプログラミング言語だ。何でもできるわりには書ける人がなぜか少なく、いまだにスキルとして重宝されている。 そんなPythonにChatGPTを使おう。 ChatGPTを使えば、上司から求められるアウトプットを一瞬で出すことができる。それに対してフィードバックをもらい、それも一瞬で打ち返すことができる。 「あいつ"Python書ける"だけじゃないんだよな。こっちが言ったこと正確に理解するし、そ

                                                    新入社員のみんな、「ChatGPT×Python」で鬼にならないか?|ピーナッツ
                                                  • CとRustで一から作るマイクロカーネルOS

                                                    マイクロカーネルは浪漫に溢れる非常に作りがいのあるソフトウェアです。この記事は,「マイクロカーネルベースのOSの一から作ってIaaSで動かす」ことを目標に作ったマイクロカーネルベースのOS Resea(りーせあ)の設計と実装について軽くまとめた物です。 ソースコードはGitHubにあります。 マイクロカーネルとは Linuxのようなモノリシックカーネルでは色んな機能がカーネル空間で動きますが,マイクロカーネルではユーザプロセスたちが互いに通信しながらOSを作り上げます。プロセス・スレッド・仮想メモリ管理,プロセス間通信,タイマーといった必要最低限の機能だけをカーネルが担います。デバイスドライバやファイルシステムといった残りの機能は,独立したユーザプロセスとして動きます。たとえデバイスドライバが暴走しても他のコンポーネントを壊すことはないのです。マイクロカーネルは信頼性が高く,疎結合で美しい

                                                      CとRustで一から作るマイクロカーネルOS
                                                    • ソフトウェア開発の真の問題点は、コードを書くことではなく、問題の複雑さの管理にある - YAMDAS現更新履歴

                                                      www.oreilly.com オライリー・メディアのコンテンツ戦略部門のバイスプレジデントであるマイク・ルキダスの文章だが、彼が数週間前、「コードを書くことが問題なのではない。複雑さをコントロールすることが問題なのだ」というツイートを見かけた話から始まる。彼はこれに感心したようで、これから何度も引用すると思うので、誰のツイートか思い出せればいいのにと書いている(ご存じの方は彼にご一報を)。 件のツイートは、プログラミング言語の構文の詳細や API が持つ多くの関数を覚えることは重要じゃなくて、解決しようとしている問題の複雑さを理解し、管理することこそが重要だと言ってるわけですね。 これは皆、覚えがある話だろう。アプリケーションやツールの多くは、最初はシンプルである。しかも、それでやりたいことの80%、いやもしかしたら90%をやれている。でも、それじゃ十分ではないと、バージョン1.1でいく

                                                        ソフトウェア開発の真の問題点は、コードを書くことではなく、問題の複雑さの管理にある - YAMDAS現更新履歴
                                                      • プライベートメソッドのテストは書かないもの? - t-wadaのブログ

                                                        この文章の背景 この文章はプライベートメソッドのテストを書くべきか否かに関する knsmr さんのご質問に対して 2013/03/13 に QA@IT で回答したものです。残念ながらQA@IT のサービス終了(2020/02/28)と共にアクセスできなくなってしまったため、運営を行っていたアイティメディア株式会社様、開発を行っていた永和システムマネジメント様、そして質問をされた knsmr さんに許可とご協力をいただき、当時の回答をサルベージしてブログに転載する運びとなりました。 プライベートメソッドのテストはよく議論になるテーマですので、当時の回答を再編集し、knsmr さんのご質問も含め、ご利用いただきやすいライセンス CC BY(クリエイティブ・コモンズ — 表示 4.0 国際 — CC BY 4.0) で公開いたします。 目次 この文章の背景 目次 knsmr さんのご質問 私の回

                                                          プライベートメソッドのテストは書かないもの? - t-wadaのブログ
                                                        • Google、セキュリティスキャナー「Tsunami」をオープンソースで公開。ポートスキャンなどで自動的に脆弱性を検出するツール

                                                          Google、セキュリティスキャナー「Tsunami」をオープンソースで公開。ポートスキャンなどで自動的に脆弱性を検出するツール Announcing the release of the Tsunami security scanning engine to the open source communities to protect their users’ data, and foster collaboration.https://t.co/qrvmilHm1r — Google Open Source (@GoogleOSS) June 18, 2020 Tsunamiは、アプリケーションに対してネットワーク経由で自動的にスキャンを行い、脆弱性を発見してくれるツールです。 Googleは、現在では攻撃者が自動化された攻撃ツールへの投資を続けており、ネット上に公開されたサービスが攻

                                                            Google、セキュリティスキャナー「Tsunami」をオープンソースで公開。ポートスキャンなどで自動的に脆弱性を検出するツール
                                                          • 5Gって低遅延なの? - はん@highemerlyの日記

                                                            この記事は はんドンクラブアドベントカレンダー 2日目の記事です。なお筆者は,Mastodonサーバの一つ「はんドンクラブ」の管理人で,本アドベントカレンダーの主宰です。 最近,複数回説明した事柄をもう一回別の人に説明するのがめんどくさくなってきて,「この記事読んどいて」と言うために記事を書くことがあります。今回もそれに漏れず,携帯電話・スマートフォン用の次世代通信システムである5Gについて,なぜか私がよく聞かれることを説明する記事とします。一つの読み物として読んでいただければ幸いです。 5Gって? ご存じの通り,5Gの特徴はURLLC・eMBB・mMTCです。 といっても通じない方が多いですよね。でも一応,これが正式な言い方なんです。それぞれ, 超低遅延*1 = URLLC(Ultra-Reliable and Low Latency Communications) 超高速 = eMBB

                                                              5Gって低遅延なの? - はん@highemerlyの日記
                                                            • リーダブルテストコード / #vstat

                                                              「リーダブルなテストコードについて考えよう ~VeriServe Test Automation Talk No.3~」で使用したスライドです。 https://veriserve-event.connpass.com/event/243280/ 登壇動画はこちらで公開されています。 https://vimeo.com/742517199/e001ac43ac <参考リンク> Twitter https://twitter.com/jnchito Blog https://blog.jnito.com/ Qiita https://qiita.com/jnchito プロを目指す人のためのRuby入門[改訂2版] https://gihyo.jp/book/2021/978-4-297-12437-3 Everyday Rails - RSpecによるRailsテスト入門 https://

                                                                リーダブルテストコード / #vstat
                                                              • 僕がおすすめするVSCodeのプラグインまとめ|TAK / Web Creator.

                                                                Webサービスまとめに続いて、僕が個人的に使っているVSCodeのプラグインのまとめです。 おすすめしたいプラグインを発見したら随時追加します。更新の保証はしませんが、コンテンツを更新した際に通知が欲しい方のために100円の課金の設定をしておきます(課金した場合のみ通知を受け取れる仕様)。課金したら多くのコンテンツが読めるというわけではないのでご了承ください。 (※2019.11.14 追記)当記事が「はてなブックマーク」テクノロジーカテゴリーの人気エントリーに掲載されました。ありがとうございます。 昨日投稿した「僕がおすすめするVSCodeのプラグインまとめ」がはてなブックマークのテクノロジーの人気エントリーに掲載されました。ありがとうございました。うれぴまる。#notehttps://t.co/w1pg7J3gfDhttps://t.co/LzHQfdYReZ — TAK (@tak_

                                                                  僕がおすすめするVSCodeのプラグインまとめ|TAK / Web Creator.
                                                                • 「やばすぎる」 Javaライブラリ「Log4j」にゼロデイ脆弱性、任意のリモートコードを実行可能 iCloudやSteam、Minecraftなど広範囲のJava製品に影響か

                                                                  Webセキュリティ製品などを手掛ける米LunaSecの報告によると、Minecraftの他、ゲームプラットフォームのSteamやAppleの「iCloud」もこの脆弱性を持つことが分かっており、影響は広範囲に及ぶと考えられるという。 この脆弱性の影響があるのは、Log4jのバージョン2.0から2.14.1までと当初みられていたが、Log4jのGitHub上の議論では、1.x系も同様の脆弱性を抱えていることが報告されている。対策には、修正済みのバージョンである2.15.0-rc2へのアップデートが推奨されている。 セキュリティニュースサイト「Cyber Kendra」によれば、この脆弱性に対して付与されるCVE番号は「CVE-2021-44228」という。 脆弱性の報告を受け、Twitter上ではITエンジニアたちが続々反応。「やばすぎる」「思っていたよりずっとひどいバグだった」「なぜこんな

                                                                    「やばすぎる」 Javaライブラリ「Log4j」にゼロデイ脆弱性、任意のリモートコードを実行可能 iCloudやSteam、Minecraftなど広範囲のJava製品に影響か
                                                                  • GMOペパボのエンジニア研修2021の資料を公開します - Pepabo Tech Portal

                                                                    はじめに 今年のエンジニア研修の担当をしたkurotakyとtokkyです。ペパボのエンジニア研修2021がはじまっていますという記事を書いてあっという間に時が経ち、先日研修が終わったので研修資料を公開します。各研修の講師からコメントをもらっているので、ぜひ読んでいってください! 研修を実施するにあたって、専門的な内容を学んでから現場に入る方法や、幅広い技術層に触れてから現場に入る方法など、さまざまなスタイルがあります。ペパボでは最新の技術の幅広く触れてOJTに入っていくやり方を選択しています。それはなぜかというと、GMOペパボのわたしたちが大切にしている3つのことの中で、「みんなと仲良くする」ということ話がありますが、みんなと仲良くするというのは、エンジニアという職種だけでも100人以上になり、そのみんなと仲良くするのは実際は結構難しいと思います。過去にCTOのあんちぽさんが2017年の

                                                                      GMOペパボのエンジニア研修2021の資料を公開します - Pepabo Tech Portal
                                                                    • オブジェクト指向はコードを複雑に読みにくくする - きしだのHatena

                                                                      「オブジェクト指向するとプログラムが読めなくなるから禁止」のような話は昔からあって、新しい技術についてこれない人を揶揄するようなニュアンスで使われていましたが、実際にはこれはオブジェクト指向迷路にうんざりした現場での率直な意見だと思います。 オブジェクト指向は、まじめにやるほどプログラムを読みにくくするという性質をもっています。 ※ 使い方次第というコメントついてますが、だからこそちゃんと性質をしっておく必要があると思います。 オブジェクト指向の代表的な指針を3つあげると次のようなものがあります。 オブジェクト同士の連携としてプログラムを組む 単一責務の原則 インタフェースと実装の分離 まず、オブジェクト同士の連携でプログラムを組むと、コードが飛びまくって追いにくくなります。そして単一責務の原則により、小さいクラスが大量に生成されて、追いにくさがさらにあがっていきます。 ダイクストラ先生が

                                                                        オブジェクト指向はコードを複雑に読みにくくする - きしだのHatena
                                                                      • Linus Torvalds 氏の理想の git 運用と GitHub

                                                                        Note 本記事の内容は Linus 氏の発言が人を傷つける場合に筆者がそれを良しと考えるといった意図はございません 少し古い記事になるが、 Linus Torvalds 氏 の GitHub に対する苦言が記事になっていた。 LinuxカーネルにNTFSドライバーが追加、トーバルズ氏はGitHub経由のマージに苦言 - ZDNet Japan Linus 氏が GitHub について苦言を呈するのは今に始まったことではない(後述)が、 別に GitHub のすべてを否定しているわけではない。[1] では一体何が不満なのか。Linus 氏の理想とする git の開発フローを考察した上で、整理してみたい。 Linus 氏の理想 結論からいうと、 「意味あるコミットを作れ」「コミットを大事にしろ」 という思想が伺える。 では 「意味あるコミット」「大事にされたコミット」 とは何なのか。 筆者な

                                                                        • 分かると、実に、おもしろい! QRコードの仕組み

                                                                          少しマニアックな知識、QRコードの仕組みを紹介します。 QRコード決済、リンクをQRコードで提供するなど、日常的に使用されているQRコードにあるそれぞれのパターンがどのように機能しているか、どういう役割をしているのか、なぜ上下逆さにしても読み取れるのか、なぜ一部が隠されても読み取れるのかなどが分かります。 QR codes by Dan Hollick (@DanHollick) 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 はじめに QRコードの仕組み 終わりに はじめに QRコードがどのように機能しているのか、疑問に思ったことはありませんか? 控えめに言って、実に、おもしろい! 注意: この記事⬇では非常にマニアックな内容が含まれています。 QRコードの仕組み QRコード(Quick Response code)は自動車部

                                                                            分かると、実に、おもしろい! QRコードの仕組み
                                                                          • 最近のフロントエンドフレームワークに対する認識とお気持ちの整理 - console.lealog();

                                                                            久しぶりに、いわゆるポエムを。 新規・運用ヘルプを問わず、受託や副業でよくフロントエンドをやってるWeb屋の見解、そして手札のお悩み。 この先、また技術選定する際なんかにも参考になるかと思ったので。 React 「いまフロントエンドやるなら最初に覚えるべき!」は、もう過去の話かなーと個人的には思ってる。 Reactは`UI = fn(state)`なのが良い!とか言われるけど、あなたが必要としてるのは`UI = Component(props)`かもよって。 一昔前までは、たしかにあらゆる面で頭一つ抜けてる印象はあったけど、今はそうでもないか、その差はだいぶ埋まってきてると思ってる。(もちろん先行者利益みたいなところで、エコシステムはまだまだ優位な差があるかもしれんけど、それもあまり実感できたことはないし、いまからはじめる人はそんなんで困らんやろうし) 原初の時代からReactな案件をそれ

                                                                              最近のフロントエンドフレームワークに対する認識とお気持ちの整理 - console.lealog();
                                                                            • GitHub - mercari/engineer-vocabulary-list: Engineer Vocabulary List in Japanese/English

                                                                              You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

                                                                                GitHub - mercari/engineer-vocabulary-list: Engineer Vocabulary List in Japanese/English
                                                                              • もし今1からKubernetesを勉強するとしたらどうやって勉強するか - 腹は減る

                                                                                Kubernetesを触り始めて約1年。 1年の間にたくさんKubernetes関連の日本語書籍が出たし、1年の間に「え、これ先知っておきたかったわ」ということがありました。 ということで今1から勉強するとしたらどうするかな〜と考えたのでまとめてみます。 あくまで私ならどうするか、ていう話なので人によっては再現が難しい可能性があるのであしからず!!(英語がある程度できる前提で書いてるところもあります) 条件 ドキュメントをいきなり読むのは日本語だろうと結構苦手 なるべく手を動かしたい 最初はアプリケーションエンジニアとしてKubernetesを触れるくらいのレベル感をめざす Dockerはなんとなくわかる 分散システムにあまりなじみがない 本当はできれば最初からドキュメントをしっかり読み通すのが一番いいと思っている!思っているよ... 1st step 動画を見る UdemyのCKAのコー

                                                                                  もし今1からKubernetesを勉強するとしたらどうやって勉強するか - 腹は減る
                                                                                • Design Docs at Google

                                                                                  One of the key elements of Google's software engineering culture is the use of design docs for defining software designs. These are relatively informal documents that the primary author or authors of a software system or application create before they embark on the coding project. The design doc documents the high level implementation strategy and key design decisions with emphasis on the trade-of

                                                                                    Design Docs at Google