1. What was the most difficult challenge, and how did you solve it?
The hardest challenge so far has definitely been learning React Native. Figuring out a whole new development framework on my own has been a mix of frustrating and rewarding. But having tools like Expo Go has made things a lot easier, and thankfully, there are so many free resources and tutorials online that have helped me piece things together. It’s been a steep learning curve, but seeing my app come to life has made it all worth it!
2. Did you initially have doubts about your ability to complete the project? How do you feel now?
100%. At the start, I was nervous about building an app completely from scratch. I wasn’t sure if I could actually pull it off. But as I started working on it, I realized how much my past courses had prepared me in different ways—everything started clicking, and it felt like all my knowledge was finally coming together. Now that I’ve done it, I feel so much more confident in my ability to build an application from the ground up. It’s proof to myself that I can do this.
3. How have you handled getting ‘stuck’ on the project?
Anytime I get stuck (aka having some drama in the debug), I’ve learned that the best thing to do is just step away. I walk away from my screen, take a break, and let my brain reset. And honestly, most of the time, I figure out the solution when I’m not actively thinking about it. My go-to way to unwind has been watching movies and shows—recently, I’ve watched Lady Bird (2017), Priscilla (2023), and Mustang (2015). And of course, my ultimate comfort show (now and forever) Gilmore Girls.
Hello, world! 🌍✨ We’re about a month into the term, and so far, things have been going pretty well. In this post, I’m diving into the technologies I’ve been working with—my favorites, the ones I’m using for my Crowd-Sourced Travel Planner project, the trickiest ones, and the ones that had the steepest learning curve but ended up being worth it.
React Native: A Surprisingly Smooth Ride 🚀
The biggest technology I had to pick up for this project was React Native, and at first, I thought it was going to be a lot. Mobile development felt intimidating, but after some research, tutorials, and hands-on experience, it’s actually been way more manageable than I expected. Since I already have web development experience, the transition hasn’t been as difficult as I thought. The learning curve wasn’t too steep, and the huge amount of documentation and tutorials out there have been lifesavers.
Plus, my team is using languages I’m already comfortable with—TypeScript, JavaScript, and SQL—which has made the process smoother.
Expo: My Favorite Technology Right Now ✨
If I had to pick a favorite tech at the moment, it would be Expo. We’re using it as the framework and platform for our React Native app, and honestly, it makes everything so much easier. The pre-built APIs for native features like the camera have been super helpful, especially for adding functionality that lets users upload images.
Next on my list? Figuring out how to integrate a map and use location services within the app. Another thing I love about Expo is that it lets you build and test apps without needing an emulator or simulator—you can even test directly on your phone with the Expo Go App. It’s been a game-changer for our development workflow.
The Toughest Tech: C/C++ & Figma
Looking back at the technologies I’ve used, the toughest ones have definitely been C/C++ and Figma—for very different reasons.
C/C++ was challenging because of its low-level memory management and stricter syntax, but I appreciate it now because I can use it to build computer graphics (which is really cool).
Figma was tricky simply because it has so many features—but once I got the hang of it, it became a tool I genuinely love for designing UI wireframes and prototypes.



