
Bienvenue dans mon journal # 100 jours de code alors que je relève le défi de coder au moins une heure par jour pour les 100 prochains jours! Je rejoins le nouveau monde courageux de l'apprentissage de coder en démarrant le bootcamp complet du développement Web de la SCHOOL OF CODE. C'est à plein temps pour les quatre prochains mois mais c'est aussi gratuit. Le processus de demande a été long, mais l'école de code n'a accepté que 3% des 4000 candidats pour ma cohorte. Comment pourrais-je refuser l'occasion? #CareerChange #WomenInTech

Progrès d'aujourd'hui : a appris de nouveaux sélecteurs CSS et les a pratiqués lors de la programmation de paires avec CSS Diner
Lien (s) au travail : CSS Diner
Réflexions: a réussi mon premier jour à l'école de code et a adoré. Le fondateur et PDG, Chris Meah, nous a dit aujourd'hui qu'un nom plus précis pour l'école de code est "l'intégration à forte carrière de carrière de solveurs de problèmes créatifs collaboratifs". Je suis ravi de commencer mon voyage à apprendre à coder avec toutes ces nouvelles personnes!

Progrès d'aujourd'hui :
Lien (s) pour travailler : pirater la galaxie
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Les progrès d'aujourd'hui : ont passé toute la journée à programmer dans #javascript et #problemsolving avec mon coéquipier dans notre première école de Hackathon de code. Nous avons construit un jeu de rock, papier, ciseaux à partir de zéro.
Réflexions: J'apprécie cette chanson accrocheuse de Hackathon School of Code qui nous fait tous exciter pour prendre la journée - les vendredis de hackathon.
Progrès d'aujourd'hui : aujourd'hui, j'ai appris à débarrasser un dépôt dans Github. Ensuite, j'ai alimenté les dépositions d'ateliers que j'ai faits au cours de la semaine avec mon partenaire de jumelage. Nous ne les avions pas terminés pendant la semaine, alors je les ai brisés pour que je puisse y travailler indépendamment.
Les progrès d'aujourd'hui : ont travaillé sur nos devoirs pour le week-end, ce qui était un dépôt GitHub couvrant tous les sujets sur JavaScript que nous avons été enseignés au cours de notre première semaine à l'école de code.
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Réflexions: je commence à comprendre ce qu'un programmeur fait autre que "fonctionne avec les ordinateurs". ?

Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Progrès d'aujourd'hui : Exercices étudiés et terminés sur www.w3schools.com sur les sujets suivants en JavaScript: variables, types de données, fonctions, tableaux, comparaison et opérateurs logiques, pour les boucles et DOM HTML
Lien (s) pour travailler : W3Schools JavaScript tutoriel

Les progrès d'aujourd'hui : ont commencé à travailler sur l'atelier de la semaine 2 de la semaine 2 de l'école de code qui couvre les fonctions, les chaînes, les boucles, les tableaux, setInterval, ClearInterval et Fetch.
Progrès d'aujourd'hui :
Réflexions: ma citation inspirante pour aujourd'hui. J'ai vu cela et c'est parfait pour moi alors que je commence la semaine 3 du codage de bootcamp. Quelle nouvelle chose serez-vous assez courageuse pour sucer?

Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Interface utilisateur (UI) Conception:
CSS:

Progrès d'aujourd'hui :
Progrès d'aujourd'hui : hier était Hackathon vendredi à l'école de code. Nous avons utilisé nos compétences UI / UX nouvellement développées pour concevoir une page de destination commerciale. Travailler ensemble dans une paire nous:
Progrès d'aujourd'hui :
Fonctions, boucles et tableaux de codage continues pour l'atelier de récapitulation JavaScript avec l'école de code.
L'une des nombreuses choses que j'aime dans l'école de code est qu'ils connectent chacun de nous avec un mentor qui travaille déjà dans l'industrie de la technologie et est prêt à nous rencontrer 1: 1 chaque semaine. Arthur est mon mentor et il m'a déjà beaucoup encouragé avec ses conseils, ses conseils et son soutien. Il m'a envoyé une citation inspirante ce matin quand je me sentais découragé et je me suis répété à moi-même toute la journée. Merci, Arthur!

#javascript #menting
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Cette semaine, nous apprenons le développement backend. Nous utilisons NodeJS (un runtime JavaScript open source) pour exécuter JavaScript en dehors du navigateur.
#NODEJS #BACKEndDevelopment #json #Expressjs

Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Progrès d'aujourd'hui : Hackathon vendredi à l'école de code sur la construction d'un back-end. Construit une API REST à partir de zéro. Configurez les routes CRUD et les a fait fonctionner dans notre routeur. A créé des fonctions de modèle et les a transmises pour acheminer les gestionnaires du routeur.
Progrès d'aujourd'hui : a alimenté le repo de l'atelier que j'ai fait avec mon partenaire de paire de programmation la semaine dernière sur la construction d'une API REST en utilisant Node.js et Express. Je l'ai fait à nouveau à partir de zéro cette fois pour renforcer ce que j'avais appris.

