Day 15: February 23, 2017

Today’s Progress: Continued to work on FCC and updated my portfolio project

Thoughts: I decided to make some tweaks to my portfolio and added some progress bars. Unfortunately, when I went to add my random quote generator app to my portfolio, I found that it had broken overnight.

Link(s) to work:

  1. Personal Portfolio
  2. Random Quote Machine
  3. Show the Local Weather

Day 14: February 22, 2017

Today’s Progress: Continued to work on FCC.

Thoughts: Today I’ve decided to take a stab at the first of the Intermediate Projects, largely because I need a break from algorithms, but partially so that I don’t get too far ahead in the remaining curriculum without accomplishing these projects. It asked me to build a random quote machine. It turned out to be a lot less daunting than originally expected. I also worked a little bit on the Weather App.

Link(s) to work:

  1. Build a Random Quote Machine
  2. Show the Local Weather

Day 13: February 21, 2017

Today’s Progress: Continued to work on FCC.

Thoughts: The challenges are getting tougher and tougher. I feel like I’m so close to the Front End Development Certification, but really still so far just because I still have about 250 hours worth of projects to work on, and that’s AFTER I finish the intermediate and advanced algorithm scripting sections. I’ve already spent half the day on just one Algorithm and I am feeling really frustrated.

Link(s) to work:

  1. Wherefore Art Thou

Day 12: February 20, 2017

Today’s Progress: Continued to work on FCC and a little bit of my portfolio.

Thoughts: I think Sundays will be my official “day off” each week. Also, this JSON APIs and Ajax section in FCC is SERIOUSLY lacking, so my work on projects today will be limited as I do more research on it. As usual, I am still moving forward with the challenges so that I don’t lose momentum. It worked well for me with the portfolio project as I was able to go back each day and do more with it as I learned more. These intermediate algorithm challenges are no joke!

Link(s) to work:

  1. Personal Portfolio
  2. Render Images from Data Sources
  3. Prefilter JSON
  4. Get Geolocation Data
  5. Sum All Numbers in a Range
  6. Diff Two Arrays
  7. Roman Numeral Converter

Day 10: February 17, 2017

Today’s Progress: Continued to work on FCC and a little bit of my portfolio.

Thoughts: The last few Algorithm challenges were a doozy. With the exception of the Where Do I Belong challenge, I had to look up the answers to the remaining ones to try and get an understanding of how I needed to accomplish what was being asked of me in JavaScript. It was kind of frustrating, but I’ve decided to plug through and keep the momentum going.

Thanks to someone in the FCC chat I was able to figure out why my social media icons were behaving weirdly (I didn’t properly close a tag somewhere in the code).

Link(s) to work:

  1. Personal Portfolio
  2. Seek and Destroy
  3. Where Do I Belong
  4. Caesars Cipher

Day 9: February 16, 2017

Today’s Progress: Continued to work on FCC and a little bit of my portfolio.

Thoughts: I think I am officially setting The Odin Project to the side. They eventually have more of a focus on Ruby/Ruby on Rails and I think that it’s already a lot to try and learn as many languages as I would be between my actual coursework and FCC without adding that to the list. I don’t want to set myself up for failure by adding too much to my plate, so for now I’ll keep my focus on FCC.

The challenges today were just that: challenging. I really enjoyed it because I was able to put a lot of the stuff I’ve learned up until now to work. I still have to look up syntactical things pretty often, but at least I know what to look for. I feel like I have a grasp on the algorithms (and could write pretty efficient pseudocode as a result). The hardest part for me currently is remembering how to accomplish a certain thing in a specific language. At some point I would like to remember a lot more without having to Google the syntax.

Link(s) to work:

  1. Reverse a String
  2. Factorialize a Number
  3. Check for Palindromes
  4. Find the Longest Word in a String
  5. Title Case a Sentence
  6. Return Largest Numbers in Arrays
  7. Confirm the Ending
  8. Repeat a String Repeat a String
  9. Truncate a String
  10. Chunky Monkey
  11. Slasher Flick
  12. Mutations
  13. Falsy Bouncer

