タグ

雑記と開発に関するitottoのブックマーク (374)

  • 大公開!バッチアプリケーションの品質を高めるZOZOの『バッチ開発ガイドライン』 - ZOZO TECH BLOG

    こんにちは。MA部の田島です。 弊社では開発ガイドラインというものを用いて、システムの品質を担保しています。今回私がテックリードを務めているということもあり、バッチアプリケーションを開発するためのガイドラインを作成しました。記事では「開発ガイドライン」と「バッチ開発ガイドライン」を紹介します。 バッチアプリケーション開発に限定したTipsはまとまっているものが多くないため参考にしていただければと思います。 開発ガイドラインについての紹介 冒頭でも紹介した通り弊社では、開発ガイドラインというものを用いてシステムの品質を担保しています。バッチ開発ガイドラインを紹介する前に、まず開発ガイドラインを紹介します。 開発ガイドラインの種類 開発ガイドラインは現在、以下の種類が存在します。 共通 Android iOS Frontend Backend Infra API Batch DB(Datab

    大公開!バッチアプリケーションの品質を高めるZOZOの『バッチ開発ガイドライン』 - ZOZO TECH BLOG
  • 古い常識にしがみつくプログラマー、老害にならないためにできること

    プログラミングは難しい。なぜ難しいかを対話型AI人工知能)チャットサービスの「ChatGPT」に尋ねてみたところ、鍵になるのは「抽象的思考能力」とのことだった。プログラミングには強い抽象的思考能力が求められるため、自然に理解できる人とそうでない人がいるという。 たしかにプログラミングをしていると、どれだけ抽象的な考え方ができるかを試されていると感じることが多い。複雑なプログラムを読んだり書いたりしようとすると、自分の頭で扱える抽象的思考能力を超えていると感じることがある。そうした複雑な仕事を日々こなしているソフトウエア開発のプロフェッショナルは尊敬に値すると思う。 もっとも、単にプログラミングができるだけの能力は、次第に価値を失ってきているようにも感じる。AIによるコード生成が日々進歩しているからだ。独立したソフトウエアエンジニアとして振る舞うAIエージェントも登場している。これらは既に

    古い常識にしがみつくプログラマー、老害にならないためにできること
  • タイムスタンプの精度を落とすときは切り捨てろ - methaneのブログ

    とあるプロジェクトでナノ秒からミリ秒への変換で四捨五入してきた人がいて、時刻を扱うときは保存精度未満は切り捨てるべきというのが常識になっていないなーと思ったので。 2023-10-01 を、何年か表示する時に、2024年に丸める人はいないだろう。 13:45 が何時か表示する時も、13時と表示するだろう。(口頭で何時?と聞かれたら14時と答えるかもしれないけれど) つまり、ある精度で表した時刻は、実際には次のような半開区間を示しているのである。 2023-01-01 00:00:00 <= 2023年 < 2024-01-01 00:00:00 13:45:00.000 <= 13:45 < 13:46:00.000 そして、そう決めたからには一貫して同じように、指定精度未満は切り捨てというルールを維持しなければならない。秒以下は四捨五入で、とかやってはいけないのだ。 一貫しないと何が問題

    タイムスタンプの精度を落とすときは切り捨てろ - methaneのブログ
    itotto
    itotto 2024/04/20
    データの意味だとかを何も考えずに四捨五入する人はわりとよくいるのでこれはよく分かる
  • なぜ我々は GitHub Copilot Enterprise の導入を見送ったのか - 一休.com Developers Blog

    CTO 室の恩田です。 今回は GitHub Copilot Enterprise を評価してみて、現時点ではまだ採用しないことを決めた、というお話をご紹介したいと思います。 きっかけ とあるエンジニアSlack で自身の times チャネルに時雨堂さんの GitHub Copilot Enterprise のススメという記事を投稿したことが発端でした。特に感想はなく URL に 👀 だけが添えられていたので、後で見るぐらいのメモだったんだと思います。 それを見かけた別のエンジニア技術雑談チャネルにその投稿を共有して、これは凄そうと話題を向けたところ、CTO の「評価してみる?」の一言で、有志が集って評価プロジェクトが始まりました。 雑談チャネルできっかけとなる投稿が共有されてから、30分足らずの出来事でした(笑)。 この話題が出たのは金曜日でしたが、週明け早々に稟議を終え、火曜

    なぜ我々は GitHub Copilot Enterprise の導入を見送ったのか - 一休.com Developers Blog
  • いかに運用作業に手を抜くかという話 - pospomeのプログラミング日記

    最近「いかに運用作業に手を抜くか」というのを考えているので、なんとなーくアウトプットしてみようと思う。 運用作業とは? 運用作業はゼロが理想だけど、そーもいかない 運用を頑張りすぎてしまうエンジニア pospomeはどうしているか? まとめ 運用作業とは? 自分が想定する "運用作業" というのは機能開発に関係ない作業全般である。 例えば以下の作業は "運用" にカテゴライズしていいと思う。 ソフトウェアのバージョンアップ ユニットテストの実装・保守 問い合わせ対応 リファクタリング 運用作業はゼロが理想だけど、そーもいかない 自分は運用作業がゼロになるのが理想だと思っている。 可能であれば、機能開発にすべての工数を投じて、自身が開発するプロダクトを進化させていきたい。 ただ、運用作業をゼロにするのは不可能である。 ソフトウェアのバージョンアップは定期的にしなければいけないし、リファクタリ

    いかに運用作業に手を抜くかという話 - pospomeのプログラミング日記
  • クレディセゾンでDXを進めてきた5年間を振り返る|小野 和俊

    はじめにクレディセゾンに来てちょうど5年が経ったので、これまでの取り組みをまとめてみようかと思う。書き進めていくうちにとても長くなってしまったので、1年につき3トピックに絞ってあとはカットした。それでも5年分なこともありかなり長くなったので、目次から各トピックに飛んでもらえればと思う。社内の関係者も読むかもしれず、「自分のやったことが載ってない!」と思うこともあるかもしれないが、内製開発案件だけでも53案件あり全部載せるととんでもない量になるので許してほしい。それから、振り返ってまとめると退職すると勘違いされるかもしれないけれど、退職するわけではありません! 2019年:ゼロからのスタート1-1. 内製開発エンジニア募集を始める「日のそれなりの規模の事業会社の中に、内製開発チームを立ち上げることはできるのだろうか?」 2019年3月、クレディセゾンに来たばかりの私にとってはこの質問への答

    クレディセゾンでDXを進めてきた5年間を振り返る|小野 和俊
    itotto
    itotto 2024/03/28
    以前ほどはてブでは見かけなくなったけど変わらず楽しいことを続けていていいなと思った
  • 基幹系への安易なOSS採用は禁物、バージョンアップ多発で運用保守が重荷に

    基幹系システムのような社内システムにおいても、オープンソースソフトウエア(OSS)の利用が当たり前になってきた。クラウドサービスを利用する場合や、開発担当者と運用担当者が連携する開発手法DevOpsを採用する場合など、OSSの利用を避けられない。 多くの企業でOSSの利用が進む中、OSSを採用した当初は想定していなかった誤算に直面するケースが浮上している。商用のソフトウエアに比べてサポート期間が短かったり、サポートが充実していないため脆弱性が見つかっても放置してしまったりといった課題だ。ユーザー企業は安易に導入コストだけを見てOSSを採用するのは禁物だ。その後の長期間の運用・保守も含めた体制の検討が求められる。 「OSSの採用がここ数年で周辺システムから基幹系に広がった。その結果、ユーザー企業からは長期間、同じバージョンのソフトウエアを使いたいという要望が増えている」。OSSのデータベース

    基幹系への安易なOSS採用は禁物、バージョンアップ多発で運用保守が重荷に
  • なぜオフショア開発でベトナムがひとり勝ちしているのか?

    あなたは今、オフショアを検討しているが、様々な国の選択肢がある中で、なぜ「ベトナム」というワードをよく聞くのか気になっているところではないでしょうか。まず大前提として「ベトナム」を第一候補として取り上げるのは間違いないと言えるでしょう。 それではなぜ、ベトナムを第一候補として取り上げて良いのか?まさに、ベトナムにオフショア拠点としてラボを開設してから10年経ち、東建コーポレーション様やカインズ様といった誰でも耳にしたことあるような会社との取引を多数実績として持っている会社に所属している私がその背景とともに、ベトナムの魅力を紹介したいと思います。 そして、ベトナムに魅力を感じていただいたうえで、ベトナムの会社選びのポイントや開発を進めていく上で気を付けておきたいポイントを併せて紹介いたします。 1.なぜベトナム?オフショアでベトナムがひとり勝ちしている理由 オフショアといえばベトナムと言われ

  • プラットフォーム エンジニアリング ガイド

    プラットフォーム エンジニアリング ガイド プラットフォーム エンジニアリング チームが Microsoft やその他のベンダーの構成要素を使用して、よりパーソナライズされた、最適化された安全な開発者エクスペリエンスを作成する方法について説明します。

    プラットフォーム エンジニアリング ガイド
    itotto
    itotto 2024/03/09
    先日AWSもセミナーしてて気になってた
  • IPAフォントライセンスを巡って | 一般社団法人 文字情報技術促進協議会

    先般、当協議会所属のフォント技術のエキスパートから、MJ明朝体フォントをWOFF化するサービスを提供しているサイトがある、MJ明朝体フォントの使用許諾契約に違反しているのではないか、との指摘があった。事務局長や対外窓口をお願いしている理事の方とも相談して、このサイトのオーナーに連絡を取り、MJ明朝体決め打ちのサービスについては、公開を差し控えていただいた。 ぼく的には、フォントをWOFF化するサービスの必要性もよく分かるし、協議会としても、WOFF化やサブセットフォントの提供など、協議会として直接行うか、協議会メンバーのフォントベンダー各社にビジネスとしてやっていただくかも含めて、具体的な方策を検討しているところだ。 ちょうどいい機会なので、MJ明朝体フォントの使用許諾契約書の成立の経緯と、ついでに、フォントの知的所有権を巡るず〜っと以前のぼくの経験を書き記しておきたい。 そう考えて、経緯

  • 「そもそも開発生産性ってなんだ?」 “勘”ではなく“データ”で判断するために可視化すべき指標

    「開発生産性」をテーマに発表したのは弥生株式会社CTOの佐々木氏。組織運営における開発生産性向上への着目背景や可視化の意義など、よりよい組織づくりをするための取り組みについて語りました。全2回。 登壇者の自己紹介 佐々木淳志氏:弥生株式会社の佐々木です。私からは、「より早く良いものを多くのお客様に使ってもらうために」というタイトルでお話をいたします。 最初に軽く自己紹介を失礼します。弥生株式会社でCTOをやっている佐々木と申します。弥生での業務ですが、けっこう全体的にフワッとしたことをやっているというイメージがいいかもしれません(笑)。 全社レベルのアーキテクチャ検討とか採用とか教育とかセキュリティ推進とか、そんな感じのことをやっていて、個別のプロダクトというわけではないのですが、なんとなく全体を見ている感じになっています。 趣味などいろいろ書いてあるのですが、『FF14』をやっていたり、

    「そもそも開発生産性ってなんだ?」 “勘”ではなく“データ”で判断するために可視化すべき指標
  • 龍が如く7のすごいテストをなぜ我々は採用できないのか | フューチャー技術ブログ

    僕自身は龍が如くシリーズは、クロヒョウ2、極1、極2、0、3、4、5、6、0とやって、7はRPGだし主人公違うしなぁと思って、買うだけ買って後でやろうと積んでいたところ、CEDECのすごいテストの話を聞いて、(オリジナル版を積んでいたのに)インターナショナル版を買って始めてしまうぐらいインパクトがあり(そして積んでたのを後悔したぐらいよかった)ました。それ以降、維新極、7外伝、8は発売日に買ってプレイしてます。 こちらにその講演の詳細なレポートがこちらにあります。 https://www.famitsu.com/news/202009/11205564.html その8の発売前に龍が如くスタジオの技術責任者の方がXのアカウントを開設して、C++のコードを投稿されていたのですが、それに対してエンプラ開発目線で意見しているようなツイートを見かけて、「いや、システムの特性全然違うから」と思い筆を

    龍が如く7のすごいテストをなぜ我々は採用できないのか | フューチャー技術ブログ
  • 納期がなぜ生産性をぶち壊しにしているのか?|牛尾 剛

    昨年NewsPicks さんに取り上げてもらって最近動画が公開されました。そこでもお話させてもらっていることなのですが、アメリカで働きはじめると日人からすると「納期が無い」感覚が物凄く衝撃的だった。 最近、納期が無いことと生産性について頭の中で整理がついてきたのでシェアしておこうと思う。ちなみに、動画も含めて、私の発言は私の体験と意見であり、所属会社には全く関係が無いことを改めてお断りしておきます。 日米納期の感覚の違い アメリカで働いていると、日人からすると納期がほとんどないという感じを受ける。もちろん納期があるものもあるが「当に必要なもの」に限られる。例えば、大きなカンファレンスで何かの製品を発表するとかそんなのだと納期はもちろんある。そうでなれけばほとんど無いという感覚だ。私の所属会社だけではなく、北米の他の会社の人も同じような感覚らしいので文化によるものだと思う。 常に納期が

    納期がなぜ生産性をぶち壊しにしているのか?|牛尾 剛
  • はじめまして!東京ガス内製開発チームです! - 東京ガス内製開発チーム Tech Blog

    みなさん、はじめまして! 東京ガスCX推進部デジタルマーケティンググループでエンジニアチームのリーダーをしております杉山です。 このたび、当チーム(以下、内製開発チームと呼びます)での技術的な取り組みについて紹介するため、 Tech Blog を開設しました! 実は私たち内製開発チームは note の方でも投稿しているのですが、このブログではソフトウェアエンジニアの内容に特化したものを投稿していく予定です💪 東京ガス内製開発チームって? 私たちのチームは myTOKYOGAS を中心としたお客さま接点のあるプロダクトを扱っております。23年11月、 myTOKYOGAS のリニューアルにあたって、私たちのチームはフロントエンド部分をフルリプレイスしました。 チームや部署、内製開発を始めた経緯については、ぜひ以下の note もご覧いただけたらと思います。 note.com myTOKYO

    はじめまして!東京ガス内製開発チームです! - 東京ガス内製開発チーム Tech Blog
    itotto
    itotto 2024/02/06
    ブコメ非表示なの?
  • 次世代バージョン管理システム jj を勉強するスレ

    (2024-02-03: 追記) 内容は、Book: 君のレポジトリを領域展開 - 次世代バージョン管理システム Jujutsu の世界 にまとめなおしました ちょっと前にマストドンかどこかで、存在を知った次世代バージョン管理システム jj (Jujutsu-呪術)について勉強している。 ホームページ:Jujutsu docs チュートリアル:Tutorial and Birds-Eye View - Jujutsu docs Git との比較:Git comparison - Jujutsu docs レポジトリ:martinvonz/jj: A Git-compatible VCS that is both simple and powerful 日語の解説ページが見つからなかったため、英語のレポジトリのドキュメントをブラウザの翻訳アドオンを使って読まざるを得ない。 開発者の ma

    次世代バージョン管理システム jj を勉強するスレ
  • 東京都初のアジャイル型開発はいかにして導入され、実践されたか – 調達、スクラムの工夫、展望を聞いた - Agile Journey

    「初!都庁職員、アジャイル型開発に参加する」 東京都デジタルサービス局デジタルサービス推進部の公式note2023年1月公開)には、かつて“試みたことのない開発手法”であったアジャイル型開発を東京都が採り入れ、複数のソフトウェアを開発した経緯が綴られています。 これまでAgile Journeyでは、さまざまな組織、企業のアジャイル導入事例を紹介してきましたが、それぞれの組織がそれぞれのモチベーションを持ち、課題に向き合いながら、導入に取り組んできました。では、それが自治体の場合では? 東京都がアジャイル型開発を導入し、運用していくための動機、準備、事業者との契約の方法、そして実践のありようを、東京都デジタルサービス局の石川秀之さん、下家昌美さんに聞きました。 コロナ禍で浮き彫りになった、「迅速」の重要性 「システムをアジャイル型開発で作ってみませんか」メールで呼びかけ、アジャイル型開発

    東京都初のアジャイル型開発はいかにして導入され、実践されたか – 調達、スクラムの工夫、展望を聞いた - Agile Journey
  • 結合テストを書くときはコードベースを分離している

    新規開発の設計支援や古いコードベースを甦らせて欲しいという相談をもらったときに、最初にちょろっとコードだけお手的なコードを書いてから引き渡しているのだが、そのときに必ず結合テストを書くようにしている。 3, 4年前から僕と付き合いがある人からすると、 「「「あの sadnessOjisan がテストを書くだと!!!」」」 という感じだと思うのだが、最近はテストに思うところもあってちゃんと書いている。 そしてそのテストコードだが、基的にはアプリケーションから分離して書いている。その話をしたい。 OGP OGP は野方ホープで海苔が分離されて出てきた時の画像だ。 アプリケーションから分離したテストとはどういうことか 最終的にはテスト対象のサーバーを Docker コンテナで固めて、そのコンテナに対して HTTP リクエストを投げてその結果や DB の中身を検証するコンテナを docker

    結合テストを書くときはコードベースを分離している
  • Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル) - Qiita

    Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル)oracleWeb この記事は、 JPOUG Advent Calendar 2023 24日目の記事です。 23日目は multilayer さんの記事『OCIのLanding Zoneについて調べてみた!』でした。 想定読者 ファントムファイルについてよく知らない、帳票の扱い方をあまり考えたことがない人 イントロダクション 皆さん、世の中のWebシステムで利用される画像や帳票ファイルがどこに保存されているかご存知でしょうか? 帳票や大きな画像ファイルなどを扱う際、大きく分けて2つの設計方針があります。 ・DBに直接保存する ・DB外部に保存し、パスなどをDBに保存する オライリーのSQLアンチパターンの、”ファントムファイル”という章にはこのあたりのことが書いています。 [Amaz

    Webシステムにおいて「画像や帳票等のファイルはDBへ格納すべきなの?」を調べてみた(ファントムファイル) - Qiita
  • 見えてきたプログラマー不要時代、GitHubが「Copilot Workspace」を発表

    プログラミング分野で、久々に大きなニュースが飛び込んできた。米GitHub(ギットハブ)が2023年11月上旬に米国で開催したイベント「GitHub Universe 2023」で発表した新サービス「Copilot Workspace」だ。同月8日(米国時間)に行われた初日の基調講演の最後で、同社のThomas Dohmke(トーマス・ドムケ)最高経営責任者(CEO)が披露した。2024年に提供を開始する予定だという。 GitHubを使ったソフトウエア開発では、解決すべき課題を「Issue(イシュー)」という形で管理する。それぞれのイシューについてソフトウエア開発者がコードに手を加え、変更したコードをリポジトリー(ソフトウエア体のコード)に取り込んでもらうよう依頼する。この依頼を「プルリクエスト」と呼ぶ。 Copilot Workspaceは、こうした一連の作業をAI人工知能)がすべて

    見えてきたプログラマー不要時代、GitHubが「Copilot Workspace」を発表
  • VSCodeでプロジェクトを開くとき、ついでにいろいろやる方法

    この記事は GMOアドマーケティング Advent Calendar 2023 16日目の記事です。 こんにちは。GMOアドマーケティングのK.Mです。 VSCodeプロジェクト(ワークスペース)を開くとき、その開発をするために必要となるいろんなこと(サーバー起動やらログtailやらブランチ整備やら…)をついでに自動でやれたら良いなと思います。 そんなときは tasks.json です! というわけで今回は tasks.json を試してみます。プロジェクトを開くだけで周辺のいろんな準備もまとめてやってしまえるよう効率化したいと思います。 let’s try! VSCodeを開いてメニューの ターミナル > タスクの構成 から適切なものを選んで進みます。シンプルなテンプレートが得られるので、必要に応じてカスタマイズしていきます。 例として開発用サーバーを起動するようにしてみます。 { "

    VSCodeでプロジェクトを開くとき、ついでにいろいろやる方法