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


Forgot your password?

Comment Re:TL;DR: More Code Monkeys (Score 1) 338

When I worked the Google IT help desk, I had to talk a newly hired CS graduate into turning on his own workstation. He only used the workstations at the university lab and wasn't allowed to touch the workstations there. He was shocked that no one was standing around to turn on his workstation.

That's the problem when you run Linux. If those workstations ran Windows, then they'd figure out how to at least hit the power button from time to time just because it's Windows.

In our computer labs, they were all bolted down with steel anti-theft metal housings. But they had access to the front for the CD-ROM and power button.

Comment Re:understanding cats (Score 1) 143

Actually it's dogs that more commonly eat their dead owners.

A common theory as to why is that the dog starts freaking out - first trying to get the owner to respond by licking and nudging, which eventually devolves to biting, and then there's blood in the equation... etc etc. But it's never been directly witnessed, so it's hard to say. The way that dead owners are consumed generally starts at the face, which is different from how dogs normally scavenge food (going after soft areas like the abdomen first). And it often happens very soon after death, when there's still food around.

It's not incredibly common, but it does happen.

Comment Re:Obligatory (Score 4, Interesting) 143

The one field where humans vastly outperform all other species is communication. Chimps can solve problems as well as children, and even parrots and corvids with their tiny brains can work out surprisingly complex problems. Various animals show all sorts of ability to conceptualize, plan, etc. But in terms of conveying complex thoughts about novel situations to other members, no species comes close to humans.

When my parrot says "I want up", he doesn't have any clue what "I", "Want", and "Up" means. He just knows that if he says that sound, I'll offer him a finger to stand on. And he only started saying it because I kept repeating it, and he likes making sounds; learning the benefit of making that sound came second. To him, "I want cracker" and "I want peanut" are two entirely different sounds; every phrase is learned as a whole. The total "vocabulary" he can maintain is quite limited. It's not out of some lack of problem solving / reasoning ability; he solves all sorts of complicated puzzle toys that I give him. He just doesn't grok complex communication. Some sort of "translator" isn't going to change his limitations. I already know what his basic sounds mean - I've been around him plenty to read his vocalizations and body language**. But real *communication* requires something more.

Facebook has been working on a rather interesting technology focused on using semi-ballistic photons imaging to yield something like a compact, real-time, super high-res MRI. Elon Musk's Neuralink has even broader ambitions. Things like these may actually some day yield better insights into what our pets are thinking than what they're capable of vocalizing. Our pets are reasoning, thinking, feeling beings. But they simply cannot, on their own, communicate to us about with the same level of depth as their internal processes encompass.

** Here's your "Amazon Parrot Translator":
  Repeated triple cluck: Baby amazon wants food (goes away with age).
  Idle trilling with varying pitch: Content, often associated with preening behavior.
  Deep, almost clicky trilling: Playtime. Watch your fingers.
  Loud or crackly repetitive sounds, repetitive beeps, or saying learned sounds randomly without clarity or intensity: Nearing bedtime, common in the evenings.
  Saying learned sounds with clarity and intensity: Wants you to take a learned action associated with it, or otherwise trying to "take part" socially.
  Crackly whine: uncomfortable, doesn't like this situation. Often associated with moving away from the thing that's making him uncomfortable
  Sharp isolated trill: Alarmed
  Continuous sound like a cross between a goose honking and a chicken clucking, with spasmic motions: hormonal / mating dance
  No noise or highly pitch modulated sounds, while fanning the tail feathers and pulsating the size of the pupils: Crazy mode. DO NOT TOUCH. Common around cages with the "hot" amazon breeds.

No translator needed.

Comment Old school (Score 4, Interesting) 64

"We had to go up to farmers' doors and say 'Hi, we're here from NASA, we're wondering if we can set up telescopes in your back pasture?'" one astronomer told Popular Science. "More often than not people were like 'that sounds awesome, sure, we'll help out!'"

That's what we used to do back in the old days when you wanted to set up your telescope in some rural area, away from the city lights, for a night's viewing. Ask for and get permission, and maybe have a pleasant conversation with a farmer who thinks what you're doing is really cool.

Nowadays people just fly their drone over someone's property unannounced, then act like they're the one whose rights were violated when the property owner shoots it down.

Comment Re:Well then (Score 3, Interesting) 286

No, the current response is the correct one. There are lots of companies out there which will take a bug report, fix the bug, and thank you. Some will even pay you a bounty.

Exploiting the f**k out of any bug you find is the equivalent of lynching the first black person you see because a black guy robbed the local convenience store. The correct response is to single out the responsible criminal / stupid company for reprisal. Like is currently happening to this company.