Progrès d'aujourd'hui : cette semaine, nous apprenons le langage de programmation, SQL.
Progrès d'aujourd'hui :
Progrès d'aujourd'hui : aujourd'hui, nous avons appris à connecter une bibliothèque à une base de données.
Progrès d'aujourd'hui :
Progrès d'aujourd'hui : Hackathon vendredi à l'école de code! Travaillant ensemble dans une équipe de trois, nous:
Progrès d'aujourd'hui :
Progrès d'aujourd'hui : cette semaine, nous apprenons les tests et les pratiques modernes d'ingénierie logicielle. Nous avons appris Jestjs.io, le développement axé sur les tests (TDD) et Cypress.io.
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Lien (s) pour travailler : camp de code gratuit
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :

Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Progrès d'aujourd'hui :
Réflexions: Chaque jour pendant ma pause déjeuner, j'essaie de sortir. C'est formidable pour ma santé et aussi scientifiquement stimuler la pensée créative en moyenne de 60%! Une aide parfaite pour une résolution efficace de problèmes.

Progrès d'aujourd'hui : Hackathon vendredi à l'école de code. Nous avons tenté d'utiliser les compétences dans ReactJS que nous avons appris toute la semaine pour créer une application "à faire". Mon partenaire de jumelage et moi avons décidé que nous devions recommencer à comprendre certaines des bases de React telles que l'État et les accessoires. En conséquence, nous avons passé un peu de temps à passer par la liste de lecture YouTube de Net Ninja, le tutoriel complet et en discutant pour nous assurer que nous l'avons compris.
Progrès d'aujourd'hui :
Aujourd'hui, j'ai appris à transformer votre connexion # 100daysofcode à une expérience visuelle grâce à cet article gratuit de Code Camp.
J'ai par la suite mis à jour ce journal avec des images, des liens et des modifications de formatage à l'aide du code Markdown tel que:
Italique
Audacieux
Lien
Blocsquote
Inline code avec backtincs
# code block
print '3 backticks or'
print 'indent 4 spaces'
Lien (s) aux ressources :
Tutoriel de marque
Tutoriel de marque et code Visual Studio
Réflexions: Après une semaine intense, quand j'étais malade de la grippe et essayant d'apprendre à coder en utilisant React JS, j'avais besoin d'une pause mentale. J'ai trouvé cela encourageant et motivant à apprendre à améliorer mon connexion # 100daysofcode #GitHub pour le rendre plus intéressant à lire. Un de ces jours, j'espère que je publierai des projets réels, mais pour l'instant, c'est une bonne première étape. Cette citation de Code First Girls était exactement ce que j'avais besoin de lire aujourd'hui:

Les progrès d'aujourd'hui : ont appris les fonctions pures dans les reactJ telles que l'utilisation du crochet. Comment récupérer les données d'une API en utilisant Fetch, UseEffecte et UseState.
Progrès d'aujourd'hui :
A appris la gestion des succursales à Git. Cela comprenait l'apprentissage de nouvelles commandes GIT telles que:
Git Checkout –B Adding-to-Remote. Cela crée une nouvelle branche appelée «Adding-to-Remote» et y passe en même temps.
Git Checkout Main.
git push --t-upstream origine newbranchname
Nous avons également appris sur UserReducer qui est un crochet qui vous permet de gérer votre état dans React lorsque vous souhaitez tout garder sous contrôle.
Progrès d'aujourd'hui :
Refactorisé une liste avec UserReducer de l'atelier de l'École de code Utilising
J'ai travaillé sur la résolution d'un 6kyu kata dans Code Wars avec mon partenaire de jumelage.
J'ai eu un actualisation sur l'écriture du code de test en préparation de notre projet de groupe la semaine prochaine.
Ensuite, j'ai travaillé sur un atelier de test de composants React.
Appris sur Créer une application React. Bibliothèque de tests React.
Progrès d'aujourd'hui :
Appris plus sur le travail agile, le Kanban Board, les itérations de sprint Agile, la MSCW (doivent avoir, aurait dû, aurait pu, n'aura pas). etc.
Plus d'examen des tests React Composants.
Nous avons également mené et présenté des projets de recherche en groupe sur les sujets suivants:

Progrès d'aujourd'hui : continuant à terminer les leçons dans le cours JavaScript sur FreeCodeCamp
Lien (s) pour travailler : cours de certification de l'algorithme JavaScript et des structures de données
Progrès d'aujourd'hui : continuant de travailler sur des leçons dans le cours JavaScript sur FreeCodecamp
Lien (s) pour travailler : cours de certification de l'algorithme JavaScript et des structures de données
Progrès d'aujourd'hui :
Cette semaine à School of Code, nous avons été mis en groupes de quatre et nous avons demandé à concevoir une application Web complète qui aide à relever les défis auxquels les bootcampers sont confrontés tout en apprenant à distance. À la fin de la semaine, nous présenterons notre solution à un panel de juges de l'industrie
L'un de nos objectifs cette semaine est d'utiliser des pratiques de développement de logiciels agiles pendant que nous planifions, gérons, développons et présentons notre application. Par conséquent, en tant qu'équipe, nous avons d'abord convenu de notre équipe manifeste des éléments de base et de la stratégie de récupération. Nous avons ensuite utilisé un jamboard et la méthode d'idéation de Disney pour réfléchir aux idées, puis les affaiblir. Nous avons également terminé nos histoires d'utilisateurs, notre arbre de composants et nos wireframe à basse fidélité sur FIGMA.
Avant de commencer ma journée avec School of Code, j'ai regardé des vidéos pédagogiques YouTube par Net Ninja sur Node.js et React (en utilisant le serveur JSON et utilisez des dépendances d'effet).



