Follow Slashdot stories on Twitter

 



Forgot your password?
typodupeerror

Comment What do you want from your OS? (Score 1) 318 318

The beta/nightly guys are doing it because it's their hobby. This is entertainment for them. Like the guys who just analyze the hell out of game graphics instead of actually playing the games. These guys are always complaining about how their stuff isn't working right, but they love it.

If using the OS as a tool to get things done is your main concern then you back off to what gets you the new features you need/want.

If you're a luddite and afraid of being kicked out of your habits then you never update until hardware death forces you, even though you're missing a lot of upgrades that could help you do things better and faster. Some of these guys admit it, which is fair enough (my Mom doesn't want to have to relearn), and the others have endless lame excuses.

I used to be one of the first guys, now I'm one of the middle guys. Debian testing dist-upgrade, Windows 8.1 with Metro stripped out, Android 5.1.1. It just works without being bleeding edge. Okay, Win10 on one non-critical machine, for my inner child.

Comment Accreted Horror (Score 1) 166 166

I thought it was fairly well known just as a horror story about what happens when you don't design a language, you just accrete it (charitably, when the language is extended so far beyond the initial design that it completely escapes it). Like bash or perl or PHO but oh so much worse because everything's worse in health care and govt.

From Wiki, this is considered good MUMPS code:

GREPTHIS()
              NEW SET,NEW,THEN,IF,KILL,QUIT SET IF="KILL",SET="11",KILL="l1",QUIT="RETURN",THEN="KILL"
              IF IF=THEN DO THEN
              QUIT:$QUIT QUIT QUIT ; (quit)
THEN IF IF,SET&KILL SET SET=SET+KILL QUIT

But in practice it looks like:

%DTC
%DTC ; SF/XAK - DATE/TIME OPERATIONS ;1/16/92 11:36 AM ;;19.0;VA FileMan;;Jul 14, 1992
          D I 'X1!'X2 S X="" Q
          S X=X1 D H S X1=%H,X=X2,X2=%Y+1 D H S X=X1-%H,%Y=%Y+1&X2
          K %H,X1,X2 Q
          ;
C S X=X1 Q:'X D H S %H=%H+X2 D YMD S:$P(X1,".",2) X=X_"."_$P(X1,".",2) K X1,X2 Q
S S %=%#60/100+(%#3600\60)/100+(%\3600)/100 Q
          ;
H I X2&'(%Y#4)+$P("^31^59^90^120^151^181^212^243^273^304^334","^",%M)+%D
          S %='%M!'%D,%Y=%Y-141,%H=%H+(%Y*365)+(%Y\4)-(%Y>59)+%,%Y=$S(%:-1,1:%H+4#7)
          K %M,%D,% Q
          ;
DOW D H S Y=%Y K %H,%Y Q
DW D H S Y=%Y,X=$P("SUN^MON^TUES^WEDNES^THURS^FRI^SATUR","^",Y+1)_"DAY"
          S:Y21608+%H-.1,%Y=%\365.25+141,%=%#365.25\1
          S %D=%+306#(%Y#4=0+365)#153#61#31+1,%M=%-%D\29+1
          S X=%Y_"00"+%M_"00"+%D Q
          ;

Comment Do it by the person (Score 1) 267 267

Some users can be trusted with access. They've got NOD32 installed because your corporate AV is crap, run malware and rootkit scanners regularly, are running with UBlock and Noscript on, no Flash or Java (not even installed). It's probably good to still have a warning for known bad sites for them, but in general they're probably more paranoid than IT is.

Other people will click on anything. If they get two emails in a row saying 'DO NOT CLICK ON ANY EMAIL LINKS' then the next email has 'CLICK HERE FOR MALWARE' they will click on the malware. Those people need to be locked down and no exceptions made, because they can't be trusted anywhere, any time.

Most people are somewhere in between.

And yes, I bypass the IT stuff. I run all my web browsing through an SSH tunnel, not really to bypass any blocks but because I don't want anyone spying on it and I don't trust any commercial MitM SSL solutions (Hello Komodia/Superfish). I gave myself admin access since I have to install new things all the time for various projects. BUT I did clear this with IT, at least on the personal level - ours are good people and have better things to do.

Comment Red Ring of Death (Score 1) 377 377

No, not me, but it's worth noting that the XBox 360 Red Ring of Death was (according to EE Times) caused by someone at MS who thought he could save a couple million bucks by doing the graphics ASIC work in-house instead of paying someone with experience like ATI to do it. That cost $1.3 billion. As far as I know nobody involved in deciding that or doing the ASIC work has ever been named (and I wouldn't blame the poor ASIC guys), but I can only imagine it would be like to know that was you.

Comment Not Yet (Score 1) 296 296

I don't think you know enough to know that yet. Or at least if you know enough you haven't told us enough to justify it. As cliche as it is, I'm going to quote Knuth: "We should forget about small efficiencies, say about 97% of the time: premature optimization is the root of all evil. Yet we should not pass up our opportunities in that critical 3%"

I suggest you just do a prototype in whatever's easiest, fastest, and most flexible. Python, Ruby, C#, whatever you like. Get it working . Then see if it's slow as you think it is and go from there.

I see lots of hostile responses here (either way) but as a practical person who has to use C++, Python, bash, C#, and (argh) dos batch every week I would start with C# or Java (since you know those) and once you get the logic working like you want, see where the bottlenecks are then replace critical sections with C++ as you need to. That's worked really well for us. To begin with, the parts that we thought would need to be low level rarely were. Smart algorithms are much more useful than brute force. Or using libraries that do the brute force for you smartly. After a while you get a feel for it - but you don't have that yet.

The key bit is that you'll be 10x more productive in an expressive powerful language like C# or python than you will be in a restrictive fine detail language like C++, so it makes sense to bang out the framework in something flexible then only optimize the very smallest of key performance critical sections. Experience says that's less than 5%, usually 1%... so again, Knuth is right on the nose with his 3% estimate.

Comment Any Particular Process is Irrelevant (Score 1) 146 146

> But some of his statements are open enough to be nearly devoid of meaning: "Any particular process artifact is probably irrelevant...."

This is extremely meaningful and important if you have some experience, because a lot of managers (and devs!) seem to think that a process is a silver bullet. Things going wrong? Let's switch to another version of agile, that'll fix it!

You need a process, but if you have all good developers it doesn't matter what process you're using (they'll come up with some loose form of agile if you don't supply one... and source control, and release process, and build server, and...), and if you have bad developers it doesn't matter what process you're using either, it won't work. An official process gives you a framework for mediocre developers to hang on, and maybe learn something and become better developers, I've seen that happen too. But the people who /really/ care about which process are more interested in the process game and selling you training, consulting, and books than actually getting work done. Or they're managers who think it's a silver bullet.

Comment Re:Germany should pay war reparations for WWII (Score 5, Insightful) 743 743

This kind of ridiculous stunt is why the Germans are sick and tired of giving Greece money. They've been model world citizens and have been subsidizing Greece for decades, and trying to use this now is the ultimate in spoiled screaming teenager tactics. Nobody bankrupted Greece except Greece - as the Nordics, who actually got their shit together, very painfully, like to point out.

Germany are somewhat dour and grumpy parents, and a Grexit now is much less harmful to Eurozone than it would have been two years ago, so being kicked out of the house isn't out of the question at all. I wouldn't push it too hard.

I'm not German or Greek, but have been following this for years in the Economist and Bloomberg, and I know lazy scammers trying to wheedle more money rather than earn it.

Comment The new COBOL (and the vm) (Score 2) 382 382

Its greatest achievement was to be a C-like language in which legions of mediocre corporate coders can work on the same codebase without hurting each other too badly. This lets you replace COBOL.

Then the whole bytecode on a virtual machine thing, which while it had been done before (UCSD Pascal), Java's VM really made practical. People complain about Java's slowness, but the VM is really quite speedy (and the sandboxing is amazing). You can write high frame rate FPSes in it (Quake!). It's usually bad coders and bad frameworks that cripple performance. And without the JVM we probably wouldn't have .NET, Mono, and the CIL. Certainly not as good - it really helps to have done a previous version.

Comment NOT consumer drives (Score 1) 184 184

From TFA - consumer SSDs can expect 2 years, which is better than lots of HDs which probably won't spin up. Enterprise SSDs are faster but more ephemeral.

On the other hand I wouldn't count on this - cell drift is what causes the Samsung 840 slowdown after just a month.

And yes, I back all my stuff up constantly since I don't want to lose it. To platter drives just because it's much cheaper and speed doesn't matter.

Comment Re:Engineering. Solve Problems (Score 1) 420 420

This is from actually dealing with outsourcing in China, Singapore, India and Romania. For 15 years.

I know there are *smart* people everywhere, and certainly if you hire an Indian or Chinese person here s/he's as good as anyone else. When outsourcing it's mostly a *culture* thing where actually solving a problem is far down the list of things they care about - at the very top is not pissing off their manager(s) by making waves or pointing out problems, or, say, saving 5 cents per unit by swapping out components for one that will fail in 1/10th the time but not telling anyone. For the outsourcing company, the thing they care about most is getting paid in the short term, then moving on to the next contract. Those values can change, of course, but since it's heavily cultural it's a slow ship to turn. The best people who don't fit this pattern get snapped up by good local companies and don't work on outsourcing.

Right now I'm not worried at all - maybe in 20 years, but still not really, because the number of people who can problem solve will always be miniscule compared to the number of problems, and globalization creates tons more new problems.

GE and IBM aren't very convincing. Those hidebound old lumbering farts got in during the goldrush and are just fine with mediocre results as long as it costs little and they can charge even dumber institutional clients more than it costs them. It'll probably pay off spectacularly in the long run when those countries do get their engineering cultures together. They'll be well situated.

Comment Engineering. Solve Problems (Score 4, Insightful) 420 420

Problem solvers are far more in demand than ever, and that won't go away till we get strong AI (at which point the problem won't be offshore, but inCPU).

