Electric scooters are illegal in the UK because of 1835 law - <AUTHOR> https://www.businessinsider.com/electric-scooters-illegal-1835-highways-act-2018-8 <comment><USER2> I'm all for anything that can reduce the number of cars in European cities.

That said, whether they're explicitly forbidden in your country, or in a legal grey area, I think anyone riding these scooters is asking for trouble. If you do cause an accident, your personal liability insurance _will not_ cover anything. Even if you aren't at fault, you are on a vehicle that has no legal category, no insurance, and is not supposed to be used on public roads. Given that some models go up to 50 km/h, this kind of risk sounds pretty insane.

We definitely need legislators to work things out before SV startups put them in the hands of unaware people.

<comment><USER3> Which part of this isn't applicable to bicycles as well?

<comment><USER2> All of them?

Bicycles belong in a category that is properly defined by the law. Riding a bicycle is explicitly covered by your personal liability insurance. 45 km/h e-bikes have their own special category and need license, plate, registration and specific insurance.

<comment><USER4> _personal liability insurance_

How many people do you think have personal liability insurance in Europe?

<comment><USER2> >90% in my country. I wouldn't be able to rent an apartment without one. But that is beyond the point.

If you use a bike on public roads and want to be insured, you can. A scooter, your insurer will tell you they cannot do anything.

</comment></comment></comment></comment></comment><comment><USER5> If it takes a nineteenth century law to keep pedestrians safe from vehicles whose drivers obey neither convention nor signals of all kinds, so be it.

<comment><USER6> This really isn't how they should be regulated, though - while I have yet to form an opinion on electric scooters, their impact should be evaluated and specific legislation enacted for them, rather than banning them wholesale with no consideration thanks to legal happenstance. That a law enacted nearly 200 years ago is being applied to vehicles significantly out of scope or intention of the original intent strikes me as a legislative failure, regardless of the merits or dangers of scooters on sidewalks.

<comment><USER7> The reality is that the UK (and the US and anywhere else with a long tradition of relatively continuous and stable government) has lots of laws that are currently enforced that are dozens to hundreds of years old. In common law countries, we have laws that we can trace back many hundreds of years.

If you think a law is outmoded or no longer reflects society's values, then you have recourse: get it repealed or amended. Or flaunt the law and take your chances. People do that all the time, with greater or lesser degrees of success.

Societies ruled by law should not ignore old laws _just_ because we think the original authors could not have possibly basic good judgments like, say, pedestrians should be safe on pedestrian thoroughfares.

</comment></comment></comment><comment><USER8> This 1835 law is utterly sensible. Electric scooters on pedestrian paths ? No, just no. The only modes of transportation on pedestrian paths should be powered by your feet. We can allow powered wheelchairs for the disabled but that should be the upper limit. Why are pedestrians always the one to get the shaft in road 'innovation' ?

<comment><USER9> You have an issue with speed and size of someone on the footpaths, I could run fast and cause more problems than someone on a scooter on the path. Besides its not like Scooters will ever be that popular because people love transporting stuff around in their cars and they need/expect a certain level of protection from the elements which scooters, bikes and motorbikes will never exceed. Its a bit of a storm in a teacup which is why the UK police are not prosecuting electric scooter users at the moment.

<comment><USER8> Jogging on footpaths while respecting right of way is completely different from running helker-skelter, bumping and knocking people down. I hope we really don't need to debate the difference between the two.

<comment><USER10> The concept of codified law unfortunately does require that debate.

</comment></comment></comment></comment><comment><USER11> This is also the case for bicycles, however it's purpose is more about dissuading cyclists who don't consider themselves guests on the pavement:

> The introduction of the fixed penalty is not aimed at responsible cyclists > who sometimes feel obliged to use the pavement out of fear of traffic and > who show consideration to other pavement users when doing so. Chief police > officers, who are responsible for enforcement, acknowledge that many > cyclists, particularly children and young people, are afraid to cycle on the > road, sensitivity and careful use of police discretion is required.

Pavements are for people, if you want to ride on it that is fine, but you have no right of way over people on foot.

The carriage law should not be removed outright but amended similarly while making it clear it's not ok to make pavements dangerous for pedestrians.

</comment><comment><USER12> I had no idea that electric scooters were a fad elsewhere, but the tone of this article makes me glad they aren't in the UK. The assumption seems to be that they'd be on the footpath, which just sounds crazy to me. As for the roads, I thought the pedelec compromise of not allowing throttle controls was quite sensible.

