Day 1: A Fresh Start
Hello, World!
My name is Jose Ramirez, a budding developer, and a Computer Science student at Boston University. Today marks the beginning of a four-month-long journey of self-guided exploration, skill acquisition, and project-based learning. My aim? To level up my developer skills during this break before I return for my next semester..
I've just completed my first semester at BU, where I dipped my toes into the vast ocean of coding through CS 111, an intensive course teaching the fundamentals of programming using Python. It's been an enlightening experience, and now, I'm ready to delve deeper.
The next course in line for me at BU is CS 112, which primarily focuses on Java. The fascinating part is that the entire curriculum for this course is available online! This gives me the perfect opportunity to get a head start and familiarize myself with Java over the summer.
Today, I embarked on this journey of transitioning from Python to Java. I watched 12 instructional videos that detailed the major differences and nuances between the two languages. While Python and Java are fundamentally different in many ways, understanding these differences is key to becoming a polyglot programmer.
But here's the catch. This summer isn't just about learning; it's also about creating. As my first real project, I've decided to build a website. A platform where I can document my progress, share my experiences, and showcase my projects.
Day one of this project was all about laying the foundation. I decided to go for a quick and efficient approach, by deploying a template website. With a helpful YouTube tutorial as my guide and GitHub Pages as my platform, I successfully set up the basic structure of my site. The simplicity of GitHub Pages allowed me to focus more on the content, rather than the nuts and bolts of web hosting.
And that’s it for day one! This journey has just begun, and I’m excited about the road ahead. Each day, I'll be sharing my progress, my wins, my challenges, and my learnings. I look forward to seeing where this journey takes me, and I hope you'll join me along the way.
Stay tuned!
Day 2: Java Journey Continues, Website WIP, and a Dip into Git
Hello again, fellow developers and curious readers!
As I embarked on the second day of my self-guided learning journey, I dove deeper into CS 112, continuing my exploration of Java. My day was filled with lab exercises that helped me get accustomed to Java's distinct syntax and the Visual Studio Code environment.
Java, as I'm quickly finding out, is indeed a verbose language, especially compared to Python. The exercises today mostly involved identifying syntax errors and understanding the key differences between Python and Java. Though it was challenging, I truly believe in the "learn by doing" approach. It's a bit like learning a new musical instrument: unfamiliar at first, but with practice, the notes start to make sense.
While learning Java has been my primary academic focus, I've been equally excited about my website project. Today, I made some significant progress in decluttering the site. I've always been a believer in simplicity and functionality over frills, and I wanted my website to reflect that. So, I stripped it down to its bare essentials, focusing on making it a hub for this developer blog.
Is it a masterpiece? Not quite. But it's a starting point, and every great journey begins with a single step. I'll be dedicating a little time each day to refine and improve it, and I'm excited to see it evolve along with my skills.
The last noteworthy milestone of the day was getting started with Git and GitHub. I've always heard how crucial version control is in any software development process, and now, I'm beginning to see why. The concept of managing and tracking changes in code is fascinating, and though it's a steep learning curve, I'm eager to master it.
In tandem with Git, I also dabbled a bit with command line operations. I learned some basic commands, which, despite their simplicity, felt quite empowering. It's like learning a secret language that lets you communicate directly with your computer.
And that's a wrap for day two! It was a day filled with new concepts, challenges, and victories. As I continue this journey, I'm reminded that the road to mastery is a marathon, not a sprint.
Stay tuned for more updates, and happy coding!
Day 3: Enhancing Website Consistency and Diving Deeper into Git
Hello everyone!
Day three of my learning journey was a bit quieter, but by no means less productive. With a busy schedule, I had to focus on getting the most out of the time I had.
First order of the day was a minor yet crucial update to my website. I modified the projects page to feature a consistent navigation bar, similar to the other pages. This might seem like a small change, but consistency is key in user interface design. It's all about enhancing the user experience, making the navigation intuitive and cohesive across the site.
Most of my day, however, was spent delving further into Git. Git, as I'm learning, is a powerful tool for version control, essential for tracking changes in any coding project, and it's rapidly becoming a vital part of my developer toolkit.
Today, I learned how to initialize a Git repository, an essential first step in creating any new project. Following that, I discovered how to add files to the repository and commit changes. Each commit is like taking a snapshot of your project at a certain point in time, and it's these snapshots that allow you to track and manage your progress effectively.
Finally, I learned how to view the log of changes, a feature that provides a comprehensive history of all the commits made in the project. It's like having a detailed timeline of your project's evolution at your fingertips.
All things considered, I feel that today was quite successful. Despite having a busy schedule, I was able to make progress on both my website and my understanding of Git. The journey of a developer is not always about the big leaps, but often about the small steps that consistently move us forward.
Tomorrow brings a new day and with it, new opportunities to learn and grow. Stay tuned for more updates on my journey!
Keep coding, keep learning!