View Single Post
  #25   Spotlight this post!  
Unread 10-09-2007, 13:18
Phalanx's Avatar
Phalanx Phalanx is offline
Formerly Team 1089 (Mercury)
AKA: Michael Reffler
FRC #5431 (Titan Robotics)
Team Role: Mentor
 
Join Date: Jun 2005
Rookie Year: 1999
Location: Lewisville, TX (previously NJ)
Posts: 384
Phalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond reputePhalanx has a reputation beyond repute
Re: How important is Linux?

Being in the corporate business sector where you need to make the trade offs between "get the product out there yesterday" and the "do more with less" or "make it work on our existing systems without upgrading them" and the "Oh BTW the transaction has to be finished in 3 seconds or less" I find myself straddling the fence a little on the subject.

On one since of the fence:
Having a RTOS running on the RC with the necessary and appropriate drivers for various hardware and sensors using standardized API calls for accessing and using said hardware is very much like todays methods of application development and programming. Most of the complex underlying programming of error handling, interrupt handling and so forth are hidden from the developer and the developer really doesn't need to know or care about them.
It certainly does make code development easier and faster. The downside is you tend to get larger code with more overhead that functions less efficiently which in turn requires more RAM, bigger Hard Drives, faster CPU's to get the job done. While this is not always true, it is the case more often than not.


On the other side of the fence:
Not having a RTOS allows the developer to intimately learn the inner workings of the system and hardware they are using. It does take A LOT longer to program and develop applications, but you generally can write more efficient code that will need less hard drive space require less RAM, less CPU cycles. This side of the fence in my opinion provides the students the opportunity to gain a greater depth of knowledge and understanding of computing at both the hardware level and the software level.

So the key question in my mind is which side of fence will the students benefit the most from? In my personal opinion, not having a RTOS would serve well, but I'll be honest and say that my view is slanted for 2 reasons.
1) I was the taught program/develop code in that way myself.
2) Currently one of my professional roles is application and overall system performance across the corporate enterprise. And believe me, the less the programmer understands of the inner workings the tougher my job is.

Just food for thought.
__________________
Don't just ask the experts, become one!
Leadership is not about ability. It's about responsibility!
Diagonally Parked in a Parallel Universe. It's okay we do Quantum Physics



Last edited by Phalanx : 10-09-2007 at 13:20.