Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!


Forgot your password?

Comment Correct observation, wrong understanding (Score 4, Interesting) 342

Yes, hardware is super cheap. That's because we make it all in China. China has a huge labor base that has no say whatsoever in the political system. Labor and environmental laws, lax as they are, are not enforced.

However, the Chinese economy is beginning to falter and labor unrest is on the rise. I used to think that Chinese pay would normalize with the West and that manufacturing would move to cheaper markets. Now I'm beginning to think differently. There will be major political unrest in China, supply chains will be severely disrupted, and hardware will move back to expensive labor markets, not cheap ones. Cheaper markets just don't have the infrastructure to match China and the West. Observe what happened in Thailand last year because they couldn't deal with a simple flood.

So this period of super-cheap hardware fueled by the greed of CEO's will come to an end, factories will move back to the West, and things won't just be a bit more expensive, they will be considerably more expensive because of technical expertise lost to a Chinese state in chaos or decline.

Comment QR code horizon (Score 1) 127

QR codes are extremely unlikely to persist any longer than ten years. If you've programmed a point-of-sale system like me you probably know that there are more coding schemes for barcodes than you can shake a stick at. QR codes are just the current encoding fad that will soon be replaced by something better.

Comment Incorrect analysis (Score 1) 283

I feel that this is an incorrect analysis. Depending upon the problem to be solved, all programmers will adapt the appropriate style.

When life is on the line, all programmers are conservative. When money is on the line, cautious. When writing a one-off script to test a programming technique, liberal. Even management, who tend to push programmers to be less cautious, adjust their demands for the situation.

Comment Odd question (Score 1) 1086

Computer programs are mathematical expressions, so I am using math virtually all the time at my programming job.

I have never solved a differential equation for my work, or even while programming for fun, but techniques I learned while taking Calc I-IV I no doubt use in my work without even thinking about it. Practice solving difficult math problems both stimulates and creates the areas of the brain you use when programming.

Discrete math and digitial logic design? Yes, I use what I learned there sporadically. The most important part of discrete math for most programmers is understanding computational cost. You don't need to take a discrete math course to learn Big O notation, but it might put it in better context with other ideas. I don't do hardware, but digital logic design was my course in logic. In order to read someone else's code and fix his stupid mistakes, you have to understand his flawed logic and fix it.

Signals and Systems and Probability and Random Processes? I got a terrible grade in the first class, but when what the professor was trying to teach finally began to sink in 10 years later signal processing became a lot clearer. Much software can be thought of as a signal processor. You have an input, you process it, and you have an output. Basic probability is also quite handy when programming. Pretty much the only thing I think about is a normal distribution. The ideal piece of software is correct in all cases, but you always have to consider the probability of situations when making cost trade offs or pitching an argument with management about the importance of something you want to work on.

Comment Re:They don't teach languages (Score 3, Insightful) 193

It's almost like that except they teach data structures, object-oriented programming, and other idioms that are useful to both academics and industry. They don't exactly teach you "programming languages" except maybe when you're taking compilers, and in that case it's more than the language itself, it's how to design, gramatically specify, and "compile" one language into another language (I'm taking educated guesses, I haven't taken the course but I've studied gcc).

You can't teach anything with a hypothetical language. That would be far too abstract, and difficult to grade. You have to decide upon a language and you have to inherit its flaws, design compromises, and strengths. I disagree that texts use pseudocode. At least in my experience, they use some but not a whole lot.

When teaching a student grammar, you first teach their native language. English implements all sorts of biases, trade offs, and lacks features of other languages (gender, tone, irregular verbs, and many more). You have to direct your grammatical instruction in an incomplete manner or else things would be too abstract for the student, and when students learn new languages they have to learn new features of the language as well. Once you start looking into many, many languages it's pretty damned cool because you thought you knew how languages worked based upon your own but you begin to see how languages work in general. This whole aside, of course, applies to the formal languages we use for programming.

Comment The perspective of a trading system programmer (Score 3, Informative) 443

For around seven years I programmed a derivative trading system. Unfortunately our company went out of business due to lack of capital and possibly because our large competitors were cheating (not obeying firewalls between trading for customers and trading for themselves).

I view high-frequency trading (HFT) as great for society. Here is why: What HFT gives you is the fairest and most accurate (best) price for something. When there are many, many trades, the price gap between the individual trades becomes so low that there is no chance that you'll pay too little or too much for something or that you'll wait too long for your trade to happen. I'm talking about people who just want to buy something, not HFT traders.

