skysight-inc/HackerNews huggingface dataset:
To be honest I'm not bothered by that UX at all. The browser remembers my choice for each site, how many new, different sites do most users visit per day (that would need audio)?

If a user doesn't want to be bothered by the prompt, they can always configure the browser to always accept or always reject. Or use a whitelist/blacklist.

This is very different from the EU "this website has cookies" prompt, which does annoy me a lot. First of all, you are not really choosing anything meaningful, but you still need to click. Secondly, being a website feature (not in the browser) means you don't get a uniform UI (and sometimes it's a nightmare on mobile). Third, it's just pointless as practically all websites have cookies so the amount of information in those messages is close to zero.
Excellent article, thank you for linking it. I love and appreciate my vegan friends (have been one in the past, might be again in the future), but they need to be realistic about convincing others to change deeply-ingrained eating habits.

Short of an apocalyptic event, you could spend 100% of your spare time and energy trying to get people to stop eating meat and you'd be lucky to get a dozen lasting conversions. It's simply not an effective use of resources to make that your main/only focus.
Traxroot Vehicle Tracking Software
There was a global-menu extension for GNOME, but it's no longer supported. The reason for this apparently was the fact that the extension was not compatible with Wayland, so the developers moved on.
Oh, you're right. That's a bummer.
Have no fear- AI is here Is open source management and AI a perfect match?
Gnome Shell is about extensions, you want something to work differently - find a suitable plugin or write it.
Null/nil tends to represent the absence of a thing. That's perfectly logical. Things can be absent.
Traxroot ELD Software
It's nowadays quite a good heuristic that purpose and effects of a bill is opposite to what the bill's name says.
I would be really interested if you can shed a little light on the following related questions:

1. Do you see the bloat even if you don't use post C++11 features but compile using the C++17 standard?

2. Do you think it is mostly the compiler that is causing the bloat alone? Or is it stuff from the standard library header files that some how gets linked in (and are not used or needed by your software)?
> Warmer water is absolutely not related to climate change
Warmer water is not absolutely related to climate change

I think you got your "not" in the wrong place. No, climate change isn't the only thing, however it can be, along with human caused acidification / pollution.

The fact is this systems are so complex and so integrated that we do not know "absolutely", but we have a good idea.

But hey, if it isn't absolute, lets carry on destroying our planet, we have a backup plan after all... oh wait
For those like me who don't understand revision, it means review or restudy of material, derivative of revise, or go over again.

Depends on how they are studying. If on the computer, then more Facebook. If on textbook, then less.
It's really easy to grow algae. I have to clean it out of stock tanks constantly. Usually it's green, but if I leave a tank alone long enough the red will take over. This is fresh water mixed with cow saliva and some plant matter, but presumably it would be just as easy with salt water? Chemical processes typically produce CO2, due simply to their energy requirements.
I don’t have much to say about different versions of Common Lisp. I have mostly been using SBCL for years, except sometime switching to Clozure for faster compilation.

I experiment more with different versions of Scheme: Gambit, Chez, and Guile. I really like the Racket ecosystem - a lot of good work is done around Racket. I don;t much use Clozure (except for my hobby site cookingspace.com) unless I am using it because that is what a customer uses.

Church, for Probabilistic programming is interesting but it was apparently been supplanted by WebPPL(which is not a Lisp).
I wonder if modern lightweight tent design can learn something from yurts, since they don't really seem particularly portable by comparison. (I consider a tent "portable" if it can fit in my backpack, not a pickup truck.)
With Gnome you use extensions.

> No more convenient built in features/options like auto resizing a window to 1/4 of the screen by dragging it with a mouse to one of the corners, etc.

https://extensions.gnome.org/extension/39/put-windows/
Hmmm...those trains I step onto are (a) typically high speed and (b) quite often "international", though the concept really doesn't make much sense in the Schengen Area.

Are you talking about the Eurostar service from London (I remember the Waterloo station, though I hear it has moved to St. Pancras). That's the only one I can think of that fits your description.

