Slashdot stories can be listened to in audio form via an RSS feed, as read by our own robotic overlord.

 



Forgot your password?
typodupeerror

Comment: A felon with misdemeanor convictions? (Score 1) 717

by Wrath0fb0b (#48542965) Attached to: Ask Slashdot: Can a Felon Work In IT?

OP said: "I'm a felon with several prior misdemeanor convictions".

Don't you mean a felon with prior felony convictions? As far as I understand (please do correct me if I'm wrong) you cannot be treated as a felon for misdemeanor offenses, no matter how numerous.

Also, I'm going to give the benefit of the doubt that the statement was just clumsily phrased but even so, the wording ought to be fixed to be crystal clear.

Comment: Re:If You Had An Electronic Currency (Score 2) 602

by Wrath0fb0b (#48515761) Attached to: UK Announces 'Google Tax'

The problem with taxing at a fixed percentage of volume is that it penalizes high-volume low-margin businesses relative to the high-margin ones. That introduces serious inefficiency by artificially lowering the relative cost of expensive good relative to cheaper ones (which is also regressive*).

In practice, States try to soften the regressive nature of fixed-percentage taxes by devising a classification scheme wherein essential goods like food are taxed at a different rate (sometimes zero). That leads to a separate inefficiency where now people start to game and dispute the classification, leading to high-stakes court battles about wether Jaffa cakes are a cake or biscuit.

* Most commodities like gas* and groceries fall into the "high volume low margin" category, so this will harder hit the lower class that spends a large percentage on its income on commodities. In the US, gas stations average 3c on each dollar spent on gas, less than half the average margin for a private business in the US. YMMV in other countries.

Comment: Re:should be banned or regulated (Score 1) 237

by Wrath0fb0b (#48383609) Attached to: Will Lyft and Uber's Shared-Ride Service Hurt Public Transit?

I don't think anyone claims that Uber should not have insured drivers or should permit their drivers to discriminated by race.

What they do claim, is that it's ridiculous for the city to have a fixed number of medallions for drivers, instead of letting anyone that meets the (insurance,inspection,background,...) checks compete under the same set of rule. The sad fact in a number of cities is that possession of an arbitrary token is more important that substantive comliance with an objective set of requirements.

Comment: Socket Activation/Passing (Score 1) 928

by Wrath0fb0b (#48280669) Attached to: Ask Slashdot: Can You Say Something Nice About Systemd?

With a dozen or so lines of code you can convert any services that listens on a socket (UNIX, INET, NETLINK or POSIX) to have systemd create the socket and pass it in -- and that includes code to fall back to socket creation if it's not launched by systemd. This has a few benefits:

  • Startup: Services don't need to signal back init systems that a service is ready to receive requests (or, worse: I've seen colleagues either put in a sleep, or having dependent processes poll, shudder). As soon as the socket is created, requests can be received. When the process is ready to read/select, it gets everything in the buffer.

    In fact, while a ton of people are focused on the way systemd manages dependencies between startup processes, they overlook that socket-passing actually removes dependencies between them. In other words, even if you have some horribly complex web of socket-based services, you can treat them as entirely independent.

  • On-demand-services: Got a socket service that doesn't have tight startup latency requirements and is launched infrequently like sshd or ntpd? Why does it have to stick around all the time consuming resources? Let systemd hold the socket and launch it whenever a client connects and just exit() when your last client goes away. Apple has been doing this for years -- aggressively reclaiming memory from daemons that don't need to be immediately available. This also improves startup times because non-essential services aren't launching at the same time as essential ones, decreasing CPU/IO thrash -- I've seen admins create init-groups that launch 5 minutes after startup for this purpose actually, this solves the issue more sensibly.
  • Crashes: Services that crash obviously lose all session state, but having the socket persist means that requests never get rejected -- they just wait a bit longer. For a concrete example, if Apache relies on SQL and then SQL crashes, obviously any in-flight queries are going to return errors. But new queries launched by different Apache worker threads will just sit in the socket buffer until SQL comes back to life. This is a pretty big win for mitigating client impact.
  • In-place-updates: Services that need to be updated/patched are just a different manifestation of the "Crash" bullet above. Need to patch your services without killing all its clients? Stop processing new requests, fulfill everything in the queue, restart, pick up where you left off. Unless the client is closely monitoring the latency of requests, they won't even know that the service was patched underneath them.

So that's at least one thing that systemd brings that other init systems don't, that solves a few real problems and enables some new features that other init systems can't.

Comment: Re:How about we hackers? (Score 2) 863

Actually systemd doesn't care if it's actually running yet or not, because it already created a socket listening on port 80/443 (or whatever) and passed it to Apache. If anyone tries to send something to 80, it will be queued in the socket's buffer, and once Apache finishes its startup goo, it will process the backlog.

In other words, there's a third state in between "Not Ready" and "Fully Ready" which is "I'm ready enough to receive and enqueue requests without dropping them but I can't fulfill them immediately". Once a service hits that state, no one should care any further.

[ Bonus round: if Apache crashes, that's fine too because systemd keeps the socket around and passes it to the relaunched instance with all the pending requests intact. Which actually means that it never goes to "Not even ready to receive requests" even on crash and all requests are seamlessly processed. ]

Comment: Re:Administrators dislike constraint based systems (Score 1) 863

Administrators dislike constraint based systems. ...
it insists on controlling file descriptors and sockets and Mach ports for the things it starts - which means you have to rewrite a lot of at least the startup code in most Open Source software to tolerate being run by something that opens the files and sockets that it expects to do itself.

First of all, it's about a dozen lines of code in the daemon to be able to query if you've been passed in a socket and, only then fall back to creating it yourself. And that's backwards compatible. There's example code totalling no more than a single page.

Second, Administrators ought to love the model of daemon's receiving the socket because it actually removes constraints entirely, instead of just managing them. You're correct that admins dislike constraint-based systems instead of imperative ones, but removing the constraint is even more favorable -- an real admin should love nothing more for the applications to sign a contract that says "You can launch me and my dependencies in any order and we will Do The Right Thing(TM)". Socket activation does exactly that.

Comment: Randomized MAC for background scans ... (Score 2) 168

by Wrath0fb0b (#48213819) Attached to: Austin Airport Tracks Cell Phones To Measure Security Line Wait

If you've got a recent iPhone, it's already randomizing the MAC used for background scans:

When iOS 8 is not associated with a Wi-Fi network and a device's processor is asleep, iOS 8 uses a randomized Media Access Control (MAC) address when conducting PNO scans. When iOS 8 is not associated with a Wi-Fi network or a device's processor is asleep, iOS 8 uses a randomized MAC address when conducting ePNO scans. Because a device's MAC address now changes when it's not connected to a network, it can't be used to persistently track a device by passive observers of Wi-Fi traffic.

Of course, that doesn't work if you are using the phone to read Twitter while waiting in line, because seriously, what else are you expected to do while shuffling along?

Comment: Re:Biased summary (Score 1) 282

by Wrath0fb0b (#48127757) Attached to: Four Dutch Uberpop Taxi Drivers Arrested, Fined

This isn't a product, it is a service. So ergo the only way to regulate the service is to regulate the person doing the selling.

And you can regulate the person doing the selling and the car he's driving without favoring one person over another or empowering a cartel.

Falling into the "regulation-bad" "regulation good" dichotomy is really killing us here. Regulating the driver's record, the vehicle and his insurance is eminently sensible. Beyond that, it's just protectionism.

Comment: Re:Biased summary (Score 1) 282

by Wrath0fb0b (#48127741) Attached to: Four Dutch Uberpop Taxi Drivers Arrested, Fined

I really don't have any problem with any of the requirements you've listed at the end there, so long as they are administered objectively and impartially. They all seem unobjectionable.

But providing favorable treatment to some licensed taxi companies over others -- such as the use of taxi stands and spaces -- rubs me as unjustified favoritism.

Comment: Re:Biased summary (Score 3, Insightful) 282

by Wrath0fb0b (#48126051) Attached to: Four Dutch Uberpop Taxi Drivers Arrested, Fined

What kind of person bills his grandmother for taking her to the supermarket? Jeezz...

Repeat after me: "it's against the law to drive people around for money without the proper credentials".

Your bit about "without proper credentials" makes it sound like all that's needed is for a driver to apply for a license and meet some objective requirements like driving records, vehicle inspections and insurance. If that were the case, you'd have a lot more folks siding with the law.

Instead, in order to pick up a fare in Amsterdam, you need to meet some other arbitrary requirements, chief among them being a member of a TTO ("Regulated Taxi Organization") with at least 100 cars. And to pick up a fare from a taxi stand in Amsterdam, you need a further license -- one given at the discretion of the municipality for "professionalism".

So there we have it -- there's a whole set of common sense regulations that are applied and that anyone can meet based on a set of objective criteria. Then there's another set that got "glued on" which makes no sense at all. So ditch the latter, and soon you'll find there's no reason for uber at all.

[ But hey, at least it's not as bad as the US medallion system ! ]

Comment: Great feel but poor ergo ... (Score 1) 304

by Wrath0fb0b (#48093363) Attached to: The Greatest Keyboard Ever Made

Straight keyboards are really poor ergonomically, but I do love the mechanical feel of these old IBM models (and their newer imitators).

Might as well use this as an impromptu Ask Slashdot: are there any ergonomic one-piece mechanical wireless keyboards out there? I periodically Google for it (to replace an old Logitech one that's nearing EOL after a decade or so) but have never been able to find anything suitable.

Comment: Re:Honestly, rifles are not the problem (Score 1) 651

by Wrath0fb0b (#48039593) Attached to: The $1,200 DIY Gunsmithing Machine

Pistols, however, are used by criminals, by people committing suicide, and by kids playing around with them. As a direct result, over 30,000 people die every year after being shot with a pistol.

This is an example of a truthful but not useful statement. Yes, 30,000 people die every year as a result of being shot by a pistol. According to the CDC, in 2010 there were 11K firearm homocides and 19K firearm suicides.

That's a big difference in perspective, since a regulation that might be justifiable to prevent an individual from shooting his wife or neighbor might not be justifiable to prevent him from shooting himself. It's not dispositive, of course, but society has a much larger interest in preventing individuals from killing each other than killing themselves.

If it happens once, it's a bug. If it happens twice, it's a feature. If it happens more than twice, it's a design philosophy.

Working...