My Coding Place logo

The Source Code

A Blog on Learning Coding and STEM skills

Updated: Oct 26, 2020

Activities such as sewing, running, and cooking don't seem as satisfying as being on my device where I can reply immediately to e-mails and text messages, and read news and be connected to my friends at all hours of the day. To what end am I scrolling? What are we getting from all our time in front of screens? Studies show the answer may be stress, anxiety and fear-of-missing-out. Even if we are gaming and having fun online with others, the lack of physical activity and personal interaction is harmful to our health. That's why screen time should have stretch goals. Stretch goals are goals that are difficult or temporarily challenging. Time on screens can be productive.


Balance the fun of being online with a natural desire to learn and build things, and you have coding. But it's all about picking fun projects, and the reward comes during the process of making something complicated that works. This is why I'm calling coding a stretch goal, because learning a new language is hard. Yet the higher the frustration level, the more rewarding your student will find coding. If we only get students to the point of being able to follow directions and type in exactly what we say, that does not serve them well in the long term. Coding is an activity where it helps to talk out logic and to think through problems with others, so it's not supposed to be a lonely, isolated activity.


At the risk of repeating what I think is widely known at least in my world, here is a list of six reasons why your child (and you) should learn to code. The practice of learning to code does the following:

  • teaches problem-solving skills, helping think logically and sequentially

  • teaches collaboration and teamwork

  • encourages creativity when creating code

  • applies rules of language (like grammar) to the language of computers

  • inspires curiosity about how electronics and software work

  • paves a path for future career opportunities

Coding is rewarding not only because students build something out of nothing and learn to break problems down into smaller pieces, but also because they are learning a valuable skill for future job opportunities by learning to program computers using various computer languages such as Python and Java. We encourage you to stretch your students' screen time with coding.


Practically speaking, it will be hard to stop that YouTube video or Minecraft world to start coding a project in Python, so you should set aside a regular hour for coding and have kids stop what they are doing 30 minutes before coding time. It is likely that 30 minutes will turn into 15 or 10 minutes, but make sure they stop to take a break, close distracting windows, and refocus. The reason I know this will be difficult is the reason I have a hard time stopping my screen time to exercise with a video. It is hard to find the motivation to do something hard and easier to continue routine habits like scrolling through social media feeds, reading news stories on the health crisis, or playing Candy Crush. The best a parent can do is set a timer and establish a routine and possibly a reward system. It would be a fun project to create an app that tracks how many minutes a person codes each day like an activity tracker. In any case, structure and expectations are key.


Keep in mind that we all want to be better, to make the most of our time and to accomplish things. Try to appeal to the desire to improve. Websites like code.org or scratch.mit.edu have tutorials that are fun to complete, but if you need support please reach out. Even though My Coding Place can run classes virtually, we have always preferred to be in our studio physically present with kids and teachers interacting face-to-face which is the most effective way to learn. However, we prioritize safety above all else so we continue virtually. There is a lot to be said for structure and expectations. If you need help setting aside time for your child to code or finding resources and material, let us know and we would be happy to help! After all, there are six good reasons to stretch their screen time!



Updated: Oct 26, 2020

Everyone is using Zoom for work and school, aren't they? Overnight, Zoom has become the defacto standard for meetings since social isolation became popular or required. Like Kleenex and Rollerblade, Zoom has defined the product category and is no longer just a brand. Why isn't My Coding Place hosting virtual classes and camps for kids on Zoom?


I wrote an earlier blog post with takeaways for software companies trying to appeal to small business. In this evaluation, I did not talk to salespeople like I did during my prior purchasing process, which required a bigger monthly investment and was not a decision that would have been easy to change. Most of these tips are regarding product marketing, product design, and trial design.

We spent many hours and multiple days evaluating options. Because we were testing, we were not ready to subscribe, which ruled out options like Zoom. The Zoom free version is limited to 40 minutes but our classes are one hour long. We started our virtual coding classes for kids using the platforms WebEx and Uberconference. The biggest reason for not going with Zoom was the limitations on the free trial. We simply were not going to invest in a product before evaluating it.


We ended up going with Whereby but evaluated two others with students. WebEx is operated by Cisco which is a well-known networking and cybersecurity company. We used it for classes where students joined with tablets. Unfortunately, the interface is not clean or modern. On top of that, the login process is clumsy and tedious. It was not a tool people enjoyed using, so we used Uberconference for the classes where we knew students were not using tablets. Uberconference is more Zoom-like with a single click to join, and it is easy to use and looks modern and appealing. Unfortunately, Uberconference was not robust and could not run at the same time as Unity software in those classes and lessons, plus if you had another browser window open that you were using at the same time, it could drop you from the meeting. Therefore, neither WebEx or Uberconference were ideal, one because it was not robust and the other because it was not user-friendly.


Fortunately, we found Whereby after a month of evaluating the tools and not being satisfied with either. We know there are many conferencing tools available and small companies with small budgets, but branding and marketing would be a requirement for prospects who do not have the time to read articles to find out about your product. Finding the perfect solution requires persistence because the tools are often hidden in blogs, videos, reviews, and articles. We tested tools like Intercall, Adobe, GoToMeeting, and Microsoft Teams. Adobe called us during our trial, which was a nice touch that set them apart, but their product was too complicated for kids.


