What have you learnt in the month of Sept?
Putting together your learning habit even when you are travelling can be intense. Its intentional but rewarding when you have a habit that supports your personal growth.
In this article, we will put together more articles on technical and general use-cases
Technical
Learning from a startup before you start one
Leon your open source personal assistant
State Machines
State Machine Libraries
When do you use a state machine?
- When distinguished states exists in the application
- A specific state can lead to other states, or leads to an end of a process flow.
- Useful if you can define a clear number of states and events that will trigger transition to them.
- Not encountered when building complex application
- State machine is the right tool when you have actions required to be taken in sequential order.
https://thealgorithmicbridge.substack.com/p/stable-diffusion-is-the-most-important
Why does Arrays start with index 0
https://buttondown.email/hillelwayne/archive/why-do-arrays-start-at-0/
Never use database as a Message Queue
Why should your website be smaller than 14kb
TCP’s slow start algorithm
TCP uses is a way of using Internet Protocol (IP) to send packets of data reliably - TCP/IP
When a browser request for a website, the browser makes a request using HTTP.
HTTP is built on top of TCP and a single HTTP request is usually made up of many TCP packets
TCP is an extension of IP that allows browser and web servers to tell each other which packet have successfully arrived.
TCP has a request/response structure. THis is called an akwonledgement ACK
TCP slow start is an algorithm used by servers to find out how many packets can be sent at a time.
Your server usually do not know how much data the connection can handle, so it starts by sending you a small and safe amount of data - usually 10 TCP packets.
If packets reached site successfully, computer sends back an acknowledgement (ACK), then the server sends more dta bakc, but this time double the amount of packets.
Once it stops receiving an ack, the server will contiue to send packets but at a slower rate.
This is the gist of TCP slow start.
max size of TCP packet is 1500 bytes, it comes from ethernet standard. Each TCP packet uses 40 bytes in its header - 16 bytes for IP and additional 24 bytes for TCP.
That leaves 1460 bytes per TCP packet, and sending 10 packets => 10 x 1460 = 14600 bytes or roughly 14kb.
Using 1 round trip of 10 TCP packets, your website will be loaded.
Crawler Library
Got to give it a try to know how good it really is
maps.earth
Open source map feature
Knowing how to work around snowflake’s hacks that gets you to pay more
https://github.com/HackerNews/API
https://badshah.io/guardduty-good-bad-ugly/
What is good about guardduty AWS?
Pro
- Easy to use
- Important services and detects good number of issues
- No explicit setup of data sources
- seamless integration with other AWS services
- No extra infra provisioning
- Supports custom trusted IP
Cons
- Not flexible
- Have bypasses (as with many other threat detection services)
What are threat detection
- Configuration
- Modeling (anomalies)
- Indicators
- Behavioural analytics
Reference Sans
https://samgerstenzang.substack.com/p/operating-well-what-i-learned-at
https://www.linkedin.com/pulse/why-products-dont-succeed-7-biases-product-teams-shreyas-doshi/
Engineering levels at SoundCloud
Dev: One capability, many customers
Delta: One customer, many capabilities
Desire: do work once and the rest of the work are done on behalf.
Desire: Reporting is done on a single page
General
- Public messages are not directed at anyone and thus do not need any specific members attention
- You get the team up to speed efficiently
https://perell.com/essay/the-paradox-of-ambition/
The most painful lego bricks to avoid
Heatwaves with temperatures over 40deg celcius.
Indus river is Pakistan’s largest river that runs the length of the country from north to south. Feeding towns, cities and large swathes of agricultural land.
Some issues faced are:
- ineffective early-warning system for floods,
- poor disaster management
- political instability
- unregulated urban development
how much should startup founder share with employees
Avoid generating too high expectations
Provide context
Think preemptively
Always give space for clearing doubts
Value of owning more books than you can read
Reminder to self that there are a lot more things we do not yet know.
How to design a referral Program
Get as much impression as possible
Put it as part of a main flow
Don’t make it look like ads
Uber’s holidizing a referral campaign with a special campaign for a holiday season.
Getting new users to refer their friends. Keep it close to the onboarding workflow.
- Contradicts school of thought which we get users to experience value first.
- Probability
- Mathematically, while your new users have yet to churn, you have more eyeballs
- New users generally hav emore friends who havent yet used the product, because they are new themselves.
Consider intrinsic vs extrinsic values.
Generally its to prioritize new users and thus make your rewards as concrete as possible. Dollar is usually clear to any users.
Thinking of viral feature vs referral programs. Different solutions to similar objectives: sharing the product with their friends. Investing in more meaningful, viral features will create evergreen value.
Referral programs will kickstart your virality but you have to focus on creating a good valuable product, and in that, your delighted users will delightfully invite their friends.
mBuilding muscles starts with a daily habit
Happiness and unhappiness are 2 diff scales
https://trolololo.xyz/programming-discussions
Publishing your own book in substack
https://tedgioia.substack.com/p/10-reasons-why-im-publishing-my-next