The Thalys from Cologne to Paris via Belgium is/was also simple walk on walk off with normal train stations.
The last 100 years have been dealing with the fact that true and false are not enough to describe the world of computation. You also need undecidable, or null, for statements that can be proved to never terminate.

It is very much still an open question if a statement is absolutely undecidable and if we need to add something like null in all logic [0].

As for your arguments on why we don't need null, they sound exactly like the arguments against zero from the middle ages [1].

>Just as the rag doll wanted to be an eagle, the donkey a lion and the monkey a queen, the zero put on airs and pretended to be a digit.

[0] http://logic.harvard.edu/koellner/QAU_reprint.pdf

[1] Menninger, Karl (1969), Number Words and Number Symbols. Cambridge, Mass.: The M.I.T. Press.
I believe it's one of the reasons why India is rejecting free FB. Unlike India, the Philippine infrastructure is fragmented and offers little to no better alternatives which is why most are welcoming them in the country.
It's always been possible to run the window manager of your choice on Ubuntu, as it is the case on all Linuxen.
It's not about being surprised, it's about not reading the dialogue at all.

I make a barcode scanning app in the browser. Our users know that the app scans barcodes using the camera, they receive training on the app before using it, and yet about ~15%~ (Edit: it's closer to 8% now) of our users click "no" when asked to allow camera permissions to scan barcodes. It was causing so many support calls that we ended up doing a 2-stage permissions prompt. First we display a javascript dialog telling the user that they need to click "yes" for the app to work, then we show the native permissions request after they have clicked yes, because if the user selects "no" the first time, we can't ask again, and 99% of users don't know how to go into the settings and re-enable it (hell, even I don't know where it is from memory, and would need to hunt around to find where it is)

And it doesn't create an incentive not to ask at all. At worst the website is where they would be if they didn't ask, at best they are able to display notifications, play audio, play video, get location, etc...

It's a no-lose situation in 99% of cases for the website owner, unless they actually really need that permission to function, then they have a LOT to lose. It's a situation where the incentives are misaligned terribly.

And don't get me wrong, i'm also very VERY happy that I can prevent notifications or location access, but I also think that more could be done to prevent spamming of the permissions prompt itself.
I find cilantro completely outcompetes dill.
Google is starting to show a pattern of addressing the concerns of the large players (which themselves are a part of), and ignoring or degrading everyone else's experience.

Good luck trying to get predicable deliverability to gmail without your mail being put in the spam box as a small mail sender. Google refuses to even tell you anything about why or why not mail is being delivered unless you send hundreds of messages a day.

This is a small personal mailserver, compliant fully with DMARC/DKIM/SPF, has RDNS, reasonably old domain (a few years), IP not and never has been on any blacklist, reputable server provider, has been sending mail to gmail for a few years, is not sending anything except personal mail under my direct control, nothing that could even vaugely be considered commerical or spam of any kind.

Google still classifies it as spam, even with repeated clicking of "this is not spam" button by my recepients, after a while it just goes back in the spam folder, and has absolutely no hint at why, or how to change it.

To top it off im hearing reports that signing up for google suite for your domain immediately seems to remove this mysterious "fuck you filter", and you no longer get deliverability issues.

Ive heard similar rumours about placement in google search results, aswell as stuff like youtube recommendations, if you aren't already in the accepted list of stuff we wanna show you, dont bother even trying.

Its a very concerning thing because the outcry about shitty practices targeting the things 95% of people dont see, will be by definition limited, and yet it is these very things that are essential to remaining out under the thumb of parties like Facebook or Google.
have the unity devs been laid off or are they working on improving gnome now do you know?
6 - what about https://common-lisp.net/project/bordeaux-threads/
First of all, those objections seem very context-specific. Buses work great already in plenty of cities without those problems. It seems like you’re looking for ‘how can buses be better than BART for my specific commute’, not ‘how can buses be better than driving or ridesharing for everybody who doesn’t have another mass transit option already?’

