Learning Log #3

List of interesting news, resources or issues and their solutions I have been lately dealing with.

  • This article is part of my Learning in public series - it's a quest to be as open as possible. But there's also kind of a counterpart to such spreading movement, that has probably always been a part of the World Wide Web - dark web. Beware, not The Dark Web, but The Real Dark Web - rarely acknowledged majority of web developers.
  • I have recently revealed my first browser extension, which enhances Google Calendar. To work it needs to fetch calendar data from Google API. There is a neverending (okay, several steps...) approval process one has to undergo to get API access. To make the extension work also under Firefox I had to specifically request support to whitelist allizom.com as a verified domain. It just cannot be simpler, everything for the user's security...
  • Is your project compiled from TypeScript? Are you too strict? If so, you may like --strict compiler option. It's a shorthand for enabling all (currently 7) strict type-checking options. You can always turn off individual options if needed.
  • Some time ago I was struggling with TypeScript generic types and decided to reach for help from smarter guys on Stack Overflow. I received an answer, thanks! The solution is based on very specific conditional type which I was not familiar with back then,... and I'm probably still not. But, there is a one truly helpful talk by Gregor Woiwode describing the matter of this TypeScript magic. I really recommend you to watch if you want to understand it better.
  • How to make your application faster? Firstly, you may want to know how does it behave under a slow connection. To get an idea of what is it like, developers at Facebook have 2G Tuesdays - simulating slow connection for the whole one day. This is how the performance should be tested! From the talk New adventures in front-end by Vitaly Friedman.
  • How to make your application more accessible? What about to include No mouse day into your development process?

That's enough for now, see you next time!

Roman