Week 32 - 2023
The weeknote for 8/7 - 8/13.
Tech
Semver
-
While we were reviewing a PR to
semver
module of Deno standard library, we found that a semver like1.2.3-00
is invalid. Or also thing like1.2.3-ubuntu20.04
is invalid. The part after the first hyphen (and before the first plus sign) is called 'pre-release' in the semver spec, and pre-release is parsed as the dot separated list of identifiers. The problem is that 'the identifier' here is either alphanumeric identifier or numeric identifier. Alphanumeric identifier needs to include at least one non-numeric character. Numeric identifier can't have leading '0's. As a result of these 2 definitions (alphanumeric ids and numeric ids), the string like '04' is not an alphanumeric, nor numeric. As a result1.2.3-00
is invalid because pre-release part '00' is an invalid identifier. Also1.2.3-ubuntu20.04
is invalid because the pre-release isubutntu20.04
and its parsed as["ubuntu20", "04"]
and04
part is invalid because it's numeric with a leading '0'.Because of this observation, the PR was found invalid as a fix because it breaks the spec, but we also thought this rule is very confusing.
X
- X started sharing the ad revenue with the users with higher impressions. I think this is wrong move as it strongly incentivize the users to engage in a certain specific way, and that way is not appropriate for a social network.
Nx
- Researched a bit about Nx this week. It looked like a monorepo tool for enterprise teams that include many levels of developers. Nx wraps everything such as Next.js, ESLint, Vite, Jest, etc. You probably don't need to Nx if you can configure all of those tools by yourself. Adopting Nx means you can only use features of those tools when Nx supports it. So using Nx could also have disadvantage if you can use them without Nx. Nx looks like supporting wheels for teams incapable of starting Node.js projects from scratch. I probably will never use Nx in the future for my own porject, but if I'm in charge of technical aspect of number of frontend teams with unknown levels of developers, I probably recommend some of them should use Nx especially when they are not sure how to start the proejct.
mixpanel
-
I used mixpanel for the first time this week. First it looked a bit difficult to understand how to use, but after looked into the examples that my co-workers had created before, it suddenly looked extremely useful tool. This is analytics tool with extreme efficiency, enough flexibility, and very good UIs.
I've seen this kind of tool before in many companies, but mixpanel looks the best among it. Its UIs knows what we usually need to calculate and visualize. We don't need to build complex SQLs to visualize, but mixpanel suggests simple operations on data, and we can just follow those instructions, and we have what we need to see!
I guess the creators of this service have huge amount of experience in data analytics in many companies.
Life
Starbucks
-
This summer's special offering from Starbucks Japan is the watermelon flappucino. It's very good!
Post by @kt3kView on Threads