Author Archives: Kaylene Noel

Draw Your Own Map

The draw-your-own-map pattern talks about how people should take control of their career paths and not rely on others to define their path. This pattern talks about identifying the next logical steps, visualizing how to achieve those steps, and continuing to evaluate their goals and values. Draw-your-own-map pattern suggests that getting help from like-minded people and being open to adjusting one’s map to any changes that came up. This pattern shows stories about people who go into programming despite challenges from employers and orginizational limits. Draw-your-own-map encourages people to set a specific goal rather than setting a goal that isnt reachable. That step not only helps provide feedback but it also makes you seek guidance from like-minded people, those people can give you resources and support when trying to achieve your goals. One of the key ideas of this pattern is flexibility, it supports the idea of one’s mind to keep reassuring themselves that it’s okay to make changes. This pattern promotes an approach to career development and make sure to empower people to find their way through there careers with a purpose.

I thought this pattern was interesting because it encourages people to be creative and not rely on other people to define our paths, it should be our decision. I also thought the steps that the pattern talks about was very helpful, it’s important to set realistic goals so that you don’t overwork yourself to reach that goal. Visualizing the steps to achieving those goals also help make sure you don’t rush through the process and able to have a set plan. Evaluating your goal and values are also important as you go on to make sure that you can still reach your goal and be okay with any changes that come. This pattern has changed the way I think about achieving my goals, I know now to set a more realistic goal for myself and not be scared to get help from people who think like me. I don’t disagree with this pattern because I feel like this will help a lot of people with reaching their goals and make them think more realistically while getting support from others.

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

Performance Testing

Performance testing is a big part of software development, it helps make sure that the final product can run smoothly without any errors and gives the user an easy experience. The main aspect of product testing is performance testing, which evaluates the speed and stability of the system. The point is to identify and address any performance bottlenecks that could give the user a bad experience. When dealing with performance testing it should always be used after functional testing, as soon as the basic function of the system is tested and verified. Performance testing involves testing a bunch of different parameters like processing speed and workload efficiency. By measuring the response time under different conditions developers should be able to find areas that need improvement and target system performance. So many companies should make sure to sort performance testing by doing diagnostics aid and software problem identification.  Diagnostics aid is when performance testing helps identify computing bottlenecks in the system and allows developers to use recourses to improve its performance. Software problem identification shows the areas where the application is failing and shows developers how to address the software performance issues. Performance testing plays a big role in evaluating the system’s performance, it helps provide ideas about what areas to work on to improve the performance.

I picked this topic because we have been working on testing in class a lot more recently and thought that this topic is a great choice to get a better understanding of performance testing as well as product testing. Performance testing helps developers address common problems and provide solutions to tackle these problems.  I learned that there are different ways to approach performance testing when doing it for example by analyzing the data I would want to share or use those results and retest it after making some small changes. This information has helped me look at system testing a little differently since we’re working on system testing in class but this new information will help me in the future to make sure that I focus on the system behavior and include the test in the development process to make sure that the system runs smoothly.

https://www.techtarget.com/searchsoftwarequality/definition/performance-testing

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

System Testing

System testing is a process of verifying the end behavior of a software application. System testing finds any errors, spaces, and missing requirements that could affect the software’s functionality. This is usually done after all the tests are completed, it’s important to test the software before releasing it to users. System testing main goals are to reduce risks, prevent defects, verify the design, and validate the system. System testing is an important step in ensuring the software is of great quality before it goes live. Addressing and identifying the errors or issues before making the software live can reduce any risks and make sure that it works perfectly for the users. Verifying the functionality of the completed system will help determine if it meets the requirements specified for that system. This is the best way to prevent any defects, errors, and missing requirements. System testing is also used to check if the system has been designed correctly and follows all the specifications. The process of verifying the accuracy and completeness of the system is the main objective of system testing. It’s to provide confidence that the system meets all of its requirements and will run as expected.

There are different types of system testing to look out for and plan for such as setting up the environment for the test case, creating a test case, creating test data, and running the test case. It’s important to make sure that the environment is set up so that you can write test cases by making sure that it has the right tools and frameworks that will be needed. When creating the test cases it’s important to make sure that the test case has all the necessary details about what the test case is testing for as well as how it will test it. The test data is created in thought of the inputs and outputs for the test case. While creating the test data it’s important to cover all of the critical fields and that nothing is left out. When running the test cases you want to make sure that it puts out the correct output, it should show if it passed or failed. I chose this topic because system testing is important to make sure that our system meets the requirements and runs without any problems. We started working on test cases recently so I thought getting more information on system testing would benefit our skills and any questions that anyone might have.

https://blog.qasource.com/what-is-system-testing-an-ultimate-beginners-guide

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

