skysight-inc/HackerNews huggingface dataset:
I know what they are for and don’t need instruction on that, thank you very much.

I also know that #ifdefs are a bad practice with many pitfalls so their use should be kept to a minimum. There is a treatise on the subject written in the early ‘90’s that I now see is very much relevant, judging by your comment. I wish I could quote it but since I’m using a smartphone to type this it’s too much hassle to find it.

Regardless, from a software architecture’s point of view, introducing a GNUism or a Linuxism where it isn’t strictly necessary is an obviously bad idea.

How’d you fare with that GCC build on the mailing list from couple of years back, by the way?
I'm very surprised to see it on the list.

It's a mediocre teen-fiction, that starts off strong, but completely loses itself into an endless list of standard story tropes by the end. (trying not to spoiler, here)

It's only still popular now because the film has just left cinemas.
Consuming 2000+ calories in a 3 hour window is pretty hard to achieve I've tried it and man is it though.
>Second, employers affect the stress-inducing conditions of work: work-family conflict, long work hours, absence of control over one’s work environment, and economic insecurity. Stress makes people sick both directly and by inducing unhealthy individual behaviours such as smoking, drinking, and overeating.

Not just stress, I simply hate my job. I'm stuck here, for 12 years now.

"so get another job Ryan" bahahahaha you're funny.

I have no degree, in the past month I was flat out rejected within 24 hours of applying to two jobs for not having a 4 year degree in ANYTHING.

I have a personal bankruptcy which will prevent most employers from hiring me, in fact last year I took a remote job and a few days in discovered I couldn't log in... no one would return my emails... some time later I get an email saying if I don't return the laptop immediately I will be billed for it, I said fine send me a label 'we did to your email' the email address you blocked me from? 'oh'. Apparently my bankruptcy came up in the background they did AFTER hiring me, at no point did they ask me about my financial background, if I'd had a bankruptcy, or even if I had a criminal record... they waited until after training me and starting work, fortunately I hadn't quit my current job yet or I'd have been screwed.

Yesterday, after 3 video interviews spanning 21 days, I was rejected for entry-level customer service remote work and was told "keep honing your skills. Maybe find a relevant side project or a local company to dip your toes deeper into a technology company".

So I hate my job and no one else wants to even take a chance on me because I lack a degree, have a personal bankruptcy from 6 and a half years ago and have been in a niche job for 12 years.

I legitimately wake up some days thinking "shit, why didn't I die in my sleep" because I have no future, each year I'm at this job I hate my life more. I dread doing ANYTHING most days now because it's "I can't really afford this" or "I just want to vegetate" or "what the hell happens if I have an unplanned expense of more than a few hundred bucks" or "what if mom has more issues". I get even more pigeonholed into being stuck at this job because it doesn't translate to anything else. Add to that I have a disabled parent I help support and my whopping 32k gross income doesn't even allow me to save for retirement.

Awesome. SERENITY NOW!

THIS is how work is killing me. I'm sure that stress, dread and worry are doing wonders for my long-term health.
Isn’t it case in most of the world, including many EU countries? Please don’t bring up the “free” healthcare, unviersal healthcare can really mistreat one for whom contributions are not paid.
On the bright side, if people are found to get cancer from eating these things for 5 years, you'll probably have dodged a bullet.
Chat app Line gets serious about gaming with its latest acquisition
Ask HN: How to motivate friends
So I've started a project with two friends. This project consumes me to that degree that I'm working 40 hours on the project + 40 hours on my normal 9-5 per week.

Now my two friends, one is a marketing professional and the other is a developer joined the project.

I finished a MVP (the other developer works on a different product) and would like to push it out. This is where the trouble started. I thought when we had an MVP the marketing guy would start creating content on a blog, get some social media traction, and create videos to showcase the product.

I've tried to talk to him about it, that he just needs to put in some hours, that I don't care if it's not perfect, I trust him with what should be done. Whenever we have a drink together he seems passionate about the project. He always have a positive attitude. I try to get him involved by asking what should be done next on my side or what goalposts he has.

