Today's Progress: LAST DAY!!
Thoughts: I finally made it!!! Oh my god that was so hard but I feel so good now that I made it to 100 days! To celebrate I made a special app in Sinatra that tells you whether or not it's Taco Tuesday. It's funny how my Sinatra portfolio project took a month to make and this app took 5 hours to make. Haha! Tweet
Link to work: TacoTime
Today's Progress: Worked through some of Flatiron's curriculum: Rails Generators Tweet
Link to work: Rails Generators
Today's Progress: Worked through some of Flatiron's curriculum: Rails Generators Tweet
Link to work: Rails Generators
Today's Progress: Worked through some of Flatiron's curriculum: Rails Generators
Thoughts: I finished the Rails Generators lesson today. I'm so ready to keep moving forward in the curriculum, just too much other crap taking up my time right now!! UGH, can't wait until this busy time is over so I can just sit down and CODE! Tweet
Today's Progress: Worked through some of Flatiron's curriculum: Rails Forms Overview and form_for
Lab
Thoughts: I'm still working through! Taking it one day at a time and just trying to get as much done as I can. Tweet
Link to work: form_for
Lab
Today's Progress: Worked through some of Flatiron's curriculum: Edit/Update Action, form_for
on Edit, and Strong Params Basics
Thoughts: I'm liking these form helpers. Definitely cleaner and easier than Sinatra. I can't WAIT to get to partials and test drive these puppies!! Tweet
Links to work: Edit/Update Action, form_for
on Edit, and Strong Params Basics
Today's Progress: Worked through some of Flatiron's curriculum: Create Action, Create Action Lab, and Index, Show, New, Create Lab
Thoughts: I feel like I'm starting to gain momentum in the curriculum again! It seems almost like Sinatra was the hard stuff and Rails is the "cheat sheet" version. Tweet
Link to work: Create Action Lab and Index, Show, New, Create Lab
Today's Progress: Worked through some of Flatiron's curriculum: Rails form_tag
Lab
Link to work: Rails form_tag
Lab Tweet
Today's Progress: Worked through some of Flatiron's curriculum: Rails form_tag
Link to work: Rails form_tag
Tweet
Today's Progress: Worked through some of Flatiron's curriculum: Rails URL Helpers and Rails form_tag
Tweet
Link to work: Rails URL Helpers
Today's Progress: Hosted a Code Talk Tweet
Link to work: 03.31.19 Code Talk
Today's Progress: Worked through some of Flatiron's curriculum: Rails URL Helpers and Rails URL Helpers Lab
Thoughts: I finally finished the Rails URL Helpers lesson and started on the lab but I didn't finish it yet.
Today's Progress: Published a new blog post
Thoughts: I put a lot of work into my Flatiron blog Code Talk so I decided to take the demo blog post and transform it into an actual post with the Code Talk notes and session video! Tweet
Link to work: Slipsum L. Jackson Blog Post
Today's Progress: Hosted and Code Talk and participated in a Twitter chat
Thoughts: I hosted Code Talk: Flatiron Blog which mainly went over blogging ideas, best practices, how Flatiron hosts the student blogs through GitHub Pages, and how to customize your blog using Jekyll. I also took part in my first ever Twitter chat! That was really cool and I enjoyed it a lot! Tweet
Today's Progress: Worked through some of Flatiron's curriculum: RESTful Action Index Lab, Rails Dynamic Request, Rails Dynamic Request Lab, and Rails URL Helpers
Thoughts: I'm definitely beginning to see what some people were talking about when they said that the Rails section was really buggy. At least I'll get a lot of practice opening GitHub issues and making pull requests! Tweet
Links to work: RESTful Action Index Lab, Rails Dynamic Request, Rails Dynamic Request Lab, and Rails URL Helpers
Today's Progress: Prepping for upcoming study sessions
Thoughts: Excited for my first Twitter chat on Thursday! Tweet
Today's Progress: Hosted a Code Talk session today
Thoughts: I think this session went really well today. We had a first-time attendee share their JavaScript project and ask for help which was followed by a 15-minute troubleshooting session. The group split into two for the code challenge in which one solved it using Ruby while the other used JavaScript. It was cool to see both solutions and how the approach was different depending on which language was used. Also I had two students volunteer to lead Code Talks!! Tweet
Link to work: 03.25.19 Code Talk
SKIPPED!
Today's Progress: Worked through some of Flatiron's curriculum: Rails Hello World, ActiveRecord Models and Rails, and Intro to REST
Links to work: Rails Hello World and ActiveRecord Models and Rails
Today's Progress: Worked through some of Flatiron's curriculum: Rails MVC and Rails Static Request
Thoughts: It's a lot of review. There's not too much different from Sinatra in here.
Link to work: Rails Notes
Today's Progress: Contributed to the 30 Seconds of Knowledge extension!!
Thoughts: Tweet
Link to work: Official Commit
Today's Progress: Reviewed old notes and worked through more Rails
Today's Progress: Started on Rails today
Thoughts: Got through the first three lessons of Rails today... I'm excited to see what comes next!
Today's Progress: Open source contribution
Thoughts: I found a really cool Chrome extension called 30 Seconds of Knowledge that was suggested by another Flatiron student and checked out their GitHub. I noticed that they were looking for someone to review the Ruby code snippets they had so I went in and reviewed three of them and submitted a pull request. Tweet
Link to work: Review Ruby snippets
Today's Progress: Code Talk session
Thoughts: Had a great Code Talk session today! It was a hard challenge but we took the time to work through the whole thing until the end and ended up with two passing solutions!
Link to work: Meta MadLibs
Today's Progress: Updated and organized the Big Ass List of Code Knowledge spreadsheet
Thoughts: Tweet
Link to work: BALOCK
Today's Progress: I PASSED MY SINATRA PROJECT ASSESSMENT!!
Link to work: Rxeactions
Today's Progress: Helped other students with their Sinatra projects
Thoughts: Today I looked at two other students' Sinatra projects and helped them with styling and troubleshooting. It felt good to be on the other side of the issue for once!
Today's Progress: I worked on updating my blog
Thoughts: I added excerpts to all of my blog posts and fixed my About page. I like how it's looking and I think I will use my GitHub page as my portfolio site instead of paying for hosting for another year. Tweet
Link to work: Feral Code Philly
Today's Progress: I FINISHED MY SINATRA PROJECT
Thoughts: Tweet
Link to work: Rxeactions
Today's Progress: Code Talk today!!
Thoughts: Had a great Code Talk session this morning to start off the week! :) Tweet
Link to work: 03.11.19 Code Talk
Today's Progress: Worked on the Sinatra project
Thoughts: I wrote most of the rest of my blog post... just a little more to go! Tweet
Link to work: Sinatra Project
Today's Progress: Worked on the Sinatra project
Thoughts: I wrote about half of my blog post for the Sinatra project.
Link to work: Sinatra Project
DAY OFF FOR GIRL DAY!!
Today's Progress: Worked on the Sinatra project
Thoughts: I recorded my walkthrough video and hit a snag that took an hour to fix! In the user edit form, no matter what I do, the user is required to reenter their password. I didn't want to have to include that, but if I don't, the params[:user][:password]
comes back empty and throws an error and, therefore, won't save any changes made in the edit form. Frustrating but I couldn't find a way around it and don't want to put in the time at this point to figuring it out. I also wrote up and outline for my blog post. I've been keeping this log plus a project journal so hopefully that will make it much easier to put the post together.
Link to work: Sinatra Project
Today's Progress: Worked on the Sinatra project
Thoughts: I recorded myself adding another feature and it went really well. It was so stoked! I added a "Stop Taking Medication" button because I was worried that the user might delete the medication when they were off it (and as a result, lose all of the data attached to the medication and its associated reactions) instead of just marking it as not currently be being taken. There were a few attributes that didn't display properly when I ran shotgun, but I didn't hit an error page the whole time! I also wrote up my README.md
file tonight so I slowly getting closer to the end! Tweet
Link to work: Sinatra Project
Today's Progress: Worked on the Sinatra project
Thoughts: I finished my about page and solved an issue that was messing with my dates. I think my about page is pretty cool! It has instructions on how to use the app, an FAQ section, how I got started with the idea, and my contact info. Tomorrow I'm going to write up my README file, record myself adding another feature, and record my walkthrough video. I also have to take my journal entries and mash them into something resembling a blog post but all the content is there already so that won't be too hard. Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my About page for the Sinatra project
Link to work: Sinatra Project
Today's Progress: Bootstrapping my Sinatra project Tweet
Link to work: Sinatra Project
Today's Progress: Bootstrapping my Sinatra project
Link to work: Sinatra Project
Today's Progress: Bootstrapping my Sinatra project
Thoughts: Killing it in style Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: Finished up with my controller validations and styled a little bit. Okay, maybe a lot. I got sucked in showing another student some Bootstrap stuff and it was the beginning of the end... Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: I discovered nested routing and it was the answer to all the frustration and confusion I went through last week!! (I wish it would have come a little earlier but, what can you do.) I implemented it and was able to get rid of a lot of unnecessary code that was junking up my app. I added a lot of validations to my forms by way of conditional redirections with flash messages. I just have to finish up with my medication and reaction controllers and then take care of all the comments throughout my code. Plus another student reminded me today of the blog post and video recordings that we have to do as well which I pretty much completely forgot about! Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: I definitely didn't get an hour of code in today. I worked a little bit on my Sinatra project, but it was mainly to clear my head and take a break from talking to all the people at NET/WORK Philly. I made some great connections, but every event I go to is pretty exhausting by the end! Tweet
Link to work: Sinatra Project
Today's Progress: Held a Code Talk session and troubleshooted my Sinatra project
Thoughts: I finally led a Code Talk session with a challenge that I was really happy with! Brad presented his React/Redux WIP project and I showed my Sinatra project, then we broke into two groups for the challenge and regrouped and had a nice dialog about regex. Now that's what I'm talking about!! Afterward Brad helped me solve some issues with my Sinatra project. I'm going to implement nested routes on Wednesday and see if they work out for me! Tweet
Link to work: 02.25.19 Code Talk
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: I started styling my project a little bit just to do something fun with it! Then I sucked it up and went to finish coding out my authorizations. I was trying to use ActiveModel::Errors
to display errors in my views but it didn't seem to want to work for me. I ended up installing sinatra-flash
instead and it looks pretty easy to work with. I'm really hoping to finish up with this requirements for this project tomorrow so I can get it out to a few people to look at before I send it in for assessment. Long time coming but I think it will be worth it in the end for my portfolio. Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: I went to a friend's today intending to work at later on tonight but one this led to another and I ended up staying all day. I did show her my app and got some good feedback and ideas for eventual expansion. I also started styling so it's not that garish light blue color anymore.
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: I'm getting very frustrated with my project because the past two nights I've attended the Sinatra Project AMA study group with DJ to ask for help, but have gotten answers as if I were doing a Rails project and they don't work in my Sinatra app! I do like the different type of interaction and conversations I'm able to have with him about programming, it's just annoying when the solutions I implement from the AMA study session don't work. I've been figuring out alternate solutions and at least my conversations with DJ will come in handy next project! Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: I created slug helper methods for my Reactions
model but I based them off of the Medications
model. Basically the slug is the medication name followed by the reaction's id
. I was trying to think of a way to persist the medication_id
between views so I set a session key for this but I was told later that it's an insecure way to go about it and I should really set it up in my controller. I still have to figure out how to do this.
I cleaned up my new and edit medication forms a bit and added more info to my homepage so I can use it to display information as I test out my app. It's really coming in handy! I also dove into Bootstrap a bit tonight to create a navbar to make it easier for me to navigate between pages while testing everything out.
I started implementing partials today into my views! I like how this project is coming along. I think I'm going to get a huge chunk of it done tomorrow and then wrap it up over the weekend. After talking some more with DJ, I'm not going to worry about associating the reactions to the specific medication dosage amounts. Instead, I'll add the medication information right into the reaction as it as at the time of creation. I think that will do pretty much the same thing I was hoping for. I also took the current attribute from my reactions model and moved it to my medications model because it made more sense there. Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: I spent about 3 hours today working on an issue with my session not persisting as I browsed through different pages of my app. I tried to use some different gems to set a secure session_secret
but it seems that the only thing that seems to work is a plain old string. I read through the Sinatra documentation but I just couldn't get it to work and I had wasted enough time on it already.
After the frustrating set back, I was able to get my full CRUD done for my UsersController
as well as code out all the views! I think tomorrow I'll be able to finish up the reactions and then start figuring out how to approach my medication changes issue. Tomorrow night there's an AMA study session for the Sinatra project which will hopefully be helpful. We'll just have to see! Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: Built out most of my UsersController
today and my user edit form. I'm still trying to get the hang of interlacing the SessionsController
and UsersController
to create a new user as well as a new session. It's a little trickier than I had anticipated. Tweet
Link to work: Sinatra Project
Skipped... Whoops again!!
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: Lots of thoughts today! In the spirit of keeping things DRY, I'll link to my latest project post. Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron
Thoughts: Today's word of the day is PROGRESS!! I got my models, associations, and validations written. I ran my migrations and am two-thirds of the way through creating and running my seed files. Can't wait to get all my parts connected so I can start the actual app building! Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my Sinatra project for Flatiron and published my blog post
Thoughts: I had a good chat with one of the Learn instructors this morning and feel like I'm finally headed in the right direction with my project. I was able to get my migration tables created, set up my models, and set up my associations. Tomorrow I'm going to start working on the ActiveRecord validations to put in my models. Tweet
Link to work: Sinatra Project
Today's Progress: Worked on my blog post for Flatiron
Thoughts: Almost finished my blog post today! Hope to wrap it up tomorrow!
Link to work: What's Up With That!?: SINATRA_ENV
Skipped... Whoops!
Today's Progress: Started on my Sinatra project for Flatiron
Thoughts: Finally made some headway on the Sinatra project today after waaaay too much procrastination. I got through the pre-project checklist and sent in a request to schedule a time to talk with one of the Flatiron leads(?) to go over it. I just got an email from this guy about the project so I'm guessing he has something to do with it... Will get into the meat tomorrow! Tweet
Link to work: Sinatra Project
Today's Progress: Code Talk and started planning my Sinatra project
Thoughts: I held a Code Talk today and we did a CSS challenge which turned out to be way too hard. Again, I asked for people to help me find code challenges for these talks so... hopefully someone does! I spent some time thinking over what I want my Sinatra app to do and looking at other apps that are similar to mine to get a feel for what I want. I think I have a good idea and plan to start coding things out tomorrow. Tweet
Today's Progress: Held a Code Talk study session
Thoughts: The topic of the session was a deep dive into FTP. I got my FileZilla app connected to my SiteGround server but now I'm thinking I may switch my hosting service because it was a real pain in the ass! Going to start in earnest on my project tomorrow. Tweet
Today's Progress: Worked on a Flatiron blog post
Thoughts: I'm writing about ENV[SINATRA_ENV]
for my next blog post and spent a good chunk of time working on it. Will finish and publish it soon!
Today's Progress: Worked through some of Flatiron's curriculum: Fwitter
Thoughts: Finally got done with Fwitter!!! Celebrate!!! I spent over an hour refactoring the crap out of it after I was done. It's interesting to see how much cleaner and easier you cna make things when you're not frustrated anymore by simply trying to make it work! Haha! Tweet
Link to work: Fwitter
Today's Progress: Worked through some of Flatiron's curriculum: Fwitter
Thoughts: Debugged some routing issues I was having and am finally moving forward with what feels like tangible progress that I actually understand, not just stumble through. This bodes well for my upcoming project!! Tweet
Link to work: Fwitter
Today's Progress: Mainly dropped in on Sinatra study sessions today and coded along with those.
Thoughts: I think the repetition of going to the same sessions over and over again is starting to help things really sink in. I'm identifying common problems and able to give correct answers that I know I couldn't have come up with before. Practice is key!!
Today's Progress: Did some review today with another student working on Tic Tac Toe with AI and also attended another Sinatra live build session hosted by section lead Howard.
Thoughts: I refactored one of my methods in the Tic Tac Toe lab and it's so much simpler now! Still haven't hit the AI logic but I have plenty of time to get that done. The Sinatra live build session was great today! I feel like we got a lot of the app built out. It's still pretty slow progress though doing only one hour at a time. Tweet
Links to work: Sinatra Community Gardener and Tic Tac Toe with AI
Today's Progress: Worked through some of Flatiron's curriculum: Fwitter
Thoughts: Yes! I paired with Heather and she helped me through that dumb error I had yesterday. We got further in the 90 minutes we coded but still, it's a hard lab! Can't wait to finish and move on to my project. Tweet
Link to work: Fwitter
Today's Progress: Worked through some of Flatiron's curriculum: Fwitter
Thoughts: Oh wow, Fwitter is definitely going to get me ready for the upcoming project! I chose to work solo since no one is online today but hopefully I can pair up with someone tomorrow! Tweet
Link to work: Fwitter
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra NYC
Thoughts: Awesome! Finished the NYC lab today! One of my stupid errors was that for my model for my join table class, the belongs_to
relationship was written as plural when it should've been singular. Another was that I was trying to submit data through an edit form without sending a PATCH
request to the server. Derp! I think I'm trying to rush these because I'm so close to the end of this section and really want to get to ActiveRecord. Tweet
Link to work: Sinatra NYC
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra NYC
Thoughts: Got stuck alternating between two errors and it's driving me crazy!! I don't want this lab to be like the Playlister!!! I lost too much time on that one as it is!!
Link to work: Sinatra NYC
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra NYC
Thoughts: Started on the Sinatra NYC lab. I think my brain is just too fried right now to concentrate on anything. I got an hour of code in but I don't feel like I did an hour's worth of work. Tweet
Link to work: Sinatra NYC
Today's Progress: Went to a Sinatra office hour session and updated my pinned repositories on GitHub.
Thoughts: I found the contact info for a woman who works on the WW app - a company I've been trying to get in touch with for a while - so I went through my GitHub and made sure my pinned repos looked good. Grammy Googles still needs some work but it's passing for now. Tweet
Links to work: Grammy Googles Repo and Grammy Googles Site
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Playlister
Thoughts: SO GLAD TO BE DONE THIS LAB!!! Tweet
Link to work: Sinatra Playlister
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Playlister and hosted Code Talk!
Thoughts: Did some pseudocode this morning at Code Talk on a pretty difficult problem involving balancing two sides of a scale. Paired up with Heather again for the Sinatra Playlister lab. We put a good 3.5 hours in today but still have 7 more tests to pass. Hopefully can wrap this up tomorrow! Tweet
Links to work: Sinatra Playlister and ScaleBalancing
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Playlister
Thoughts: Finally got back to work again today! I got through my migrations, seeding, set up my models, but now I've started with the controllers and for some reason I'm getting 404 errors all around. I'm going to take another look at it tomorrow and see what I can do. Tweet
Link to work: Sinatra Playlister
Today's Progress: rbenv installation headaches!!
Thoughts: I worked for ~12 hours today to get rbenv, my gems, and ruby to play nicely on my computer. Thankfully, I had another student help me out with troubleshooting. Again, it came down to unclear documentation. I plan to write a PR later this week or next weekend to submit explaining that they need more beginner-friendly language. Tweet
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Playlister and then I had some major computer issues that got me side tracked for a while.
Thoughts: Another student and I were pairing up on the Sinatra Playlister lab and were seeding the database. When I seed dbs I would get a weird error message and we figured out there was a conflicting gem I had installed in an rvm gemset. It took me probably 40 minutes to find out in rvm where I was supposed to go to find the gem and uninstall it and that is NOT the first time I've ended up wasting a good chunk of time because their documentation is horrible. I decided to switch to rbenv instead. Tweet
Link to work: Sinatra Playlister
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Playlister
Thoughts: This lab looks like it will be intense but I feel more confident going into this after completing my last lab. I actually pulled it up and compared it with the playlister and can see some similarities so I think it will be really helpful as I go along. I'm also starting to form some ideas for my project! :) Tweet
Link to work: Sinatra Playlister
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Complex Forms Associations
Thoughts: I FINALLY finished the Sinatra Complex Forms Associations lab!! Damn, that was hard! We had to use nested forms for the pets portion of the lab. Would have been nice to know that!!! TBH, if I was better at this I would have figured it out. A lesson I won't forget soon though (hopefully)! Twitter
Link to work: Sinatra Complex Forms Associations
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Complex Forms Associations
Thoughts: I'm still working through the second half of this Sinatra Complex Forms Associations lab. I'm going to have to go on Ask A Question tomorrow and get some help because I'm totally stuck on this new pets form and associating the owner back to them/creating a new owner. Tweet
Link to work: Sinatra Complex Forms Associations
Today's Progress: Worked on this damn CodeWars code challenge today that I still haven't solved!
Thoughts: It was a complicated problem and I think I got a solution that would work except it involves an array that grows exponentially so every time I try to run my code it times out. So my solution may be correct, but it's not feasible as far as memory goes which is as good as incorrect. I'll get back to it another day. Tweet
Link to work: Double Cola
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Complex Forms Associations
Thoughts: Didn't have as much time to code today as I would have liked but that's okay, I still got it in! I got finished about half (I think?) of the Sinatra Complex Forms Associations lab so I'll wrap that up tomorrow and see what the next one brings. Tweet
Link to work: Sinatra Complex Forms Associations
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Complex Forms Associations... and played Git Game in a study group led by Guy!
Thoughts: Started my day with a Git study session led by fellow student Guy Bryant. We worked on this repo called git-game which was pretty cool! It was like a ten level puzzle that taught you all different Git commands. There's a second level as well but I think we'll need some reinforcements to tackle that one. Also chatted with him afterward on various topics but he showed me some nice terminal shells that I hadn't gotten a chance to look into up to that point. I'll have to dedicate a bit of time soon to pick something that fits my programming style.
On another note, I started my Sinatra Complex Forms Associations lab at the bar and about 75 minutes into well... see for yourself. Haha! Tweet
Link to work: Git Game
Today's Progress: Worked through some of Flatiron's curriculum: Using Tux in Sinatra with ActiveRecord, ActiveRecord Associations in Sinatra, ActiveRecord Associations: Join Tables, Sinatra Multiple Controllers, and I revisited the Sinatra ActiveRecord CRUD Lab
Thoughts: I'm really cruising through this section but I'm about to start on the last three labs so we'll see how that goes... I found a new study buddy today!! We went over the CRUD lab and learned that the ActiveRecord::Base#update method has been depreciated. It was a lot of reading lessons and code-alongs today. Tweet
Links to work: Using Tux in Sinatra with ActiveRecord, ActiveRecord Associations in Sinatra, and Sinatra ActiveRecord CRUD Lab
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra RESTful Routes and Sinatra RESTful Routes Lab
Thoughts: I'm not really sure what the difference was supposed to be between these and what we've been doing already. It seemed to me just like the params and sessions stuff with some dynamic routes thrown in. The big picture will probably become clearer as I go along. Tweet
Link to work: Sinatra RESTful Routes Lab
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Sessions - User Logins Lab, Securing Passwords in Sinatra, and Secure Password Lab
Thoughts: This one was a bit tricky because we incorporated helper methods into this lab as well as dealt with redirects. That tripped me up a bit. I learned that in an action controller block, once you hit a redirect, the block stop executing the code. That is not the case once you call erb on a view page, it will keep going so if you're making a view conditional, you have to do it with an if/else statement. I also learned about securing passwords, which can never be a bad thing. I like that there's a gem for this one as well and that it works right alongside an ActiveRecord macro. Makes things nice and easy! One thing that stuck out to me after reviewing Flatiron's solution to the Secure Password Lab is that you should test for valid username and password input upon registration first and depending on it's validity, redirect the user to an error page/show them an error message or create a new instance of the User class. That way you won't have bad data in your database! Tweet
Links to work: Sinatra Sessions – User Logins, Securing Passwords in Sinatra, and Secure Password Lab
Today's Progress: Worked through some of Flatiron's curriculum: User Authentication in Sinatra
Thoughts: I've been waiting for this day!!! So happy that we're learning how to create and authenticate users! This opens up so many doors for future programs now! Also it was a pretty straightforward lab. Which is why I was so surprised that the solution in Flatiron's GitHub repo was wrong. Not the first time I've come across this and probably won't be the last but it's still really disappointing when it happens. I submitted a pull request for an alternate solution as well as raised an issue but, that's hasn't done shit in the past so I don't expect much now either... we'll have to wait and see I guess. Twitter
Link to work: User Authentication in Sinatra
Today's Progress: Worked through some of Flatiron's curriculum: ActiveRecord in Sinatra and Sinatra ActiveRecord CRUD Lab
Thoughts: I think relating ActiveRecord's CRUD and Sinatra's MVC Controller will definitely take some practice, but I got a good start! So thankful to my fellow Flatiron students for helping me through the second half of this lab. They probably halved the time it would have taken me to complete it. Twitter
Links to work: Sinatra ActiveRecord CRUD
Today's Progress: Worked through some of Flatiron's curriculum: ActiveRecord Setup in Sinatra
Thoughts: I went through the first ActiveRecord lesson in Sinatra and I am done for the night. Too long of a day with other work and too late of a start on my school work. I'm going to totally kill it tomorrow... starting with CODE TALK!! Tweet
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Sessions Lab and Sinatra Sessions Code Along
Thoughts: I opened up my Sinatra Sessions Lab in VS Code and deleted ONE line... now all my tests are passing. Haha! I was on to something last night, I was just lacking the mental energy to go all the way. Officially onto Sinatra's ActiveRecord section now!! Tweet
Link to work: Sinatra Sessions Lab
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Sessions Lab
Thoughts: Okay, things didn't go exactly according to plan today... This is a HARD lab! I'm still trying to wrap my head around how sessions fit in with params and instance variables in these controller action blocks. I like that we're learning about session secrets though and I read more in the Sinatra documentation on how to generate a secret. I decided to give my brain a break for tonight and get back to it tomorrow. Tweet
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra Nested Forms Lab: Superheros!, Sessions and Cookies, and Mechanics of Sessions
Thoughts: Compared to the Pirates! lab from yesterday, Superheros! was pretty easy... which I did NOT mind! I also started on the Sessions section, learning about sessions and cookies. It's pretty interesting stuff and I now know what "clearing my cookies" actually means. I plan on completing the section labs tomorrow and moving forward to ActiveRecord. Tweet
Link to work: Superheros!
Today's Progress: Worked through some of Flatiron's curriculum: Sinatra MVC Lab, Sinatra Basic Forms Lab, Sinatra Nested Forms, and Sinatra Nested Forms Lab: Pirates!
Thoughts: I am definitely mentally exhausted right now. I feel like I understand the concepts behind MVC and nested forms, it's just writing out the code and the tediousness of making sure everything is going exactly the way it's supposed to is really frying my brain right now. I think I'll have to break out the whiteboard again for this last MVC lab in the section and see how that compares to writing psuedocode on the computer. Tweet
Links to work: Pig Latinizer, Puppy Adoption Site, and Pirates!
Today's Progress: Attended a Flatiron study session on Capybara testing.
Thoughts: Capybara is definitely more readable than RSpec as far a testing frameworks go. I think I'm pretty comfortable with reading the tests but I'm not sure how well I'd do with writing the tests. I will definitely give that a shot as I go through this challenge. Tweet
Today's Progress: It's Monday so I had a Code Talk session this morning! We worked on a codewars.com code challenge called "Good vs. Evil".
Thoughts: I was in a group with Guy and Suchitra. We started out with psuedocode and once that was established we started writing the program. It was pretty straight forward, although we hit a small snag that Guy was able to solve right away. The part I liked best was when the groups met back together and shared their answers with one another. It's neat to see the similarities and differences in how we approach these problems. Tweet
Links to work: Good vs. Evil Code Challenge, Good vs. Evil Solution, and Good vs. Evil Refactored Solution
Today's Progress: I went back and reviewed the HTML Forms and Params lesson. I also took another look at the Basic Sinatra Forms Lab.
Thoughts: Okay, I'm all good with the HTML Forms and Params. They basically provide hashes-the keys being the form's name attribute and the values created by user input. Again, this is super awesome and dynamic and I can't wait to implement it in a project!
A few days ago I was pretty confused by the post methods, the paths, and what should go in the app vs. the form but now I'm pretty sure I have it figured out:
In the app.rb file (the controller) it's saying that when the server receives a GET request with the '/newteam' path, it displays the code in the newteam.erb file (a view). This file contains the form which asks for the user's input to create a basketball team. Once submitted, this form sends data as a POST request to the '/team' path. The server receives this request, goes back to our controller, captures the data stored within the matching controller action block, and displays the team.erb view. Since we're using instance variables in the controller to store data collected from the form, we're able to broaden the scope of these variables to include the team.erb file. As a result, the browser automatically redirects to the '/team' page and displays the basketball roster. Tweet
Link to work: Basic Sinatra Forms Lab
Today's Progress: Started working on a small program.
Thoughts: I wanted to work on some more of the curriculum today but didn't get to it until late and I am EXHAUSTED. I decided to stub out a little program that's been forming in the back of my mind instead. It's very simple and fun, I just have to find a way to execute it. I think this will turn into a 2-3 day project.
Link to work: It's a secret... for now.
Today's Progress: Worked through some of Flatiron's section curriculum: Passing Data Between Views and Controllers and Basic Sinatra Forms Lab.
Thoughts: First off, LOVED the examples they used for this lab. Some of the greats... not basketball, but there's a team called the Utah Jazz, right? I found it fascinating how you can retrieve user input, manipulate it, and return it in another path on your site. I was confused though with the get and post methods and which paths they were supposed to use. (Again, why I need to review the HTML Forms and Params lesson.) If it still doesn't make sense after I review, I plan on using Flatiron's 'Ask A Question' feature to try to understand. Tweet
Link to work: Basic Sinatra Forms Lab
Today's Progress: Worked through some of Flatiron's Sinatra section curriculum: HTML Forms and Params. Tweet
Thoughts: Not gonna lie, I was doing this at a bar so I will probably have to review this again soon... ¯_(ツ)_/¯
Link to work: Sinatra HTML Form and Params
Today's Progress: Worked through some of Flatiron's Sinatra section curriculum: Intro to Capybara Tests, Dynamic Routes, and Dynamic Routes Lab.
Thoughts: I really like how the dynamic routes work! It's so intuitive and user-friendly-it just makes sense to me. I'm sooo looking forward to the Sinatra project coming up and working with this concept. Tweet
Link to work: Sinatra Dynamic Routes Lab
Today's Progress: I decided to try out a new code challenge site called HackerRank because I sort of committed to this #100DaysOfCode challenge at the last minute. You can read more about that in my blog post (COMING SOON!).
Thoughts: It was very basic Ruby code so I had to clean off the cobwebs in my brain kind of similar to what you did every school year after summer vacation ended. The only hang-up I had was that I had forgotten to increment the index number at the end of each iteration of the while loop but I caught on to that pretty quickly and it was smooth sailing from there! Tweet
Link to work: HackerRank: Compare the Triplets