Progrès d'aujourd'hui :
Aujourd'hui, nous avons créé un conseil d'administration de Kanban sur Trello à des fins de gestion de projet. Nous nous sommes ensuite répandus dans des paires de programmation avec une paire commençant à construire le frontal et l'autre travaillant sur le back-end.
Pour le back-end, nous avons dessiné un diagramme montrant quelles tableaux notre base de données contiendrait et comment ils rejoindraient. Nous avons également écrit un tableau de planification des API pour les demandes que notre back-end traiterait. Ensuite, nous avons créé une base de données PostgreSQL dans Railway.App
Pensées:
Ce fut une journée très stressante. La friction que nous avions dans l'équipe a empiré hier aujourd'hui. L'un de nos collègues n'était pas en phase avec le reste de l'équipe et nous nous sommes retrouvés à dépenser trop d'énergie en supposant pourquoi nous faisions ce que nous avons convenu auparavant, essayant de faire avancer une force repoussant. Au milieu de l'après-midi, il est devenu insupportable et notre équipe a atteint un point de rupture.

Progrès d'aujourd'hui :
L'un des défis aujourd'hui était de connecter les extrémités avant et arrière que nous avions développées. Nous avons fini par télécharger un package Node.js appelé CORS qui fournit un middleware express et ajustant nos composants React pour répondre de manière appropriée.
Nous avions également une console.log à l'intérieur d'une fonction asynchrone qui nous a jetés pendant un certain temps jusqu'à ce que nous remarquions que nous devions le déplacer.
Nous avons réussi à faire fonctionner deux composants correctement.
Pensées:
Nous avons commencé aujourd'hui avec une incertitude sur ce qui allait arriver à notre équipe. Nous avons continué à travailler comme trio, mais nous étions encore un peu perdus, car il était difficile de procéder pendant que les choses changeaient activement.
Il est resté comme ça jusqu'au milieu de l'après-midi, lorsque nous avons officiellement reçu une décision de l'école de code qui, à partir de là, nous serions une équipe de trois personnes. Nous étions clairement en retard, mais cette confirmation nous a donné ce dont nous avions besoin, ce qui était une certitude. Pour le reste de l'après-midi, nous avons réévalué notre situation, réécrit notre plan de récupération et commencé à reconsidérer notre définition minimale de produit viable (MVP).

Progrès d'aujourd'hui :
Ce matin, à notre stand-up quotidien, nous avons décidé que notre objectif à la fin de la journée était que notre application ait un tableau de bord modulaire avec des sections claires et qu'elle soit visuellement bien structurée. Nous avons dû faire quelques sacrifices sur notre plan d'origine pour atteindre notre MVP révisé d'ici la fin de la journée, comme:
Après avoir révisé notre MVP, nous avons proposé une palette de couleurs, modifié notre wireframe à basse fidélité et discuté de nos priorités et responsabilités pour les tâches en utilisant notre planche Kanban sur Trello.
J'ai appris aujourd'hui à utiliser CSS en réaction aux composants de style et j'ai apprécié de voir des résultats visuels immédiats de mon codage.
À la fin de tous les jours cette semaine, nous nous sommes rencontrés pour une rétrospective, en utilisant la technique 4LS, pour discuter de ce que nous aimions, détestons, aspiré et appris ce jour-là.

