質とスピード(2022春版、質疑応答用資料付き)
![質とスピード(2022春版、質疑応答用資料付き) / Quality and Speed 2022 Spring Edition](https://cdn-ak-scissors.b.st-hatena.com/image/square/6a842e0cdaca4b59b4a7526df7802187f71c023a/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F0d45756f147d45229020083eb2dd139c%2Fslide_0.jpg%3F21716780)
質とスピード(2022春版、質疑応答用資料付き)
最近以下のような記事で個人開発のコストの話をよく見かけて、ちょうど自分も個人サービスをコストカットのためにVPSからほぼ無料なスタックに移行していたので構成とかを書いてみる。 前提としてはこんな感じ。 仲間内で使ってるだけのWebアプリケーション。月イチくらいしか使わない 技術スタックは技術的な実験とか学習を兼ねているので多少オーバースペックになるのはいい お金はなるべくかけたくない 移行前のスタック フロントエンドはNuxt.js、Netlify バックエンドはRailsでgRPC、envoyを噛ませてフロントエンドからはgRPC-Webで呼んでる VPS上にバックエンドのアプリケーションとDB(postgres)を動かしてる バックエンドは普通のRailsアプリにしてHerokuにするのが一番楽でお金もかからないんだけど、gRPC-Webを試してみたくて、そうするとproxyが必要にな
1年と2ヶ月かけて開発していたアプリがリリースできたので記事にしました。 詳しい開発のログは以下のスクラップにまとめています 👌 リリースしたアプリ ダウンロードはこちら。 ■ iOS ■ Android LPサイト アプリを開発したきっかけ 以前から週1で家族の振り返りの時間を設けていて、今週あった出来事を互いに共有して議事録に残すことを習慣にしていました。 ただ、上記の運用をしている間に以下のような問題があることに気づきました。 振り返りの際に、今週の出来事を思い出せない まとまった期間の振り返りたいときに、テキスト情報のみだとピックアップしづらい 良かった出来事のみピックアップしたい 振り返りを開催する時間が毎回ズレる 日付を忘れてスキップしてしまう そこで、上記を改善するためアプリを家族で開発しようという話になりました。 どんなアプリ? memoirは1週間を振り替えるアプリとし
開発は途中で終わった場合でも、準委任契約に基づく報酬請求はできるが、適切な計画立案・実行ができていなかったとして善管注意義務違反が認められた事例。 事案の概要 イベント企画会社Yは、自社の企画するイベントを管理するためのシステム(本件システム)の開発をXに依頼することとした。 平成28年3月にXは開発に着手したが、その時点では契約書が取り交わされておらず、4月になって、X・Y間で以下の内容(抜粋)の契約書が取り交わされた(本件契約)。 1条2項 本件契約は,Xが(中略)業務に従事する技術者の労働をYに対し提供することを主な目的とし,民法上の準委任契約として締結されるものとする。したがってXは,善良なる管理者の注意義務をもって(中略)業務を実施する義務を負うものとし,原則として成果物の完成についての義務を負うものではないものとする。 3条3項 前各項にかかわらず,Yは,Xの本件サービスの業務
昨年リリースされた.NET 6は、マイクロソフトが長らく目指してきた「すべてのアプリのための統一プラットフォーム」の1つの到達点だ。Windowsのみならず、あらゆるプラットフォームで、デスクトップやWebだけでなく、どんなアプリでも。2002年の.NET Framework 1.0のリリース以来、20年目を迎える.NETは、果たしてどこまで行き着いたのか? Visual Studio 2022(関連記事:開発生産性の向上を実感!64ビット化した「Visual Studio 2022」の魅力)に引き続きマイクロソフトコーポレーション 井上章氏、日本マイクロソフト 横井 羽衣子氏が解説してくれた。 すべての開発者に選択肢を 進化を続けてきた.NET .NET 6の話の前に、まずは.NETおよび.NET Frameworkについておさらいしておこう。 特定の言語に依存しない開発環境を目指して生
CPUに負荷を掛けるCPUに負荷を掛ける場合は、開発者・管理者向けのトラブルシューティングツール「Windows Sysinternals」で提供されている「CPUSTRES」を利用します。 ツールは以下からダウンロードできます。 CpuStres - Windows Sysinternals | Microsoft Docs ダウンロードしたZipファイルを解凍し、OS環境に応じたファイルを実行します。 32ビットOSなら「CPUSTRES.EXE」64ビットOSなら「CPUSTRES64.EXE」CPUSTRESを実行すると、次のような画面が表示されるので、必要な項目を選択することで、CPUに負荷を掛けることができます。 たとえば、2コアのマシンでCPU使用率を100%にしたい場合は まず、Thead1・Thread2を選択した状態で、右クリックメニューから「Activity Leve
委託したシステム開発が頓挫したとして、野村ホールディングス(HD)と野村証券が日本IBMを相手取って計約36億円の損害賠償を求めた裁判。プロジェクト失敗はベンダー側に非があるとした2019年3月の一審判決から一転、2021年4月の控訴審判決はユーザー企業側に責任があるとした。工数削減提案に十分に応じなかったり、プロジェクト途中で追加要件を多発したりした野村側の姿勢を東京高裁は問題視し、逆転敗訴の判決を下した。 関連記事 野村HDが日本IBMに逆転敗訴の深層、裁判所が問題視した「X氏」の横暴な変更要求 野村HDが日本IBMに逆転敗訴のワケ、「工数削減に応じず変更要求を多発」と指摘 東京高裁が特に問題視したのが、システムの仕様を策定するうえで重要な役割を担っていた野村証券のユーザー部門「X氏」の振る舞いだ。 当時、投資顧問事業部(判決文では「投資顧問部」)の次長だったX氏は、パッケージソフトに
政府向けシステムに関わったことがある身からすると、政府向けシステムの話をするときに前提として知っておいてほしいことは、住基ネット最高裁判決に「現行法上,本人確認情報の提供が認められている行政事務において取り扱われる個人情報を一元的に管理することができる機関又は主体は存在しない」という骨子があること。これによって政府向けシステムは個人情報を一元的に管理できず、個人情報は各自治体で分散管理しかできない。この文面でググれば政府がどれだけこの骨子を気にしているかは分かると思う。 今回の話は「国民マスターテーブルを持たずに認証するにはどうすべきか」という政府向けシステムで常に挙がる課題で、良いアイデアがある人は政府に提案しにいってほしい。個人情報保護法の目的外利用に違反しない上で。 はがき送りつけこれをできるのは自治体のみで防衛省はできない。防衛省は国民の住所氏名を知らないのではがきを送れない。防衛
電気通信事業法 第九条の規定に違反して電気通信事業を営んだ者は、三年以下の懲役若しくは二百万円以下の罰金に処し、又はこれを併科する。 実はこの法律のことは知っていたので、特定の人だけが見られるチャットを作るのを今まで避けてきました。届出は面倒そうだと思っていましたが、実行してみると簡単だったので記事にまとめました。 総務省による解説 電気通信事業参入マニュアル[追補版] を基準に解説します。 他人の通信を媒介する 電気通信設備を用いて「他人の通信を媒介する」とは、他人の依頼を受けて、情報をその内容を変更することなく、伝送・交換し、隔地者間の通信を取次、又は仲介してそれを完成させることをいう 『他人の通信を媒介する』場合、クローズド・チャットと見なされ、電気通信事業の届出が必要となることがあります。なお『オープン・チャットは電子掲示板と考えらえるため届出は不要』らしいです。そういうものとして
大規模なソフトウェア開発は多くの人が関わり、多額の資金が費やされますが、時として社内外の要因によって開発現場が地獄と化す場合もあります。近年ではみずほ銀行の基幹システム開発が書籍化されるほど苦難の道を歩んだことはIT業界で知られていますが、そんな「地獄の開発現場」がかつてUberにも存在したと、元UberのエンジニアであるMcLaren Stanley氏が当時の状況を振り返っています。 Alright folks, gather round and let me tell you the story of (almost) the biggest engineering disaster I’ve ever had the misfortune of being involved in. It’s a tale of politics, architecture and the sunk
この記事は、著者の許可を得て配信しています。 https://panelbear.com/blog/boring-tech/ 注:この記事で書かれている考え方は、過去に何度も取り上げられています。長年にわたって私の視点に大きな影響を与えてきた記事の一つに、McKinley氏の「Choose Boring Technology(退屈な技術を選ぶ)」というものがあります。以下では、私自身の経験からこのトピックを探り、最近のプロジェクトでKubernetesを使うことになった経緯を紹介します。 長年にわたり、私は多くのエンジニアが会社の成功や失敗の多くを技術的な選択が原因であると主張する傾向があるところを見てきました。私にももちろんそういう時もあります。それはしばしば正当化されますが、大多数のスタートアップ企業にとって、プログラミング言語、フレームワーク、あるいはデータベースの選択はそれほど重要
ソフトウェア開発の効率化や品質向上を研究しています。そこで感じたことを書いていきます。ITシステムに関するリテラシーが高まるともっとIT化が進むのではないかと思い、書いています。 ITシステムを利用していると改善したいことが出てきます。「こことここは同時に指定したい」「この順番が入れ替わると作業しやすい」といったこと要望を感じることは誰にでもあるのではないでしょうか。ご自身が開発に携わっていれば、変更することもできますが、社内のIT部門が管理していたり、開発会社にお願いしていたりすると、このブログエントリのタイトルのように思うことがあるかもしれません。 「ちょっとした変更なのに、なぜ時間がかかると言うのだろう。本当はそれほど時間がかからないのに、ひょっとして仕事が増えるのがいやなだけで、体よく断っているのではないか」と思ってしまうかもしれません。その可能性はゼロではありませんが、一般には次
[速報]マイクロソフト「.NET 5」正式リリース。1つのフレームワークでWindows/Mac/Linuxのデスクトップ、サーバアプリ、Webアプリなどが開発可能に マイクロソフトは、アプリケーションフレームワークの最新版となる「.NET 5」正式版のリリースを発表しました。 .NET 5は「.NET Framework」と「.NET Core」フレームワークを統合し、その後継となるオープンソースのフレームワークです。 これにより長いあいだマイクロソフトのもっとも重要かつプロプライエタリなフレームワークだった「.NET Framework」が、その地位を正式にオープンソースの「.NET 5」へ譲ることになります。 Announcing .NET 5.0 https://t.co/dwjJTZA399 — .NET (@dotnet) November 10, 2020 .NET 5はWi
SWIG (Simplified Wrapper and Interface Generator) は、C/C++ で書かれたプログラムやライブラリを、Tcl、Perl、Python、Ruby、PHP、Luaなどのスクリプト言語や、Java、C#、Common Lisp、Scheme、OCamlなどのプログラミング言語に接続するためのオープンソースのツールである。 仕組み[編集] SWIGの目的は、プログラムとスクリプト言語間の接続を最小限の作業で達成することである。ヘッダファイルにわずかな数の特殊なコマンドを記述すると、SWIGはC/C++と対象の言語とを橋渡しするグルーコードを生成する。言語によって、グルーコードは以下の三つの形態となる。 もともとのプログラムと同様に振舞うが、スクリプト言語のインタプリタが埋め込まれた実行ファイル 既存のインタプリタの何らかの拡張モジュールとしてリンク
普通は役所のシステムって構築してから5年とか7年は塩漬けにして使うもので、一度やらかしてしまうと名誉挽回の機会なんて向こう数年は与えられないんだけど、こと本件に関しては高市総務大臣から「今すぐ私がマニュアルなしでも使えるように直しなさい」と叱責いただいて、しっかりと予算的なサポートも得られたことで、たったの数ヶ月で立て直すことができた。 この数ヶ月は外部のセキュリティやPKIの専門家の方から様々なサポートをいただいて何とか実現したんだけれども、役所のシステム開発としては非常識というか、極めて難易度が高い案件だった。「え?単にChromeやSafariをサポートするだけでしょ、難しい訳ないじゃん」と思う諸兄は、もうしばらくこの話に付き合って欲しい。 もともとマイナポータルは日本を代表するITベンダーと通信キャリアの3社が開発したんだけど、大臣からの叱責を受け「ちゃんとお金を払うから直してよ」
最近のウェブ開発では各機能ごとをAPIでつなぎ込む時代になっています。 そのため、各チームが開発をしていく上で、 他のチームにAPIの仕様を伝える方法をきちんとまとめておく必要が出てきています。 そんな中でAPIドキュメントにどのような役割が求められていて どのような選択肢があるか、一旦自分の把握している知識をまとめています。 (ここで書いているAPIは、httpでアクセスしたら、JSON形式でレスポンスを返すウェブサービスのAPIを指しています) APIドキュメントを用意する上で、すぐにぶつかる壁 APIドキュメントを用意する場合に、何も考えずにExcelやwikiにまとめると、早い段階で メンテナンスのコスト の問題にぶつかります。 『APIドキュメントを書く時間がない』 『本当にドキュメント通りの結果が返ってくるか、試してみないとわからない』 『実際に返ってくるAPIとレスポンスが違
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く