Gianluca
I think the reason for the increase in numbers of “my driver dont work”
posts (at least it is my perception tat ther eis an increase) is rooted in
outsourcing and particular offshoring.
Kind regards
Lyndon
“Gianluca Varenni” wrote in message
news:xxxxx@ntdev…
> Just my two cents on the topic.
>
> I came out of the university not long ago from Italy. I studied EE and
> then moved to CompEng and networking. I work in the driver dev field and
> i’m far from being an expert. I know something. I just usually know my
> limits.
>
> My experience in italy (in my university) is that
>
> 1. students are not pushed too much to their limits. Most of the
> assignments are too trivial and students are not stimulated to use their
> brains to find their solutions. Maybe because the same assignments are
> used over the years?!?
> 2. i’ve been told that the university has to teach you how to program, how
> to design an application, bla bla bla. And they don’t want to stick with a
> specific IDE or tool because of that. The neat result is that you come out
> of the university without practical experience in working with a project
> with 500+ LOC. And worse. Without having any idea of how to use a
> debugger. And I’m not talking about windbg, the VS debugger, gdb or any
> other. Just know how to use something more that printf’s in the code. I
> wonder if this is the reason why there are so many posts on this mailing
> list like “my driver crashes. Help!”.
> 3. Regarding driver dev and OS architecture, if you study CS or EE you’ll
> have had a class on OS fundamentals at a certain point. But very little is
> done to have the students really “touch” the OS and understand what’s
> really going on. Students are neither motivated (by the instructors) nor
> interested in learning that (too difficult?). And the result is that
> students (including myself up to some years ago) don’t have a clear idea
> of what a virtual address space is. What surprises me is that if you do
> know how your OS works, it’s way easier to develop any piece of software.
> From a driver to a C# application.
> 4. There’s been a push in teaching C#/Java instead of C. Good? Bad? I
> don’t know. I think that knowing C is important, as much as I think that
> using a strongly typed language like C# should be favoured when possible.
> Less chances of mixing apples with pears and messing up with void
> pointers… yay (yes, I’m also a big fan of .NET, together with Windows
> internals. It’s kinda weird). But you also need to know how a VM like the
> CLR for .NET or the JVM for Java works. Hearing phrases like “oh, with
> java/C# it’s easier beacuse you don’t need to free memory” is really
> discouraging.
> Maybe I’m too demanding (even to myself). But I want to know things work.
>
> Have a nice day
> GV
>
> ----- Original Message -----
> From: “Lyndon J Clarke”
> Newsgroups: ntdev
> To: “Windows System Software Devs Interest List”
> Sent: Wednesday, April 04, 2007 9:46 AM
> Subject: Re:[ntdev] About CS curricula, OS architecture and driver
> programming, was Re: Two Rings Good, Four Rings Bad
>
>
>> Simple answer: The world is awash with C# .NET Java opportunities but in
>> contrast there are few kernel opportunities. The world of schools,
>> colleges, universities has less of an ‘academic’ focus and more of a
>> ‘vocational’ focus. The extent of this might, or might no, be variable
>> across geographies.
>>
>> “Sandor LUKACS” wrote in message
>> news:xxxxx@ntdev…
>>> lists.osr.com wrote:
>>>>> What on earth
>>>>> does the typical computer science curricula teach these days? Visual
>>>>> C#
>>>>> .NET and nothing else?
>>>>>
>>>>>
>>>>
>>>> Since I’m currently working on my Masters in CompSci right now, I’d
>>>> like to report that the language of choice at the school I’m attending
>>>> appears to be Java, followed (way behind) by C. The OS(s) of choice
>>>> are Solaris and Linux.
>>>>
>>>> No classes even exist for anything like Device Drivers, Low level OS
>>>> architecture, or Embedded Systems, at least not through Computer
>>>> Science.
>>>>
>>>> sigh
>>>>
>>>>
>>> I’m also very sad about the fact, that low level programming, OS
>>> architecture (NT / Linux,
>>> anything), driver programming and so on are almost entirely missing from
>>> all CS curricula
>>> in practically all faculties which I know about around me (Romania). It
>>> there is anything,
>>> then that is very theoretical and has little to do with real life
>>> practical stuffs.
>>>
>>> On the other hand, I taught last year a one semester course for Masters
>>> degree students
>>> about low level processor architecture and programming, basics of the NT
>>> architecture and
>>> some little NT driver programming. I was deeply sad by the fact, that
>>> even that I was
>>> showing up real life examples most students where just not interested
>>> about the topics.
>>> I got the feedback repeatedly from over 80% of the students, that
>>> databases, Java, C# and
>>> .NET are much more fun and much easier to do than stuffs like ASM, OS
>>> kernel stuffs or
>>> driver programming. Even coding Win32 with C, or concepts like
>>> synchronizations, thread
>>> contexts, semaphores, events and so on tend to be scary for quite a lot
>>> of the students.
>>>
>>> Did somebody experienced similar results? Why is that as the years are
>>> passing, it is
>>> more and more difficult to find somebody really interested in low-level
>>> stuffs?
>>>
>>> have a nice day,
>>>
>>> Sandor LUKACS
>>> Virus Analyst, SOFTWIN
>>> www.bitdefender.com
>>>
>>
>>
>>
>> —
>> Questions? First check the Kernel Driver FAQ at
>> http://www.osronline.com/article.cfm?id=256
>>
>> To unsubscribe, visit the List Server section of OSR Online at
>> http://www.osronline.com/page.cfm?name=ListServer
>
>