Categories
Update

Welcome To My Blog: Where Super Teachers Become STEM Superstars!

Congratulations! You made it! You’ve found this little corner of internet because you’re interested in Science, Technology, Engineering, and Math (STEM) Education. You could be entirely new to STEM Education like I was when I started searching for ideas (I sold cars before becoming a STEM teacher), or maybe you’re looking for some additional resources to really amp up your current STEM curriculum. Look no further brave adventurer! Herein you shall find all you seek, and more.

No matter how you got here, if you’re anything like me you’re constantly searching for new curriculum, lesson planning ideas, and best practices to keep your students motivated to learn. It is also likely that you work in the Public School System, and need to do it both well, and cheaply! Though I came to STEM Education by a somewhat non-traditional route I’ve been doing it for several years now, and want to help other teachers be successful while having a centralized place to keep track of what I do in my own classroom.

Throughout this blog you’ll find lessons I have actually applied to my teaching practice (along with the national standards the’re based on), analysis of national standards, teaching pedagogy I have found useful, lesson planning ideas, reflections on how my lessons are working, and a wide array of free resources to help you become the Superstar STEM teacher you want to be.

Feel free to pour yourself a nice cuppa, sit back, look around, and enjoy. Thanks for stopping by!

 

P.S.

Don’t forget to sign up for updates from my newsfeed (at the top of the main page) so you can stay up to date on whats going on here at SuperStar STEM! (I solemnly swear to neither sell your info, nor send you anything other than new blog posts, and the occasional members only post)

Categories
3D Printing Learning Tools Lesson SuperTopic Update

3D Printed Fidget Spinner STEM Lesson

Fidget Spinner STEM

 

If you worked in a school, in the spring of 2017, you know what a fidget spinner is. If you are reading this after the fidget spinner craze has passed, were on sabbatical in a cave, or work in some crazy pocket universe where all of the children were not obsessed with this thing you may not understand the full impact of this lesson. That’s okay, a Fidget Spinner STEM Lesson will still be useful.

Any time I happen to notice that a significant portion of my students are incredibly engaged with something, I want to know what it is. Once I know about it, I want to come up with a way to turn it into a lesson. When I worked in sales we called this borrowed rapport. Essentially, if you referred me to your friend they automatically have a bit higher level of trust in me because they already trust you.  In education the same holds true. It is far easier to get kids more excited about something they’re already excited about, than to create excitement from the ether. I also prefer whenever possible, to trick my students into learning while they think they are having fun. You can look at some of my other articles to see this philosophy illustrated.

Fidget Spinner STEM Lesson Standards

I had originally envisioned this lesson for my grade 4 students. After thinking about it though, I changed my opinion to it being more appropriate for my grade 6-8 students. As such, I have intentionally kept the standards general so they could apply across grade band.

  • Math standards in your particular band can be anything having to do with measurement, engineering, and Geometry.
  • For Science you will want to look at Energy & Motion, and Engineering.
  • With State Pre-Engineering/Tech Ed Standards look specifically for anything relating to Computer Aided Design, Engineering Design Process, Manufacturing, or Advanced Technology.

 

Fidget Spinner STEM Lesson Materials & Equipment

 

Fidget Spinner STEM Lesson Overview

Prior to attempting this lesson students should be familiar with the operation of Tinkercad, as well as how to use the Micrometer. Students will be required to design and 3D print a fidget spinner with no fewer than three bearings. The total footprint of the design is up to you, but I’d recommend something in the neighborhood of a 6CM cross section with a 1CM height.  The design should be unique, well balanced, and aesthetically pleasing.

Fidget Spinner STEM Lesson Ideation

First, students will be given the specifications and a bearing. I’d suggest having students start by sketching some thumbnails in their engineering notebooks. Have them brain storm on paper. That way they begin to think like a designer.

They can certainly do internet research, but we are trying to simulate the actual design process of an actual product. At it’s core we are exposing our students to the world of toy design. What student could possibly resist such a tempting project? With this in mind keep it fun, and make it a little silly. Too often in classes where we try to stick to a rigid design process we lose track of the fun. Somewhere along the way some teacher or administrator thought that school could not be both rigorous, and fun at the same time. That individual was completely wrong. In reality, the more fun you have built in to your lesson the more rigor you can expect from your students.

Engineering Notebook Sidebar

I will certainly do a longer post on this at some point (in fact as soon as I finish this post I will be doing one on collaboration that covers this), but for now suffice it to say that there are a billion and a half ways to do engineering notebooks in an engineering classroom. I have only found one good method. Use graph paper, have kids take a picture of the page with their phone, and save it to a google drive folder. Again, more on this in a later post, but this will get you started.

Fidget Spinner STEM Lesson Prototyping

This is where things start to get super fun. First, students need to measure the diameter of the bearing with the Micrometer. Next, have the kids make a detailed drawing of their design on paper. Once they have a solid design in mind, they go to Tinkercad, and design the spinner digitally. By forcing this process, and letting students know they will be making Tinkercad designs you will be forcing them to keep a bit more grounded in reality than they may want. This is okay, and exactly what you want from them because the last part of the initial prototyping phase is production. In the production phase students will 3D print their prototype. Once they have printed their prototype they can iterate until it works & looks perfect.

Fidget Spinner STEM Lesson Extension

Once students have completed the above steps, and have a working design you could certainly end the lesson. Students who’ve done the above have already demonstrated mastery in designing a working prototype of a useful item. If however, you want to spend a bit more time on it the lesson can easily be expanded into an entrepreneurship one. In the extension students will need to conduct some market research of their sales demographic to find out what their customers want/need, will have to come up with a marketing plan, and will have to figure out production costs. Once they’ve done all of that they could even actually try selling a few depending on the availability of your 3D printer.

Fidget Spinner STEM Lesson Conclusion

When we teach students by allowing them the freedom to express themselves we find massive engagement. Students talk about their project outside of class. They will work on their own time, and will surprise you with just how far they will take something. Whether the design is a fidget spinner, or some other widget kids are into, we should always look for a way to borrow engagement. Additionally, with class times being reduced we need to keep our lessons educationally dense in order to keep our rigor high.

Since the 1980’s Technology Education or Industrial Arts has had this project of a research design, and manufacture something. This is certainly a valuable exercise in terms of entrepreneurship, but has historically suffered from a lack of realism or relevance. I’ve heard of classes designing everything from Sports Drinks to Sports Cars. In none of those cases have the students been able to actually make & sell their idea. There are obvious benefits in the above lesson of teaching engineering design, but there is also an opportunity for students to actually make something salable.

 

Categories
Computer Science Lesson Opinion Programming Reflection SuperTopic Update

Creating Coding Lessons Reflection – Iteration One

Coding Lesson Reflection

As an Engineering teacher I strongly believe in the power of iteration and reflection. Everything I ask my students to do, I ask them to do more than once. This gives them the opportunity to learn from their mistakes. Iteration is how real design works, so we should teach accordingly. I am such a fan of the concept that I apply it to my teaching practice. What follows is my coding lesson reflection for my first iteration.

The first iteration of creating coding lessons using App Inventor 2 did not go as well as I’d hoped. Because it didn’t go as well as I’d hoped I have Two choices before me. I can scrap the lesson, or I can reflect on it and how to make it better for next quarter. What follows is my reflection on this past quarter. If you haven’t read the first Two posts in this series you should check them out here, and here before continuing. I’ll wait.

Coding Lesson Reflection – Complete Successes

 

My primary goal for Middle Grades Technology Education is to introduce new technology or technical concepts to my students. In terms of technology and concept introduction this lesson was a complete success. Every student in my class was able to have some success in making mobile applications.

The lesson was easy to both scaffold, and differentiate. Depending on individual student ability I could give more, or less help as needed. I was also able to easily alter portions of assignments in order to bring each student to the level of challenge they needed. Everyone stretched, but no one was drowning (at least not for long). Additionally, I think that all of my students were both engaged, and entertained by this lesson. The only times students seemed to lack engagement was when they felt overwhelmed by the content. In this case I could simply add scaffolding to bring them back.

The vehicle for learning here was outstanding. MIT App Inventor 2, worked as well as I had hoped. The interface is well within the comfort level of all of the grade 8 students in my class. They were also able to apply learned concepts to other problems. The phones, and tablets worked how I expected them to with minimal problems. For next year I will need to buy devices for my classroom out of my own budget, but based on how my test devices performed I am comfortable doing so. Ideally, these phones will still be available when my equipment gets purchased.

Coding Lesson Reflection – Mediocre Successes

 

