Follow Slashdot stories on Twitter


Forgot your password?

Comment Re:Everyone makes $1,000,000 mistakes (Score 1) 377 377

SIX revisions? Hopefully only metal layers, or were some a full base spin too?

Where I work, we usually go into production on the second revision. Occasionally, the first one is good enough (usually if it's similar to a previous chip). The one I worked on most recently was a brand new design from the ground up with a new team of people, so we shipped the 3rd version (both spins were just metal layers). We (almost) never change the base layer - the case I heard about was when somebody in Marketing told someone in Engineering that there was no way they'd ever want to market a specific part to use >n MB of memory (probably 512 or so), because it was a low-end part. So they put enough address bits on the part for 512 MB - and then not too long after making it, Marketing decided that they needed a 1 GB version too. Then it just became a question of "is it worth a million dollars to be able to sell it with 1 GB?"

I'm in verification, so my whole job is to make sure we haven't made any million dollar mistakes. I produce no useful output, other than a thumbs up to management right before they start producing wafers. Some mistakes still get past us, but when a million dollars is on the line, some creative changes (often just in software) can help us keep the problem at bay.

And any time a big mistake gets by, another item gets added to our checklist. Being the first guy to make a particular mistake is usually professionally survivable; everybody makes mistakes sometimes. But being the second guy to make the same mistake does not bode well for your future...

Comment Re:This done right is a good thing. (Score 1) 130 130

My bank uses IP addresses as part of its algorithm, as a proxy for location. One of their security options is to only require 2-factor authentication when logging in from a new computer, or doing something suspicious (changing your contact information or wiring all your money to Russia, for example). It was reasonably convenient, but I eventually decided to go with the stronger security of always requiring 2FA.

The best thing you can do is probably to find a bank you trust. My local credit union is friendly, tech-savvy, and has decent rates. They also have far less of a 'screw the customer' attitude than some of the big banks. I've heard of some that will reorder all your withdrawals in a day before all your deposits to try and overdraw you so they can charge a fee. Mine does the opposite; all the deposits are processed first, so even if you do overdraw, you have a grace period until the end of the day. And at that point, you can still have an automatic overdraft transfer to protect you from being overdrawn by taking from another account, or you can have an automatic line of credit so that you only get charged interest instead of a big fee.

Comment Re: too many to list (Score 1) 258 258

I did that about 6 years ago myself. I had about 25 computers doing accelerated life testing of a chip in them, running it at elevated voltage and temperature to see if there were likely to be any reliability issues during the lifetime of the part. Unfortunately, one of the disadvantages of running a chip well beyond its rated specs is that sometimes it doesn't work - and it takes the rest of the computer down with it. So the computers would frequently write to a log file (one for each computer). I had a script running on my PC that, if a computer's log file hadn't been updated in about 5 minutes, would telnet to the appropriate IP power switch and toggle the appropriate outlet for the given computer. If that didn't work, it would try again in another 5 minutes. And if it failed 5 times in a row, it would send me an E-mail to go check it out manually (at that point, sometimes I'd find that capacitors had melted themselves off the board and embedded themselves in the floor wax below).

This same setup also had customized heatsinks - there was a fan mounted on the heatsink, and also a couple of resistive heaters attached with thermal epoxy. (I must be one of the few people in the history of the world to attach a heater to a heatsink to make the component underneath run hotter.) We had a custom controller that would monitor the temperature of the chip, and cycle the fan and heaters appropriately to maintain the target temperature. There were scripts that controlled both the voltage and temperature of the chip, but periodically dropped them down to nominal levels to run functional testing or (somewhat less often) to measure the speed of the chip, to see if it had degraded. It was a pretty nifty automated setup.

It had its bugs, though. It was DOS-based (since the diagnostic software for our chip ran in DOS), and apparently something in this version of DOS (or the computer it was running on) couldn't handle the time going past midnight; after 11:59 PM on June 3rd, it would go to saying 12:00 AM on... June 3rd. This made timekeeping rather difficult, so I had to add some logic to my scripts to determine if time ever went backwards - when it did, I knew that we must have passed midnight. The fix in that case was to have the computer reboot itself, at which point it would figure out that it was really June 4th, and time would continue marching onwards.

Comment Re:HP28C infrared input (Score 1) 258 258

And another not-exactly-a-hack-but-problem-solving-nonetheless...

When I was doing my Master's research, I wrote a program to do some optimization for me. I didn't have the forethought to allow it to save its progress, or to have it tell me how much progress it had made. Often when I ran the program, it would finish in a day or two. But one of the runs I did took well over a month to complete. It had already been running for 20 or 30 days, and the lease was expiring on my apartment. I didn't want to start the computation over (I was supposed to graduate within a month, if I had the data anyway). Luckily, I had my desktop hooked up to a UPS - but normally, that would only last for 10 or 15 minutes. Probably much less, given that the CPU was cranking away on my program.

So I disconnected the UPS's USB port so it couldn't communicate with the computer (normally, to wake it up so that it could be safely shut down), disconnected everything from it, and put the computer to sleep. Once my apartment had been emptied of all my belongings, I unplugged the UPS from the wall and carried the desktop and UPS together out to the car, then drove the van filled with all my possessions post haste to my parents' house, about 25 minutes away. The UPS was beeping the whole time to let me know that it had no AC power. Luckily, it still had some battery left when I got it plugged in, probably 40 minutes or so after unplugging it. I was then able to connect the monitor and everything else back up, wake the computer, and it kept on chugging for another week or two to get my results.

Comment Re:HP28C infrared input (Score 2) 258 258

That reminded me of something - maybe not really a hack per se, but some creative problem solving. I was at a Mac User Group meeting around 2000 or so, and somebody was supposed to do a presentation. Unfortunately, the presentation was on one laptop, and the projector was on another. Now, in many cases over many years, this is basically a non-issue - there are usually several ways to transfer files. Unfortunately, because of the laptops involved (maybe a PowerBook 5300 and a PowerBook G3?), the options were limited - they were on either side of a watershed in Apple's designs. They might have both had Ethernet, but we had no crossover cable (this was before Apple started making all their products do auto-crossover internally). They both had Infrared ports, but one was Apple's proprietary IRTalk protocol, and the other was the incompatible IrDA protocol. One had a serial port, the other had USB. One had a SCSI port, the other had FireWire. One had a floppy drive, the other had a CD-ROM.

Finally, we realized that we could hook a modem to both and set up a, well, I always thought it was called a null modem connection, but I just now discovered that's apparently something else - we connected one modem to the other with a single phone cable (no PSTN, no dial tone), and basically told one modem to "dial" and one modem to "answer", and we had our connection. (Maybe called a "dry line"? I can't find a good name for this with a quick search.) Then we just had to figure out how to FTP across that connection, and finally (close to an hour later, I think) we had the presentation on the computer that needed it.

Comment Understatement of the year... (Score 1) 113 113

"Rocket landed on droneship, but too hard for survival."

Too hard for survival? By which you really mean 'it went SPLOOIE in an impressive fireball'? ;-)

