General questions regarding learning computer science disciplines and CS education

learn more… | top users | synonyms

35
votes
16answers
4k views

How to fool the “try some test cases” heuristic: Algorithms that appear correct, but are actually incorrect

To try to test whether an algorithm for some problem is correct, the usual starting point is to try running the algorithm by hand on a number of simple test cases -- try it on a few example problem ...
2
votes
5answers
141 views

How can I prepare for CS in university

How can I prepare for an introductory CS college course? I am currently in Grade 12 and next year I will be studying Computer Science at a university in South Africa (syllabus is here). However CS ...
4
votes
2answers
108 views

what would be the drawbacks of lecturing two programming languages simultaneously?

One colleage came with the idea/comment that it would be useful to lecture two programming languages, eg. Java and Scheme, at the same time while lecturing an Introduction to Programming course aimed ...
2
votes
5answers
156 views

Machine Learning and Neural Networks for High School Students

I hope this question is appropriate for this forum. In this summer I am giving a 3-day workshop on machine learning and neural networks for advanced and very enthusiastic high school students which ...
1
vote
1answer
52 views

Video lectures on type systems

For my job, I need to pick up a working understanding of the implementation of type systems (in particular, how to write typing rules based on a design document). I've been given a copy of Types and ...
1
vote
1answer
69 views

Example algorithms for first class in programming for EE students [closed]

I am professor of Electrical Engineering who will teach, for my first time, a class to first-year EE students about programming. This will be their first contact in an academic setting with ...
6
votes
7answers
279 views

Language for teaching basic programming

I'm interesting in teaching programming to middle school students. I'd like a programming language with the following criteria: Simple - pared down to the absolute minimum needed to support ...
6
votes
2answers
306 views

Mathematics Courses for Computer Scientists [closed]

I am looking for standard math courses (Calculus 1, Calculus 2, Linear Algebra, etc.) that were developed specifically for computer scientists, and use computer-science examples for motivation. For ...
7
votes
1answer
79 views

Ideas for CS-related challenge for teams of high school students?

I am helping design a CS-related activity for a Let's Talk Science competition, which promotes STEM amongst high school students. In the competition, teams of six students will move from station to ...
6
votes
2answers
153 views

If $\log xy=\log x+\log y$ then why multiplication is harder than addition?

Someone told me that the $\log$ function was introduced to make the calculation easier. If we have to calculate $xy$, we can calculate instead $\log x+\log y$ since $\log xy=\log x+\log y$. How this ...
24
votes
9answers
2k views

Explaining the difference between computer science and computer literacy [closed]

What is a good metaphor or example to explain to an English major the difference between classical computer science and "being good with using MS-Windows" computer science computer programming ...
3
votes
2answers
157 views

Appropriate minor to go with CS major [closed]

I thought this would be the best place for a question like this. Anyway, I was wondering what minor would go well with a Computer Science degree. I was considering a minor in math but I am not ...
1
vote
1answer
70 views

What type of math classes are good to take for computer science majors? [closed]

I am an undergraduate computer science student at Cal Poly (SLO) and I have some flexibility in which math courses I can take, but I don't know which math courses would be most beneficial. I have ...
5
votes
2answers
220 views

The Absolute Minimum Every Software Developer Absolutely, Positively Must Know about Computer Science (No Excuses!) [closed]

Yes, I borrowed the title form a famous joelonsoftware post for my question because I didn't exactly know how to ask this. I'm a professional programmer for a few years now and although I followed ...
7
votes
1answer
125 views

Tips for teaching using Live Coding

I am involved in a first year programming and algorithms course. In a recent lecture, I decided to present the material using live coding, which essentially meant that I sit behind the keyboard and ...
0
votes
1answer
229 views

How to approach NFA design questions intuitively? [closed]

I did see a lot of nice and informative questions, articles on inter-net and on StackOverflow itself, of-course. But I found all the questions or articles following a specific rule or a pattern to ...
4
votes
0answers
66 views