Though MIT App Inventor 2 worked exactly as I had hoped, the tutorials I used didn’t. I have a fairly specific vision for what I want to teach in the course, and the tutorials I used were not exactly right. They were also not as easy for my Grade 8 students to understand as I was hoping for them to be. I am not particularly surprised by this as I have yet to find something made by someone else that I am completely happy with when it comes to curriculum. Using videos for teaching app programming however, seems pretty solid. I also like that the format is comfortable for my students, that they can refer back to the information contained in them, and that it allows me to spend class time scaffolding learning for individual students.

Encouraging collaboration was also “sort of” successful. In the beginning of the quarter I suggested that my students lean on one another for assistance, and tried to facilitate that communication. As the quarter progressed I added collaboration, specifically through web site comments as a requirement. Students were successful in helping one another, but resisted when I added the collaboration requirement later in the quarter.

Coding Lesson Reflection – Unsuccessful

 

The lesson itself was an overall success, but I am left with a distinct feeling that some things went terribly wrong. First, I stepped back to far, and too quickly. By this I mean that I only went through one complete tutorial with my students before giving them the others, and having them try to figure out the tutorials on their own. Doing so was certainty a conscious choice, but it was the wrong choice. I essentially gave my students scaffolding that didn’t involve me, and made the assumption that if they got stuck they would ask me for help. Unfortunately, they didn’t ask for help until they were completely frustrated and lost. The result was that many of  my students didn’t get as far as I’d hoped they would.

Next, the way I graded this lesson was deeply flawed throughout the quarter. Typically in my classes I use a participation grade. Most of the time this method of grading is perfect because I’m not expecting work outside of class. By the time I figured out that I should move to a grade by assignment model everything was already thrown out of whack. I then made the mistake of doing a combined model, which really didn’t work out. Finally, I added different types of grades in the middle of the quarter. The result was grades that poorly reflected the work being done.

My expectations of my students were also incorrect. I had the expectation that many if not all of my students would be doing some of the work for this class at home. Though I had a few do so, most simply didn’t. Some told me they didn’t have a computer or internet at home, and others said they were to busy with other school work.

Coding Lesson Reflection – Immediate Changes

 

The great news about all of this is that I have an opportunity right away to solve some of the problems with this lesson. A new quarter just started, and my coding lesson starts anew along with it. I am certain I can remedy all of my failures, and likely improve some of my mediocre successes.

  • Grading: Beginning with a project based grading system, and setting the expectation early on should allow grades to more accurately reflect the work produced. Additionally, I will insert a collaboration requirement from the beginning, and stress the impact of this requirement on overall grades.
  • Expectations: Now that I am more familiar with what students are capable of I can tailor my expectation accordingly. I can closely examine what is happening in the tutorials I assigned last quarter, as well as the results achieved with them. When I look at what my students did in relation to what I was looking for I can eliminate or scaffold as needed. Additionally, I can be more cognizant of what students are likely able to accomplish at home, and assign work accordingly.
  • Role of the Teacher: In this next iteration of the lesson, I will simply increase the amount of scaffolding I give my students, and be more active in checking up on their work. By increasing this I should be able to achieve better results.
  • Collaboration: This quarter I will institute a collaboration requirement from the start to make collaboration a greater part of classroom culture overall.

 

Coding Lesson Reflection – Long Term Changes

 

In terms of long term changes I am going to focus on the tutorials themselves. As I mention above, though the tutorials I have found are useful they are still not quite right. During summer break it is my intention to make my own tutorials with which to teach this lesson. When I do I will add a new section to SuperStarSTEM.com where my tutorials will live.

Thank you all for reading, and if you have found this post useful please share links wherever you can. Doing so will allow other educators to benefit from our work on SuperStarSTEM.

Note: Just about any Android phone will work for App Inventor 2. Ideally you will find some that are $20-$30, and have both an auto focus and a flash. Those two features are not required, but will allow you to use Rocketbooks in your class. The only required features are an accelerometer, a camera, wifi, and possibly GPS.

 

 

Categories
Learning Tools Opinion Resources Top 5 Update

Top 5 STEM Funding Sources – Make It Rain

STEM funding sources

 

As I’m sure you’re aware if you’ve read any of my other articles, I’m a public school teacher. It is one of the greatest joys in my life, and I hope I get to do it until I retire. That said, the public school environment can be frustrating. For me, and I imagine for many public school teachers this time of year (budget season) is incredibly stressful. This is especially true in 2017 due to the current political climate. Typically, I consider it a fantastic budget season if my program’s budget stays the same. This year I will consider it amazing if I still have a job. In any case I always need additional STEM funding sources to keep my program strong.

With that in mind there are three reasons I think it’s wise to develop fund raising skills. First, if I can fund my program outside of my allocated budget, my ability to teach is not determined by others. Second, if I can self fund I am more valuable than someone who cannot. Third, if I can self fund I have the ability to expand my program unhindered by the political process. In short, my ability to fund my own program means that I have more freedom in my teaching practice.

Mindset

Here is where most teachers I know have trouble. We know we need more equipment. Teachers know we are better teachers when we have better tools. We know that the likelihood of getting the Administration or the Board to give us more money is pretty low. Most people are terrified to even ask for money. If given an opportunity for additional funding we may not have a plan in place to utilize it. I have covered some of this in the past with posts on the Top 5 Learning Tools Wishlist, and Content Drives Technology NOT The Other Way Around.

This post is focused on how to get more money for your program. Specifically, how to do it as efficiently & painlessly as possible. Maybe some of this comes a bit more easily for me because of my sales background, but everything below is pretty painless. Additionally, some of this you are doing already, but aren’t leveraging effectively. I’m ranking the below STEM funding sources from most effective (for me) to least effective. That said, even the least effective options here are pretty great. They are in my top 5 for a reason. Above all be patient, education funding is a marathon not a sprint.

STEM Funding Sources

I have actually used all of  these resources effectively in my own practice. In some cases I have gotten a lot of equipment, in some cases less equipment. To have a well equipped program you need to be able to gather large, medium, and small amounts of equipment effectively. In some cases the below sources have also led to some fairly lucrative consulting work. Where this is the case I have noted it.

1. Local & Not So Local Higher Learning Institutions

In terms of general STEM funding sources, this one is far and away my favorite way to get extra equipment for my classroom, as well as where I get most of my consulting work. At the time of this writing, STEM is incredibly in vogue. Anything having to do with Engineering, Computer Science, or Design is being studied, analyzed critiqued, and funded. Colleges, and Universities are really good at receiving grants of all sorts.

What you may not know is that part of those grants, as well as the University’s ability to receive further funding requires them to do case studies. Their case studies need to be done in classrooms. Additionally, they don’t always end up using all of the money they receive. If they don’t use all of the money they are given, they need to give it back. If you are exceptionally comfortable talking to people you can try to approach Computer Science and Engineering departments directly, but I’ve never done so.

Best Practices for Higher Ed Networking

The best way I have found to develop contacts at these places is through Professional Development. In my experience, the same departments at higher learning institutions that offer free (or even pay you to attend) PD are the departments that have grant funded projects focused schools. If you take PD through them they will approach you, or at least be willing to listen to your ideas. ALWAYS tell them about your program. Try to spend part of your breaks at PD talking about your program, and what your hopes for your program are to the presenter.

Make sure you get their contact info, and send them an email thanking them for the workshop. If they mention a project while you’re talking with them feel free to mention it in your thank you message. Ask them to keep you posted about additional PD they are teaching. Almost invariably this will lead to them eventually approaching YOU with funding opportunities.

2. Local Non Profit Educational Services Providers

As I have only taught at one school, in one specific region I am not certain that companies like this exist everywhere. I know they are pretty common in NH, and I know that the one that serves my area is fantastic. If you are unfamiliar with organizations of this type, their whole purpose is making the lives of educators better. They provide Professional Development, apply for grants. Participate in studies. Provide meeting space. Facilitate educator networking, and a whole host of other things I’m sure I’ve forgotten.

I have found this STEM funding source incredibly useful in in my Professional Development. Again, I take no cost (to me) PD that makes me a better, more informed, smarter teacher, and I get additional benefits. Developing a relationship with these types of companies has absolutely led to getting additional equipment. Lots of other organizations donate their old tech to these non profits. Oftentimes the tech they take in isn’t good for much other than recycling (or taking apart), but if they know what you’re looking for they will give it to you when they get it.

