Follow Slashdot stories on Twitter


Forgot your password?
Slashdot Deals: Prep for the CompTIA A+ certification exam. Save 95% on the CompTIA IT Certification Bundle ×

Comment Re:Learning to program by Googling + Trial & E (Score 0) 224

This is why so much poor software exists in the world.

I can only imagine what nightmare code is being generated by such efforts.

Yes, anyone can code, just as anyone can build a house. Whether or not the house collapses immediately, whether it has any real value, or by any other measure still depends on the skill of the builder, just as in software.

Garbage in -> Garbage out,
applies to the code as well as the data.


honestly, i can say that if it gets the desired results, who cares. it's going to be maintainable by that person, because they were the ones that wrote it. now, if this was a team effort, however, that would be a completely different matter. if there was a requirement to have a maintenance contract in place, for the long-term success of the code and the project, that would be, again, an entirely different matter.

i *do* actually successfully use the technique that the author uses - i have been using it successfully for over 30 years. however, during that time, i have added "unit tests", source code revision control, project management, documentation, proper comments, proper code structure, coding standards and many many more things which make a successfully *maintainable* project.

whilst such things are most likely entirely missing from the projects that this individual is tackling, the projects that this individual is tackling are also likely to be ones that *don't need* such techniques.

in essence: none of that de-legitimises the *technique* of "programming by random research". it's a legitimate technique that, i can tell you right now, saves a vast amount of time. understanding comes *later* (if indeed it is needed at all), usually by a process of "knowledge inference". to be able to switch off "disbelief" and "judgement" is something that i strongly recommend that you learn to do. if you've been trained as a software engineer, adding "programming by random research" to your arsenal of techniques will make you much more effective.

Comment Re:Companies don't get it.... (Score 1) 257

I mean this in the nicest way - You count as your own worst enemy.

You feel some sort of sense of duty to your job, you feel that you need to cover for your coworkers' shortcomings, you (want to) feel that your job "matters" so much that the company can't keep going without you. Reality check - If the company doesn't value a project enough to give you adequate resources to get it done, you should value it exactly as much as the company does - Not at all. It will get done when it gets done. Bonuses, you say? Yeah, they don't exist in the first place. I theoretically get an annual bonus - That depends 0% on my performance, and 100% on the performance of people entirely outside my department. The salesmen rule the world, simple as that. Hell, even my annual "performance" evaluation depends less than 25% on my actual performance. I could literally score a perfect "C" without getting a single one of my formal duties done.

Put bluntly, as long as upper management can get their email, your success or failure means nothing to the company on the short term. Yes, your project may well make the company more in the long run than even its core business - For which you will get zero thanks, because the C-levels have no clue what you do.

Make no mistake, I give my employer a fair day's work. But from what you've written, you would hate working with me, because I care about my job exactly as much as my boss, and his boss, and his boss' boss, all the way to the top of the food chain, do. If they make success possible, I will succeed. If they expect "Scotty the Miracle Worker" on a shoestring, you've already failed, don't waste your time fighting it..

Comment Re:You know there's a problem... (Score 0) 224

...when you need to google the hex representation of 'red'. *much* better to understand the encoding, and it certainly isn't hard or requires tricky math. it's literally RRGGBB

you are completely and utterly missing the point, by a long, long margin, and have made a severe judgement error. the assumption that you have made is to correlate "understanding" with "successful results".

believe it or not, the two are *not* causally linked. for a successful counter-example, you need only look at genetic algorithms and at evolution itself.

did you know that human DNA contains a representation of micro-code, as well as a factory which can execute assembly-level-like "instructions"? i'm not talking about CGAT, i'm talking about a level above that. to ask how on earth did such a thing "evolve" is entirely missing the point. it did, it has, it works, and who cares? it's clearly working, otherwise we would not be here - on this site - to be able to say "what a complete load of tosh i am writing"!

what this person has done is to use their creative intelligence as well as something called "inference". they've *inferred* that if enough google queries of "what is hex HTML for red" come up with a particular number and it's always the same number in each result, then surprise-surprise it's pretty much 100% likely that that's the correct answer.

*later on* they might go "hmmm, that's interesting, when i search for "red" it comes up with FFnnnn, when i search for "green" it comes up with nnFFnn" and then they might actually gain the understanding that you INCORRECTLY believe is NECESSARY to achieve successful results.

but please for goodness sake don't make the mistake of assuming that understanding is *required* to achieve successful results: it most certainly is not.

Comment Re:Programming (Score 0) 224

Programming -- I don't think that word means what she think it means.

actually... i believe it's you who doesn't understand what programming is. programming is about "achieving results". the results - by virtue of their success - have absolutely NOTHING to do with the method by which those results are achieved. this is provable by either (a) unit tests or (b) a system test.

