Category Archives: Week 1

CS448 Intro blog

Hi everybody, I’m Buvan, and I’m enrolled in CS448 with Karl Wurst, Ph.D.

From the blog CS@Worcester – thewisedevloper by thewisedeveloper and used with permission of the author. All other rights reserved by the author.

Apprenticeship Patterns Chapter 1

Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman by Dave Hoover and Adewale Oshineye opens up with a really great hook that makes you want to dive deeper. The book, so far is extremely simple and easy to read. The authors do not overwhelm you with too much information. It feels like they are talking to you rather than telling you something. I like the medieval inspiration of guilds, masters, and apprentices. It brings me back to the days where I wanted to be a blacksmith apprentice (in 5th grade we went to Old Sturbridge Village which sparked my interest in blacksmithing). I never became one, obviously because there are no blacksmith masters around. Anyways, just the word apprenticeship gives me a feeling of being useful (or at least learning to be useful) and I enjoy the thought of having a master to teach me the crafts.

My favorite line from this chapter was “Our goal here is not simply to hand people a rule book, but to give them the ability to create new practices for new contexts, which in turn drives the discipline of software development forward.” This is important because even the most skilled of teachers can learn things from students that think differently. Giving us the tools to make our own decisions is what we need to continue developing new and better technology.

The authors include a bulleted list of values that describes the phrase software craftsmanship. Some of the most important values being:

-Growth mindset. The author accurately explains that failure is just momentum to try again. Keep learning and growing from your mistakes an you will become very powerful.

-Adaptability. Recognize that the world is changing around you and just because you think it is right, doesn’t mean it is.

-Open source sharing. Share what you know rather than hoarding it. This will help progress software development as a whole.

-Manifest Destiny. Go out and create your own opportunities rather than waiting for someone to give them to you.

-Learn form your environment. Swallow your pride and ask for help from people around you. They have the knowledge and skills to advance your skills.

The authors go on to explain what it means to be a journeyman, master and an apprentice.  As an apprentice you should always have the attitude that there is a better and faster way to do things. You should continuously absorb information from the people around you and use that information to your advantage. A journeyman is an apprentice that might switch between masters and relay ideas off each other. They are focused on enlarging their portfolio and working to become a master. A Master is the all powerful leader of the three. A Master retains all responsibilities from his journeymanship, with the added responsibility of furthering software development as a whole. He/she does this by teaching and continually learning.

The phrase apprenticeship pattern does not mean that this book will teach you how to become a software designer. The patterns are simply a guide to bring you to the next level and get you better at what you want to do.

From the blog CS@Worcester – Rookey Mistake by Shane Rookey and used with permission of the author. All other rights reserved by the author.

Software Craftsmen, chapter 1, week-1

Chapter 1. Introduction (Summary) The authors tell us that the concept of apprenticeship is one that encourages cooperation among the experts and novices. This cooperation results in the enrichment of the novice with respect to the expert’s know-hows. Apprentices eventually … Continue reading

From the blog CS@Worcester – thewisedevloper by thewisedeveloper and used with permission of the author. All other rights reserved by the author.

Intro – CS 448

Hello Everyone in Cs-448  !

My name is Kwame ofori and i am really looking forward to this class and getting some real world experiences. I believe experience is the best teacher so i am ready to learn !

 

 

From the blog CS@Worcester – Le Blog Spot by Abranti3 Dada Kay and used with permission of the author. All other rights reserved by the author.

CS-448 Capstone Blog Intro

First Blog post for the capstone!

From the blog CS@Worcester – Rookey Mistake by Shane Rookey and used with permission of the author. All other rights reserved by the author.

Testing Categories and Tags for Syndication

To help me with finding student’s blog posts that have been syndicated to the CS@Worcester blog, I have been asking them to tag them with the course number (e.g. CS-343). That has worked well for finding just the posts for a particular class.

But, what would make it even easier for me, would be to also have them add a tag for the week that the post is due (e.g. Week-1) so that I don’t need to scroll back until I find the first post from the previous week.