Organizations like this are also always plugged in to what grants are out there. As such, when they apply for a grant they may name your program as a participant. Additionally, once you are well known they may ask you to present a workshop. This is beneficial on many levels, but these engagements are often paid consulting jobs.

Best practices for Non Profit Networking

You may be surprised to learn that I could literally copy & paste the above best practices section, drop it here, and it would hold true. Take professional development, ideally professional development you get a stipend for taking. Take as much professional development as you can stand. During your workshop talk to the presenter, as well as the individual from the non profit who is observing the workshop. Discuss your program, your goals, and get contact info. Send a thank you email. Let them know you are always on the lookout for more PD. If they ask you what your challenges are, tell them you could use additional equipment. Above all develop a good working relationship.

3. Community Improvement Groups

Every community out there has some group or another that wants to make it better. In some cases there are many groups that want to make your community better. People involved with this STEM funding source, want to help. In my experience they believe (as most teachers do) that the school is at the heart of a community. Strong schools lead to strong communities, and strong communities have a strong school system. Community Improvement groups may not have the resources of the first two STEM funding sources, but they can usually help out somehow. Don’t limit yourself here, look at groups that work to improve arts, adult education, career training, and anything else that improves your community. Oftentimes they have grant funds available that they will not use (and as a result lose). These funds can often be re-purposed for educators with a small amount of finesse.

Best Practices for Community Improvement Networking

In the same manner that you don’t love getting asked for something out of the blue, neither do these organizations. Do some research, and see what sorts of organizations are active in your area. Approach the organizers directly, and see where they could use some help. Let them know what you do, and what your program is like so that they know what you’re doing in the classroom. In my experience they almost always have committees they want people to serve on, input about their own ideas, and participation in the programs they offer. Just like the other organizations mentioned above, once you develop a relationship with them they will likely approach you about helping your program.

4. Youth Groups & Museums

Groups such as 4H, Girl Scouts of America, Boy Scouts of America, and the Civil Air Patrol are all in this bucket as well as many others. In fact, the Civil Air Patrol has specific programs that involve Professional Development for teachers combined with equipment donations. It’s important to remember that these types of organizations are designed to help children in a wide variety of ways. Often they have special programs, and specific ways of helping that involve some paperwork, and training. Working with programs such as these is also an excellent way to get news of your program out into your community. The more excited the community is about what you’re doing, the more potential funding sources you will find.

Museums, especially Science or Children’s Museums often have educational outreach programs designed to benefit schools. They also occasionally receive grants for education, and can be an incredible resource for borrowing scientific equipment as well.

Best Practices for Engaging Youth Groups & Museums

With both of these types of STEM funding sources (as well as with the first 3), often you need to do something to receive something. Get in contact with your local organizations and volunteer to run an activity, or help out. Take any training they offer, and find out what their needs are. Do whatever you can to help. As with any other of the above sources, talk about your program. Discuss what you’re doing, and what you’d like to do. Keep in contact with them, and they will likely reach out to you with ideas about how you can help each other.

Getting funding from most organizations involves relationship building, and sharing your program. People help who they know, and who is on top of their mind. The directors of the groups may come across an opportunity to help out with an incredibly short time window. Make sure you are the person they think of first.

5. Donorschoose.org

This crowd funding organization is specifically designed around the idea of helping teachers get the additional equipment they desperately need. I love donorschoose, they are amazing, easy to use, and relevant to your needs. They understand teachers, and are very good at helping you reach your funding goals. “If it’s so good, then why mention it last?” you may ask. Well, first let me mention that last in the top five is STILL in the top 5. Next, there are some features that make this less awesome than other STEM funding sources. First, you are largely restricted to their specific vendors. This isn’t THAT big a deal since they work with both Amazon & Best Buy, but it can be annoying. Second, you need to go to your own social network for funding. Again, not a HUGE deal but certainly worth considering.

How it works is that you come up with some items you need. You find those items from one of their vendors. Next, follow their instructions about points and shopping. Finally, follow their instructions about how you present the project on social media. When I did mine, I would post a reminder to my Facebook feed once per week. I was fully funded within a month or two. Often this is the most attainable, and approachable method for teachers to start their outside funding journey. For me that was certainly the case.

Conclusion

You’ll notice I haven’t mentioned hitting up local businesses, doing fund raisers, or applying for grants here. These are perfectly legit sources, and I encourage you to try anything you can to get outside funding. I have been at social gathering before, and struck up a conversation with someone about work. A few weeks later an Arduino showed up at my house. People want to help, you just need to talk about what you’re doing.

A Quick note about Professional Development. Without exception 100% of the avenues I have pursued for outside funding are tied in some way to the PD I attend. At every opportunity I go to literally every single free PD I can. I’m always on the look out for PD that has a stipend attached. I apply for everything, and I always say yes. When I’m at a PD (or anywhere else) I always network with other educators. I ask questions. By doing the things I mentioned here I have been able to get additional funding, and do consulting work that paid me about 10% of my salary last year. Because of my connections, my school and I have been named by a major university as part of a grant they are pursuing. If I can do it, so can you.

I hope you’ve found this article useful. If you have please share it with everyone you know, in every way you can. Additionally, if you want to keep up to date on everything that happens here at SuperStarSTEM.com please sign up for email updates. I promise we will never share your email or send you anything other than updates to the site. Thanks for reading.

 

Categories
Computer Science Learning Tools Lesson Opinion Programming SuperTopic Update

Creating Coding Lessons – Grade 6-8: Part 2

coding lessons reflection

Any time I try something new I get some unexpected results. Often I learn something new. Usually I tweak something. Sometimes I find a connection to something else. My students find the lesson easier or harder than I expected. I’ve even discovered that some of my basic assumptions were faulty before. This time is no different. This coding lessons reflection will be of dubious use to you without having read this post. Don’t let me dissuade you though, read away. What follows is an outline, and reflection on what I have done for the coding lesson I am working on so far.

I tend towards jumping right in, and being flexible as I go with new lesson ideas. I know that others prefer to have every moment planned out in advance (and there’s nothing wrong with that), but I am more comfortable winging it a bit. That isn’t to say I don’t have a plan, it’s more to say that my plans are fluid. I trust my research and experience to guide me as I go. This post is a bit different than usual as well. There are a lot of moving pieces to this lesson, and I’m writing to focus my own thinking in addition to documenting what I’m doing for others.

Refined Overview

I am working towards several goals in this lesson. First, I want to provide a solid foundation in computer science to my grade 8 students. Second, I want to introduce my students to some basic web design. Third, I want to give them an outlet for their desire to create. Fourth, I want my students to be less dependent on me for the knowledge they require, and finally I am exploring how to differentiate a performance based lesson across students of varying needs.

Students learn different subjects in different ways. Some students require more scaffolding than others in order to benefit from a lesson, other students learn best with more independence, and still others require something in between. I have always been of the opinion that it is not a given student’s responsibility to learn how I teach. Rather, it is my responsibility to teach how they learn. In the immortal words of Mr. Miyagi: “Teacher say, student do”. My hope here is that I can create a lesson for all students.

Assignments Thus Far

As mentioned here, I started of with a simple tutorial for the Talk to Me App in App Inventor 2. Additionally, I assigned the students to create a google site, populate it with an About Me page, a Links page, a Classwork page, and a Portfolio page. We did the tutorial, and the web site assignments together during class. They were also given a question to answer about computers in general.

Students are required to create a project page for each app, and to fill it with documentation and reflections on each project. After the first assignment they have been given several more in rapid succession. They were assigned the second part of the Talk to me App, the Ball Bounce App, and were tasked with making unique improvements for each app as well. All of the apps up to this point are part of App Inventor’s Hour of Code. As part of these apps we have discussed the concept of abstraction in computer science. Additional App assignments will be designed to cover other topics mentioned in my last post. As an assessment for this first, basic section I asked students to work through the set of tutorials under the Paint Pot App. This assignment is different as I am not giving students class time to complete it.

Coding Lessons Reflection

All assignments are given in the google classroom, and students are encouraged to ask any questions in the google classroom as well. They are also encouraged to answer each others questions.  The first App assignment, and the first web assignments are the only ones we do together in class. The rest will simply be assignments. Students are given class time to work on their assignments. I also expect them to answer many of their own questions through internet research.

There was some push back on these ideas at first, but students are really beginning to embrace this style. This manner of having video tutorials, and performance tasks is allowing me the time to help those students that need it while allowing other students to work at a more accelerated pace. I don’t know yet how the assessment will pan out. My goal is to have students doing work outside of class which will foster greater levels of collaboration on their sites, and in the classroom. My main concern with this is that some students may be unable to work from home because they lack a computer with internet. We’ll see.

