Concepts in SPM (Agile Software Development)

In any project, there are parameters for measuring success:

  • on-time delivery
  • completion of project within budget
  • delivery of complete features or requirements

In software product management, it is the same. However, there are added items:

  • The number of post-release bugs
  • The technical support needed after a software release
  • The software product’s customer rating
  • The revenue generated
  • The client’s satisfaction

It is basically a lot, huh? Well, a software product manager will help identify the product and project success by checking the above parameters for and make sure that the development efforts are directed towards the delivery of a quality product.

Agile Software Development

Agile, from the definition of Miriam-Webster dictionary, is having a quick resourceful and adaptable character. So when we say agile software development, it is the set of software development principles created for effective and adaptive software development where it prioritizes 4 core values:

  • Individuals and interactions
  • Working software
  • Customer collaboration
  • Response to change

Below are the 12 Agile principles from the www.agilemanifesto.org, with infographics designed by the University of Alberta for the Coursera Course: Introduction to Software Product Management:

Intro to Software Product Management

Pardon me if I am now using my blog as my online notes, but I am now on a learning journey! I have realized a lot this 2020, in terms of career, lovelife (that’s for another blog post ;-)) and finances. Now, I am taking one step at a time to improve myself, and the series of blogs I am writing are records of my learning journey. So if you are okay with learning more about my world, feel free to read and follow. 🙂

See the source image
screenshot about product management from https://geobrava.wordpress.com/

To start, what is software product management? Well, for one, software product management is different from project management. Though there are common features for both; however, the difference lies on the application. Project management is a broad field that can be applied in any development scenario (like preparing for a wedding, building a house, etc) whereas software product management describes practices for project management but particularly aimed for creating software products.

To achieve a better software, just like in learning, you must have a goal to accomplish. In software product management, there are three goals, particular for each member of the team:

  • Client – the goal of the client is to make sure that the software product meets their needs and solves their problem. If a client is happy with the product, the software is validated.
  • Developer – the goal of the developer is to make sure that the software they are developing are done right — meaning the design and the implementation frontend and backend satisfies the needs of the client. Here, the developers conducts reviews and tests to make sure the software is verified.
  • Product Manager – the goal of the product manager is to manage the development process of the software and organize the work of everyone involved. Here, the project manager makes sure there is clear communication, clear objectives and clear feedback so both the developers and the clients are happy.

In short, the goals in software product management are: clients ensures they have the right product, the developers verifies they have done the right product, and the product manager confirms that the requirements and process for both are managed right.

So, the role of the software product manager is important in any software development (which is basically what I do for a new project). A software product manager is in charge of the success of a software product. This role involves understanding the product from the client’s point of view and requires effective communication and motivation of the development team members.

So, am I ready to start learning and taking the Software Product Management Specialization, a Coursera course offered by University of Alberta? Well, yeah, that’s for sure!!

Please bear with me as I post more and more blogs on my learning journey, but if you are also interested in this field, feel free to read and follow. 🙂

Preparation Test Checklist

As part of my recalling the ideas in the course I am currently taking right now, which is entitled, Learning How to Learn: Powerful mental tools to help you master tough subjects, Barbara Oakley shared that testing ourself on the materials we just learned is a powerful learning experience.

Dr. Richard Felder, a legendary educator, has developed a checklist that we can use to see whether our preparation for taking the test is right on the spot. As Dr. Felder mentioned, if we are able to answer yes to all the below questions on this checklist, we are already prepared for testing ourselves if we have learned the material in great detail. Here are the questions on Dr. Felder’s checklist:

  1. Did you make a serious effort to understand the text?
  2. Did you work with classmates on homework problems or at least check your solutions with others?
  3. Did you attempt to outline every homework problem solution before working with classmates?
  4. Did you participate actively in homework group discussions, contributing ideas and asking questions? 
  5. Did you consult with the instructor or teaching assistants when you were having trouble with something?
  6. Did you understand all your homework problem solutions when they were handed in?
  7. Did you ask in class for explanations of homework problem solutions that weren’t clear to you?
  8. If you had a study guide, did you carefully go through it before the test and convince yourself you could do everything on it?
  9. Did you attempt to outline lots of problem solutions quickly without spending time on the algebra and calculations?
  10. Did you go for the study guide and problems with classmates and quiz one another?
  11. If there was a review session before the test, did you attended and asked questions about anything you weren’t sure about? 
  12. Did you get a reasonable night’s sleep before the test?

Going through the above checklist before taking a test would really help you gauge whether or not you learned the materials or you are prepared for the test.

Understanding More about Learning

For the past month, I have been working on my coursera course entitled, “Learning How to Learn: Powerful mental tools to help”. To those of you who do not know me, I am Yza from the Philippines (you can call me wy-za) and I am a working professional with more than 6 years experience on product development, particularly for Product Management. Lately, I am really interested with programming and I want to learn more about web development and game development.