<comment><USER13> They are pretty popular in London for the last mile commute - it's faster than a bus, and easier to transport on trains and store than a bike.

<comment><USER14> A Brompton bicycle weighs less than most electric scooters and isn't much more bulky. They're not cheap, but they're built to last and enormously popular amongst commuters. They now offer an electrically-assisted option, if that's your bag.

[https://www.brompton.com/the-bike](https://www.brompton.com/the-bike)

</comment></comment></comment><comment><USER15> From the article

> If any person shall wilfully ride upon any footpath or causeway by the side > of any road made or set apart for the use or accommodation of foot > passengers; or shall wilfully lead or drive any horse, ass, sheep, mule, > swine, or cattle or carriage of any description, or any truck or sledge, > upon any such footpath or causeway; or shall tether any horse, ass, mule, > swine, or cattle, on any highway, so as to suffer or permit the tethered > animal to be thereon.

It seems like a step forward was made almost two centuries ago. Let's not take a step back.

</comment><comment><USER16> Anecdotally, I've noticed a bunch of people using "scary", "dangerous", "hazard", etc. a lot more recently. I wonder if there's some sort of correlation with our helicopter parent upbringing and a desire for an entirely safe environment.

Personally, there's a risk level that I'm content with living with and scooters on the pavement are beneath that.

<comment><USER17> Exactly this. Most of those scooters I've seen don't travel faster than a running person, yet I don't see joggers being banned from sidewalks.

<comment><USER18> Joggers can be quite easily funnelled and blocked by other pavement users refusing to yield. Less so for those riding on hard, mechanised devices.

<comment><USER17> This "hard, mechanised device" usually weighs around 10 kilos. So far I don't see any evidence from countries where electric scooters are legal that they've become any more of a problem than conventional means of transportation.

</comment></comment></comment></comment><comment><USER19> This isn't unique to the UK. Small electric vehicles fall under motor vehicle regulations in New York state which also bans them from sidewalks. E-bikes, electric scooters, hoverboards, they're all supposed to be registered with the DMV for use on public roads.

</comment><comment><USER20> Am I missing something with the UK definitions or are streets and pavement (sidewalk in US parlance) a complete apples and oranges comparison? Bicycling on the street is perfectly valid and sensible - especially since those are usually lower speed and congested areas in the first place. Replacing cars with bicycles eases congestion in dense cities. Replacing cars with bicycles on a highway would cause problems.

Similarly sidewalks are narrow and meant for pedestrian capable ranges of motion and speeds. I lean towards 'legalize electric scooters on the streets keep them the off the pavement unless the operator is disabled'.

</comment><comment><USER21> They should be glad their spaces aren't littered with these imported, rentable scooters, it's already happened with bicycles in various cities around the world and it's a mess.

</comment><comment><USER22> I think laws should come with expire dates by default.

</comment><comment><USER23> Ban cars in congested areas. Problem solved.

</comment><comment><USER24> As a pedestrian walking on already crowded sidewalks, I loathe sharing the sidewalk with scooters - even entirely people-powered ones.

That extra speed makes them scary and dangerous, and the people riding them never seem to be considerate of the people they're sharing the sidewalk with. Not quite as bad as bicycles on the sidewalk, but approaching the same category.

IMO we should be repurposing roads not aggressively to make room for cyclists and other modes of transportation like scooters.

If scooters are too slow to be safe in the bike lane, make an additional scooter lane and remove some free automobile storage on public property - which is not in fact a birthright.

<comment><USER25> I ride my electric unicycle at ~10 miles/hr on sidewalks. Slightly faster than walking but way slower than a bike. I can stop instantly( unlike one wheels) an slow down to less than walking speed if needed. I don't see why I can't share the sidewalk with pedestrians.

<comment><USER26> I'm a pretty fast walker and I go about 3.5-3.8mph, so you are going ~3 times faster than me.

<comment><USER25> oh yea you are right. sorry I misstated. 10 mph is the top speed on my segway one s1 and I never hit top speed on the sidewalk. So maybe around 6-7 mph which is twice the walking speed, ppl running for a workout overtake me.

</comment></comment></comment></comment><comment><USER27> It's illegal in the uk because here your desire for profit and your customers lack of regard for other people doesn't as yet override those other people's right to walk down the pavement unmolested. We have cycle lanes and powered push bikes. If the output is less than 250w and can do no more 15mph then they can be used on the roads in cycle lanes without a licence or road tax.

<comment><USER28> I completely agree with you. I'll just point out that in the UK we don't have road tax and haven't had since it was abolished in 1937.

Instead we have Vehicle Excise Duty, VED, which is a tax on emissions. Which is why electric vehicles pay no VED.

<comment><USER29> I really really want to experiment with that. Can I hook a gas generator to my bike? During the ride or only before?

<comment><USER30> You are a gas generator. I'd hope it's not so voluminous or noxious that you require regulation

</comment></comment></comment></comment><comment><USER31> Good</comment>


NoScript – The Week Is Not Over Yet - <AUTHOR> https://hackademix.net/2017/11/18/the-week-is-not-over-yet/ <comment><USER2> It always makes me stop to think a little when I realise just how many great software projects are largely developed and maintained by one person.</comment>


Ask HN: Is it possible for me to obtain a VISA to run my startup in the US - <AUTHOR> Hi,
Here is our situation.
- Me, British Citizen
- Business partner, American Citizen
- We have a US Company incorporated in Delaware.
- We have received seed funding < $100k to participate in an incubation programme for 3 months.
I am eligible to apply for a 90 day Visa Waiver Programme OR for a visiting/tourist visa. The latter prohibits me from running a business and getting paid from our company whilst living here. The former cannot be extended or changed once received.
We have a demo-day and potential to raise a Series A round at the end of the incubation and should that happen, I'd like to remain in the US to build the company for a period of 2 years.
I'd ideally like a 6 months visa right now in order to participate in the programme to completion.
Has anyone been in a similar position or have any advice on what my best options are? <comment><USER2> You may find an answer at [https://news.ycombinator.com/item?id=17472974](https://news.ycombinator.com/item?id=17472974). The host of that thread specializes in solving such problems for startup founders.</comment>


Give Them the Button - <AUTHOR> http://www.michaelnygard.com/blog/2015/10/give-them-the-button/ <comment><USER2> I'm a big fan of having automation enforce as many rules as possible, but mostly because the cost for a person to enforce a rule (overly simple example being tabs vs. spaces) from a relationship standpoint can be absurdly high.

I'm tired of wanting to be a stickler but having my coworkers hate me for it. Getting the machine to stand in to take the brunt of the push-back is fantastic.

I'm fairly skeptical of how one could automate the more complex points of expertise, however. What would a DRY enforcement mechanism look like? "Found copy/pasted code, please refactor" comment in PRs?</comment>


Complete Scans of the Penguin Atlas of Medieval History (1961) - <AUTHOR> http://www.learn.columbia.edu/courses/medmil/pages/non-mma-pages/maps/penguin.html <comment><USER2> On the subject of historic maps of trade routes... I'm very interested in Asian history. One thing I've noticed is that, when viewing the 'Maritime Silk Road' maps in various countries' museums and throughout various sources, then ports and paths are completely different. Sure, there's some similarity, but the fact is these things are vague as all hell and represent some seriously dangerous implied semantics ("route was there, route was not there" sort of binary logic). The reality is that we know next to nothing about early human trade, much of which was conducted the the years BC by water. This is well backed up by archaeology, which places things like Roman coins in Vietnam, Indian silver and minerals in Melanesia, or even (for a later example) coins from 15th century Zanzibar in remote parts of northern Australia. People should bare these realities in mind when viewing this sort of thing, which essentially amounts to 1960s era fantasy-maps of the popular past. We can do better - but not _much_ better - today; historical cartography still has a long way to go.

</comment><comment><USER3> Is it missing some labeling or a legend or are there just marked areas that don't really have a name? I mean areas like that around the Avar Khanate or the large area where modern Russia is in the A.D. 650 map.

<comment><AUTHOR> Each map in the actual book has a page of text accompanying it and it usually explains what the shaded areas refer to. As I recall, the absence of a name is meant to imply a pre-state, tribal zone, and the different patterns indicate the basic cultural-linguistic group involved (i.e., diagonal lines = eastern European Slavic tribes, etc).</comment></comment>


Headphone Jack: The King is dead, long live the King - <AUTHOR> https://medium.com/@ayukaev/the-king-is-dead-long-live-the-king-db901e9e93b9#.oxkz054th <comment><USER2>
      The headphone jack was putting the additional risk on your device to be crushed.

Can you expand on this? I'm assuming the force required to collapse the 3.5mm cavity would be incredibly high.

      Jacks themselves were good spots to break due to mechanical stress, especially the cheap ones.

The same can be said about the lightning connector.

      It was literally stopping any innovation. Without the jack, new alternatives will pop up at an incredible pace.

This is forced obsolescence. Suppose the jack remained in iPhone 7. Apple would have a much harder time selling wireless earbuds.</comment>


EFF Urges Court to Roll Back Ruling Allowing Remote-Control Spying - <AUTHOR> https://www.eff.org/press/releases/eff-urges-court-roll-back-ruling-allowing-remote-control-spying <comment><USER2> It means the US goverment can farm out spying on American citizens to friendly foreign agencies then claim to have no involvment in it. Brilliant. Sounds like "rendition"

<comment><USER3> I see this repeated often, but has the problem ever actually been substantiated with proof? Collection of data by allies makes sense, but USPI would still need to be minimized, just as if NSA had collected it. Is that incorrect?</comment></comment>


Show HN: Ergohacking, Filter for ergonomic hacking keyboards - <AUTHOR> http://www.ergohacking.com <comment><AUTHOR> Earlier this year I finally bought a decent keyboard (Kinesis Advantage). While I was searching for what I wanted, I put together a list of keyboards with some features and have just put it online. Hopefully it can help others in search of a good keyboard. I'm sure the list is incomplete (both in terms of keyboards and listed features). I'll be adding keyboards in the coming days. Feel free to give feedback and suggestions if there are certain things missing.

(e.g. I was thinking about adding filter for cherry mx key color)

<comment><USER2> It is a pretty comprehensive list of desirable (non-gaming) keyboards, but I'm not sure that many of them fit the description of "ergonomic" at all.

This keyboard is basically the ultimate version of what your list tries to compile: * Ergonomic (split) * Hackable (macros and programmable keys) * Mechanical

[https://ultimatehackingkeyboard.com/](https://ultimatehackingkeyboard.com/)

It's not out yet, but you can pre-order one.

<comment><USER3> In a similar vein, there is [https://shop.keyboard.io/](https://shop.keyboard.io/) I pre-ordered one earlier today to replace a TECK.

I agree that most of the keyboards on this list are not ergonomic at all. Most are simply mechanical keyboards.

</comment></comment></comment><comment><USER4> I've seen no controlled research that any "ergonomic" keyboard is any better or worse than any other keyboard. Taste-wise, of course, some are clearly better than others, but different people can have different taste.

Is there any science behind this? I don't count "studies" paid for by keyboard makers to be legit --I mean controlled third party studies.

</comment><comment><USER5> No ISO layout filtering.</comment>


Zillow, ex-MS, Pure Networks, Cisco hacker killed by random bullet in Seattle - <AUTHOR> http://seattletimes.nwsource.com/html/localnews/2018285764_shooting26m.html

<comment><AUTHOR> I'm submitting this in honor of my friend, Justin Ferrari. He was a fellow hacker at Viair (now Good Technology). He worked at Microsoft with the Outlook Express team, among other things, helped start Pure Networks (acquired by Cisco). He was a really amazing guy. He was killed while driving w/his father and children through South Seattle by a random bullet thought to have come from two kids who were arguing on the side of the road.

I submit this as a small way of reminding the community that life is short, and as a small and insignificant way of honoring a great man.

<comment><USER2> I read this in the Seattle Times yesterday and it really made me angry. They keep cutting the police budget and crime only increases... then things like this happen.

There have been a lot of random shootings this year. Maybe we need to train these thugs to shoot better, so they kill each other instead of innocent people who are driving with their kids in the backseat. And of course, no one in the area knows anything...

<comment><USER3> It almost happened to my coworker last year about the same time and it's also in the central area of Seattle. When he was walking along a street, there were two cars driving by. a guy in one of the car took out a gun, and shot at the other car. It's like 10 feet away from my friend. he's so scared, and he's lucky didn't get shot.

</comment></comment></comment><comment><USER4> And this is why other nations have gun control laws. I think the rest of us are continually scratching our heads at the proliferation of unregulated guns in the US when they fairly clearly cause so many obvious problems. The article skirts the issue just saying the city had noticed an increase in gun violence and was "galvanized" but then back away and later just talked about police budgets.

Most of the rest of the world honestly finds this aspect of the US quite baffling.

<comment><USER5> guns kill people just like cars drive drunk and forks make people fat.

Mexico has super strict gun laws, read the news and you'll see how well that is working out for them.

<comment><USER6> That's kind of disingenuous, Mexico has massive corruption problems and a massive, semi-open black market.

<comment><USER7> > That's kind of disingenuous, Mexico has massive corruption problems and a > massive, semi-open black market. reply

And the US doesn't? Where do you think that the recreational drugs come from?

<comment><USER6> Not to the degree Mexico has. And drugs are entirely different from guns -- drugs are something an individual takes that affects them; guns are bought by those who either feel the need for defense or the need to kill people easier.

<comment><USER7> > And drugs are entirely different from guns

Not from the supplier's point of view. (There is one difference - guns aren't consumables. Ignoring that, the US could supply a gun per crime with less than 1% of the suspected marijuana smuggling volume.)

FWIW, I've been offered illegal guns in both England and Japan. "You" may not know where to find them (but I suspect that you're lying to yourself about that) but anyone who does can.

</comment></comment></comment></comment></comment></comment><comment><USER8> I worked at Expedia while he was there. He and I didn't work directly together. Despite that he and I are only very loosely connected through 6 months as coworkers more than 10 years ago, it somehow feels like I just narrowly dodged a bullet.

I'm really saddened to hear about this. RIP Justin. And best regards to your survivors.

</comment><comment><USER9> RIP. :(

I didn't know the guy but heard about him on the news. What a tragedy.

</comment><comment><USER10> That's really awful.

How hard is it to get a car with bullet proof windows?

<comment><USER4> Does any one else find it sad the question is about bullet proof glass and not controlling guns?

The last place I was that someone I knew had bullet proof glass in their car was Colombia. Are the American's here happy with this comparison on public safety?

<comment><USER11> Colombia, by the way, has strict gun controls.</comment></comment></comment>


Happy 1600M epoch second - <AUTHOR> https://www.epochconverter.com/ <comment><USER2> Dagnabbit I overslept!

I use BitBar on my macbook to display the epoch second on my menu bar in a format like this: { 1,600,003,345 }

The script to do that is:

        EPOCH=$(/bin/date +%s | /usr/local/bin/sed ':a;s/\B[0-9]\{3\}\>/,&/;ta')

        echo "{" "${EPOCH}" "}"

Separating the epoch into thousands was done with the help of this Stackoverflow question: [https://unix.stackexchange.com/questions/113795/add- thousand...](https://unix.stackexchange.com/questions/113795/add-thousands- separator-in-a-number)

EDIT: This is a much simpler way of writing it, thanks to GNU Coreutils' "numfmt"

        EPOCH=$(/bin/date +%s | /usr/bin/numfmt --grouping)

<comment><USER3> GNU coreutils printf also supports insertion of thousands separators with the ' format flag, which gives another way to add them to numbers:

EPOCH=$(printf "%'d" $(date +%s))

<comment><USER2> Very cool, thank you for sharing :)

</comment></comment></comment><comment><USER4> Here is a screenshot I took at Unix timestamp 1600000000: [https://twitter.com/susam/status/1305120936098627589](https://twitter.com/susam/status/1305120936098627589)

Reproduced as text below:

      $ date -u; date; date +%s
      Sun Sep 13 12:26:39 UTC 2020
      Sun Sep 13 17:56:39 IST 2020
      1599999999
      $ date -u; date; date +%s
      Sun Sep 13 12:26:40 UTC 2020
      Sun Sep 13 17:56:40 IST 2020
      1600000000

An important point worth noting from the POSIX.1-2008 specification:

"Coordinated Universal Time (UTC) includes leap seconds. However, in POSIX time (seconds since the Epoch), leap seconds are ignored (not applied) to provide an easy and compatible method of computing time differences. Broken- down POSIX time is therefore not necessarily UTC, despite its appearance."

See [https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd...](https://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd_chap04.html#tag_21_04_16) for more details on the above point.

By the way, in case you got curious like me to find out if this Hacker News story (the original post) was posted exactly at this time, the answer is, it was posted at Unix timestamp 1599999975. See [https://hacker- news.firebaseio.com/v0/item/24460382.json](https://hacker- news.firebaseio.com/v0/item/24460382.json) for the details.

<comment><USER5> > leap seconds

Over long periods of time the approximation that a day takes 86400 SI seconds will become less and less accurate as the rotational period of the Earth changes. I wish calendars would be either purely astronomical in nature or purely SI in nature. Hybrid systems like UTC become more and more messy over time as the amount of adjustment needed increases. We've had ~25 leap seconds in UTC already, and it's a relatively young calendar system.

EDIT: I also wish we would change the name of the SI measurement "second". An SI second and an astronomical second are two different things, and deserve two different names.

</comment></comment><comment><USER6> Example of an associated bug: [https://community.splunk.com/t5/Archive/Splunk-Y2K-type- bug-...](https://community.splunk.com/t5/Archive/Splunk-Y2K-type-bug-arriving- on-September-13-2020/m-p/480856/highlight/true#M90101)

<comment><USER7> How the hell do regexes like these find their way into production …

<comment><USER8> There's an example of the sort of chronic (pun intended) patch-driven- development, YAGNI(Y) thinking that leads to this sort of thing, in the last paragraph:

"For instances that can't/won't get updated in time, this Splunk app can be deployed as a workaround. The app executes bash/Powershell at Splunk startup to check for the above regex _and add a '6' if needed._ It may not be the best fix, but it does kick-the-can on the problem for another 3 years, at least until epoch time reaches 1.7e10."

Someone, somewhere is saying "but it passed all the unit tests..."

<comment><USER9> > at least until epoch time reaches 1.7e10.

And to add insult to injury: that should actually be 1.7e9; 1.7e10 would be 17000M epoch seconds, not 1700M.

</comment></comment></comment></comment><comment><USER10> I celebrated the Billenium with my brother (two days before 9/11, actually). He's dead now, and we didn't have a lot of shared interests, so it'll always be a nice memory for me.

<comment><USER11> I remember being in #billenium on openprojects (before it was called freenode) at the time. Really neat shared community experience.

</comment></comment><comment><USER12> Less than eighteen years until 19th January 2038!

</comment><comment><USER13> Sweet 16 seems fitting here, considering that Unix/Linux systems have gained so much momentum over the past decade (even Lenovo started shipping Fedora on laptops this month).

</comment><comment><USER14> I've recorded a video if someone wants to relive it for whatever reason: [https://twitter.com/input_sh/status/1305122125250990080](https://twitter.com/input_sh/status/1305122125250990080)

</comment><comment><USER15> There we go, humanity survived for another _insert description of time interval_

</comment><comment><USER16> in Gif: [https://media.giphy.com/media/MDxNo8cSBDHYTGLdC2/giphy.gif](https://media.giphy.com/media/MDxNo8cSBDHYTGLdC2/giphy.gif)

</comment><comment><USER17> Woohoo!

Next one (1700M) will be on 2023-11-14 22:13:20 +0000 UTC.

<comment><USER18> Which makes me why this got so much traction; meh it's only every 3 yearsish.

<comment><USER19> That means it's 3x more significant than New Year's Eve!

</comment></comment></comment><comment><USER20> "There were programs here that had been written five thousand years ago, before Humankind ever left Earth. The wonder of it—the horror of it, Sura said—was that unlike the useless wrecks of Canberra's past, these programs still worked! And via a million million circuitous threads of inheritance, many of the oldest programs still ran in the bowels of the Qeng Ho system. Take the Traders' method of timekeeping. The frame corrections were incredibly complex—and down at the very bottom of it was a little program that ran a counter. Second by second, the Qeng Ho counted from the instant that a human had first set foot on Old Earth's moon. But if you looked at it still more closely…the starting instant was actually about fifteen million seconds later, the 0-second of one of Humankind's first computer operating systems."

\- A Deepness in the Sky, Vernor Vinge

<comment><USER21> Look at it yet more closely even than that, however, and you'll find that it isn't the year that that operating system was invented, nor the year of its 1st Edition, nor even the way that it counted time before 1974. It was simply a year that, in the words of one of its creators, "seemed to be as good as any" (dmr, _Wired_ , 2001).

</comment></comment><comment><USER22> The end of an era, I'll be glad to see 1600M timestamps with a lot more zeroes in them now. Feels like the future.

</comment><comment><USER23> This is gonna be weird seeing timestamps starting with 16- from now on

<comment><USER24> Sort of like I remember the rollover from 9.. to 1000000000 in 2001 like it wasn't all that long ago as I was well into my career. It must have been a notable moment as I remember that I was doing some consulting work hooking up remote datasources for some telecom apps.

<comment><USER25> Our local Linux User Group (now defunct) had a "special event" to celebrate the occasion (although I didn't realize ~19 years have since past!).

Unfortunately, the bakery we got the cake from was unable to satisfy our request for 1000000000 candles on the cake.

<comment><USER24> Yeah the seconds since must me shorter. You could've gone for 31.7 candles but it doesn't have the same splash.

</comment></comment></comment></comment><comment><USER26> Life is fleeting.

<comment><USER27> Time flies.

<comment><USER28> Time flies like an arrow. Fruit flies like bananas.

</comment></comment></comment><comment><USER29> Did anyone get alerts so far on a Sunday morning? Suddenly one of my replicas is reporting suspiciously behind but not actually

<comment><USER30> My apartment building had a very brief (less than a few seconds) power outage at the time 1600M seconds rolled over. Weird.

</comment></comment><comment><USER31> Happy 1600

</comment><comment><USER32> [https://www.unixtimestamp.com/](https://www.unixtimestamp.com/) The Current Unix Timestamp 1600001210 seconds since Jan 01 1970. (UTC)</comment>


How I read Techcrunch - <AUTHOR> http://www.techcrunch.com/author/michael-arrington/

<comment><AUTHOR> Just reading Arrington's stuff is a good filter on TechCrunch... His stuff tends to be more important, his sources better, his writing style more fun.</comment>


Tent - The Protocol for a Decentralized Web - <AUTHOR> https://tent.io/

<comment><USER2> Neither tentd nor buddycloud seem to be attracting many users. Another contender, pumpio, may have better results as the protocol developer has chosen to replace the ostatus protocol running identi.ca with the pumpio protocol. Sometime later today identi.ca is expected to complete this transition to pumpio. This will jump start pumpio with about 25k active users.</comment>


Steam outage caused by data center network connectivity problems - <AUTHOR> https://blog.thousandeyes.com/steam-outage-monitor-data-center-connectivity/

<comment><USER2> I wonder if Half Life 3 was released just before the start of the outage.</comment>


Linux fork detection using thread specific keyrings - <AUTHOR> http://daurnimator.com/post/120415954844/linux-fork-detection-using-thread-specific

<comment><USER2> This is pretty amazing. I can't decide if the right response is "<3" or "sigh", but it's one of those.

Is this the best way you know of? I'm reminded of how the best way to answer "is this process single-threaded" on Linux is apparently to stat /proc/self/task, which I suggested satirically to a friend but turned out to be the closest thing to a right answer.

<comment><USER3> You can tell (without a syscall!) if between two points there has been a fork or thread created by maintaining two counters: One in a MAP_SHARED and one in MAP_PRIVATE.

Every check, increment both counters, then compare them. If they disagree, then one of those pages has been copied (the MAP_PRIVATE) and one has not (MAP_SHARED).

<comment><USER2> I don't think that algorithm works, but I'm probably misunderstanding:

        char *shared, *private;

        bool check_fork() {
            return ++*shared != ++*private;
        }

        shared = mmap(MAP_SHARED...);
        private = mmap(MAP_PRIVATE...);
        *shared = 0;
        *private = 0;
        check_fork();
        if (fork() == 0) {
            printf("%d\n", check_fork());
        } else {
            wait();
        }

The only way it could work is if you were guaranteed to also call check_fork synchronously in the parent. But if you had that degree of control over forks, then you just know when your forks are and you don't need these tricks.

The use case here is in an external library (e.g., OpenSSL) where it might be called post-fork by a semi-naive user of the library, or where the library might explicitly want to be usable post-fork (e.g., Apache prefork serving) and need to adjust some state. If you expect the caller to reliably inform the library of forks, then you don't need any trickery.

Another use case that I'm interested in is signal handlers, which could be delivered immediately post-fork. If your handler does something like write to a file descriptor (which is very common), those file descriptors mean something different in the parent and the child, so if the post-fork code in the child was in the middle of switching out file descriptors before exec, you might accidentally write to the wrong thing. So you want to be sure that you're still in the same process before writing to a particular file descriptor. UNIX doesn't offer a way to reset signal handlers on fork, unfortunately.

<comment><USER4> The algorithm works, though it doesn't distinguish between the parent and child - the first process to call check_fork() after the fork will return false, and the second process to call it will return true. (Note that upon returning true, it should remap and reset the state.) This is sufficient for the use case of reseeding a PRNG, though not for your signal handler/file descriptor use case.

The problem with the algorithm (which I'm discussing on another subthread) is that the increment of the shared counter needs to be atomic, and the integers need to be 64 bits to avoid wraparound, and I'm not sure that all architectures support atomic 64 bit increments.

Edit: I just realized that check_fork() would spuriously return true in the first process after the second process calls it, which isn't so nice. Maybe this can be prevented by comparing before you increment, but then I think there might be a race condition? It would be helpful if geocar could provide some pseudocode so we're not left guessing how the algorithm works.

<comment><USER2> Ah, gotcha, it works for a different use case from mine (but a valid one). And yes, I'd like to see code using well-defined atomic operations and orderings / barriers.

</comment></comment></comment></comment></comment><comment><USER5> Sorry to go meta but I love how concise this post is. "I did a clever thing, it solves problem X. Here's the code."

</comment><comment><USER6> Stupid question: shouldn't it be KEY_SPEC_PROCESS_KEYRING rather than KEY_SPEC_THREAD_KEYRING ?

<comment><AUTHOR> > Stupid question: shouldn't it be KEY_SPEC_PROCESS_KEYRING rather than > KEY_SPEC_THREAD_KEYRING ?

Not a stupid question.

It doesn't really matter; the distinction between 'thread' and 'process' on linux is very thin: `CLONE_THREAD` and `CLONE_VM` are independant.

I chose to use `KEY_SPEC_THREAD_KEYRING` to err on the safe side. In the back of my mind I also considered that thread-local would be 'more' local than process-local, and hence might be faster inside the kernel (but this is unverified).

</comment></comment><comment><USER3> Another option is to store the seed in a MAP_SHARED segment.

<comment><AUTHOR> > Another option is to store the seed in a MAP_SHARED segment.

I assume you mean MAP_PRIVATE?

But that doesn't work. MAP_PRIVATE pages are copied to a fork.

<comment><USER3> No, I meant MAP_SHARED. That way the seed is shared across all forks and will only cause problems if the PRNG is being used as a cipher.

However there's another trick. If you have two counters: One in MAP_PRIVATE and one in MAP_SHARED you can detect the unsafe scenario by incrementing each counter and verifying lockstep.

If the counters mismatch, you've been forked: unmap and map new pages, and do whatever post-fork "reinitialisation" that is required.

<comment><USER4> That doesn't work because there's a race condition - if both processes increment the MAP_SHARED counter at the same time, they could end up seeing the same value and not think that a fork has occurred.

<comment><USER3> Use an atomic increment (e.g. lock xadd).

<comment><USER4> That's architecture-specific, which isn't nice.

Also, the counters would need to be 64 bits so that wraparound isn't a concern. Do all architectures even have an atomic 64 bit increment?

<comment><USER3> What, and linux isn't architecture-specific?

The counters don't need to be 64-bits: Programs don't need a random number in one process and the 4 billionth only.

<comment><USER4> > What, and linux isn't architecture-specific?

I have no clue what point you're trying to make.

> The counters don't need to be 64-bits: Programs don't need a random number > in one process and the 4 billionth only.

If this is going to be used for a CSPRNG, you have to take into account adversarial conditions. A 32 bit counter leaves insufficient safety margin: it's conceivable an attacker could induce an application to generate so many random numbers that the counter wraps around, causing another process to generate a duplicate random number. It may seem unlikely, but time after time security researchers have demonstrated that attacks previously considered "unlikely" are possible.

<comment><USER3> No, a 64-bit _atomic_ add isn't required. Smaller atomic adds can be used just fine with a double-wide number.</comment></comment></comment></comment></comment></comment></comment></comment></comment>


Apple Weekly 2016/34 - <AUTHOR> https://appleweekly.net/2016/34 <comment><USER2> > Intriguing Rumor: 'Apple Could Use Custom x86 SoC Made by AMD'

      Most of the speculation about Apple taking control of its Mac CPU is about
      switching the instruction set to ARM. That's possible, of course, but
      problematic in many ways. (You wouldn't be able to use Boot Camp to boot into
      Windows, for example.) This is just an idle rumor from a year ago, but it's
      intriguing to think about Apple designing their own SoCs for Mac with the help
      of AMD.

> That could explain why almost all Mac haven't been updated for ages, > intriguing indeed!

> Intel aims to challenge TSMC over Apple chip orders by 2018

      Intel's recent pledge to expand its business making chips for others
      highlights its ambition to snatch chip orders for Apple's popular iPhones from
      Taiwan Semiconductor Manufacturing Co. as early as 2018, industry experts said.

> So Intel would build CPU for iOS and AMD x86 CPUs for the Mac?

This would be a... most interesting turn of events.</comment>


A New Kind of Classroom: No Grades, No Failing, No Hurry - <AUTHOR> https://www.nytimes.com/2017/08/11/nyregion/mastery-based-learning-no-grades.html <comment><AUTHOR> This made me think of education being made into an educational RPG. I'm sure some students enjoy the entertainment of the character development and mastery in a RPG, so why not make education (real life K-12 education) imitate art (video games)?</comment>