Progrès d'aujourd'hui :
Aujourd'hui, nous nous concentrons sur la préparation et la présentation de notre application à un panel de juges de l'industrie.
Notre solution est un tableau de bord pour aider les bootcampers à décompresser après une intense journée d'apprentissage. Il a des activités, organisées par catégorie, qui contribuent à stimuler le bien-être. Vous pouvez y ajouter chaque jour et voir vos progrès en fonction de vos objectifs. Il a également un générateur de blagues aléatoire. Enfin, il y a une invite à noter des choses dont vous êtes reconnaissant avec une liste vous rappelant ce que vous avez été reconnaissant dans le passé.
Outils utilisés: Jamboard, Figma, Trello, Vscode, Git, Github, Zoom, Google Docs et Google
Tech Stack Utilisé: JavaScript ES6, Node.js, expres.js, react.js, postgresql (elephantsql et railway.app), html et css
Pensées:
Nous avons eu des revers inévitables cette semaine, puis nous sommes devenus une équipe de trois personnes alors que nous étions déjà en retard. Après cela, bien que notre équipe ait été plus petite, nous avons travaillé en tant qu'équipe cohérente, a célébré nos victoires aussi petites et notre niveau de productivité a traversé le toit.
Le grand emporter pour nous est l'importance de l'état d'esprit et une attitude positive lorsqu'ils sont confrontés à des défis en équipe. Nous avons eu une chance unique de vivre le type d'obstacles à laquelle on pourrait faire face dans un véritable environnement de travail. Il était important pour nous de continuer à avancer et de rester agile.
Cette semaine, nous avons vécu les valeurs suivantes du manifeste agile:
Je suis incroyablement reconnaissant à mes coéquipiers sur ce projet, Gabe et Milly. Ils étaient favorables, encourageants, gentils, flexibles, résilients et brillants en codage aussi! Nous avons fait face à d'énormes défis, mais les avons surmontés ensemble, travaillant comme une équipe cohérente avec une attitude positive. À la fin de la semaine, nous avons présenté aux juges une application fonctionnelle qui a été codée presque entièrement en une journée. Quelle réussite!
Vous avez montré une solide compréhension des principes fondamentaux de la conception de logiciels et du cycle de vie du développement des logiciels en général.
Vraiment bon travail en faisant une situation positive d'une semaine difficile.
Malheureux voyage compte tenu des problèmes qu'ils ont eu avec un membre de l'équipe, mais qui ont toujours été livrés sur le projet, ce qui est impressionnant.
Naturellement, votre produit final a été moins développé que d'autres que nous avons vu, mais cela est absolument compréhensible lorsque nous prenons en considération les problèmes que vous avez eu dans la semaine (et était complètement inévitable!) Ce que vous avez présenté était vraiment impressionnant pour ce qui est essentiellement une journée de travail.

Progrès d'aujourd'hui : avant que SOC ne commence ce matin, j'ai lu dans les documents ReactJS sur l'État pour renforcer ma compréhension.
À l'école de code aujourd'hui, nous avons passé la matinée dans nos groupes de projet de la semaine dernière à tenir notre rétrospective de sprint. Nous avons créé un conseil d'administration de Trello pour discuter de ce qui s'est bien passé, de ce qui a besoin d'amélioration et d'action pour l'avenir. J'ai également appris à ajouter une option de vote pour les cartes Trello afin que nous puissions voter en équipe sur les trois idées que nous aimerions voir en haut de la liste.
Dans l'après-midi, nous nous sommes concentrés sur les avis de code. Nous avons lu les lignes directrices sur la révision du code, puis avons rencontré une autre équipe de la semaine dernière pour examiner leur code (et vice versa).
Liens vers certaines ressources utilisées :
État: la mémoire d'un composant
Bases rétrospectives d'Atlassian
Les progrès d'aujourd'hui : aujourd'hui, nous avons commencé à mettre en œuvre des modifications apportées au code dans notre projet en fonction des commentaires que nous avons reçus de notre examen du code par les pairs hier.
Réflexions: J'ai vraiment apprécié aujourd'hui et je sens que j'ai beaucoup appris. Alors que nous révisions notre code, j'ai essayé d'expliquer à haute voix à mes coéquipiers ce que faisait le code. Mes coéquipiers étaient brillants pour expliquer tout ce que je ne comprenais pas. Ils m'aident également à commencer à utiliser la syntaxe correcte. Souvent, je comprends et je peux expliquer la logique du code, mais je ne me souviens pas des mots techniques corrects à utiliser (tels que "Rendre un composant").
Liens vers les ressources : outil JSDOC pour ajouter des commentaires de documentation et de l'éditeur de Markdown ReadMe
Cypress testant un composant de notre application: 
Graphique réseau GitHub de nos commits: 
Les progrès d'aujourd'hui : ont créé ReadMe Docs pour les repos du frontend et du backend de notre projet de groupe de la semaine dernière. Écriture a terminé les commentaires de JSDOC dans le code pour les reposs frontend et backend. Au fur et à mesure que nous avons repris le code, il était bon de revoir ma compréhension de la façon dont chaque partie se connecte et communique avec d'autres parties de l'avant vers le backend.
Les progrès d'aujourd'hui : aujourd'hui, nous avons appris l'identité en tant que service (IDAAS), une authentification basée sur le cloud construite et exploitée par un fournisseur tiers. Des exemples de fournisseurs d'IDAAS sont Auth0, AWS Cognito, Firebase et Supabase. Dans l'après-midi, j'ai commencé à essayer de mettre en place l'authentification sur le frontend d'un projet React. J'ai utilisé Autho0 pour intégrer les fonctionnalités suivantes dans une application React à une page:
Today's Progress : Today I continued working on yesterday's project. I learned how to call an API that validates ourJSON Web Tokens. The aim was to get our user's metadata to display on the page and we managed to do it!
Next, we worked on protecting the backend of our React project. We created an API that supports the following routes:
It took ages to figure out how to get the last one (private-scoped) to work but we finally managed to find and tick the right boxes in the Auth0 API settings to get it to work (hint: check the Machine to Machine Applications tab).
In the last few minutes of the day, I built a React app from scratch that uses authentication via Auth0. The one bit I haven't figure out yet is how to code it so that you can only access the app once you have logged in. Right now it's showing on the main page and also when you log in. Will tackle that problem another day.
Today I also added a demo video to the README files for our week 9 Group Project: Globally Scoped Project Frontend and Globally Scoped Project Backend
Today's Progress : Learned and practiced how to deploy React app projects via Netlify.
Today's Progress : Learned and practiced how to deploy a backend environment using Render. Then deployed the related frontend (a React app shopping list) via Netlify.
The highlight for me today was learning how to set up my React App from last Friday (2 Dec) so that the user has to log in first before they had access to the app, their user info and their user metadata.
To do this, we leveraged the Identity as a Service (IDaaS), Auth0 React SDK. It is a JavaScript library for implementing authentication and authorization in React. We used the useAuth0 hook in our components to access authentication states such as (isAuthenticated and user), authentication methods such as logout, as well as the logical conjunction (&&) operator to do it.
In the morning I also completed some katas on Code Wars with my pairing partner for an hour. We started going through Katas list of Training JS series together.
Today's Progress : Today we learned about a React Hook called useContext that lets you read and subscribe to context from your component.
Links to resources : React Hooks: useContext and Passing Data Deeply with Context
Today's Progress : This morning I completed a CodeWars kata with my pairing partners. Then we worked on completing the workshop from yesterday on custom hooks.
In the afternoon, we learned more about Couchbase. Couchbase is a DataBase as a Service (DBaaS) provider.
Today's Progress : Hackathon Friday at School of Code. Our challenge was to ideate, plan, and build a full stack app that included:
It was a huge challenge to do in just 5 hours. We managed the first task and had started on the second one when it was time to present at the end of day.
Thoughts: How do you maintain motivation to keep going when you are worn out? After twelve weeks of intensive learning with the School Of Code boot camp, I took the advice that Women In Technology (WIT) shared below so I can press on to keep going in my #100daysofcodechallenge.