Now for the drama… 📺
Of course, no blog post would be complete without a little TV talk! Lately, I’ve been loving:
- XO, Kitty (Forever a TATBILB girlie, obviously. 💌)
- Chef & My Fridge (Chef Edward Lee is my absolute fave! 🍽️)
- Bones (Currently on a rewatch—because sometimes, you just need comfort TV.)
- Sweet Magnolias (Patiently waiting for the new season!)
CS 462: Blog Post #1
Prompt: What is one thing from the articles that you would like to start doing (more often), and why? What is one thing you want to avoid doing and why?
One thing I aim to avoid is postponing the cleanup of my code. Often, I’ll reassure myself that I can tidy up my code later, which, while convenient at the moment, usually results in starting with messier code and facing a bigger cleanup task later. Robert Martin emphasizes in Clean Code: A Handbook of Agile Software Craftsmanship the “Total Cost of Owning a Mess,” detailing how initially messy code can lead to even more complications and significantly slow down productivity (Martin, 2008). By committing to writing clean code from the start, I hope to enhance my overall productivity and maintain my motivation to keep my code clean and free of smells.
On the flip side, I’d like to focus more on refactoring code. Martin Fowler describes clean code as “mundane and clear” (Fowler, 2018), which resonates with my view that code should be readable, straightforward, and unambiguous. Mastering refactoring, and recognizing when it’s necessary, is a skill I’m eager to hone. Fowler offers a great tip regarding code comments: “When you feel the need to write a comment, first try to refactor the code so that any comment becomes superfluous” (Fowler, 2018). This is a practice I plan to adopt more actively, as it not only improves code clarity but also helps in identifying and rectifying ‘code smells’ more effectively.
In other news, I’d like to share my own experience identifying code smells and refactoring code. Last term, I took CS 464 Open Source Software, where I got to dive into identifying code smells and applying my refactoring skills by identifying an issue and creating a pull request for an OS project. Here is a link to my PR: https://github.com/GenderMagProject/GenderMagRecordersAssistant/pull/166.
References:
Martin, Robert C. Clean Code: A Handbook of Agile Software Craftsmanship. 1st edition, Pearson, 2008.
Fowler, Martin. Refactoring: Improving the Design of Existing Code. 2nd edition, Addison-Wesley Professional, 2018.
CS 461: Blog Post #3
Hello, World!
As my first senior capstone class zooms past the halfway mark, I’m thrilled to share the exciting journey of my first major venture into mobile development through our crowd-sourced travel planner app. Before this class, the world of mobile app development was uncharted territory for me. Now, I’m learning React Native and built my first React application! Working with databases isn’t new to me, but integrating them into a mobile app is, so that’s something I’ve working on/learning. I’m looking forward to continuing the progress next term.
This class has been a fantastic introduction to industry-like projects, providing a perfect mix of learning and hands-on experience without the pressure of a high-stakes job.
A life hack that’s been a game changer for me this term: step away from the screen! If you’re stuck on a tricky bit of code, staring at it longer won’t help. Trust me, taking a break can miraculously clear your mind and bring that ‘eureka’ moment much faster.
On the drama front, my latest screen obsessions are Dune: Prophecy, Harry Potter: Wizards of Baking, and the new Wicked movie. I just can’t stop singing “Defying Gravity” and “Popular”! Both shows and the movie have been wonderful surprises, offering captivating stories that are the perfect way to unwind after a coding session. Which brings me to another life hack I’ve been relying on: swapping the computer screen for the TV screen. There’s nothing like a comfort movie or show to hit the reset button.
CS 461: Blog Post #2
So, here we are, more than halfway through the term, and life is as balanced as my code… sometimes smooth, often needing a debug, but ultimately getting there! For my CS senior capstone, I’ve been working on a Crowd-Sourced Travel Planner app, and I’ll be honest—it’s been a mix of victories and battles with procrastination.
The project I’m working on focuses on creating an app that lets users share their travel experiences while finding unique ones as well. Think reviews, ratings, and maps, all in one. With my focus on HCI, the design phase has been my favorite. I really enjoy bringing user-friendly features to life! What’s been a little trickier, though, is that sneaky habit of procrastination. We’ve learned that “I’ll start on it tomorrow” can quickly turn into a week of “tomorrows” if you’re not careful.
Overall, this class has been easier than expected, and it turns out, that creating a mobile app has been way more approachable than I first thought (so far at least). Before starting this class, I had zero experience in mobile app development, so every step has been a learning moment.
Now onto the drama fix: Tell Me Lies and Reasonable Doubt…
Balancing school and fun has been a top priority this term, and when I’m not deep into the debug, I’m all about my dramas. I wrapped up Tell Me Lies and Reasonable Doubt, leaving me with some serious cliffhangers. If you need an escape, give them a try—you’ll get all the thrill of suspense with none of the coding headaches.
All in all, this term has been a reminder that CS projects, like good shows, are all about the journey and maybe a little bit about those shocking plot twists (planned or unplanned). Here’s hoping the second half is as productive as the first, minus the procrastination! And maybe in the end, I can book myself a vacation using the app because I will be desperately needing one!
CS 461: Blog Post #1
Hello World! Welcome to Drama in the Debug, where I’ll be sharing my capstone journey along with some fun bits of life.
I’m Allyson, and while I’ve been living in Oregon (PST) for the past three years, I’m originally from Washington state. Some of my favorite things include spending time with family and friends, taking walks with my dog, traveling, cooking, watching movies and shows, doing pilates, indulging in sweet treats, and sipping on matcha. Lately, I’ve been hooked on the shows Tell Me Lies and Reasonable Doubt—I live for the drama (hence the blog name, of course)!
As for tech, it’s tough to choose a favorite, but right now, my air fryer is definitely winning. I’m working toward my CS degree with a focus on Human-Computer Interaction (HCI), and here are a few projects that really excite me:
- OSU Orientation Gamification: I love the idea of making orientation fun! Game development is new for me, but I’m so ready to dive in and learn.
- Citizen Science App for Kids: I’ve worked on the UI and done UX research for a learning app, so being part of the entire process—from frontend to backend—would be fun!
- Language Immersion Virtual Environment (LIVE): This project combines my experience with UI/UX for a language learning app and my desire to gain game development and GPT API skills.
I can’t wait to see which project team I end up on and look forward to sharing all the ups and downs with you. Bye for now!
Hello world!
Welcome to blogs.oregonstate.edu. This is your first post. Edit or delete it, then start blogging!