Posts

CST 499 - Week 8 (Final Week)

 Hey everyone, This week marked the culmination of my work in this course, and it gave me the opportunity to reflect on both my progress and the skills I’ve developed over time. As I finalized my capstone materials and portfolio, I realized how much I’ve grown—not just in technical ability, but also in confidence, organization, and communication. One of the most significant parts of this week was preparing for the Capstone Festival. Creating and refining my final video presentation pushed me to clearly articulate my ideas and showcase my work in a professional way. It was challenging to balance being concise while still explaining my process and outcomes, but it helped me better understand the value of storytelling when presenting projects. Working on my portfolio website was another key highlight. This task encouraged me to think critically about how I present myself and my work to others. I had to consider design, clarity, and usability, which reinforced the importance of first...

CST 499 - Week 7

 Hey everyone,      This week, I worked on my fast.ai NLP mini project. I built a spam message classifier using a labeled SMS dataset. I learned how to load and process text data, create a model using the FastAI library, and train it to classify messages as spam or not spam. I also tested the model on new example messages and reviewed its accuracy. Additionally, I prepared my project for presentation by organizing results and creating a simple explanation of how the model works.      Next week, I plan to finalize my capstone presentation by adding my NLP project slide and including a live project link. I will also review my presentation to make sure I can clearly explain each project and practice presenting it confidently. If time allows, I may improve the project by adding a simple demo interface.      I am not currently facing any major challenges in project development and do not need instructor assistance at this time.

CST 499 - Week 6

 Hey everyone,      This week, I made solid progress in my fast.ai studies while also applying what I learned toward my project work. I covered several advanced topics including Stable Diffusion, matrix multiplication, mean shift clustering, backpropagation, MLPs, autoencoders, and the fast.ai learner framework. These topics helped me better understand both the theory and implementation of deep learning models.      This week, I focused on strengthening the foundational components of my project. I worked on understanding and implementing core neural network concepts, particularly backpropagation and matrix operations, which are essential for building and debugging models. I also explored the fast.ai learner framework and began setting up a structured training pipeline for my project. Additionally, I experimented with autoencoders to better understand representation learning, which may be useful for my project depending on how I structure my model. ...

CST 499 - Week 5

 Hey everyone, This week, I made meaningful progress in both understanding deep learning concepts and building practical skills with the fastai workflow. I learned that modern deep learning makes tasks possible that were extremely difficult before 2015, such as distinguishing bird photos from forest photos with relatively little code and training time. I also developed a much clearer picture of what images are to computers: numerical pixel data that can be downloaded, resized, organized, cleaned, and fed into models. I learned how to search for and download images, organize them into folders, resize them, detect broken files, and remove problematic images. I also learned how to use DataBlock and DataLoaders to prepare training data, how to display batches of images to verify the dataset, and how to fine-tune a pretrained model locally to classify images. On top of that, I deepened my understanding of key deep learning ideas such as models, weights, loss functions, gradients, lear...

CST 499 - Week 4

 Hey everyone,      This week, I made some progress on the project component of my cybersecurity certificate. I spent time working through parts of the project and experimenting with different approaches. However, I wasn’t fully satisfied with the results, so I began refining and reworking sections to improve the overall quality.      Next week, I plan to continue refining my cybersecurity project to reach a standard I’m happy with. In addition, I intend to dedicate focused time to the fast.ai course, now that I have more clarity on its acceptability. My goal is to make significant progress by working on it more intensively throughout the week.      One challenge I’m facing is achieving the level of quality I want in my cybersecurity project, as my current results don’t fully meet my expectations. Additionally, the earlier uncertainty about whether the fast.ai course would be accepted slowed my progress. At this stage, I don’t require im...

CST 499 - Week 3

 Hey everyone!      This week marked an important shift in my cybersecurity journey. I officially completed my cybersecurity certificate, which felt like a major achievement after all the time spent learning concepts like network security, threat detection, and risk management. Finishing the course gave me a solid foundation, but more importantly, it pushed me to start applying those skills in a practical way.      After completing the certification, I began working on my project. My main focus this week was setting everything up and getting organized before diving into development. I installed and configured my working environment, including a virtual machine and the tools I’ll need for testing and analysis. I also took time to clearly define what my project will focus on, choosing a specific cybersecurity problem to explore rather than keeping things too broad.      In terms of my personal contributions, I handled the initial setup, ...

CST 499 - Week 2

 Hey everyone,      This week felt like a turning point in my journey into cybersecurity. Instead of just learning concepts, I started connecting technical skills with real-world career preparation. I completed three major modules: Automate Cybersecurity Tasks with Python, Prepare for Cybersecurity Jobs, and Accelerate Your Job Search with AI. Each one pushed me a step closer to being job-ready.      One of my biggest accomplishments this week was finishing the Python automation module. I spent time writing scripts that can help analyze logs and identify unusual activity. While these were guided exercises, I made sure to understand how each script works and how it could be applied in real cybersecurity scenarios. This was my personal contribution—actually doing the hands-on work and not just watching or reading. It gave me a clearer picture of how automation plays a role in security operations.      I also focused on career preparation. ...

