re:invent 2020 関連で気になるもの多数なのですが、全部取り上げてると気にならないのでそれらの中でも印象が強かったものだけピックアップしてます。それでも多いんですが。。
AWS SaaS Boost
"Transforming Your Monolith to SaaS with AWS SaaS Boost" というなかなかチャンレンジングな内容ですね。SaaS Boostについてまとめると以下のような感じでしょうか。
- モノリシックなアプリケーションをテナント毎に独立したVPC(Multi-AZ)を配置してテナントに提供できる
- オンボーディング用ツールや課金、各種解析をテナント全体に対して適用でき、SaaS提供者向けに管理画面も用意される
従ってタイトルにある「モノリシックなサービスをSaaSに変換」は「テナント毎のVPCにモノリシックなサービスを展開できる」ということのようです。当たり前ですが、モノリシックなアプリケーションをマルチテナント対応に変更させるというマジカルなツールではないということですね。
テナンシーモデルについてはいくつかパターンがあり、MSが提供している以下のドキュメントがわかりやすいです。
SaaS Boostで提供されるのはここでいうSingle tenantモデルですね。SaaSの場合は効率的なリソース運用を考慮してMixed tenantかMulti-tenantを採用する事例の方が多いと思われることを考えると、Single tenantモデルでSaaS運営はコスト面が気になるSaaS事業者が多いのではないでしょうか。
しかしながら、Single tenantモデルであっても課金含めて複数テナント向けのサービス設計を行うのは結構大変であるため、そのあたりのノウハウを持った人材を採用せずともSaaS提供が出来るという点でコスト削減は出来るかもしれません。運用コストが高まる頃にはビジネスが上手くいっているでしょうから、その後の移行は採用力がついてから、という考え方もひとつですね。
AWS Amplify - Admin UI
Aurora serverless v2
「V2ってなんなのさ?」というのが気になりますが、v1を置き換えるものではなく別のラインナップのようですね。
Aurora Serverless v2はv1を置き換えるものではなく、v1, v2, provisioned clusterと3つのラインナップになったとお考えくださいー プレビューの申込みは https://t.co/Eg52rocVoV より
— con_mame (@con_mame) 2020年12月2日
早速使ってみたという人の記事が。
serverless v2 以外のAuroraアップデート
どちらかというとセッション中で発表されたという以下の機能のほうが気になります。
re:Invent2020 What’s new in Amazon Aurora
— con_mame (@con_mame) 2020年12月4日
のセッション中にてAuroraの今後予定している新機能について発表しました!続報をお待ち下さい
- AWS Graviton2 powered Aurora (preview)
- Aurora Global Database: Managed Failover
Graviton2対応インスタンスは誰もが登場を想定していたと思いますが、果たして価格はどうなるか。ミドルレンジからハイエンドでの価格帯性能比が向上するのはおそらく当然として、かなり安価なインスタンスも出てくると SaaS Boostとか他のサービスでの利用開始時閾値がぐんと下がるのではないかと期待してます。Managed Failoverは2021年に予定されている大阪ローカルリージョンの通常リージョン昇格を見据えると国内リージョンでのfailoverできるという点で利用したい企業は多いんじゃないでしょうか。
AWS Lambdaのコンテナサポート
10GBまでのコンテナイメージをサポートしてお値段そのまま、というアップデートです。
すでに使ってみた方の記事がいくつか。
イメージサイズによってスピンアップ速度に有意な差が確認できました。
とのことですが、それでも問題にならないケース等もあるので気になる方は少なくとも最後の「まとめ」には目を通しましょう。
Lambda向けのコンテナイメージは Lambda Runtime Interface に対応してね、と説明されていますがこれもカスタムランタイムでよく見かけるものです。Rustの場合は awslabs/aws-lambda-rust-runtime を利用すると裏側でLambda Runtime Interface経由でやり取りしてくれます。 これカスタムランタイムと同じやり方で動くんじゃない?と思い試してみたところばっちり動いてくれました。
他の言語についてもカスタムランタイム利用する場合、参考になりそうです。
QuickSigtht Q
QuickSightに自然言語(今は英語だけ?)で質問を投げると欲しいデータが適切にビジュアライズされて出てくるというなかなかにやばい奴です。これをSaaS事業者が3rd-party向けに提供できるようになるとデータ解析機能とかはもうQuickSightにデータ突っ込めばいいやってことになりそうですね。おそらく多言語対応されるのだとは思うのですが、日本語対応はいつになるでしょうかね。
AWS SSO での WebAuthn対応
これにより、MFAにMacbook TouchIDが利用できるようになったそうです。
設定も簡単なようなのでこれを機にAWS SSOを導入しようかという気分になる組織もあるかもしれません。
JS25周年
The JavaScript language was created in 1995, initially developed in May and released to the public in December of that same year. Thus, 2020 marks its 25th Anniversary--certainly a huge milestone for this language that has become one of the most popular.
当時を知る人は「まさか25年経ってもJavaScriptがブラウザ上で動く言語として生き残っていなんて」という感想がほとんどでしょうね。
Stimulus.js 2.0
This version introduces two new APIs, values and CSS classes, which replace the data map API from Stimulus 1.0.
新規追加APIとしてvalues と CSS Classes が入ってますが、1.0との互換性が壊れる部分は少ないのでアップグレードは手間無く済むのではないでしょうか。
Basecampではガンガン使われていてDHHイチ押しですが、昨今のフロントエンドトレンドとは真逆、それどころか見方によっては後退してるとも言えるライブラリであるだけに話題性(可燃性?)は抜群。Hacker Newsで取り上げられていたので、さてどのくらい荒れているものかと見に行ってみました。
大半は「自分は○○.js推し」みたいなレスですが、実際に使った見た上での意見もいくつかありますね。Stimulus使っているRailsプロジェクトに関わっている身からすると、自分の意見はこの「StimulusでスタートしたけどReactに移行してるわ。でも別にStimulusを悪く言うつもりはないよ。」という方の書き込みに同意です。
We adopted stimulusjs a couple of years ago for adding some basic interactivity ... | Hacker News
Not knocking on stimulusjs, but just be wary that it does not grow well with increasing client side complexity. You'll end up writing a lot of javascript boilerplate / DOM manipulation code / custom state management components.
この方、Stimulusでまかない切れなかった部分について詳細な回答をしてくれているのが素晴らしいですね。
せめてもの救いはやれることが少ない軽量なライブラリでTypeScriptを採用しているので、React や Vue への移行がつらくなるということはない、というところですかね。
実践 Sorbet @ Shopify
11/22号 で取り上げたShopifyでのSorbet利用事例ですが、同日に「どうやってSorbetをプロダクトに取り込んでいったか」に関するもう1つの記事が上がっていたようです。
注目すべきは Tapioca という自社開発のツールを使って Rails含むgemからRBIを生成しているというところでしょうか。Active Record associations
とか結構なものがサポートされていて「え、もうそこまで出来てるの?」という驚きがありますね。
最終的にShopifyのコードベースで typed: true
100%を目指しているそうなので、引き続き注目です。
あと、最後のほうにある以下の一文が気になりますね。
As our long term goal, we hope to bring Ruby on par with compiled and statically typed languages regarding safety, speed and tooling.
safetyとtoolingは別としてspeedの話が出ているということは、Sorbetとは別に何かShopifyとして取り組んでいるものがあるということでしょうか。
CTO Advent Calendar
まずDay 1 から初日に相応しい内容ですね。
CTOに求められる役割の変化について、自分のこれまでの振り返りを兼ねて記事を書いてみようと思います。
自分は100名未満の組織でしか働いた経験なく、逆に 0 or 1 -> 10 over はいろいろな立場で何社か経験していて、ここに書かれていることについては同意です。
Day 5の内容も頷けるものが多かったです。
GOV.UK によるフロントエンドエンジニアの職務・スキル定義
Pleased with this. Just over 3 years since starting work on this, the role of Frontend developer now exists in the UK civil service (DDaT Capability Framework): https://t.co/S6Tm29dMLX
— Matt Hobbs (@TheRealNooshu) 2020年12月3日
Two keys skills include:
• accessibility (#a11y)
• web performance optimisation (#webperf)
必要とされるスキルのカテゴリーとタイトルの2軸で、タイトル毎にそれぞれのカテゴリーでどういった役割が期待されるのかがまとめられています。
タイトルは6段階設定されています。Apprentice(見習い), Junior, タイトル無し, Senior, Lead, Headで、後ろに行けば行くほど上位タイトルになっています。スキルのカテゴリーは以下の通り。
- Programming and build
- User Focus
- Systems design
- Systems integration
- Modern standards approach
- Prototyping
- Accessibility
- Communicating information
- Leadership and guidance
- Web Performance Optimisation
- Community collaboration
- Strategic thinking
本文書では各タイトル毎に必要とされるスキルについて概要が示されています。UIデザインは入っていないものの、Prototypingが含まれているところは面白いですね。
ウィズコロナ時代のITエンジニア需給情報
業種別で「IT・通信」は4.89倍、職種別で「技術系(IT・通信)」は6.64倍。業種別、職種別どちらもトップ倍率ですね。
小売りや旅行業界などダメージが大きい業界などからの転職希望者が増加。「エンジニアなど在宅でも働ける、手に職をつけたい人が明らかに増えています」(藤村さん)
人材流動が起こることは良いことですけど、コロナの影響で職を失った人がすぐ職を得られるかというとなかなか難しい業界ですね。
一方、IT関連の人材不足は深刻化している。経済産業省の調査によると、IT関連人材は30年には45万人不足するとの試算もある。藤村さんは、今後もこうした傾向は加速するとみている。
ここまで不足するともうどうしようもないので、不足した状態でどうするかという話をするしかないですよね。
具体的には、大企業や中堅企業が新卒や中途で採用した従業員への給与の総額を前の年度より2%以上増やした場合、その支給額の15%分を法人税から差し引くことを検討しています。
仕組み的に需要が多くて、かつ人材流動性が職種の給与額が上がってしまい、コロナで職を失ったり失いそうな人たち向けの支援にはならないんじゃないかという気がしますが、どうなんでしょう。いずれにしてもITエンジニアが求職する場合、より有利な給与条件の求人が増えるかもしれません。
このほか、政府・与党は、企業の規模にかかわらず、デジタル関連などの研修や教育を受けることなどを条件に、さらに税負担を軽減することも検討していて、来週まとめる与党の税制改正大綱に盛り込むことにしています。
これは教育系サービスを提供するSaaS事業者には追い風かもしれませんね。
CSSの学び方
CSS Working Groupのメンバーでもある Rachel Andrew 氏によるCSSの学び方に関する記事。2019/01/02の記事ですが、今でも十分役立つような気がします。ただ、当然すべてのトピックがカバーされているわけではないです。
ahamo
他2大キャリアや楽天だけでなく、MVNOまで吹っ飛ばすすさまじいプランが出てきましたね。
MVNOで8GB以上のデータ通信容量を持つプランの一覧をまとめている方がいました。
ドコモが20GBで2,980円で提供を開始してしまうと、以下のとおり、ほとんどの格安SIM事業者は割高になってしまいます。恐らくauやソフトバンクも追随するはずなので、格安SIM事業者のいくつかはサービスの継続がかなり難しくなってくるのではないでしょうかね。#ドコモ値下げ pic.twitter.com/DGQfimupri
— モバイル情報|モバイルトレンドラボ (@mobiletrendlab) 2020年12月3日