Comment Re:Client-side validation? (Score 0) 286

Client-side validation is needed to insure the data isn't corrupted in transit. e.g. You want to buy 2 tickets. A network glitch turns this into 128 tickets, and the server charges your card for 128 tickets. With client-side validation, the server sends the requested transaction back to the client for validation to make sure it's been received correctly. You see the system has glitched, and you stop the purchase before your card is charged for 128 tickets. (You could continue this in perpetuity, but with the low data corruption rates in modern networks, two validations is usually enough.)

Both the client and the server need to validate the transaction is legitimate and what they want. And only when they both agree that it's correct should the transaction be processed.

Comment Re: copyright is a crime against humanity (Score 4, Insightful) 48

I think there's a fair middle ground here. A short-term copyright, say about 20 years, should be enough for creators to come up with ideas and profiting from them, while still promoting the sciences and arts in the long-term.

Oh, will you look at that. The original length of copyright was just 14 years. Gradually, over the centuries, it's been bastardized to the current ridiculous life plus 70-120 years. Can you imagine if we had to pay for other things for that long? We'd still be paying the progeny of the people who worked on building the Brooklyn Bridge.

Scale copyright's duration back down to about 20 years (or hell, even 40 years - average length of a career), and most of these problems disappear on their own. Yes you should get credit for and be able to profit from thinking up clever ideas. No you and your progeny should not be able to extract a toll from society in perpetuity for using the idea.

Comment Re:Right ot not right? (Score 3, Interesting) 182

The problem isn't that corporations are demanding unreasonable things. The problem is that people just don't give a damn. Ideally people would tell an employer demanding a non-disparagement agreement to go take a hike. You assume the ideal must be true, so you assume the only way people would sign their rights away is if they're coerced. But employers don't have to coerce employees to sign non-disparagement agreements. People think of the situations where the agreement would kick in, and they're so rare that they think nothing of signing it. The exact same thing is happening in the privacy front. People are willingly trading their personal info for free web space and email service.

Thomas Jefferson said " the tree of liberty must be refreshed from time to time with the blood of patriots & tyrants." People concentrate on the "blood" part and assume it to mean that we must be willing to fight and die against tyrants who would take away our freedoms. I'm starting to think the "time to time" part is more important. If people don't occasionally experience living under tyranny, they grow complacent, start taking their freedoms for granted, and think nothing about signing them away. Only if you've had to fight and die for those freedoms do you truly appreciate their value.

Comment Re:I tried Python (Score 1) 356

After using it, it is eh, not a big deal. You indent the same amount for everything in the block, which you are probably doing most of the time anyways. It is their little cheat around not having block delimiters.

You think the ':' is not the delimiter for the start of a block?

They have block start delimiters, in some cases (empty blocks) there is a block end delimiter as well. Then you also have to use whitespace to signify the block as well.

Compare to sane languages, which use a block start/block end pair and no exceptions to that rule. Python is crap not because of whitespace, but because of the many many exceptions to a general rule.

The pythonic way boils down to "There is a general rule, and here is a list of exceptions to that rule", whereas other programming languages say "here's the general rule, no exceptions".

Python is crap because of this approach - the stupidity of whitespace-as-indentation is just a symptom of the crappiness, not the cause of it.

Having no general rules and lots of exceptions results in a higher cognitive load just for reading code. In fact, the whitespace rule demonstrates this perfectly - in a language with a general rule for block delimiting you can write a program that takes source code mangled in some way and re-indents it. In python you can't do this with mangled sources, because the indentation can only be determined by a human, and not automatically determined by a set of rules.

No matter which way you spin it, I prefer source code in which the code blocks can be discovered via automated means rather than asking the original coder where the code block starts and where it ends. Automated detection of code blocks means less cognitive effort on my part.

Python is attractive to beginners because they don't know what they are doing.

Comment Domain got it, Gmail got a pleasant invite (Score 1) 548

Here's an odd one. My domain (see the message bar) keeps getting emails from British Telecom about some company's ADSL service. I had their address, their service details, etc. Oddly enough, though even though I get these emails, I can't "password reset" it using that address - it always comes back as not found, even though the link takes me to their log in page. Go figure.

Since i only get it now and again, and not for a long while now, I can only assume they're out of business.

I also got one from some guy with a US West bank account, and I think that same guy used it for travel websites because I kept getting surveys for how my trip was. I ignored them at first, then decided screw with the surveys - hey, they're asking me about my non-existent trip? Sure, I'll answer them! Giving one-star ratings and berating the staff never felt so cathartic. I even said to cancel my account as I never want to be a customer of them again. Oddly, those stopped a long while back as well. Either I made it so that guy's travel arrangements got really hard to make or the CAN SPAM laws made everyone scrub their mailing list.