so if this person has found an unorthodox and successful way to do programming (which, by the way, is *exactly* how i do pretty much all of the programming i've ever done, including in programming languages that i've never learned before), then *so what*??

just because *you* memorise all the APIs, go through all the books, go through all the tutorials, go through all the reference material and then re-create pretty much everything that's ever been invented from scratch because otherwise you would not feel "confident" that it would "work", does NOT mean that there isn't an easier way.

there are actually two different types of intelligence:

(a) applied (logical) intelligence. this is usually linear and single-step.
(b) random (chaotic) intelligence. this is usually trial-and-error and is often parallelisable (evolution, bees, ants and other creatures)

an extreme variant of (b) is actually *programmable*. it's called "genetic algorithms".

personally i find that method (a) is incredibly laborious and slow, whereas method (b) is, if you write good enough unit tests and spend a significant amount of time reducing the "testing" loop, you get results very very quickly. genetics - darwin selection - is a very very good example. we don't "understand" each iteration, but we can clearly and obviously see that the "results" are quite blindingly-obviously successful.

by applying the technique that the original article mentions, i've managed to teach myself actionscript in about 48 hours, and java was about the same amount of time. i knew *nothing* about the APIs nor the full details of *either* language... yet i was able to successfully write the necessary code for a project that was based on red5 server and a real-time flash application. it was up and running within a couple of weeks.

in short: to call the method described in the article as "nothing to do with programming whatsoever" is complete rubbish. it's a proven technique that gets results, and, you know what? the most critical insight of the article is that it's *not* people who are "good at maths" who are good at achieving results with this technique: it's people who are creative and who understand language.

Comment Re:Ideology not reality ... (Score 1, Interesting) 141

Where do you clowns come from, really? You obviously know NOTHING about Austrian economics, yet you're all out here like ventriloquist dummies telling the world how bad it is. It's like the Red Scare with everybody talking about how bad commies were, but nobody knew anything about them other than what the establishment had told them.

I'm sure you pray at the temple of Keynes, like all the other "Nobel prize" winning economists do. You know, those same ones whose policies have ruined the economies we have now. But we'll just ignore that, right?

Ok, little AC, I'll reply.

Austrian economics is, at best, a pseudoscience, and at worst, fabulist storytelling by one charlatan to another, in an effort to explain things that they either don't understand, or actively refuse to understand, because they say "we don't need math or empirical testing".

Austrian econ uses praxeology (application of deductive reasoning, applied to a set of "unquestionable" axioms) to generate its further generate implications, scenarios, and results. Of course, these unquestionable axioms are quite questionable - they take them as blind faith, "because we've said them, they must be true". Often in there, they reject formal logical analysis of their axioms, instead choosing to use verbal analysis, because it's easier to weasel word your way out of corners. (Fingers are often inserted in to the ears of young Austrian economists at this point, as they say, "la la la la, I can't hear you".)

Then there's their use of the Austrian Business Cycle Theory, which uses many terms that they've mis-defined (they change the meanings of words to be whatever they want, so when they misuse them, they can say "You just don't understand"), such as "inflation" and "natural rate".

ABCT ultimately is better at explaining why the Austrians and libertarians are such hardcore goldbugs and why they rail against the Fed so much than it is at explaining actual business cycles.

The Austrians get around the problems of market failures, natural monopolies, morality, and rationality through the use of clever wordplay. They rely on an extreme form of methodological individualism based on the "action axiom" as described above. To wit: Because only individuals exist, only individuals can act. Societies cannot act because, to quote Margaret Thatcher, "there is no such thing as society." Therefore, all action can be described at the individual level. If an action is good or moral for one individual, then it must be good or moral in the aggregate because good + good = good. In reality, only basic game theory is needed in order to refute this. Austrians claim, for example, that savings represent money that will be invested in the future, and so money can never be "hoarded." They entirely reject the paradox of thrift.

Even the hero/founder of the school admitted it was BS.

Ludwig von Mises himself wrote of his theory: "Its statements and propositions are not derived from experience... They are not subject to verification or falsification on the ground of experience and facts."

F.A. Hayek wrote that any theories in the social sciences can "never be verified or falsified by reference to facts." By the way, he won one of those Nobel prizes for Economics that you sneered at, for his "theory of money and economic fluctuations". That would be the last actual contribution by the Austrian school to economics as a whole, in the last 40 years.

(Special thanks to RationalWiki for significant portions of this post.)

Comment No, you don't have to add a bios chip (Score 2) 211

You're wrong.

The parameters can be set by the bootloader and a digitally signed. There is no need to make 3 different chips for 3 different units. Just put the parameters in a payload with the target serial number then digitally sign it.

Then in secure code (either in ROM or loaded from flash by a ROM and checked before running) you load those parameters into the radio before proceeding.