With this in mind, I enrolled in the course and true enough, there are a lot of ideas that debunked some myth on study strategies, as well as solidify some techniques that I have been doing already when I was still a student in the university.

So what about the course? Learning How to Learn is based on the book A Mind for Numbers: How to Excel in Math and Science (Even if You Flunked Algebra) by Barbara Oakley, Penguin, 2014. It is divided into 4 weeks where you will work on each week for approximately 2-4 hours a day. This is one of the courses I enjoyed learning in Coursera.

So let’s start with everything I have learned:

Learning is an active phenomenon that involves newly formed synapses in the brain attributed to thinking. These newly formed synapses are influenced by a variety of factors such as the memory, sleep and emotions.

For researchers, they have found that as humans, we have two different modes of thinking. The focused mode and the diffused mode.

In the focused mode, our brain is concentrating intently on one thing that we are trying to learn or understand. If we compare this mode as a pinball game, the focused mode is where the ball goes through the rubber bumpers in a path that tightly close to each other. When the ball (thought) goes through the familiar thought pattern (orange), it bumps immediately; thus, easily getting and understanding the idea we are trying to learn.

Screenshot from the video: Introduction to Focused and Diffuse Modes in Coursera course

How about the diffuse mode? For this particular mode, it is like the relaxed state of our mind where our thoughts are working in the background to create new thought pattern and new approaches to a problem we are working on. Let’s go back to the pinball game. In the pinball game, when the ball (thought) is moving around where the rubber bumpers are widely spread out, the ball is able to go through spaces never before reviewed, to which it can touch never before learned ideas or thought patterns. This mode is usually when our thinking bulb lights up, and new approaches can solve problems we are trying to identify.

Screenshot from the video: Introduction to Focused and Diffuse Modes in Coursera course

The difference between the two? The focused mode is usually happening when we are trying to learn heavy concepts where the resources and problems are already provided. Since we are reviewing these new ideas and we want a familiar thought pattern to be established in our brain, we go into this mode and try to concentrate to easily identify and learn these new concepts. Whereas the diffuse mode is happening when we are normally in our relaxed state and our subconscious mind is doing the hard work on the background, giving new ideas and new thought patterns.

Chunking, Recall and Illusions of Competence

In learning, there is a concept called chunk. According to Barbara Oakley, chunks are pieces of information, neuroscientifically speaking, bound together through meaning or use. Chunking is the process of binding these pieces of information though meaning. Much like a puzzle, the chunks are the pieces of puzzle you put together, and chunking is the process of connecting these pieces together to create one big picture.

To form a chunk in learning, we need to have a focused attention when trying to learn, understand the pattern of the ideas and the connection in each pattern of idea, and lastly, practice again and again to gain context of the whole concept.

Screenshot from the video: What is a Chunk, from the Coursera course Learning How to Learn

Since we now have an idea about chunking, how do we keep our learning on track? We have to consider the importance of recall and illusions of competence in learning. Based on Jeffrey Karpicke’s research entitled, “Retrieval Practice Produces More Learning than Elaborative Studying with Concept Mapping” published in the Journal Science, when trying to learn, simply looking away from the material and recall what has been read is much more effective than just rereading the materials. His conclusion after observing students study a scientific text is that in the same amount of time, by simply practicing and recalling the material (or draw concept maps to recall the material), the students are able to learn at much deeper level. This retrieval process during learning allows our brain to begin forming chunks, and in a way, create a foundation for the concepts that we are trying to learn.

So as Barbara Oakley emphasizes, recall, which is the mental retrieval of key ideas, is more focused and effective when learning. However, other approaches in learning like merely glancing at a solution or rereading it are some of the common illusions of competence in learning. Also, just merely highlighting the sentences does not really help in learning and is also considered another illusion of competence in learning. Instead, we can test ourselves if we learned the material by recalling key ideas, and instead of highlighting mindlessly, we highlight only those main ideas very carefully and adding words or notes on the margin or on our notebook to help us fully grasp the ideas.

Procrastination and How to Overcome It

Now that we have learned about the basic concepts in learning, it is no doubt that when we are trying to learn something, especially in in-person or online classes, there will be times when we will try to set aside those tasks we are not comfortable with, only to catch up once the deadlines are near. This is called procrastination and once it becomes a habit, its long-term effects is bad for our future as it shares features with addiction.

See the source image
from https://sinaealice.wordpress.com/page/4/ under Creative Commons

