Questions tagged [best-practice]

Use this tag for questions about best practices in the classroom. This is an educational term, and does not refer to best practices in coding style. (Instead, see the coding-conventions tag). Some questions with this tag ask for advice on comparing the advisability of two or more possible teaching practices, for example.

Filter by
Sorted by
Tagged with
0 votes
1 answer
93 views

what is a good way to learn new framework / language?

I have been learning rust since 2021. I followed different courses from YouTube and others. Then I shifted towards books to learn rust and right now after two years I am doing same thing and learning ...
Hamza's user avatar
  • 117
33 votes
11 answers
11k views

Problems with students stuck in web-browser and what to do about it

My students have been trained to use tools in the web-browser: cloud word-processors, web-sites, etc. When I try to teach programming on the computer: using programs that are on the local computer. ...
ctrl-alt-delor's user avatar
8 votes
2 answers
292 views

Teaching with changing dependencies

I'm a mathematics professor tasked with teaching a computer graphics course in the spring. I decided to teach something very project-based using Javascript and THREE.js, based on my familiarity and ...
TomKern's user avatar
  • 171
1 vote
0 answers
62 views

Who is the best software engineering teacher you know? what makes them the best? [closed]

Looking to find some of the best teachers in software engineering; not the best computer scientists or software engineers per se. But those who train and develop software engineers that and build ...
Jorjani's user avatar
  • 111
4 votes
1 answer
206 views

How many of "The Seven Laws of Teaching" are still relevant for teaching computer science today?

Wikipedia shows that in 1886 John Milton Gregory outlined his "The Seven Laws of Teaching"; asserting that a teacher should: Know thoroughly and familiarly the lesson you wish to teach; ...
user 726941's user avatar
7 votes
1 answer
108 views

REPL environment for teacher assignments

As a teacher on an IT high school, I am teaching the basics of C#, JavaScript and PHP (in different years of their study of course) For about 3 years I had been happily using the repl.it classrooms. ...
Jan Koupil's user avatar
4 votes
3 answers
191 views

How do you teach when your students have wildly different backgrounds?

I'm going to do a course for my entire University, this means students that are in the last year and also in the first year. What can I do so what I teach isn't too hard to understand for the first ...
Vencovsky's user avatar
  • 141
6 votes
3 answers
123 views

Is less than comparison more natural than greater than comparison? [closed]

I was teach on mathematics that on real line small numbers are on left and big numbers are on right. Therefore, I think the comparison 0<1 is more natural than 1>0, and in general, x less than y is ...
Visitor's user avatar
  • 61
6 votes
5 answers
663 views

Students' confusion over C structure members and structure variables

Before I ask my question, some background may be apposite to provide context. Please indulge me. At the institute I teach, our Intro to Programming. It involves a coverage of C language. We believe C ...
Mallam Awal's user avatar
3 votes
3 answers
109 views

How do you distinguish jargon from normal language in explaining a concept?

For example, words like "method," "puts," and "object" do not have as much linguistic markedness as "comparator," "eff-gets," and even "function" (because context alone at the very least conjures up ...
JohnnyApplesauce's user avatar
3 votes
2 answers
133 views

How can we determine which students are a good fit for an educational program?

tl;dr: How should I be thinking about assessing technical experience for admission into an educational program? At my day job, I help run a program that invites undergraduate students to get "real ...
Kevin Workman's user avatar
5 votes
7 answers
572 views

Python IDE for beginners

With a bunch of colleagues we will start learning Python together. I'm a programmer, but I'm new to python. Most of my colleagues know some VBA, but are generally new to programming. What IDE do you ...
vacip's user avatar
  • 1,398
3 votes
2 answers
167 views

Recent Graduate becomes a teacher

In less than one month I'll be graduating from the equivalent of high school (I'm in Latvia). In my high school you also get a certificate based on which career you choose eg. a Chef or a Computer ...
Relinkvent's user avatar
0 votes
5 answers
291 views

Through what basic programming language can beginners easily get the concept of programming? [duplicate]

I have some students that are from medical background and have no concept of programming. So, which language I should teach to them to make their basic concept of programming perfect?
hina munir's user avatar
4 votes
9 answers
2k views

Why some students think that programming is difficult and hard to learn, how I convince my students that programming is not difficult as they think?

Some students think that programming courses are tough and hard. I personally know some teachers who say to their students that programming is not their cup of tea. How much percent this thing is true ...
Marosh Fatima's user avatar
9 votes
8 answers
390 views

Exercise or example to reinforce idea of functions?

I have a group of students with a very shaky understanding of functions and their purpose (encapsulation, reuse, modularization). The assignments I give them require them to write simple functions ...
Louis B.'s user avatar
  • 296