In other news, a small amount of smoke was reported aboard the Hindenburg.

Comment Re: accounts (Score 1) 269 269

Ditto here. I forget what I had to do to verify, but it was basically the same as if I had called in and wanted to do something with my account. In fact, that's exactly what it was! At the end of entering the card into my iPhone, it prompted me to call the card's service phone number, where I verified my identity, and then they activated Apple Pay. This was in December, well before the rash of articles on this topic, so wasn't just a knee-jerk reaction by my bank.

True, it wasn't as much security as the bank wanted when I wired a down payment for my house; after receiving that fax, they asked no fewer than TEN security questions. I didn't know they had that many pieces of knowledge about me!

Comment Re: ECC Memory (Score 1) 180 180

The place I used to work used to offer it as a service for $5-10 per SIMM/DIMM. If you can find a local shop that has such a tester, maybe they'd do the same. Otherwise, it's probably not terribly likely to get a low-cost solution, since the volume of such testers is pretty small.

Comment Re: ECC Memory (Score 5, Interesting) 180 180

I hadn't heard of this either, but a quick google turned up a description of false parity RAM:
TLazy;DR: To save cost where parity RAM was required by the hardware but not by the operator, modules existed that would calculate the parity bit upon reading the RAM, rather than storing the parity bit. I don't see any evidence that this type of module ever existed for ECC though.