Today's Progress : We started learning about TypeScript today. Here's a little code snippet from the first part of our workshop practicing writing in TypeScript:
Code Snippets
/* TASK 1.1: declare and initialize a boolean variable */
let isTrue : boolean = true ;
/* declare and initialize a string variable */
let myName : string = "Stephanie" ;
/* declare and initialize a number */
let myAge : number = 32 ;
/* declare and initialize an array of booleans */
let isVeryTrue : boolean [ ] = [ true , false ] ;
/* declare and initialize an array of strings */
let stringArray : string [ ] = [ "2" , "b" , "6" ] ;
/* TASK 1.2: Declare and implement a function which takes in two numbers and
returns their sum.*/
function totalSum ( a : number , b : number ) {
return ( a + b ) ;
}
console . log ( totalSum ( 2 , 8 ) ) ;
/* TASK 1.3: Declare a new type that describes an object containing the keys and
types below:
amount: a number
uniqueId: a string
isValid: a boolean
addressLines: an array of strings */
type Data = {
amount : number ;
uniqueID : string ;
isValid : boolean ;
addressLines : string [ ] ;
} ;
function getData ( personalData : Data ) {
return personalData . uniqueID ;
}
console . log ( getData (
{
amount : 15 ,
uniqueID : "Sam" ,
isValid : true ,
addressLines : [ "1 Park Lane" , "2 Falcon Way" ]
}
) ) ;
/* TASK 1.4: Declare a new type which is any one of: "BLUE" or "YELLOW" */
function setColor ( color : string | string ) {
return "My favourite color is " + color ;
}
console . log ( setColor ( "BLUE" ) ) ;
console . log ( setColor ( "YELLOW" ) ) ;Today's Progress : Learned how to convert React JavaScript to TypeScript. Spent the day with my pairing partner converting all the .js components of a “to-do list” React app to .tsx components.
Today's Progress : Today we learned how to use VS Code to debug code. We also learned a bit more about how to code using TypeScript.
Tomorrow I have a progress interview. Therefore, I also took some time to review the code from our week 9 group project to make sure I understood it. My programming pair partner for this week, Beatrice, was kind enough to let me practice explaining it to her. She asked me some good questions about it too.
In the evening I met with my mentor, Arthur, and he helped me review and practice answering common interview questions that someone might be asked when interviewing for a software development job.
Today's Progress : Hackathon Friday at School of Code. With our programming pair partner our challenge was to build a weather checker app using Typescript and React. The user needed to be able to input the name of a city and have weather information about that city added to the page.
We first made a plan then created a component tree diagram in Miro before we started any coding. I had my progress interview in the middle of the day so Beatrice did a large chunk of the coding during the 1 1/2 hours that I was away for my interview.
In the last bit of time we had at the end of the day we managed to add a background image and weather icon which reflects the city's weather.