11 votes
4 answers
400 views

Are programming contests beneficial to students?

Background: I’m not entirely a CS educator, but I did run into a debate on whether programming contests are good for students. A lot of people around me have fun in programming contests. Usually, ...
tonychow0929's user avatar
42 votes
15 answers
17k views

What advantages do students who learn how to touch type have?

Would a student's overall CS education benefit by having such a skill, and if so why not make it a required prerequisite? An editor notes that there are three (at least) different ideas here that ...
user 726941's user avatar
7 votes
3 answers
3k views

What are the pedagogical methods for teaching programming?

This is a very objective question. I want to know what are the methods for teaching programing? I'll provide a parallel example to make this clearer in case this causes any confusion. I have ...
Thobias Cerqueira's user avatar
7 votes
3 answers
234 views

Research into the use of symbol names, in programming, and how it affects learning

When programming we need to name things. I have been using turtle graphics in python, and was wondering if the names, chosen, for the commands, were making it more difficult for my pupils. Some of ...
ctrl-alt-delor's user avatar
6 votes
2 answers
264 views

Should I correct mistakes in student presentations?

In my graduate programming languages course, each student is required to learn a different novel programming language during the course of the semester and give a presentation on it to the class at ...
Ellen Spertus's user avatar
123 votes
16 answers
38k views

Is it better to lie to students or to be pedantic when teaching Intro CS?