So, how to avoid procrastination? Barbara Oakley presented some techniques to avoid and overcome the temptation to procrastinate:

  1. Do the Pomodoro technique — this is setting aside 25 minutes of our time with uninterrupted focus to do the tasks we need to do and learn the concepts we need to learn, followed by a bit of relaxation.
  2. Realize that it is perfectly normal to have a few negative feelings when beginning a learning session. What is important is to just get on with it and eventually, we will feel better about it.
  3. Focus on the process instead of the product. Process is the flow of time and the habits and actions associated with it. Product is the outcome. For example, I need to finish a project. Instead of focusing on the outcome, which is the project, which can take a lot of time and energy and the negative feelings associated with it, it is better to focus on how long we are going to achieve the outcome, like spending 30 minutes each day to work on the project. One way to focus on the process is by doing the pomodoro.
  4. Recognize the cues that launches us into procrastination and change them. This could mean shutting our cellphone or keeping ourselves away from social media if it distracts us from focusing on our learning session.
  5. Develop a new ritual for your learning session. For me, I learn easily with an acoustic instrumental background music while learning new ideas. So I purchased a headset to drown out the noise, go on Spotify and focus. I also easily recall ideas if I write these in my notebook. For you, it may be a different scenario but the point is, what makes you easily learn, you set aside time and do it every time you are on your focused mode and trying to learn.
  6. Space out your learning sessions. This is called spaced repetition. If we are trying to learn, it works best if we try to retain the information by repeating it it over and over, not within the same day, but practicing it the same number of times within several days.
  7. Believe that you can do it. This is the most important part of changing our procrastination habit. One way to do this in times of weakness is to develop a new community like hanging out with colleagues who learn the same thing, and helping each other avoid procrastination.
  8. Write the daily or weekly list of tasks in a planner journal the evening before. As based on research, this activity helps the subconscious mind grapple with the tasks on the list, and then work on accomplishing them the next day. Though we just have to make sure to plan our quitting time also.
  9. Eat your frogs first thing in the morning. This means doing the most disliked tasks and most important tasks first, using the pomodoro technique. This allows us to finish what needs to be done, and as the law of serendipity states, Lady luck favors the one who tries.
  10. Delay rewards until we finish the task. Rewards are what makes us reach for that learning goal, really.
  11. Lastly, get a good night sleep. Various research has already proven that when we have enough sleep, it allows our brain to wash away toxins and our brain cells to shrink, giving more space for new information to be retained.

What’s Next for Me?

The reason I wrote this blog is for a project, to identify what I learned from this course and how to apply it in my life. To be honest, the process of starting this blog, and then writing it, and then the goal of finishing it has become my application for the learning experience! Haha!

My initial goal for taking the course is to make it as a starting point of preparing myself for taking the other online classes I have enrolled in programming. I realized I am a great procrastinator, and if I want to improve my life, I need to upskill myself, learn new habits and work towards my dream role of becoming an interaction designer (which is related to UI/UX designer) and developer. I have been fascinated with programming since I studied in the university 10 years ago but life made me choose another profession. Now, my thoughts are hunting me — what if I worked on learning programming, getting certificates and working for the world’s best companies that put first learning, would I be happy right now? So there, this is the reason I am writing this blog. 🙂

So, let’s talk about this project. First, I chose to write a blog since it is easier for me, and I learn easily when I write. Second, merely the process of doing this project is already an application of the course! I have little motivation when it comes to online classes because I would rather: 1) sleep, 2) browse social media, 3) continue doing tasks for my work, 4) watch Netflix, or 5) just play with my rescue dog and cat (note: they are really adorable!). So you see, I have a lot of distraction and it takes lots of willpower.

But as Barbara Oakley said, one of the best ways of being effective in your learning is to use mental tools and tricks to inspire and motivate yourself. So here I am, doing the very tricks I learned in this lesson in finishing this blog. haha!