Sprint 1 Retrospective

With this being our first sprint it went well and we still have plenty to learn about. Our team did a great job of communicating, time management, and ensuring everyone’s ideas were heard. In our working agreement, we talked about not being afraid to ask questions or for help, which made it easier for us to make sure were on the right track and nobody was falling behind. Having in-person and discord meetings was helpful for us since everyone has a busy schedule and made it easier for us to show our work and any problems we were having. As a group of 5, we needed 13 different issues for a weight total of 25, we managed to do 12 out of the 13 so we had more than 75% of the sprint done. Most of us are used to using GitLab but we did have some trouble finding our work and navigating GitLab, it’s just how GitLab was set up and we just need some getting used to it. GitPod is something new we started using this semester. It works well and it’s similar to Visual Studio so we were able to use it with ease the only different thing was the commit message and merge request. We were just used to committing our work a different way, so it took a little getting used to. For the next sprint, we will make sure to keep communicating with each other, manage our time, and deal with any issues we are having. 

As a team an improvement that we can make is our time management, we didn’t get a go on our sprint until toward the end of our sprint. I think that’s what gave us a lot of issues because we were rushing to make sure we got most of our work done on time but would end up with errors like with our commit messages. If we start tackling the sprint as soon as our stuff is weighed and assigned to someone we can deal with these errors earlier rather than later and still have plenty of time to help and review work.

As an Individual some things that I can improve on is making sure that I’m not holding my team back and leaving them with a lot of work.  Also teach myself more about GitLab, so I can find my work with ease. The issue I worked on was moving from commands to bins in the inventory system in general. I made sure to rename commands to bin and that all the script paths were set to bin. The only problem I ended up having was my build and test pipeline because they were asking for specific files. I just ended up disabling those pipelines and everything ran smoothly. Next sprint I plan on assigning more issues to myself so my team members don’t have to do more work than they need to and make sure that I’m contributing as well. I also plan on making sure I get started on my work earlier in the week instead of waiting until the last minute, so if I have any issues or problems I can make sure to ask my team head-on to get it figured out and solved sooner rather than later.

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

Code Reviews

Reviewing your code is important, it makes sure that the code is correct and functions the way you want it to. Code review helps cover so many areas of your code. You want to make sure that your code is understandable for anybody else who looks at it and that it’s clear, by reviewing your code you can go back and fix anything that could be making your code more complicated. Code reviewing is important when working with a team, your team should understand what your code is trying to execute without being confused. When it comes to coding so much of your work can change throughout the process which is normal but with so many changes happening it can get confusing. Code reviewing comes with so many different solutions when it comes to writing code it nitpicks what parts are important or not. It’s a helpful tool that helps coders make sure they have clean code and that when working with a team everyone’s comments are heard and changes are made.

Code reviews can be tough if the team isn’t together so questions and comments can’t be answered. Another thing is that the code could be overlapping, and missing a team meeting could affect the code and confuse team members about what they should be writing ending up in similar code. If that happens the next person reviewing the code will find duplicate code and will end up pushing the team’s work behind. Making sure your team communicates will help prevent more code from having to be fixed and reviewed even though you don’t want to add more work on top of what you already have. Code review makes sure your work is good quality and organized. Having sloppy issues and mistakes doesn’t look good for you, your team, and your job. Code review is about making sure your work is organized and clean, you want to make sure you put out good work without having a lot of issues. Especially as a team you want to meet those standards and follow them. Always make sure to review your code because there could be small errors or even confusing comments that will make your code more complicated than it needs to be.

https://blog.pragmaticengineer.com/good-code-reviews-better-code-reviews/

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

The White Belt

The White Belt pattern is about adopting a beginner’s mindset when approaching new challenges, even if you’re an expert in a particular field. It encourages setting aside previous knowledge to embrace learning opportunities fully. This mindset shift is crucial for personal and professional growth, allowing people to discover new perspectives, solutions, and approaches. The White Belt pattern offers insights into the process of continuous learning and personal development. It talks about the importance of humility, curiosity, and openness to new experiences, which are important qualities for success in any job. Encourage people to step out of their comfort zones and embrace the unknown.

Something I thought was interesting is the aspect of the pattern and its application beyond programming languages. It has many examples from the field of software development, the principles can be applied to any job or profession. The idea of challenging misconceptions and learning from diverse perspectives is interesting. Also, the emphasis on adopting new skills and approaches to problem-solving is relevant in today’s world since it’s rapidly changing. 