Day 8: February 15, 2017

Today’s Progress: Continued to work on FCC and a little bit of my portfolio.

Thoughts: I decided to start my Porfolio project over from scratch because my original code was getting really messy. I’ve found that I’ve come to like Bootstrap quite a bit as a result.

Taking a break from TOP today. I’ve been making really good progress on FCC and I want to keep that forward momentum going by finishing out the Basic JavaScript section, and hopefully through the Object Oriented and Functional Programming section. I’m still trying to get used to manipulating JavaScript Objects. Also, the more I get into JavaScript, the more I see the differences between it and Java. It’s a little confusing trying to keep track of the differences, but I think it’s important that I at least know certain things are possible to do because I can always look up how to do them if I forget syntax.

I was also thinking about checking out this Java MOOC to see if it would be similar to FCC but for Java. I’m really just looking for a structured way to learn that will also help me build my programming portfolio with actual projects.

Link(s) to work:

  1. Personal Portfolio Project
  2. Updating Object Properties
  3. Add New Properties to a JavaScript Object
  4. Delete Properties from a JavaScript Object
  5. Using Objects for Lookups
  6. Testing Objects for Properties
  7. Manipulating Complex Objects
  8. Accessing Nested Objects
  9. Accessing Nested Arrays
  10. Iterate with JavaScript For Loops
  11. Iterate Odd Numbers with a For Loop
  12. Count Backwards with a For Loop
  13. Iterate Through an Array with a For Loop
  14. Nesting For Loops
  15. Iterate JavaScript with While Loops
  16. Profile Lookup
  17. Generate Random Fractions with JavaScript
  18. Generate Random Whole Numbers with JavaScript
  19. Generate Random Whole Numbers within a Range
  20. Sift through Text with Regular Expressions
  21. Find Numbers with Regular Expressions
  22. Find Whitespace with Regular Expressions
  23. Invert Regular Expression Matches with JavaScript
  24. Declare JavaScript Objects as Variables
  25. Construct JavaScript Objects with Functions
  26. Make Instances of Objects with a Constructor Function
  27. Make Unique Objects by Passing Parameters to our Constructor
  28. Make Object Properties Private
  29. Iterate over Arrays with Map
  30. Condense Arrays with Reduce
  31. Filter Arrays with Filter
  32. Sort Arrays with Sort
  33. Reverse Arrays with Reverse
  34. Concatenate Arrays with Concat
  35. Split Strings with Split
  36. Join Strings with Join

Day 7: February 14, 2017

Today’s Progress: Continued to work on FCC and TOP. Also worked through my final project for class.

Thoughts:  know the rules say not to include coursework but this final project felt significant enough to include in my journey.  Just a few months ago, I wouldn’t have known how to do like 95% of what this project took to work, so I’m pretty proud of myself.

For TOP, today I went through the Git 101 section. To an extent, I’ve already kind of been using Git to save my personal stuff to Github, but it was nice to have this resource available to reinforce the information I already knew.

In regards to my Personal Portfolio project, today I focused almost exclusively on just cleaning up the code I’ve come up with so far and making it more efficient. I had to bust out the pencil and paper just to get my thoughts in order.

Link(s) to work:

  1. Gradebook Final Project
  2. Personal Portfolio Project
  3. Understanding Boolean Values
  4. Using Conditional Logic with If Statements
  5. Comparison with the Equality Operator
  6. Comparison with the Strict Equality Operator
  7. Comparison with the Inequality Operator
  8. Comparison with the Strict Inequality Operator
  9. Comparison with the Greater Than Operator
  10. Comparison with the Greater Than Or Equal To Operator
  11. Comparison with the Less Than Operator
  12. Comparison with the Less Than Or Equal To Operator
  13. Comparisons with the Logical And Operator
  14. Comparisons with the Logical Or Operator
  15. Introducing Else Statements
  16. Introducing Else If Statements
  17. Logical Order in If Else Statements
  18. Chaining If Else Statements
  19. Golf Code
  20. Selecting from Many Options with Switch Statements
  21. Adding a Default Option in Switch Statements
  22. Multiple Identical Options in Switch Statements
  23. Replacing If Else Chains with Switch
  24. Returning Boolean Values from Functions
  25. Return Early Pattern for Functions
  26. Counting Cards
  27. Build JavaScript Objects
  28. Accessing Objects Properties with the Dot Operator
  29. Accessing Objects Properties with Bracket Notation
  30. Accessing Object Properties with Variables