Today's Progress : Continued to work through more of the Free Code Camp curriculum for the JavaScript Algorithms and Data Structures Certification. Also started watching Dave Grey's Node.js Tutorials on YouTube.
Link(s) to work : JavaScript Algorithms and Data Structures Certification
Link(s) to resources : Node.js Tutorials
Thoughts: I have now completed the first twelve weeks of the School of Code (SoC) boot camp. When I started, the only coding I knew how to do was some basic Python from the Code First Girls intro course I took last summer. I didn't know any JavaScript, HTML, or CSS. I didn't know how to use Git or GitHub. I had never heard of a PERN Stack much less how to code using PostgreSQL, Express, React, and NodeJS. In these past twelve weeks, we have been taught a massive amount and I've worked incredibly hard - day, night, and every weekend. It's amazing how much I have learned and grown in just three months.
I still feel so behind though in my comprehension and was feeling quite discouraged yesterday. However, Bee helped me gain some perspective by pointing out that before our SoC boot camp started, she spent two months going through some Udemy courses on JavaScript (while also working). At our SoC bootcamp we only spent 3 days learning what she had spent a full 2 months learning on her own.
I really enjoyed going through this basic JavaScript course on Free Code Camp today. It's so much easier on my brain. I'm learning things that so many others on my SoC course already knew before they started. Some of these concepts look familiar to me because we have used them in our coding at SoC but I had not learned them yet.
This post encouraged me too:

Today's Progress : This morning David Adams, Site Reliability Engineer (SRE) at ManyPets, gave us a interesting, practical presentation about the Continuous Integration and Continuous Delivery (CI/CD) cycle.
In the afternoon, I met my new programming pair partner for the week and together we started learning more about Amazon Web Services' many products. We created a new AWS account and followed the Amplify with React tutorial to create a full stack application with the AWS Amplify Comment Line Interface (CLI). We didn't have time today to add authentication to the app or deploy and host it but managed to get everything else done from the tutorial.
Link(s) to resources : Amplify with React Tutorial
Today's Progress : This afternoon we did group research projects on Nextjs, Gatsby, and Remix. Each programming pair was assigned one of the React frameworks to research. We later presented to groups who looked at the other two frameworks. My programming partner and I were assigned to research Remix. As part of our research we created a Remix project from scratch. Our group presentations at the end led to some interesting discussions about which framework was better to use depending on your needs.
In the morning I also solved a CodeWars kata with my programming pair partner for this week.
Link(s) to resources : Nextjs, Gatsby, and Remix
Today's Progress : Continuted watching Dave Grey's Node.js Tutorials on YouTube and writing the code along with the tutorial.
Link(s) to resources : Node.js Tutorials
Today's Progress : Continued to work through more of the Free Code Camp curriculum for the JavaScript Algorithms and Data Structures Certification.
Link(s) to work : JavaScript Algorithms and Data Structures Certification
Today's Progress : Continued to work through more of the Free Code Camp curriculum for the JavaScript Algorithms and Data Structures Certification. Also watched more of Dave Grey's Node.js Tutorial playlist on YouTube.
Link to work : JavaScript Algorithms and Data Structures Certification
Link to resources : Node.js Tutorials
Today's Progress : Continued to work through more of the Free Code Camp curriculum for the JavaScript Algorithms and Data Structures Certification.
Link to work : JavaScript Algorithms and Data Structures Certification
Today's Progress : Continued to work through more of the Free Code Camp curriculum for the JavaScript Algorithms and Data Structures Certification.
Link to work : JavaScript Algorithms and Data Structures Certification
Today's Progress : Continued to work through more of the Free Code Camp curriculum for the JavaScript Algorithms and Data Structures Certification.
Link to work : JavaScript Algorithms and Data Structures Certification
Today's Progress :
This month at School of Code we have been put into teams of six people and tasked with designing a full stack web application which solves a real-world problem. The aim of this month-long project is to help us experience what it's like to be part of a real-life engineering team building a practical solution for our end users.
Today as a team we accomplished the following:
Key Principles from our Team Manifesto:

Pensées:
Today was our first day back after a two-week holiday and the first thing we did was find out who our teammates are for this final project. I have only worked with one of my five teammates (pair programming) before but know some of them as we're in a larger 40 person group (A) on the bootcamp. I am very excited to about our team. They are all great people and we have huge potential.

Today's Progress :
Disney Ideation Method:

User Stories:

The Unique Selling Point (USP) of our app will be:
Now that we had agreed on an idea for our app we decided on a team name: Frugal Fanatics

