CEDEC2024の講演資料です。 『「龍が如く」も「スーパーモンキーボール」も自動化!クオリティエンジニアリングチームによるマルチゲームエンジン対応で進化した「龍が如くスタジオ」のテスト自動化環境について』 株式会社セガ 第1事業部 並木 勇人 / 株式会社セガ 第1事業部 桑原 和人 /…
![「龍が如く」も「スーパーモンキーボール」も自動化!クオリティエンジニアリングチームによるマルチゲームエンジン対応で進化した「龍が如くスタジオ」のテスト自動化環境について](https://cdn-ak-scissors.b.st-hatena.com/image/square/32ed9407f1dc39eefaa1208d0795fbad994e30d6/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F743a324bdb5a49df8adb4aca94b5d0dd%2Fslide_0.jpg%3F31436944)
いい加減シェルスクリプトで [ $? -eq 0 ] や [ $? -ne 0 ] なんて エラー処理を書くのはやめよう!ShellScriptBashLinuxUNIXmacOS はじめに [ $? -eq 0 ] や [ $? -ne 0 ] は冗長でデメリットしかありません。非常に多く見かける書き方ですが、1979 年に Bourne シェルが広く公開された時からこのようなコードは必要なく、実際に当時は使われていませんでした。このような書き方をしなければならなかった歴史的な経緯などはありません。これはなぜか広まってしまった良くない書き方です。良い書き方は最短の時間と最小の手間で目的を達成します。 優れたコードとは無駄がないコードです。丁寧なコードとは無駄な処理を書くことではありません。優れた文法を持つシェルは短いコードで正しく動作します。[ $? -eq 0 ] や [ $? -ne
「はれときどきぶた」シリーズの著者、矢玉四郎先生が2024年7月14日に老衰のため逝去されました。 心よりご冥福をお祈り申し上げます。 ご葬儀は、矢玉先生のご遺志により、家族葬にて執り行われました。 春頃から体調を崩されていたそうですが、直前までメールでお返事くださっていましたので、私どもとしては思いもよらないことでしたが、満80歳、ご家族は、「生き切った」とおっしゃっていました。 1980年刊行の『はれときどきぶた』は、現在でも毎年版を重ねる超ロングセラー&ベストセラーとなっておりますが、こんなにも長く多くのこどもたちに愛され続ける作品に弊社が伴走できたことを大変光栄に思い、深く感謝しております。 矢玉先生も見守ってくださる中、則安くんやぶたはこれからも活躍を続けます! ひきつづきよろしくお願いいたします。 岩崎書店 弊社の創立90周年記念サイトにて、矢玉先生の生前最後のインタビュー記事
こちらの記事はカケハシ Advent Calendar 2023 Part2の24日目の記事になります。 adventar.org はじめに 反復的な開発は、変更容易性の高いソフトウェアが不可欠です。ソフトウェア開発の経験がある方なら、デリバリ後の洞察や市場環境の変化から、新しい機能の追加やアーキテクチャの進化の必要性に直面したことが一度はあるでしょう。 私自身、要求分析手法やSOLID原則等の技法を取り入れ、変更容易性に対応する多くのプロジェクトに参加しました。しかし、どれだけ優れた手法や技法を持っていても、変更が難しい要求が出てくることは避けられません。その際、「過去の出来事」を正確に記録していれば、後から見返して問題解決が容易だったと感じることがよくあります。 ドメイン駆動設計(DDD)では、「過去に起こった出来事」を表現するドメインモデルを「ドメインイベント」と呼びます。変更容易性
こんにちは、セキュリティチームの@sota1235です。 セキュリティチームでは昨年の夏頃からGitHub上のセキュリティリスクを洗い出し、順に対応や改善を行っています。 そのうちの1つとして、昨年の秋ごろからGitHubのPersonal Access Tokenの取り扱いの改善を行ってきました。 具体的には以下の取り組みを行いました。 CI等で利用されているPersonal Access Tokenの利用廃止 OrganizationにおけるPersonal Access Token(classic)の利用禁止設定 今回はこの2つの取り組みについて、どのような課題設定を行い、どんな手順で完了したのかをお話しします。 以下のような課題感、疑問をお持ちの方に対する1つの回答になりうると思うので該当する方はぜひご一読ください🙏 GitHubにおけるPersonal Access Token
楽天市場のお買い物を通じて動物保護団体を支援できる「動物保護団体支援プログラム」と、はてなブログが共同で、ペットとの絆や思い出を募集する特別お題キャンペーン #ペットを飼うこと を実施中。このお題に関連して、保護猫の預かりボランティアを始めたお笑いコンビ・ティモンディの前田裕太さんにお話を伺いました。保護された動物たちには、保護団体をはじめさまざまな人の手が関わります。期間限定で動物を預かり、新たな家族との出会いに向けて「人馴れ」を進めるボランティアもその一つ。 今回は、お笑い芸人として活動する傍ら保護猫ボランティアにも携わり、テレビ番組などでその様子を発信している前田裕太さんにインタビューを行い、保護猫と過ごした日々のエピソードや自身の変化、さらに保護活動やサポートに対する思いについて伺いました。 ※この記事は楽天グループ株式会社によるSponsoredContentです。 “エア猫”を
はじめに 知らない間にGitHub Copilotが結構進化していたので、それらの内容を紹介します。 GitHub Copilot Chatは知っていたのですが、単なるChatGPTみたいな会話機能を追加しただけだと思っていました。 要約 右クリックメニューや#fileのようなコマンドが登場し、それを入力するだけでChatに見てほしいコンテキストを伝えることができるようになった。 ファイル単位だけでなく、選択した行やブロックに限定することもできる。 テストコードや新しいプロジェクトをコマンド一つで生成できるようになっている。 推薦の候補も複数を同時に比較できるようになった。 一度に最大10個くらい出る上、タブで保管できる。 ターミナルや編集中のファイルからコマンド一つでChatを立ち上げることができる。 特別なプロンプトを入力しなくても、開いた場所の文脈を読み取ってくれる。 右クリックメニ
はじめに 私ごとではありますが、現場でdynamodbをメインのデータベースとして採用してから約2ヶ月が経ちました。 たった2ヶ月いう期間で、何度も心身ともに崩壊し、そして粘り強く復活を遂げ、かろうじて奇跡的にレベルアップをしてきました。 今回の記事では、これからdynamodbの導入を検討しているエンジニアの皆様に向けて、わずかながら現場で(汗と血を流しながら)得た知見を共有したいと思います。 主にdynamodbを導入するときに楽できる部分、楽できない、苦労する部分がどんな感じか、この記事でなんとなく伝えられたら嬉しいです。 以下では、4つの項目(採用基準、設計、開発、運用)に分けて、知見を羅列していきますが、私もまだ駆け出しdynamodberの域を出ないので、誤りやアドバイス等ございましたら、是非コメントいただきたいです! なお、ここで紹介する内容は基本的にはAWSの公式ドキュメン
AI・機械学習チームのブログリレーも9日目になりました。同チームの横本@yokomotodです。 本日はJavaとGoを題材に並行プログラミングまわりの自由研究をしたお話をしてみたいと思います。 3部構成で、パート1では発端となった「排他制御」について、パート2では「メモリの可視化」について、それぞれJavaとGoを比べてみました。 最後にパート3では、それらの動作を規定する「メモリモデル」について、わかりやすく解説されているリソースを紹介します。 長過ぎる! 3行で!! パート1: synchronized = 「排他制御」? Java synchronized vs Go sync.Mutex Goで再入可能なロック? 仮にGoで再入可能なロックを実装するなら? Javaが再入可能を選択した理由 パート2. sycnhronized = 「排他制御」+「メモリ可視性の保証」 Javaの
最近使ってないモバイルバッテリーの他、使わなくなったカメラ用充電池とか、交換した家電の充電池(主にリチウムイオン電池)などをそれぞれ適切な方法で処分しようと思います。 使わないモバイルバッテリー、捨てられるうちに捨てておくか JBRC会員メーカーか否か? Anker製品は独自の回収も CIOでは買い替え時に他社製モバイルバッテリーの回収も 自治体での処分:小型充電式電池は「危険ごみ」等で回収される自治体もある 充電式の小型家電、めちゃくちゃ増えましたよね 使わないモバイルバッテリー、捨てられるうちに捨てておくか 完全に使わなくなったモバイルバッテリーは都度処分していましたが「まだ使えるし災害時に役に立つかも?」と残していたものが少し溜まってきたのと、今どき出力がUSB-AのみとかMicro-USB充電とか使いませんし、処分しやすいうちに整理することにしました。メーカーや電池の種類によって、
この記事は、静的解析とビルドサイズ面で興味深いテーマでした。記事として自分の考えを書きます。 注意。あくまでビルドパフォーマンス視点での最適化です。強い意図があって、自分のドメインモデリングの方法論ではこれが最適なんだ、というなら元コードの方法論を止めるつもりはありません。 元記事のコードを minify するとどうなるか 元コードを参考に、それにアクセスするサンプルコードを書いてみます。 const sortingOptions = { priceDesc: { id: "priceDesc", sort: "price", order: "desc", label: "価格が高い順", }, priceAsc: { id: "priceAsc", sort: "price", order: "asc", label: "価格が安い順", }, ratingDesc: { id: "ra
AI・機械学習チーム(以下、AIチーム)では、不定期で有志による開発合宿を行っています。今回は、先日実施したAIチーム夏合宿@越後湯沢の様子をお届けします。 宿の部屋からの景色 この記事は、AI・機械学習チームのブログリレー6日目の記事です。 こんにちは。AIチームの池嶋(@mski_iksm)です。この合宿は、「夏になり暑いので、涼しいところでワーケーションしてみませんか?」という軽い提案から企画されました。 今回は、新潟県湯沢で2泊3日の旅程で行ってまいりました。 場所の選定にあたって、次の条件が考慮されています。 仕事ができる空間(例:会議室)がある リーズナブルな価格 東京からのアクセスが良い 涼しい気候 美味しい食事が楽しめる さまざまな場所が候補に挙がる中で、ふと健康保険組合の保養所の存在に気づきました。エムスリーが加入している関東ITソフトウェア健康保険組合には、直営の保養所
この記事は、CYBOZU SUMMER BLOG FES '24 (クラウド基盤 Stage) DAY 10 の記事です。 こんにちは。クラウド基盤本部の野島です。Go は goroutine やチャネルなどの仕組みが備わっており、簡単にマルチスレッドなプログラムを書くことができる言語だと言われています。しかし、マルチスレッドプログラミングには独特の罠があり、何も知らない人が雰囲気でコードを書くとわかりにくいバグを仕込んでしまうリスクが非常に高いです。 この記事では、マルチスレッドプログラミングに詳しくない人に向けて、そのような罠を避けるための方法を紹介します。この記事は Go の基本的な使い方を知っていることを前提としています。 這い寄るデータ競合の恐怖 まずは以下のようなプログラムを考えてみましょう。これは複雑な計算を行って結果を返すような HTTP サーバーのコードです。 // 複雑
はじめに こんにちは。hikaruです。 今回はCloud SQLのネットワークと接続方法について解説していきます。 前回記載したCloud SQL基礎に続く記事になります。 AWSでは、RDSを構築する際はユーザ管理のネットワークに構築しますが、 Google CloudのCloud SQLは、ユーザ管理のネットワークに存在しなく、Google Cloud側のネットワーク上(サービスプロデューサVPC)に構築されるのが特徴です。 Cloud SQLには接続方法として2つの方法があります。 インターネットを経由するPublic IPでの接続 VPC内部を経由するPrivate IPでの接続 それぞれの接続方法について深堀って説明していきたいと思います。 Public IPでの接続 Public IPでの接続の場合、Cloud SQL自体にIPv4のPublic IPアドレスが付与されます。
平日14時、土日12時までのご注文で当日発送 最短翌日お届けの条件 平日14:00まで土日12:00までのご注文で当日出荷。 ※下記の場合は対象外となります。 土日祝日のご注文 / 銀行振込・コンビニ先払い・キャリア決済でのご注文 / 予約商品/麻雀卓/大型商品の場合 翌日到着エリア(離島など一部例外地域もございます。) 東北青森県、岩手県、秋田県、宮城県、山形県、福島県 関東茨城県、栃木県、群馬県、埼玉県、千葉県、東京都、神奈川県 中部新潟県、富山県、石川県、福井県、山梨県、長野県、岐阜県、静岡県、愛知県 近畿三重県、滋賀県、奈良県、和歌山県、京都府、大阪府、兵庫県 中国岡山県、広島県、鳥取県、島根県、山口県 四国香川県、徳島県、愛媛県、高知県 翌々日到着エリア(離島など一部例外地域もございます。) 北海道北海道 九州福岡県、佐賀県、長崎県、大分県、熊本県、宮崎県、鹿児島県 ※沖縄・離島
【完全ガイド】制作経験ゼロの社会人向けゲーム制作入門。夏休みを使って,Unreal EngineのFPSミニゲームを完成させてみよう 編集部:或鷹 1234567→ これを読んでいる人なら重々分かっていると思うが,昨今のゲーム市場において大きな存在感を示しているのは,プラットフォーマーでも大手メーカーでもなく,Steamだ。 何十億円もの開発予算こそもっていないが,いままでに見たこともないようなアイデアに満ちた珠玉の作品達が,それこそ遊びきれないほど眠る豊穣の大地である。 Steamを見ていると,本当にゲームというものは「アイデアと気合い」なんだと思うことも多い。美麗な超絶グラフィックスである必要はなく,なんなら文字だけでも面白いゲームは作れるわけで,そういうもので遊んでいると自分もむずむずしてくる。もしかしたら自分にも,何か作ってみたいゲームがあったりするんだろうか? しかし,世の中はそ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く