Magesh Ravi
Artist | Techie | Entrepreneur
Programming is a mental gym; your strength comes from the struggle.
AI is a powerful lever, but remember: the more the lever does the lifting, the weaker the muscle becomes.
Use AI to extend your reach, not to replace your strength.
Doom scrolling gives you that high every 10 seconds. You don’t get bored. You don’t get to the good part.
Boredom is good.
Boredom is good.
You get past the boredom, you find something good to do with your time - sports, art or something constructive.
Such things make you forget time while you’re at it. They give you a high AFTER you’ve completed it.
The runtime environment bridges these components into a cohesive whole. That's why developers often gain deeper insights by running the software in its intended environment than analysing each component in isolation.
To understand a software system, study its foundational elements:
Spent 5+ hours trying to figure out why my home server wouldn't connect to the internet.
Turns out my router reset all it's configurations including the subnet. So any connection that didn't rely on DHCP failed.
Also, there is a .dockerignore file that lets you ignore files/folders when building an image. Similar to .gitignore.
With BuildKit's secrets,
# create user
RUN --mount=type=secret,id=user_uid \
--mount=type=secret,id=user_gid \
GROUP_ID=$(cat /run/secrets/user_gid) \
USER_ID=$(cat /run/secrets/user_uid) \
# ...
Without BuildKit's secrets,
ARG USERNAME=webinative
ARG USER_UID=1000
ARG USER_GID=${USER_UID}
# create user
RUN groupadd --gid $USER_GID ${USERNAME} \
&& useradd --uid ${USER_UID} --gid ${USER_GID} -m ${USERNAME}