2022 was one hell of a year. Did some absolutely crazy stuff …
- Bought a new House 🏠
- Shifted to a new City (BLR) ✈️
- Did my first international trip and in total went to 6 different countries🇨🇭🇩🇪🇮🇹🇦🇪🇦🇺🇻🇦.
🧵 (1/n)
1 thing that I have realised while contributing to production grade code
@LinkedIn
and
@Google
is that Clean code is one of the highest priority while making any feature. If your code isn’t verbose & self explanatory enough, forget about reaching prod, it wont even reach to QA🚀
I have a 5000 INR learning budget available from my company. Any suggestions for what should I buy ? Any specific newsletter subscription or book or anything else for enhancing tech domain knowledge.
PS: Not looking for extremely beginner level content.
Utilising my flight delay time in doing something productive.
I believe you need to understand worth of your time. Spend quality time with your friends & family, productive time with your work & projects, chill time for relaxation but never waste your time.
Time is money 💴
Recently went to a Hackathon at NSUT to judge the teams. Most of the teams who made some MERN stack project didn't even know what they are using mongoose for ?
I believe abundance of ultimately basic mern stack courses is 1 reason.
Is it normal or I was expecting too much ?🥲🥲
So recent incident happened on the expressjs open source repo that it was flooded by dummy PR's. My take on the whole incident:
1. People should use their own repos for teaching open source contribution.
1/4 🧵
When I am clueless about implementation of a feature, I take small steps and just start coding
Prepare the basic classes and files
Prepare build files
Write Unimplemented function
Start looking for similar features
And things start making sense.
Anyone else able to relate?
#Dev
You are on holidays in different timezone.✈️
You have a release next week.🔥
There is a bug detected in the feature.👾
You have to resolve it on priority.
You have no shit clue on how to solve. 🤢
Software engineering is not that chill tbh. 🥲
#WorkFromHome
#SoftwareEngineer
Agree or not as a full time engineer you spend more time reading code and docs than actual writing code.
For me if my design doc is ready and approved implementing becomes cakewalk. Whats your experience??
#SoftwareEngineering
#Google
Quick Byte: A lot of times you might have seen [object Object] getting printed when we deal with objects in JS and it is kinda annoying. So why it happens? And how to rectify it? 🧵
Learned a new thing from one of my code reviewers. So I had a feature which was pretty complex and high impacting so there was quite some to and fro on the PR. To make sure it doesn’t become exhausting the reviewer wrote “We are close”. It felt motivating to finish it sooner 🔥🔥
LinkedIn it is this time. Being an ex-linkedIn employee I am still shocked that employee centric company like Linkedin let go 700+ people & revoke multiple offer letters. But I knw that no one can understand the uncertainty of those who are left & those who are impacted.
#layoffs
Excited to announce that I will be speaking at React Nexus this year. Excited to meet so many awesome devs in the community 🔥🔥
#React
#reactnexus
#speaker
🧵1/7 Understanding the Repository Pattern in MVC Architecture
Let's explore the Repository Pattern, a key player in crafting clean, maintainable, and scalable applications.
#MVC
#RepositoryPattern
#CodingBestPractices
Communication is even more imp than the tech stuff you do. You need to keep on updating the efforts that you have been doing. It gives visibility to your work & helps in unblocking you as well. You progress & blockers should be visible to everyone and that’s how you grow faster.
The more time you spend in preparing design doc of your feature the less time you will spend in actually coding it. Got this very important learning in the last quarter when I was working at one big feature at Google.
I know recently multiple incidents have put a bad image for developers from India. I would recommend everyone to please think twice before doing anything not only in open source but in your day to day job as well. Indian dev community should spread awareness about it to freshers.
@striver_79
💯 Agree to that. IMO Even if you join a company with more base component you will eventually end up investing in different assets like MF, FD and even stocks. If company is already doing it for your its one less task to do for you.
2. Educators should actually make a technical contribution and show it rather than showing a readme change to teach because it populates similar thoughts in students mind that just a readme change is enough.
2/4 🧵
So it’s a super hectic 3 day weekend oncall for a bunch of flipkart and amazon engg and a super chill code freeze period (probably) for some other remaining engg.
Good luck to all who are going to order something and then order will go to a pending state and you will be 😱
QuickByte: If you think that git only stores the changes that you do in file then that’s not completely true. When you commit, git stores snapshots of the entire file, it does not store diffs from the previous commit. This approach can be inefficient at times. 🧵(1/n)
#git
🧵1/5 Understanding Socket Programming for TCP Connections 🌐
Socket programming is a way to enable communication between two nodes on a network. It's like making a phone call: you need a number (IP address) and a phone model (protocol) to connect.
#SocketProgramming
#TCP
3. AFAIK the author of the video said that donot make dummy PRs so the learners should also understand the instruction and themselves think about what is right what is wrong. Not everything is taught in classes somethings are obvious.
3/4 🧵
A fun extension I found for VS Code named as vscode-pets 🔥. Adds a bunch of cute pets in one corner.
Not sure if it’s good for productivity or not but looks fun 🐶🐱
#Dev
#programming
💡 Unpopular Coding Confession: 🤫 Ternary operators are my secret weapon! 😎Forget clunky if-else, these gems can boost code readability by 10x! Recently tested in unit tests, and wow, the code turned immaculately clean! Cases can still be there where if-else can be better.
Recently came to know about a new framework tSQLt which is a database unit testing framework.
You can test your stored procedures and triggers using this.
Had to write a couple of tests in this, not that difficult also.
#microsoft
#SoftwareEngineer
Vim is one of the most underrated tool that you should know as a software engineer. Whenever you are working on a remote server, or just quickly changing a config file through terminal, knowing VIM comes extremely handy. Here are 5 cool tips to get started with VIM
#developers
Code debugging is the ultimate detective work! It's like solving a puzzle, but instead of finding missing pieces, you're finding and fixing errors. It can be frustrating at times, but the satisfaction of finally fixing that pesky bug is unbeatable.
#coding
#debugging
- Switched team in Google and started contributing to Google Pay and quite loving the new FinTech sector.
- Went for my first Cruise trip 🚢
- Started going in person to office as a FTE
- Started my backend dev bootcamp and got an immense love from community
🧵 (3/n)
- Gave my first in person international conference talk at Pycon Italy and then gave one more talk at NDC melbourne. Along with that gave a remote talk at EuroPython. 🎙️
- Learned Flutter and tried hands on Mobile dev 📱
🧵 (2/n)
nohello is something that I always follow before pinging any colleague or anyone on LinkedIn/Twitter. Trust me if you start following this your profession journey will be sorted from day 1. You can read about it here
#nohello
Quick byte: In JS everything apart from undefined, null, +0, -0, BigInt zero, document.all(only object that is falsy, rest every object is truthy), empty string, NaN, false are the only falsy values rest everything is a truthy value in JS. 🧵
One cool tip for budding engineers: If you’re trying to understand a code flow and the codebase has well-written unit tests, here’s a strategy you might find useful. 🧵
#codingtips
#engineering
I want to understand as a rookie while learning is it okay to now know how stuff is working and just focus on building something?
Like when I was learning stuff I tried to get basic why and what of everything instead of just copy pasting. Not sure what is the best way to go ?
Working on a recent task I realised 1 more use case of unit tests. So I had to give output of a particular flow in absence of few mappings. I just removed the mappings from the code & ran the unit tests. The output mismatch was my answer. Saved my effort of reading the whole code
Unit tests may be a pain to write, but the feeling of accomplishment when they all pass is unbeatable. Trust me, the time and effort you put into unit tests will pay off in the long run.
#unittests
#developerstruggles
Is it okay to call out mistakes in YouTube lecture videos of MAANG and ex-MAANG influencers, or should we just scroll past and ignore them, accepting that shallow content is now the norm?
Or is it okay to not know stuff and teach wrong?
#YouTube
#Influencers
#ContentQuality
It becomes important that multiple updates during code review should not feel too much. So a comment like that made me feel that the reviewer also cared about the dev 💯✅
Quick Byte: HTML forms only support POST and GET in the method attribute.
So technically if you go by spec in latest html5 you cannot use PUT or DELETE or PATCH in the method attribute.
Quick byte: We should always do intention revealing variable names. Variable names should represent with what intent it was created. If they store any measurable quantity then try to have the unit of measurement along with it.
Examples: transactionCountPerDay
🧵
Quick byte: In JS there is a concept of abstract operations 🤔. These operations are not present as a part of JS (as in the devs 👩💻🧑💻like us can’t use it). It is present to define the algorithms and operations mentioned in the ES docs & solely aids the docs. 📄⚡️
What didn’t go well?
- Was not much active on social media so definitely need to time box things to achieve this.
- Thought about learning finance and investing but didn’t get much time.
- Didn’t spend much time with family as friends as a lot of time went in travel 🧵 (4/n)
Quick Byte: Do you think the string object in C++ is prepared on heaps ? If yes then here is a concept called as SHORT STRING OPTIMISATION that you might want to learn about which reveals internals on how strings objects are managed in memory 🧵(1/n)
#cpplus
#developers
So this happens because by default the toString operation on objects are defined to return a string like this -> [object Object] . So technically it’s not a wierd behaviour but instead that’s how by default toString is expected to work with objects
Quick byte: The subtraction operator in JS applies the ToNumber abstract operation on both the left and right operand and converts them to number before doing subtraction.
That’s why
1 - “1” gives us 0 as both the values undergo ToNumber conversion.
#javascript
#js
@rite2riddhi
Feels like these companies had so many experts who know finance , hiring , tech and what not. And everyone was what sleeping??? I can’t convince myself they didn’t see that coming 🙃
Quick Byte: While doing variable naming in your code, try to avoid any disinformation. For example: having a variable name like unique_product_list to store a bunch of unique products might give false info to a programmer. 🧵
Quick byte: if you’re following ES modules then you cannot access the __dirname global. Instead you can use the import.meta property which exposes metadata of a module. It has a url property which gives us the file path including file:// protocol prepended.
#javascript
#Dev
More power to everyone who got impacted due to this crisis. The tech industry is going to change a lot. Anyone who is willing to build a career here, just be ready with your skills as there wont be any hiring spree by Big tech….
@Iampatelajeet
@LeetCode
Overkill IMO, Z is must simpler than kmp and even rabin karp with a good hash is ok for this. Kmp is too complex to explain in an interview and the interviewer can have good follow ups on the lps function
@Iampatelajeet
Quick Byte: Python is famous for writing cleaning and readable code which is very easy to understand. If you want to learn about core principles on which python is made then checkout Zen of python. These are 19 principles that influence design of the language.
@Iampatelajeet
You can reset (soft) the head and branch pointer to one previous commit
Make a new commit with .gitignore added
Prune dangling commits by git gc and remove every dangling commit from reflog
You are good to go 🔥🔥😂