I’ve mapped out the app assignments for the rest of the quarter already. I am however, still trying to fit in the concepts & practices I discussed in the first article. That portion is a moving target that I will revisit periodically. Certainly, the app assignments will have most of these ideas built in. My challenge will be to pull out these specific concepts & practices to shine a light on them. A lot of this will come into greater focus as student move away from tutorials, and into building their own unique ideas, but I need to keep them at the top of my mind.

Differentiation in Coding Lessons Reflection

One of the pleasant surprises I’ve come up with is that assigning work in this manner is exceptionally easy to differentiate. In my current class I have several students who are incredibly comfortable with the subject matter, several who are moderately comfortable, and several who need significant scaffolding in order to be successful. By taking myself out of the initial distribution of knowledge to my students, I allow myself to be available to scaffold where needed.

Additionally, by forcing my students to add unique features to their apps I have allowed my students the opportunity to dictate their own level of challenge. Improvements to an app can run the gamut from changing the color of the screen, to translating typed text into another language before “speaking” it. What I’m left with is a room full of engaged students who are given the exact amount of support they require. This has allowed me to view all of my lessons differently, and will change how I teach moving forward.

Next Steps

This Coding Lessons Reflection would be of reduced value without a discussion of where I plan to go next. The rest of the course will continue to be focused on App Tutorials, and web design. In order, the apps I will assign are:

 

As time goes on the tutorials begin to focus on specific features without repeating information. Many deal with some pretty advanced programming concepts so, I’ll have to pay close attention to how my students are doing. There’s a good deal of work left to do on this unit, and I expect to make revisions as I go. I will continue posting about what is going on with the apps individually, as well as what’s happening in my classroom. The really interesting items will be what the kids come up with for individual apps.

Conclusion

Though I am essentially 20% through this first iteration of my coding lessons curriculum there are still a huge number of questions that need answering. I feel like it is going well, and I am excited to see how everything pans out in the end.

Thanks for reading, and if you’d like to keep updated on what’s happening on the blog please sign up for email updates. I promise I will never send you anything other than updates on my posts. Additionally, the more you share this around the more people will get use out of it. Please use the buttons at the top of the post to let everyone know whats happening here.

 

Categories
Ev3 Robots Learning Tools Lesson Programming SuperTopic Update

Advanced Ev3 Robotics Lesson For Superstars – Problem Solving

advanced ev3 robotics lesson

 

My first year teaching STEM was relatively simple from a curriculum design perspective. I knew that grades 5 & 6 would be robotics, and 7 & 8 would be 3D printing (Grade 4 Was a mystery, but I knew I’d figure it out eventually). As none of my students had previous exposure to Robots or 3D printing I could just give my grades 5 & 6 the same lesson, and give my grades 7 & 8 the same lesson. After they had the basics, I would go advanced the next year. The problem was that though I found some basic Ev3 lessons, there didn’t seem to be an Advanced Ev3 Robotics Lesson to look at anywhere.

Not to be slowed down by the fact that no one seemed to have done this before, I decided to go with a series of broad based challenges. Luckily I found the fantastic Dr. E’s Mindstorm Challenges web site to steer me in the right direction. After about 12 iterations, the Advanced Ev3 Robotics Lesson you are about to discover was born. If you came here looking for more basic Ev3 lessons, check here & here.

Materials I use

  • A Core Lego Ev3 for Education kit for every 2-4 students.
  • An Expansion Lego Ev3 for Education kit for every 2-4 students.
  • Some type of cellular phone, or tablet for every 2-4 students.
  • 1 Laptop running Lego Mindstorms Ev3 software for each team.
  • Chromebooks for every 1-2 students.
  • Sumo ring.
  • Access to google classroom for all students (hereafter referred to as the classroom).
  • At least 1 extra Ev3 brick for every other team. For instance if you have four teams, you will want to have a minimum of 2 spare bricks. Ideally though, you will have a spare brick for each team.

 

Advanced Ev3 Robotics Lesson Overview

What follows is a lesson designed to be given over the course of 10 weeks to students in grade 6. These students have already had 10 weeks of basic Ev3 robotics in grade 5, but may not have had that lesson in a year or more. My first challenge here is to refresh my students on the basics. I do this by assigning the same challenge they had as a final for their previous course (Robot Sumo). I add the twist that they must design their own robot. In the previous challenge all of the robots were the same.

The greater lesson here is colored by the fact that my grade 6 students do an Egg Drop Challenge. The design challenge for my class focuses on the Engineering Concept of a fair test. Typically with egg drop challenges some neutral adult actually drops each design off of some high structure (like a roof). Part of the lesson is a discussion about what makes a fair test, and how to develop one.

Invariably we come to the idea that only if all of the egg containers are dropped in exactly the same manner is the test fair. If you refer to my previous post you will note that one of our Big Ideas in computing is that computers are good a repetition & precision. It is a really good day when one of my Sixth Graders points this out unprompted. The design challenge that will take up the majority of the quarter will be to develop a robotic device that will drop the egg container in the exact same manner every time. The device will start out simple, but will become more complex with each iteration.

Note:

This lesson assumes both you, and your students have a high level of comfort with Lego Mindstorms Ev3. Basic concepts are covered in posts here & here. In addition, you & your students should also be comfortable with control structures such as loops, waits, and switches. A high level understanding of Ev3 Sensor blocks, bluetooth operations, and math operations is also necessary for you as the instructor.

Skills Refresher Robot Sumo

For the skills refresher I give the students the following specifications regarding their Sumo Fighting robot.

  • 2 Large Motors are required for movement.
  • 1 Color Sensor is required to stay inside of the ring.
  • At least 1 arm is required that will try to flip your opponent.
  • Any arm is controlled by the Ultrasonic Sensor.

 

Students are asked to research at least 2 web sites that have information on how to build Ev3 robots. Once they have done the research most teams seem to have an idea about how to start. If a given team seems stumped I have them refer to their classmates posts in the classroom. If they are still stumped I demonstrate a couple of ways to attach large motors to Ev3 bricks as this seems to be the barrier for most students that keeps them from beginning to build.

Once they have constructed their robots we walk through a basic program with two parallel loops. One loop has the robot drive up to a black line, back up, turn, and move forward. The second loop triggers the robotic arm when an enemy robot comes within range. However, I don’t necessarily give students these programs. Instead we talk through psudocode for each loop, and I show them how to run parallel loops.

Advanced Ev3 Robotics Lesson Expansion

Once the building starts I bring up two additional Engineering & Computer Science concepts that I teach in my program. The first is documentation, and the second is collaboration. For documentation I am specifically referring to work in progress photos. I managed to get my hands on 5 Android Tablets from a project I worked on with Tufts University (similar to these), which I have my students use as digital engineering notebooks. They are asked to take pictures of their builds in progress, and post them to the classroom along with a description of their picture. I sometimes even ask them to take pictures of each step of a build, and post them. I also ask them to take photographs of their screens when they are writing their programs, and make sure each block of code is commented using the comment feature in the Ev3 software.

For collaboration I have students comment on at least two of their classmates posts in the classroom per week. This seems like a small thing, but what actually happens is that student become used to this, and begin working together. They will even use their classmates work as a resource when a particular aspect of a challenge has them stumped.

Note:

You will need to teach your students what you would like in terms of both Work In Progress (WIP) photos, and comments. These are both new skills to most students, and need to be taught continuously.

Design Challenge Sequence

The main idea with this series of challenges is to create a solution, and improve it in a specific way with each iteration. When students run into programming concepts they are unfamiliar with, encourage them to try and figure it out independently. The idea is that they find their own solution either by asking a classmate or finding an answer through internet research. As a last resort you can use guided self discovery, but don’t give them answers.

Iterations 1 & 2

The first project in this series is to have students design and program a device that will drop a box (I use a tissue box) when the program is run. I don’t give my students any hardware requirements for this solution, just the main Ev3 brick. This initial solution will work, is uncomplicated, and typically just involves running a motor (or motors) just long enough to “drop” the box. The device is then reset manually for the next drop. In most cases no new programming concepts are required, but more complex solutions may require the use of the unregulated motor block. The second iteration should have the device reset itself when run.

Iteration 3

In this iteration, students will likely run into some new concepts in programming. They should improve their device so that it uses the touch sensor or multiple touch sensors. They can use either one or two touch sensors. The program runs continuously, and is controlled by the touch sensor(s). By some combination of press and release the device will activate & reset.

Iteration 4

