Researchers Test Developer Biometrics To Predict Buggy Code
Microsoft Research should also track how far the individual is working away from the main office of his company, because that has far more of an effect on bugs than any biometric reading. I recommend that they develop a special laser and a series of geostationary satellites and ground repeater stations. The total round trip time of the laser pulse will be a measure of how buggy the developer's code is.
1) Microsoft Research is wasting an awful lot of money to conclude that the reason why Microsoft's software is so terrible is that it's being written by outside companies in India.
2) Microsoft's well-paid American and European programmers are producing good or at least above average code, as would be expected.
3) Quality evaporates when they use foreign and H1B workers, who are educated in substandard universities, inexperienced in engineering, and/or do not have English superliteracy. [I've discussed elsewhere that basic language literacy is not enough to be a good programmer---you need to have enough language expertise to communicate without any ambiguity whatsoever to write good code because of the essential nature of interpersonal communication. By the same token, if you're writing software for Indians speaking Hindi your entire team should be Hindi-speaking Indians.]
Tesla Model S Hacking Prize Claimed
Six digits? What is this, the mid-1980's?
Selectively Reusing Bad Passwords Is Not a Bad Idea, Researchers Say
I have passwords for hundreds of services.
You must be joking about memorization. I have three memorized.
Harvesting Energy From Humidity
Way too high tech for remote areas.
Bringing clean water to remote areas in Africa means using parts that can be sourced from those remote areas using skills taught in those remote areas or else it's back to dirty water in a few years.
Think about aliens crashing a ship on Earth. Where would we get the parts to fix it? Alien technology is worse than useless when it fails.
Obama Administration Says the World's Servers Are Ours
Effectively, though perhaps not in the strict legal definition, the purpose of a corporation is to make a profit.
As we can plainly see from Microsoft's conduct over the years, they will break whatever laws they can get away with to make that profit. This lawsuit isn't about Hotmail users' e-mail messages, this is about illegal or otherwise objectionable behavior that they are trying to shield in other countries.
If you're worried about your e-mail and data stored on Microsoft's servers, then let's not mix that up with a corporation's ability to hide illegal, unethical, or immoral behavior within a more compliant state's physical borders.
First Release of LibreSSL Portable Is Available
There is a lot of political discussion on this thread. How about a bit of technical discussion?
I spent about 20-30 minutes code reviewing the first few files in ssl/*.c.
The codebase looks better than most C code I look at. The indentation is a pleasure to look at.
I did notice a few issues. Wrappers are apparently still being used around memory allocation functions. I don't know if this is for API compatibility or what. There is more casting than I would like to read. I hope it is all absolutely necessary. If you look at, for example, RSMBLY_BITMASK_MARK, that code is absolutely horrible. Never write code like that. To me that is how not to write C, C++, Perl, Java, or PHP (all would look very similar).
Lots of gotos. Not necessarily considered harmful. May not indicate bad coding practices, but something to think about. gotos inside of a case-switch. Yikes. Hope you really needed to do that.
Functions are very long. Linus Torvalds's rule of thumb for a function is that it should fit nicely on a screen. You should be able to look at it, conclude, that does x, and move on to the next function.
There you have it. I debug other people's code for a living, and sometimes write my own.
The Pentagon's $399 Billion Plane To Nowhere
The article's summary seems to imply that US taxpayers are on the hook for $1 trillion. That's not quite right:
"But the armed services are not the only customers. Eight international partners have signed on to help build and buy the planes: the U.K., Italy, the Netherlands, Turkey, Canada, Australia, Denmark, and Norway. While not involved in the development of the plane, Israel and Japan are buying it through the foreign military sales process, and South Korea recently indicated that it would buy at least 40 of the aircraft."
The US is set to buy 2,443 planes, but international sales will offset at least some of the expense both directly and indirectly.
Coddled, Surveilled, and Monetized: How Modern Houses Can Watch You
Around half of Americans are renters. You won't see any of these things in rental units for decades. Rental units use the cheapest available everything at the time of construction and they're not ever updated. They become the bad part of town over 50 or so years as they decay, and eventually either they are town down or become decrepit. At nearly every apartment I've ever lived in, virtually everything was original: 40-50 year old wiring, 1960's or 1970's mercury-style thermostat, nothing ever electronic. For a few years, I lived in an expensive apartment building that was only around 15 year old. Even everything there was the lowest tech possible.
Do I care that rich people living in multi-million-dollar homes have privacy-violating things? Not until decades from now when they start actually appearing in the places where most people live.
Pretty much the only difference in what I would call the core infrastructure in my apartment from 1970 would be the lightbulbs have been switched to CFL. I could re-wire the wall switches to be electronic, and do a few things here and there, but why bother? I don't own the place. I'm a technie, and I just don't care about any of these things.
Tired of Playing Cyber Cop, Microsoft Looks For Partners In Crime Fighting
Microsoft has been writing poor quality software for my entire life.
The best programmers do not go to work for Microsoft. Maybe that was the case in the early 90's but it hasn't been true for decades.
To make matters worse, Microsoft does a lot of its programming in India. We all know that Indian programming is of poor quality, and the reason is not because Indian programmers are much less competent. It has more to do with the fact that in programming if two parties can't communicate completely unambiguously in one language then they have no hope of writing good software. Programmers have to be more than fluent in the language they speak with each other, they have to be scientifically precise.
People go to work for Microsoft because it's safe. There's no risk of the company going under. Risk minimizers don't write good software, because they're not very creative. They tend to keep patching up the same old crap rather than writing something new that works better.
At mature software companies hundreds of non-programmers are telling the programmers what to do, and it only gums up the works. You wind up not working efficiently, because you need too much sign off to get anything done. And once you get signoff, the hundreds of non-programmers are dictating your schedule, not quality of the code or whether it is completed to your satisfaction.
There is no one to clean up Microsoft's mess but themselves. Probably the best solution would be for the company to split up. The people who make the Xbox are probably weighed down by the rest of the company's ineptitude. I'd like to see those guys go their own way.
Ask Slashdot: What Inspired You To Start Hacking?
If by hacking you mean programming, then nothing really inspired me. You had to be a programmer to get something useful out of a Commodore 64 besides playing games. So I guess you could say wanting to do something besides play games inspired me to be a programmer.
Become a Linux Kernel Hacker and Write Your Own Module
This item hit reddit earlier, so I'll repeat my advice.
It might be easier to begin with a kernel module that is useful to you, and either work with the developer or find a module where the developer has lost interest instead.
I worked on two kernel modules, one called oplbeep and the other was totem. Both very simple things that required porting when interfaces changed. Today I work on the vmware modules which are always requiring tweaking (at least unless you upgrade to the latest version of VMWare more regularly) but I do that just to get my work done.
The Flaw Lurking In Every Deep Neural Net
The human brain has multiple neural nets and a voter.
I am face blind and completely non-visual, but I do recognize people. I can because the primary way that we recognize people is by encoding a schematic image of the face, but many other nets are in play. For example, I use hair style, clothing, and height. So does everybody, though. But for most people that just gives you extra confidence.
Conclusion: Neural nets in your brain having blind spots is no problem whatsoever. The entire system is highly redundant.
The Sci-Fi Myth of Robotic Competence
When people characterize HFT (high-frequency trading), they conveniently leave out the programmers and the human traders. HFT is done by programmers and human traders. The notion that computers are trading with themselves is absurd. Programmers write the code, and traders supply the algorithms, ideas, guidance, experience, etc. Sometimes the programmers are also traders, but you get the idea.
When people use a computer they don't think about the thousands of people who wrote the software they are using. They think of a computer as a monolithic thing, when in reality everything that a computer does is people doing work for other people. When people "use" computers, the programmers do the work, or rather they did the work. The computer itself does nothing by itself.
Robots are the same way. They execute instructions written by people. A robot is simply another interface that programmers present to other people. To think about robots separate from their programmers is silly. The programmers reap the rewards from and ought to bear the responsibilities of robotics.
In order to simplify matters, I'm leaving out the hardware designers, the electrical engineers. Without them, programming would be pointless. But the same argument holds true. The robot is an expression of the hardware and software people. Did the people at Craftsman do a good job making that wrench you used to replace the fan belt on your car? The wrench didn't make itself, people did. Craftsman wrenches are damned good products because of the people who make them. A wrench doesn't stand alone as a separate entity, and neither should robots.
Many, many generations in the future, robots may become viral and start making other robots. They might even consider themselves to be separate from their human makers, but that would be the height of arrogance on their part, assuming that people programmed them to be able to experience arrogance.
Head of MS Research On Special Projects, Google X and Win 9
A bit condescending of an attitude for someone that is working at Microsoft, a company that is clearly on the wane. People don't go to Microsoft to create anything great. They go there for a stable income for their family and mortgage.
Programming Language Diversity On the Rise
Programming is a set of thought processes that are being applied regardless of the language or environment being used. The other part is markup or translation, and that part of the work should be minimized.
I've been programming since I was a little kid and now I'm almost 40. In developing my craft over 30 years I've focused on learning how to write solid code that can be easily modified by the next person. The software that you write needs to read like Hemingway: short, simple, and declarative. When you think of programming in terms of languages, you're doing it wrong.
One day we will instruct computer AIs completely in a natural language like English or another language. The more cumbersome the markup and translation, the further you stray from that goal.
Thinking narrowly, there are features of languages that have proven to be useful over time, such as object orientation. The key here though is abstraction. However we do it, the programmers' job is to move electrons around. At every abstraction we should strive to simplify and in my mind I see a convergence such as the natural language interface. To facilitate it we need to think about what it really means to be a programmer, what it has always meant, and what it will always mean: To convey an accurate and modifiable sequence of instructions to some device in the most efficient way possible.
C++ and the STL 12 Years Later: What Do You Think Now?
The best programming languages work like and use the same parts of the brain that reading and writing do. It is no surprise that the language of mathematics reads left to right, uses Latin symbols, and roughly follows European languages in grammar and syntax. (In certain parts of the Arab-speaking world, some mathematical expressions are written left to right, but this is not universal.)
As the syntaxes of programming languages become more elaborate, the cognitive load involved in programming increases. As other parts of the brain become involved, programming error rates increase, not to mention the common sense notion that completely learning the language becomes unachievable for most people and every programmer works with his or her own subset making code maintenance difficult.
C++ with its feature-packed templates makes people who love a language to have every concept from computer science packed into it happy, but it doesn't serve programmers and hence humanity very well.
The ideal programming interface is you telling the computer exactly what you want it to do in English, not the the opposite. We're decades away from an AI that can automatically write code, but making the programmer's link to the computer more difficult to convey unambiguous instructions seems to be going in the opposite direction.
How Concrete Contributed To the Downfall of the Roman Empire
Concrete contributed to the rise of Rome, and this part of Rome remains today because concrete laid by Romans is still being used in 2014.
Slashdot is written in Roman Latin letters. Hundreds of millions of people speak modern versions of Rome's Latin language. The language of modern science and medicine is Latin.
Did Rome really fall or are we Roman?
Security At Nuclear Facilities: Danger Likely Lurks From Within
The biggest danger from nuclear is acute exposure and death to thousands and perhaps millions of human and humanlike species in the future as storage facilities are pilfered over the next 1,000,000-10,000,000 years.
How many of you could read a warning written in cuneiform? That language is one of the earliest known languages and is only about 5,000 years old. Let's say that most people in the world can probably only read a language that's 500 years old or less, and may struggle with earlier written versions, if there were any. Maybe you're lucky enough to read 2000+ year old Hebrew. But that's just one language. What about all of the other written languages from 2,000 years ago? And what about cuneiform or Egyptian hieroglyphics or ancient Greek? Ancient Chinese?
How in the hell are people supposed to read warnings written in any 2014 Earth language 50,000 years into the future, let alone 500,000 years into the future? That's 10 and 100 times longer than we've written down any language. 5,000,000 years of intelligibility is what we really need. That's why I see a nuclear holocaust to come not from a detonation but from innocent explorers long disconnected from our language and culture.
Earth will only be safe until all nuclear waste is off the planet, or we come up with a way to transform it into substances no more dangerous than what was on this planet before the nuclear age. We cannot assume constant technological progress for millions of years. The entire lifespan of our species is only 200,000 years, and only 70,000 years ago we nearly went extinct.
Gary Kildall, Father of the PC OS, Finally Gets His Due
1994 was the year I first installed Linux. By that point, there were a number of complete Linux distributions. I got my start with Slackware 2.0.
So he was definitely around for the open source movement, so to speak. It was off most peoples' radar screens in 1994. This site got its start in 1997. I think I joined in 1998.
San Francisco's Housing Crisis Explained
This isn't gentrification. This is super rich people pushing out very rich people, as compared to everybody else in the country.
If you're paying more than $1,500/month rent to live in a one bedroom apartment anywhere in the US, you're very rich. If you're paying $2,500/month to live in a one bedroom apartment anywhere in the US, you're super rich. The last time any poor people lived in San Francisco was the 1960's.
The rest of the US population not living in San Francisco doesn't have very much sympathy for you, except maybe the unfortunate souls living in Boston or New York.
I use the terms very rich and super rich, but feel free to substitute "less affluent upper middle class" and "more affluent upper middle class," if it makes you feel any better.