I kind of understand him, he has a normal, good life. But right now he down-prioritises the product constantly, he might put in one hour per week iff we meet up over coffee.

When I speak with him I just get the response that I work too much and that he will get to it in due time or deflects the issue.

So my question is: how do I motivate a friend that says he is passionate but not putting in enough effort? I mean right now, even admitting to not having time would be fine.
Zotero can look up metadata if you add a PDF to your library

Zotero can not update metadata for a PDF you already have in your library

Hence, adding an existing library means you have to do it manually for each pdf
This is bad design, because the functionality exists, but it's implemented in a way that makes everything complicated for no reason at all.

Why disable the "lookup metadata" button for a pdf which is already in a library?
WHYYYYY
Pipenv is a good replacement for the above workflow. It manages your dependencies and virtualenvs.
The idea of redefining pointers from an {address} to an {offset,allocation_id} tuple seems to me a very powerful solution to the problems discussed recently in "C's biggest mistake: conflating pointers with arrays" [1]

Instead of redefining arrays and introduce a new incompatible syntax, we are redefining the compiler representation of what a pointer is and get run-time guarantees of correctness without modifying the source code of existing C and C++ programs. For example, on a 64 bit machine a pointer can become an 128 bit long concatenation of two address:

[ptr][alloc_id]

The [ptr] part is binary equivalent of existing C pointers (the memory address of the pointed object), while the alloc_id is another 64 bit address of the allocation structure from which the object is part of. Here is a "fat" pointer that indexes the 4th element of an array, previously allocated by malloc(8 * sizeof(object)) :

[ ][ ][ ][ ][ ][ ][ ][ ][malloc_data]
^______ ___^
| |
[ptr][alloc_id] = "fat pointer"

Defining the allocation_ID as the address of the malloc data structure and placing that at the end of the array earns us a very efficient way to make sure pointer increment (a very frequent operation and source of memory bugs) still points inside of the array, in a single assembly instruction: just CMP the new [ptr] with the [alloc_id]
(for other operations, like pointer arithmetic with negative ints where [ptr] can go down, you would of course need to deference [alloc_id] and obtain the lower limit of the array stored somewhere in the malloc_data structure)

This solves a slew of problems:

- pointer arithmetic can now be performed only when it makes sense (identical alloc_id)

- binary equality of pointers is a guarantee that they point to the same object

- the compiler can easily implement some or more memory protection checks, based on the desired performance-safety trade-off

- the cost in memory or stack space of doubling pointer size should not have a significant impact on most real programs

- no syntax changes should be required

Since this cannot be a new ideea, I would like someone more knowledgeable to poke some holes in it.

[1] https://news.ycombinator.com/item?id=17585357
Ask HN: Recommended CI System to run on cloud server
I'm the single developer of a medium sized project. Currently I'm using a Centos 7 droplet on DigitalOcean to run a collection of scripts using systemd services which makes up the CI system.

I'm looking to expand to use a more extensive CI system such as Jekins/Buildabot, so I can more easily visualize the status of jobs and results, and improve robustness and transparency of the system. I've currently got about 5 "jobs" and am looking to add more hence this seems like a good time to migrate to a pre-rolled CI system.

Are there any other (free) CI providers I should consider for my (relatively simple) needs? Any issues I should be aware of for running a CI system on a cloud server?
I've got 4-core/4GB RAM droplet, so resource availability for the jobs themselves is potentially an issue if the CI system is too bloated.

I want the web interface to be totally invisible to the public, but I imagine I'll be able to set up some rules on the server itself to reject web traffic except from my own IP.
Hi! I really like your project. Perhaps others have suggested it already, but it would be nice to read the man pages directly from the app (currently it gives man: command not found error for me).
I think we have similar hopes for quality discussion in forums. And I certainly agree that a thoughtful response giving reasons why it's not as simple as "why can't we just" is more useful - assuming anyone feels inclined to write that response.

