Days 21-25: Code with Benny
Check out my last two posts: Days 11-15, Days 16-20
If you're curious what this is all about: Introduction to Code with Benny.
Follow me on twitter! All of these daily logs are posted there in short-form ๐
What I've done so far (including what's below):
- Completed Days 0-89 of Replit's 100 Days of Python course
- Learned a variety of python skills (from simple print all the way to building dynamic web pages). Will summarize what I've learned in a later post :)
- Daily log posts on Twitter
On the personal side: started marathon training. Singapore Sundown Marathon, May 2023!
Day 21 (April 3rd, 2023)
What I covered/did
Day 80 of the Replit course I linked below!
- How to deal with data from forms in Flask (i.e. dealing with POST requests)
Resources I used
Thoughts
Today was a short working day for me. I'm training for a marathon in May on a very aggressive timeline, and today nearly doubled my previous longest distance (I ran 18km/11.2mi). My body needed some intense recovery today after the fact - I was so dehydrated after that I felt feverish, and ended up chugging sports drinks, protein shakes, and chomping down a rice bowl as soon as my stomach could take it.
Started feeling better towards the end of the day, so made it out to my coworking space to get a little ๐งโ๐ป done.
Also: had ChatGPT spur my memory on how 2D dictionaries work again. I even pushed it with a follow-up question, and it answered it perfectly.
Day 22
What I covered/did
Days 81-82 of the Replit course I linked below!
- Form/flask practice
- Learned the 'get' method: more useful for things you might want to be able to bookmark and share with others
- Post is better for usernames, passwords, etc
Resources I used
Thoughts
Still recovering from yesterday's run, while prioritizing my part-time job today. But the 100 days challenge called my name, and still got a bit of coding in.
Hoping to be able to focus more later this week on this challenge :)
Day 23
What I covered/did
Days 83-85 of the Replit course I linked below!
- Client-server model: how to use replit db to support web page form inputs --> modifying the database --> outputting new web page based on user modification. And doing all this for multiple users simultaneously :)
- HTTP & Sessions: HTTP is known as a "stateless protocol", which means once you refresh the browser, all memory is lost. Sessions are a way to save info from session to session, and it's literally a python package called "session". Learned how to work with this package and some of the functions within it
Resources I used
Thoughts
Watched a video by a YouTube channel called Fireship today on a topic that has been on the mind lately - whether there is even a point to learning to code given the rate of advancement of AI and its coding abilities. The basic takeaways of the video were that:
1) The AIs coming out are fantastic at regurgitating things from the internet in a really easy-to-read and efficient way, but isn't good at critical thinking. When you want to build a larger project with multiple large parts that haven't been created before, AI starts to stumble.
2) As a result, even though syntax and other less-critical-thinking-dependent learning items are becoming more obsolete to learn, those that study computer science and use it to build hard things will be best position to take advantage of AI tools to make themselves more efficient.
I wrote a twitter thread on this, and from my perspective, I think the claims Fireship makes are valid. I think the more you know about how to structure solutions to hard problems, the more valuable AI tools will be for you.
So, learning the syntax right now feels like trudging through a swamp. I know it'll be useful, but it's not the stuff that will help me add value to the world. I'm excited to get to the point where I understand enough about what I don't know to be able to build stuff that is useful for others.
I think I will continue to default to skipping projects until the end of this course. I'm feeling ready to move on to building my own projects and learning other skills on my roadmap.
Day 24
What I covered/did
Days 86-87 of the Replit course I linked below!
- Practice with building a blog - sessions, html/css, flask, and more
- Authentication, and replit's built-in authentication feature
Resources I used
Thoughts
I didn't do Day 86 project day, and after using ChatGPT to review the code, I definitely could see where there were gaps in my knowledge. These gaps weren't necessarily things that I had never seen before, but rather things that I had seen but whose use functions I hadn't committed to memory.
This is a bit concerning, but at the same time, I know that if I had to go back and review the content, I'd be able to figure it out. So I'm going to chug along and finish out the course :)
Day 25
What I covered/did
Days 88-89 of the Replit course I linked below!
- More authentication - allowing authentication for certain pages to basically create different user experiences based on whether the user is logged in or not
- Skipped the project for building a community chat app, but read through the code watched the solution video, and answered any questions I had using chatgpt
Resources I used
Thoughts
25% done with the 100 days of coding!!
Really cool to see less than 100 lines of code make a 1) front-end that has a login/authentication page, 2) a different user experience for an admin, 3) deployed to the web. This is all super simple stuff of course, and the UI is as basic as it gets, but understanding the basic principles of how this stuff works is really exciting.
I'm in the last 10 days of this course! I went through this one a bit slower than I initially intended, but it's giving me a good benchmark on pacing myself. I also think that the splits in focus in my life (between building a life in Bali, training for the marathon, my part-time job, and traveling) affects my output levels more than I thought initially.
That's good to keep in mind as I'm about to go on a two week work-travel trip. Given the load from general life stuff (accommodation, social, experiences, etc) will increase, I think it's good to expect career-related things to decrease in quantity. That being said, as I finish this course, I think I will start to tailor my learning to be more project-focused, per the many thoughts I've shared on my desire to do that. Look out for some of that soon!