DEV Community

Cover image for Calming down and starting architectural topics again - wfh edition
Ferit πŸŒŸπŸ•Œ
Ferit πŸŒŸπŸ•Œ

Posted on

Calming down and starting architectural topics again - wfh edition

Thanks for reading! I'm writing about my remote work journey thanks to covid-19 forced me to πŸ˜‚ I'm writing now almost a month now (Day 33/34)

So after doing all these things for our Apps Team, being in the Bugstream, tackling some big Pull-Requests, challenging Feature Design and helping out on other things, I'm definitely exhausted.

So I'm taking my time to read, reduce my list of open Tabs(80+) and learn. At the same time, I'm researching how much I could decouple our release of Chrome Extension to the Chrome Web Store.

There are two possible solutions:

Use a CDN and Host the files on a Bucket

The Chrome application is nothing else than a basic skeleton and loader. The contentscript and backgroundscript are hosted on our S3 Bucket and we regularly deploy via our internal CI/CD Tool. This way we would be fully autonomous from the manual google release process.

This would allow us to start work with the Chrome Extension like with any other application. No fear to deploy and break things but rather doing it and if something happens, quickly rollback.

Risk: I'm not fully sure if Google Policies allow this. You can define specific TLD's and load javascript from there. I have to dive deeper into Chrome Documentations here.

Hybrid solution

In 2019 another team refactored some parts of the rather outdated Chrome Extension codebase. The outcome is an already existing webpage version of it. It is the same codebase we use to release and upload to the Chrome Store.

Due to some open product questions and the need to inject into our Zalando Shop, this approach means, we would keep 10-20% of the logic as a "Native" Chrome Extension and the rest is loaded via an <iframe>.

Risk: Still Google Guidelines. Yet, this approach should be a better compromise. We would be able to deploy and rollback most of the part and would only release a new Chrome version when we change the DOM Injection.

The first solution seems the fastest and simplest, yet has a higher risk of rejection. The second approach for me looks like the a good compromise getting us closer to control deployments, free us up from manual releases (almost) completely.

Personal

The last two nights I experience that thanks to our son, I'm not getting enough sleep and it reduces productivity. In my case, it definitely makes it hard for me to focus. The combination of Ramadan and less sleep never went well πŸ˜„

Yet I'm used to the 16h+ of no food, no water. I was even used to 4-5h of sleep for more than a year (thanks son! πŸ˜›). Yet I'm back to 6-7h since 2020 started and until recently.

The reason with our son is most likely his last molars are breaking out and this pain makes him sleep restless. Also during day time, it was hard to calm him or understand why he is crying / shouting.

Also, my wife seems to be working in a "system relevant" job (pharma) and we will try bringing our kids to kindergarten next week. They need to socialize and no matter how I might be afraid of Covid-19, the data for Berlin (Germany) isn't looking that bad.

And about Covid-19:

I'm now in a phase not caring much about it. It is a pandemic, it is more dangerous than the flu, yet it believe goverments will slowly get back to some amount of "normality". Yes, some industry will not be back on the short-term, maybe even for a year (anything around tourism).

Take care!

Cheers,

Ferit

Discussion (0)