So, I’m tagging this post in the same way that I’m thinking of asking them to do it to see if it works.

From the blog CS@Worcester – On becoming an Eccentric Professor… by Karl R. Wurst and used with permission of the author. All other rights reserved by the author.

The Clean Coder, Chapters 1 & 2.

“The Clean Coder: A Code of Conduct for Professional Programmers” is the first book I am reading by the author Robert C. Martin. Going through the pre-requisite introduction portion of the book Martin noticeably states that this particular book is full of catalog of his errors from his 42 years of experience in software engineering field and a set of guidelines to avoid them. I am expecting a lot of takeaways form this book for my Capstone course and professional career as well.

Chapter 1: “Professionalism” discussions about the taking responsibilities and the various ways to be able to accomplish the responsibilities in regard of the true essence of professionalism. First part of chapter surrounds with the things every software professional should be familiar with such as Test Driven Development approach, QA process, code flexibility and so on. Of course these principles are important during the software development process. When the writer starts to talks about gaining credibility and trust through continuous learning, practice, collaboration, and customer service; things get excited. I agree with the writer how learning process is necessary for self-empowerment. Being up-to-date with the new disciplines and techniques is a must in Computer Science field. Similarly, practice help individual to refine and enhance our skills. Personal drive and team-building skills are valuable and necessary for developers striving for the top of the profession, but more is required. Though most developers bring a project to the table, pushing it through requires a strong ethic of customer service. Customer is critical because it establishes a path that helps make sure that the features you are developing are really going the address your customer’s need.

Chapter 2: “Saying No” focuses upon team work. Martin gives a clear vision of how to be a successful team player. He states a team player is not someone who says yes all the time. Sometimes the only way to get to the right yes is to be unafraid and say no. I completely agree with the thought that, “What we all have to realize is that saying yes to dropping our professional disciplines is not the way to solve problems.” It rapidly becomes impossible to control all aspects of all the projects within a large area of responsibility. It is critical to develop teams that can bring the necessary talents to bear without requiring your direct intervention.

 

From the blog CS@Worcester – Software Dev Capstone by osworup007 and used with permission of the author. All other rights reserved by the author.

Reflections Week 1

During this week we were put into groups and asked to join the courses Slack team and to make a channel for out group. We also learned about Scrum and how we should be working on our upcoming project in the Scrum fashion. Using the Scrum way of working together I think will help us to stay motivated and organized. I then researched OpenMRS and AMPATH, we will be working on projects within AMPATH. While working on this project we will be using Angular 2, so I did some research about Angular and looked up some helpful tutorials that I can use later to help start the learning process for this language. The Scrum way of working together I think will be a valuable skill that I can take away from this course and apply to my professional career.

From the blog CS@Worcester – Software Testing by kyleottblog and used with permission of the author. All other rights reserved by the author.

The Clean Coder 1 & 2 Week 1

In these chapters the difference between a professional and nonprofessional are looked at. Professionals take responsibility for their work and pay the price if a mistake is made. We all want to be professionals, but not all of us want to pay the price. Standing behind your code is another topic, be prepared to apologize, if you sent out your code and there was a bug, don’t hesitate to apologize and take responsibility. Also always be learning new things, outside of what your employer has you working on, this will help your career in the long run.

Another topic discussed was about when you should say not and not be afraid to say no. Many people feel the need to say yes to their superiors or colleagues to avoid an awkward conversation. To be the most professional you should be honest and upfront about your work and how long it might take for it to be completed. It is better to end up in an argument with your boss about a late finish date than to lie to them and say it will be done earlier knowing you cannot reach that date.

These chapters were very helpful to me in terms of how to react and how to work well in a professional work environment. One of the biggest that stood out to me is the right time to say “no” to your boss or co-workers. If you believe something is not achievable then you should have no hesitation to say no that wont be able to be accomplished.

From the blog CS@Worcester – Software Testing by kyleottblog and used with permission of the author. All other rights reserved by the author.