Now, my Gmail, however, accidentally had it happen, and I got some really confusing emails about board meetings and whatnot. And some rather personal information as they forward application forms between them. Figuring out what happened, I sent them a nice email that they really did have the wrong person and got an invite to visit them if I was in the area (I live on the west coast, they are east coast). But that was only because they're actually a group of people who'd I'd actually be interested in spending time with.

Took a week to get it resolved because the mailing list I got put on (to send to the board) generated only like 1 email a day. So I had to figure out if it was a fluke, or if someone made an error. It turns out the real guy's email had numbers at the end and whomever entered it in the mailing list software truncated it.

I don't understand why my domain got hit with them - it's not like it was close to any ISP or somesuch, and it's even a .net - the .com was taken and I've had it for 16 years now.

Comment Re:Here's a much better question: (Score 1) 71

A better question is, why do we need thumbnail preview at all? It's a huge attack surface that doesn't even require you to open a file to get infected. Not to mention a huge performance hog.

Oh, yeah, because Windows has been doing it for years.

Well, thumbnail previews are helpful for the common case of a collection of photos in a directory. Perhaps you're totally organized and categorize the heck out of every digital photo you take, but most people are not, and it's nice to open a folder of photos and quickly glance and see what they're about than to see generic icons and open each one to see what the file is inside.

It's a user thing. It's why complex beasts like NetworkManager, Pulse Audio and SystemD exist - because no amount of "simple scripting" can get around fundamental limitations of the "keep it the Unix way".

In fact, why do shell scripts in sysvinit ... reimplement init? The default init that sysvinit uses already handles daemonizing really well, and if daemons die, it can easily restart them. In fact, if they die too quickly, init will stop spawning it for 5 minutes. And to heck with S/K scripts, since init handles runlevel invocations as well. The only reason I can see is that editing inittab is too hard, but we seem to make do with other files like passwd and such.

And users like NetworkManager - because things like WiFi screw up the networking model Unix created. (Just because you connect to WiFi, doesn't mean you want the same settings for WiFi - perhaps you connect to public WiFi and want a VPN, while corporate WiFi you don't. And then there's multiple connections...).

And Pulse Audio is a pain, but necessary to accomplish some tricky audio routing issues. For example, take a standard PC with a sound card. It's playing music or a video, and there's a VoIP app running in the background. The user wants to take the call, so they plug in their headset via USB or Bluetooth, and the VoIP app's audio needs to move to the new sound device transparently - the app shouldn't need to close and reopen (or even know a new audio device was added). Yes, it works in Windows when people insist on using voice with Skype (I normally just use speakers and built in microphone, but if there are people around, a headset gets better privacy. But I don't have a headset - I borrow one from my manager since work doesn't provide me with one and I don't use one enough to justify the expense. I plug it in, and magically, the call is routed to them and I can chat in privacy).

Oh yes, the audio from the existing music player or video player must NOT be routed to the headset, either.

Feel free to try to implement these two basic use cases with shell scripts.

Comment Re:Stupid (Score 1) 43

Stop using bloated frameworks for webpages. If you want to make an application, WRITE A GODDAMNED APPLICATION!

And what language and platform should one do this? Windows? Seems pretty reasonable - after all, no one uses macOS or Linux, right? Or Android or iOS.

Or maybe we do Android, and ignore iOS and Windows and people who use desktops?

The reality is - the web browser has become the universal platform. With very little code, you can write an application in a web browser that runs on practically all platforms, even ones you think no one cares about (hello Windows Phone). It's the universal runtime, something you can consider that practically everyone who will use your application has access to.

Oh, and people are writing applications as applications. Thanks to stuff like NodeJS, what's happening is the "application" is really a web browser hard coded to a specific web site.

Comment Re:The wisdom of made-up names (Score 1) 78

Like "Ok-Google", "Cortana" or even "Siri" (although, in all fairness, maybe siri and cortana exist in non-western cultures)...

That way, there is no interference with people with the same name as the virtual Assistants...

Siri's voice activation command is "Hey Siri", thus avoiding a collision with someone named that. Of course, some dumba** will name their new baby "HeySiri" just to confuse things. At least "OK Google" sounds stupid enough that no one would want to use it as a name... right?

I don't know what Cortana's activation word is.

Slashdot Top Deals

Make headway at work. Continue to let things deteriorate at home.