But to your point about stopping in every block: optimizing a bus route along a major avenue in a block-based US city seems like a similar problem to elevator scheduling in a high-rise building. I wonder if similar models to ‘sky lobbies’ and destination selection could be applied to get people more efficiently to their destination.
Except when they break horribly. Some of them modifies gsettings directly, so even if you remove it, you still have to clean them up manually.
London is doing a decent job of covering your points:

> You can't make it stop at every block in order to make it take less walking to get to the bus stop.

How big's a block? London often has bus stops a few hundred metres apart even out in the sticks.

> Similarly, you can't have parallel lines a block apart.

London often has multiple routes serving the same area in addition to parallel routes nearby.

> You have to limit the service area so that you can afford to run busses every 5-10 minutes.

My most frequent bus (53) goes from Central London to Plumstead Station (~11 miles) on a 6-12 minute schedule during the day. That's not uncommon for London.

> And you'll want to improve streets so that busses can run down the center and pick up passengers from protected islands

Slowly happening over London - couple of stops near me have had their inset bus stop bays pushed out into the road to block traffic when the bus is stopped.
I wasn't aware London had sunlight.
Also, in my area residents see trees as dangerous to their investment. New neighbors (second home buyers) cut down trees like they're invasive weeds, all because of the remote chance that one of them might, some day, hit the house.
Well... isn't that true?
The problem with that argument is that articles are written about individual events, and aren’t trying to be comprehensive evaluations of global warming.

It’s neither informative nor helpful to dismiss such individual articles as being non-indicators of global warming because they don’t cover all the other evidence at the same time.
Website Builder – Build your free website – Contentder
Mens hoodies sale
The rules for the game are quite simple, thankfully. It's a good use case for Rust since the faster it runs the stronger the bot. Any crashes of course ruin the rating as well.
I think some people may disagree with you there: https://www.theguardian.com/global-development/2017/oct/24/t...
Wouldn't cinnamon help? I know it's a bit of an overkill, but it's a gentler entry to the gnome3 world.
How  to Stop Struggling with Your Inbound Marketing Campaign
I've been coding since around 1981. What changed my coding style most, is Option when I've started Scala 10y ago.
“When guns are outlawed, only outlaws will have guns.”
[...]
could be transformed into an argument like “Since it’s
possible to get guns illegally with some effort, and
criminals need guns to commit their crimes and are
comfortable with breaking laws, it might only slightly
decrease the number of guns available to criminals. And
it might greatly decrease the number of guns available to
law-abiding people hoping to defend themselves. So the
cost of people not being able to defend themselves might
be greater than the benefit of fewer criminals being able
to commit crimes.”

I think the one-line quote would persuade people more readily than the 10-line quote.
It might be just me, but I cannot (for the life me) understand what the issue is here. Maybe it's because I'm not a mobile game developer or content creator where audio and video is my life.

I think people like me would benefit with an actual side-by-side demonstration of what the issue is now vs the resolution the author is proposing.
> Here in the States, we are obsessed with the 'European' way of life.

I promise that's a "blue state" phenomenon. It's just America is exceedingly good at creating cultural bubbles so it seems like a broader American inclination.
I don't think that creating machines out of metal is inherently "more real engineering" than creating them out of plastic - both are more-or-less irrelevant to engineering as a discipline, and it seems that people can build things of rather incredible complexity in Lego.

Perhaps early familiarity with screws and whatnot might make building shelves a bit easier, but... frankly speaking, if you can't figure out how to use a basic set of tools just by looking at them and figuring out which parts fit in which holes - or figuring out that there might be a video on youtube to explain how to do whatever you're doing - there's bigger issues than which set of toys you grew up with. If that's the case, your entire learning environment from ages 2 to 25 has failed to provide you with the tools to understand how to gain knowledge, and whether you were provided with Lego or Meccano isn't going to help you cope with life.
Nanonets – Deep Learning  Platform (YC W17) Is Hiring Software Engineers in India
>Alternatively, you can only use languages which offer actual tagged unions,