Today's Progress : Today we began to define our Minimum Viable Product (MVP) and to design a basic low fidelity wireframe based on our requirements.
We also created a Market Research Survey on Google docs. I shared it on LinkedIn, Facebook, and on the School of Code Slack channels to gather as much feedback as possible.
Link to our survey : Frugal Fanatics Market Research Survey
Today's Progress :
We had 74 people complete our Market Research Survey! The results led us to quickly pivot our MVP based on the user feedback.
It showed that the vast majority of those surveyed have increased stress and anxiety as a result of the cost of living crisis. This led us to decide to add a component to the app which would help them, such as a mindfulness element.
Users also indicated that they were keen to have a budgeting tool as well as a tracker for their expenses and saving. However, not many indicated that they needed help with managing debt. So we decided to shelve the debt tracker for the time being.
Today we also finished our low fidelity wireframes.

Today's Progress :
We made final decisions on our Tech stack today, including using relational databases over non-relational. We also decided on our Git branching strategy (GitHub Flow) and practiced it using a practice repo. We will be protecting the main branch and deploying after every sprint. In addtion, we agreed on our colour scheme.
Tech Stack:

Colour Scheme:

Today's Progress :
We finally started coding today!
Team Rota:

Other work we did today as a team:
On the Front End:
On the Back End:
Entity Relationship Diagram 
Today's Progress :
We merged all the front and back end branches this morning so we are moving forward on a uniform copy. With my pair partner for the day I set up the back end to include 3 models and 3 routes connected to the database tables on elephantSQL.
Today's front end teams:
Today's Progress : Today I was working with a different partner on the back end. We debugged and successfully tested GET requests for userRoutes, expensesRoutes, and savingsRoutes via Postman. We also successfully debugged and tested POST for userRoutes.
I drafted the README doc for our back end repo.
We also deployed the back end to Render: Users Table, Expenses Table, and Savings Table
Today's Progress : This morning, with my partner, I finished debugging and testing the back-end GET and POST requests for users, expenses and savings.
We then prepared our group presentation for our mid-month product demos which we showed in the afternoon to everyone in Group A (around 40 people). We received some helpful feedback from the coaches which we will bring into our planning next week.
Today's Progress : Worked on documenting our teams progress since we started, including taking screen shots and recoding videos which demonstrate our app as it is today.






Today's Progress : Today we discussed our goals for our next week-long sprint which starts today. Our top priority is to get the front and back end connected. Right now we have a fully funtional back end with GET and POST requests working. The front end is working too but with dummy data that's been hard coded.
My programming pair partner for today and I worked on cleaning up the code on the front end: breaking down the components into groups and updating the terminology to match the database. At the end of the day, we met as a team of six again and decided that tomorrow morning four of us will work together to agree upon how we want to connect the front and back end so we are not doing separate things (on the front and back end) that don't end up working together.
We are also considering at what stage we will implement authentication - at the start before completing the budget information form, or only after that form has been completed but before displaying the custom dashboard which is populated with data from the completed form.
Today's Progress : Last week, we created a custom Express.js server on the back end and built our front end using the Next.js React framework. We realised this week that there are some challenges with connecting these two. Therefore, today we explored some other options for the back end that would work better with Next.js, such as Supabase. Some of the features that Supabase offers are a Postgres database and authentication. It is also open-source. We spent today discussing, researching and experimenting to determine the best option to use. While I was doing this with a few of my teammates, two others from our group worked together to get the front end deployed on Netlify as well. When we divide and conquer we make great progress together as a team!
Link(s) to resources : Supabase
Today's Progress : Yesterday afternoon we created a test branch off our main front end branch and scaled it down to test whether we could get Supabase working with authentication and our simplified Next.js app. We managed to get it working so decided to go with Supabase + Next.js instead of elephantSQL and Express.js with Next.js. It was easy to quickly replicate our Postgres database in Supabase. Then we started refactoring our code on the front end using Supabase. It's been slow going as it's all new to us. Up to this point, the only authentication that we've learned in the bootcamp was how to use Auth0 as a login for a simple static site. Our app for this project, however, requires authentication and authorization when accessing the database and it's also a dynamic website.
We also spent time as a team today discussing how we can make our app fun and gamefied since that's one of our unique selling points. We have some great ideas which we hope to implement once we finish connecting the front and back ends.
Two of our team worked together today updating the front end to make it accessible. By the end of the day, Google's Lighthouse accessibility audit was showing all green with 100% ratings.
This evening I spent some time reading through documentation on Next.js and supabase so I have a better understanding of how they work. I feel more confident now going into tomorrow.
Tech Stack starting week 3

Accessibility - Lighthouse Audit



Today's Progress : Discussed our goals first thing this morning. Decided to make dark mode the default mode for our app as we all think it looks better (based on our high fidelity wireframes).
Then we split into two teams for the day. My team continued refactoring the code on our front end to add authentication with supabase. It was slow going but we made some good progress.
The second team worked on making the savings page of our app look more fun with icons and colors.
We also had the opportunity to hear from two companies that are hiring for roles that we can apply for when we finish the bootcamp. One of them is hosting a hackathon next week for potential applicants. Passionnant!
High Fidelity Wireframe dark mode

