All Questions
653 questions
2
votes
2answers
113 views
Beginner Javascript course - recommended books
I was asked to teach Javascript to total beginners. Since it would most likely be free of charge, I would rather not spend time making my own slides and material. I would follow a book or some other ...
4
votes
8answers
267 views
Explaining why arrays are important for statisticians
I am a computer engineer, and I’m teaching computer sciences one hour per week to a student who failed her second-year university degree. She needed some help to have a better understanding of ...
1
vote
2answers
183 views
What is the difference between computer science and computer engineering in brief
For a beginner who wants to walk down the path of programming and developing and etc. What is a brief explanation of the differences of the two?
To clarify, Computer science is CS while software or ...
3
votes
2answers
105 views
Project based on game 2048
I'm thinking about an assignment based around the game 2048. This would be towards the end of a first programming course at the university level and assumes the students have been introduced to at ...
4
votes
7answers
152 views
Mental Model of Type Conformance/Subtype Polymorphism
I'm finding that my CS2 students really struggle with the notions of type conformance and subtype polymorphism in Java. Say we have the following:
...
6
votes
2answers
162 views
First project in my second year data structures intro
I am currently teaching the pretty much normal second year Data Structures and Algorithms course. In this course there are four programming projects, with the first project completed the automated ...
4
votes
2answers
60 views
Need a good “streaming” software for coding tutorials/workshops
I'm doing a coding workshop and I can't seem to find a good way to stream a part of my screen (or some windows in my screen) into a projector. I only need the code editor and terminal/command prompt ...
2
votes
1answer
60 views
Example for Introduction to Generics in Java
Any good example classes for introducing generics in Java? I'm introducing this in the context of implementing ArrayList, but I don't want my first example to be <...
7
votes
4answers
173 views
How would you explain what is a race condition to a five years old
TL;DR: How would you explain what is a race condition to a five years old. Which analogy to concepts he is familiar with would you use?
Long version:
I am not a teacher but a software engineer. ...
1
vote
2answers
48 views
Data and Database modelling books
I need a suggestion for books for my University. I have a subject called "Data and database modeling" but we lack of books. Our professor gave as barely understandable scripts. This is an official ...
3
votes
2answers
66 views
Software to produce an interactive presentation?
I'm tasked with leading a couple information sessions (totaling 4 hours) to teach non-programmers how to get started in Python. The audience is software testers employed in a technology department. I ...
3
votes
4answers
97 views
How to gamify the learning management system
I have been reading up on how to shift more of my teaching resources on to the Learning Management System, to make it easier to access from other locations even though I mostly teach in a classroom. ...
7
votes
4answers
168 views
Python function has access to global variables, and doesn't need passed arguments
When teaching functions in Python I get a little annoyed that the code below actually prints out the greeting. I know the preferred way would be to pass in the name, but, for students, if it works ...
8
votes
2answers
130 views
Methods for engaging students when teaching unpopular or unfashionable topics
The world is full of computing technologies that have been put to productive use but may be unpopular or unfashionable with students today due to their complexity, their lack of support, limited ...
4
votes
2answers
64 views
Lab ideas for set theory
The title of the question actually says almost everything there is to say. I cannot think of any programming labs whatsoever that would naturally flow from set theory.
My students will be coding in ...
11
votes
1answer
1k views
What belongs in a low-math undergraduate AI elective besides ML?
The primarily undergraduate institution at which I teach does not have an Artificial Intelligence course. We do have classes on Data Analysis and Machine Learning:
DATA 150: Introduction to Data ...
7
votes
3answers
226 views
Will I Regret Using Python As A Teaching Language When I Later Need to Teach Static Typing?
Given the prevalence of Python as a first language at many universities I think using Python as a language to teach new software developers is a good approach. But there's one thing that concerns me. ...
2
votes
0answers
69 views
How to give students practice with streaming computation?
I'm teaching a theory-focused randomized algorithms course at the undergraduate level, and have included a section on streaming algorithms. It would be great to get students to implement these ...
4
votes
0answers
57 views
Small to medium scale exercises about Haskell's higher abstractions
Short version: Where can I find highly varying, small or medium-sized exercises and examples on the use, identification and instance declaration of Haskell's abstractions such as applicatives, monads, ...
12
votes
5answers
180 views
How to convince students that self learning is an important skill?
I am teaching beginner programmers with a variety of backgrounds. Towards the end of the course, we encourage more independent and team based learning rather than lecture based learning. This is ...
4
votes
2answers
118 views
Book recommendation: basic, broad and solid overview for advanced learners
I did a PhD in software engineering, now working in financial IT. I had a proper education in algorithms, data structures, operating systems, networks, software etc. and worked as a tutor for Java, ...
169
votes
27answers
32k views
Why do we count starting from zero?
In computer science, we usually count starting from 0. Is there any effective way to explain why, to new programmers who ask why?
I've read a bunch of different sources that list several reasons for ...
6
votes
4answers
302 views
Study Advice for a CS Student
It's my second year in my computer science degree, 2nd semester.
I feel like I am still not good enough and not satisfied with myself! I still can't program and when I have a task I can't think. I ...
7
votes
1answer
382 views
How Can I Apply Spaced Repetition To Teaching CS?
Lately I've been seeing quite a bit on the importance of spaced repetition in retention of skills. My job is to level up a group of C# developers and I'm trying to figure out how to apply the idea of ...
5
votes
3answers
195 views
Short foundational lessons for 7-8 year olds
I have an opportunity to run four classes of about half an hour, with 7 to 8 year olds (my sons age). This is part of a program called STEM professionals in schools. All I am there to do really is ...
10
votes
8answers
451 views
Why are pointers a key topic in a CS curriculum and oft cited as something people don't get?
I was reading a Q&A on Meta Software Engineering and saw some people make reference to pointers, as well as this SE. I see several Q&A here relating to pointers as well.
I don't understand ...
4
votes
1answer
180 views
What can be the causes of the difference in student performance?
The box-plot represents the number of programming tasks performed correctly in 30 minutes.These tasks are designed to learn basic CS concepts: sequences, loops, conditional ...
Each box represents an ...
6
votes
4answers
1k views
How is computer science (and education) different today than some decades ago?
My sister, her husband and I (the older generation) were sitting at the dinner table with their two children (the younger generation), discussing computer science.
One of the members of the older ...
4
votes
2answers
66 views
How to retain technical information about new features?
I'm going through an online training on Apex and Salesforce (trailhead), and I don't know how to retain all this info. I'm memorizing it, and trying to build stuff, but I'm still not retaining it.... ...
2
votes
2answers
105 views
Where one can learn CS in very rigorous way? [closed]
I'm interested both mathematics and computer science. I like math because one can formalize it rigorously and I have seen that many things can be defined by sets. Is there similar thing in computer ...
9
votes
5answers
175 views
In self-teaching, how can I move from basic tutorials to more complex work?
I'm currently learning SQL (specifically T-SQL) and focusing on searching databases, not building/editing them. This is pretty much the first language I'm learning, so I don't have a CS background to ...
8
votes
2answers
482 views
Teacher Community - Using CS50 for AP
I will be teaching AP Computer Science Principals this fall for the first time. I've decided to use the CS50 curriculum. (partially due to Curriculum choice for AP Computer Science Principles)
Is ...
7
votes
2answers
94 views
Best way to pass on the problem solving experience
In my workplace, my team (working both on a ASP.Net MVC ecommerce and a C++ client) had a recent addition of two young members. One is a fresh graduate and the other worked as PHP programmer for some ...
6
votes
6answers
205 views
Advice for becoming more confident in programming
I apologize if this isn't the right kind of forum to ask this question, but I've been feeling helpless.
I'm in my 4th year in college as a CS major. However, I am horrible at programming (relative to ...
4
votes
3answers
1k views
What are the “intangibles” that distinguish one university's CS program from another?
Both Carnegie Mellon University (CMU) and Yale are top schools. (I attended both; one as an undergraduate, one as a graduate student, neither as a CS major). Their curricula aren't all that different. ...
6
votes
4answers
117 views
How important is it that I know all of the words for the technical terms when mentoring in my second language?
Every year for the past few years, I've been mentoring at Scratch Day, helping the kids with their projects during the course of the workshops. The problem? This takes place in my second language, ...
10
votes
4answers
217 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, ...
3
votes
4answers
138 views
Easy to use database for HS students
I'm a web design teacher and I teach 9th graders (14 year olds) in the US.
Currently the 9th grade curriculum in my HS programme teaches students CSS, HTML and JavaScript. Students can create buttons,...
4
votes
4answers
112 views
How it's better to teach web development - videos or articles?
I want to create a web development blog that I will teach there variety of subjects that usually people not talking about it, or there it not so much articles/tutorials about it.
The title is ...
4
votes
4answers
231 views
Students frequently distracted by peers and games
I have a class which is in a computer lab (each student has a computer). These are standard Windows computers. The computer lab is organized into rows, with students on either side of a row facing ...
5
votes
3answers
205 views
Would it be beneficial to learn computer science (or other computer related stuff) from 5-6 year old material?
There are so many resources on the internet for self-learning computer science, such as the MIT OCW courses. However, some of those courses are around 5 to 6 years old taught in 2012 or 2013.
There ...
44
votes
15answers
15k 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 ...
1
vote
1answer
112 views
Looking for puzzle/game programmes, so students can write solvers
I was playing some logic puzzles, and was thinking that they would be good for students to program solvers, that can be plugged in to the game logic.
Some of the quantities to make them useful, in ...
2
votes
1answer
76 views
How to structure a Predictive Keyboard project similar to GBoard
Many are now familiar with GBoard, the Google / Android predictive Keyboard. I don't actually know how it works. Obviously it must gather usage data on the device where it is being used, but it ...
7
votes
6answers
332 views
Courage to Attack Difficult Questions
In a recent blog post Eugene Wallingford says that when teaching:
I frequently pose a problem for them to work on for a few minutes before we look at a solution, or several candidates, as a group. ...
2
votes
2answers
100 views
Becoming a master from a newbie at Computer Science and Electronics [closed]
I want to learn about Computers and Electronics and presently don't hold any kind of degree in the same. My urge to learn is entirely driven by my interest and curiosity for these subjects. I will be ...
0
votes
1answer
84 views
Textbook on Optimization
Can anyone suggest some good textbooks on optimization for MSc level? Books with more concrete applications and examples on real problems would be more appreciated.
I am more interested in algorithm ...
2
votes
3answers
116 views
How can Chatbots be useful in CS education?
I am reading this book published ten years ago and it says that chatbots can be very useful in helping students with course details and to break the ice. I am not familiar with chatbots, so I have ...
19
votes
4answers
397 views
Difficulty of algorithms homework problems
I have a question for educators, from the perspective of a TA. I'm happy to post my question elsewhere if it's not appropriate for this site.
Homework problems in algorithms classes often involve ...
5
votes
4answers
212 views
The confusing Unix permissions terminology
The GNU manpage (what you'll find on a Linux system) – but pretty much any Unix manpage – of chown (the command for changing the owning user and owning group in ...