I don't mean 'engineers' like code pigs or most IT drones (not a dig at IT, really good IT people are engineers too). You just have to be someone who can take all information about the problem, including the constraints, then design and implement the best solution given the constraints - that means time, budget, reliability, support needs, end of life, etc.

The trouble is that most people can't do that, which is why it's in high demand. Risk assessment and mitigation are crucial and mostly untaught skills. Most people will just do what you tell them to, or take their favorite hammer and chainsaw and use it on everything in disregard of practical requirements. Most offshore 'engineers' fall into this category as well, which is one reason engineering outsourcing has such a bad stink among those who jumped on the bandwagon in the 2000s.

Which leads to the other problem - it's nigh impossible to learn except by doing. Normal path is to get an engineering degree, then join an engineering firm and work on actual products - though if you join a big boring place like HP you still may end up just learning to be a code pig unless you're lucky enough to end up in one of their very few interesting divisions (memristors!). Obviously this is long term project, high expense. High risk till you get the degree, then fairly low risk.

The other option is to just start making things. Make 'products' for yourself and try to finish them - i.e. make it something you could sell, even if you don't. This is easier than ever now thanks to explosion of low cost boards, motor controllers, cameras, drones... Get your hands on. Someone who can code, breadboard, solder and do servo control is a highly contested prize.

