Cover image for August 6th, 2020: What did you learn this week?

August 6th, 2020: What did you learn this week?

nickytonline profile image Nick Taylor (he/him) ใƒป1 min read

Wow! First week of the August!

It's that time of the week again for the first time this year. So wonderful devs, what did you learn this week? It could be programming tips, career advice etc.

Processing data via an animated gif

Feel free to comment with what you learnt and/or reference your TIL post to give it some more exposure.


Summarize a concept that is new to you.

And remember, if something you learnt was a big win for you, then you know where to drop it as well.๐Ÿ‘‡๐Ÿ‘‡๐Ÿป๐Ÿ‘‡๐Ÿผ๐Ÿ‘‡๐Ÿฝ๐Ÿ‘‡๐Ÿพ๐Ÿ‘‡๐Ÿฟ

Actress in a film saying crushed it

Photo by JESHOOTS.COM on Unsplash

Posted on by:

nickytonline profile

Nick Taylor (he/him)


Senior software engineer at DEV/Forem. Caught the live coding bug on Twitch at livecoding.ca


markdown guide

I learned how to interact with spreadsheets programatically via the Google Sheets API, and now my GatsbyJS site has a simple, functional database in the cloud โ˜๏ธ.

Dunno what Iโ€™ll use it for yet, but hey, Iโ€™ve got a database ๐Ÿ˜„


Here's an idea I'm working on myself: Let a user connect theirs and use it to keep your "real" cloud database (e.g. Firebase Cloud Firestore, DynamoDB, FaunaDB) within free tier for as long as possible (or just more affordable in general) by offloading their old sales data (e.g. older than this month, per transaction, whatever) to their own Google Drive account.


I once built a simple jobs board with google sheet as the database and google forms as a way to collect data.

That's actually how I set up comments on my now-ancient personal site (static and built a long time ago with Foundation v5 and an old version of Assemble still based on grunt). I added an "approved" column to the Sheet not available in the form (a Handlebars partial which appended the page URL and submitted to Google Forms via AJAX), so I could moderate the comments in Google Sheets after getting an email of a new Google Forms submission.

It's so old that I don't think I ever got around to updating it after Google changed their CORS policy. Bloop.


Not something technical, but I learned, after spending almost a week blocked in a problem, that talking to someone more senior in the project could save a lot of time! And I also learned to documenting how things work, so future me, and people who find similar problems won't be stuck as well


I learned that Debian has an "alternatives" system. Is like a symlinks manager but for commands that are interchangeable in some way.

For example, I installed neovim and without doing anything I already have the commands vi and vim pointing to a neovim symlink. Nodejs also has one, it's called js, I can run a script like this js ./path-to-script.js. To see what commands have "alternatives" check the /etc/alternatives folder.

ls -l /etc/alternatives

And for more details read the manpage.

man update-alternatives

I actually learn how to use MutationObserver and IntersectionObserver, quite useful.


Learned some basic cryptography. Generating SSH Keys and GPG Keys.

Learned something annoying about flutter web.
You have to repeat your code 3 times and adjust the parameters to make your site truly dynamic (support mobile, tablet view and desktop view).

All mobile apps have a back buttons (<), if not, it's a menu

There aren't any comprehensive Flutter Game Development courses


Sounds like your learnings/frustations with Flutter would make for a great post Prince! ๐Ÿ˜‰

Stephen Colbert saying Awesome Sauce


Definitely going to write about that, thanks. I am mostly learning through code labs and cloning github repos to my machine.


I learned how XGBoost multi-class classification works.

Turns out that every n_classes tree (read estimator) is for that particular class. Neat way of keeping boosted regression tree leafs restricted to one value.

[ML] add multi:softmax|softprob XGBoost support #246

This commit adds support for XGBoost multi-class classification model transformations.

XGBoost handles multiclass classification by having n_classes * n_estimators trees. Then, every n_classes tree corresponds to their respective classes

Since Elasticsearch supports multi-valued leaves, we can transform the xgboost format by choosing the appropriate leaf value index given the tree id.

This commit also fixes a minor model transformation bug where if xgboost actually defined the feature_names instead of the default f1,...fn we would blow up.

closes github.com/elastic/eland/issues/242


It was one of the job requirements when I was considering working at DEV. "Must be able to crush it with killer gifs" ๐Ÿ˜‚

Actress in a film saying crushed it


learn how git works and made my first pull request


I learned how to create YAML files and deserialize them \o/ I also made a small blog post about the deserialization part:



I learned that I still have a lot to learn about serverless (on the heels of Cloudflare's latest Workers announcement), reinforcing my belief that I never want to touch a server again if I can help it (funny considering my last tech talk just last year was alluding to building containerized microservices around or instead of monoliths).


I learned how to send myself weekly emails for my fantasy football league using the Send Grid Java API, JSoup, and cron jobs. Code available here: github.com/SDiamante13/fantasy-foo...


Don't deploy on Friday ๐Ÿ˜ข๐Ÿ˜‚


There are a couple of things I learned this week, the first one is I learned how to lazy load modules in the angular. Second I learned how to lazy load images in the Angular Components. Third I learned how to add authentication to routes in Angular so that we can restrict access to specific pages for specific users.


I learned about dev-ops on AWS. How to do rolling and Blue-Green deployment.


This week I splitted the reusable code from tsParticles editor for create a new npm package: Object-GUI

It's a different challenge from particles, less creative but the UI/UX is everything in this case


This week was an adventure in figuring out how to spin separate non-blocking processes in a Rails app.

During our semi-regular company time to build fun stuff, I wanted to build a Facebook chatbot that generated banners with random color palettes and the text provided. Sounded easy enough, but the utility I wanted to build with, Ruby2D, opens up a new console window to make the image, which was crashing Rails every time.

Eventually, figured out how to integrate with Sidekiq to make it a separate asynchronous job, and that did the trick! Had never really done that before, so it was a fun learning adventure!



I learned about React router and completed porject from Tyler McGinnis's react course.
live site for project -> github-war-app.netlify.app/


Generics in Typescript!

Definitely shows me how I could use typescript more efficiently in the future.


const person: Sunny<Nice!> = new Person() ๐Ÿ˜‰

Jean-Luc Picard from Star Trek TNG saying Well done!


I learned how to be more energetic and emphatic while talking with other :p and from technical skills I learned a little bit more about react native :)


I've learnt about some browser APIs including Speech Synthesis and the Notification API as well as a bit about web/service workers.


I've learned a fair amount about data structures, algorithms, and approaching technical problems this week.


Everything about cryptocurrency connection
I use bitcoinjslib and bitcoin-core for connect to rpc
I think its not much, but i do my hardwork to leaening fastify prehandler with 4-5 validation๐Ÿคฆ๐Ÿคฆ๐Ÿคฆ๐Ÿคฆ