Skip to content

We constantly learn new things. This is a repo to share my learnings everyday.

Notifications You must be signed in to change notification settings

khanhicetea/today-i-learned

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Today I Learned

We constantly learn new things. This is a repo to share those learnings. TILs are short Markdown documents (a few sentences + example code) explaining concepts, bits of syntax, commands, or tips we've recently learned.

Today-I-Learned (TIL) is inspired by Thoughbot, TIL is a repository for everyone to share what we have learn today.

This repo has a tool that help you to manage and write down what you learned in scientific way.

What I learned

Table of Contents πŸ‘‡
πŸ†• Top 5 recent learning
Using Curl to check downtime and ssl cert expiration [bash] 2024-08-10
PHP memory allocation when passing arguments into function [php] 2024-08-06
Detect ViteHMR dev server is running [js] 2024-08-04
Script tags in remote HTML request won't run when using innerHTML [javascript] 2024-05-06
Cronjob monitoring web endpoint and alert to Telegram [devops] 2024-04-12
πŸ“š ansible [ 1 articles ]
1. Run shell command in all hosts 2019-02-18
πŸ“š apps-script [ 1 articles ]
2. Getting database from data range to array of enum objects 2023-09-03
πŸ“š bash [ 5 articles ]
3. Simple HTTP server function helper 2017-10-05
4. Internal Variables in BASH 2018-08-06
5. Curl extract info from verbose mode 2018-08-07
6. Telnet server through SSL or TLS 2018-11-13
7. Using Curl to check downtime and ssl cert expiration 2024-08-10
πŸ“š chrome-dev [ 1 articles ]
8. Debugging Chrome extension 2015-11-30
πŸ“š crypto [ 1 articles ]
9. Encrypt and decrypt file using openssl command line 2018-05-17
πŸ“š css [ 2 articles ]
10. [Bug] Input lost focus after typing 1 character in Safari Browser 2018-11-01
11. CSS Selector element has an attribute which contains some string 2023-08-21
πŸ“š database [ 4 articles ]
12. Basics about sqlite command line tool 2017-04-25
13. Indexes on multiple columns 2017-10-13
14. Use temporarily data from another database in SQLite 2018-05-02
15. SQL Wildcard Characters 2018-07-26
πŸ“š devops [ 6 articles ]
16. Checking forced push conflicts on source code in auto testing 2017-05-19
17. Free sandbox server for development 2017-08-04
18. Using netcat to wait a TCP service 2017-10-13
19. Ansible running host pattern 2018-01-22
20. Improve apt package manager speed by changing source list mirrors 2019-04-03
21. Cronjob monitoring web endpoint and alert to Telegram 2024-04-12
πŸ“š docker [ 9 articles ]
22. Changing channel from alpha to stable will remove ALL DATA 2017-05-24
23. Reducing docker image the right way 2017-05-24
24. Reduce init time MySQL docker image 2017-11-22
25. Build lightweight image by using multistage 2018-02-23
26. SSH to docker host in Docker for Mac 2018-12-03
27. Can not run downloaded binary inside alpine linux because of missing shared libs 2019-02-02
28. Run container processes as non-root user 2019-03-30
29. Using extra hosts to add custom ip of hostnames to Docker container 2022-03-16
30. Becareful on using port mapping of Docker in Development 2022-03-17
πŸ“š elasticsearch [ 1 articles ]
31. Basics of Elasticsearch 2018-01-25
πŸ“š git [ 5 articles ]
32. Resolving conflict like a boss 2017-06-13
33. using git hooks to improve working flow 2017-11-22
34. Fastly conflict detector script 2017-11-27
35. Put .git data outside project directory 2018-05-29
36. Running git command using another ssh key 2018-06-26
πŸ“š google-sheet [ 1 articles ]
37. Insert fastly current date time to cell in Google Spreadsheets 2021-03-09
πŸ“š hostingpanel [ 1 articles ]
38. DirectAdmin change document root to public directory 2022-03-09
πŸ“š http [ 4 articles ]
39. ab failed responses 2017-04-21
40. Create cross-platform downloading app URL 2018-01-03
41. Reuse cookies between multi requests in Curl tool 2018-05-22
42. HTTP Status Codes : 301+302 vs 307+308 2023-08-20
πŸ“š ios [ 2 articles ]
43. Flush DNS cache on iOS device 2018-03-14
44. Install CA root certificate on iOS device 2018-03-14
πŸ“š java [ 1 articles ]
45. Runing old java applets on brower 2017-08-06
πŸ“š javascript [ 12 articles ]
46. Eval function and with block 2017-08-10
47. Scope and Closure 2017-08-10
48. Debug js code using console.trace 2018-01-07
49. Define property of an object in hacking way 2018-01-07
50. Tracking changes of cookie on webpage 2018-01-10
51. Trigger event after setting val in jQuery 2018-01-14
52. Detect HTTP Response 304 Status Code in AJAX 2018-10-25
53. View all parameters passed to callback function without reading docs 2018-10-30
54. View function source in developer tool console 2018-11-21
55. Critical notice of string DOM manipulation using jQuery 2019-01-10
56. JSON Parse is faster than Javascript Object declaration 2019-11-23
57. Script tags in remote HTML request won't run when using innerHTML 2024-05-06
πŸ“š js [ 5 articles ]
58. Array group by function in JS 2023-08-25
59. ES6 Module import in client browsers 2023-08-29
60. JS DOM event deepdive using SvelteJS demo 2023-09-01
61. Be careful when using built-in btoa from window to decode base64 2023-11-29
62. Detect ViteHMR dev server is running 2024-08-04
πŸ“š laravel [ 2 articles ]
63. Split a Collection items into 2 groups using 1 boolean function 2023-11-25
64. Generate routing stubs for IDEs 2024-02-24
πŸ“š linux [ 5 articles ]
65. Remap Capslock to Control key 2017-08-08
66. Send ENTER key to kernel 2017-09-27
67. Using watch command to tracking changes in period time 2017-10-20
68. Disable IPv6 to stop getting stuck in network 2018-01-16
69. Make cron job runs every seconds 2018-11-15
πŸ“š mac-osx [ 2 articles ]
70. Shortcut keyboard improve productivity 2015-11-30
71. Warning on MacOS upgrade major system 2023-10-13
πŸ“š mysql [ 8 articles ]
72. Index is useless when use function on indexed field 2015-12-01
73. String problems can cause logical bugs in application 2017-02-17
74. UNION vs UNION ALL 2017-02-23
75. Mysql dumping only table structure 2017-05-17
76. Mycli : a new good cli MySql Client 2017-09-01
77. Sleeping connections in MySQL 2018-01-04
78. The safest way to reset root password of MySQL Server 2018-08-25
79. Export MySQL data by specified query to CSV file 2019-03-12
πŸ“š nature [ 1 articles ]
80. TαΊ‘i sao biển xanh lαΊ‘i mαΊ·n ? :lol: 2018-01-14
πŸ“š networking [ 6 articles ]
81. TCP FIN timeout 2017-09-07
82. How SMTP works 2017-10-04
83. Set up simple rate limiting on specified port using UFW 2018-01-16
84. List opening ports or listening UNIX sockets 2018-02-21
85. Setup wildcard domains .test for development in MacOS 2018-04-24
86. Use NGINX as a TCP,UDP load balancer 2019-04-03
πŸ“š php [ 14 articles ]
87. Eloquent Many-to-Many Relationship 2015-12-02
88. Run built-in server via Docker 2015-12-04
89. F-cking stupid limit of input vars 2016-03-08
90. Using VarDumper in PHPUnit 2017-02-23
91. Persistent connection to MySQL 2017-02-28
92. realpath function 2017-08-06
93. try, catch and finally in PHP 2018-05-04
94. Never autostart XDebug in cli environment 2018-05-07
95. Getting back Whoops error pages in Laravel 9 2022-03-13
96. Minimize Google PHP SDK before deploying on production 2022-03-14
97. Laravel run scheduled command within parent environment 2022-03-15
98. Cache storage utils using redis server 2023-10-08
99. Transform array to object shorthand 2023-12-08
100. PHP memory allocation when passing arguments into function 2024-08-06
πŸ“š programming [ 1 articles ]
101. Get random number from computer 2018-05-14
πŸ“š python [ 7 articles ]
102. String Format Unicode params 2015-12-01
103. Reference assign object variable 2015-12-04
104. HTTP2 supported for python requests library 2017-08-04
105. Exporting environment variables on virtual env activate 2018-04-30
106. Do not use mutable objects as default parameters 2018-07-24
107. Context Managers in Python 2018-07-24
108. Setter and getter behavior of class property in Python3 2018-07-30
πŸ“š quote [ 1 articles ]
109. Random quote 23 Feb 2017 2017-02-23
πŸ“š redis [ 1 articles ]
110. Transaction style in Redis 2018-01-31
πŸ“š svelte [ 2 articles ]
111. SvelteJS : Reactivity via variable assignment 2023-08-28
112. Reactive statement explicit dependencies like React useEffect 2023-11-12
πŸ“š swift [ 1 articles ]
113. XCode automatic format code on build time 2024-02-28
πŸ“š sysadmin [ 34 articles ]
114. FTP via curl tool 2015-12-03
115. View real-time logs using websocketd 2015-12-04
116. Commands 2015-12-30
117. Bash shell shortcuts 2016-03-26
118. Stats your top-10 frequently commands 2016-03-26
119. Compressing and Extracting files with rar in Linux 2017-05-17
120. Grant user to use sudo without password 2017-05-18
121. wget Output flag 2017-05-19
122. Using BSD find util to find and exec command on file and folder 2017-05-22
123. zcat : decompressing pipe tool 2017-05-22
124. Gearman bash worker and client 2017-06-15
125. Cleaning up old linux kernels 2017-08-06
126. Create SSH tunnel manually 2017-09-01
127. Enable reverse proxy in CentOS 2017-09-01
128. Ansible playbook : skip to task 2017-09-05
129. Grep : find a string in folder 2017-09-05
130. Lock and unlock a user password 2017-09-07
131. Generate dhparam file faster 2017-09-07
132. Blocking specified country to prevent from DDOS 2017-09-25
133. BASH exiting on first error 2017-09-26
134. BASH return a value in function 2017-09-26
135. BASH tracing commands 2017-09-27
136. TIME command output meaning 2017-10-04
137. Using netcat as tiny TCP debug tool 2017-10-07
138. Getting your external IP 2017-11-24
139. Use journalctl to check system logs 2018-01-22
140. Prevent source hacking from .git directory exposing 2018-03-01
141. Cut file content from line to line 2018-03-25
142. Prepend line number to file 2018-03-25
143. Create a sequence of numbers 2018-03-25
144. Send a file through networking via netcat 2018-04-10
145. Create tiny chat channel via netcat 2018-04-10
146. View DNS history of a domain 2018-05-08
147. Curl override Name Resolution with specific IP address 2018-08-18
πŸ“š tools [ 2 articles ]
148. Base 64 encode and decode builtin tool 2017-04-21
149. Zip compressing list of files 2017-09-25
πŸ“š varnish [ 1 articles ]
150. Check vcl file syntax before restarting 2018-01-31
πŸ“š vim [ 2 articles ]
151. Using mark to bookmark checkpoints in files 2018-01-30
152. Convert tabs to spaces 2018-02-21
πŸ“š web [ 8 articles ]
153. Cloudflare Error 522 Connection Time out 2017-05-18
154. Ping Google to crawl updated content 2017-08-08
155. Using web proxy to bypass firewalls 2017-12-07
156. HSTS rule in browser 2018-01-03
157. Bypass CORS by using JSONP callback 2018-01-08
158. Sending Cookie in AJAX CORs request 2018-03-01
159. Can not get real IP address from Load Balancer SSL Passthrough 2019-03-14
160. Smallest inline dummy image in HTML 2024-01-15

Instruction

  • Step 1: Fork this repo (blank-repo with only tool and readme file).
  • Step 2: Start writting down what you learned in everyday.
    • Create a topic by:

      ./til <CATEGORY> <SUBJECT> [EDITOR]
      • Ex:
      ./til bash "Bash Conditional Expression" vim
      • If you tired of typing the quote mark:
      ./til bash Bash-Conditional-Expression
      ./til bash Bash=Conditional=Expression

      DO NOT mix the - and = together!

    • It will create 1 file whose name which is the SUBJECT in lower case: bash/160510-bash-conditional-expression.md.

    • Write it! Save it!

  • Step 3: Commit what you learned today by ./til commit. After that, if you want to push it to repository, just Enter

License

Β© 2018 khanhicetea. Distributed under the Creative Commons Attribution License.

About

We constantly learn new things. This is a repo to share my learnings everyday.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published