In this iteration students use the brick buttons to control the devices activate & reset functions. It is certainly okay to swap iteration 3 & 4, but I do it in this order to build towards the next iteration. It so happens that there is a fantastic video on youtube that will assist your students in the next iteration, but uses brick buttons.

Iteration 5

Here is where the difficulty of this set of challenges ramps up significantly. As they are asked to do something they have never done before in the Ev3 environment. Up until now all of the iterations are just variations on concepts they would have mastered the previous year. Now however, students are asked to connect two Ev3 bricks via bluetooth. One brick will act as the controller for the second brick. Students will set up a bluetooth connection between 2 bricks, they will use the messaging feature to make their device activate & reset using the brick buttons. Here & Here are some excellent tutorials that will help your students solve this problem. I make them search for the solution, but you may want to give it to them.

Iterations 6, 7, & 8

For the remaining iterations of the Egg Drop project students will change the manner of control among their connected bricks. First they will use a single touch sensor on their control brick, then they will use two touch sensors, and finally they will use a large motor. All of the information they need to accomplish these tasks can be found on the internet, or inferred from previous work on this problem set. As mentioned above, most of these concepts are pretty high level.

Final Assessment (WIP)

Ideally my whole class would get through the first 8 iterations of this problem set, and would have the opportunity to perform the assessment I am about to describe.  Unfortunately, it is a lot to expect in a 10 week program. In my classroom, none of my students has gotten further than Iteration  8 above. I hope to one day get here, I hope you can as well. In any case, always plan for more than you think you can accomplish.

The assessment here is to have your students design both a robotic car, and a remote controller for that car. They are then asked to perform a series of runs through a maze, and are competing for the best time. You could add complication by having items for them to pick up, and drop off if you so choose. If you wanted to get really challenging you could set up a system whereby students use some manner of video feed to see their robot while controlling it.

What I am aiming for with this assessment if for student to realize that controller design is as important, or even more important than the design of the car. I will happily do another, more robust post on just this assessment if I can manage to get my students far enough to do it several times. If you manage to get your students to this point please let me know how it works out.

I hope this post (long as it is) has been helpful to your teaching practice. If it has, please feel free to share it with whomever you’d like. If you’d like to be updated when new posts come out by email, please sign up for our mailing list. Thanks for your time.

Categories
Computer Science Learning Tools Lesson Programming SuperTopic Update

Creating Coding Lessons – Grades 6-8: Part 1

Creating Coding Lessons

As a STEM teacher I am continually taking workshops and courses to get better at my job. As a public school teacher I am always on the lookout for those who are willing to donate equipment to my program. While on a follow-up call for a coding PD I took last summer, I was asked what I would need in order to implement coding fully into my curriculum.  My answer was simple: “I need 9 new Android tablets”. I was half joking, but you miss 100% of the shots you don’t take. When the response was: “Okay we should be able to get those to you in January”. I realized I needed to begin Creating Coding Lessons for my grade 8 students, and the idea for this post was born.

If you don’t have access to an Android device for each student (or each pair if you are using pair programming), check out this post for your coding lesson needs.

Creating Coding Lessons Overview

I am Creating Coding Lessons for a 10 week course for 14 grade 8 students. We use tablets and cellular phones running the Android operating system to run our programs. We use Chromebooks, and the App Inventor 2 IDE to create them. This course focuses on teaching Computer Science fundamentals, and specific event based programming skills. Class time is spent on performance tasks, and all assessments are performance based. Any lecture is video based. For the final assessment, students will create an app that solves a real world problem. Successful completion of this task will show mastery of the content at Depth Of Knowledge (DOK) 4. The process for Creating Coding Lessons for this unit will be outlined over several posts.

Standards framework for Computer Science Education in primary grades is evolving. No clear system with fully developed standards, and practices seems to be available. There is a generally accepted framework I will be working from which can be found here, but this will be my interpretation of the general concepts they recommend.

Unlike most of my curriculum posts, I will not initially be focused on a full STEM implementation here. Eventually, Math and Science will be integrated, but to start I will be focusing on Technology and Engineering. Designing a full fledged STEM unit is a daunting task, but designing a focused unit to be altered later is significantly less problematic. In this case I am under a time crunch to start teaching this unit so, Creating Coding Lessons for it needs to happen quickly. Remember that much like the design tasks we use to teach engineering, we can iterate on our lessons. In fact, none of my lessons are exactly as I originally envisioned them.

Creating Coding Lessons Practices

K12cs.org outlines 7 core practices of Computer Science that students in all grade bands should work towards mastering. Within the greater context of the coding unit each performance task should be working towards fostering the following.

  1. Fostering an Inclusive Computing Culture: This practice refers to the idea that computing is for everyone, and that perspectives from various genders, ethnicities, and abilities have positive effects on computing.
  2. Collaborating around Computing: This practice encourages individual students to become used to working collaboratively on teams, and in pairs.
  3. Recognizing and Defining Computational Problems: This practice fosters the ability to recognize, and define problems that can be solved with computing.
  4. Developing and Using Abstractions: The concept of abstraction revolves around helping students develop the ability to generalize portions of a solution for reuse in other computational problems.
  5. Creating Computational Artifacts: This practice involves having students actually create things as opposed to just learn about them conceptually. Students should create programs, videos, robotics systems, and apps as part of their study.
  6. Testing and Refining Computational Artifacts: This practice refers to having students iterate on their creations.
  7. Communicating About Computing: At its core this practice asks students to not only create computational artifacts and iterate on them, but also to be able to describe what their creation does as well as how it does it.

 

Creating Coding Lesson Concepts

In addition to the core practices as outlined by k12cs.org there are 8 Computer Science core concepts. These concepts are broken out by grade band level. This set of lessons is focused on the 6-8 grade band. Additionally, this set lessons is designed to teach students these concepts to a level they should know by the time they graduate grade 8. The descriptions for these concepts, and what students need to know by the end of grade 8 are found here.

  • Algorithms
  • Variables
  • Control
  • Modularity
  • Program Development
  • Culture
  • Social Interactions
  • Safety, Law, and Ethics

 

First Lesson

As evidenced  by the Concepts & Practices above I am teaching far more than simply app development.  I will use the App Inventor 2 IDE & Google sites for the lesson, but I am teaching a core of Computer Science. As it turns out, I just had my first class in this lesson today. After the normal opening day items such as how to get permission to use the rest room, and safety concerns we really only had enough time to get set up with the various systems that will be in play for this class.

Google Classroom

For this course I will use Google Classroom primarily to assign homework, and give students direction for independent research. I use Google Classroom, because I am at a Google school, I’m certain that there are other tools available, but I find it very easy to use, and it’s available to me. Since I am working towards teaching Computer Science through App Development the first thing I did was assign the students a set research questions, and a video.

The questions are: What is a Computer? What are it’s features? What is Computer Science?

My students are asked to research the above questions, and provide answers on their individual Google site. I made the questions broad based intentionally to see what the kids come up with. This question set serves the primary purpose of getting students used to research. The discussions that will follow will work to refine their understanding of computer science. By the end of this course they should have a better understanding of the above concepts.

The video I assigned is here and just covers the basics of the App Inventor 2 IDE, as well as walking learners through creating their first app. We will actually create the app in class, but I wanted them familiar with the video before we work through it. I gave my students the option of attempting the project by themselves as well. Allowing students this opportunity will take advantage of their excitement, and allow them additional autonomy if they would like it.

Google Sites

In addition to software development, web site design is another foundational Computer Science skill. Teaching some simple design, with a simple tool will make later exploration more efficient. I also want to have a way for my students to effectively collaborate with one another in their work, and to archive their work. With all of this in mind, having them create a digital portfolio is the right call. Again, I work at a Google School so I have access to this tool, but others are certainly out there. Additionally, for younger students I really like Google Sites. It is easy to use, and incredibly easy to control who sees the content. One of the things I am trying to teach my students is the concept of safe computing, and one of the foundations of safe computing is limiting access.

Some things to keep in mind here are that students will need to “share” their site with you in for for you to view/edit it. You should also have them set their privacy settings to “anyone with the link”. This allows them to share it more easily while keeping the  circle of viewers small. I ask my students to set up an about me page, a links page, and an assignments page to start. When they complete an assigned question they put the link to their answer in the comments to the question in google classroom. Later I will have them collaborate using their sites by posting links to them in the google classroom.

 

Talk to me App

