Kittisak Ma (@9haroon_dev) header
Kittisak Ma (@9haroon_dev) profile picture

Experienced married man with a passion for coding and over 10 years in web development. Love fixing bugs, helping coders, and practicing English. Ready to share

Saphan Sung, Bangkok
Joined May 2023
Photo by Kittisak Ma (@9haroon_dev)Photo by Kittisak Ma (@9haroon_dev)Photo by Kittisak Ma (@9haroon_dev)Photo by Kittisak Ma (@9haroon_dev)
Bun v1.1.18 ships on Tuesday.
1
2
67
10,205
Kittisak Ma retweeted
What is the best way to learn SQL? In 1986, SQL (Structured Query Language) became a standard. Over the next 40 years, it became the dominant language for relational database management systems. Reading the latest standard (ANSI SQL 2016) can be time-consuming. How can I learn it? There are 5 components of the SQL language: - DDL: data definition language, such as CREATE, ALTER, DROP - DQL: data query language, such as SELECT - DML: data manipulation language, such as INSERT, UPDATE, DELETE - DCL: data control language, such as GRANT, REVOKE - TCL: transaction control language, such as COMMIT, ROLLBACK For a backend engineer, you may need to know most of it. As a data analyst, you may need to have a good understanding of DQL. Select the topics that are most relevant to you. Over to you: What does this SQL statement do in PostgreSQL: “select payload->ids->0 from events”? -- Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): bit.ly/3KCnWXq
3
221
1
870
56,258
Kittisak Ma retweeted
15-year-olds earn more than $5,000 a month on YouTube using AI alone and without showing their face. Here I tell you, you can do it yourself:
82
664
14
3,029
873,869
Kittisak Ma retweeted
What is this 🤔👇🏻
613
141
79
3,469
764,093
Why I don't use Scrum to manage my Remote Teams? TL;DR: It adds at least 8 hours of meetings per Sprint. That's 2 full days of lost productivity, per team member, per month! This is what I do instead:
19
102
11
941
203,517
Kittisak Ma retweeted
⚡️Vercel v0 is now open to everyone. And It's incredible! You can generate UI with texts or images in matter of seconds. And people are already finding amazing ways to use it. 6 examples:
36
316
36
3,133
1,254,628
10 websites you've probably never heard about:
15
49
2
197
111,329
Kittisak Ma retweeted
Updates on Berryjam Cloud 🔥: ✨Redesigned dashboard to provide more components insights and usage analysis ✨Investigate on most complex and bulky components ✨Identify your top contributors and their git commits ✨View git commit history for each component #vuejs #nuxtjs
1
59
Kittisak Ma retweeted
Top 12 Tips for API Security - Use HTTPS - Use OAuth2 - Use WebAuthn - Use Leveled API Keys - Authorization - Rate Limiting - API Versioning - Whitelisting - Check OWASP API Security Risks - Use API Gateway - Error Handling - Input Validation -- Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): bit.ly/3KCnWXq
13
804
4
2,859
279,870
Kittisak Ma retweeted
Readability counts 🧐 that's why building components are important to create reusable, shorter and easy to read codes⚡️ #codingquotes #programming
2
4
162
Kittisak Ma retweeted
Explaining JSON Web Token (JWT) to a 10 year old Kid. Imagine you have a special box called a JWT. Inside this box, there are three parts: a header, a payload, and a signature. The header is like the label on the outside of the box. It tells us what type of box it is and how it's secured. It's usually written in a format called JSON, which is just a way to organize information using curly braces { } and colons : . The payload is like the actual message or information you want to send. It could be your name, age, or any other data you want to share. It's also written in JSON format, so it's easy to understand and work with. Now, the signature is what makes the JWT secure. It's like a special seal that only the sender knows how to create. The signature is created using a secret code, kind of like a password. This signature ensures that nobody can tamper with the contents of the JWT without the sender knowing about it. When you want to send the JWT to a server, you put the header, payload, and signature inside the box. Then you send it over to the server. The server can easily read the header and payload to understand who you are and what you want to do. Over to you: When should we use JWT for authentication? What are some other authentication methods? – Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): bit.ly/3KCnWXq
45
954
19
5,043
724,691
Kittisak Ma retweeted
5 GitHub repositories you can contribute to in Hacktoberfest (related to web development) Give them a star.
13
99
1
624
189,243
Kittisak Ma retweeted
Which icon do you prefer for "copy"?
277
27
34
1,414
251,320
Kittisak Ma retweeted
Faceless YouTube channels are one of the best ways to make money ChatGPT's Code Interpreter just made it insanely easy to start Here's how to make faceless YouTube videos with AI & make $20,000/m
85
385
12
1,457
525,525
Kittisak Ma retweeted
After a long time, I've created a new pen to try out the View Transitions feature and this is really cool! 🚀🚀 @CodePen codepen.io/TurkAysenur/full/…
13
90
4
799
83,859
Replacement for Node.js Bun 1.0 🥯 explained. A thread 🧵 ↓
67
320
40
1,945
479,021
Kittisak Ma retweeted
Big companies offering free online AI courses. No more Fees or Payments. Here are 5 FREE courses on AI you don't want to miss in 2023:
32
226
8
809
293,864
Kittisak Ma retweeted
How is data transmitted between applications? The diagram below shows how a server sends data to another server. Assume a chat application running in the user space sends out a chat message. The message is sent to the send buffer in the kernel space. The data then goes through the network stack and is wrapped with a TCP header, an IP header, and a MAC header. The data also goes through qdisc (Queueing Disciplines) for flow control. Then the data is sent to the NIC (Network Interface Card) via a ring buffer. The data is sent to the internet via NIC. After many hops among routers and switches, the data arrives at the NIC of the receiving server. The NIC of the receiving server puts the data in the ring buffer and sends a hard interrupt to the CPU. The CPU sends a soft interrupt so that ksoftirqd receives data from the ring buffer. Then the data is unwrapped through the data link layer, network layer and transport layer. Eventually, the data (chat message) is copied to the user space and reaches the chat application on the receiving side. Over to you: What happens when the ring buffer is full? Will it lose packets? – Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): bit.ly/3KCnWXq
13
254
2
1,126
157,176
Kittisak Ma retweeted
Learning CSS Flexbox is a must. But, It takes time to lnear without proper guides. Here I've created The Ultimate Flexbox cheatsheet for you. Normally It's $29 but for 24h, it's 100% FREE! To get it, just: 1. Like & Reply "CSS" 2. Retweet (much appreciated) 3. Follow me (so that I can DM)
346
198
8
406
63,180
Kittisak Ma retweeted
Do you believe that Google, Meta, Uber, Twitter, and Airbnb put almost all of their code in one repository? This practice is called a monorepo. Monorepo vs. Microrepo. Which is the best? Why do different companies choose different options? Monorepo isn't new; Linux and Windows were both created using Monorepo. To improve scalability and build speed, Google developed its internal dedicated toolchain to scale it faster and strict coding quality standards to keep it consistent. Amazon and Netflix are major ambassadors of the Microservice philosophy. This approach naturally separates the service code into separate repositories. It scales faster but can lead to governance pain points later on. Within Monorepo, each service is a folder, and every folder has a BUILD config and OWNERS permission control. Every service member is responsible for their own folder. On the other hand, in Microrepo, each service is responsible for its repository, with the build config and permissions typically set for the entire repository. In Monorepo, dependencies are shared across the entire codebase regardless of your business, so when there's a version upgrade, every codebase upgrades their version. In Microrepo, dependencies are controlled within each repository. Businesses choose when to upgrade their versions based on their own schedules. Monorepo has a standard for check-ins. Google's code review process is famously known for setting a high bar, ensuring a coherent quality standard for Monorepo, regardless of the business. Microrepo can either set their own standard or adopt a shared standard by incorporating best practices. It can scale faster for business, but the code quality might be a bit different. Google engineers built Bazel, and Meta built Buck. There are other open-source tools available, including Nix, Lerna, and others. Over the years, Microrepo has had more supported tools, including Maven and Gradle for Java, NPM for NodeJS, and CMake for C/C++, among others. Over to you: Which option do you think is better? Which code repository strategy does your company use? -- Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): bit.ly/3KCnWXq
44
442
9
2,009
346,090