When teaching Intro CS in Java, I sometimes tell students things that are not entirely true, such as that, unlike abstract classes, interfaces cannot contain any code. (For those of you unfamiliar ...
Ellen Spertus's user avatar
3 votes
2 answers
147 views

Process Scheduling is not "Process" Scheduling - Should I disclose it to students?

I have been teaching Operating Systems basics in a class and after Processes, Child Processes and Threads, we have managed to move to "Process Scheduling" Now, ironically, as we know that it is not ...
Failed Scientist's user avatar
30 votes
11 answers
8k views

How can we teach good naming practice for students learning Java?

In writing software we name things. In Java we name classes, interfaces, methods, variables, etc. How can we teach both the importance and the skill of choosing good names? What teaching practices ...
Buffy's user avatar
  • 35.8k
11 votes
6 answers
11k views

What should be included in student portfolios for CS?

Should CS students be keeping a portfolio, and if so, what should it look like? What would you, as a potential employer or college recruiter, like to see in/on a potential employee or student ...
Java Jive's user avatar
  • 2,349
5 votes
5 answers
902 views

How Effective Is "Rosetta Code" as a Teaching Technique?

When working to teach developers Scheme (which is functional programming) I'll often show them analogous examples in C#. The ...
Onorio Catenacci's user avatar
8 votes
6 answers
11k views

What are the advantages and disadvantages of cumulative vs percentage grading?

There are many ways to grade students. One is to provide a fixed body of student work and then give a percentage grade for assignments, with the overall grade representing the percentage achieved of ...
Buffy's user avatar
  • 35.8k
26 votes
8 answers
8k views

How do you deal with Lone Rangers in group projects?

We all have them - students who want to write all the code themselves, who don't want to be part of a group project. They have poor social skills, or they don't know anyone else in the class, or they ...
Java Jive's user avatar
  • 2,349
83 votes
11 answers
18k views

Is it bad to force my students not to return early?

A fellow teacher of mine is teaching "basic algorithms" course in high school, and we have quite conflicting opinions when it comes to returning from functions. ...
Yotam Salmon's user avatar
  • 1,205
142 votes
13 answers
85k views

Should I teach that 1 kB = 1024 bytes or 1000 bytes?

Which conversion should I teach to my undergrad students? That 1 kB is 1024 bytes (binary) as everyone learned back in the nineties or the recent industry-led "friendly" conversion that says that 1 kB ...
alves's user avatar
  • 1,513
2 votes
2 answers
127 views

How to help students comprehend the HTML document flow?

I'm teaching a student how to create website front ends. This student comes from a SNAP/Scratch/AppLab type environment where they learned basic programming concepts, but to position visual elements ...
thesecretmaster's user avatar
  • 4,785
5 votes
4 answers
463 views

What are the tradeoffs of allowing students to submit test corrections?

Do you allow students to submit "test corrections"? Meaning, do you allow them to take the questions they missed on a test, denote the correct answer in some way, and give them partial or full credit ...
Java Jive's user avatar
  • 2,349
66 votes
9 answers
29k views

How do you teach something when you don't know it yourself?

Teachers are sometimes called upon to teach something with which they have no experience. Don't laugh. Doctoral level education is often exactly like this. The student's advisor may have no background ...
Buffy's user avatar
  • 35.8k
2 votes
4 answers
398 views

Is it possible to teach selection (`if`) before variables

I was looking at the CAS progression pathways, and noticed that in column 2 (Programming and development), it has selection (if) before variables. https://...
ctrl-alt-delor's user avatar
3 votes
2 answers
82 views

Reducing bias, from lesson that improves, as taught to a number of classes

I have been giving my class help-sheets, recently. This have lead them to me more independent. They are also filling in a S.N.O.T form, this is a form where they tick off tasks, to show if they did it ...
ctrl-alt-delor's user avatar
13 votes
12 answers
4k views

What should be included in a best practices C course?

At our University, we have in the first semester a very difficult C Introductory Course, that consists of presenting a shortened version of the language specification: What are for/while loops, if ...
Git's user avatar
  • 153
4 votes
1 answer
568 views

Computer Engineering student with holes in my knowledge (I want to improve)

I'm a computer engineering student. I definitely have my strengths and weaknesses like any other student. And, I would like to improve upon areas that I'm either struggling in or completely missed in ...
Farah's user avatar
  • 43
8 votes
4 answers
489 views

Making Technical Presentations Safe for Novices

One useful skill in CS is presentation of technical material to peers and/or superiors. Novices, however, often come to computing as introverts for whom public speaking is difficult and even ...
Buffy's user avatar
  • 35.8k
5 votes
3 answers
210 views

Pick-me-up exercises for after-lunch brain death

If you ever had a class right after lunch break, you know what this question is about. (Student's stomachs full, computers murmuring, room half-lit, teacher droning about something - I don't blame ...
vacip's user avatar
  • 1,398
9 votes
2 answers
162 views

Is it a good idea to have students see syntax much earlier than they write it themselves?

I was wondering if there was any research on whether or not students generally perform better later if they're introduced to the syntax they'll be learning far earlier than they actually use it. As ...
Jamesernator's user avatar
4 votes
2 answers
207 views

Best Practices for introductory teaching

Literature states that there are particularly difficult issues with introducing programming, and that many of the issues are still not well understood. But some results indicate that these are some ...
user avatar
7 votes
2 answers
319 views

Good, Motivating Examples for Algorithmic Complexity

I was recently reading a really good article on this topic, and I realize that it could be a very good added value for students to understand better and appreciate (and eventually put in practice) all ...
Kenny Barrera's user avatar
2 votes
2 answers
144 views

What part does formal Ethics training play in your curriculum?

What is your current practice of teaching ethics to students, both institutionally and individually? Note that the teaching of ethical standards (not just lists of rules) has at least two elements: ...
Buffy's user avatar
  • 35.8k
6 votes
4 answers
717 views

Should students be taught to be first and foremost: scientists or mathematicians?

It's undeniable that Computer Science is a mixture of disciplines including science (the scientific method, some physics needed to truly understand how computers work at all levels, testing ...
Eujinks's user avatar
  • 163
19 votes
10 answers
4k views

What ethical practices do students (as potential software engineers) need to be trained in?

The kinds of things that people with technical training can do have societal impacts, both for good and evil. Programmers are building the future. One future nightmare is Skynet. Many problems in ...
Buffy's user avatar
  • 35.8k
22 votes
9 answers
5k views

The Tao of TeaChing (Making Mistakes in Front of the Class)

How do you handle it when you make a mistake while teaching? I used to get confused, stammer, blush, etc. But now I just pause and notice that something is incorrect, then correct it if I can figure ...
user avatar
40 votes
20 answers
12k views

Is it important to teach pointers in a first course using Java?

Many instructors teaching with Java started their education using earlier languages such as C or C++ in which pointers are essential. Pointers, however, are not a Java concept, though those same ...
Buffy's user avatar
  • 35.8k
41 votes
14 answers
7k views

Teaching the humble for loop

So, in C-style languages, the for loop has a funny little syntax: for (int i = 0; i < 100; i++) { // do something } If ...
Ben I.'s user avatar
  • 32.8k
11 votes
4 answers
936 views

Who should own the intellectual property on a program developed in classes?

I am aware of some teachers that own or collaborate with IT companies, so sometimes the assignments that they provide, to the students, are supposed to solve a specific problem that the company may ...
Nuno Gil Fonseca's user avatar
7 votes
3 answers
129 views

Working on practical projects as a team - good or bad?

We are trying to implement a course where students develop web apps using PHP+AgileUI (no HTML, JavaScript or CSS) with a strong emphasis on "object oriented" approach, designing business logic and ...
romaninsh's user avatar
  • 229