The problem I see is the following. The person who wrote the "why can't we just" has done next to no thinking of his own as to why the situation might be more complicated than his first thought suggests, but it goes beyond that. Someone who writes "why don't we just" is sending the signal that they're emotionally committed to the position that the solution _should_ be simple. If I take a deep breath and write a long, careful reply in response to the short, lazy "why don't we just" post, I'm not only taking on all the burden of thinking about the topic at hand, but there's every risk this will just be thrown back in my face by the poster who wants a shortcut to a simple answer. A "why don't we just" post has a poor chance of leading to a good discussion, and I think there will be overall more beneficial discussion on a forum if they are discouraged.

Some people are intellectually lazy. I think this is because it's easier to feel smarter when you think less. If there's a solution that seems obvious to Mr. A and he assumes everyone who missed it is a bozo, then Mr. A feels like a smart guy. If someone else comes along and starts telling Mr. A that actually it's not so simple, and there are reasons why the "obvious" solution isn't actually a full applicable solution, then Mr. A has to think harder, only to feel less smart as a result. A lot of people resist that. I don't know the full solution of how to inspire such people to start thinking more, but I think some push-back some of the time is part of the answer. A bit like when people come to stack overflow and ask for their homework to be done for them: it's good if they're prodded to try _something_ for themselves. Being "nice" and just doing their homework for them wouldn't be optimal.

Yes, "the world is complex" might not be ideal phrasing if you think it implies someone needs to grasp the entirety of that complexity. But I'm sure the poster who wrote that only meant to encourage Mr "why don't we just" to _start_ considering the complexity of the world.
Coffee can be quite acidic which with people with overactive stomachs can cause issues such as acid reflex, ulcer etc.

Instant coffee tends not to be as acidic same goes for cold brews and there are other ways to neutralize the acidity.

If you produce too much acid then intermediate fasting is not a good idea to begin with unless you also take supplements to control your stomach acidity.
My NAS, firewall, wifi AP and all 5 of my Raspberry Pi all serve proper https pages. It is absolutely doable and scriptable. I haven't had to manually update a LE cert all year.
The OS can move the content of the pages in physical memory, but it will not make the page table entry point to a page with different content after that point.
It was a startup and Elsevier acquired them a few years ago. I'm not sure how integrated the teams are but I'd expect the worst :)
Wow. Explain?
How would ten randomly picked tweets have anything to do with X ?
Plenty available on YouTube though!
Drone.
Using a local virtual environment and then building a Docker image removes most of the headaches. I also bundle a Makefile with simple targets. See this as an example: https://github.com/zedr/cffi_test/blob/master/Makefile
New projects are created from a template using Cookiecutter.

It isn't really so bad in 2018, but I do have a lot of scars from the old days, most of them caused by zc.buildout.

The secret is using, as the article mentions, a custom virtual env for each instance of the project. I never found the need for stateful tooling like Virtualenvwrapper.
"Pipfile looks promising for managing package dependencies, but is under active development. We may adopt this as an alternative if/when it reaches maturity, but for the time being we use requirements.txt."

If I where given the choice between community supported/in development Pipfile/pipenv or the 3rd party supported yet-another-package-manager lore to get those best practices my money would be on Pipfile/pipenv. I've been using it for many project now and besides some minor annoyances (eg: the maintainer's love for color output that is not form follow function) it has been a great tool.
Specific comparisons would make your comment more interesting.
> you can store `~/.local/share/okular/docdata/` in version control

