30 days into my #100DaysOfCode journey. One thing I’ve learned so far: Learning to code is less about writing code and more about learning how to think. Over the last 30 days, I’ve: • struggled with concepts like async/await, OOP, and TypeScript • taken extra time to actually understand things instead of rushing • built small projects and improved them step by step • started thinking more in terms of logic and data flow There were days when: • things didn’t make sense • progress felt slow • I had to revisit the same concept multiple times But I kept showing up. And that’s what matters. Right now, I’m focusing on: • building projects gradually • strengthening fundamentals • improving problem-solving skills Still a long way to go, but definitely more clarity than Day 1. Next → keep building + keep learning. #100DaysOfCode #SoftwareTesting #QAAutomation #TypeScript #LearningInPublic
Learning to Code is About Thinking, Not Just Writing Code
More Relevant Posts
-
Atomic Habits breaks every habit into 4 steps. Cue, craving, response, reward. The cue triggers your brain. The craving motivates you. The response is the action you take. The reward reinforces the loop. I mapped my own coding habit to this today. 🔵 Cue: I open my laptop every morning at the same time. 🔥 Craving: I want to feel like I am making progress. ⚡ Response: I write code, solve DSA problems, learn something new. ✅ Reward: The feeling of having built something real by end of day. Today that response was understanding JavaScript control flow deeply, loops, early return patterns and why they matter beyond just syntax. Also dug into GitHub API integration using shell scripts for DevOps. Solved 5 DSA problems. The book also says to break a bad habit, make it invisible, unattractive, difficult and unsatisfying. Small friction. Big difference. Day 2 of showing up publicly. 🚀 #100DaysOfCode #JavaScript #DSA #LearningInPublic #SoftwareEngineering
To view or add a comment, sign in
-
🚀 Day 06 of Learning TypeScript — Modules, Classes & Inheritance Today’s learning was focused on understanding how TypeScript helps us write scalable and structured code using concepts like modules, classes, access modifiers, and inheritance. 🔹 1. Modules (import / export) Learned how to split code into reusable files using modules. ✔ Better code organization ✔ Reusability across files ✔ Clean project structure 🔹 2. Classes in TypeScript Classes help in creating structured and reusable blueprints. ✔ Encapsulates data + behavior ✔ Foundation of OOP in TS 🔹 3. Access Modifiers Controlled access to properties using: public → accessible everywhere private → accessible only inside class protected → accessible in class + child class Person { protected name: string; constructor(name: string) { this.name = name; } } ✔ Improves security & code control 🔹 4. Inheritance (extends) Learned how one class can reuse another class. ✔ Code reusability ✔ Cleaner architecture ✔ Avoids duplication 💡 Key Takeaways Modules → organize large codebases Classes → blueprint for objects Access Modifiers → control visibility Inheritance → reuse and extend functionality 🔥 TypeScript is becoming more powerful day by day — now moving towards writing scalable, production-level code. #typescript #webdevelopment #javascript #learning #programming #developers #100DaysOfCode #frontend
To view or add a comment, sign in
-
-
🚀 Mastering TypeScript Variables – A Simple Guide for Beginners! When learning TypeScript, one of the first and most important concepts to understand is variables. Getting this right can save you from many common coding mistakes later. 🔹 What are Variables? Variables act as containers that store data, which your application can use and update when needed. 🔹 Ways to Declare Variables in TypeScript 👉 var 👉 let 👉 const Each behaves differently, and choosing the right one matters 👇 📌 Quick Comparison ✔ Scope var → Function scoped (less predictable) let & const → Block scoped (more controlled & safer) ✔ Re-declaration var → Allowed (can lead to bugs) let & const → Not allowed (prevents mistakes) ✔ Re-assignment let → Allowed const → Not allowed (fixed value) ✔ Best Practices to Follow ✅ Prefer const by default ✅ Use let only when values need to change ❌ Avoid using var in modern development 💡 Why This Matters? Using the right variable type improves code quality, reduces unexpected behavior, and makes your code easier to debug and maintain. 🔥 Keep Building Strong Foundations! Understanding basics like this is the key to becoming a confident developer. 💬 What topic should I cover next in TypeScript or Automation Testing? #TypeScript #JavaScript #WebDevelopment #Programming #Coding #SoftwareDevelopment #SoftwareTesting #QALife #AutomationTesting #SDET #Learning #Developers #TechSkills #CodeBetter #ProgrammingTips #CareerGrowth
To view or add a comment, sign in
-
Day 2 of my TypeScript learning journey 🚀 Today I went deeper into some of the most important OOP and type system concepts in TypeScript — classes, access modifiers, static members, interfaces, and generics (including multiple generic types). What stood out to me is how practical these concepts are in real-world development: Classes help us model real-world entities like users, payments, or services in a structured way, making large applications easier to manage and scale. Access modifiers (public, private, protected) help in controlling how data is accessed, which improves security and prevents unintended changes in code. Static members are useful for utility-based logic where we don’t need multiple instances, just shared functionality across the application. Interfaces define clear contracts between different parts of an application, which is extremely important when working in teams or building scalable systems. Generics allow us to write flexible yet type-safe code that can work with different data types without losing structure or reliability. Overall, these concepts are not just “TypeScript features” — they are essential tools for writing professional, scalable, and maintainable software. Excited to continue building and applying these concepts in real projects 💻🚀 #TypeScript #JavaScript #WebDevelopment #Programming #CodingJourney #100DaysOfCode #SoftwareDevelopment #FrontendDevelopment #BackendDevelopment #LearnToCode
To view or add a comment, sign in
-
Recently, I accidentally fell into a rabbit hole… and instead of climbing out, I opened the source code of an AI coding agent 👀 I’ve been curious about agentic coding for a while, so I gave Opencode a spin. And yes, my selection criteria were extremely rigorous… mainly “ooh nice UI” and “that name sounds cool” 😄 While using it, I noticed something odd (atleast to me): It only listed my sessions when I was inside the same folder where they were created. Switching folders? No sessions. Naturally, curiosity kicked in — so I dug into the source code 🔍 Here’s what I found: 👉 Project Identification Opencode generates a unique project ID to track sessions. It does this in two ways: - If the folder is a Git repo: It runs $ git rev-list --max-parents=0 HEAD to get the Git directory, then derives the project identity from it. And here’s the fun part — it caches this inside .git/opencode. Yes, it casually writes into your .git folder. Pretty clever. - If Git is not initialized: It falls back to a constant global value (so basically, all such folders look the same to it, no because there are some other conditions too). 👉 Session Tracking Each session gets its own unique ID. 👉 How it links everything It stores sessions in a SQLite database and connects them using the project ID as a foreign key. You can even find where this DB lives with: opencode db path 💡 Why sessions don’t show across folders? Because each folder = different project ID (especially if Git is initialized). No shared project ID → no shared session list. Honestly, I love these small design decisions. Simple idea, clean implementation, and very “developer-minded.” Diving into source code like this always feels like uncovering tiny engineering stories hidden beneath the UI 🚀 #OpenSource #AI #AgenticAI #CodingAgent #DeveloperLife #SoftwareEngineering #TechDeepDive #CodeReading #LearnInPublic #Git #SQLite #Programming #Developers #TechCuriosity #BuildInPublic #EngineeringInsights #Debugging #DevTools #BackendEngineering #CleanDesign
To view or add a comment, sign in
-
-
I recently explored a piece of code that made me pause and reflect. It may seem like just another step in my learning journey, but it reminded me of something deeper — true learning isn’t just about gaining knowledge, it’s about building clarity through discipline. Let me share a perspective that struck me: A developer who knows JavaScript is like a student who has gone through school — they understand the fundamentals, they know how things are defined, and they have the freedom to explore. But with that freedom, there’s also a chance of inconsistency — not everything enforces how it should be used. On the other hand, a developer who knows TypeScript feels like someone carrying the Bhagavad Gita with them. Why? Because just like the Gita provides guidance, structure, and discipline in life, TypeScript brings the same to code. It doesn’t just allow you to define things — it ensures you stay true to those definitions. The moment you try to deviate, it gently stops you and reminds you of the right path. Lesson learned: Freedom helps you explore, but structure helps you grow. Both are important — but knowing when to bring discipline into your work is what takes you to the next level. #TypeScript #ContinuousLearning #EngineeringMindset #CodeWithPurpose #LearnAndGrow 🚀
To view or add a comment, sign in
-
🚀 #100DaysOfCode – Day 14 Consistency is turning into discipline. Small steps, every day 💯 ✅ What I accomplished today: 🧠 LeetCode Daily Challenge – Judge Route Circle 📌 Problem Overview: Given a string of moves consisting of U, D, L, R, determine: The robot starts at origin (0,0) Each move changes its position Goal → Check if it returns back to origin 💡 My Approach (Counting Logic): 🔹 Counted frequency of each move 🔹 Compared: ✔ Up vs Down ✔ Left vs Right 🔹 If both are equal → robot returns to origin ⚡ Time Complexity: O(n) ⚡ Space Complexity: O(1) 🧩 Key Insight: This problem helped me understand: ✔ How simple counting can replace simulation ✔ Importance of balance conditions ✔ Writing clean and optimized logic ✔ Avoiding unnecessary computations 🔗 LeetCode Submission Link: https://lnkd.in/gvBucvjB ☕ Spring Boot Learning – Exception Handling 🔹 Today I learned how to handle errors effectively in Spring Boot 📌 Key Concepts Covered: ✔ Using @ExceptionHandler for handling specific exceptions ✔ Handling scenarios like Employee Not Found gracefully ✔ Returning proper HTTP status codes (404, etc.) ✔ Understanding how Optional can throw exceptions 🌍 Global Exception Handling: ✔ Learned @RestControllerAdvice for centralized handling ✔ Created a global exception layer ✔ Kept controllers clean and focused ✔ Explored validation annotations like @AssertTrue, @AssertFalse 🧠 Big Learning: A good backend is not just about success responses— it’s about how well you handle failures and edge cases. 📝 Spring Boot Notes: https://lnkd.in/gakX9V-X 🔥 Learning Streak: Day 14/100 Discipline > Motivation. Let’s keep building 🚀 #100DaysOfCode #Java #SpringBoot #BackendDevelopment #LeetCode #DSA #ProblemSolving #CodingJourney #SoftwareDevelopment #LearningInPublic #Developers #Consistency #BuildInPublic
To view or add a comment, sign in
-
-
Have you ever struggled with managing multiple values in a function? Tuple types in TypeScript allow you to group values together in a structured way. What if we took it a step further with labeled tuples for clarity? ────────────────────────────── Mastering Tuple Types and Labeled Tuples in TypeScript Let's dive into tuple types and how labeled tuples can enhance your TypeScript experience! #typescript #programming #tuples #codingtips ────────────────────────────── Key Rules • Tuples are fixed-size arrays with specific types for each index. • Labeled tuples enhance readability by associating names with values. • Always use tuples when you want to enforce a specific structure for function arguments or return values. 💡 Try This type Point = [x: number, y: number]; const point: Point = [10, 20]; console.log(point); ❓ Quick Quiz Q: What is the main benefit of using labeled tuples? A: They improve code readability and maintainability. 🔑 Key Takeaway Use labeled tuples to make your TypeScript code more understandable and maintainable! ────────────────────────────── Tests keep failing after tiny UI changes and your team wastes hours debugging selectors. Release confidence drops when flaky E2E results hide real regressions.
To view or add a comment, sign in
-
Let’s talk about the "It works on my machine" curse. 🖥️🙄 We’ve all been there. You spend hours perfecting your code, push it to staging, and… boom. It crashes because of a missing dependency or a slight version mismatch in the environment. That’s where Docker changed the game for me. 🐳 If you’re still on the fence about containerization, here’s why it’s a total sanity-saver: • Consistency is King: Docker packages your code with everything it needs to run. If it works in your container, it’ll work in production. Period. • No More Dependency Hell: Need Python 3.11 for one project but 3.9 for another? Run them in separate containers and stop messing with your system PATH every twenty minutes. • Onboarding in Seconds: Instead of a 10-page "How to Set Up Your Dev Environment" PDF, new teammates just run docker-compose up and get to work. It’s not just a buzzword; it’s about reclaiming your time so you can actually focus on building cool stuff instead of debugging infrastructure. How has Docker (or containerization in general) changed your workflow? Or are you still a "bare metal" purist? Let’s chat in the comments! 👇 #SoftwareEngineering #Docker #DevOps #CodingLife #WebDevelopment #TechCommunity
To view or add a comment, sign in
-
-
𝗠𝗮𝘀𝘁𝗲𝗿𝗶𝗻𝗴 𝗖𝗼𝗱𝗲 𝗧𝗮𝗸𝗲𝘀 𝗧𝗶𝗺𝗲. 𝗠𝗮𝗸𝗲 𝗜𝘁 𝗮 𝗛𝗮𝗯𝗶𝘁. 💻☕ Success in programming doesn't come from pulling all-nighters; it comes from showing up every single day. As the image says, small daily practice turns complex syntax into muscle memory. 🧠✨ Whether you are tackling your first HTML tags or diving deep into advanced JavaScript, consistency is your biggest superpower. Take it one line of code at a time, build your study routine, and watch your skills level up organically. Set up your workspace, grab your favorite coffee, and put in the reps. Let 𝗗𝗲𝗻𝘁𝗲𝗱 𝗖𝗼𝗱𝗲 𝗔𝗰𝗮𝗱𝗲𝗺𝘆 guide your journey from beginner to pro. 🚀 Drop a 💻 in the comments if you are committing to your daily coding practice today! #LearnToCode #CodingHabits #ProgrammingLife #TechEducation #DentedCodeAcademy
To view or add a comment, sign in
-
Explore content categories
- Career
- Productivity
- Finance
- Soft Skills & Emotional Intelligence
- Project Management
- Education
- Technology
- Leadership
- Ecommerce
- User Experience
- Recruitment & HR
- Customer Experience
- Real Estate
- Marketing
- Sales
- Retail & Merchandising
- Science
- Supply Chain Management
- Future Of Work
- Consulting
- Writing
- Economics
- Artificial Intelligence
- Employee Experience
- Workplace Trends
- Fundraising
- Networking
- Corporate Social Responsibility
- Negotiation
- Communication
- Engineering
- Hospitality & Tourism
- Business Strategy
- Change Management
- Organizational Culture
- Design
- Innovation
- Event Planning
- Training & Development