Resources for teaching computer science with R

I am a professor at a university of applied sciences and will teach computer science next semester. My question is if you know resources which use the R project as the basis, i.e. not using it ...
3
votes
1answer
80 views

computer science in the movies as an educational angle

recently there have been a few questions on teaching CS in both cs.se & tcs.se and there are many high-rated related questions on the two sites on the topic. thinking over the latest one made me ...
5
votes
1answer
98 views

Undergrad resources for identifying regular languages with Myhill-Nerode matrices

I am taking an undergraduate CS Theory course and the material on finite automata and regular languages is being taught in a non-traditional manner. Instead of using regular expressions, the closure ...
10
votes
2answers
325 views

Teaching NP-completeness - Turing reductions vs Karp reductions

I'm interested in the question of how best to teach NP-completeness to computer science majors. In particular, should we teach it using Karp reductions or using Turing reductions? I feel that the ...
3
votes
0answers
115 views

Explaining eye tracking to 9-10 year olds

I was recently asked to explain eye tracking to 4th grade students and talk to them about its applications. What is eye tracking? An eye tracker is a device that uses projection patterns and ...
6
votes
1answer
150 views

Universal Hashing in Practice

A family $H$ of hash functions $h: U \rightarrow \{0,\ldots,M-1\}$ is universal if $$\forall x,y \in U, x \neq y \Rightarrow \Pr_{h \in H}[h(x) = h(y)] \leq \frac{1}{M}$$ You can find more about ...
2
votes
2answers
108 views

Is CS more like software and CE more like hardware?

At my university, a degree is "Computer Science and Engineering" but at US universities I understand that the degrees are different so what is the fundamental difference? Is computer engineering lower ...
4
votes
6answers
3k views

Why do we need assembly language?

We mostly write programme in high level language. So while studying I came across assembly language. So an assembler converts assembly language to machine language and a compiler does the same with ...
4
votes
1answer
442 views

Despite it is so important, why don't computer science departments offer a class named “memory management”? [closed]

I don't understand why computer science departments don't offer a class named memory management? I see that most of the problems encountered in computer science are about memory management concepts. ...
1
vote
4answers
1k views

What future working opportunities do computer science students have?

If I am right students learning computer science at universities learn very theoretical kind of knowledge. A knowledge most of which (e.g. algorithm theory) can't be used to create everyday software ...
32
votes
13answers
2k views

What should I do with a bunch of 16-17 year olds to get them interested in computer science?

I'm going to be involved with a sort of 'open day' at my university in a few weeks. As part of this time, I (along with a coworker) am being given a whole bunch of high-school level students for two ...
1
vote
1answer
276 views

How to represent OOP concepts in algorithms in a standard way?

I have usually been using the Cormen algorithm format to teach some introductory courses in Programming. I mean something like this: ...
4
votes
3answers
1k views

Explaining why FFT is faster than DFT for the general public?

How would you explain why the Fast Fourier Transform is faster than the Discrete Fourier Transform, if you had to give a presentation about it for the general (non-mathematical) public?
2
votes
0answers
74 views

Seeking popular science book on bioinformatics or computational genomics

An intelligent 15-year-old I know is interested in both computer science and genetics. I told her that these fields make an excellent combination. I'd like to give her a book on bioinformatics or ...
1
vote
1answer
150 views

Studying advice

I don't know much when it comes to computers, But If I wanted to learn how to programm algorithms that perform symbolic calculations and other techniques used to solve or aid mathematical problems, ...
0
votes
2answers
87 views

Overlap between computer science and analytic geometry?

I would like to know if there are some topics that could be covered in an undergraduate first-term course about analytic geometry, but related to Computer Science. I know that, for example, the ...
6
votes
3answers
336 views

Looking for a dictionary of math/CS notation