What kind of annotations are that? I think GP refers to document annotations, which are stored in the PDF file itself.
Grandparent already narrowed discussion down to x86 behaviour and I responded to details on that. This is definitely all outside the scope of language specifications.
Mind elaborating on why it's not science? Also, if you can provide better science, that would really add to the discussion instead of an empty comment like that.
WeWork is going vegetarian; will not serve or reimberse meat at company meetings
Here the author is constructing a theory based all on true statements, but the mental model he builds, which is philosophically valid, is IMHO not the best choice in order to really address and simplify those concepts, for the scope of further reasoning upon that aspects of languages. My POV is that the interpretation of what a pointer is, should be more bound to the low level load/store instructions, and the address space of the process. In this declination a pointer is just a number, the problem is that certain programming statements in C/C++ that the programmer believes will result into a load/store operation, will be disregarded by the compiler, in name of a set of rules that violate what should be a normal behavior. So I think that a better mental model is to think at a program as a set of load/store operations (from the POV of memory), and how the compiler may decide to disregard such operations depending on the context. I think that reasoning like that also makes us pointing the finger in the right direction, which is the ANSI C committee.
What's wrong with pipenv? I am genuinely curious.

On local :

mkdir my_project_directory
cd my_project_directory
export PIPENV_VENV_IN_PROJECT=1 (To make the virtual environment folder determininstic(.venv/) otherwise you will get a hash based directory(my_project_directory-some-hash-value) which might not be suitable for automatic deployments in applications like docker. I don't know why this is not default.)
pipenv --python 3.6 (or any particular version number)
pipenv install numpy scipy pandas matplotlib requests
pipenv graph (Gives me a dependency graph)
git add .
git commit -a -S -m "init"
git push

On remote :

git clone url/my_project_directory
cd my_project_directory
export PIPENV_VENV_IN_PROJECT=1
pipenv install
pipenv shell
pipenv graph

Is this workflow not enough? I have recently started using pipenv after a lot of struggle. The only issue I have is, Pycharm doesn't allow native pipenv initialisation. I always end up creating an environment manually and then importing the project. Pycharm does detect the environment though.
Wait, what? Where else in the developed world do you lose access to basic health care (or, well, it'll bankrupt you and you'll be in shit for the rest of your life, same same) simply by losing a job? Do you really think that that is the case in most EU countries too?
I have visited the Bulgarian side of the Black Sea and found it quite fascinating, there was a time wild dolphins came not far from the coast. For sure I would love to visit the Georgian coast as well, have heard good things of the place and have never met a bad Georgian.
This laptop came with Linux that was the point of buying in first place.

Asus used to sell their netbooks with Ubuntu pre-installed on the German Amazon store.

It already had a phase where I couldn't use WiFi for a couple of months as Ubuntu decided to replace the binary driver for an open source implementation partially working, and then fix issues as they came.

Now it is the same story regarding ATI drivers.
Are there any EconTalk listeners out there who are taking up Russ's challenge to read "In the First Circle" by Solzhenitsyn?
Have you considered using Open Sound Control[0]? There is a nice JS package for it. I've put together a couple demo web apps using OSC as both client and server. Bonuses include that you get midi with it, it creates RESTful 2 way interfaces for your endpoints, can be shared over the internet (WebRTC), and it's universally easy to hook to other stuff! Also there is a FANTASTIC customizable interface app for iOS and Android called TouchOSC[1] that only costs $5. I use it for music and robotics.

[0] https://github.com/colinbdclark/osc.js/

[1] https://hexler.net/software/touchosc

BONUS OSC STUFF:

* https://github.com/sebpiq/rhizome

* https://github.com/attwad/python-osc

* https://github.com/thomasfredericks/UnityOSC

* https://github.com/automata/osc-web

* https://github.com/mhroth/tinyosc
Sergio Marchionne Dies Aged 66
Ask HN: Is it time to drop the online username?
Hi all. I have been known online by my standard username for over 25 years, but as trust on the Internet is now such a huge thing, and people are wary of scams, malware, trolls, and general nastiness is it now time to ditch the username, and start using my real name everywhere as my logon id. I've never hidden my real name from my username (I'm really easy to Google), so it's feeling that in this day and age the alternate username has reached the end of it's useful life.

I notice a lot of HNers do this, and have their names as their IDs - what were the reasons behind this? Transparency for a peer based community, or just that you never had a an alternate username in the first place?

