If the customers are allowed to ad-hoc query the entire database, they may just as well have a copy to keep for themselves... So why not export the data (or replicate it out) and give it to them? You can be nice and offer to host their database server in your datacenter, but let them be responsible for running it. If they balk at the work of doing that, charge them to perform that service.
My wife and I recently had a new baby, born preemie, and we ended up spending LOTS of time in the hospital. It was driving my wife crazy to not have things to read while staying with the baby. She bought an iPhone so that she could browse the web. A little while later, I bought a Sony Reader (PRS-505, the one that came out only about a month ago) which is like the Kindle in terms of how you would use it while reading.
After a week, my wife "stole" my Sony Reader, and uses it much more than the iPhone. It's much easier to read a full page of text on the 6" screen with the higher resolution. And, it's easier to use one-handed, because there are dedicated buttons to flip through pages.
Reading a website on the iPhone reminds me of the bad early days of HTML when people would put large pages inside a scrollable frame, and you were 'looking through a port hole' to see the entire page.
The other nice thing is that she could read continuously for eight hours. The iPhone, with its backlight, can't do that.
When I was a kid, 3 decades ago(!), my father bought an electronics blocks kit that was imported from Germany to Japan. It was a great kit because each component was mounted on a block which had schematic representations of wires and components imprinted on the top. It was easy to compare the schematic in the guidebook to the components that you placed in the carrier, and when you were done, you could easily take your finished project around the house and use it. And the thing looked much cooler than the springs-inserted-into-cardboard kits.
One nice thing about this system -- when you were finished, the imprint on the blocks formed nice schematics and looked neat. Not like the ratsnest that you get with the less expensive 500-in-1 kits.
I found an example of the product at http://www.laserballs.com/teb.htm -- I don't know if they are still available. But I think it's a fantastic product.
The problem is with the oxide-based chemistry of most of the Lithium batteries. The oxide provides a source of oxygen for continued combustion after initial ignition.
Valence Technology makes a much safer lithium battery -- but the problem is that the safer chemistry has a trade off of somewhat reduced charge capacity, and these batteries cost more.
There's a video that Valence put out which you can find on YouTube where you can see spectacular Li-ion fires.
Heck, with the help of cheap electronics and cheap manufacturing capacity from China, even RC airplanes and helicopters are cheap now! You can find RC planes with everything you need for less than $50.
And, I just got a 4-channel RC helicopter for under $100, delivered... A fully assembled, ready-to-fly, with batteries, charger, and the transmitter. (Walkera Dragonfly, btw. You can see bunch of videos on YouTube with this helicopter.)
The helicopter is a good challenge, and it is fun fun fun!
It seems more likely to me that this thing will eventually blow over with the two sides agreeing to a patent portfolio sharing agreement. It's worked for AMD, and I suspect Trnasmeta would like to reach that point as well.
When I was in London, I found it amusing that cars stats were showing acceleration times for 0-to-62.5 mph (which is 100 km/h) -- a nod to underlying metrification!
When I visited Malta, the right-driver-side cars had a MPH-only speedometer, even though road signage everywhere was metric. I'm assuming that it's because the car was made for the British market using the MPH scale.
How do their noise suppression compare to foam earplugs? Do they cut noise across the board? Or just cut down the low-frequency stuff? And how much attenuation do they provide?
I'm sensitive to noise and have been using a combination of noise cancellers (Bose QuietComforts are far better than any others that I've tried) and ear plugs to survive noisy air conditioners, the din of "bull pen" cubicle farms, the hum of multi-hour plane trips, the roar of servers in machine rooms, and the rumble of gardeners at work in the early morning hours. Noise takes a big toll on you if you're exposed to it for a long time.
When my (now) wife moved in with me, she couldn't sleep with my snoring. ): She tried my earplugs which helped with the noise, but was uncomfortable to wear over a long period of time. The problem is that my earplugs were too thick and dense for her much smaller ears. After we shopped around, we found much more comfortable ear plugs for her, and she is a much happier camper.
I went through a whole bunch of earplugs before I settled on the ones that I buy for myself and the ones that I buy for my wife -- you might need to do some searching of your own to find the right combination of noise suppression and long-wearing comfort.
If you buy noise cancellers, buy good ones. My wife and I tried Sharper Image's $100 ANR folding headphones because they were on sale at 50% off... They were terrible -- they cut the low-frequency noise effectively, but added so much high-frequency hiss that we hated them. The only problem I have with the Bose QC's is they are a bit too fragile for the way I handle portable devices*.
In extreme cases, the ear-plug + ANR combo is great. This is what we do when we're flying across the pond.
As someone else already pointed out, if the system is intended to use CF FLASH, there is already wear-leveling supported by the CF card and so the FLASH can be mostly treated as a IDE device.
JFFS2 is probably not the fs to use in this case. (At least when I last looked - but that was almost 2 years ago).
Assuming that you don't intend to have the user change out CF cards willy-nilly, I think one possibility to consider is to have a small battery-backed SRAM MTD block device be your journaling partition. SRAM's are fast and fairly low power (although at the expense of wiring real-estate).
Now, which journaled fs is the question - I haven't peeked under the covers on fs's in a long time, but my recollection is that ext3 puts the journal on the same partition as the filesystem itself, which won't work with scheme. I know that there are fs's on other OS (Solaris) where you can put the journal on a different partition.
I also second the idea that developers and QA's normally should all have their own database running on separate servers. Ideally, the developers and QA run against a smaller database that is (ideally) populated from scratch with a small dataset to speed development; and then for release testing use a much larger populated database or (if that's too difficult) a copy of the production database that has been appropriately scrubbed to get rid of confidential data.
The database offerings from the various major vendors allow you to "quiesce" the database which suspends new transactions, completes all pending transactions, and then ensure that all data and log are flushed to disk. Then, with the production system paused, take a hot point-in-time snapshot of the filesystem, effectively giving you a compelte database dump in a few seconds. (This requires a storage system that allows you to make snapshots -- NetApp's do this, for example.) Resume the database to let the production system continue, and then copy the snapshot of database files to another server and reconstruct a clone of the database.
Run the appropriate trimming/cleansing/schema update on the clone database, and then make a snapshot of THAT. You can then revert the database to a knowing starting point as you like. If your development requires schema changes, don't let developers make the schema changes directly -- insteead, insist on schema change DDL's to be scripted, and reapply the script to the snapshot at each refresh.
When doing the final release testing, get the latest snapshot of the production database, run the update scripts, and run the tests. If everything looks good, make another snapshot of the production database, and apply the updates to the production database.
I bought my Segway when it first came out... At the time, I lived about 4 miles from work, and I commuted to/from work almost every day. Back then, it took about 20 minutes to drive from home to the office parking structure, and then from there to my desk. With the Segway, it took about the same amount of time from my front door to my desk (I went directly into the office with my Segway). I also used the Segway to zip to the market for groceries. It just felt better than driving my car.
I had a great time, and was "on my feet" far more than I had been before getting the Segway. It's a lot of fun.
About a year after getting it, I went skiing for the first time in my life, and found that the Segway riding techniques translated well to skiing -- I was skiing blue trails on the 2nd day on the slopes, and was hitting black diamonds by the 4th.
Do I need it? No, I can survive without it. But I sure miss it these days -- I now work an hour's drive each way from home. These days, I sometimes ride my bicycle in conjunction with public transit to get to work. It's not as fun.
Perhaps I'm guilty of buying a useless toy... But I think my $'s were better spent on the Segway than if I had spent it on a Hummer H2!:)
How well does the book cover the subject of stereoscopic 3D? BTW, for anyone reading this -- does anyone know how to get Google Earth to do stereoscopic 3D?
I recently had a perfect occasion to charter a small plane -- I had to make a service call in the following cities:
Louisville, KY Dayton, OH Fort Wayne, IN Toledo, OH Cleveland, OH
Each service call lasted about 15 minutes - 30 minutes, and I had to get them done in as short a time as possible.
I was able to fly between those cities for about $1,200 - and spent another $300 or so for car rental/taxi. It took about 15 minutes at each airport to board and take off, and about 5 minutes at each airport to land and deplane. (Take offs take a little longer because of takeoff preparations.) Considering that I booked the flight only a day before, it was about on part with commercial flights, and was much more convenient.
I found the service (Interstate Air Taxi) by googling for Air Taxi. I also found the company listed at CharterHub.
If you are just marginally out of cell phone range, you can just buy an antenna and appropriate connector cable from Wilson Antenna or from Radio Shack. I've had "2 bar" situations go to 5 bars, and went from "no service" to 1 to 2 bars in a basement of a concrete building. The antenna and connector cable will set you back about $30-$40, but is probably plenty good enough if you know that the signal is just barely making it.
Corporate espionage can include things like customer and vendor lists, and product pricing details. And, many companies are quite secretive about their leading edge R&D.
My wife has the exact same problems -- she can spend about three hours a day on a notebook keyboard and touchpad, but cannot go for more than about 30 minutes on a regular keyboard and mouse.
All three of these products have a touchpad controller, and has notebook style keys.
It seems for people with pains in their arms/wrists, a full-stroke regular keyboard may be painful to type on.
If you're doing this as a hobby, and are not looking to make this into a business, I suggest taking balsa wood or modeler's clay and hand build the enclosure to prototype the rough idea. Then, you can sand/smooth/paint it carefully to have a "finished product", or hand your prototype to an art school student (someone that is studying commercial industrial design) -- and ask him to build it in his 3D CAD/CAM class. I knew a guy that made beautiful SLA product prototypes in class - stuff that looked very real.
If you're trying to make real products, you need to get a professional industrial designer and mechanical engineer at some point.
I was implicitly blaming bad driver/kernel design when I said that there was a timing problem caused by the processor being too fast. I'm not talking about a timing problem within a single IO/memory bus access cycle -- I'm talking about driver code that breaks because some critical section of code used to run slow enough while a peripheral was processing a request, but due to faster processing, was now allowed to livelock.
This sounds like a timing problem -- the processors are too fast, causing the system to slow down.
There was a similar problem that I had to wrestle with on a Linux when runnig 3Ware RAID controllers w/ RHEL3 on fast dual-processor servers. When battery backed write caching was turned on, the fast acceptance of IO requests (by the CPU's and then by the hardware RAID controller) lead to awesome sustained performance for short bursts, but under constant load would suddenly hit a wall and then IO would practically hang. (https://bugzilla.redhat.com/bugzilla/show_bug.cgi ?id=121434)
I worked at an Internet startup that spent almost zero on office furniture. Our desks were doors mounted on top of filing cabinets. But everyone got Aeron chairs -- and they had a selection of chair sizes to suit everyone.
I have to say that the Aeron made it possible to work long hours -- even with 14 hour days, I felt fine. That wasn't the case with other office chairs, before or since. While it was popular to scoff at the Aeron chairs during the dot-com-crash days, I actually think those chairs were actually sensible spending by the companies.
Cheap sub-$100 chairs are crap. If you're going to buy ONE chair for yourself, you're better off going to a good retail dealer and have them educate you on the product, and choose/adjust the seat that fit you. And, if they're a true high-quality retailer, they should be willing to take the seat back even after you've taken it home for a couple weeks. If you're going to spend money on making yourself productive, be generous to yourself.
Is your question aimed at choosing a Linux distro to be targeted for a variety of embedded targets? Or do you mean you want a Linux distro for running various development tools for whatever (non-Linux) embedded projects?
If the focus is on picking a Linux that you want to embed, Montavista is the popular Linux vendor -- it seems like a lot of silicon and library vendors certify/support development on MV. They provide tools that help you with cross-platform configuration management. Of course, you pay for MV.
If you're trying to go "cheap" and are willing to do the legwork yourself, I suggest rolling your own, building the kernel and building uClibc (or glib if you have lots of memory/storage on your target).
If you're main point is to have a Linux desktop in which to do development work, I would lean toward Redhat, if only because it seems like most software vendors certify the software to run on Redhat. If you're running any hardware in your PC, driver support for the hardware will probably require a specific OS (a JTAG tool that I had, for example, required me to run a certain release of Redhat in order to work).
If the customers are allowed to ad-hoc query the entire database, they may just as well have a copy to keep for themselves... So why not export the data (or replicate it out) and give it to them? You can be nice and offer to host their database server in your datacenter, but let them be responsible for running it. If they balk at the work of doing that, charge them to perform that service.
My wife and I recently had a new baby, born preemie, and we ended up spending LOTS of time in the hospital. It was driving my wife crazy to not have things to read while staying with the baby. She bought an iPhone so that she could browse the web. A little while later, I bought a Sony Reader (PRS-505, the one that came out only about a month ago) which is like the Kindle in terms of how you would use it while reading.
After a week, my wife "stole" my Sony Reader, and uses it much more than the iPhone. It's much easier to read a full page of text on the 6" screen with the higher resolution. And, it's easier to use one-handed, because there are dedicated buttons to flip through pages.
Reading a website on the iPhone reminds me of the bad early days of HTML when people would put large pages inside a scrollable frame, and you were 'looking through a port hole' to see the entire page.
The other nice thing is that she could read continuously for eight hours. The iPhone, with its backlight, can't do that.
Now exactly the same as Adobe Illustrator and Photoshop, but much cheaper. And they've been around a long time.
When I was a kid, 3 decades ago(!), my father bought an electronics blocks kit that was imported from Germany to Japan. It was a great kit because each component was mounted on a block which had schematic representations of wires and components imprinted on the top. It was easy to compare the schematic in the guidebook to the components that you placed in the carrier, and when you were done, you could easily take your finished project around the house and use it.
And the thing looked much cooler than the springs-inserted-into-cardboard kits.
One nice thing about this system -- when you were finished, the imprint on the blocks formed nice schematics and looked neat. Not like the ratsnest that you get with the less expensive 500-in-1 kits.
I found an example of the product at http://www.laserballs.com/teb.htm -- I don't know if they are still available. But I think it's a fantastic product.
The problem is with the oxide-based chemistry of most of the Lithium batteries. The oxide provides a source of oxygen for continued combustion after initial ignition.
Valence Technology makes a much safer lithium battery -- but the problem is that the safer chemistry has a trade off of somewhat reduced charge capacity, and these batteries cost more.
There's a video that Valence put out which you can find on YouTube where you can see spectacular Li-ion fires.
Heck, with the help of cheap electronics and cheap manufacturing capacity from China, even RC airplanes and helicopters are cheap now! You can find RC planes with everything you need for less than $50.
And, I just got a 4-channel RC helicopter for under $100, delivered... A fully assembled, ready-to-fly, with batteries, charger, and the transmitter. (Walkera Dragonfly, btw. You can see bunch of videos on YouTube with this helicopter.)
The helicopter is a good challenge, and it is fun fun fun!
It seems more likely to me that this thing will eventually blow over with the two sides agreeing to a patent portfolio sharing agreement. It's worked for AMD, and I suspect Trnasmeta would like to reach that point as well.
When I was in London, I found it amusing that cars stats were showing acceleration times for 0-to-62.5 mph (which is 100 km/h) -- a nod to underlying metrification!
When I visited Malta, the right-driver-side cars had a MPH-only speedometer, even though road signage everywhere was metric. I'm assuming that it's because the car was made for the British market using the MPH scale.
How do their noise suppression compare to foam earplugs? Do they cut noise across the board? Or just cut down the low-frequency stuff? And how much attenuation do they provide?
Thanks!
I'm sensitive to noise and have been using a combination of noise cancellers (Bose QuietComforts are far better than any others that I've tried) and ear plugs to survive noisy air conditioners, the din of "bull pen" cubicle farms, the hum of multi-hour plane trips, the roar of servers in machine rooms, and the rumble of gardeners at work in the early morning hours. Noise takes a big toll on you if you're exposed to it for a long time.
e =AM%20Safety%20Master&GroupID=13&cookie_test=1
e =AM%20Safety%20Master&GroupID=10
:)
When my (now) wife moved in with me, she couldn't sleep with my snoring. ): She tried my earplugs which helped with the noise, but was uncomfortable to wear over a long period of time. The problem is that my earplugs were too thick and dense for her much smaller ears. After we shopped around, we found much more comfortable ear plugs for her, and she is a much happier camper.
I went through a whole bunch of earplugs before I settled on the ones that I buy for myself and the ones that I buy for my wife -- you might need to do some searching of your own to find the right combination of noise suppression and long-wearing comfort.
This is the "small" earplug that I get for my wife: http://www.am-safety.com/category.asp?catalog_nam
This is the "big" earplug that I get for myself for maximum noise suppression; http://www.am-safety.com/category.asp?catalog_nam
If you buy noise cancellers, buy good ones. My wife and I tried Sharper Image's $100 ANR folding headphones because they were on sale at 50% off... They were terrible -- they cut the low-frequency noise effectively, but added so much high-frequency hiss that we hated them. The only problem I have with the Bose QC's is they are a bit too fragile for the way I handle portable devices*.
In extreme cases, the ear-plug + ANR combo is great. This is what we do when we're flying across the pond.
* Assurion hates me, heh...
As someone else already pointed out, if the system is intended to use CF FLASH, there is already wear-leveling supported by the CF card and so the FLASH can be mostly treated as a IDE device.
JFFS2 is probably not the fs to use in this case. (At least when I last looked - but that was almost 2 years ago).
Assuming that you don't intend to have the user change out CF cards willy-nilly, I think one possibility to consider is to have a small battery-backed SRAM MTD block device be your journaling partition. SRAM's are fast and fairly low power (although at the expense of wiring real-estate).
Now, which journaled fs is the question - I haven't peeked under the covers on fs's in a long time, but my recollection is that ext3 puts the journal on the same partition as the filesystem itself, which won't work with scheme. I know that there are fs's on other OS (Solaris) where you can put the journal on a different partition.
Good luck.
I also second the idea that developers and QA's normally should all have their own database running on separate servers.
Ideally, the developers and QA run against a smaller database that is (ideally) populated from scratch with a small dataset to speed development; and then for release testing use a much larger populated database or (if that's too difficult) a copy of the production database that has been appropriately scrubbed to get rid of confidential data.
The database offerings from the various major vendors allow you to "quiesce" the database which suspends new transactions, completes all pending transactions, and then ensure that all data and log are flushed to disk. Then, with the production system paused, take a hot point-in-time snapshot of the filesystem, effectively giving you a compelte database dump in a few seconds. (This requires a storage system that allows you to make snapshots -- NetApp's do this, for example.) Resume the database to let the production system continue, and then copy the snapshot of database files to another server and reconstruct a clone of the database.
Run the appropriate trimming/cleansing/schema update on the clone database, and then make a snapshot of THAT. You can then revert the database to a knowing starting point as you like. If your development requires schema changes, don't let developers make the schema changes directly -- insteead, insist on schema change DDL's to be scripted, and reapply the script to the snapshot at each refresh.
When doing the final release testing, get the latest snapshot of the production database, run the update scripts, and run the tests. If everything looks good, make another snapshot of the production database, and apply the updates to the production database.
Done right, you can always roll back the test
I bought my Segway when it first came out... At the time, I lived about 4 miles from work, and I commuted to/from work almost every day. Back then, it took about 20 minutes to drive from home to the office parking structure, and then from there to my desk. With the Segway, it took about the same amount of time from my front door to my desk (I went directly into the office with my Segway). I also used the Segway to zip to the market for groceries. It just felt better than driving my car.
:)
I had a great time, and was "on my feet" far more than I had been before getting the Segway. It's a lot of fun.
About a year after getting it, I went skiing for the first time in my life, and found that the Segway riding techniques translated well to skiing -- I was skiing blue trails on the 2nd day on the slopes, and was hitting black diamonds by the 4th.
Do I need it? No, I can survive without it. But I sure miss it these days -- I now work an hour's drive each way from home. These days, I sometimes ride my bicycle in conjunction with public transit to get to work. It's not as fun.
Perhaps I'm guilty of buying a useless toy... But I think my $'s were better spent on the Segway than if I had spent it on a Hummer H2!
How well does the book cover the subject of stereoscopic 3D?
BTW, for anyone reading this -- does anyone know how to get Google Earth to do stereoscopic 3D?
Cool! I'd love to see if they can adapt this to a Segway-like transporter!
I recently had a perfect occasion to charter a small plane -- I had to make a service call in the following cities:
Louisville, KY
Dayton, OH
Fort Wayne, IN
Toledo, OH
Cleveland, OH
Each service call lasted about 15 minutes - 30 minutes, and I had to get them done in as short a time as possible.
I was able to fly between those cities for about $1,200 - and spent another $300 or so for car rental/taxi. It took about 15 minutes at each airport to board and take off, and about 5 minutes at each airport to land and deplane. (Take offs take a little longer because of takeoff preparations.) Considering that I booked the flight only a day before, it was about on part with commercial flights, and was much more convenient.
I found the service (Interstate Air Taxi) by googling for Air Taxi. I also found the company listed at CharterHub.
Fast.
1000 sheet capacity.
Duplex printing.
High toner capacity.
Networkable.
And cheap.... $50.
Looks arond salvage / surplus companies -- that's how I got one for $50, and another for $100...
If you are just marginally out of cell phone range, you can just buy an antenna and appropriate connector cable from Wilson Antenna or from Radio Shack. I've had "2 bar" situations go to 5 bars, and went from "no service" to 1 to 2 bars in a basement of a concrete building. The antenna and connector cable will set you back about $30-$40, but is probably plenty good enough if you know that the signal is just barely making it.
Corporate espionage can include things like customer and vendor lists, and product pricing details. And, many companies are quite secretive about their leading edge R&D.
My wife has the exact same problems -- she can spend about three hours a day on a notebook keyboard and touchpad, but cannot go for more than about 30 minutes on a regular keyboard and mouse.
All three of these products have a touchpad controller, and has notebook style keys.
It seems for people with pains in their arms/wrists, a full-stroke regular keyboard may be painful to type on.
Sony VAIO keyboard
IBM Keyboard with UltraNav
Adesso keyboard
If you're doing this as a hobby, and are not looking to make this into a business, I suggest taking balsa wood or modeler's clay and hand build the enclosure to prototype the rough idea. Then, you can sand/smooth/paint it carefully to have a "finished product", or hand your prototype to an art school student (someone that is studying commercial industrial design) -- and ask him to build it in his 3D CAD/CAM class. I knew a guy that made beautiful SLA product prototypes in class - stuff that looked very real.
If you're trying to make real products, you need to get a professional industrial designer and mechanical engineer at some point.
I was implicitly blaming bad driver/kernel design when I said that there was a timing problem caused by the processor being too fast. I'm not talking about a timing problem within a single IO/memory bus access cycle -- I'm talking about driver code that breaks because some critical section of code used to run slow enough while a peripheral was processing a request, but due to faster processing, was now allowed to livelock.
This sounds like a timing problem -- the processors are too fast, causing the system to slow down.
i ?id=121434)
There was a similar problem that I had to wrestle with on a Linux when runnig 3Ware RAID controllers w/ RHEL3 on fast dual-processor servers. When battery backed write caching was turned on, the fast acceptance of IO requests (by the CPU's and then by the hardware RAID controller) lead to awesome sustained performance for short bursts, but under constant load would suddenly hit a wall and then IO would practically hang. (https://bugzilla.redhat.com/bugzilla/show_bug.cg
I worked at an Internet startup that spent almost zero on office furniture. Our desks were doors mounted on top of filing cabinets. But everyone got Aeron chairs -- and they had a selection of chair sizes to suit everyone.
I have to say that the Aeron made it possible to work long hours -- even with 14 hour days, I felt fine. That wasn't the case with other office chairs, before or since. While it was popular to scoff at the Aeron chairs during the dot-com-crash days, I actually think those chairs were actually sensible spending by the companies.
Cheap sub-$100 chairs are crap. If you're going to buy ONE chair for yourself, you're better off going to a good retail dealer and have them educate you on the product, and choose/adjust the seat that fit you. And, if they're a true high-quality retailer, they should be willing to take the seat back even after you've taken it home for a couple weeks. If you're going to spend money on making yourself productive, be generous to yourself.
Is your question aimed at choosing a Linux distro to be targeted for a variety of embedded targets? Or do you mean you want a Linux distro for running various development tools for whatever (non-Linux) embedded projects?
If the focus is on picking a Linux that you want to embed, Montavista is the popular Linux vendor -- it seems like a lot of silicon and library vendors certify/support development on MV. They provide tools that help you with cross-platform configuration management. Of course, you pay for MV.
If you're trying to go "cheap" and are willing to do the legwork yourself, I suggest rolling your own, building the kernel and building uClibc (or glib if you have lots of memory/storage on your target).
If you're main point is to have a Linux desktop in which to do development work, I would lean toward Redhat, if only because it seems like most software vendors certify the software to run on Redhat. If you're running any hardware in your PC, driver support for the hardware will probably require a specific OS (a JTAG tool that I had, for example, required me to run a certain release of Redhat in order to work).
Good luck.