The bad news is you may find you're just not suited for it. In which case your best hope is probably to find an avoided niche like COBOL.

The good news is that if you're suited for it it's ridiculously fun and rewarding. Some days are still gonna suck, but generally you're solving interesting problems and making real things and people are using the things you made (this is THE BEST). Usually not as lucrative as banking or politics, but making decent money and helping rather than being scum of the earth (unless you go to work for Facebook, *zing*) is worth a lot of peace of mind.

Comment Self selecting? (Score 1) 264 264

Because C is so sparse and clean (or primitive, ymmv!), and people using C tend to be more experienced (almost nobody starts with C anymore - you use it because the job needs it), I find C programmers are a lot more likely to recognize things as ugly hacks and label them. It's partly defensive, because other C programmers are also old and cranky, so you're tagging it with YES I KNOW don't start with me. You don't want to check this in and have, say, Linus think you don't realize compromises were required.

On the other hand, JavaScript people seem to be a lot more 'hey, doing this weird thing works without dying - I'll push it to production.' (YMMV, that's just my experience).

Comment Only 30? (Score 3, Interesting) 227 227

I get these every day even though I've had the current job for five years. For things that aren't anywhere near anything on my resume. Recruiters are just bottom feeding scum, and it's gotten a lot worse since people in India (and Africa, and Eastern Europe, etc) have realized they can just browse LinkedIn then shotgun resumes to companies. The hit rate is tiny, but all they need is one. Local firms are bad as well, with apparently every single person from TCC contacting me about the same job.

LinkedIn is no better - 'Jobs you might be interested in: Mechanical Engineering Manager in Baton Rogue'. Really. I'm not an ME, I specifically say no management roles, and I specifically say unwilling to move. Maybe you should contract me to rewrite your jobs candidates engine, because I think I could do better in 2 days with 300 lines of python.

So why are you still on LinkedIn, you might ask... well, it is fairly amusing, and I can handle one or two a day. And if I ever need a job my profile will be there.

In these matters the only certainty is that there is nothing certain. -- Pliny the Elder

Working...