This pattern has caused me to reflect on my approach to learning and problem-solving in my job. It has strengthened the importance of staying adaptable and continuously seeking new knowledge and experiences. Also, it has challenged me to be more open-minded and willing to embrace anything I’m uncertain about and discomfort as part of the learning process. While the White Belt pattern is about adopting a beginner’s mindset, it may overlook the existing expertise in certain situations. While it’s important to go for new challenges with modesty, it’s also important to recognize the strengths and knowledge that come from previous experiences. Keeping a balance of openness to new ideas with confidence in one’s skills is essential for effective learning and growth. In conclusion, the White Belt pattern offers great insights into the process of continuous learning and personal development. By embracing a beginner’s mindset, people can unlock new opportunities for growth and change in their personal and professional lives. However, it’s important to strike a balance between modesty and confidence, recognizing the value of both new perspectives and existing expertise.

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

The Deep End

The Deep End pattern is about growing your skills and boosting your confidence. It’s also about challenging yourself with bigger things. Growth is significant, it’s about taking big risks and doing things you don’t usually reach out for. Taking risks may be scary but playing it safe doesn’t help you improve or leave you unsatisfied. The Deep End pattern means that people should take on big projects or high-profile roles even when they don’t feel ready to. The importance of finding mentors, building feedback loops, and seeking help when needed. People should want to take on challenges, even if there’s a chance of failure, can open up doors and opportunities that playing it safe never will.That pattern knows that there are risks involved but those risks can cause growth by being in a scary situation and getting passed your comfort zone.

I found the pattern useful because it’s supposed to not only build your skills but also build your confidence. Boosting your confidence is a skill that some people don’t think is necessary but it can open up so many opportunities. Just by being brave, taking risks, and learning from failures taking those experiences can help people shape a successful future. I would say that pattern has changed my way of working because usually, I want to take the safe side and not take any risks doing that would just keep me from fulfilling my full potential. Challenging my self will only better myself and the way I work. I don’t disagree with The Deep End pattern because it has the right idea of doing something risky so you can grow instead of being comfortable with where you are now. This pattern is about bettering yourself, learn from any failures you had in the past, and grow from them. Don’t let anything hold you back from shaping your future keep trying to succeed. This is a pattern I will use moving forward so it can not only help me become more successful by taking risks but also build my confidence so i’m not scared to take any opportunities ahead of me.

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

Apprenticeship Patterns

I thought being open-minded when you’re learning something new was useful from the reading. I thought it was interesting because a lot of people don’t like change and would prefer to stick with what they already know but when it comes to being an apprentice you need to have an open mind when learning new things so you can broaden your experiences and learn not to get too comfortable with certain skills. I know some people would disagree about not getting comfortable with one skill because they probably believe that one skill is more important than any skill but those other skills could not only improve the skill that they mastered but also teach them something new. Chapter 4 is a great example of being really good at something and then realizing that there’s always more to discover. This reading has caused me to change the way I learn things. I don’t need to learn and master one skill set I should expand my horizons and not get comfortable with one skill. The reading also talks about overcoming challenges and learning from them, that’s how you improve your skills instead of just getting upset and giving up. If you are too comfortable with what you’re working on you won’t have any motivation to push yourself to learn more. 

I don’t disagree with anything from the reading because it’s only telling people to stay curious, don’t be afraid of any challenges, and keep trying to improve their skills. Those things are important when being a new apprentice, they help you become more successful and not limit yourself. The chapters that stood out to me were chapters 2 and 3 because it was very detailed about learning new skills and being confused as part of the journey as well as being good at one skill doesn’t mean you shouldn’t stop learning new things. Those chapters are about pushing yourself and not staying in just one lane, I think that is why I like those two chapters so much because I’m used to just learning one thing and sticking with it but being open-minded can do so much more for me.

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

LibreFoodPantry and Thea’s Pantry

After reading LibreFoodPantry’s main page I thought that their mission was really interesting because not only are they trying to make the food pantry more accessible and easy to use but they are also using it as a learning tool for computer science students and expand their skills. LibreFoodPantry wants to show that software can be used to help society and support food pantries as well as their guest all over with free and open-source software. FOSS gives students a perspective on computing being used for good. I chose to write about this because I feel like it’s an important computer science skill while also helping the community. Students can connect with experts who can help them when they are struggling with their contributions to the pantry from being part of the community.

I know we worked on Thea’s pantry last semester but something I thought was interesting was the architecture of Thea’s pantry. Thea’s Pantry uses 5 systems for client solutions and those systems use calls to pass data to those other systems. The diagram shows what server is being called and where it’s sending or receiving information from. I chose to write about this because it’s cool to see how those 5 systems run and connect. Thea’s pantry has a lot that goes into it and it’s interesting to see specifically how each system works and how they connect.

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.

My Blog

Hi my name is Kaylene and this is my blog.

From the blog CS@Worcester – Kaylene Noel's Blog by Kaylene Noel and used with permission of the author. All other rights reserved by the author.