Pierre Guilbert Blog
Pierre Guilbert Blog main goal is to share knowledge and to catalog good ideas and practices so it may stand as a reference. It is also a place to share latest thoughts gathered on the internet.
Good practices
- Why 12factor is still the best thing around?
- How to setup a smart linter strategy with vue (prettier/eslint)
- Why you should use vuepress for documentation
- Why you should at least try dbml and entity relationship diagrams
- How to write a proper commit message ? #linter #commit-lint
- Automatic release messsages base on standard-version/commitlint
- i18n naming convention and why you should set them up?
- accessibility or a11y
- values: e.g https://about.gitlab.com/handbook/values/
- decision making:
- zeromq: -
- gitlab: https://about.gitlab.com/handbook/leadership/making-decisions/
- w3c
- rfc etc
- from full-time on site to full-time remote
- white paper gitlab: https://about.gitlab.com/company/culture/all-remote/guide/
- zappier: https://go.zapier.com/suddenly-remote-ebook/pdf/
GIT
- How to use several git users
- (gitlab/github work+home)
- git config and setup
- Why you should not use gitflow
- Why you should use git --fixup / git --amend
- How to do an interactive rebase ?
Tests
- What to tests and what not to tests
- Why you should use cypress image diffing?
- How to use cypress image diffing -> locally inside docker to avoid cross OS problems
- How to really tests for performance in the browser?
- Why you should tests for performance
Fonts
- Why and when to use svg or fonts
Vue
- Why you're not using v-model properly with your forms? #vuejs (localmodel setter)
- Why and How to create complex svg with vue
- What's really a scaffolding template for vueJs ?
- Why you should propably not pass function to props #vuejs
- How to generate your vue-store from the state based on convention #vuejs
HTML
- How to improve your website with defer/preload and what does it really do?
- How to improve your website with efficient caching methods (http header)
- iframe post/publish logic to have the scrollHeight properly set
Javascript/Typescript
- Do you really need to use
underscore
library or lodash as people call it
CSS/SCSS
- Why you should use css variable instead of scss variables
- A small example of a dynamic grid-layout vs flex-layout
Databases
- Database modeling and Mongo
- Why mongoose is probably not helping you
- How does mongoDB indexes work
- How to store a graph and write queries for MongoDb
- Is neo4j the solution? let's test it
OPS
- Why you should not serve static files with python or express
- How to improve your speed (dns fetching/tls handshake / geo-distribution/ route)
- When (not) to use a server-side generated website
- How to host your own page on your rapsberry ? #blog
- Why use an old mac mini to replace your raspberry 2 #blog
- When you should (not) use analytics on your blog (gtm/ga #blog)
- Why and how to write your own CI/CD pipeline #blog
- Why you should (not) setup your own email server?
- Is it really worth it to secure your network behind a vpn?
OPS 2
- Why you should secure your gate! #ssh
- Why you should multiplex with tmux / multiplexing
- Terminal speed and how to measure it ? Why is it important ?
- Emacs or Vim or Nano ?
- How to avoid having your logs filling all the space ?
- How to kill properly a process ?
- How to use the terminal to check what's taking so much space?
OPS 3
- How to use globing in regexp in you nginx routes
- Do I need to use kubernetes? (in fact you need baremetal sometime)
- How does kubernetes really work?
- Alpine or Debian ?
- Create an automated build script for pierreguilbert.com
- install debian on macosx ? is it possible ? yes
- create mac os bootable key Catalina
- create an ubuntu bootable key for mac mini
- install ubuntu on remote
Miscelenous
How to run a simple app build as a microservice (multiple frontend/ multiple backend)
How to generate code that generate code using jinja2
Why you should generate several title for your blog posts
Why you should write your own graph library in javascript