The first App we will develop is a simple piece of software that is designed to use the text to talk feature of the Android Operating System. This feature allows a user to input a string of text, and the computer will “read” that string out loud through the device’s speakers. In this first iteration of the App, students will program in a graphical button on the device’s screen which when tapped will “speak” a pre-determined statement. The tutorial for this app can be found here.

This particular App isn’t overly complex. It requires changes to the code itself in order to change the message spoken, and only has one component. However, if we look a bit deeper it teaches a good deal more than we think. First, this tutorial, and the app created with it gives students a solid overview of how App Inventor 2 works, which will serve them well later on. Second, it shows all of the computing practices outlined above. Thirdly, it opens up conversations about algorithms, program development, and modularity. You can also add important general coding good practices such as annotation. Finally, this program allows you to ease students in to how you will be assessing, and grading them.

Grading & Assessment

If you’ve already had a look at my Ev3 Robotics Lesson 2 post you are familiar with my method for assessing a computer program. Assuming you haven’t gotten to that post yet, I assess computer programs by breaking them down into three measurable components. They are Accuracy, Efficiency, and Annotation. Accuracy refers to whether the program functions predictably. Efficiency deals with how many commands are used, and Annotation refers to what manner of commentary a program contains. In the case of this first lesson, as we will be creating the program in class by following a tutorial so using this method gets a bit tricky.

For most of my classes I use a class participation rubric, which would apply here. When students have advanced sufficiently for assessment I create a separate rubric for the assessment. For an example of what that may look like, click the link in the first sentence of this section.

Part 1 Conclusion

This first article is about getting set up to teach using  variety of tools. Though the first lesson is discussed here, it is not done in detail.  I will do a series of reflection posts about how the lesson is going, and discuss further lessons in greater detail. If you found this article helpful, please share it wherever you think it will do the most good. Stay tuned for more in this series.

 

 

Categories
3D Printing Learning Tools Resources SuperTopic Update

Makerbot Tips & Tricks: Get the Best From Your Tech

makerbot tips

 

As I’ve mentioned in other posts, I didn’t come to STEM education via the traditional routes. I mention this now because the post that follows is the culmination of three years of working with the Makerbot Replicator 5th Generation in my classroom. It showed up in a box, fully assembled, without anything resembling a manual. It had a quick start guide. That’s it. As such I really could have used a post covering Makerbot Tips. Aren’t you lucky that I’m here to give you some tips and tricks to make this incredibly expensive, powerful, learning tool work well for you, and your students.

Note: What follows is not a recommendation to purchase the described technology. Further, this is not an offer to support this technology. Before purchasing any 3D printer, or other technology please be certain that you have researched the various options available, and have a plan for how you will use it. The following post assumes you either already have a Makerbot Replicator 5th Generation, and are looking for some tips & tricks to help you along, or you are already buying one. This is what makes my life easier as an educator that uses this tech in my classroom. Your mileage may vary.

Makerbot Tips of Utmost Importance

Before your Makerbot even ships you need to begin maximizing your chances for successfully implementing this solution in your classroom. The best way to do that is to budget for the service contract. If you don’t purchase a service contract for this device, the support you get via the warranty is awful. However, the support you get with the service contract is pretty great. Roll the dice if you want to, but I would never buy one of these (or any other $3,000 piece of equipment) without the service contract.

Additionally, make sure you order an extra Smart Extruder to have on hand. In my experience you will go through 1-4 extruders per year, and as a teacher you can’t afford downtime. With a spare you can just swap out the part, and get back to printing. A note about the service contract though is that they only cover three extruders per year so, count on paying for any after that.

Makerbot Tips for Care & Feeding

Your Makerbot will treat you well if you treat it well. If you do not pay attention to its basic needs it will die on you when you need it most. Job One for a long, and happy life with your Makerbot is understanding the leveling feature. On the Makerbot Printer you will see a menu of options. In order to level your build plate you will select “Settings” followed by “Calibration” followed by “Assisted Leveling” (this is how it is found as of this writing). In order to have the greatest number of successful prints you need to run this feature any time you change filament, remove the build plate, or have a filament jam. Once you select Assisted Leveling you just need to follow the on screen prompts.

Job Two is proper maintenance of your build plate tape. This is a largish section of painter’s tape that covers the glass of your build plate. Any time this “tape” gets ripped up you need to change it. Some people will tell you to use any old painters tape you can get at the hardware store. That’s probably fine, but I use the stuff Makerbot sells. It isn’t that expensive, and seems easier to use as there is no cutting involved. However you keep the build plate covered, you want to make sure that there are no bumps, bubbles, or wrinkles in the tape. Remember that this device has tolerances of down to .1 MM, it doesn’t take much of a wrinkle to mess things up.

Makerbot Tips for Getting the Most Life Out of Your Extruder

There are a couple of good tips for minimizing the number of extruders you use each year. In my classroom the 3D printer runs every day for most of the year. After a good deal of experimentation I am only going through 2-3 extuders per year which equals out to about $450.00 per year when my service contract runs out. The main way to keep the number of extruders you need per year to a minimum is to limit the number of times the hot end heats up, and cools down. The way to achieve this is to use the “add” feature in the Makerbot Desktop software, and to print small.

The add feature, found in the file menu or by clicking Ctrl+Shift+O allows you to add multiple files to a given print. What this means in practice is that instead of printing one file at a time, you can print multiple files and maximize your available build plate space. The fewer times you need begin a print, the fewer times your hot end will heat up and cool down which will make it last longer.

Printing small, involves what types of projects you have your students work on. Ideally, whatever project you have them doing will allow you to reasonably print a whole class worth of designs in one run. In my case I focus on Model Rocket Nose Cones I have also used snowflakes, and Christmas ornaments. In any of those cases I have been able to fit 10-20 unique designs on my build plate. It makes for a longer print, but minimizes heating and cooling.

Makerbot Tips for Limiting Filament Costs

One of the biggest frustrations most people have about the Makerbot is that you have to use their proprietary filament. It so happens that the filament they sell is on the expensive side, and the options are really limited to various colors of PLA. As such, it helps to limit how much you use. My first year teaching with my Makerbot I went through 16 rolls of Filament. After figuring out a trick or two that dropped down to 4.

First, I started printing hollow. This is achieved by changing the settings in the Makerbot Desktop software to having an infill of 0%. Depending on the specific project you may or may not be able to do this, but in my case it works great. Second, I started printing in low resolution. Low resolution makes the layers .3MM as opposed to .1mm. Fewer layers means less filament. Again, you need to figure out what will work for your particular lesson here, but with my model rocket nose cones this works perfectly. Third, don’t print things that require supports. In my experience using supports on the Makerbot is a recipe for trouble anyway, but no supports equals less filament as well.

Fin

I love 3D printing as a learning tool, but I have found that it can be frustrating for many teachers. It also causes me massive amounts of stress when I am giving a workshop on 3D printing, and I find a printer in disrepair. It bums me out because I know that once it starts breaking down it is destined for a storage closet, and that is a crying shame. Like any technology 3D printers take some getting used to, but once you understand it intricacies it is really hassle free.

Thanks for reading my Makerbot Tips article. If you found this article helpful please spread it around. If you want to read more about specific lesson on 3D printing poke around a bit on the rest of the site. Finally, if you would like to receive regular updates when we post a new article (and noting else from us) sign up below. Thanks again for reading.

 

 

 

 

 

Categories
Ev3 Robots Learning Tools Lesson Programming SuperTopic Update

Ev3 Robotics Lesson for Superstars: #2 – Turning

 

ev3 robotics lesson

Just like any other lesson, once students have mastered the basic form it is time to add complication. This Ev3 Robotics Lesson is designed to pick up where the last one left off. If you haven’t  checked out Lesson 1, you should do so before starting this one. Go ahead, we’ll wait. Great, glad you’re back! Here we expand on the basics of moving forward, and backwards given distances, and add the turning complication. To begin with we will be turning 90 degrees in either direction with the Lava Challenge. Once we have mastered the 90 degree turn we can move on to turns of different angles. We are also continuing our exploration of the big ideas that computers execute commands in a sequence, and that computers are precise. Additionally, we are introducing annotation, and discussing how to grade the computer programs written by our students.

New Concepts

In this Ev3 Robotics Lesson, the programs students are responsible for become significantly more complex. Unlike in Lesson 1, students begin to see that there is a logical flow to a computer program. They begin to understand that computer programs execute in a particular sequence, and as programs become more complex they are harder to trouble shoot. With this in mind we need to teach a  few new concepts, and adjust our grading. I haven’t touched on grading yet because programs thus far haven’t really been complex enough for robust grading. Now it needs to be addressed, as do the concepts of annotation, and efficiency.