I tried to address explicit-null-handling programming concepts such as Option<T> or tagged unions in my last paragraph.

Nevertheless, it didn't seem like the essay was about non-nullable concepts but instead, he was writing about the idea of "null" as a data representation for unknown values to be fundamentally flawed because of various boolean operations strangeness.

My point is that "null" as a data representation mapping to "missing" is an irreducible complexity which is orthogonal to Option<T>. E.g. F# Option<T> still has ".None" which is a "null by another name". Yes, the programming language support is superior because it forces the programmer to handle possible nulls instead of crashing. Safety around nulls enforced by the compiler is progress. (The null handling as a verb assisted by compiler checks.) However, it didn't remove the need to represent a null as a state -- or null as a noun. Why do I separate those 2 verb-vs-noun concepts? Because he used examples with constants such as "10* null" returning a "null" instead throwing an error as violating math logic. And "10< nil" violating 2-value boolean logic. Therefore he plays with the idea that nulls in the language shouldn't exist. Let's rewrite one of his examples using variables instead of constants:

x = Option<int>
y = Option<int>
x = null
y = 10 * x

What should "y" be? The essay says that's not the question to ask. He's wondering why multiplication doesn't throw an error. The idea of tagged unions and Option<int> really doesn't address "data" / "mapping" / "noun" concept of null and how it fits into certain intuitions about math and booleans.

This irreducible complexity is why "null as noun" will get reinvented as "99999", "-1", etc if you don't have null (whether spelled as ".None", "Nil", or some other standard way). Even if you have an array of Option<int>s and want to serialize to disk, you still need to write "null as data concept" in some fashion (empty string, sentinel value, extra "hasdata" field etc).

As side note, I find it interesting that some commenters believe the author is talking about Optional<T> or similar concept and that I missed his point. I ask those readers to look at the essay again and confirm that it makes no mention of "Option", "Optional", "Maybe", "sum types", "tagged unions", etc. His essay seems to be based on the flawed concept of data representation of unknown values. A key sentence near the top:

>Logically-speaking, there is no such thing as Null, yet we’ve decided to represent it in our programs.
React voted JS framework that most developers regard as essential to them
“Exceptional circumstances happen all the time”. Yeah it’s called an oxymoron.
I'm on 17.10, installed it with GNOME and went back to Unity after a few hours. I was not a fan of Unity when it was released, but i guess it grew on me. Using GNOME again just didn't feel right. And screen recording was broken, if they fixed that then I may give it another go after upgrade.
Exactly. I had setup some dock extensions before Ubuntu went back to gnome and I'm stuck with it now, can't seem to be able to switch back. Deactivating / uninstalling said extension didn't work. I uninstalled it years after installing so probably the settings changed name or something.
This. Lack of fractional scaling is a big deal. I have 15" Full HD screen on my laptop, and everything is too small without fractional scaling (I prefer to have it set at 1.125/1.25).
5 Strong Steps Towards Digital Transformation
The way that browsers typically handle this though is that your interaction isn't blocked by the prompt. There's a default state ('disallow'), the website can ask you for permission, and you can choose to either:

1. Allow
2. Deny
3. Do nothing at all

The website then must take all three into consideration so your experience isn't ruined as a result of a blocking-state.

I agree that the permissions system isn't ideal, and I would hope that the way we handle this interchange in the future can improve to a point where it's less invasive in terms of screen space. But at least for now, it shouldn't invade your ability to continue using the site.
I've been doing it a bit differently.
Lately I've written 2 generators.
Gen1 works using the Go language
a := Api("shop")
a.Root("/home/dalu/go/src/dalu/shop")
mProduct := Model("Product")
mProduct.Field("Id",Identifier,true) // (true=optional)
mProduct.Field("Name",String,false)
mProduct.Field("User",ReferenceId, false)
// etc
a.Model(mProduct)
a.Render()

this creates a "cobra init; cobra add api" app,
- handlers
- route definitions
- data repositories
- the models
- angular service files

https://github.com/dalu/reforum

