Could such a traffic shaper be built using low powered computers?
Fire up that 90MHz Pentium, install FreeBSD, and build a kernel with bridging and dummynet enabled. Dummynet is an awesome network simulator. Just set up a couple of ipfw rules for the types of traffic you want to limit, and then set the bandwidth parameters in dummynet. It's very easy to do basic stuff like you're describing, but you can do all kinds of other things with dummynet... latecy, loss, queue limits, simulating multiple hops and multipath links with different latencies. There are no tools of this caliber (let alone free!) for Windows.
All the cool MP3 related devices (eg Voyetra's AudioTron, the SliMP3, etc) are unavailable here for various reasons...
The SliMP3 is available in Australia, you just have to order it from us directly. Why? Because network MP3 players are not a mainstream product (in Australia or the USA for that matter) so it's hard to get them onto the shelves in retail outlets. Also we're a small company with "slim" margins, so we need to sell direct.
Just get together with a few of your friends to save on the shipping costs. We've sold a lot of players in Australia, you just have to import it yourself. It's actually cheaper than it would be to pick it up from a local store (by the time the reseller pays import tax and adds their markup).
Feel free to contact me if you have any questions about bringing the product in to Australia. Also, if you know anyone who might be interested in promoting the SliMP3 in Australia, please let me know!
Why is the world so hell-bent on covering up suicides, even to the point of ignoring potential suicides who are in dire need of help?
Somebody told me that the Coast Guard logs more than thirty jumpers every year at the Golden Gate bridge. If the figure is even half as high as that, why do we never hear anything about it in the local news?
In reading some of the stories about this and doing some googling, I noticed that Kan's existence hase been expunged from the two most trusted web archives, the Google cache and the Wayback machine. Why?
Maybe I can answer my own question... I was in Portland Oregon recently, and as I was driving around the city I noticed at least a dozen billboards about depression and suicide. I've heard that Portland is the #2 city in the U.S. for suicides per capita, after Seattle. Must be the rain, I guess. Anyway, seeing all those billboards every day would actually be enough to actually drive someone *into* depression.
It's damn spooky to think of how many people are out there just quietly being depressed.
The problem with the Mac web is that expectations run much higher than Apple can realistically deliver.
And whose fault is that???? AAPL is always saying things to the effect of "we can't tell you what is is, but prepare to be blown away" and "it'll be way beyond anything the rumor sites are reporting". When the ipod was about to come out, the rumor sites didn't have the slightest clue what it was, but Jobs was already hyping the "broundbreaking" mystery product.
No word on how the software works, and what features are available for automatically uploading photos as you take them.
I'd like this to automatically beam photos to a server or to my mailbox, as I shoot them. Sort of like iphoto/idisk, but not requiring me to keep my photos on someone else's server. Just an easy way to batch download them later, so I don't have to carry around flash cards.
640x480 is a bummer though. This is too expensive for a "toy" camera, and too low-res to replace the Nikon digital camera I'd take on vacation.
Also with flash cards large enough to store hundreds of high-quality photos, and IP-over-cell-phone costing a zillion per KB, it's hard to see how this would ever be worth it without a revolution in cell phone pricing.
Note that the reward isn't all-or-nothing - it's partitioned into five distinct tasks, in two separate porjects. That also means that different people can claim the prize money for each task. If two groups solve the same problem, the "better" solution gets all the money.
Unfortunately none of the displays that I've seen online have included anything in the way of input on the same serial connection, which would increase the usefulness of these status displays immensely.
How about a little box with an Ethernet interface, 40x2 VFD, IR control, and audio output to boot?
The SliMP3 has an open control protocol which makes it easy to put things up on the display, capture IR key presses, and stream audio to the device. There is also an HTTP API if you don't want to roll everything yourself, and just want automated mail notifications etc.
In Best Buy land, Performance Service Plans (PSPs) are the most important aspect of a sale
Moe: Jabs the crayon up Homer's nose Homer: DEFENSE DEFENSE Moe: "Hmmm - almost there"... jabs it a little further Homer: "Extended warranty! How can I lose?" Moe: "Ah - that's just right."
The original alphasmart is really a nifty product - it's a low cost keyboard with basic word processing capabilities and easy downloading to a PC. What's interesting is that I hear their biggest market has been k-12 schools. They're used for teaching typing skills and basic computer concepts (save, print, etc.).
This palmOS version looks great - certainly more capable than just a keyboard w/memory.
Actually, not to be pedantic or anything, but his answer does fit the letter of the question. You specified "using a finite amount of memory", not "using a constant amount of memory." Given a finite input string, any algorithm that uses any finite amount of memory (whether it be O(n), O(n^2), or O(n!) ) passes.
No, give them plenty of time. Any decent programmer picks up a pen maybe once or twice a week - it might take them a while to remember how to use it!
Seriously, knowing the syntax inside and out is important, but not half as important as knowing the algoritm and not needing a dozen passes to get it to work right.
Interview questions should NOT test obscure specifics. They should test problem solving and attention to detail. One of my favorite interview questions is:
Write a function to reverse the order of the letters in each word in a string of arbitrary length, using a finite amount of memory. eg "This is a test" becomes "sihT si a test"
If you can write that function out with pen and paper, given plenty of time, then you're a pretty good programmer.
Are you kidding me? A linked list is something you'd forget since graduation? You might not remember the code verbatim, but if you've been programming for many years, you should have no trouble at all figuring it out in a few minutes.
Please tell me you don't actually zing people on missing semicolons and undeclared variables, in your interviews.
I certainly do, but what's more important is whether (s)he got the basic algorithm correct. Writing a linked list is something they teach you in high school programming courses, and even if you've done all your programming in Perl since then, you ought to be intimately familiar with the *workings* of push and pop. Did you get the special cases right for empty lists and lists with only one item? Are there any places where you might derefence a NULL?
This is basic, basic stuff, and I swear at least 90% of our applicants for $70K+/yr programming jobs couldn't do it.
Due to complexity, programs simply cannot be written 100% perfect the first time around.
A slight modification of the infinite monkey theory states that given infinite time, a compiler, and complete test cases, anyone can write a correct program.
If I'm going to hire you, I want to know that you can code quickly and correctly. That doesn't mean your code has to work the first time through, just that I don't want you sitting there all day jumping from your text editor to gcc while you work through syntax errors, off by one errors, etc.
This is why pen & paper coding is a fantastic test.
... because you don't have a compiler to tell you when you make mistakes.
This is why it's an outstanding way to test people's knowledge. Anyone can make a program work given a compiler and sufficient time. If you can do it with just pen and paper, and remember the syntax without having other code in front of you, then you know your shit.
This is why it's a great test for interviews. You'd be amazed how many "senior C developers" we interviewed at my last company who couldn't write push() and pop() for a linked list.
(the money belonging to the css camp. it is the css camp's money. it's money.)
It is money? Huh? What is money?
i'm not so sure about the apostrophe in "money's". bob the angry flower didn't really enlighten me on that because i'm not sure i really understand the idiom "moneys worth".
Money's worth == the worth of money. I.e. "he didn't get his money's worth" means he received less goods than his money was worth.
i suspect this is a plain pluralization, however, and doesn't warrant an apostrophe at all.
Nope. BTW, if you want anyone to take your thoughs on grammar seriously, you might want to capitalize "I".
Automated placement of large through-hole parts is generally not feasible because:
due to the size of these parts, they can't be handled efficiently by machines. It would take tons of packing material to put them in reels, and the placement arm would need a very large gripper in order to pick them up. Humans do quite well at pulling them out of a big bucket.
if the part has lots of pins, it's difficult for the machine to aling. These parts are often shipped in bags, and many of them will have bent pins. People are pretty good at fixing those one the spot...
there are usually very few such parts on a board, so its not even worth optimizing it if you could. You might have a couple PCI slots, a transformer, and giant cap, etc. It's not like inserting hundreds of little resitors by hand...
Even some surface mount parts are installed by hand - you'd be amazed. Any kind of custom connector or non-standard package is probably installed by hand, even for volume production. SO-DIMM sockets, for example, are installed by hand - they have little plastic guide pins to align them.
This isn't a chip fab - they're just stuffing boards... still, nice photos of the whole process. I had a chance to see a shop like this in person, and took a bunch of photos and even some video (536K MPEG) of the process. The machines are quite mesmerizing (sp?) to watch, and it's amazing the amount of human and automated quality control that goes into manufacturing this stuff.
I get a lot of spam, so I've been working on a hardware accelleration card for/dev/null. This'll save me having to develop my own design in an expensive FPGA.
Did I mention there were quite a few servers? This room was very well ventilated, with a large fan pointing outdoors on one side of the room, and an intake vent on the other side of the room.
keeping all the generated hydrogen
UPS supplies use a slow trickle charge, so the hydrogen from the electrolysis is produced at an incredibly slow rate. I might be worried if I had banks of hundreds of batteries in a sealed undergruond vault... but let's be reasonable here!
I also hope that they're on a concrete slab or on a floor over a beam designed to hold up the unusual amount of weight.
Yep, these sat on the bottom shelves of heavy duty racks, which were bolted 6" into the concrete.
your UPS may run fine until a deep discharge or two, and then blow out the charger because you're drawing more current than the power supply was designed to deliver.
Like I said, this was just to get more run-time out of the UPS. I wasn't running it anywhere near to it's current capacity. I did a test run and monitored it for overheating before I put it into production use.
Don't be so prophylactic. Some of us know what we're doing!
Hint - if you want to be a convincing audiophile, try not to start out with the usual:
You can ABSOLUTELY hear the difference. Well, maybe you can't, but some people can.
Then, try to learn a little bit about audio:
dithering the sound back down to 16/44.1
That's called resampling. Dithering is when you add noise before the A/D conversion in order to mitigate quantization error. You can't "dither" when you're resampling to a lower bits-per-sample at a lower sample rate.
Re:Why convert DC to AC to DC?
on
Do-it-yourself UPS
·
· Score: 3, Insightful
So why not save some money and bypass this, by running the PC straight off the battery (like a laptop)?
A latop doesn't run "straight off the battery". It has a switching power supply circuit which is not entirely unlike your desktop's AC->DC supply. Most of the stuff in there runs at 3.3V, whereas the battery is 18V or more. So you still need a power supply.
For desktop PCs, a 110V->5V supply is cheaper than a DC-DC supply.
Could such a traffic shaper be built using low powered computers?
Fire up that 90MHz Pentium, install FreeBSD, and build a kernel with bridging and dummynet enabled. Dummynet is an awesome network simulator. Just set up a couple of ipfw rules for the types of traffic you want to limit, and then set the bandwidth parameters in dummynet. It's very easy to do basic stuff like you're describing, but you can do all kinds of other things with dummynet... latecy, loss, queue limits, simulating multiple hops and multipath links with different latencies. There are no tools of this caliber (let alone free!) for Windows.
Next question?
All the cool MP3 related devices (eg Voyetra's AudioTron, the SliMP3, etc) are unavailable here for various reasons...
The SliMP3 is available in Australia, you just have to order it from us directly. Why? Because network MP3 players are not a mainstream product (in Australia or the USA for that matter) so it's hard to get them onto the shelves in retail outlets. Also we're a small company with "slim" margins, so we need to sell direct.
We have found some reatilers in Europe who now carry our product, but as yet we do not have an Australian reseller yet.
Just get together with a few of your friends to save on the shipping costs. We've sold a lot of players in Australia, you just have to import it yourself. It's actually cheaper than it would be to pick it up from a local store (by the time the reseller pays import tax and adds their markup).
Feel free to contact me if you have any questions about bringing the product in to Australia. Also, if you know anyone who might be interested in promoting the SliMP3 in Australia, please let me know!
Why is the world so hell-bent on covering up suicides, even to the point of ignoring potential suicides who are in dire need of help?
Somebody told me that the Coast Guard logs more than thirty jumpers every year at the Golden Gate bridge. If the figure is even half as high as that, why do we never hear anything about it in the local news?
In reading some of the stories about this and doing some googling, I noticed that Kan's existence hase been expunged from the two most trusted web archives, the Google cache and the Wayback machine. Why?
Maybe I can answer my own question... I was in Portland Oregon recently, and as I was driving around the city I noticed at least a dozen billboards about depression and suicide. I've heard that Portland is the #2 city in the U.S. for suicides per capita, after Seattle. Must be the rain, I guess. Anyway, seeing all those billboards every day would actually be enough to actually drive someone *into* depression.
It's damn spooky to think of how many people are out there just quietly being depressed.
RIP Kan.
The problem with the Mac web is that expectations run much higher than Apple can realistically deliver.
And whose fault is that???? AAPL is always saying things to the effect of "we can't tell you what is is, but prepare to be blown away" and "it'll be way beyond anything the rumor sites are reporting". When the ipod was about to come out, the rumor sites didn't have the slightest clue what it was, but Jobs was already hyping the "broundbreaking" mystery product.
No word on how the software works, and what features are available for automatically uploading photos as you take them.
I'd like this to automatically beam photos to a server or to my mailbox, as I shoot them. Sort of like iphoto/idisk, but not requiring me to keep my photos on someone else's server. Just an easy way to batch download them later, so I don't have to carry around flash cards.
640x480 is a bummer though. This is too expensive for a "toy" camera, and too low-res to replace the Nikon digital camera I'd take on vacation.
Also with flash cards large enough to store hundreds of high-quality photos, and IP-over-cell-phone costing a zillion per KB, it's hard to see how this would ever be worth it without a revolution in cell phone pricing.
Note that the reward isn't all-or-nothing - it's partitioned into five distinct tasks, in two separate porjects. That also means that different people can claim the prize money for each task. If two groups solve the same problem, the "better" solution gets all the money.
Project A:
Task 1: Replacement BIOS - $55,000
Task 2: Kernel and XFree drivers
- 25,000
Task 3: Kernel logic: FATX and miscellaneous - 10,000
Task 4: XBE bootloader $10,000
Project B:
Run unsigned code on an Xbox without any hardware modification - $100,000
Won't the $200K reward encourage greedy developers to hide their work and end up reducing the amount of sharing that goes on?
Read the rules. Results have to be submitted to the sourceforge project, and licensed under GPL . This would be pretty pointless otherwise...
Unfortunately none of the displays that I've seen online have included anything in the way of input on the same serial connection, which would increase the usefulness of these status displays immensely.
How about a little box with an Ethernet interface, 40x2 VFD, IR control, and audio output to boot?
The SliMP3 has an open control protocol which makes it easy to put things up on the display, capture IR key presses, and stream audio to the device. There is also an HTTP API if you don't want to roll everything yourself, and just want automated mail notifications etc.
In Best Buy land, Performance Service Plans (PSPs) are the most important aspect of a sale
Moe: Jabs the crayon up Homer's nose
Homer: DEFENSE DEFENSE
Moe: "Hmmm - almost there"... jabs it a little further
Homer: "Extended warranty! How can I lose?"
Moe: "Ah - that's just right."
...several people who've worked there, in fact.
The original alphasmart is really a nifty product - it's a low cost keyboard with basic word processing capabilities and easy downloading to a PC. What's interesting is that I hear their biggest market has been k-12 schools. They're used for teaching typing skills and basic computer concepts (save, print, etc.).
This palmOS version looks great - certainly more capable than just a keyboard w/memory.
Actually, not to be pedantic or anything, but his answer does fit the letter of the question. You specified "using a finite amount of memory", not "using a constant amount of memory."
:)
Given a finite input string, any algorithm that uses any finite amount of memory (whether it be O(n), O(n^2), or O(n!) ) passes.
Semantics, they are a bitch. You got me.
$tmp_ara = explode(" ",$instr);
I don't know PHP, but it looks to me like like your function allocates memory proportional to the size of the given string. Did you read the question?
Hint: you have to modify the string in-place. Try it in C.
So make it a timed test.
No, give them plenty of time. Any decent programmer picks up a pen maybe once or twice a week - it might take them a while to remember how to use it!
Seriously, knowing the syntax inside and out is important, but not half as important as knowing the algoritm and not needing a dozen passes to get it to work right.
Interview questions should NOT test obscure specifics. They should test problem solving and attention to detail. One of my favorite interview questions is:
Write a function to reverse the order of the letters in each word in a string of arbitrary length, using a finite amount of memory. eg "This is a test" becomes "sihT si a test"
If you can write that function out with pen and paper, given plenty of time, then you're a pretty good programmer.
Are you kidding me? A linked list is something you'd forget since graduation? You might not remember the code verbatim, but if you've been programming for many years, you should have no trouble at all figuring it out in a few minutes.
Please tell me you don't actually zing people on missing semicolons and undeclared variables, in your interviews.
I certainly do, but what's more important is whether (s)he got the basic algorithm correct. Writing a linked list is something they teach you in high school programming courses, and even if you've done all your programming in Perl since then, you ought to be intimately familiar with the *workings* of push and pop. Did you get the special cases right for empty lists and lists with only one item? Are there any places where you might derefence a NULL?
This is basic, basic stuff, and I swear at least 90% of our applicants for $70K+/yr programming jobs couldn't do it.
Due to complexity, programs simply cannot be written 100% perfect the first time around.
A slight modification of the infinite monkey theory states that given infinite time, a compiler, and complete test cases, anyone can write a correct program.
If I'm going to hire you, I want to know that you can code quickly and correctly. That doesn't mean your code has to work the first time through, just that I don't want you sitting there all day jumping from your text editor to gcc while you work through syntax errors, off by one errors, etc.
This is why pen & paper coding is a fantastic test.
... because you don't have a compiler to tell you when you make mistakes.
This is why it's an outstanding way to test people's knowledge. Anyone can make a program work given a compiler and sufficient time. If you can do it with just pen and paper, and remember the syntax without having other code in front of you, then you know your shit.
This is why it's a great test for interviews. You'd be amazed how many "senior C developers" we interviewed at my last company who couldn't write push() and pop() for a linked list.
I'd be more impressed if he were measuring the trajectory of the packets. :)
I'll try to help you out here:
the apostrophe in "it's" is a correct possesive usage.
No, it certainly is not.
(the money belonging to the css camp. it is the css camp's money. it's money.)
It is money? Huh? What is money?
i'm not so sure about the apostrophe in "money's". bob the angry flower didn't really enlighten me on that because i'm not sure i really understand the idiom "moneys worth".
Money's worth == the worth of money. I.e. "he didn't get his money's worth" means he received less goods than his money was worth.
i suspect this is a plain pluralization, however, and doesn't warrant an apostrophe at all.
Nope. BTW, if you want anyone to take your thoughs on grammar seriously, you might want to capitalize "I".
Automated placement of large through-hole parts is generally not feasible because:
Even some surface mount parts are installed by hand - you'd be amazed. Any kind of custom connector or non-standard package is probably installed by hand, even for volume production. SO-DIMM sockets, for example, are installed by hand - they have little plastic guide pins to align them.
This isn't a chip fab - they're just stuffing boards... still, nice photos of the whole process. I had a chance to see a shop like this in person, and took a bunch of photos and even some video (536K MPEG) of the process. The machines are quite mesmerizing (sp?) to watch, and it's amazing the amount of human and automated quality control that goes into manufacturing this stuff.
I get a lot of spam, so I've been working on a hardware accelleration card for /dev/null. This'll save me having to develop my own design in an expensive FPGA.
I hope those batteries are properly ventilated
Did I mention there were quite a few servers? This room was very well ventilated, with a large fan pointing outdoors on one side of the room, and an intake vent on the other side of the room.
keeping all the generated hydrogen
UPS supplies use a slow trickle charge, so the hydrogen from the electrolysis is produced at an incredibly slow rate. I might be worried if I had banks of hundreds of batteries in a sealed undergruond vault... but let's be reasonable here!
I also hope that they're on a concrete slab or on a floor over a beam designed to hold up the unusual amount of weight.
Yep, these sat on the bottom shelves of heavy duty racks, which were bolted 6" into the concrete.
your UPS may run fine until a deep discharge or two, and then blow out the charger because you're drawing more current than the power supply was designed to deliver.
Like I said, this was just to get more run-time out of the UPS. I wasn't running it anywhere near to it's current capacity. I did a test run and monitored it for overheating before I put it into production use.
Don't be so prophylactic. Some of us know what we're doing!
Hint - if you want to be a convincing audiophile, try not to start out with the usual:
You can ABSOLUTELY hear the difference. Well, maybe you can't, but some people can.
Then, try to learn a little bit about audio:
dithering the sound back down to 16/44.1
That's called resampling. Dithering is when you add noise before the A/D conversion in order to mitigate quantization error. You can't "dither" when you're resampling to a lower bits-per-sample at a lower sample rate.
So why not save some money and bypass this, by running the PC straight off the battery (like a laptop)?
A latop doesn't run "straight off the battery". It has a switching power supply circuit which is not entirely unlike your desktop's AC->DC supply. Most of the stuff in there runs at 3.3V, whereas the battery is 18V or more. So you still need a power supply.
For desktop PCs, a 110V->5V supply is cheaper than a DC-DC supply.