Grading

How does one fairly grade a computer program? Each teacher is certainly entitled to their own opinion, but for me there are three factors that are gradable. Below you will find an assessment rubric I use in my classroom, but first a general discussion. The three gradable factors are:

Functionality

The program needs to meet the criteria of the assignment and work predictably. For a teacher, the most important concept to wrap your head around here is that there are levels of working. It isn’t binary (see what I did there). Instead, when you are designing your own rubric, break the assignment down into parts. If a student has mastered some of those parts, but not others grade accordingly.

Annotation

Annotation in this case refers to computer programs containing commentary within the program that describe various features of the program. In the real world more than one person or group will work on a program over the course of its life. As such, it is important to have descriptions of what each structure inside of a program is actually doing. This is one of those things that is less important within the programs our students are writing, but that we should develop in them as a habit of quality work. Ev3 does this pretty well. If you don’t know how to do it, check out this video.

Efficiency

In the real world this used to be a much bigger deal than it is today, but its still important. Real computer programs should use as few computing resources as possible while still functioning correctly. In the case of an Ev3 program this concept is translated into using the fewest blocks possible to accomplish a given goal. Oftentimes students will want to use additional commands in order to do less precise measurements. This should be discouraged. Remember that one of our Big Ideas is that computers/robots are precise. Make your students be as efficient as possible with their design solutions.

 

Ev3 Robotics Lesson Lava Challenge (90 Degree Turn)

Additional Materials
  • Masking Tape
  • Measuring Tape/Ruler
Board Set Up

You need to create 2 squares made of masking tape on your testing surface as shown below:

img_1741

Depending on the level of challenge you want to provide for your students you can change the size of the tape squares. The greater the difference in sizes the easier the challenge will be.

Challenge

Students will create a program for their robot using the move tank block that allows it to navigate around the inner square while staying within the outer square. Both the inside of the inner square, and the outside of the outer square are Lava. If the robot drives in the Lava it is destroyed. Students need to use the tape measure/ruler to determine how many rotations are needed for their move forward blocks.

Differentiation

This challenge is likely to be incredibly frustrating for your students. This will be the first time they are putting more than two commands together, and figuring out turning can be challenging. There are however, some ways to can alter the difficulty of this challenge to make it easier.

The first way to really scaffold this Ev3 Robotics Lesson is to create the program yourself, but set the number of rotations to “0” on each block. Doing so allows students some challenge in fixing the rotations, but gives them a baseline of what to do. In my classroom I project my program on my Promethean Board for a 1 or 2 days until my students get the hang of what they should be doing. This challenge will take up to five days for them to complete. Once the majority appear to have the hang of it I stop posting it.

You can also have students use the motors themselves to figure out the speed/direction settings in the move tank block. To do so, simply plug the robot in to the laptop and selecting the port view feature in the Ev3 software. You can find the port view feature near the download icon. Next you just need to set the motors to readout to rotations, and zero them out. Finally you simply turn the wheels manually, and record the numbers you see when you get the turn correct.

You can also make this challenge easier or harder by where you place the robot to begin as well as which direction the robot faces. It is significantly easier to complete this challenge if the robot begins by facing a direction parallel to one of the sides of the middle square. Finaly, I add difficulty to this Ev3 Robotics Lesson by making students program the robot so it stops exactly where it started.

Ev3 Robotics Lesson Orchard Challenge (Turns other then 90 Degrees)

Additional Materials
  • Masking Tape
  • Measuring Tape/Ruler
Board Set Up

You need to create 3 diagonal lines, and a box of masking tape on your testing surface as shown below:

img_1742

Challenge

In this challenge students will program their robot to start in the box, and navigate around the tape without running over it. Once the robot has navigated the “orchard” it will return to the box. This challenge is designed to simulate a real world task performed by a robot. Oftentimes commercial fruit crops need to be sprayed with insecticide or some other chemical in order to produce to their fullest potential. This job is performed by a self driving robotic tractor in some cases.

One very nice thing about this challenge is how simple it is to modify complication. I have asked my students to add robotic arm control to this program to simulate a sprayer, and have allowed students to use only one side for the sprayer for example. However you differentiate this lesson in your classroom is fine, I use this challenge as the performance assessment for the first two lessons in my robotics unit. Below you will see the rubric I use for grading.

 

movement-assessment-rubric-orchard-challenge

Final Note

The standards for this lesson are discussed in Lesson 1, as are some general how to teach Ev3 Programming items. I hope you have found this Ev3 Robotics Lesson useful. If you have, please share this article with everyone you know. To keep current on everything we do here, please sign up for notifications below.

 

 

Categories
Computer Science Learning Tools Lesson Programming Quick STEM Resources STEM Drop-In SuperTopic Update

Coding Lesson : Intro To Block Based Programming

coding lesson computer

I love Lego Mindstorms Ev3 for teaching a coding lesson, but the price to get started is tough to swallow. Enough kits to teach a coding lesson to a class of  16  is 4, which translates to over $1,550.00. Even after getting the kits, you still need 4 computers (not Chromebooks) to run the software. The unfortunate financial reality of Public Education in America is that we are constantly in a state of near starvation. As such, it is not easy to get funds for unproven curricular tools. Stories from other teachers about STEM with robots is not enough to get you the money you need. Typically you need to demonstrate some major benefit in order to get extra money. How then, do you prove that learning coding has a positive impact on your students without breaking your budget?

Block Based Programming

Block based programming means that instead of typing in words with specific formatting to create a program, programmers use graphical blocks. Presenting programming in this manner will allow you to reach younger students. Traditional coding such as that found in the Python Programming Language is often difficult for younger students to process. After all, they may not fully grasp common English yet. Older learners can benefit from spending some time with a block based language as well.

Block based systems allow learners to discover programming structures, and the basics of how computer programs are constructed more easily. Generally speaking the only difference between computer programming languages are the semantic structures used to translate human commands into something a computer can understand. As such, once a student has a grasp of one language (even a block based one) other languages get much easier to grasp.

Coding Lesson with Block Based Programming

Unlike many of my other posts this will not be an actual lesson plan, but rather a guide to a few online lesson plans that I like in particular. I am a firm believer in “why fix it it it ain’t broke”. In this case, since there are so many top quality lessons out there for free I’m not going to reinvent the wheel. I have many, many, other things to occupy myself with.

www.Code.org

I list this one first because it is my personal go to for my students. Any time a students ask about any kind of coding lesson, any time a student seems to want more coding, or any time I need to give them a break from the normal curriculum this is where I go. There are dozens of online coding lessons that can introduce coding, and even allow a deeper delve for students. I typically suggest my students start with the Hour of Code. There are several different content options, and different options based on grade level. After they complete the hour long coding lesson, they can expand into other areas of the site. Code.org is so engaging for the kids that I often use it as a reward. Honestly, if you use nothing else from any of my posts use this.

www.Scratch.MIT.edu

I have used Scratch a little bit myself. I have also only used Scratch in my classroom for students who want independent study. In my class it has been used exclusively on the Raspberry Pi, not the web based version. On the Pi it is amazing. It really allows kids to do physical programming. All of that said, I have spoken with teachers that have used the web version, and its fantastic. One nice thing about Scratch is that it allows kids to be exceptionally creative with their programming.

When I used it I had the kids working through this book, they loved it. Additionally, there are plenty of tutorials on the Scratch Help site, and elsewhere. A great way you could use Scratch is to combine it with the Makey Makey. I haven’t had the opportunity to do so, but I can see its value. If I do use it this way, I can see students making both a game, and a controller for the game they make.

App Inventor 2 (The Best Tool EVER!)

App Inventor 2 is a web based IDE (Integrated Development Environment) for the Android operating system. This block based programming resource will allow your students to create, share, and even sell apps on for any Android device. I don’t know what you are teaching now, but if what you teach touches computers, or computer programming in any way your most common question is “How do I make games/apps?”. Our students hear stories all the time about how kids have made millions making apps. The stories are true, and with the right idea our students can do the same.

In addition to the rare case of a student actually making money by creating an app, this tool is phenomenal for any kind of performance based assessment. In PBA we are working towards having our students create something meaningful, and useful to show mastery of a topic. What better way to do that in a concrete manner than by creating an app that solves a real world problem? Another phenomenal feature is the focus on event driven programming. Being able to teach the concept of EDP alone is well worth using this tool.