Day 6: February 13, 2017

Today’s Progress: Continued with FreeCodeCamp and Odin Project materials.

Thoughts: I skipped a day and I’m pretty glad for it. I think I needed a mental break from everything. I also skipped the second web project until today so that I could work on some other stuff. Will likely do bits and pieces of it over time as I have actually been wanting to redo my portfolio and this is the perfect opportunity to do so. I think this will be a longer term project I can dedicate time to here and there without slowing my progress down on FCC and TOP. I like what I have been able to come up with so far, though I have my work cut out for me in terms of making my code more efficient.

In other news, the basics of JavaScript syntax seem to be really similar to Java so that’s nice. You don’t have to declare the type of variable when creating them (like String or int), but it still uses camelCase for example. I think this section will go by pretty quickly as I’m not as new to object oriented programming as I once was.

Link(s) to work:

  1. Personal Porfolio Project
  2. Railsbridge Installfest
  3. Comment Your JavaScript Code
  4. Declare JavaScript Variables
  5. Storing Values with the Assignment Operator
  6. Initializing Variables with the Assignment Operator
  7. Understanding Uninitialized Variables
  8. Understanding Case Sensitivity in Variables
  9. Add Two Numbers with JavaScript
  10. Subtract One Number from Another with JavaScript
  11. Multiple Two Numbers with JavaScript
  12. Divide One Number by Another with JavaScript
  13. Increment a Number with JavaScript
  14. Decrement a Number with JavaScript
  15. Create Decimal Numbers with JavaScript
  16. Multiply Two Decimals with JavaScript
  17. Divide One Decimal by Another in JavaScript
  18. Finding a Remainder in JavaScript
  19. Compound Assignment with Augmented Addition
  20. Compound Assignment with Augmented Subtraction
  21. Compound Assignment with Augmented Multiplication
  22. Compound Assignment with Augmented Division
  23. Convert Celsius to Fahrenheit
  24. Declare String Variables
  25. Escaping Literal Quotes in Strings
  26. Quoting Strings with Single Quotes
  27. Escape Sequences in Strings
  28. Concatenating Strings with Plus Operator
  29. Concatenating Strings with the Plus Equals Operator
  30. Constructing Strings with Variables
  31. Appending Variables to Strings
  32. Find the length of a String
  33. Use Bracket Notation to Find the First Character in a String
  34. Understand String Immutability
  35. Use Bracket Notation to Find the Nth Character in a String
  36. Use Bracket Notation to Find the Last Character in a String
  37. Use Bracket Notation to Find the Nth to Last Character in a String
  38. Word Blanks
  39. Store Multiple Values in one Variable using JavaScript Arrays
  40. Nest one Array within Another Array
  41. Access Array Data with Indexes
  42. Modify Array Data With Indexes
  43. Access Multidimensional Arrays with Indexes
  44. Manipulate Arrays with Push
  45. Manipulate Arrays with Pop
  46. Manipulate Arrays with Shift
  47. Manipulate Arrays with Unshift
  48. Shopping List
  49. Write Reusable JavaScript with Functions
  50. Passing Values to Functions with Arguments
  51. Global Scope and Functions
  52. Local Scope and Functions
  53. Global vs. Local Scope in Functions
  54. Return a Value from a Function with Return
  55. Assignment with a Returned Value
  56. Stand in Line