To make sure memory is ECC, it's probably sufficient to count the memory chips on a DIMM. If there are 9 or 18 (or even 36, if it's a particularly large DIMM) identically-marked chips, that's ECC. If there are 4, 8, 16, or 32 chips, then it's probably not. If one of the chips is marked differently than the others, it might be a little more complicated; it might be possible that it's a different memory chip (e.g. if there are 4 x16 memory chips, you'd only need one x8 to get a x72 ECC DIMM, so that last chip would be different). But it's also possible that it's buffered/registered memory, and the different chip is the buffer/register.

And an aside on the topic of buying RAM for yourself:
In general, I'm not a fan of cheaping out on memory. I did computer repair for a while, and it shocked me how many problems were caused by bad RAM - from the obvious ("my computer crashes every time I boot it") to less obvious ("every few days, an application crashes") to the rather insidious ("it was running fine, and now I can't mount my hard drive any more"). It got to the point where, when a computer came in with nonspecific symptoms like that, I'd open up the computer and peek at the RAM chips first. If they had no recognizable manufacturer, they were certainly garbage. If they were recognizable but not top-tier, they probably needed some stress testing on our RAM tester. And if they were the good stuff (Samsung always had my vote there, though it's hard to find because they don't sell directly to consumers), then it was probably something else.

That's also where I learned that things like memtest86 or other software diagnostic tools were basically useless too. Only the absolute worst memory would fail a test, even a looped test run for days. Most bad RAM was marginal - after all, it probably passed some manufacturing tests. We had a rather expensive (~$4k-8k) box that would test memory, doing things like varying the supply voltage or self-heating the RAM. When RAM is installed in your PC, you're still limited by the hardware - i.e. the voltage regulator and the memory controller - which probably keep the memory as close to nominal conditions as possible. Obviously, those machines are rather hard to come by, so you have to make do with software tests instead - but a pass on those just means I can't prove it's bad; it doesn't mean the memory is good. Even if I pass all memory testing, I'll still swap/remove/replace DIMMs in an attempt to find which one is bad, because it's often not obvious.

Comment Re:"Free" exercise (Score 1) 304 304

That description basically sounds like the San Francisco Bay area to me...

If you're interested in riding, find someone else who does it, and they may have helpful tips on where to ride. As you get more experienced, you might find yourself more comfortable sharing the road with cars - but certainly initially, most people prefer to take quiet residential streets or sidewalks. (Personally, I think sidewalks are a terrible idea for bikes - nobody is looking for you, and there are lots of driveways and obstacles. But if that's the only way that people feel safe riding, so be it.)

Comment Re:Changes based on the Season (Score 1) 304 304

I used to ride a hybrid in the snow with nearly-bald medium-width tires (28-32 or so, I moved narrower over several years). I usually avoided the 8-mile commute when it was actually snowing and cars were sliding around everywhere, though. Only fell twice on those skinny tires; both were when I tried to make ~90 turns at low speed. At higher speeds, the bike still wants to stay upright, even if there's no traction.

Layers are good, but nothing helps when the temperature is negative (F) and you start breathing hard when you go up a steep hill... I could feel my alveoli freezing with every breath. Never stopped me, though...

Comment Re:"Free" exercise (Score 1) 304 304

Yes. There's a group of people that rides from San Francisco to Google in Mountain View; roughly, it's 42.5 miles, though it's a bit different for each person, because most riders: 1. don't live at the coffee shop(s) where they meet up to start the ride, and 2. don't necessarily work at Google. Once they get to Google, smaller groups branch off in the directions of all the other area tech companies.

Just from hearsay, though; I've never ridden it myself (my commute is a bit tamer), though I've considered trying their route out for fun sometime.

In case the 42.5-mile ride is not to your liking, there are alternate scenic routes that go 48 or 62 miles, at a cost of more hills.

Comment Re:Sheesh! I thought Reiser had a bad defense... (Score 1) 73 73

As a follow up, I saw something today after the verdict was announced that quoted his attorney; apparently the pre-trial negotiations didn't offer anything meaningful in terms of a reduced sentence if he were to plead guilty, so they didn't take it.

"Summit meetings tend to be like panda matings. The expectations are always high, and the results usually disappointing." -- Robert Orben