There are a huge number of tutorials available for free online dealing with all aspects of AI 2. This is one that is free, and focused on app creation.  I certainly recommend running yourself through any tutorials you use, but you don’t need to be an expert to teach with this tool. The only challenge is that you need some Android devices to use. I solved this problem by purchasing some cheap Android tablets for my classroom, but you don’t need to buy them. Your students may have these devices already, or you may be able to get them donated.

Conclusion

Though it takes some work and creativity, it is absolutely possible to teach coding on a budget. In your classroom you can wrap coding into some other lesson, use coding to help teach a lesson, or teach it as a lesson itself. No matter how you decide to add coding to a STEM curriculum you really need to add it. In my experience few subjects foster higher levels of engagement, teach problem solving more effectively, or develop grit like a coding lesson.

I hope you’ve found this article helpful. If you have, and would like to be updated whenever we post a new article please sign up for notifications below. If you think you know anyone who would benefit from this knowledge, please share the article on your various social media platforms.

Categories
3D Printing Learning Tools Lesson Rockets SuperTopic Update

Lesson: SuperStar Rocketry 2 – 3D Printing Lesson

3D Printing Lesson: Model Rocket Nose Cone Design

When I first started teaching I got offered an incredible budget to set up my STEM program. The only caveat was that I buy a 3D printer with some of the money. The challenge however, was that I’d never heard 3D printing before, let alone how to design a 3D Printing Lesson. What I needed was something simple, engaging, adaptable, and quick to learn. I did internet research, and though there are some good resources now, at the time there really weren’t. Instead I designed my own curriculum for grade 7 & 8. After twelve or so refinements I came up with the 3D Printing Lesson you’re about to read.

The below 3D Printing Lesson assumes that you already know how to use your 3D printer, and are familiar with model rocketry in general. As of this posting, I don’t have a recommendation for a 3D printer. That said, Make Magazine does a great annual article evaluating what’s out there. Depending on which make & model printer you buy, training may be available from the manufacturer. Alternatively there are lots of how to articles, and videos online. One day I hope to buy a kit, and make my own printer. When/if that happens I will document the process. If you are unfamiliar with Model Rocketry though, I have good news. Why you should use model rocketry is covered here, and Lesson 1 in the series is here. This lesson will refer back to lesson 1 often so, give it a read if you haven’t already.

In case you haven’t read my other Lesson posts it is worth noting that my style of writing a lesson plan isn’t what you may be used to. I write out the plan in a manner that is meaningful to me as a teacher. The first thing I typically need to know is what materials I need, followed by what to teach, followed by how to teach it, and finally the applicable standards. Here we go!

3D Printing Lesson: Introduction.

In this lesson students design several model rocket nose cones based on established shapes using computer aided design software. Students print out each nose cone, equip a model rocket with it, launch the rocket, and record the data. The same rocket body is used for each launch to protect the integrity of the data. This lesson is designed for use in grades 7 or 8, and takes approximately 1 academic quarter the way I teach it.

I have my students build rockets from scratch, but if you use kits this lesson could take less time. This lesson could also take less time if you give students measurements to work with. I ask my students to develop size specs on their own. This lesson could certainly be used as a performance task for performance based assessment. I also teach this lesson along with Rocketry Lesson 1 as opposed to separating them in order to save time.

3D Printing Lesson: Materials.

  • 3D Printer & Supplies.
  • Rocketry Supplies (see Lesson 1).
  • A computer (Chromebooks work fine), or tablet for each student.

 

3D Printing Lesson: What to Teach.

  • Computer Aided Design.
  • 3D printing.
  • The Iterative Design Process.
  • The Use of Data in Design Decisions.
  • Everything from Rocketry Lesson 1.

 

3D Printing Lesson: How to Teach

If you are using kits, begin with constructing the kits. If you are doing a from scratch build to a certain set of instructions like I do, you can start with that. In either case, while construction is happening, I go over the Parts of a Model rocket from lesson 1, but as I am having my students design the nose cone for the model rocket, I go into greater detail on the nose cone as shown below.

nose-cone-exploded

I apologize for the quality of the drawing, clearly I teach Tech Ed not Art. Since we are creating the nose cones we need to have a shared vocabulary when discussing a given design. When we get to the actual design phase I will give my students some specifications for measurements, but for now they just need to know what the various parts are called.

Baseline Launch or CAD?

Once you have a shared vocabulary established, and rockets assembled you can go one of two ways. You could put some standard nose cones on the rockets, have a launch, and record data for a baseline.  I take the other tack,  which is to begin with the use of the Computer Aided Design tool. Great News! If you use the tool I use (which is free, web based, and functions well on Chrombooks) called TinkerCad, it comes with a whole suite of fantastic tutorials that guide your students through the various aspects of the software. For this 3D printing lesson you can allow students time in class to work through the tutorials, assign it as homework, or do a combination of the two.

I have my students do the tutorials in Basics, Accessories, Gadgets, and Miniatures. One word of caution here, if your students are under the age of 13 setting up an account takes parental approval. The site uses a question about birth date to verify age when an account is set up, but doesn’t do any other type verification.

Design

Once you & your students have established a shared vocabulary, learned how to use CAD software, and have built rockets you can begin to design nose cones. Prior to beginning the actual design of their first nose cone I ask my students to research model rocket nose cone shapes. I am trying to get them to find conical, ogive, parabolic, and blunt shapes. At this point I ask them to make a prediction about which nose cone will give the rocket the highest altitude. Once they have done their research I give my students a set of digital calipers, and have them get the interior diameter of their rocket air-frame. The should also measure the exterior diameter. Their first assignment is to design a Conical Nose Cone.

Nose Cone Design Requirements
  • The nose cone must fit snugly into the rocket air-frame.
  • The nose cone must have a shock cord mount.
  • The height of the cone is twice the exterior diameter of the body tube (2D).
  • The total height of the full nose cone including body tube mount is three times the exterior diameter (3D).
  • The shoulder will measure 2 millimeters.

 

In all likelihood, your students will need to go through 2-3 iterations just to get the nose cone to fit inside the air-frame correctly, and meet the specifications. Here is one I designed for the project. See the Pro Tips below to learn from my experience.

Design & Printing Pro Tips:
  • Print the shock cord mount beside the cone & superglue it onto the bottom.
  • Make an indent in the bottom of the cone for the shock cord mount to sit in.
  • In your 3D printing Software, there should be an add feature to add several additional objects to your print, use it.
    • If you follow this pro tip assign students a number or letter to have as a unique identifier such as the “X” on my example nose cone.
  • Make certain to have your students name the files in a descriptive way.
    • For instance, if the class is grade 7 quarter 1, the student’s name is John Smith, and the nose cone is conical I have them name the file: G7Q1ConicalNCJS.
  • Teach students how to use the Align Tool in TinkerCad so you can have everything centered.
  • Students will save themselves heartache if they fully understand the Ruler Tool in TinkerCad.
  • For each design after the first they copy (Ctrl+C) & paste (Ctrl+V) their body tube, and shock cord mount assembly from the successful conical design. Those two features don;t change from cone to cone.
  • When printing nose cones set the initial fill setting to 0.00%. This gives you a very light nose cone.
    • You can expand this lesson by messing with the fill, and seeing how much the weight of the nose cone changes with the fill percentage. You can further expand it by seeing how much nose cone weight effects altitude.

 

Next Steps

Once you’ve got conical nose cones that fit snugly into the students rockets you’re ready to move on. Schedule a launch, launch rockets, collect data, and go over that data as a class. I go into more detail on both data collection, and expansions in Lesson 1. After the first launch move to a different nose cone shape, and do as many launches as you can. The more launches your class does, the more interesting your data will be. For comparison, the most launches I have achieved within a quarter was 3.

Standards:

  • All Standards covered in lesson 1.
  • Future Tech from 3D printing.
  • CAD introduction from TinkerCad.
  • Additional math standards based on the calculations you have your students perform.

 

Expansion, Assessment, & Conclusion

I have expanded this lesson by complicating the nose cones in various ways. One good way to complicate the design of a nose cone includes eliminating the square shoulder in favor of a parabolic shoulder. One way to complicate the data, and analysis of a launch is to include meteorological data. The data can be further complicated by adding speed, and velocity calculations. This lesson really is almost infinitely expandable with a bit of creativity.

To assess this unit I have posed questions relating to a fictional rocket launch in short answer form. If you are working towards performance based assessment, you can give your students a design challenge with a goal of highest, or lowest altitude as an assessment.

Have found this lesson useful? If so, please use the social media to share it with as many teachers as you know. If you would like to keep up to date with new STEM lessons, research, learning tools, and book reviews please sign up for updates.