CST 499 - Week 1

 Hey everyone,      This week, I completed three modules: Tools of the Trade: Linux and SQL, Assets, Threats, and Vulnerabilities, and Sound the Alarm: Detection and Response . Each module built on the last and helped me better understand both the technical and analytical sides of cybersecurity .      In Tools of the Trade: Linux and SQL , I strengthened my understanding of how operating systems and databases are used in security work. I learned how Linux is widely used in cybersecurity for system administration, log analysis, and security operations. Practicing basic Linux commands helped me see how security analysts navigate file systems, manage permissions, and investigate system activity. I also learned how SQL is used to query databases, filter information, and analyze large sets of data. Understanding how to retrieve specific information from logs and datasets showed me how powerful SQL can be in identifying suspicious patterns or investigating ...

CST 489/499

 Hey everyone,      This week has been both productive and insightful as I completed three courses covering cybersecurity fundamentals, risk management, and network security. Each course built upon the last, helping me develop a more connected and practical understanding of key concepts within the field.      One of the most important takeaways was strengthening my knowledge of the CIA triad—confidentiality, integrity, and availability—which serves as the foundation for all cybersecurity practices. Revisiting this concept allowed me to better understand how security measures are designed and evaluated in real-world scenarios.      I also gained a deeper understanding of organizational risk strategies. Learning how organizations identify, assess, and manage risks gave me valuable insight into the decision-making processes behind cybersecurity policies. This helped me see how security is not just about technology, but also about balancing ...

CST 489 - Week 8

 Hey everyone,      This week was very exciting because I did my first hands-on project! I created an S3 Static Website through AWS. Throughout this project, I gained practical, hands-on experience with Amazon Web Services (AWS), specifically using Amazon S3 to host a static website. Before starting, my understanding of cloud computing was mostly theoretical. This project helped me turn that knowledge into real-world skills.      One of the most important things I learned was how cloud storage works in practice. By creating an S3 bucket, I understood how AWS stores data and how it can be used not just for files, but also for hosting websites. Enabling static website hosting showed me how cloud services can replace traditional web servers for simple applications.      I also learned about permissions and security, which turned out to be a critical part of the project. Initially, I encountered a “403 Access Denied” error, which helped me u...

CST 489 - Week 7

 Hey everyone, This week, I expanded my understanding of AWS databases, security, governance, migration, pricing, and architectural best practices. I reviewed database services including Amazon RDS and Aurora for relational workloads, DynamoDB for NoSQL applications, Neptune for graph data, and DocumentDB for document-based use cases. I also learned how Amazon ElastiCache improves performance through in-memory caching. A key takeaway was understanding when to choose managed services versus unmanaged deployments on EC2. I explored migration services such as AWS DMS, AWS Schema Conversion Tool (SCT), Migration Hub, DataSync, and Transfer Family. I reinforced knowledge of the 7 Rs migration strategies and the AWS Cloud Adoption Framework (CAF), particularly the importance of change management through the People perspective. On security and governance, I reviewed IAM best practices (principle of least privilege), AWS KMS for encryption key management, AWS Shield for DDoS protection, AW...

CST 489 - Week 6

 Hey everyone, This week, I reviewed key AWS cloud fundamentals across compute, networking, storage, and disaster recovery. I strengthened my understanding of AWS global infrastructure, including Regions, Availability Zones, and edge locations, and how they support high availability, fault tolerance, and low latency. In compute, I compared EC2, containers (ECS/EKS with Fargate), AWS Lambda (serverless), and AWS Batch, focusing on choosing the right model based on workload needs. For networking, I reviewed VPC components such as subnets, security groups (instance-level), and network ACLs (subnet-level), along with hybrid connectivity options like Site-to-Site VPN and Direct Connect. In storage, I differentiated between: S3 (scalable object storage) EBS (persistent block storage for EC2) EFS and FSx (managed file systems) Instance store (temporary high-performance storage) Storage Gateway (hybrid storage) I also reinforced knowledge of CloudFormation for In...

CST 489 - Week 5

 Hey everyone, This week, in modules 1 and 2, I deepened my understanding of foundational cloud computing concepts. I reviewed the definition and key benefits of the cloud, including scalability, elasticity, cost efficiency, and global reach. Learning about AWS Global Infrastructure helped me better understand how Regions and Availability Zones support high availability and fault tolerance. I also explored the AWS Shared Responsibility Model, which clarified the distinction between AWS’s responsibility for security of the cloud and the customer’s responsibility for security in the cloud. A major focus of this module was Amazon EC2. I learned about different EC2 instance types and how to select them based on workload requirements. The demonstration on launching an EC2 instance helped me understand the practical steps involved in provisioning resources. Additionally, I reviewed EC2 pricing models and gained insight into cost optimization strategies. I explored Auto Scaling and E...