Today's Progress : Today we agreed on the name of our app: frumo (short for frugal money).
My pairing partner and I started working on the dark mode version of our app. I enjoyed learning how to use Tailwind CSS for the first time.
We also prepared and gave a presentation to the coaches and other teams in Group A summarizing what we accomplished this week.
Sprint goals week 3 and accomplishments:

Savings page with features added to make it more fun:

Today's Progress : I spent most of today with my pairing partner updating the code so that our app runs by default in dark mode and the dark mode matches our high fidelity wireframe. It was a lot of grunt work but the end result looks good. It also helped me to get more familiar with the interworking of the code on the front end, Tailwindcss, and Figma. We also tried adding a celebration animation to the app for when a goal is achieved to make the app more fun.
Another pairing group from our team worked on the landing page. The third pairing group from our team continued working on the savings page.
At the end of today, the team decided that I should be the scrum leader for the rest of our time working together. I served as the scrum leader our first week and then we started changing to a new scrum leader every two days. Even though half the team initially weren't keen on being a scrum leader, we thought everyone should have the chance to lead because it would be a good experience. It was also interesting to see people's different leadership styles.
frumo app in dark mode:








Today's Progress :
As the scrum leader today, I ran the daily stand-up and end-of-the day retrospective. That evening, one of my teammates sent me a message which boosted my confidence. They said,
“Hey Stephanie, I think you did a fantastic job leading the team today! You kept the stand-ups on point and I think we were a lot more clear and productive thanks to it!”
It was a surprise to receive their message and their encouraging words made my day.
We paired off into three teams today with tasks to complete. My partner and I worked on making the app responsive so that you can view it on mobile phones as well.
By Friday we have to prepare a short video introducing our project, create a new YouTube account for our team, and upload the video to this account. Therefore, I started preparing the PowerPoint presentation and embedding a demonstration video of our app into it.
Today's Progress :
I had a fun day today participating in my first hackathon for a potential employer. It's the first step to apply for a junior software developer role at this company. I was put in a group of four and we were given four hours to design and create a web app to promote sustainability to individuals and software development project teams. We also had to prepare and give a 5 minute presentation to a panel of interviewers from the company about our app.
Throughout the day, we were each pulled out at different times to meet one to one with someone from the company for a casual interview. I enjoyed my conversation with the person who interviewed me and learned a lot more about the company. All in all, it was a great experience. I had never worked with the three people in my group but we worked well together and the interviewers said that our presentation was really good.
Today's Progress :
Today was the last day to work on our app. It was a flurry of activity and stress but we got through it. The main things we worked on were:
Today's Progress :
Today we recorded our presentation and submitted it. You can view it here:
Frugal Fanatics presentation
If you'd like to try out our app for yourself, check it out here: https://frumo.co.uk/

Celebrating the completion of our final project!

Today's Progress :
Today I took on a 6 kyu Shopping List kata on CodeWars. First, I wrote a plan in plain English. I did something differently today though. Once I'd written the plan, I worked backwards. I looked at the best solutions and then wrote code to solve it. I did it in steps, first writing the code to solve the simplest part of the kata. For the next step, I wrote the code to include any discounts and buy one get one free deals on the products. Throughout I wrote comments explaining each line of code. I did all of it in a private repo in js files and tested them in JS Console.
Link to resource : Codewars Shopping List kata (6kyu)
Today's Progress :
Continuing on from yesterday, today I wrote code to test the solutions that I wrote yesterday. I initialised a Node.js project and installed Jest as a dependency. Then I created the test files, wrote the tests, and ran the tests ( npm test ). Loved seeing those green pass test results!
Today's Progress : Today we worked on preparing and rehearsing our presentation for the School of Code demo day.
Today's Progress : I worked with one of my Frugal Fanatics teammates this morning to write some end to end tests to test our app using Cypress. It was really fun to explore testing with Cypress. We hadn't done it since week 6 of the 16 week bootcamp.
Today's Progress :
Today we shared our frumo app to the School Of Code's partner companies who are looking to hire talented junior developers. Our team had the chance to share our frumo app with 12 people from 9 different companies. Their responses blew me away! Here are a few quotes:
"Awesome idea"
"The best presentation I've seen all day. Very professional"
"Shout out to the gamification of savings"
"Amazing app"
"Awesome presentation"
"Really useful"
"Makes dealing with money more digestible for non-financial people"
"Looks fantastic"
"Merveilleux"
"The dashboard is beautiful"
"Really good looking app"
"Looks really impressive. Very professional."
My personal favourite quote for the day though was:
"Anyone can learn to code with enough time. How you work with people and your communication skills are much harder to learn."
It gives me high hopes as I continue learning how to code even after my days at the wonderful School Of Code are done. I am incredibly grateful to the School Of Code for choosing me, from among the 4000 applicants, to have the opportunity to attend their fantastic bootcamp. I have been stretched beyond measure and learned more than I ever thought possible these last four months. I can't wait to keep learning and coding!
