Jose Manuel
Members-
Content Count
14 -
Joined
-
Last visited
About Jose Manuel
-
Rank
Newbie [Level 1]
- Birthday 07/28/1975
Contact Methods
-
Website URL
http://www.uco.es/~el2pamuj
Profile Information
-
Interests
Researching: Image and Video Processing, Machine Vision.<br />Education: Assembler, CPUs, General Purpose OS (mainly, Linux), RTOS.<br />Hobbies: Rugby, Heavy Metal, Sci-Fiction (books, movies, TV series, RPG), Fantasy (books, movies, TV series, RPG).
-
Hi again, now I ask you about final examinations...I started as a professor almost 7 years ago... I began with practices in computer lab. We did simulations on digital circuits and things like that. Usually, we proposed from 7 to 9 different practices to our 160 students. I admitted the practices to be done by groups upto three persons. Obviously, the aggroupation reduced the total amount of practices to be check to 1/3 (that's about 50 groups x 8 practices = 400 documents/simulations!!!!) That was almost impossible to follow and after one year I noticed when the "difficult" practices started, there were just 10 diferent ones, all of the rest were simple copies!!! And even, some students told me that they have too many practices for every subject in the course... In 1st course, they usually take 14 subjects...Then one year I decided to make a final examination... students could go to the lessons or not, I didn't check their presence. At the end of the semester they were asked to make a digital design and a simulation on the computer within 2:30 hours. People who were able to solve the problem, pass the lab practices. Just one day for me, and much more free time along the semester for them to take other subjects and distribute properly their time.As an experience and conclusion, the amount of people who passes the lab practices before the examination dropped drastically (before, 80% passes; after the examination dropped to 20%) But I think it is worth... for me and also for the students.Sometimes, the best solution is a "traditional" examination instead of works, documents, etc. What do you think?
-
I started programming Assembler back in 94 or 95 using TASM (the Borland assembler, quite similar to the Microsoft's MASM). I was comfortable with that configuration. Later I began to embed code with the Borland C assembler, that was easy, but it was difficult to make some complex tasks... And then I had to switch to Linux... hummm, there were no Borland C nor TASM oh! What to do! Fortunately, gcc provided a much better C compiler (the Borland C was completely surpassed!) but it was hard for me to get used to the assembler included: GAS. It uses the AT&T mode for writing assembler... but it was hard! For some time I didn't need assembler, so I forgot some of my skills about AT&T. However, when I started my Ph.D. one of my professors asked me to optimize some common algorithms using MMX. Thus I had to go back to the old days that I used AT&T assembler embedded in gcc. After that, I have made comparisons using both AT&T and Intel, and also Intel Intrinsics (a C library which allows to use assembler functions directly in C). I have found that gcc + AT&T is the fastest of the three options... so I have no doubts, I will use gcc + AT&T, rather than Intel C Compiler + Intel Assembler or Intel Intrinsics. Have you found the same difficulties as me? Tell us your experiences...
-
Not sure if I understood you, but I don't mean that CS engineers are not allowed to program or to engange with Hardware. They MUST know programming methodology and Hardware, among many other things! First of all, we are engineers so we are completely capable of going down to the facts and working the items with "our hands"... But that's not really our job! I am assistant professor of Computer Architecture, and I don't master computer reparation! But I have the knowledge to become an expert As you said, an architect knows how to put the bricks, but he does not do that job. In fact, I think we should take the position of the surgeon, which takes the control of any surgery when the specialized part he masters is needed. Why can't we get involved with new hardware???? In fact, I claim THAT'S really OUR part of the job. The rest of the program is not needed to be done by us... any junior programming could do it! I disagree completely with you: in fact I feel that what we really need is specialized programming (database experts, assembler programming experts, graphic experts, etc.)
-
Well, it is a translation of the name of the graduate diploma of the Computer Sciences Engineering in my home country. Maybe I translated it wrong... I apologize. Can't you repair broken computers??? In my home country, Spain, anyone is able to do so... (at least, as long as I know... I might be wrong) I can understand completely what you mean, because I am a professor of Computer Architecture, Digital Systems and Hardware in general... We are trying to make the students to understand exactly what you explain. I think just the same way an architect is able to build up a whole building without putting bricks I mean there should exist "plain" programmers, dedicated just to program good quality codes; the same way there exists "bricklayers", devoted just to build up walls.
-
Hi there, I would like to start a topic, which probably would be controversial, about whether the Computer Sciences Engineers (I mean at the University) should be taught to program or not. This is a fact that has been around inside my mind for long time.I think CS-Engs. should have knowledge about general programming methodology, but we (yes, I am a CS-Eng.) are not supposed to be just programmers... we are data/system/program analysts, designers, etc. I just cannot imagine an Architect in a building work, preparing the concrete mixture and putting the tiles, etc. The architect just make the calculations for building up the building, and drawing the plannings, etc. We all agree, it would be shooking to meet an architect working as a plain "bricklayer". Or imaging a neurosurgeon, he/she studied for almost 10 years, she wouldn't allow to work giving insuline injections... If we ask her she would tell us: "That would be a waste of money and years! I haven't studied neurosurgery to give insuline injections!"However, it is rather strange to meet a CS-Eng. who does not program, specially a young just graduated CS-Eng. Why??? I feel we are denigrating our own job. We shouldn't be contracted to do so...What do you think?
-
As far as I know, there are not many OSes completely written just in Assembler, most of the OSes have the the kernel (and even, not all the kernel, but just some of the functions) written in ASM. One of the reasons is to take control over the CPU and the machine, sometimes C/C++ just do not provide statements to do so, or they just take "too" long (several millisecs!!!) because of the function callings, etc. For example, if you want to control cache, you'll probably prefer to take control of it directly with ASM. Or if you have to take control of the MMX/SSE resources (I don't guess for what... but who knows! ) you can just access them using ASM or with the Intel Intrinsics library... I just cannot imagine an OS which is dependent not only on an architecture but also on a proprietary library...Another differente question is why isn't so common to embed Assembler code in C/C++ code... I prefer this option, however, "puritans of the Assembler" prefer to write the functions completely in ASM... not sure why they prefer to take control of the arguments, initializations of the variables, etc. For me, C/C++ just do a great work with those items.
-
Thanks for a so interesting and respetcful answer/opinion.I think in the Catholic church there existed a pair of key points in the history: one of them was tenebrous, the Trento counsil in the XVIth century, which, in my humble opinion, meant a step backward... while the Vatican II counsil in mid XXth century which meant the reunification of the church, the clergy and the old/traditional customs with the real people and the time of the history. Now, priests, monks, and even bishops are more tractable by the plain lay members. I have drink a beer with a priest talking about politics, and a bishop told a joke to me. I think the "new" Catholic chuch that appeared after Vatican II counsil was closer to the believer. They have relaxed their pretention of "infallibility", they only affirm to be infallible in matters of religion and faith affairs, but they don't affirm so in terms of morality or science... I think that is a step forward fact.
-
Some courses are mandatory, others are optional. Even the courses are mandatory, I do not check whether the students come or not, I don't like to feel that I am a jailer!!! If the students feel they don't need me to teach them, they don't need to come to my lessons. I will check if they have acquired the mandatory topics of the subject in the final tests/examinations/etc. Well, that's an interesting point of view, but I think it is a bit narrow-minded... because no one knows in which job/company would you work in the future. Just let me explain my experience, during my CS I tried to get specialization in AI. When I finished my grade, I bI liked egan to work in a programming company and I noticed that I don't like so much programming as I supposed. I started my Ph.D. and they suggested me to do it in Computer Architecture Department, and now I like these topics very much, who would have told me this when I was a student! :-D Humm, nice idea! I will ask some students about those points you mention... THANKS! :-)
-
Humm, I see...I asked this same question to some of my students, and many of them agreed with your comment. They prefer the courses that have a connection to the "real world", or at least with something they would work in the future (for example, robots as you said). And that's quite easy in optional/specialized courses, but I just cannot guess how to do that in basic courses. For example, Digital Systems is a subject taught in the first year of CS degree. It is about logical operators, how to mixed them in order to produce logical systems, then how to produce arithmetical systems, etc. I can see the progression of it and how tools are shown to produce bigger and more complex systems. These systems are actually the ones we have inside our CPUs (connection to the real world)! However, my students do not "see" that approach at the beginning (most of them just quit the course when I am teaching Karnaugh maps to produce logical expressions! That's taught during the 2nd week!!!) and, thus, they don't follow the course.Well, I must say in Spain we have OVERCROWED classrooms. Last term, I taught in a classroom with 160 students! I think with just 20 students I would be able to make it much more comfortable and friendly, and probably I could follow whether the lessons are being interesting or not.
-
Hi there, I'm a professor at the University. I would like to open a thread about this topic: New Experiences and Methodologies to teach Computer Sciences. I am professor of several courses: Digital Systems, Computer Architecture, Assembler Languages and CPUs, Real-Time OS, and Parallel and Distributed Systems. I feel that my students are not very pleased with these subjects because they feel "they are not about programming", and sometimes it is very hard to involve students in the teaching, thus I would like ideas on how to teach those courses (or others, I don't mind, I will try to "translate" those suggestions to my field of interest). I would like you all share with me how to make my courses to be more attractive to my students, obviously, without reducing the amount and quality of the learning of the topics of these courses.I have used "Moodle" system (not sure if you have used it), it is "somewhat" like a Wiki, but highly oriented to the teaching community. However, I feel it is just like modernize the old way of "sticking notes on the bulletin board"... and sometimes it means a lot of work (for me) for a very small prize...Suggestions? Learning experiences?PS: By the way, I am Spanish. I would be very pleased to share learning experiences with other countries' University systems.
-
First of all, I must say I am a Catholic.I am not sure what you meant with "pros and cons" of Catholicism... "pros and cons" with respect to which other? Islamism? Budhism? Atheism?I can share with you all why I believe in Christ under the Catholic faith, but with that I do not mean my faith is "better" than any other person's, they are just my opinions, and obviously they are very argueable.I have university education, and a large culture, however I have always felt that there are some questions Science does not answer or at least does not answer completely my doubts. Obviously, most of them are about life after death, but there are also many of them about morality and things like that.Catholicism answered many questions I had, it gave to me a pathway on how to behave with others and also on how to behave with myself. With that I meant how to be YOURSELF with freedom, not linked to material things that tie you up and don't let you be yourself. It is the way I have found to get in touch with my soul, with the spiritual part of myself.The figure of Jesuchrist showed (and even today, shows) me how every man should behave in order to fight for a better place. I don't believe in Communism/Socialism, that is I do not share the idea of redistribution of wealth; or at least, I don't believe in a forced redistribution of wealth. But on the other side, I think we all should help everyone not to be poor. Jesuchrist showed me the path for that: Charity. But not that Charity in which rich people give money to poor people, showing them they are much better because they have money and wealth... I mean Catholic Charity: we share what we have with others, in a free manner (no one should force me to do so) and in a "peer-to-peer" behaviour (P2P rules!!! )There are obviously some things I don't like about Catholicism, mainly: I think women should be allowed to be priests. And also I have always noticed that "sexual sins" have always been taken to be more important than other sins (in my home country we say that there seems to be that there are no sins other than the ones of the "lower" part of the body). I think condoms should not be treated as sins and they shouldn't be taken as inmorals...Well, that's a VERY VERY brief discussion about this topic... Feel free to criticize whatever you all want...
-
Errr.... I am not sure it is a RTOS (are you sure the PALM OS has an scheduling system which is predictable? and does it provide a priority task scheduling??) Also, your statament "The PalmTop uses the RTOS(REAL TIME OPERATING SYSTEMS). Hence that makes it an Embedded System" is not completely true. Not every Embedded OS is a RTOS (the opposite tends to be true most of the times, but not always). I am not sure also PALM OS is not an Embedded System. Generically and theoretically, an Embedded OS is an specific OS (in opposition to a general purpose OS, like Linux or Windows) bounded in a closed system where no new tasks are to appear upon the execution of the system (like the controller of an Intelligent Microwave Oven or an intelligent dishwasher). However, PALM OS has many features in common with a general purpose OS (it dispatches new tasks, and that is a contradiction to an embedded system, where no new tasks should appear), thus I think PALM OS should be classified as a small General Purpose OS. Obviously, all these facts are argueable and they are just my point of view! Feel free to criticize them.
-
I am not sure if this would help you. I have a DELL Axim X51v. It works pretty fine and smooth! I bought it in an offer for just 360 euros (that's just 450 $). Its price now is 450 euros (565 US$). It has a Intel Xscale PXA-270 at 624 Mhz, Bluetooth and 802.11b. There are cheaper models (Axim X51-520 Mhz, for 314 euros (394 US$) and Axim X51-416 Mhz, for 299 euros (375 US$)). Enjoy your PDA!
-
Hi there, I do not completely agree with those statements. Actually, RTOS are OSes that have a predictable behaviour (in advance, before lauching the system) in a system for a given payload, basically for that given payload all the tasks are processed "in time". With that "in time" I mean that the response is given at least before the response is useless. What this means? Let's take an example: humm, Let's suppose I have a system for deploying a canopy in response to the sunlight. The engine that deploys the canopy has a time to start of 5 secs. And the time for the total deployment of the canopy is 30 secs. My OS should make a response as soon as 35 seconds. That is the deadline time. That's not so fast! But anyone could argue that is not a critical task... ok, you're right! Let's take another system with more critical tasks: An aircraft system. In that system, many items can be taken into account: from less critical, as the air conditioning for the crew and passengers, to highly critical, as the control of the engines inflight, for example. Checking the engines is a hihh priority task with a very short time-cycle (checking is done thousand times a second), however the adjustment of the engine cannot be done so fast, because of the response of the engine (in some cases, the engine takes some seconds to response to a given input). That means that if there is a very high payload that degrades the system, some deadlines will not be reached in time. In those cases, low priority tasks are delayed; then, high priority tasks devoted to "read" sensors, if they are allowed to do so, reduce their period, or just some data are missed... for example, in the case of the checking of the engines, if the response time is several seconds, we could manage to fly checking once or twice a second (obviously with a reduction of the security, but not to a critical point). In other cases, the "fast" response is not directly connected to a short period. For example, in a photo-Satellite (that is a satellite which makes photos in a given position in a route along the Earth), we could decide to take a photo in a particular position. The satellite will be reach that position in, let's say, 24 hours: 15 minutes: 30 seconds. That's a CRITICAL deadline! It will be scheduled and many other events and tasks will ocurr between this time and that deadline... So the term "quick" is inaccurate by nature. I would use the term "just in time" or "by the deadline".
-
Hi there,my name is Jose Manuel. I am from Spain. I work as an assistant professor at the University of Cordoba. I teach Computer Technology and Computer Architecture (among other specialized courses at the Bachelor and Master Degree of the Computer Sciences Engineering Degree).I am also a researcher, trying to obtain my Ph.D. But this is hard and TOO difficult (I have been working for it since 2000, that is for 6 years!) I research in computer vision and video and image processing. I hope next year I will get my Ph.D.!Feel free to ask me any question regarding those topics (Computer Sciences, Computer Technology, Computer Architecture, Image and Video Processing, and anything about the University in Spain).