並び順

ブックマーク数

期間指定

  • から
  • まで

201 - 240 件 / 989件

新着順 人気順

いつか読むの検索結果201 - 240 件 / 989件

  • PHPバージョンアップけもの道

    at "PHPバージョンアップ kickoff" 2021/07/15 https://breaktimes.connpass.com/event/218221/

      PHPバージョンアップけもの道
    • 『マスターアルゴリズム』は全ての人々を機械学習(人工知能)の世界へといざなう「冒険物語」 - 渋谷駅前で働くデータサイエンティストのブログ

      しましま先生(@shima__shima)こと神嶌敏弘先生から、訳書『マスターアルゴリズム』をご恵贈いただきました。 マスターアルゴリズム 世界を再構築する「究極の機械学習」 作者:ペドロ・ドミンゴス講談社Amazon 本書はビル・ゲイツが「AIを知るための本」と絶賛したという"The Master Algorithm"の邦訳版で、実際に「難しい理論や数式は書かれていないがこの一冊を読むだけで現代の機械学習(人工知能)の世界の全容を一望できる」優れた本だと個人的には感じました。また縦書き本ゆえいわば「読み物」的な立ち位置の書籍であり、研究者や技術者のみならずビジネスパーソンさらには一般の読書家にとっても読みやすく、尚且つ得るものの大きい一冊だと思います。 ということで、以下簡単にレビューしていきたいと思います。なお実は僕自身もしましま先生から発刊前の段階で翻訳内容の閲読を依頼されて一通り目

        『マスターアルゴリズム』は全ての人々を機械学習(人工知能)の世界へといざなう「冒険物語」 - 渋谷駅前で働くデータサイエンティストのブログ
      • データ収集の基本と「JapanTaxi」アプリにおける実践例

        1. Mobility Technologies Co., Ltd. Data Engineering Study #2 データ収集の基本と 「JapanTaxi」アプリにおける実践例 株式会社 Mobility Technologies 渡部 徹太郎 2020/8/19 2. Mobility Technologies Co., Ltd. 自己紹介 2 ID :fetaro 名前:渡部 徹太郎 学生:東京工業大学でデータベースと情報検索の研究 (@日本データベース学会) 職歴: * 野村総合研究所(NRI) - オンライントレードシステム基盤 - オープンソース技術部隊 * リクルートテクノロジーズ - ビッグデータ分析基盤 * MobilityTechnologies - データエンジニア エディタ:emacs派→ InteliJ派 日本AWSユーザ会(JAWS) ビッグデータ支部長

          データ収集の基本と「JapanTaxi」アプリにおける実践例
        • モブプログラミングは、なぜ5人が1台のPCで仕事をしているのに生産的になれるのか(前編)。モブプログラミングの生みの親が解説するその理由と効果とは?

          モブプログラミングは、なぜ5人が1台のPCで仕事をしているのに生産的になれるのか(前編)。モブプログラミングの生みの親が解説するその理由と効果とは? 2人のプログラマが協力して同じコードに対してプログラミングを行う「ペアプログラミング」に対して、モブプログラミングは3人以上のチームメンバーが協力してプログラミングを行う方法です。 このモブプログラミングの生みの親であるWoody Zuill氏が、今年(2024年)1月に東京都内で行われたイベント「Regional Scrum Gathering Tokyo 2024」の基調講演「Software Teaming (Mob Programming) and the Power of Flow.」(ソフトウェアチーミングと「フロー」のチカラ)を行いました。 講演のなかでZuill氏は、なぜ一見すると手分けをして作業するよりも効率の悪そうなモブプ

            モブプログラミングは、なぜ5人が1台のPCで仕事をしているのに生産的になれるのか(前編)。モブプログラミングの生みの親が解説するその理由と効果とは?
          • Vimの思想を取り入れて開発速度を2倍に|NAVITIME_Tech

            こんにちは、みみぞうです。 ナビタイムジャパンで『システムや開発環境、チームの改善』を担当しています。 本記事は社内勉強会で発表した内容に沿っています。 この勉強会は、社内全エンジニアの1/4ほどが参加して好評だったため、記事を書かせていただくことになりました。 なお、Vim歴は2年半です。 読んで欲しい方以下のように感じる方を対象にしています。 ❶ VimよりVS CodeやJetBrainsのIDEを使った方が速いので使う必要がない ❷ Vimは学習コストが高いのにメリットがない ❸ Vimの勉強/スキルアップの仕方が分からない この業界に入って7年以上もの間..私も❶~❸の考えをもつ人間でした。 もし昔の自分に会えるなら..『今すぐVimの思想を取り入れよ』と言いたいですね😅 Vimは使わなくていい、されどVimの思想を取り入れよ『すべての開発をVimでせよ』なんて言うつもりはあり

              Vimの思想を取り入れて開発速度を2倍に|NAVITIME_Tech
            • 「もうさばき切れない」アクセスが激増したECプラットフォームにおける負荷対策 - BASEプロダクトチームブログ

              はじめに CTOの川口 (id:dmnlk) です。 5月にオンラインmeetupをさせて頂きその中で「具体的な負荷対策に関しては開発ブログで!」と言っていた件ですが気づいたらもう9月になりかけていました。 コロナ禍においてネットショップ作成サービス「BASE」の利用者様が急増しました。 www.nikkei.com 5 月には 100 万ショップを超えるショップオーナー様にご利用していただいております。 今まで EC 事業を行っていなかった飲食店様や様々な業種の方が利用をはじめていただき、ショップオーナー様も購入者様共に短期の見通しでは想定をしていないアクセスが発生しました。 その途中でシステムとして対応しきれない面もあり、アクセス負荷によるサービスの不安定を招き皆様にはご不便や販売時間を変更していただくお願いなどをしてしまい大変申し訳ありませんでした。 現在では安定しておりますが、その

                「もうさばき切れない」アクセスが激増したECプラットフォームにおける負荷対策 - BASEプロダクトチームブログ
              • HTTPSは安全なのか? - Qiita

                いきなり追記 2024-01-09 この記事にはまともな結論がありませんし論点も定まっていません この記事には批判が多いので、こちらの素敵な記事をぜひお読みください。 Free Wi-Fi(00000JAPAN)は安全なのか? コメントで不愉快とされたところを削除しました。 徳丸さんのツイート 猫の写真 素人というエクスキューズ (編集履歴はqiitaの機能で見れると思います) 信頼できるサービスであれば Free Wi-Fi に限らず被害に遭う可能性はとても低いと思います。気にせず使ってください。 気分を害された方にお詫び申し上げます。 ここから元記事 お正月休みは卒業した大学の記事を書く予定でしたが、ちまたで話題の「httpsなら安全」について攻撃的なツイートを散見どころかめっちゃ見たのでこの記事を書いています。httpsを盲信されるならまだしも、無知の斧で攻撃を振るう方に悲しみを覚え

                  HTTPSは安全なのか? - Qiita
                • JavaScript イベントループの仕組みをGIFアニメで分かりやすく解説

                  JavaScript イベントループの仕組みについてGIFアニメーションで分かりやすく解説された記事を紹介します。 ✨♻️ JavaScript Visualized: Event Loop by Lydia Hallie 下記は各ポイントを意訳したものです。 ※当ブログでの翻訳記事は、元サイト様にライセンスを得て翻訳しています。 JavaScriptを視覚的に解説: イベントループ イベントループは、JavaScriptデベロッパーが避けては通れない関門の1つですが、最初は理解しにくいかもしれません。私は視覚学習者なので、GIFアニメで視覚的に説明することで、あなたの手助けをしようと思います。 説明の前に、まずイベントループとは何でしょうか? なぜ気にする必要があるのでしょうか? JavaScriptはシングルスレッドで、一度に実行できるタスクは1つだけです。通常は問題ありませんが、30

                    JavaScript イベントループの仕組みをGIFアニメで分かりやすく解説
                  • 秒間3万リクエストをkubernetesでさばく - Gunosy Tech Blog

                    こんにちは!スタンディングデスクを導入して快適な開発環境と運動不足の両方を解消できるようになったのではと感じている、広告技術部のUT@mocyutoです。 今回は半年ほどEKSを運用して秒間3万リクエストのトラフィックをさばくほどになりました。 秒間3万は広告システムだと割とあるとは思いますが、kubernetesでも運用できているので紹介しようと思います。 対象のEKSで構築したサービスは広告の配信サーバです。 広告配信サーバの要件として、まず50ms以内にレスポンスを返さなければいけません。 構築したk8sのレスポンスタイムの99パーセンタイルは10msほどで返せています。 以下は必要最小限のクラスタの構成図です。 全体像 API 弊社のサーバサイドはほぼGoで作られているので、例に漏れずGoで作られています。 pod構成はAPI、fluentd、envoyの サイドカーパターン です

                      秒間3万リクエストをkubernetesでさばく - Gunosy Tech Blog
                    • Software Design連載 2021年8月号 Python製のレガシー&大規模システムをどうリファクタリングするか - MonotaRO Tech Blog

                      Software Design連載開始 ※ (2021/09/02 08:55) 「Pythonを用いて開発を始めたのが2003年」を「Pythonを用いて開発を始めたのが2002年」に修正 こんにちは。金谷です。 このたび、モノタロウにおけるPython大規模開発に関する取り組みを、技術評論社様で発刊されている Software Design に連載させていただくことになりました。 モノタロウがPythonを用いて開発を始めたのが2002年。2021年の現在もPythonを用いた開発が続けられています。 事業の成長に伴い、関連するシステムやエンジニアの数も増え続けていくなかで、いかに安定的に価値を提供し続けられるのか。 モノタロウにおける取り組みを、開発や運用周りを通してご紹介していきます。 本記事の初出は、 Software Design2021年8月号「Pythonモダン化計画(第1

                        Software Design連載 2021年8月号 Python製のレガシー&大規模システムをどうリファクタリングするか - MonotaRO Tech Blog
                      • スクラムガイドの変更点(2017→2020)から見えるスクラムチームが陥りやすい3つの罠 | Agile Studio

                        Agile Studio プロデューサーの木下です。2020年11月にスクラムガイドが改訂されました。前回の改訂が2017年だったので3年ぶりの改訂です。スクラムガイド(日本語版)PDFスクラムガイド...

                          スクラムガイドの変更点(2017→2020)から見えるスクラムチームが陥りやすい3つの罠 | Agile Studio
                        • LINEがオープンソースで「LINE FIDO2 Server」公開。パスワード不要でログインできる「FIDO2/WebAuthn」を実現

                          LINEがオープンソースで「LINE FIDO2 Server」公開。パスワード不要でログインできる「FIDO2/WebAuthn」を実現 LINEは、スマートフォンやPCの指紋認証や顔認証などを用いることでパスワード不要でログイン処理を可能にする標準技術「FIDO2」や「WebAuthn」に対応したサーバ「LINE FIDO2 Server」をオープンソースで公開しました。 これにより、さまざまなWebアプリケーションやモバイルアプリケーションなどでFIDO2/WebAuthnを利用したログインが容易に実装できるようになることが期待されます。 LINE Security R&DチームがFIDO2認証標準を実装したFIDO2 ServerをOSSとして公開しました。 FIDO2-Serverは、FIDO2の登録と認証の主要部分を提供します。さまざまなWebブラウザとOSプラットフォーム、お

                            LINEがオープンソースで「LINE FIDO2 Server」公開。パスワード不要でログインできる「FIDO2/WebAuthn」を実現
                          • エンジニアはどう学んでいけばよいのか - つまりは「知ったかぶり」 の積み重ね - Qiita

                            はじめに この記事では、学んでいくためのマイルストーンとして「知ったかぶりができること」を設定するのもアリなのでは? という提案をします。 初学者でなくても『どうやって学んでいこうかな~』は全エンジニアの関心事だと思うので誰かの行動のきっかけになれたらうれしいです。 目次 (エンジニア)人生は勉強や! 「知ったかぶり」を再定義する 「知ったかぶり」を可視化する 無知の知はすぐに自覚できる どうすれば人に説明できるようになるのか いったんここまでのまとめ 脳内イメージの解像度をどう上げていくか アウトプット先を意識したインプットをしよう " 知ったかbrilliant Journey of Engineers " さあ、なにを知ったかぶりしていこう? おわりに (エンジニア)人生は勉強や! 技術は高速かつ複雑に成長しているので、新たな分野を学ばなきゃいけない機会はどんどん増えていく。また、そ

                              エンジニアはどう学んでいけばよいのか - つまりは「知ったかぶり」 の積み重ね - Qiita
                            • 「象・死んだ魚・嘔吐」をやってみた振り返り - JX通信社エンジニアブログ

                              こんにちは。スクラムマスターの@sakebookです。 今回は「象・死んだ魚・嘔吐」をチームでやってみたのでその振り返りをします。 「象・死んだ魚・嘔吐」とは 振り返り手法の一つです。Airbnb Story 大胆なアイデアを生み、困難を乗り越え、超人気サービスをつくる方法(原題: The Airbnb Story)の中で紹介されていたようです。 翻訳されてなかなかキャッチーなネーミングになっています。 それぞれ次のようなことを意味します。 象 凄く大きい、見えているけど、みんな見ないふりをしている課題・問題。表層化しているけど大きすぎてみようとしていない。これが何かをみんなで話していく。 死んだ魚 放っておくと腐っていく。そういう問題。放置しておくとまずいことになる問題ってなんだろう?ということを話し合う。 嘔吐 自分の胸の中に隠していて、吐き出せなかったこと。これをこの場で嘔吐する。

                                「象・死んだ魚・嘔吐」をやってみた振り返り - JX通信社エンジニアブログ
                              • async/await は Promise を置き換えない - Okapies' Archive

                                まとめ async/await 構文は、Promise で書ける処理のうち特定のケースしか表現できない 特定のケースとは、ある非同期処理の前処理と後処理がそれぞれ 1 個ずつの場合のみである async/await 構文は初心者に非同期処理を導入する際に適しているが、非同期処理を逐次処理として書けるという幻想を与えるので、どこかで知識をアップデートする機会を設けるべきである この記事はなに? 少しバズったのでまとめておこうかと。 「async/await があれば Promise なんて難しいものは要らない!」とか言ってるウブな子に、複数の API に並列にリクエストを投げて一つ以上成功した時だけ先に進む、みたいな問題を与えて愛でてみたい。— Yuta Okamoto (@okapies) 2020年12月11日 async/await は Promise のネストを手続き的なコードに見え

                                  async/await は Promise を置き換えない - Okapies' Archive
                                • OAuthにおける認可コード横取り攻撃とその対策

                                  OAuthにおける認可コード横取り攻撃とその対策 Jul 5, 2021 前回の記事で示したように、カスタムURLスキームを偽装した不正アプリは正規アプリへのディープリンクを乗っ取れる。この挙動の悪用シナリオとして、正規アプリと認可サーバー間のOAuthフローにおける認可コード横取り攻撃が知られている。この攻撃への対策を把握するためにiOS環境でシナリオを再現し、PKCEの有効性を確認した。 要約 OAuth 2.0の拡張機能であるPKCEを導入することで認可コード横取り攻撃を無効化できる。OAuth 2.0の仕様では、認可サーバーはネイティブアプリをクライアント認証できない。そのため、認可サーバーは認可コードを横取りした不正アプリと正規アプリを識別できない。しかし、PKCEの仕組みにより認可サーバーは正規アプリを識別できるようになり、認可コード横取り攻撃の検知が可能となる。 ネイティブア

                                    OAuthにおける認可コード横取り攻撃とその対策
                                  • オープンデータ、使ってほしいけどオススメしづらい3つの理由

                                    Yahoo! JAPAN Digital Hack Day 2021の技術紹介イベントでのプレゼン資料です。 https://hackday.yahoo.co.jp/ アーカイブ動画はこちらからご覧頂けます。 https://youtu.be/3e9OPS8qSA4?t=9890

                                      オープンデータ、使ってほしいけどオススメしづらい3つの理由
                                    • コンテナ・セキュリティ入門 脆弱性 - Qiita

                                      コンテナイメージのレジストリでは、脆弱性検査の実装が当たり前になっている。企業でKubernetesなどコンテナを使用するにあたって脆弱性対策がどれほど重要なものか理解するために、脆弱性検査や、関連する国際的な標準について整理した。 脆弱性(ぜいじゃくせい)とは 脆弱性とは、プログラムの動作の不備を悪用される情報セキュリティ上の弱点である。つまり、ソフトウェア上の問題が原因となって生じた欠陥であり、セキュリティホールとも呼ばれる。当然、ソフトウェア開発者は、脆弱性を産まないように細心の注意を払ってコード開発を進めるが、開発者が利用するオペレーティングシステムのライブラリやパッケージに含まれることもある。そのような事情から、開発者の責任範囲外に原因がある場合も多くある。 潜在的な脆弱性を突いた新たなクラッキングの手口が、時間の経過ともに発見される。そのことから、開発当初はコードに脆弱性は無い

                                        コンテナ・セキュリティ入門 脆弱性 - Qiita
                                      • Promiseをthrowするのはなぜ天才的デザインなのか - Qiita

                                        ReactのConcurrent Modeが最初に発表されたのはもう1年近くも前のことです(記事執筆時点1)。Concurrent Modeはたいへん奥深い機能で正式版がたいへん待ち遠しいですが、Concurrent Modeの代名詞として多くのReactユーザーに知られているのはPromiseをthrowするというAPIデザインです。Concurrent Modeでは、コンポーネントがレンダリング時にPromiseをthrowすることで、レンダリングをサスペンドした(Promiseが解決されるまでレンダリングできない)ことを表します。 Concurrent Modeに関しては筆者の既存記事Concurrent Mode時代のReact設計論 (1) Concurrent Modeにおける非同期処理などをご参照いただきたいのですが、ここではPromiseをthrowするということ自体に焦点

                                          Promiseをthrowするのはなぜ天才的デザインなのか - Qiita
                                        • Docker + Mac どうする問題 - Mirrativ Tech Blog

                                          Mirrativバックエンドのエンジニア @stakme です! みなさんMacでDockerしてますか?今回は私から、Mac+Docker開発についての文章をお届けします。Docker Desktop for Macの有料化など、最近話題の多いところですよね。 ただし法的問題を含みますので、記事の正確性に配慮していますが、内容は保証しません。法的問題は弁護士に相談しましょう。 tl;dr まずは現状認識 必要なのはdockerd 困りがちなポイント Lima Linux バインドマウント ポートフォワード 結局どうするか あと6週間 We are hiring! tl;dr 大前提として「GUIを使わければMac版Docker Desktopは無料」ではない Docker Desktop for Macは便利だが、マウント起因でパフォーマンスに影響を受けるケースも存在する 「買わないなら

                                            Docker + Mac どうする問題 - Mirrativ Tech Blog
                                          • マイクロカーネルの設計と実装

                                            • ZoomやSkypeでリアルタイムに他人になりすませるオープンソースのディープフェイクツール「Avatarify」

                                              自宅からリモートワークを行う際、ZoomやSkypeといったオンラインビデオ会議ツールを使用するケースがよくあります。オンラインビデオ会議ツールではウェブカメラを使って自分の顔を映しますが、アルゴリズムで別人になりきってオンラインビデオ会議に参加できるオープンソースのディープフェイクツール「Avatarify」が公開されています。 GitHub - alievk/avatarify: Avatars for Zoom and Skype https://github.com/alievk/avatarify This Open-Source Program Deepfakes You During Zoom Meetings, in Real Time - VICE https://www.vice.com/en_us/article/g5xagy/this-open-source-pro

                                                ZoomやSkypeでリアルタイムに他人になりすませるオープンソースのディープフェイクツール「Avatarify」
                                              • kemofure on Twitter: "今、サンデー・ジャポンで太田光が橋下徹は正しいとして、反米陰謀論をぶち上げた上で、 太田光「ロシアとウクライナは一つの民族。ウクライナの人達はロシアを恨んではいない。彼らは分かり合っている」 と言っていたけど、これはまんま大ロ… https://t.co/7vUoDpWzdo"

                                                今、サンデー・ジャポンで太田光が橋下徹は正しいとして、反米陰謀論をぶち上げた上で、 太田光「ロシアとウクライナは一つの民族。ウクライナの人達はロシアを恨んではいない。彼らは分かり合っている」 と言っていたけど、これはまんま大ロ… https://t.co/7vUoDpWzdo

                                                  kemofure on Twitter: "今、サンデー・ジャポンで太田光が橋下徹は正しいとして、反米陰謀論をぶち上げた上で、 太田光「ロシアとウクライナは一つの民族。ウクライナの人達はロシアを恨んではいない。彼らは分かり合っている」 と言っていたけど、これはまんま大ロ… https://t.co/7vUoDpWzdo"
                                                • 機械学習モデルの判断根拠の説明(Ver.2)

                                                  【第40回AIセミナー】 「説明できるAI 〜AIはブラックボックスなのか?〜」 https://www.airc.aist.go.jp/seminar_detail/seminar_040.html 【講演タイトル】 機械学習モデルの判断根拠の説明 【講演概要】 本講演では、機械学習モデルの判断根拠を提示するための説明法について紹介する。高精度な認識・識別が可能な機械学習モデルは一般に非常に複雑な構造をしており、どのような基準で判断が下されているかを人間が窺い知ることは困難である。このようなモデルのブラックボックス性を解消するために、近年様々なモデルの説明法が研究・提案されてきている。本講演ではこれら近年の代表的な説明法について紹介する。Read less

                                                    機械学習モデルの判断根拠の説明(Ver.2)
                                                  • AWSに集まったログをどう分析するか NTTドコモのエンジニアが教えるサーバーレスなログ分析基盤

                                                    ログ分析勉強会では、「ログ分析」に関わるすべての技術、事例、知見を共有し、日々の業務に役立てられる情報交換ができる場所を目的として活動。初のオンライン開催となった今回、NTTドコモサービスイノベーション部の千田拓矢氏が、AWS純正サーバーレスなログ分析基盤を構築する方法を解説しました。関連資料はこちら。 AWSのサーバーレスサービスでセキュリティのログ分析 千田拓矢氏:それでは始めたいと思います。AWSのサーバーレスサービスでセキュリティのログ分析をしようという話です。 簡単に自己紹介します。千田と申します。NTTドコモのサービスイノベーション部というR&Dの部署に所属していて、5年目社員です。 基本的に普段の業務では、クラウド、AWS、GCP、Azureのセキュリティに関わる仕事をしています。機械学習もちょっとわかるくらいに勉強していて、その関連でFPGAとかGPUみたいなハードウェアの

                                                      AWSに集まったログをどう分析するか NTTドコモのエンジニアが教えるサーバーレスなログ分析基盤
                                                    • Wireshark Tutorial: Examining Emotet Infection Traffic

                                                      This post is also available in: 日本語 (Japanese) Executive Summary This tutorial is designed for security professionals who investigate suspicious network activity and review packet captures (pcaps). Familiarity with Wireshark is necessary to understand this tutorial, which focuses on Wireshark version 3.x. Emotet is an information-stealer first reported in 2014 as banking malware. It has since evol

                                                        Wireshark Tutorial: Examining Emotet Infection Traffic
                                                      • DDD くらいできるようになりたいよねって話 - Qiita

                                                        はじめに 私自身は今年の 7 月にドメイン駆動設計(DDD)を実践する企業に転職したばかりで DDD 実践歴は浅いのだが、最近は開発業務の他にも中途採用者の DDD 教育や 現場で DDD!2nd のドライバー役をする機会を頂くなど、DDD の布教活動にも少し関わっている。 その中で「DDD ムズイ」という言葉をよく聞いたので、DDD の実践に悩んでいる人向けにサンプル問題の解説を通して、実は DDD 自体は難しくないんだよってことを教える目的で本記事を書いた。 TL;DR(最初に結論) DDD 自体はドメインを中心にモデリングと実装をイテレーティブに繰り返す設計プロセスであり、モデリングと OOP の理解があれば誰でもできる。 難しいのは DDD 自体ではなくて、モデリングまたは OOP である。特に「良いモデル」を得ることは非常に難しい。 なので「DDD ムズイ」と感じる人はモデリング

                                                          DDD くらいできるようになりたいよねって話 - Qiita
                                                        • JavaScriptの非同期処理を理解する その2 〜Promise編〜 | さくらのナレッジ

                                                          こんにちは!小田島です。前回の「コールバック編」を納稿したとき、アイキャッチ画像はJavaScriptのロゴにタイトルの文字を入れただけというとんでもないやっつけ仕事だったのですが、さくナレ編集部の方に「シリーズで理解が深まる」というすごい煽り文句がついたとてもカッコいい画像に差し替えていただきました。アイキャッチ詐欺にならないようにがんばります。 非同期処理シリーズの2回目はPromiseについての説明です。前回はコールバックについて説明しましたが、Promiseを使うことでどのように便利になったのでしょうか。それでは見ていきましょう!今回はコードが多いのでかなり分量が多く感じられるかもしれませんが、実際はあまり大したことはありません。 今回の目的 今回説明するのはPromiseです。これはFutureパターン(Promiseパターン)というデザインパターンの一種で、ECMAScript

                                                            JavaScriptの非同期処理を理解する その2 〜Promise編〜 | さくらのナレッジ
                                                          • TDDはゆるく実践しても大丈夫 - 千里霧中

                                                            最近、TDDのテストコードは捨てても良いかみたいな議論を見ました。 これに対する自分個人の経験上の意見ですが、TDDは雑多にテストコードを使い捨てても効果を出せると思います。 もちろん、TDDで保守性が高く価値あるテストを書いて、捨てずにCIや中長期的なリファクタリングで再利用していくと、TDDの効果を増幅できます。ただ、それをするにはスキルや事前の工夫、労力が必要ですし、できる場面に限りがあります。 そういったことをやらず、もっとゆるい姿勢で取り組んでも、費用対効果をプラスにできる手法がTDDだと考えています。 今回は、そのTDDでゆるくしてもよいポイントを、実経験からまとめたいと思います。 TDDのテストは使い捨てでいい TDDのテストはプログラマのこまごまな課題に応じて累積的に作られるため、保守コストがかかるテスト・保守する価値の低いテストが生まれがちです。そのためテストの使い捨ての

                                                              TDDはゆるく実践しても大丈夫 - 千里霧中
                                                            • 『天穂のサクナヒメ』には別の同人サークルが開発した「ラグナロクエンジン」を使用。複数のサークルが制作に携わる独自のゲーム開発体制を代表者らが解説

                                                              同人ゲームサークル「えーでるわいす」が開発し、マーベラスから発売されたアクションRPG『天穂のサクナヒメ』。稲を育てながらキャラクターを育成し、横スクロールアクションを体験していくという斬新なコンセプトで、パッケージ版が品薄になるなどSNSを中心にゲーマーたちの話題をさらっている。村山竜大氏による可愛らしいキャラクターデザインも好評だ。 そんな『天穂のサクナヒメ』について「えーでるわいす」代表のなる氏がTwitter上にて、同作は同人ゲームサークル「にゃっほい屋」が開発した「ラグナロクエンジン」が使用していることを明らかにした。 (画像はSteam『天穂のサクナヒメ』より) 本作の開発のきっかけについては、2018年の「BitSummit」のステージイベントで明らかにされており、「えーでるわいす」が手掛けた『アスタブリード』をBitSummitに出展していたところ、マーベラスUSAからオフ

                                                                『天穂のサクナヒメ』には別の同人サークルが開発した「ラグナロクエンジン」を使用。複数のサークルが制作に携わる独自のゲーム開発体制を代表者らが解説
                                                              • 自動テストはなぜうまくいかないか?乗り越えるためには何が必要か? - Qiita

                                                                リファクタリングの鶏卵問題 ソースコードがクソなので綺麗にしたい。 リファクタリングしたい。 しかし、リファクタリングが出来ない。 リファクタリングが出来ないのは、テストが無いからだ。 よし。じゃあテストを書こう。あれ、テストが書けない? そのようなテストが無く、書き換えられないことによる矛盾や憤りは皆さん何百回と感じてきたと思います。 しかし、この「テストが出来ない」ということを言語化するのは、非常に難しいと思います。それは、「テストが出来ない」には実は2つの視点があります。 本質的にテストが困難なモジュールで、誰がやってもテストが書けない。 本質的にモジュールはテスト可能だが、自分の実力が足りず、自分ではテストが書けない。 1.のようなテスト困難なモジュールは誰がやってもテストは書けないです。しかし、問題は、「テストを書きたい」と思ったとき、「自分がそれほどテストに詳しくない」という場

                                                                  自動テストはなぜうまくいかないか?乗り越えるためには何が必要か? - Qiita
                                                                • Lチカを超えて電子工作をちゃんと知るための「n講」7回:ソースコードを覗く〜analogWrite編〜 | Device Plus - デバプラ

                                                                  第1回:ToF距離センサの仕組み 第2回:加速度センサの仕組み 第3回:温度センサの仕組み 第4回:光学式マウスのチップを拝む 第5回:チップを拝む〜互換チップの世界〜 第6回:ソースコードを覗く〜GPIO編〜 しっかりとした正しい知識を基礎から学び、長く電子工作を楽しむことができるようになることを目的とした今回の連載。分かりやすく解説してくれるのは、金沢大学電子情報通信学類教授の秋田純一先生です。第6回から始まった新シリーズ「ソースコードを覗く」の2回目となる今回は、Arduinoのライブラリのソースコードを読んでいきます。それでは早速始めましょう! 目次 Arduinoのアナログ出力 アナログ出力とPWM analogWrite()のソースコードを覗いてみる 1. Arduinoのアナログ出力 Arduinoでは、アナログ出力ができるピンがあります。ここにLEDをつないで光らせるのに、

                                                                    Lチカを超えて電子工作をちゃんと知るための「n講」7回:ソースコードを覗く〜analogWrite編〜 | Device Plus - デバプラ
                                                                  • JavaScript 長いループ 分割 - hitode909の日記

                                                                    ブラウザで長いループや、重い処理をともなうループを回したいとき、同期的にJavaScriptを実行するとメインスレッドがブロックしてしまうので、ちょっとずつ細切れに分割して実行したい、ということがある。 昨日久しぶりに書いたら新たなパターンと出会ったので、これまでにどう書いてて今回どうなったかメモ。 setTimeoutする 以前(10年前とか)はこんなのをよく書いていた。 itemsがでかいArrayで、console.logがすごく重い処理だとして読んでください。 function iterateHeavyTask(items) { const startAt = new Date(); while (items.length > 0 && new Date().getTime() - startAt < 10) { console.log(items.shift()); } if (

                                                                      JavaScript 長いループ 分割 - hitode909の日記
                                                                    • Webpack チャンク最適 テクニック - Qiita

                                                                      ターゲット 巨大なSPAを作ってしまった人へ 巨大なSPAを作らないように気をつけたい人へ 今回はJSだけにフォーカスするが、もっというと、 超速本 を読んでください。 注意:本資料は、webpack チャンクの挙動を概念的に説明することを重視しているので、 webpack の詳細な設定や、出力ファイル名などは実際の処理と一致しない。適宜自分の手元にある設定とすり合わせるように。 昨今のJSビルド問題と、その解決のためのゴール設定 巨大なJS(+最近は in JS された各種SVGやCSS)はダウンロードだけではなく、UIスレッドのCPUをブロックする。 これはとくにCPUが貧弱な端末で体験が悪化する。そしてビルド時間で開発者体験を阻害する。 できれば webpack 推奨の 144kb 以内にしたい…が現実的に難しいので、 せめて 350kb ぐらいに抑えたい。 SPAなら (ローディン

                                                                        Webpack チャンク最適 テクニック - Qiita
                                                                      • ソフトウェアテストの実行を機械学習で効率化する。Jenkins作者の川口氏が立ち上げた「Launchable」で実現しようとしていることとは(前編)

                                                                        ソフトウェアテストの実行を機械学習で効率化する。Jenkins作者の川口氏が立ち上げた「Launchable」で実現しようとしていることとは(前編) Jenkinsの作者として知られる川口耕介氏は、昨年米国で新会社「Launchable」を立ち上げ、日本にもその100%子会社であるLaunchable Japanを近日中に立ち上げ予定です。 Jenkinsの登場がテストやビルドの自動化を促進し、ソフトウェアの開発生産性を向上させたことは明らかでしょう。川口氏によると、Launchableは機械学習などの技術を用いてそれをさらに前進させるものだとしています。 インタビューを行った5月末の時点で、同社は米国に6人、日本に4人と10人ほどの体制で製品開発を進めています。 果たしてLaunchableはどのようなビジョンで何を実現しようとしているのか、同社共同創業者兼共同CEOの川口氏と、Laun

                                                                          ソフトウェアテストの実行を機械学習で効率化する。Jenkins作者の川口氏が立ち上げた「Launchable」で実現しようとしていることとは(前編)
                                                                        • 墓標|會川 昇

                                                                          前回UPしたように、OVAでは色々と思いが果たせなかったケースがあります。途中降板ならまだいい方で、企画を通すためにさんざ作業した挙げ句、いざ実現すると別の人が脚本書いている、或いは企画そのものが無くなっている。そんなものはざら。 普通ならそういう作品については守秘義務契約があり発信できないはずですが、なにせまともな契約というものが存在しなかったかつてのアニメ界。企画だけ書かせて買い取りのギャラすら払っていただけてないのだから、契約書があるはずもなく。 なので久しぶりにそうしたことどもを思い出して、墓参の代わりにしようか、と。そんな記事です。いつものことですが、本当に書けないことについては触れないと思います。また完全なオリジナル企画(私の原案)の場合はいちいちその内容を説明しないといけなくなるし、そのネタをどっかで使いまわしていることもあるので、紹介はしないかと。そうそう、割と長く関わった

                                                                            墓標|會川 昇
                                                                          • メールを送信する話 | BLOG - DeNA Engineering

                                                                            こんにちは、IT基盤部の中村です。 主に社内システムのインフラを担当しています。 現在の業務内容とは少しずれてしまいますが、最近までメール系のインフラには深く携わっていたこともあり、今回はメールシステムについてお話します。 今どきSMTPなどレガシーな話かもしれませんね。しかしながら良くも悪くも枯れたSMTPはインターネット基盤の根底に位置する息の長い技術でもあります。 きっとみんなまだ使ってるはずなのに、あまりノウハウが出回っていないのが辛いと感じているそこの担当者の方、よろしければ少しの間お付き合いください。 サービスでのメールの利用用途 我々がサービスとしてメールを取り扱うとき、その主だった利用用途は下記の2つです。 メールマガジンなどの情報発信 入会・ユーザ登録時などのユーザ存在確認 メールマガジンはユーザーに情報を新たに届けたり、あらたに弊社の別のサービスに触れて頂く機会を提供す

                                                                              メールを送信する話 | BLOG - DeNA Engineering
                                                                            • ラズパイでメッシュネットワークを作成する 準備編その1

                                                                              家庭向けネットワーク製品──いわゆるWi-Fiルーターでもアクセスポイント型ではなく、メッシュネットワークを構築してシームレスなネット環境を作る製品も増えてきました。 しかしメッシュネットワーク対応の製品は、アクセスポイント形式の製品よりもまだ高価です。以前「ラズパイを無線LANルーター化する ~アクセスポイント編~」「ラズパイを無線LANルーター化する ~ブリッジモード編~」でルーターやアクセスポイントとして利用する方法について紹介しましたが、ラズパイでもメッシュネットワークを構築することは可能です。 そこで今回はその発展系という意味で、GitHubに掲載されている内容を元に、ラズパイを使ったメッシュネットワークの構築についてご紹介していきます。 ラズパイの準備 それではメッシュネットワークを作り上げるための準備から行っていきましょう。今回使うラズパイですが、無線LAN側はアクセスポイン

                                                                                ラズパイでメッシュネットワークを作成する 準備編その1
                                                                              • quick_pastさんへ

                                                                                id:quick_past おいらは下流の仕事を、わかりやすい規模に切ってもらわないと混乱して手が動かない。あと仕上げは他の人にやってほしくてしょうがない。仕上げるためには集中力が必要で、集中力を高める事が物凄い疲れる。 https://b.hatena.ne.jp/entry/s/anond.hatelabo.jp/20200113022528 すごく分かる。集中力を高めるためのアドバイスをいくつか。 仕事の分解は私もできない。私の場合は、最適な手段の選択とか、めんどくささとか、不安とかがあふれて混乱するのが原因なので、誰かに依頼するつもりでやるのが一番よいということを見つけた。客観的に手順をノートとかに整理する。これで、感情に振り回されることなく分解ができる。イマジナリーフレンド(イマジナリー同僚?)を想定し、仕事の進め方を説明するのも有効。関係のないものを可能な限り視界と音声から除く

                                                                                  quick_pastさんへ
                                                                                • ご主人様、小難しいDDDやクリーンアーキテクチャはお忘れになって、”削除しやすい設計”から始められてはいかが? - Qiita

                                                                                  ご主人様、小難しいDDDやクリーンアーキテクチャはお忘れになって、”削除しやすい設計”から始められてはいかが?LaravelDDD設計アーキテクチャCleanArchitecture ある日夢の中で設計に詳しい悪役令嬢が現れてこんなことを言い放ったので、考察してみましたという設定のポエムです。 問題提起 ドメイン駆動設計、オニオンアーキテクチャ、クリーンアーキテクチャといった考え方はもちろん重要なものの、僕は難しく考えずに「削除しやすいように機能を作る」のが第一歩として重要ではないかと考えています。 本記事では「削除しやすい設計」について持論を展開してみます。 ※議論のスコープはWebサービスに限定し、例示としてPHPのフレームワークであるLaravelを用います 削除しやすいことがなぜ重要か 一度開発した機能は、それで終わりではなく、改修、改善を繰り返し、そして場合によっては仕様が廃止さ

                                                                                    ご主人様、小難しいDDDやクリーンアーキテクチャはお忘れになって、”削除しやすい設計”から始められてはいかが? - Qiita