π Today I learned
π Today I learned
π Today I Learned
π Today I Learned - Sharing and documenting the things I learn on a daily basis. I share tiny snippets of code here which too small for a blog post but fit here. These are tiny things which make a big difference. Over the time they are lost and documenting them along the way would be beneficial for everyone. Many a times, I also come back to my til, because all the information is ordered and easy to access. Contains a cat gif, because, cats make people happy. Scroll to the bottom, to see the cat gif. πΈ
π For a steady stream of TILs and my other blog posts, checkout my website arshadmehmood.com. To read these tils in a nice, beautiful looking way, read them here on my blog.
π 126 TILs and countingβ¦ π
π How to Use This Repository
π Browse by Category: Click on any category below to jump to that section
π Search: Use Ctrl+F
(or Cmd+F
on Mac) to search for specific topics
π Web Version: Visit arshadmehmood.com/today-i-learned for a better reading experience
β Star this repo: If you find it useful, consider giving it a star!
π Quick Stats
π― Total TILs: 126 π Categories: 20
π₯ Top Categories:
- π Python: 37 TILs
- π °οΈ Angular 2+: 18 TILs
- π Git: 12 TILs
- β‘ JavaScript: 9 TILs
- π§ Other: 6 TILs
π Categories
- π€ Android
- π °οΈ Angular 2+
- π C#
- π¨ CSS
- π³ Docker
- π Facebook
- π₯ Firebase
- π Git
- π GitHub
- β‘ JavaScript
- π Jekyll
- π Nginx
- π Node.js
- π§ Other
- π PHP
- π» Programming
- π Python
- ποΈ SQL
- π TypeScript
- π Vue.js
π€ Android
- Circular ImageView with Picasso
- Create region in Android studio
- Load data in webView second time
- Show logs from TimingLogger
- String array in XML
π °οΈ Angular 2+
- Add a Window Resize event listener for a component
- Add Dynamic Css Style Properties
- Add SEO to an Angular App
- Apply two or more pipes
- Bind local method to Dom event listener
- Close Dialog from typescript
- Disable closing the dialog on clicking outside the dialog window in Angular
- Get query parameters
- Hide an element based on window size
- Pass data to routerLink
- Pretty Print Json Object In Template
- Safe template data binding with ngOnInit
- Select Option With Default Value
- Send Multipart Form Data With Post Request
- Specify port for ng serve
- Update Data Model from any component or service using @Input Decorator
- Use div contenteditable property with template model binding
- Using and importing custom font in Angular 5
π C#
- Cast or deserialize a Json object to a class in C#
- Create A Stream From String
- Create Stream from a Base64 String
- Encode/Decode Base64 string in C#
- Ldap Query Search Filter Syntax
- Wait N Seconds Without Blocking Ui
π¨ CSS
π³ Docker
- Check Postgres db table in Docker
- Docker Build and Push: docker build/push vs docker buildx
- Multiple Ways to Run a Docker Container
π Facebook
π₯ Firebase
- Add Cache-Control headers
- Get Firebase Project Name
- Where to find Firebase cloud messaging server API key in firebase console
π Git
- Add or link another git repository as a submodule
- Clone without folder
- Delete local branch
- Delete remote branch
- Fixing Detached HEAD in a Git Submodule
- Ignore local commits and pull repository from the remote branch
- Move Commits To A New Branch
- Pull changes from the master or other branch
- Remove staged files
- Revert Changes from Folder to Branch
- Revert the latest commit
- Undo git pull
π GitHub
- Add a license to an exisiting Github Repository
- Codeblock highlighting programming languages supported by Github
- Get Github Repository size with BASH
β‘ JavaScript
- Add an attribute to a json object using spread operator
- Document getElementById check if not null
- Filter a Javascript Array
- Get only unique values from a Javascript Array
- Local Storage
- Remove class name from element
- Remove element from DOM
- Replace Everything Before A Certain Point Using Regex
- Trim/Remove first or last character in Javascript
π Jekyll
π Nginx
π Node.js
- Get directory name and filename of the current module in Nodejs
- Running NPM Scripts in Parallel or Sequentially
π§ Other
- Add a new file type to context menu in Windows 10
- Add Current User As The Owner Of A Folder
- Configure and connect Mysql Workbench with SSH connection
- Enable Curl in PHP.ini running on EasyPHP
- List installed packages on Linux
- Take permissions of a folder using sudo on Linux
π PHP
- Allow CORS - Cross origin resource sharing
- Compress string or data
- Enable gzip compression
- Fetch MySql column values as array
- Install mbstring on Linux
π» Programming
π Python
- Check If String Is Numeric
- Check Palindrome
- Combine or merge two pandas Dataframes using a index
- Convert dictionary values or keys to list
- Convert list to dictionary with indexes
- Convert List To String
- Delete key from dictionary
- Docstring for describing functions
- Enumerate list / get index in for loop
- For Each Loop With Index
- Get a list of dictionary values
- Get json from a URL
- Get unique elements from a list
- Get unique elements from a list of lists
- Iterate Over Dictionary Key Value Pairs
- Iterate Over Nested Lists
- Label plot lines in matplotlib
- Positive infinity
- Print Object To String
- Python null object singleton
- Read json file to pandas Dataframe
- Remove word starting with a specific character
- Replace multiple terms from a string
- Replace URLs using Regex
- Reservoir sampling a list
- Reverse string
- Select columns from a pandas dataframe
- Set difference
- Set intersection
- Shallow copy a dictionary
- Shuffle list
- Sort dictionary by value
- Split dictionary into chunks
- String Starts With A List Of Strings
- Strip Non Alphabetical Or Non Alphanumeric Characters In A String
- Trim strings in Python
- using set() + len()
ποΈ SQL
- Find all tables with a specific column name
- Return results in json
- Search for a table name in a database
- Select all columns from the joined table and some from the other
- View table schema using SQL
π TypeScript
π Vue.js
- Add dynamic Css Style or Class
- Conditional rendering with if else
- OnClick Event Handling
-
Optional parameters in Vue Router
π± Catz
π‘ Inspiration
I shamelessly stole this idea from wajahatkarim3/Today-I-Learned, then I also saw other similar repositories and decided to share my own repo of what I learn everyday.
π€ Contributing
The best way you can contribute is to support the idea of keeping track of things you learned. Just create a public repo and start writing and sharing notes. This is way better than keeping them to yourself.
π License
Β© 2018-2025 Arshad Mehmood
This repository is licensed under the MIT license. See LICENSE
for
details.
Leave a comment