年の瀬だし2020年の技術スタックをまとめよう
https://gyazo.com/09ddd5d006d275996e8714fbbe776694
2020年に使った技術をまとめていく、大体上記の図の通りだがcommitしてないのもあったりする
この記事は自分の振り返りであり、メモ書きです
Language/Platform
TypeScript
JavaScript
Node.js
Python
作品を展示する機会があり、IoTっぽい事をしたかったので無理やり使った
Framework
Nuxt.js
Next.js/Vue.js/React.js
Express
簡単なWebAPIを作ったりした
Styling
Tailwind CSS
まだまだこれ一本って訳にはいかないが今後のCSSに時間をかけたくないのでよく使う
CSS
SCSS/SASS
API Layer
Firebase
GCP
Sheet API/Drive API
GASで作ったものをNode.jsでやりたかったので使った、苦労した覚え
Headless CMS
contentful
自作Blogブームに乗っかって使用
Bundler
ncc
痒いところに手が届かないが届かなくて良い時に使う
rollup
webpack
Parcel
Developer Experience
Editor
VSCode
Code Formatter
ESLint/Prettier/StyleLint
自作のルールプリセットをnpmjsにあげて使ってる
バージョン管理
Github
Testing
Jest
Cypress
BaaS
Firebase
Middleware/Infrastructure
Firebase Realtime Database
アプリケーションサーバー
Heroku
ホスティング
Firebase Hosting/Vercel/Netlify
CI/CD
Github Actions
その他
UI Design
Illustrator/Xd
自分の環境をAdobe製品が占めているので
補足
使う様になったのは2020年中頃で使い出してからはずっと使ってる
TypeScriptが産む秩序の効果は絶大で、屈しなければ誰でもある程度のクオリティのコードが書ける
これからも向き合っていきたい言語だし素のJavaScriptで書かれたものとはお近づきになりたくない
2020年後期はVueをv3.0で書きたい時以外はNuxtで書くことが多かった
スキルセットというか常識としてのReact/Nextを学んだりしたが、Vueの可読性の良さや日本における認知度、Nuxtの秩序と思想がとても好みで、Nuxtで書くのを許される環境にいるのでNuxtばかり書いている
この頃から一応テストを書くようには心がけてはいるが作法がわからん
Nuxt v3がなかなか来ないのが難点だが、今のv2.14^のスペックは凄まじいのでこれにVue.extend以上のTypeScript連携が来ると思うとワクワクする
上記の様に好みの問題から学習したレベルで止まってる
Reactを秩序の元に角にはNext.jsはぴったりだと思うし、ISRについてもNextはNuxtの痒いところに手が届かない問題を解決してくれるから利用しない手は無いのだろう
Vercelの囲い込みが正直気に入らないのでNext.jsはFBに作って貰いたかった
正直、今更素のReact/Vueで書く意味はほぼ無いと思っているので、
Reactを書きたい人はNext.js、Vueを書きたい人はNuxt.jsを書いていけば良いと思うんだ
Tailwindを使い出してから数値や色に悩む機会が減ったのがとても嬉しい
これを使うことによって、変な事をしなければ誰でも一定のアクセシビリティを得られるだろうしみんな使うべき
ただTailwindだけでスタイリングできないこともまだまだある(アニメーションやSafariのinput対応だったり)のでCSSを全く書かない未来は遠くもないが近くもないと思う
フロントエンドやるなら覚えといて損はないと思うけど
Vercelが出してるバンドルツールなのでこれからも期待できるツールなのだが如何せん痒いところに手が届かない
そういう場合に出てくるのがrollupなのだが地獄の様な依存プラグインの追加でPackage.jsonが汚れて泣きます
未来、nccが痒いところに手が届く様になったらrollupは少なくとも不要になるのかな?
Parcel
ミニマムな構築でフロントエンド やりたい時に使ってる
なんかncc/rollupの責務もできそうな空気あるけど
終わりに
地盤を固めようと言語理解を深めようと思った1年だったので、新しい言語にはあまり手を出さずにJS周りをガシガシ書いてた
個人的にやりたいことを追い求めるならPythonなんだけど、
誰にでも扱えるものを作りたいという気持ちがあるのでそこはJSがマッチしている
スキルセットを鑑みるにもっとバックエンドを学びたい機運
SQLもDBもふんわり知識しかないし、PHPに拒絶反応起こしたせいで知識が止まってるの
2021年は逃げていた技術を受け入れ、時にシバキながら学んで行こうと思います。