Q&A session (Jing & Benjamin)
Questions by Jing on Wechat – 6/6/18
1. How do you determine what level class your child should take?
Benjamin – The answer will be different for different kinds of students, depending on their age. Some of the students attend class in-person, some attend class online; some have longer homework, some have almost no homework.
I’ll go through and explain the different levels, starting with fundamentals (for 8-12 year olds), then intermediate, and lastly advanced. So, we’ll have different answers for the different kinds of students.
Fundamental level students are usually between the ages of 8 and 12. Our FUN1 level are for students with no prior programming experience. FUN2 are for students who’ve done some programming; we can do an evaluation and see if you’re familiar with concepts such as Variables, Boolean logic, Looping, Coordinates, and etc. Then, we’ll place you into a higher level accordingly.
We typically evaluate through the free trial process. If students are chosen for FUN1, FUN2, or FUN3, there are also variants within those. For example, there’s FUN1a, FUN1b, FUN2a, FUN2b, FUN3a, FUN3b, and then there are the 1-week-long classes and the workshops. If you’re selecting a class during the school year in the Fall or Spring, we usually recommend that students start at either FUN1a, FUN2a, or FUN3a. If you’re taking classes during the summer, we usually recommend either a 1-week-long camp-style course, or a workshop. These are all options for younger students.
2. How are KTBYTE’s courses set up?
Benjamin – For students with no experience, they’re going to start with either FUN1 or FUN2, which use the drag and drop programming languages. FUN1 right now is taught in Scratch, and FUN2 is taught in Java Blocks. These classes don’t require a lot of typing ability, but they may require the student to have some kind of programming background.
During these classes, the students are going to make a bunch of projects. Most of the fundamentals classes are project-oriented, meaning we’ll only very rarely give these students an assignment that has a problem-set. What they’ll be doing instead is stuff like modifying a video game, or making their own new video game, or making some kind of modification to a visualization, and so on.
Around CS00a is where the classes switch to be more problem-set oriented. While students will still do some projects, more of the class time is spent on how to solve algorithmic or data structure based input output matching problems. These are problems that would show up on the USACO (USA Computing Olympiad). The reason why we make the switch here is because it’s just at the point where the students are able to write programs that are 100 or more lines on their own. This means they don’t need to spend class time to do that. If they want to make a big project, they can usually do that on their own.
We usually have 1 instructor for classes up to 8 students. For classes with more than 8 students, we assign a second or third instructor depending on how many students there are. If it’s a 1-Week-Long Class, we usually overbook a bunch of teaching assistants (TAs). So if there are 12 students, we’ll oftentimes have 3 TAs. We want these advanced students, who have already done the USA Computing Olympiad or some other competitions, to help the students. The TAs will help the students debug their code quickly, and help them follow along during class. The students build very cool projects on their own, but a TA can help spot out issues in their code very quickly, so the students don’t feel discouraged.
3. Does KTBYTE have homework?
Benjamin – The 1-Week-Long classes and workshops in the Summer are shorter than our regular full semester classes. Because 1-week-long classes have enough time during the day to work on their projects they don’t have homework. Workshops are short project-based classes so they are more relaxed. During the full semester, we give students more homework and evaluate them at multiple points of the semester. We expect more cumulative learning during the school year. That’s one stylistic difference.
Homework for the project-oriented fundamentals classes is usually open-ended. They’re going to be told by the instructor something like: “Work on making the ball move from right to left instead of left to right,” or “Make it bounce here,” and so on. This homework is assigned through the web browser. They can do it on their own time, and if they have any question they can go to office hours, which is 7:30PM to 9:30PM every day. In office hours, they can ask questions online one-on-one with teaching assistants to get personalized help.
How do you communicate with the instructors after class?
Benjamin – Because most classes are live online classes, communication is really important. For contact after classes, students can log in to office hours and talk to a teaching assistant. Students can also send emails to the staff by emailing: firstname.lastname@example.org. There is also a chatbox on the website that students and parents can use. If a student misses class or needs help, the Instructors will provide students with class recordings, audio lecture review materials, or a specific task to go over with the Office Hour TAs.
Another way to talk to instructors are parent-teacher conferences during the school year. Usually you attend these by clicking an email link, which means it’s really important to read your email. I know not everyone checks their email every day, but try to get a habit of reading what we send you. If you’re confused, you can always respond to our emails. Of course, if you take an in-person class, you can obviously talk to the teachers in our office. We actually encourage the parents to talk to the teachers. The instructors have time before and after class, and during the school year, our staff is available between the hours of 2:30 – 4:30PM EST, so you can always drop in if you want to do an in-person visit.
4. How many kids are in each KTBYTE class?
Benjamin – The fundamentals and intermediate classes usually have 1 to 8 students. The workshop classes are smaller, with 1 to 4 students. The advanced classes vary. For example, the machine learning classes I teach are usually pretty small with typically 4 students. I have a class of 2 students this semester and that’s CS84, CS85. CS02s classes are little bit bigger. And then the USACO classes also vary a lot.
Class size also varies by time of the week. So, if you live on the east coast and you can attend afternoon and/or evening classes, then we suggest you take a weekday classes during the Fall or the Spring. Those tend to be smaller. Weekend classes like Friday night, Saturday night, Sunday; those are our largest classes where we have to assign additional staff to help out.
5. What is KTBYTE’s teaching style?
Benjamin – We employ a very hands-on, applied learning style of teaching where we have students do projects or problem sets with instructor guidance.
KTBYTE Free Learning Resources:
Students can go through a lot of our CS00 and CS01 material for free through the Coder (on our website) and through the textbook. While these free lessons don’t have live instructor guidance, the coder has pre-recorded lessons (so it’s not just passive reading). They can work through the lessons and listen to these one-on-one. This is on par with any other online self-guided class. The problems we give students aren’t just multiple-choice. For the problems in the coder, which are graded by an automated computer, students can get immediate feedback on whether it’s correct or incorrect.
KTBYTE Full Semester Learning:
For our full-semester students, we actually hand-grade every single assignment so students get personalized feedback and partial credit. We do this instead of automated grading because the computer will tell you whether you’re right or wrong, but the computer won’t tell you how close to right you are. So, when you look at the progress report and you see a score like 87%, that means a human actually reviewed them for partial credit responses. The instructors will usually also write some kind of note next to every single problem. This means that if students go back to old problem sets and open them in the coder (not in the progress report), you can see actually personalized notes like “You need to work on this,” “You need to fix this,” and “These are the things you can improve,” as part of your work.
It’s a very applied form of learning where student’s aren’t just trying to memorize some kind of easy to remember trait or patterns. They really need to know how to write code. It’s just like language fluency; it’s not good enough to just read. We give them lots of way to practice, to export, and to compute our values themselves and that’s really important.
KTBYTE Teaching Styles:
Class styles vary depending on the instructor teaching it. All our instructors try to put a little of their personality into it – so for example, Alan likes to make a lot of references to different kinds of current day events, different kind of like video games, and also he has some upbringing in Physics so he likes to involve physics in his class. When I teach my classes I try to do a lot of relationships between that and multimedia. Sometimes it’s social media, ssometimes it’s images and videos, sometimes it’s audio, and that’s a lot of the projects that I like to use. And Andrew will often-times take projects as far from just general software engineering; so for example, he developed the personal assistant application which is the project that is taught in CS01B. You can talk with the instructors if you’re curious what kinds of projects we do in class, but we’re really proud of all the different kinds of projects we do in every single class.
6. What classes are offered online?
- Smaller classes of 1 to 4 students.
- Flexible Scheduling
- Semester Classes:
- Fall and Spring Semester (18 Weekly Sessions)
- Summer Evening Classes:
- 3.5 Weeks, 5 days, intensive (Intermediate & Advanced)
- Week-Longs (FUN1w, FUN2w, FUN3w, CS00w) in Lexington (and Newton):
- 5 days, 9AM to 3PM.
- Pros: It’s a lot of time; they get to make friends and build a lot of projects, and as a result, it’s more comprehensive.
- Cons: Not as comprehensive as full semester classes.
- (Fundamentals) Semester Classes:
- Fall and Spring Semester
What kind of setup/equipment do students need for online courses?
Benjamin – As far as setup/equipment, one of the nice things about us is that we spend an enormous amount of time on software engineering. We probably spend as much time on software engineering as we do on actually teaching the classes. This means that students can use our tools to learn. The virtual machine we have allows them to run a Linux environment, run all sorts of programs and interact with us in class. The website allows them to build projects, export them, share them and also listen to audio lectures.
All of this means that from a technology standpoint, if you’re doing an in-person class then you just need a browser like Chrome or Firefox. If you’re doing it from home, then you just need a browser like Chrome or Firefox plus a webcam and headset to be able to hear us and see us, and for us to see and hear you. Probably the most important thing about taking a class from home is actually just sound quality, being in a quiet area and being able to not have any background noise when you’re working with us.
7. How does KTByte evaluate a child’s progress?
Benjamin – One way that we let parents keep track of how their children are doing is through our progress reports.
As previously mentioned, we hand-grade all the assignments, so the progress report is a fairly accurate assessment of how well your kid is doing in different areas. When you make an account and login to the parent profile, you can see the progress report for each of the students attached to your account. If you have the link to these progress reports, which you can get through the parent portal or which a student can share with you, you don’t even need to be logged in to see them. So if you want to open them on different devices without logging in, you can email yourself the link and do so. Because we made the reports so accessible, we encourage you to look at them regularly during the full semester. During the summer, if your child is doing a self-guided class, they can practice and level up on some material and it’ll allow you to see how they’re doing.
Another method of progress evaluation that we do is ‘recommendations‘. Every one of our instructors watches the students progress and have a sense of whether or not the student understands or doesn’t understand the material, and whether they’re ready for the next level, so they’ll have specific recommendations for each students. We don’t store these recommendations through the web interface though; they’re something you have to talk to us about. I think it’s really important that you get feedback from the instructors and talk to them, and so I encourage you to do that during the summer and during the fall semester.
8. Does KTBYTE have summer camps?
Benjamin – We do have a summer camp-style course (aka. Week-Longs). They’re a great opportunity for people to get interested and exposed to Computer Science. We offer four levels and you can just take them mostly one after the other, or based off the instructor recommendation.
The classes are set up so that usually they’re presenting a project towards the end. If you’re in the CS00w class, you will present your projects to an audience for an awards ceremony. If you’re doing the lower level week-long, you just present it in your groups. For either of these classes, students are learning to code and also practicing communication skills, which is really important. But, that does mean we sacrifice any kind of homework, self-guided, or low-level practice. So, if you’re looking for that kind of rigorous practice, we encourage you to look at the full semester rather than at the summer Week-Longs.
One of the other formats we offer for the summer are Summer Evening Classes. This is actually one of our more popular offerings, but it’s a little bit misunderstood so I want to clarify it. We usually recommend students who are at the lower levels to take the summer week-longs over the summer evening classes. This is because the summer evening classes are the same thing as our full-semester classes, but they’re in 18 days during the summer. That means you have 18 weeks worth of material squished into a month: all the homework, all the projects in one month. This is more for students who want to get into a competition, to skip a level, or to not take any classes in the fall, and are willing to put the work in. If you want to achieve a lot and you’re willing to spend about 3 hours a day outside of class every day working on computer science, you can learn a lot during a summer evening class and that’s a great format for you. But for a lot of students who just want to have fun and get exposure to computer science, we wouldn’t recommend it. It’s just a ton of work, and it’s only for people who have that specific scheduling need.
Benjamin – So that’s all the questions answered. If anyone needs more in-depth information or has additional questions, feel free email us at: email@example.com. We actually particularly welcome questions that are specific to your child, or your child’s situation. So for example, something like “My kid is 11 years old and they might want to do this competition but they only have this much coding experience and they’re not sure if they’re interested, what would you recommend?” I’d be really happy to answer those questions and I think that would give something that not only helps you as a parent, but also helps other parents. A lot of parents are in similar situations, because even though their kids might not be in the exact same classes as yours, they’re in a similar path, and so I encourage you to ask questions that are specific to a group of students or your own child.