Skip to content

Documenting my learnings through the #100DaysOfCode challenge

Notifications You must be signed in to change notification settings

srai98i/100-Days-Of-Code

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 

Repository files navigation

100-Days-Of-Code

Documenting my learnings through the #100DaysOfCode challenge

Days 1-10

Day 1

  • Learned about Object Oriented Programming and Design Patterns. Watched a video explaining the four main principles of design patterns (Encapsulation, Abstraction, Inheritance, Polymorphism) and read an article about how these can be applied in Functional Programming.
  • Continued building the React Native Instagram Clone. Header and Stories components are complete, almost finished with building the Post component. Becoming more familiar with React Native components. Still find the debugging process a bit complicated.

Day 2

  • Made progress with the Positive Mind project. Used what I learnt from the React Native Instagram Clone Tutorial to help me with styling and functionality in this project.
  • Almost finished building the Home Screen component of the Instagram clone. Only the BottomTab component functionality is needed to complete this screen. Becoming more familiar and comfortable with React Native and its quirks.

Day 3

  • More progress with the Positive Mind project. We have almost finished building one of the screens. The functionality of the button and a Navbar is needed to complete the Routine screen.
  • Solved a Codewars problem to practice my JavaScript skills. Broke down the problem into smaller, more manageable tasks in order to find a solution.

Day 4

  • Focused on Codewars to strengthen my Vanilla JS and problem solving skills. Practiced applying different array methods to find solutions.

Day 5

  • Made progress with the Instagram React Native Clone and finished building the HomeScreen component. Learnt about dynamic styling.
  • Attempted to build components without assistance and then compared my code to code from a tutorial. Seeing how someone more experienced would go about writing the same code I am writing is giving me an insight into how to write cleaner, more readable code.

Day 6

  • Positive Mind (React Native): found an npm package to add a popup modal to our project so users can input tasks. Using props, we are working on passing individual functions to each display box which will handle submitting information to the correct data libs i.e morning tasks are stored in the morning data libs.
  • To Do (React): made some CSS adjustments and redeployed.
  • Instagram React Clone (React Native): Started building another screen (AddNewPost).

Day 7

  • Positive Mind (React Native): completed styling of popup component. Reflected on the structure of the app and decided to plan how we were going to manage state and on which levels should state be managed.
  • Watched a video by Kent C. Dodds on React state management:
    • Learnt the difference between UI state and server cache state.
    • Where we choose to manage state can have an impact on the performance of the app: having too much global state can cause performance issues.
    • Learnt about composition as a way to tackle prop drilling.
    • Refreshed knowledge on how to use Context.

Day 8

  • Positive Mind (React Native): reflected on what I learnt from the React state management video I watched previously and planned where to manage state in our app. Manage to render user inputted data on our app. At the moment, we are using libs to provide data for the frontend but aim to build a backend to connect to the frontend.
  • Practiced using array methods (filter, map, reduce) to solve code problems.

Day 9

  • Added a new InProgress component to my portfolio to show what I've currently been working on. Fine tuned responsiveness of site with CSS Tailwind media queries. Added some conditional rendering based on whether a component receives a prop or not. Researching ways to improve the design of my portfolio.

Day 10

  • Positive Mind (React Native): added delete task/clear all task functionality to the Routine screen.
Days 11-20

Day 11

  • Learning about system design and what to consider when designing a system e.g availability, scalability, performance, caching etc. Using tradeoff analysis and taking into account the business plan and the needs of the user, we can determine the best approach to building the system.

Day 12

  • Solved a Codewars problem using array methods.

Day 13

  • Watched tutorials on how to use Firebase and researched NoSQL databases.

Day 14

  • Solved a Codewars problem using conditions, while loops and ternary operators.

About

Documenting my learnings through the #100DaysOfCode challenge

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published