next step would be to extend it with a full featured adminUI in angular using some kind of datagrid.
I was never big on testing so I'm not generating tests.

version 2 of this generator you write your models and they get inspected and from those models essentially the same thing is generated, only in v1 I wrote it all with fmt.Sprintf and now I'm working on the text templates.
I can't really say which one is better.
In v1, adding a new type means rummaging through all the instances where a typecheck is done.
In v2, it's the same but in text templates.
Both feel like they're sub-optimal solutions.

The layout of the handler in v1 is
type Handler struct {
userRepo
productRepo
}
etc, and a single repo for every model.
So if I need data from 2 or more repos it's done in the handler.

But in v2 I have 1 handler that gets passed 1 repo.
And the repo is initialized with the various options for dbname dbcollection.
Yes it's all MongoDB.

In v1 I have an unintuitive way to query the db.
Let's say there's a ProductRepo, I have a ProductParams type
when I had to set true to "Name" if I wanted to query the name attrib of that model, then set NameQuery to be a new instance and if I wanted a equal query "name = 'hello'" I'd set the NameQuery.Type = "eq" and NameQuery.Query = "hello".

In v2 I got rid of the "Name = true" thing. And I'm json, then base64 encoding the query for GET queries.
This way I can have a more convenient/intuitive and slim Params structure.

I'm currently thinking about doing this, but everything should be server side rendered, aka no angular. But I'm not sure... it's the old problem I faced as a PHP dev.
How to create re-usable components, programmatically.

You need to construct your data model and from this model you should be able to deal with ToMany, ManyTo, ToOne, OneTo and the rendering of those Forms and input validation and you need lazy loading for related models.

Qor does something like this in their adminui building blocks.
And I've seen something similar in PHP's Symfony.
Automating search for neat Mandelbrot fractals with entropy
I live in Copenhagen, and I prefer public transport (primarily buses) because I don't have to worry about finding and paying for a parking space or getting home drunk from a night out. It's also significantly less expensive than owning a car. I spent 4x the cost of my transit card[1] every month in gas alone, never mind maintenance and insurance costs.

I would have to walk significantly further from most parking garages to where I'm going, that from the nearest bus stop.

This talk of banning certain people is nonsense. The whole point of public transport is that it's for everyone. And what you're suggesting with "multi passenger vehicles" already exist in many countries. Here we call the "telebus", and it's working quite well in less densely populated areas. Just you know, without the rampant disregard for workers that Uber and Lyft display.

[1] Unlimited traveling in the city zone and the zone I live in for DKK375/month ($60).
Make Your Social Media Life Perfect
Why don't you move away from Google? It's like intentionally sticking to one of the worst companies and then complaining about it.

Try fastmail, it's really great.
Yeah, clearly they read the dialogue if by adding more dialogue you change their action.

The problem may have been that simply asking for permission to use the camera in general and not stating when and how you would use that permission, people thought about the fact that they didn't really want to give the app blanket permission to use their camera.

The solution to that problem is to point out what you are using it for and tell them it is necessary, which is what you did.
True. Time, more than money is wealth.

Earning $50k per year working 20 hrs a week may be better than earning $95k working 60 hrs a week.

I cook a lot, and love to cook at home, using fresh vegetables, lentils and legumes, constantly aware of the fact that it is such a luxury to be able to cook and eat at home. Fast food and pizzas are so cheap, for someone starved of time, it can be the only option, to make ends meet, in terms of time.

I have been in that situation of living on fast food for more than a year, and have been grateful to be out of such poverty of time, which has slowly yielded benefits in health, and monetary wealth.
I think the way C# handles it is actually good. Any operation with null should result in null. Throwing errors willy-nilly just constrains you into doing extra null-checks in dozens of places instead of only where it is needed.
Ubuntu MATE 4 life.

It's like running peak 200x Ubuntu frontend with all the up to date backend.
Has anyone tried Agate micropayments? You can see it on http://popbitch.com/stories/, click on a story to see it working...