There is an at-times dizzying array of symbols used in math and CS papers. Yet many assume basic familiarity that seems rarely taught in one place. I am looking for a dictionary something like the ...
6
votes
2answers
4k views

DIfferences between computer vision and image processing

I am basically an Electronics and Communication Engineering student. My relevant coursework include Probability Theory and Stochastic Processes, Engineering Mathematics, Signals and Systems, Digital ...
3
votes
0answers
235 views

Best a-little-advanced examples of dynamic programming, polynomial reduction and approximation algorithm

I was offered by a professor to give some tutoring in his course of Algorithm Design, based on Kleinberg and Tardos' book. He suggested me to prepare two exercise on dynamic programming, one exercise ...
5
votes
4answers
2k views

Trigonometry in computer science

What's the use of studying trigonometry in computer science? I mean, is it essential? Does it have a specific application in computer science? Because I can't seem to muster enough motivation for ...
5
votes
1answer
102 views

Help need to learn Quantum Computation and Information

I want to learn quantum computation and information. I am studying from Nielsen & Chuang book for this. Is there any online vedio (lecture series) starts from basics of quantum computation and ...
9
votes
6answers
3k views

Start learning about Theory of Distributed Systems?

What's the best way that anyone can do to have a good introduction to the theory of distributed system, any books or references, and topics should be covered first and requirements to start learning ...
-4
votes
1answer
145 views

References on collective intelligence with respect to CS applications

In recent years the field of "collective intelligence" sometimes known as Web 2.0 has had a big impact on computer science, software engineering, and software development. Stackexchange software ...
9
votes
6answers
1k views

What is the significance of reverse polish notation?

I teach computing to 18 year olds. After having reverse polish notation explained to them one asked why is it significant enough to be in the public exam. I explained the historical significance of ...
11
votes
4answers
482 views

Self-Study of Computer Science

I am a 16 year old male who has recently been gifted a big encyclopedia on computer science by a friend of mine. I am usually not that interested in computers and technology, but computer science has ...
22
votes
4answers
814 views

Explaining the relevance of asymptotic complexity of algorithms to practice of designing algorithms

In algorithms and complexity we focus on the asymptotic complexity of algorithms, i.e. the amount of resources an algorithm uses as the size of the input goes to infinity. In practice, what is ...
2
votes
1answer
574 views

What are the mathematical prerequisites for adaptive machine learning algorithms?

I am a PhD student in Computer Science who switched his PhD a little bit towards ML algorithms combined with something else... I am an expert in that something else, say image processing, but not an ...
9
votes
1answer
276 views

Math for TCS major

I'm looking for a major in Theoretical Computer Science; specifically, I'm interested on complexity theory and probabilistic automata theory. As I'm graduating in one year, what advanced courses in ...
7
votes
2answers
185 views

References on teaching introductory programming courses

As the new semester starts soon, I am interested in research regarding the teaching of introductory programming courses. I would like to improve my university course and I am looking for scientific ...
17
votes
5answers
1k views

How does a computer work?

Ok, I have been a computer nerd for many many years. I can program in quite a few languages, and I can even build them. I sat down with a buddy the other day and asked how a computer actually takes ...
1
vote
1answer
178 views

Undergraduate studies: Math or CS?

hope it's possible for this question to be answered in an objective manner. I'm not studying in a liberal arts college so basically I only get to study one subject. Which would be the better ...
2
votes
3answers
247 views

Good text on algorithm complexity

Where should I look for a good introductory text in algorithm complexity? So far, I have had an Algorithms class, and several language classes, but nothing with a theoretical backbone. I get the whole ...
8
votes
5answers
577 views

Standard or Top Text on Applied Graph Theory

I am looking for a reference text on applied graph theory and graph algorithms. Is there a standard text used in most computer science programs? If not, what are the most respected texts in the ...
5
votes
2answers
339 views

Online Learning Resources for Discrete Mathematics

Are there any good Discrete mathematics learning web resources with problem sets?