So far, these are the things I did to help me kickstart my learning sessions in all the courses I enrolled:

  1. I bought a planner for 2020 so I can write down all my tasks: both for work and for the online classes. I also bought another one for 2021 to help me prepare for the next year! We all know we need to reset and look for greater things as 2020 has been a bit harsh lately. (I am in the Philippines, so here is just what happened this year: Taal Volcano eruption, Coronavirus Pandemic, No work for several months, Typhoon Quinta, SuperTyphoon Rolly, and now, there is Typhoon Ulysses that hit our area).
  2. I started sleeping by 10pm or 11am, as sleep is an important factor in learning easily. I used to sleep around 12mn or later due to work. Now, I need to balance work and personal life.
  3. When I am watching the videos, I take down notes in my handy notebook. Recall is an effective approach, so what I do is after I watch the videos, I write down what I have learned. It helps me practice if I remember anything and try several problems.
  4. Highlight only what is important. Before, I love highlighting! To the point that my book becomes a colorful mess of doodles. But I realized, it is important to highlight only the main ideas and then I started putting my own comments beside these highlights. On my notebook, I created a quotation section where I put the main idea then I put my comments underneath it.
  5. I use pomodoro with my online stopwatch. This is really effective for me. I am greatly distracted when I have a task I need to do, my mind tends to wander somewhere else. With the countdown time on full screen, I am reminded to finish within the given timeframe.
  6. I stay away from distractions. For me, the greatest distraction is reading news always, and social media. That little notification bar on top of my phone? You bet it keeps me away from finishing my tasks. So what I do every time I am on learning session is working on my laptop instead using my phone, then I use Spotify to play low background instrumental music while writing recalling the ideas I have learned. I have the online stopwatch also to keep me grounded. So far it works for me, and I will keep on doing it while learning my other courses.
  7. Have a definite time for learning. I am working from home, so taking classes after is my schedule. However, I realized that learning 1-2 hours a day for the same course is like a spaced repetition, so now, I am doing it myself to avoid any burnout.
  8. Eat my frogs first thing in the morning. This is my greatest challenge of all. I usually delay those uncomfortable tasks, to which I end up thinking about it the whole day, and my pending tasks getting longer and longer at the end of the day. It is hard, but I am working on it one step at a time. Since I now have the list of daily tasks, I look at those list and prioritize. Then I try to get on with it. True enough, as what Dr. Oakley said, after sometime, it feels better (well, given the fact I have a sense of accomplishment after I finish it early in the day).

So there! I hope I shared bits and pieces of what I learned from the course, Learning How to Learn by Barbara Oakley. How about you? Are you also on your learning journey?

Maybe this course can help you! Or if you are a reader, you can get the book, A Mind for Numbers and I am pretty sure you will get lots of techniques. So until next time, always keep safe wherever you are in the world right now, and enjoy learning!

References:

McMaster University. (Coursera Course). Learning How to Learn: Powerful mental tools to help you master tough subjects. Taught by Dr. Barbara Oakley and Dr. Terrence Sejnowski. Course taken October – November 2020.

Karpicke, J.D. and Blunt, J.R. (2011). Retrieval Practice Produces More Learning than Elaborative Studying with Concept Mapping. Published by the Science Journal, Vol. 331, Issue 6018, pp 772-775 & retrieved from http://learninglab.psych.purdue.edu/downloads/2011_Karpicke_Blunt_Science.pdf on Nov 12, 2020.

2020 Quarantine Diary

It’s been a while since I last posted here in my blog, maybe because I was too busy, or I have other priorities than writing my thoughts here and sharing it to you, my dear reader.

person holding hand sanitizer

Photo by Anna Shvets on Pexels.com

However, the universe has a way of saying, “Stop and Chill”. Last March 17, our Philippine government has declared an Enhanced Community Quarantine, generally a lock down, to prevent the spread of the COVID-19 virus. All schools closed, only essential business remain open, and travel is restricted, whether by air, land or sea. The country was gripped with shock and fear as the infections of the virus continuously rise, and the normal daily routine stopped. Not only has this happened in the Philippines, but all over the world. Most governments have guidelines and strategies in place to prevent the spread of the virus, but as this is unexpected, most people were caught off-guard. Everyone has to stay home, practice sanitary hygiene and hand washing, and most especially, keep themselves protected, so as to help the community, rather, the whole country, in its fight against the coronavirus.

So what did I do during this time? Like most Filipinos, I stayed home. For the first month, I was lucky enough to be able to work from home and get paid. However, since we are from the publishing industry with schools as our client, the inevitable has happened. Our company has to tighten the budget to avoid layoffs for its employees. Most employees went on a NO WORK NO PAY setup, only the managers and the officers were on skeleton workforce. We are still part of the company, but we are on floating status.

There were uncertainties and this season has allowed me to reflect on my goals, my career, my life. For sure, everyone will become a different person after this pandemic, the only question is, will I emerge for the better or for the worse?

I chose to become better even if the situation is not. Luckily, I got accepted into Code In Place, an experimental online course offered by Stanford University for free to learn the basics of programming and Python. The universe has not let me down. I have something to work on while everything is out of control.

Karel

The Code in Place online course lasted for 5 weeks, mostly 6 weeks since we have a final project to work on. During this time, I have learned about programming basics, and Python. I really enjoyed this class as there are a lot of students I can ask questions if ever I get stuck with an assignment, and a class section that feels right like college. Even before, I already dreamt of becoming a web developer, or software engineer, but the universe has other plans. I am loving my coding experience and in my next posts, I will be documenting my progress here in my blog as I start my journey to becoming a web developer. 🙂

For now, the situation may be uncertain for many of us — you or your loved one has been affected greatly by this pandemic, either your business has closed down, you were laid off, you got the virus, or you have experienced difficulty during this pandemic, I feel you. Know that you are not alone. Let us choose to become better one day at a time.