This will vary by the college or university that you consider attending. I graduated from the Electrical and Computer Engineering department of Purdue University in 1999 with a B.S. in Computer Engineering. My brother graduated this past December from the Computer Science department. I work with several people who graduated from one of the schools of technology. I would summarize the various degrees as follows:
Computer Science: Very focused on math and the theory behind algorithms. Basic and advanced programming courses in C++ and Java. Some exposure to databases.
Computer Engineering: Very focused on physics and computing logic. Basic and advanced programming courses in C. Some exposure to object oriented techniques.
Technology: Focused on practical applications of technology. Courses cover database management, operating systems, network architectures. Some light programming courses.
A number of people in Computer Engineering later switched to Electrical Engineering or Computer Science, as they wanted to focus either more on hardware or more on software. All three degrees (EE, CE, CS) received approximately the same number of offers at graduation, and at roughly the same pay level. Students from the Technology department received just as many offers, but at a lower pay level.
I would suggest that if you liked your IT job, go for a Technology degree with a minor in management. You may not get as much utility from a CS or CE degree.
I believe that I read the same article. If I am remembering correctly, his application then was to generate a chip which could perform a FFT a signal the fastest. As with the tone recognizer, the chip used only a percentage of the funcionality of the chip. However, when he removed the programming for those unused cells, the chip failed to work. Another item mentioned in that article was the fact that when the same design was loaded on to another FPGA, it failed to run. The reason? Evidently the GA had found a way to take advantage of behavior unique to the chip, such as thicker insulators in a section of a cell, or a flaw on a certain path. In all cases, when he attempted to move the design from one chip to another, the results were not as good as on the original chip.
Here are some of the items that I would look for in the ideal apartment setting (tech or not)
Sound Dampening:
There's nothing like the rumble of Quake at high volume, but don't inflict it on me in the wee hours of the a.m. I would want to protect my neighbor from my own noise as much as I would protect myself from his. Abundant sound dampening would be a big plus.
Air Filtration:
With all of the different lifestyles (smokers, non-bathers, obscure candle lovers) I want to make sure that I only get the scents that I invite into my apartment. I currently have neighbors who smoke like chimneys, and it has seeped into every fiber of my carpeting. Then they installed a bunch of air ionizers, so now my apartment smells like a mix between an ashtray and a public pool.
Multiple Multi-Connector Outlets:
You can never have enough power/cable/telephone outlets.
No Exterior Stairs:
Either give every apartment ground floor entry, or provide an elevator. The stairs should be an emergency exit only. I've had too many drunk neighbors stumble home late at night.
Package Safe Deposit:
I hate getting home to find a note that the office is holding my package. I have to plan my day around the office hours so I can get my shipment of penguin reds. Not good. Give me a large safe deposit that I can give the FedEx/UPS guys access to.
Thick Window Coverings:
Most apartments come with your typical set of slat blinds. These are great until you try to watch a movie on your big screen at 5 pm and find the glare obscuring your view. The ideal apartment would have blinds capable of completely shutting out outside light sources.
Independent Hot Water Heater with Large Capacity:
Let me adjust my hot water to the temperature that I like, and make sure that I never run out. Same goes for the HVAC system.
And for the ideal techie apartment I would add
Electronics Closet:
An extra closet with a monster UPS/Line filter. Run all of the CAT-5, speaker, KVM, S-Video, etc. cables here. This is where I would keep all of my A/V equipment, big iron/Beowulf Rack, High Bandwidth uplink, and a router. This room would also need an independent temperature setting, as all of this equipment will be generating a lot of heat.
Pre-Routed CAT-5:
I don't want my apartment complex supplying my internet access, as I wouldn't put my faith in their capabilities. But if they would run CAT-5 throughout the apartment and leave the connections exposed next to the washer and dryer so I could hook up a router: fabulous.
Pre-Routed A/V wire:
Run speaker wire throughout the apartment. Run S-Video/Optical/and component outs throughout each room as well. Make sure the outlets are on multiple walls on each room so I have a choice of where to put my equipment, but also provide covers so the unused ones aren't exposed.
Remote Control Extenders:
Since all of my A/V equipment is in the closet, I'll need some RF/IR repeaters to get my remotes signal in there.
Factory Environment Issues
on
This is IT?
·
· Score: 1
Before these are introduced to shop floors, there are several questions that need to be answered:
1) Stopping speed/distance.
If I'm on a Segway and Floyd is on a fork truck headed right at me, do I have enough time to brake or should I leap?
2) Rear view.
If it travels in reverse, it must have review mirrors. Otherwise, not only will you see accidents involving people going backwards, but also lots of people doing a reverse tail chase as they attempt to contort their body to look backward.
3) Load Capacity
Most often, when someone is traveling around the plant they are carrying something from one place to another. Golf carts, hand trucks, and bikes are used because they are quick, and they do not require the operator to carry the load. The Segway appears to require both hands to operate, so where does the load go? How much can it carry? Documents only, or can I throw on replacement parts for the job I'm about to do?
4) Visual/Audio Alerts
Some environments require that any wheeled device utilitize a light or siren when in use to alert those around that it is operating. How easily will the Segway accomodate other visual/audio alert devices that need to be piggy-backed onto the device?
It appears from the TIME article that Kamen is already talking to OSHA, which means he is moving in the right direction, but until these and other questions are answered publicly, I really doubt we will see floor managers adopt this device over a golf cart.
We have installed SETI@Home on most of the machines in our office. We're split on the subject of finding a signal, but we all think it is a nice screen saver. We were interested in keeping track of the progress of the work units on several of the machines (in case they failed to upload) and in keeping track of our user statistics, so I wrote up a little utility which can parse the state.sah files on shares and display the progress. It also polls the SETI@Home website to retrieve our group statistics. It's hosted on Sourceforge and you can download it here.
I received this message from Insight@Home yesterday. They are planning on posting updates tomorrow as soon as they get work about the court's decision. Insight is the cable provider for the various areas throughout Indiana, Illinois, and Kentucky. They also suggest that they will support a portion of the network locally until a better resolution is found.
I work for an integrator, and the most frustrating thing we do is support our systems once we have deployed them. Customers love to twiddle with our settings, modify the code, and do various other technically dangerous things. We have just begun using VNC as a remote debugging and support tool. What would usually take hours of phone calls, e-mails, and screen shots now gets covered in a few minutes. I can't count the number of site visits VNC has saved me.
Integration between my business phone and my desktop would be great. The phone could use some type of caller ID to determine which VNC connection(s) to create, and I could immediately be viewing the customers system. This would definitely save time and a lot of frustration.
I live near Indianapolis, IN, and the city recently signed an agreement with CityNet to allow them to run fibre optic lines through the existing sewer systm to connect buildings to the main fibre circuits for the city. This approach is already in use in Albuquerque, NM. Rather than ripping up our roads, a small robot travels along the sewer, laying the fibre. This is great news for those of us who drive through Indy, as there are already enough road construction projects clogging the streets.
Delco Electronics, a division of Delphi Automotive, designs and manufactures a number of radio models for automobiles around the world. They already have the capability to adjust the volume based on your speed. Another technology available in some models is "negative" noise, which cancels out road noise, making for a quieter ride. Check out this page to see what other products are currently available or are coming down the pipe. If you don't see this one, contact someone at Delco. The only function like this currently available that I know of are the SEEK and SCAN buttons.
Let's see, I can use the iSmell to recreate scents. I can get the 180 degree immersive monitor to immerse my sense of sight. My sense of hearing can be fooled by the AuSIM reCREate. The previously mentioned iFeel MouseMan covers my sense of touch. That just leaves my sense of taste, which is obviously lacking if I would use all of these products rather than go outside and take a walk. <sigh> I suppose I will just have to lick my iSmell.
Borders is making a good PR move by rescinding the CCTV face recognition technology, but the knee jerk reaction I observe in this and the previous thread really bother me. Corporations are supposed to enjoy many of the same rights as private citizens. They can own private property, own inventory, obtain credit, take out loans, etc. In essence the corporation is a private citizen, responsible for its own actions, but able to enjoy many of the same freedoms that the public do.
Now suppose a business implements a system along these lines. Another flurry of knee jerk complaints are sent, only this time to congressmen, senators, and the like. The complaints plead for new legislation to ban these devices. We would end up with laws which actually deny us our freedoms, rather than protect our privacy. I can envision such a law making call screening illegal. After all, you would be recording the person's voice for later analysis to determine if they are worthy of a call back. I can see telemarketing firms using just such a law to force us to answer the phone and speak with them.
Even without legislation backing it up, what happens when my neighbor gets upset because I install a CCTV camera in my shed because I suspect he is stealing my tools? Should I feel obligated to not install the system because I might record someone else's face?
Corporations definitely need to be sensitive to their customers feelings, but I fear the day when our freedoms become restricted behind the banner flag of privacy.
I'm all for making Linux the enterprise standard, and I truly believe that there are a number of cases in which excessive computing power is used where not needed, but this article is a bit extreme. The auther leaves out a number of items which would be necessary to make this system work.
- Monitors. How are we supposed to look at pretty X widgets? Dot matrix printout?
- Network Equipment. A NIC card does not a network make. You are at least going to need some cable and hubs.
- Cost of installing the network. In most places where this solution is viable (small service businesses, order entry, churches), a network infrastructure is not in place. Files are passed on the floppy-net. Running cables on open floor is not an option, as it is an OSHA and fire safety hazard. So you either need to purchase and install raised floors, or resituate your offices.
- Scalability. The author never mentions the target number of users in this model. I can see this system comfortably supporting five users, possibly ten if all the employees need are simple text entry forms, but just try to run three instances of StarOffice and five of Netscape on the network, and watch your 300 MHz server grind to a halt.
- Progress. This system is great... if you believe your companies needs will NEVER change. There is absolutely no room for improvement here. What happens when each clerk must scan a barcode along with an entry? Do we ask the clerks to enter the barcode by hand?
- Customer/Employee satisfaction. No one likes to work on equipment that is known to be out dated and obsolete, even if it works well. That's why high school students bring graphing calculators to algebra courses. It would be very difficult to appeal to potential customers, no matter what business you are in, when you are using a system such as this. The same goes for employees.
The $30 system not only lacks many components, but even when flushed out would be hard pressed to find a viable business for implementation. The wiser systems administrator will allow for future growth, and be sure to catalogue ALL components of the system before making a proposal to management.
More and more gaming companies are turning to DirectX for profitability reasons. Believe it or not, Microsoft really does want it to be easy to develop good games with DirectX, and that is why the API has become easier to use with each revision. Microsoft sees this as a way to sell more copies of their operating systems.
Game developers look at where the largest potential customer base is. Far and away, the glut of PC Gamers use some Windows variant. By developing with the DirectX API, they get access to this huge customer base. Sure, they also look at the potential customers that use Mac, Linux, and other OS types, but the potential sales here is just a fraction of what the Windows sales will be.
Another point to consider is that the DirectX API is developed by the makers of the OS. Microsoft can develop hooks within the operating system code to allow the DirectX API to use portions of the system that will never be available to the OpenGL developers. Much the same thing happened with Microsoft Office and Internet Explorer. Comptetitors could not keep up with the application software because the operating system made methods available to the 1st party apps that wasn't available to the 3rd party apps. For this reason, I believe that the DirectX APIs will always have a performance advantage over the OpenGL libraries on a windows machine. At least until the reparation proceedings by the DOJ are complete. But that is another issue.
Finally, there is the X-Box factor. Microsoft has promised that games developed with the DirectX API will be nearly directly portable to this gaming system. The console and PC gaming markets do not compete as directly as some believe. Although the sales of a game on a system may affect the sales of the PC version, and vice-versa, the overlap of these huge markets is small enough to merit developing for both. The console market is huge, and by allowing developers access to both the console and PC gaming markets, Microsoft is providing a huge customer base for new games.
Game developers are always going to choose the technology that will net them the most dollars. So it isn't surprising that most games on the market are developed with an API that allows developers to target the most popular (by customer base) operating environment.
You are going to need a good understanding of digital logic design before you begin, so I suggest Contemporary Logic Design by Katz. It starts at the very beginning, so you may be able to skip the first few sections, but has good info on the basics of digital circuits.
The next thing is to learn how to efficiently design the circuit you wish to run on the FPGA. Most designs are now done using VHDL. This is a C like languages for describing the circuit. The "compiled" design can then be imported into Mentor Graphics or another CAD design program. "HDL Chip Design: A Practical Guide for Designing, Synthesizing & Simulating ASICs & FPGAs Using Vhdl or Verilog" by Smith would be a good, but difficult starting point. A good understanding of the Physics behind electronics is also very helpful for understanding why you will run into certain problems with chip design.
Unfortunately, my experience has been more on the programming side than on the design side of the projects, and therefor I am not able to provide you with better references. Good Luck!
Re:Other groups working on similar stuff
on
FPGA Supercomputers
·
· Score: 1
Concerning Annapolis Micro Systems, Inc., I would highly discourage any new college grads from considering a job there. Yes, the product is extremely cool, and the job offer will be phenomenal, but speaking from experience, the work environment is awful. Although the offer will include profit sharing, the "Calculated using a propietary function each year" means you get 0% profit sharing. The 401k matching is a joke too (less than half of a percent, and only payed out one year after you pay into the 401k). I accepted a position straight out of college based on the offer and the product, and left them less than two years later. The average employee stays with the company for less than two years.
I used to work for a company that manufactures a very similar device as an add on card for PCs. True enough, a single transistor on the FPGA in each of these devices is capable of firing much faster than the clock speed of available processors. However, this is the switching speed of a single transistor on the device. When transistors are chained together, you get a phenomenon called gate delay, which is the amount of time each transistor takes to react to its inputs before the output level is changed. So if a single transistor is 1000 times faster than the clock speed of a PII, and we chain 1000 of these transistors together, our usable clock speed is now the same as the PII. Another item of worry for the designers of the image to go on the FPGA is clock tree generation. The clock signal for the FPGA must be generated in such a way that all areas of the chip are synchronized. Very often, the clock tree is the biggest problem in the design as it skews as each route gets longer.
These devices are fantastic if you have a very specific application that you wish to design them for (e.g. Image processing, voice analysis, SETI@Home). With the ability to be reconfigured at a moments notice, they are also much more reusable than an ASIC. But don't be misled by the speeds given in the marketing info. Get a demo chip from Altera or Xilinx and play with it for a while. Then make your own judgements about speed.
This will vary by the college or university that you consider attending. I graduated from the Electrical and Computer Engineering department of Purdue University in 1999 with a B.S. in Computer Engineering. My brother graduated this past December from the Computer Science department. I work with several people who graduated from one of the schools of technology. I would summarize the various degrees as follows:
A number of people in Computer Engineering later switched to Electrical Engineering or Computer Science, as they wanted to focus either more on hardware or more on software. All three degrees (EE, CE, CS) received approximately the same number of offers at graduation, and at roughly the same pay level. Students from the Technology department received just as many offers, but at a lower pay level.
I would suggest that if you liked your IT job, go for a Technology degree with a minor in management. You may not get as much utility from a CS or CE degree.
I believe that I read the same article. If I am remembering correctly, his application then was to generate a chip which could perform a FFT a signal the fastest. As with the tone recognizer, the chip used only a percentage of the funcionality of the chip. However, when he removed the programming for those unused cells, the chip failed to work. Another item mentioned in that article was the fact that when the same design was loaded on to another FPGA, it failed to run. The reason? Evidently the GA had found a way to take advantage of behavior unique to the chip, such as thicker insulators in a section of a cell, or a flaw on a certain path. In all cases, when he attempted to move the design from one chip to another, the results were not as good as on the original chip.
Here are some of the items that I would look for in the ideal apartment setting (tech or not)
Sound Dampening:
There's nothing like the rumble of Quake at high volume, but don't inflict it on me in the wee hours of the a.m. I would want to protect my neighbor from my own noise as much as I would protect myself from his. Abundant sound dampening would be a big plus.
Air Filtration:
With all of the different lifestyles (smokers, non-bathers, obscure candle lovers) I want to make sure that I only get the scents that I invite into my apartment. I currently have neighbors who smoke like chimneys, and it has seeped into every fiber of my carpeting. Then they installed a bunch of air ionizers, so now my apartment smells like a mix between an ashtray and a public pool.
Multiple Multi-Connector Outlets:
You can never have enough power/cable/telephone outlets.
No Exterior Stairs:
Either give every apartment ground floor entry, or provide an elevator. The stairs should be an emergency exit only. I've had too many drunk neighbors stumble home late at night.
Package Safe Deposit:
I hate getting home to find a note that the office is holding my package. I have to plan my day around the office hours so I can get my shipment of penguin reds. Not good. Give me a large safe deposit that I can give the FedEx/UPS guys access to.
Thick Window Coverings:
Most apartments come with your typical set of slat blinds. These are great until you try to watch a movie on your big screen at 5 pm and find the glare obscuring your view. The ideal apartment would have blinds capable of completely shutting out outside light sources.
Independent Hot Water Heater with Large Capacity:
Let me adjust my hot water to the temperature that I like, and make sure that I never run out. Same goes for the HVAC system.
And for the ideal techie apartment I would add
Electronics Closet:
An extra closet with a monster UPS/Line filter. Run all of the CAT-5, speaker, KVM, S-Video, etc. cables here. This is where I would keep all of my A/V equipment, big iron/Beowulf Rack, High Bandwidth uplink, and a router. This room would also need an independent temperature setting, as all of this equipment will be generating a lot of heat.
Pre-Routed CAT-5:
I don't want my apartment complex supplying my internet access, as I wouldn't put my faith in their capabilities. But if they would run CAT-5 throughout the apartment and leave the connections exposed next to the washer and dryer so I could hook up a router: fabulous.
Pre-Routed A/V wire:
Run speaker wire throughout the apartment. Run S-Video/Optical/and component outs throughout each room as well. Make sure the outlets are on multiple walls on each room so I have a choice of where to put my equipment, but also provide covers so the unused ones aren't exposed.
Remote Control Extenders:
Since all of my A/V equipment is in the closet, I'll need some RF/IR repeaters to get my remotes signal in there.
Before these are introduced to shop floors, there are several questions that need to be answered:
1) Stopping speed/distance.
If I'm on a Segway and Floyd is on a fork truck headed right at me, do I have enough time to brake or should I leap?
2) Rear view.
If it travels in reverse, it must have review mirrors. Otherwise, not only will you see accidents involving people going backwards, but also lots of people doing a reverse tail chase as they attempt to contort their body to look backward.
3) Load Capacity
Most often, when someone is traveling around the plant they are carrying something from one place to another. Golf carts, hand trucks, and bikes are used because they are quick, and they do not require the operator to carry the load. The Segway appears to require both hands to operate, so where does the load go? How much can it carry? Documents only, or can I throw on replacement parts for the job I'm about to do?
4) Visual/Audio Alerts
Some environments require that any wheeled device utilitize a light or siren when in use to alert those around that it is operating. How easily will the Segway accomodate other visual/audio alert devices that need to be piggy-backed onto the device?
It appears from the TIME article that Kamen is already talking to OSHA, which means he is moving in the right direction, but until these and other questions are answered publicly, I really doubt we will see floor managers adopt this device over a golf cart.
We have installed SETI@Home on most of the machines in our office. We're split on the subject of finding a signal, but we all think it is a nice screen saver. We were interested in keeping track of the progress of the work units on several of the machines (in case they failed to upload) and in keeping track of our user statistics, so I wrote up a little utility which can parse the state.sah files on shares and display the progress. It also polls the SETI@Home website to retrieve our group statistics. It's hosted on Sourceforge and you can download it here.
I received this message from Insight@Home yesterday. They are planning on posting updates tomorrow as soon as they get work about the court's decision. Insight is the cable provider for the various areas throughout Indiana, Illinois, and Kentucky. They also suggest that they will support a portion of the network locally until a better resolution is found.
I work for an integrator, and the most frustrating thing we do is support our systems once we have deployed them. Customers love to twiddle with our settings, modify the code, and do various other technically dangerous things. We have just begun using VNC as a remote debugging and support tool. What would usually take hours of phone calls, e-mails, and screen shots now gets covered in a few minutes. I can't count the number of site visits VNC has saved me.
Integration between my business phone and my desktop would be great. The phone could use some type of caller ID to determine which VNC connection(s) to create, and I could immediately be viewing the customers system. This would definitely save time and a lot of frustration.
I live near Indianapolis, IN, and the city recently signed an agreement with CityNet to allow them to run fibre optic lines through the existing sewer systm to connect buildings to the main fibre circuits for the city. This approach is already in use in Albuquerque, NM. Rather than ripping up our roads, a small robot travels along the sewer, laying the fibre. This is great news for those of us who drive through Indy, as there are already enough road construction projects clogging the streets.
Delco Electronics, a division of Delphi Automotive, designs and manufactures a number of radio models for automobiles around the world. They already have the capability to adjust the volume based on your speed. Another technology available in some models is "negative" noise, which cancels out road noise, making for a quieter ride. Check out this page to see what other products are currently available or are coming down the pipe. If you don't see this one, contact someone at Delco. The only function like this currently available that I know of are the SEEK and SCAN buttons.
Let's see, I can use the iSmell to recreate scents. I can get the 180 degree immersive monitor to immerse my sense of sight. My sense of hearing can be fooled by the AuSIM reCREate. The previously mentioned iFeel MouseMan covers my sense of touch. That just leaves my sense of taste, which is obviously lacking if I would use all of these products rather than go outside and take a walk. <sigh> I suppose I will just have to lick my iSmell.
Borders is making a good PR move by rescinding the CCTV face recognition technology, but the knee jerk reaction I observe in this and the previous thread really bother me. Corporations are supposed to enjoy many of the same rights as private citizens. They can own private property, own inventory, obtain credit, take out loans, etc. In essence the corporation is a private citizen, responsible for its own actions, but able to enjoy many of the same freedoms that the public do.
Now suppose a business implements a system along these lines. Another flurry of knee jerk complaints are sent, only this time to congressmen, senators, and the like. The complaints plead for new legislation to ban these devices. We would end up with laws which actually deny us our freedoms, rather than protect our privacy. I can envision such a law making call screening illegal. After all, you would be recording the person's voice for later analysis to determine if they are worthy of a call back. I can see telemarketing firms using just such a law to force us to answer the phone and speak with them.
Even without legislation backing it up, what happens when my neighbor gets upset because I install a CCTV camera in my shed because I suspect he is stealing my tools? Should I feel obligated to not install the system because I might record someone else's face?
Corporations definitely need to be sensitive to their customers feelings, but I fear the day when our freedoms become restricted behind the banner flag of privacy.
I'm all for making Linux the enterprise standard, and I truly believe that there are a number of cases in which excessive computing power is used where not needed, but this article is a bit extreme. The auther leaves out a number of items which would be necessary to make this system work.
- Monitors. How are we supposed to look at pretty X widgets? Dot matrix printout?
- Network Equipment. A NIC card does not a network make. You are at least going to need some cable and hubs.
- Cost of installing the network. In most places where this solution is viable (small service businesses, order entry, churches), a network infrastructure is not in place. Files are passed on the floppy-net. Running cables on open floor is not an option, as it is an OSHA and fire safety hazard. So you either need to purchase and install raised floors, or resituate your offices.
- Scalability. The author never mentions the target number of users in this model. I can see this system comfortably supporting five users, possibly ten if all the employees need are simple text entry forms, but just try to run three instances of StarOffice and five of Netscape on the network, and watch your 300 MHz server grind to a halt.
- Progress. This system is great... if you believe your companies needs will NEVER change. There is absolutely no room for improvement here. What happens when each clerk must scan a barcode along with an entry? Do we ask the clerks to enter the barcode by hand?
- Customer/Employee satisfaction. No one likes to work on equipment that is known to be out dated and obsolete, even if it works well. That's why high school students bring graphing calculators to algebra courses. It would be very difficult to appeal to potential customers, no matter what business you are in, when you are using a system such as this. The same goes for employees.
The $30 system not only lacks many components, but even when flushed out would be hard pressed to find a viable business for implementation. The wiser systems administrator will allow for future growth, and be sure to catalogue ALL components of the system before making a proposal to management.
More and more gaming companies are turning to DirectX for profitability reasons. Believe it or not, Microsoft really does want it to be easy to develop good games with DirectX, and that is why the API has become easier to use with each revision. Microsoft sees this as a way to sell more copies of their operating systems.
Game developers look at where the largest potential customer base is. Far and away, the glut of PC Gamers use some Windows variant. By developing with the DirectX API, they get access to this huge customer base. Sure, they also look at the potential customers that use Mac, Linux, and other OS types, but the potential sales here is just a fraction of what the Windows sales will be.
Another point to consider is that the DirectX API is developed by the makers of the OS. Microsoft can develop hooks within the operating system code to allow the DirectX API to use portions of the system that will never be available to the OpenGL developers. Much the same thing happened with Microsoft Office and Internet Explorer. Comptetitors could not keep up with the application software because the operating system made methods available to the 1st party apps that wasn't available to the 3rd party apps. For this reason, I believe that the DirectX APIs will always have a performance advantage over the OpenGL libraries on a windows machine. At least until the reparation proceedings by the DOJ are complete. But that is another issue.
Finally, there is the X-Box factor. Microsoft has promised that games developed with the DirectX API will be nearly directly portable to this gaming system. The console and PC gaming markets do not compete as directly as some believe. Although the sales of a game on a system may affect the sales of the PC version, and vice-versa, the overlap of these huge markets is small enough to merit developing for both. The console market is huge, and by allowing developers access to both the console and PC gaming markets, Microsoft is providing a huge customer base for new games.
Game developers are always going to choose the technology that will net them the most dollars. So it isn't surprising that most games on the market are developed with an API that allows developers to target the most popular (by customer base) operating environment.
The premise is that the ice caps melted, not that another ice age caused the cities to flood.
Why not? It works for Google.
You are going to need a good understanding of digital logic design before you begin, so I suggest Contemporary Logic Design by Katz. It starts at the very beginning, so you may be able to skip the first few sections, but has good info on the basics of digital circuits.
The next thing is to learn how to efficiently design the circuit you wish to run on the FPGA. Most designs are now done using VHDL. This is a C like languages for describing the circuit. The "compiled" design can then be imported into Mentor Graphics or another CAD design program. "HDL Chip Design: A Practical Guide for Designing, Synthesizing & Simulating ASICs & FPGAs Using Vhdl or Verilog" by Smith would be a good, but difficult starting point. A good understanding of the Physics behind electronics is also very helpful for understanding why you will run into certain problems with chip design.
Unfortunately, my experience has been more on the programming side than on the design side of the projects, and therefor I am not able to provide you with better references. Good Luck!
Concerning Annapolis Micro Systems, Inc., I would highly discourage any new college grads from considering a job there. Yes, the product is extremely cool, and the job offer will be phenomenal, but speaking from experience, the work environment is awful. Although the offer will include profit sharing, the "Calculated using a propietary function each year" means you get 0% profit sharing. The 401k matching is a joke too (less than half of a percent, and only payed out one year after you pay into the 401k). I accepted a position straight out of college based on the offer and the product, and left them less than two years later. The average employee stays with the company for less than two years.
I used to work for a company that manufactures a very similar device as an add on card for PCs. True enough, a single transistor on the FPGA in each of these devices is capable of firing much faster than the clock speed of available processors. However, this is the switching speed of a single transistor on the device. When transistors are chained together, you get a phenomenon called gate delay, which is the amount of time each transistor takes to react to its inputs before the output level is changed. So if a single transistor is 1000 times faster than the clock speed of a PII, and we chain 1000 of these transistors together, our usable clock speed is now the same as the PII. Another item of worry for the designers of the image to go on the FPGA is clock tree generation. The clock signal for the FPGA must be generated in such a way that all areas of the chip are synchronized. Very often, the clock tree is the biggest problem in the design as it skews as each route gets longer.
These devices are fantastic if you have a very specific application that you wish to design them for (e.g. Image processing, voice analysis, SETI@Home). With the ability to be reconfigured at a moments notice, they are also much more reusable than an ASIC. But don't be misled by the speeds given in the marketing info. Get a demo chip from Altera or Xilinx and play with it for a while. Then make your own judgements about speed.