The clock was ticking to subscribe to a platform because we had organized virtual workshops for Scratch and Python coding for a Dell employee resource group, with 10 students in a session and six sessions total. We accommodated 20 students last year in our studio but felt that 10 was a reasonable size in a virtual setting. We were going to subscribe to Uberconference if we had to choose one of the two tools, but we were nervous about reliability. Luckily, we came across Whereby 1-2 weeks before we had to make a decision. We randomly found Whereby in a random article on best conferencing tools. Other unknown tools on our list were collaba, 8x8.vc and tico.chat.


Here are the reasons the instructors and students enjoy using Whereby:

  1. easy to join: once students make sure they are running Chrome, joining is as easy as one click. They simply knock and wait to be allowed entry.

  2. fun to use: the emojis that are available are fun to use and easy to throw up on anyone's screen. The emojis are a great way to measure progress and let the students participate quickly and easily without everyone having to talk or type at the same time.

  3. multiple screenshares: this is a highlight and key differentiator. We love that students can share their screens at the same time as each other and the instructor. Even Zoom does not allow this. This innovative feature is what convinced us. The ability to see what other students are working on while looking at the instructor's screen and everyone's faces at the same time is authentic and motivating.



Unfortunately, we needed a different tool for live streaming. Broadcasting and recording is possible in Zoom but since we weren't using Zoom for classes, we didn't default to it for our Facebook Live sessions. As a first-time live streamer, we were happy to find Streamyard after evaluating many tools like BeLive, Vimeo, OBS, Wirecast, and Lightstream. You can do Facebook Lives without streaming software, but we wanted to appear professional to the audience with banners and branding, and we needed a meeting platform like Whereby to broadcast two people and screenshares. With Streamyard, we were able to look polished and seamlessly offer different views of us and our screenshare. Also, Streamyard's trial allowed us to use our own branding which made the experience authentic and one that we wanted to continue.


Live streams from coding schools? Where would we start? At the end of April with no experience streaming, we started a new short-term initiative running Facebook Lives with #myCPlive to show people cool projects they can build with code. On a side note, if you are interested, you can catch the recordings on our Facebook Videos page. The 30 minute sessions were cropped to be more useable to viewers trying to learn these topics.

  • April 21 - Data Visualization featuring Javascript

  • April 28 - 3D Games featuring Unity

  • May 5 - Animation featuring Processing

Finding the right streaming software for a beginner was extremely important for this effort. Like finding Whereby, the process required watching videos and reading blog recommendations, as well as testing the application. One provider's tool was just too intimidating and complicated for a newbie, even though we kept getting emails from their support team. If we can't figure something out during the evaluation process, our users will likely have similar issues so it's a bad sign.


In summary, finding the right software for a small business' goals takes great effort, persistence and patience. We spent a lot of time evaluating various tools and did not want to pay for evaluation. That is why Zoom was ruled out at the beginning. Streamyard and Whereby offered trials and we liked them so much, we decided to pay for both, even though at the time the Streamyard trial expired, we only had one Live session remaining. Offering an authentic trial is also important for conversion. This means, don't annoy your trial user with generic branding, like having watermarks all over the screen until they pay.


We are happy to support these software companies and feel very fortunate to have found them just in time for our needs! Innovative software that is fun and easy to use is worth the cost, but finding out about these companies was harder than it should have been! Invest in marketing, get the word out, and make sure you are known by influencers because not all businesses will have time to find your perfect solution! That brings up thoughts on SEO and SEM for another post. Good luck and stay safe!

Updated: Oct 26, 2020

Since early March, when the pandemic first introduce safety concerns, MCP has been offering virtual classes. Similarly, schools and activities have moved to a remote environment with tools such as Zoom. It has been a big change, but stay safe and keep coding! Fortunately, the migration to virtual classes was fairly seamless, and we have suggestions to help students succeed online. Below are some tips on how to be successful in a virtual environment.


We have found that the virtual setting brings challenges that we did not face in the studio. An outspoken student asking questions in a face-to-face setting is less disruptive than in a virtual setting, where all participants are required to listen to her/him. Any student questions consume the instructor's attention, and there is no space to ignore a few students that may be chatting with each other. We are keeping the remote classes small with less than 5 students so that kids can have attention and all students will have the opportunity to ask questions. In larger groups, it is easy for students to get frustrated and drop off the call or not engage in the activity.


We also see more distracted students in a virtual setting, though we understand that a large part of that can be attributed to the disruption in children's lives. Their school year ended suddenly, and they were forced to learn from parents and online resources. They are required to stay at home and can only see classmates and friends through a screen. It is a tough time to be a child, but students can adapt and there are qualities we can encourage to help them be successful online.


As a student, thriving in a virtual environment requires the following attributes:

  1. patience: A virtual setting often requires more patience than in-person classes. Patience with technology challenges and patience with other students is helpful.

  2. communication: It is no longer possible for the instructor to see your screen or recognize you are struggling unless you actively communicate it verbally or through facial expression. However, the instructor may be too busy managing the aspects of an online environment such as screenshare and chat to pick up on body language, so speaking up would be best.

  3. focus: Being at home creates more distraction than being at our studio. With small class sizes, we haven't required students to be on mute so that we can encourage communication. It is helpful if the student has privacy and a quiet study area so they can concentrate and other students are not also distracted by noise and movement in the background.

In summary, understanding and adapting to a shift in environment will help students be successful learners. Patience, communication, and focus are helpful attributes. With patience comes flexibility in dealing with other students and a students' own situation, as they will need to make more effort to tolerate differences, overcome technical issues, and communicate questions and frustrations. Good luck to all students as they learn to navigate our new normal!