M
M
MAXH02012-10-04 13:12:04
Programming
MAXH0, 2012-10-04 13:12:04

Questions that you did not learn at school / university, but should have known? (from the IT field)

As an addition to the question, I'll clarify.
I lead a computer science circle and I have 3-4 students who definitely go to IT.

Answer the question

In order to leave comments, you need to log in

9 answer(s)
G
Godless, 2012-10-04
@Godless

There are a lot of thoughts in my head… I also have some teaching experience (6 years of tutoring, 1 year of practice at the university after graduation). Here's what I got from there:

  • Children should be instilled with a maximum of principles, laws, ideas. Facts are also necessary, however (personal opinion) I consider the “idea” the most important, and only then “facts”
  • Definitely need practice. Spherical words in a vacuum are not remembered. And the more practice, the better.
  • Schoolchild / pupil / student - must independently do some tasks, invent them for himself. MYSELF. The effects of "did it yourself" and "showed how to do it" represent I think.
    On this occasion, by the way, our geometer said this (a talented teacher, with decades of experience): “when a child himself understood, or deduced some kind of law, fact, whatever, he will never forget it. If you tell him about it, he will forget it immediately after he stops using it.
  • “There are things that you need to feel yourself besides theory, touch it with pens, so to speak, but there are things that you need to learn how to do it right and do it that way.” - Just say it like this =) the latter include all sorts of techniques that are modified with the experience of generations. No need to repeat the old experience. You can read about it on the Internet.

I can say about myself that it helped me a lot to structure knowledge in IT and tear out the logic of mathematics, especially geometry. I know that in some schools in our city, let's say, they slightly omit the proofs of theorems. The reasoning lost in the head and the ability to deduce one from the other must somehow be restored. About the principles - it is useful to tell, show about "ascending / descending" programming, pluses, minuses, MVC. In general terms, how to use frameworks, libraries. examples, tasks can even be done on some library thread. You need to know different algorithms, it is not necessary to be able to implement complex ones. It is important that they understand that these have already been invented and there is probably an implementation somewhere on the network ... You just need to know how data is stored in memory. Yes, just like that, they understood byte by byte what, how and where. "Low byte at low address", etc. About virtualization, both the entire OS, and the device of the Java machine and others ... of course, in general terms. Security. How viruses spread, where, how and why, what are vulnerabilities, etc. (do not forget to mention the Criminal Code of the Russian Federation) Many are afraid of this word, but ... Assembler! I started in 10th grade. I think it is absolutely free to give it in such courses. even the basics. preferably under Windows, of course ... although DOS programs can also be compiled purely for familiarization. I can't even describe how he helped me learn C++ later. I started in 10th grade. I think it is absolutely free to give it in such courses. even the basics. preferably under Windows, of course ... although DOS programs can also be compiled purely for familiarization. I can't even describe how he helped me learn C++ later. I started in 10th grade. I think it is absolutely free to give it in such courses. even the basics. preferably under Windows, of course ... although DOS programs can also be compiled purely for familiarization. I can't even describe how he helped me learn C++ later.
well... you can't teach everything... I think you will choose what suits you best...
PS: I read what happened... Somewhat chaotically. I just remembered myself in my school years, there wasn’t enough person who would help me learn faster, share his experience so that I don’t repeat his mistakes ... apparently I want to push more into these schoolchildren who consciously go to IT than I had in me =)

S
Sergey, 2012-10-04
Protko @Fesor

In general, I would like to learn more about such a thing as functional programming at the university. It may be a little early for school, but the university is just right. For at the moment, for the most part, only imperative ones are taught. Even with OOP, the functional approach is fine. After all, inside the methods that functional programming is used.
In general, the essence is to show that for solving one problem, you can use a coordinately different method.

S
silvansky, 2012-10-04
@silvansky

In my university course, I was severely lacking in basic data structures and algorithms. As well as the subtleties of at least some kind of PL, and not just “assignment-condition-loop-function”. It's funny, but they even casually told us about the pointer.

B
Boleg2, 2012-10-04
@Boleg2

It immediately came to mind that at one time I learned only after school, but I would like to learn the basics in the lessons:
- IPv4 addressing and masks;
- the concept of "ports" for each machine on the network, why and what can be done with it;
- scopes and profit from virtual machines, in general terms;
- pluses and principles of OOP, in general terms;
In general, the idea is that it makes sense to give students some meta-information, often from personal experience / knowledge, in order to interest and show that not everything is “too complicated” and is limited to theory in thick books =)

V
vm916, 2012-10-04
@vm916

I think that in general, from 10-11 grades, after vocational guidance, it is necessary to study CCNA Exploration (the first and second parts of the course). It's a pity I found out late that such courses exist. The difference from the usual book on network technologies is huge. On virtual laboratory work, you can understand how it works, starting from the very basics.
People are divided into: visuals audials
kinesthetics For some it is enough to hear once, for others it is necessary to “touch”.

W
Wott, 2012-10-04
@Wott

An IT specialist must first of all learn to find information himself.
And at school and in my first years, I was sorely lacking the Internet, because then it was text-based :) and there were no search engines even in my plans.

K
Kirill Lavrentiev, 2012-10-06
@kirillius_khv

I am a 5th year student and would like to say that now you can become a normal IT specialist only with complete self-study. At best, we were given only 2 disciplines normally (we were just lucky with the teachers), the rest of the disciplines were read by "teachers", whom I personally do not consider as such.

B
bogolt, 2012-10-06
@bogolt

In my opinion, many are repelled from programming by its faceless teaching, tasks in the style of “sorting an array, multiplying matrices” ... Tasks should be, first of all, visual, creating something real.
Personally, until the third year, I did not believe that I could become a programmer because we were doing similar, though useful, but completely impractical, far from life things.
If the tasks were in the style of "Write the simplest http server, file manager, game ..." training would be more useful. Indeed, in the context of any program, almost any principles of programming can be explained, but the very fact of writing something big, and most importantly useful, makes you look at your work in a completely different way, and it is much better to evaluate your real skills.

V
Vladimir Chernyshev, 2012-10-06
@VolCh

At the current computer science lessons, after the general principles of the computer, I would give the general principles of the operation of networks in general and www (http) in particular, so that there is a basic understanding of what an address, port, protocol, proxy, nat, white, gray, black IP are , dns, etc. In general, so that they understand the processes that occur when typing an address in the address bar of a browser (and know what it is in general).
On the circle, I would focus more on http, up to the development of the simplest http servers on something like node.js, hiding the details of the socket type, but revealing the process of working on http up to the “manual” parsing of requests and generating responses.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question