100% interested in all and any views on this...
The Biomass Distribution on Earth
Context is a pet peeve of mine. It's a design mistake as implemented, even if it serves an important function. It infects everything, forcing every method to pass contexts around, and it conflates multiple separate concerns (cancellation, deadlines, and key/value data).

Given that all of a Go program sooner or later will need contexts somewhere, it would be much cleaner to let goroutines have this stuff implicitly. I don't know enough about the intervals to say whether this is feasible with the current runtime, though.
I'm honestly not sure how to word the title. "WeWork will not no longer serve meat or reimburse employees who order meet at company functions" is too long, and the actual title of the article is a little more inflammatory that the usual standards of HN. If the mods or any one else have any suggestions, I'm happy to change it.
> I have literally changed my perspective, and I am obsessed with it. Shooting from a drone, with a straight-down vantage point, has allowed me to explore my coastal muse with a brand new eye

Sounds very Jackson Pollock.

> There are a lot of privacy concerns, which is fair. But I don't see that privacy concern in public areas any worse than mobile phones.

This directly contradicts your earlier point about being able to see things you couldn't before.
Thanks for all the comments. Gave me a lot of idea about the Q&A section on the web page which I building these days.

The only reason I built the Submit Checklist is that create a feedback generator. For this reason, the sending process takes a month if you willing to pay me to submit for you.

Enjoy the list

Have a nice day
Just to add a few details, Cressida Dick is the person who ordered the execution of a brasilian electrician, down in the London Underground. It does not surprise me that aristocrats are in favour of a medical approach to crime: to help enforce the state monopoly on violence itself.
I believe here they're talking about Georgia in the United States.
That “point” is that a special interest group is justified in preventing scientific study into a area because he feels that his entirely non encompassing and non-scientific observation would invalidate any results he does not agree with. It is wrong on so many levels. That is why it is being downvoted.
They sound hateful toward normal people.
My first thought when reading your comment was “wow that’s more sharply critical than the author deserves”.

But on second thought it is a bit ironic that a piece so critical of “signaling” and empty gestures (the author cites things like joining student counsel) would be posted to the author’s personal blog. I think it would have leant credibility to the article if the author had the self awareness to point out the fact that blogs are a form of self promotion not too far removed from Instagram.
European Parliament Says Cryptocurrency Can Be Used Instead of Money
I'm not sure about this. As an employee, and an omnivore I feel that this would be discrimination against me. It's not illegal for me to eat meat, and until it is, I should not be treated any different to anyone else.

It would be enough for me to seek employment elsewhere, as I wouldn't want to work for a CEO who pushes their personal [non-work] agenda onto their employees.
Do you know why a personal bankruptcy prevents you from being hired? That seems very weird, it should be completely separate from your work and can't in anyway harm your employer.
Jeff Attwood wrote a good blog post on this:

https://blog.codinghorror.com/rubber-duck-problem-solving/
The Time a Guy and His Wife Sailed Across the Ocean in an Amphibious Jeep
Making Ruby Yours
Thanks for the tip, but honestly, I don't need another tool.
How to make YouTube five times faster if you don’t use Chrome
I loved zotfile for its feature which enable user to highlight/comment articles then import the text in notes related to article.
I see! Yes, that's not great.
Angel investors frequently follow a mode of operation where they actively seek out young and impressionable minds (doing motivational speeches and mentoring programs at universities and so forth) and trying to establish themselves in the role of educator/mentor/role-model at the same time as trying to establish themselves as business partners of those young people. That is a conflict of interests, to say the least.

Now, if I were an angel investor and I had gathered around myself a group of such people who look up to me for mentoring and education and who might depend on me for financing their lives' ambitions, I don't think it would be quite appropriate for me to say, even just by innuendo, "By the way: Here is how I feel about xyz [political issue]..."
If you click the WinAMP or iTunes link it downloads [listen.pls](http://38.107.243.222:8407/listen.pls) which can be played in any of the previously mentioned players or VLC.
Up till not long ago pipenv was not ready - for example it could not install packages like gevent. That bug is fixed now I believe.