CST 489 - Week 4

 Hey everyone, Since I have chosen to take part in the Certificate Track of the capstone project, I have faced some challenges during this week's assignments. This week, I spent time developing my certificate track capstone proposal, which helped me clarify my learning goals and better understand how each certification connects to my long-term career plans. Writing the proposal forced me to think beyond just completing courses and instead focus on the skills, artifacts, and outcomes I want to gain from each certificate. I also spent a significant amount of time trying to figure out how to enroll in the AWS Cloud Practitioner course. Navigating AWS’s training site was more complicated than I expected, and it took some trial and error to understand the different learning paths and options available. Although it was a bit frustrating, the experience helped me become more comfortable with AWS’s ecosystem and reminded me that problem-solving and persistence are essential parts of learni...

CST 438 - Week 8

 Hey everyone,      One of the most valuable things I learned in this course is the importance of testing and test-driven development. Through unit testing with tools like JUnit and Mockito, I learned how to verify that methods are called correctly and how mocks can isolate components during testing. Writing Selenium tests for React components also showed me how automated testing can catch issues that might not be obvious during manual testing. These concepts helped me understand why testing is critical for building reliable and maintainable software.      Another major takeaway from the course was learning how to build interactive user interfaces using React. Creating components that display data in tables, manage state with hooks like useState , and respond to user actions such as adding or removing items helped me understand how modern front-end applications work. This hands-on experience made concepts like state management, event handling, and com...

CST 438 - Week 6

 Hey everyone, This week in class, we explored two very different ways of approaching software development: the Agile method and the more traditional Plan-and-Document (Waterfall) method. I’ve heard these terms before, but actually comparing them side-by-side—and thinking about how they play out in real projects—helped everything click. Starting Point: How the Two Mindsets Differ One of the biggest differences I noticed is the mindset behind each approach. Waterfall assumes that we can plan almost everything in advance. It feels like writing a detailed roadmap before even starting the engine. Agile, on the other hand, seems to accept that surprises will happen. Instead of a fixed map, Agile works more like a GPS rerouting along the way. Planning: One Big Plan vs. Many Small Plans In Waterfall, planning happens early and intensely . Before any coding starts, you produce big documents—requirements, design diagrams, timelines. It’s clean and structured, but also kind of intimidati...

CST 438 - Week 6

 Hey everyone,      This week gave me a chance to dive into several different aspects of software development, from planning to testing to cloud concepts. During the Iteration 3 planning meeting, I gained a clearer understanding of how teams break down work and set realistic goals for a sprint. Watching the system testing video helped me see how the focus shifts from individual components to verifying that the entire system works as a whole. I also spent time reading about React component reuse, which reinforced the value of building modular, reusable pieces that make applications easier to maintain and scale.      I continued deepening my technical skills through Assignment 4 on system testing, where I applied what I learned to create meaningful end-to-end test scenarios. The SAG 25 reading on Compute as a Service expanded my understanding of cloud computing models, especially how virtual machines and containers provide scalable and flexible compute ...

CST 438 - Week 5

 Hey everyone, This week, I spent most of my time working on the React frontend for Iteration 2. I used the feedback from Assignment 2 to improve my components, clean up my code, and make the interface work more smoothly. As I worked through Assignment 3, I started feeling more confident using React and understanding how data and components connect to each other. We also had our Iteration 2 Planning Meeting, which helped me outline what needed to be done for this part of the project. Breaking the work into smaller tasks made the next steps feel more manageable. It showed me how planning ahead can make the development process easier and more organized. Alongside the coding work, I learned about larger tests by reading Chapter 14 from SAG. I learned the differences between unit tests, integration tests, and system-level tests, and why larger tests are important for finding bugs that happen when different parts of the system interact. Taking the quiz helped me review and remember the ...

CST 438 - Week 4

 Hey everyone,      While reading Software Engineering at Google , the most interesting and impactful idea I encountered is the concept that software engineering is fundamentally about managing complexity over time , not just writing code that works today. Google frames software engineering as the discipline of building software that continues to be understandable, maintainable, and scalable as systems, teams, and lifespans grow. This long-term perspective reframed how I think about engineering work.      What stood out most is Google’s idea of “time as the primary scaling factor.” Google’s codebases are expected to outlive individual engineers, teams, and even products. Because of this, Google optimizes for practices that reduce long-term friction—such as code readability, consistency, and maintainability—sometimes even at the expense of short-term productivity. The emphasis on making code easy for someone else to understand years later was striking...

CST438 - Week 3

 Hey everyone, This week’s lessons focused on two essential aspects of software engineering — testing and version control with Git . Through the readings, videos, and labs, I learned how both areas are crucial for building reliable software and working effectively in a team. The testing materials emphasized the importance of having a strong suite of automated tests to ensure that code works as expected and can be changed safely over time. The Git labs and videos helped me understand how developers collaborate on code, manage changes, and prevent conflicts in shared projects. From the testing labs and readings, I learned that testing isn’t just something done at the end of development; it’s an ongoing process that supports every stage of building software. The concept of the testing pyramid stood out — most tests should be unit tests (around 80%), followed by integration tests (15%) and a small number of end-to-end tests (5%). I also learned that small tests are limited to a singl...