You're hungry and you want to cook yourself dinner. Your dinner is made up of commodities that are traded, except perhaps for the parts that you bought at the local farmers market. But you and the farmer used gas and a vehicle of some sort to make the transaction. If you rode your bike, your bike is lubed with oil and made of steel, etc. With HFT in play, everything that went into the transaction was bought and sold at the fairest price possible. Nobody got gyped because of low market volumes that day, and nobody had to pay a gigantic fee to a broker because the cost per transaction is now tiny.

Of course you have issues like the flash crash. The best way to look at the flash crash is like this. Shares of John Gotts (JG) are worth $40, based upon fundamentals (intrinsic worth) and an idea about the future. Somebody sold a gigantic number of shares of JG for $20. Excellent computer algorithms put in buy orders for JG at $15 and possibly foolish computer algorithms found a way to sell shares of JG at that price, foolish if they bought the shares for more than $15 or smart if they bought the shares for less. The spiral kept going downwards due to both foolishness and intelligence. You can see that there were many, many winners. Every algorithm that bought shares for JG at less than $40 had the potential for a huge windfall. There are no rules against creating an intelligent HFT to look for mini-flash crashes and make a killing as a result. Fortunately or unfortunately, many of the trades that did happen were unwound by the exchange.

Finally, what I need to stress here is that computers aren't trading with other computers. Teams of programmers working with traders are writing code that does their bidding. The computer is the trader's tool, not the trader itself.

Comment Re:small missing bit of information (Score 1) 263

Nope, I used CDE on a DEC Alpha and it crashed a lot. I barely used any of CDE, either. Mainly it was bringing up a shell to run non-CDE apps. The environment was ugly and unstable. I preferred fvwm, but never installed it on the machine.

Comment Re:That looks... (Score 1) 263

Are you sure about your history? I used CDE on a Dec Alpha in the mid-late 90s and the machine was beefy and fast with 24-bit color. Nobody sane would do CDE over dialup and workstations by then were moving past 8 bit color displays. I think you're thinking about the late 1980s to early 1990s. Nobody was using CDE back then. Every UNIX vendor had some proprietary window manager or a variant of mwm or twm.

CDE looked really dated, and quite honestly I hated it. It crashed a lot. It had a lot of bloated and useless applications, and it was formal without being functional. I never used anything in that big, giant toolbox taking up 25% of the screen real estate except the [non-obvious] way to pop up a shell.

mwm or the free fvwm with Motif and non-Motif apps is what I preferred to use. I never did get around to disabling CDE on the particular box I was using.

Comment T-Mobile way behind (Score 4, Funny) 102

What I like about T-Mobile is when I go into a rural area, I'm lucky to get GSM, let alone 3G. T-Mobile even drops out along the interstates. 3G only works in certain areas of large cities and along some major highways but not even all interstates.

Which makes it very difficult to bother me on vacation.

Comment Re:Etchings? (Score 3, Interesting) 394

Platinum etchings sandwiched between two layers of sapphire. Like microfilm, but with etchings. So now we can write all sorts of shit down, but where do we put it so we know whoever is digging will stop and figure out what it says?

Personally I think the need for millions of years of survivability are stupid. We've been using atomic energy for what, 60 years? I think we might find a way to put the "waste" to use long before we have to worry about such long-term data storage. That, and we'll either be advanced enough to repair radiation-induced damage in the next couple of hundred years, or civilization will have fallen and our life spans will be so short that a little radiological damage won't really matter.

My thought is that within the next few hundred years we'll be recovering resources from landfills and all sorts of spaces too toxic to deal with now.

Already we're dealing with polluted industrial sites. We'll become more and more efficient with that. We'll start to become very efficient at remining rare earths out of landfills and it will cascade from there.

Comment I don't blame Ballmer (Score 1) 444

Think about what type of programmers go to work for Microsoft and it should become immediately clear why they don't make good products.

The people who go to work for Microsoft care about money above all else. They're not going to work on something technically superior or interesting. They're going there to collect a paycheck from a gigantic machine and hope to be able to move into a big enough house with their wife and kids. The end result is irrelevant.

Slashdot Top Deals

A verbal contract isn't worth the paper it's written on. -- Samuel Goldwyn