This would add no cost (or trivial at best). All you need is an unchangeable unique ID. Everything else can be in the existing flash storage. It would add some complexity.

Why would a manufacturer do this? Because the FCC would mandate it.

You do not need a separate firmware for the radio, you design the radio so that these values become read-only after set. Then the entire driver can be modifiable (open source) it just can't modify that data.

This can be done relatively simply and for no additional cost. So no, the FCC wouldn't be banning open source, simply changing how the systems which use open source must work. And in a way that is really easy to roll out.

Comment Re:I don't see anything different. (Score 1) 114

They changed it because serif fonts are hard to read at different resolutions and don't scale well on small phones and watches.

At 60pt, they could write it in frickin' Viner Hand for all it matters and people would still have no trouble recognizing it even on the tiniest of screens.

On an iPhone 5, for example, it literally spans a good inch and a half, and roughly a third that height. "Hard to read" just doesn't apply.

Comment Re:I doubt it (Score 1) 58

It's not a terrible idea. Golf is one of the only scenarios where it's somehow okay to hand somebody a set of keys and a bottle of beer at the same time. Self-driving cars could help clean up some sticky liability and risk issues with underage drivers, drunk drivers, bad drivers, etc.

Comment Re:Ideology not reality ... (Score 1) 141

Oh yeah, this is just going to total Austrian econ. The idea that math has anything to do with economics (macro or micro) is heresy to them.

I rather hope this takes off, and well, so that we can finally bury von Mises.

There was an apocryphal story at my university that one of our Econ professors has been arrested once for urinating on the grave of von Mises. I may have to get in touch with him, and see if he's willing to give it another go.

Comment they don't ban installation of open source (Score 4, Informative) 211

It simply requires the hardware to be designed such that if you install open source, you cannot modify the radio to use frequency bands and powers that it is not supposed to use.

And this is easy to do. Just put in settings to limit power and lock out bands and make those settings irreversible until a full system reset. Then make the bootloader set those settings before running the installed OS.

Then the OS can be open source.

It would be absolutely fantastic if people would be rational about tech news. Tech people/netizens are starting to sound like my grandfather now. Every change is something to be feared. OBAMA IS GOING TO TAKE YOUR GUNS! The people running the FCC are people, just like you. They aren't demons or out to get you. Try to work with other people you haven't met instead of exhibiting xenophobia.

Comment Re:Same issues (Score 4, Insightful) 141

Isn't this the same as having economists doing the work, just faster? You are still using past data to predict the future

Yes and no. In a sense, letting AI learn the salient traits of the available data just saves a human from needing to do it; but, you can do something with an algorithm that you can't reliably do with a human - You can model the existing system, then test billions of hypothetical situations to see how they respond.

Humans work amazingly well at pattern matching, even in the absence of understanding of "why". We can even get good at predicting what will likely happen if we change a few inputs to a system. But we don't do so well at figuring out what will happen if we tweak a large number of inputs simultaneously.

Think of this as nothing more than finally making batch hypothesis testing possible in an objective way, in a field where a persuasive argument matters more than facts and where a real experiment can take a few generations to fully show its outcome.

Comment Not true. (Score 1) 174

There are airborne optical alternatives that can beat the * out of fiber - provided the weather is clear.

Fibre provides more frequency and better SNR than you'll get in the air, thus more bits

But a single fiber provides ONE PATH. Optics can provide MANY paths.

Imagine ten thousand fibers. Now imagine the ends poking out of a billboard in a 100x100 array - behind a 100x100 array of collimating lenses that beams the light toward your house. At your house imagine a telescope imaging that billboard onto a slide containing another 100x100 array of fiber ends. (Of course the fibers work both ways0 The air path may be of lower quality than physical fibers, but it's hard to beat a four orders of magnitude more paths. You'd need to run an actual bundle of hundreds or thousands of fibers from the billboard site to your house to beat it.
Now go back to the billboard and insert another 100x100 array of fibers through it - slightly offset so the same set of lenses but beams toward your next-door neighbor's house. (We'll assume the array is spaced out sufficiently that an optical telescope can resolve the two houses.) Repeat for ALL the houses served.

Not practical as described, of course. But it shows the principle: Wireless paths can multiplex spatially and reuse the bandwidth a hysterical number of times.

(Of course a real system using spatial multiplexing could be expected to use various wave-mechanical hacks rather than actual resolved paths - just as MIMO does down at radio frequencies.)

Comment Re:Comcast giveth and I taketh away (Score 1) 224

We're approaching a point where the only winning move is not to pay; I predict many folks will soon cancel cable and Netflix, and just go back to torrents.

Go back to torrents...?

Some of us were smart enough to see the game for what is is and refused to play in the first place.

"More software projects have gone awry for lack of calendar time than for all other causes combined." -- Fred Brooks, Jr., _The Mythical Man Month_