skysight-inc/HackerNews huggingface dataset:
> Some people are not interested in those pursuits and they are, in comparison, very "pedestrian" in terms of complexity. Now I enjoy all things related to food for example, but I would stab myself in the ears if I had to talk to people about their eating habits for more than 30 seconds once every 13 years.

There's no depth or complexity to non-PhD-esque pursuits and interests?

I moved from Reddit to HN because commentators here seemed more self-aware. It's threads like these that really make me question that decision.
You’re surprised it needs a law but wasn’t illegal already? How could it be illegal without a law?
It's possible to learn most things through self-study. But the vast majority of people will only learn the parts that they find fun and interesting.

They generally won't wrestle with the tough sections in a systemic fashion, the way you are forced to in a decent CS program.

For most people (even most professional developers) the only practical way to gain the equivalent knowledge you'd get with a CS degree, is by getting a CS degree.

I worked for years as a self taught professional developer before going back btw, and I've hired/interviewed many boot camp graduates, self taught programmers, and degree holders.
> giving the right to sue to customers who have had their location data shared without their explicit permission.

Are Terms of Service considered explicit?
How much does a home installation cost?
It sounds like you have a very narrow set of interests and are calling other people boring for not having the same interests. You either need to broaden your interests, which sounds unlikely to me, or just accept the fact that you'll never be that personable and this advice isn't for you.

Edit: I find people generally interesting so it's easier for me to find specific people interesting. If you dig a layer deeper and try to figure out why people have that religiosity or consumerism it can be fascinating.
How Mux Routed Around a Major Network Outage
or from the price you charged for your app?
You are missing quite a bit of context on the history of Haskell. From https://www.microsoft.com/en-us/research/publication/a-histo... , it seems that Haskell's design did not arise out of Lisp, but out of several languages in the early 80s which were lazy/non-strict and purely functional.

Indeed, removing parents ruins the perception of Lisp languages as just another language family, and promotes Lisp into some sort of privileged position. Simultaneously, mistaking Haskell for a Lisp means mistakenly thinking that Haskell has special meaning for pairs over tuples or lists, that Lisps are statically typed or that Haskell is optionally typed, that Haskell has macros, that Haskell's juxtaposition-based application syntax is related to Lisp's parenthesis-based application syntax, and so on.

Consider example Lisp memes: "Data is code; code is data," or "all structures are lists." Compare with example ML memes: "If it compiles, it works," or "well-typed programs don't go wrong." Or even better, with Haskell memes: "Laziness leads to purity," "monads are programmable semicolons," "show me your types."

The only meme common to these communities is "lambda the ultimate", and you are ignoring decades of Lisp philosophy if you nominate this meme to carry the flag for all of Lisp. When I first read this comment tree, I wondered if everybody had forgotten about the Land of Lisp and the Republic of Haskell: http://www.lisperati.com/landoflisp/panel01.html

I consider Haskell to be an ML, and even then, it's worth remembering that lazy/non-strict MLs have different behavior from the rest of the family.
Sorry, I meant I don't get why people complain about them so much.
Long ago, an OS I worked inside had a tool which took shared library indirect calls, and wired them out so you did not have a nested indirect function call cost, but went direct from the call to the backend without the pass-through the null function mapping into the specific .so library. It made things faster by one layer of the onion skin.

Strip, as a UNIX tool removes the textual crap in a debuggable binary, to leave behind only the bits you needed.

It feels to me like if you can do runtime code call checks, and confirm which actual calls you make, then stripping the bits of libc and associated libraries out, being left with only the strictly required calls, and then by extension the syscalls, and then by extension the kernel elements, is actually possible a lot of the time.

So, library -> reduced library -> reduced calls -> reduced syscalls -> reduced kernel state is a sequence or set or something, of applied minimisations which can be done, if you can predict all the call paths in your code and their dependencies.

But then its not a generic OS any more: its an application specific binding to a general purpose CPU.

Why not go all the way, and work into the ALU and remove the bits you don't need? And then go into the micro code, and the associated FPGA, and everything else..
> According to Wikipedia only 43% of the population of the region are female.

That is very different from the distribution of the sex of babies. Regions end up with skewed demographics for various reasons like distant factories, war, etc.
My naive question here re: fake accounts + advertisers is why should I care? If these big corporations want to blow their money shouting about gay scuba diving into the ether, what's the harm?
Thanks! Really glad you like it! Definitely a fun thing for me to be working on.

I had a ZX Spectrum but unfortunately just used it to play Fantasy World Dizzy.
Apple are actively fighting to prevent third parties being able to lawfully repair their devices.

https://www.macrumors.com/2019/04/30/apple-right-to-repair-c...
> [ext4 data= mount option] writeback: Data ordering is not preserved – data may be written into the main filesystem after its metadata has been committed to the journal. This is rumoured to be the highest-throughput option. It guarantees internal filesystem integrity, however it can allow old data to appear in files after a crash and journal recovery.

Not just old data from the same file, either. In the case of file appending, "old" can actually mean "whatever junk happened to be in that allocated disk block earlier".
Kind of like Tesla owners.
Firstly, depends on the university - not all degrees are equal. I did most of a degree after working in the industry for seven years, and having programmed on and off since the zx81 - the degree was pointless. Only one course was interesting, AI, and the only time I've ever used that knowledge is tinkering at home.
Ask HN: How should I train myself for this new role?
So I've been assigned into a user acquisition role within the mobile game studio I work for.

Can anyone experienced in this role suggest the best steps / resources to start learning?

(my past role has been in game design, so UA is something brand new for me)
Data Sublanguage Part 1: Relational vs. Computational Completeness
You don't need a CS degree. It might help, but I dunno. I don't have one, and I am a dev. What you do need is what YOU need, which is to say you have inclinations and limitations.

You'll quickly learn your inclinations as you get into programming, as certain activities will be way feel way more interesting & fun to you. I hate studying things I don't need now, which is a limitation, but that no means does that mean I cannot learn those things.

Back to the BSCS thing. The more competitive a job is, the higher the bar to get that job. High paying dev jobs often have the questionably relevant algo questions. 10 years ago it was questions about pirates with gold coins & moving My. Fuji. In 10 years it might be Alan Turing trivia questions. The only thing you can do to optimize for interviewing is to interview, and it helps to be generally competent in your no niche of choice.
I’m a self learner. It’s just my hobby.
That's awesome! Honestly, I have interviewed tonnes of people already that are doing great with no degree. A friend of mine just got a job after taking a few months out to learn from scratch with Udemy, etc
You will when you see the knock on effect to all consumer good pricing
It's been a while since I took a Topology class, but I left it with the understanding that Topology is all about taking a set (nodes, say) and applying some notion of closeness (how many hops?).

Once you've done that, you have a topological space. The sets that you've defined as "close together" are your open sets. Loosely speaking, smaller open sets are considered closer together than larger ones.

This might seem boring in the case of directed graphs, which have an obvious notion of closeness, but there are more exotic spaces where you might not usually think to use "spacial" reasoning, but where it can be applied anyhow thanks to the formalism.

In a topological sort, you end up arranging the elements based on nearness to each other (as much as is possible for a list), so that elements in a given open set in the typical topological space over directed graphs are likely to be next to each other in the list. It's a pretty topological way to do things, which probably explains the name.
>I find that anyone who isn't a PhD (or could easily have been if they hadn't gone into industry) might as well be a paper shell

Wow, so wasting years and years of your life studying texts and churning out reworded content about those texts, instead of having life experiences makes someone more interesting to you?
> Practically this means exploitation opportunities are rather limited, but a forced collision being possible at all seems non-ideal for an adversarial use case. There's also the risk that future cryptanalysis will further weaken MD5. Seems clear to me WeChat just should have used something like sha256.

With a billion people using phones, "good enough" is probably good enough.

Given the scale and scope of the Chinese security apparatus, anyone capable of using a GPU to hash out collisions is probably already known to the state. And the handful of collisions are probably not important enough to worry about -- a stealthy Winnie The Poo image isn't a big deal.
> It's like you try to peel back a single layer of why people believe what they believe and there's nothing there.

I'd like you to consider that something in your manner of "peeling back" is causing people to block you out

If I get the impression someone has pre-judged me or is generally disagreeable, I don't feed the bear. I just don't care what they think and if looking dumb gets me out of that conversation quickly that is fine by me.
I'm not religious, but I find the following an incredibly useful quote that becomes easier to accept with age:

"God grant me the serenity to accept the things I cannot change,
Courage to change the things I can,
and the Wisdom to know the difference."
>Free alcohol is available even in economy on every US carrier I’ve been on.

Citation needed.

>>such as the handtowel or socks or free alcohol.
>Towels, socks, free alcohol are all basics on US carriers that you always get in business or first.

No, I'm not talking about towels, I'm talking about a handtowel. It doesn't exist on US planes, because it's an Asian custom. It's a hot, wet towel that they hand out to everyone before every meal so you can wipe your hands. It's called an oshibori in Japanese:
https://en.wikipedia.org/wiki/Oshibori
https://travel.stackexchange.com/questions/22372/in-asian-re...
i once solved a similar problem with set theoretic approach using matroid theory and the greedy method for constructing a matroid basis using a thesaurus as my independence oracle. This was over a decade ago, so I no longer recall the results, but it certainly seems similar in the goal of finding a primal set of words that can in some way define all others.
For me, understanding how a compiler and cpu/RAM works and is put into machine code and later on a programming language means that I fully understand what programming is.

It allows me to make sharper categorizations whether something is mathematical, architectural, security, programming, framework related or a best practice.

This again gives me a good feeling of whether something will be easy/quick to learn.
Recursion. I see it everywhere
Also https://xkcd.com/1319/

"'Automating' comes from the roots 'auto-' meaning 'self-', and 'mating', meaning 'screwing'."
This is absolutely true, however in reality (= in practice) very few non-CS degree devs _will_ reach the same level of knowledge.

When you have to learn all that stuff to get your degree, then you just have to learn it. Period. Also people who are full time students have more time to spend on these topics, but when you are actually working 8h+ per day and your career is mostly around JS frameworks it becomes much harder to invest time into these things.

Obviously this doesn't apply to everyone, but I'd say it applies for most.
That still doesn't explain to me design decisions like how WebDriver's file upload works.

If I'm remote-controlling a browser over a network, wouldn't I occasionally want to send it an arbitrary file upload? Why do I need to separately transfer the file using a different service, and then refer to it with the disk path?

The only reason I can think of is, "normal users couldn't do that." But normal users also can't control a browser over a network. There's no reason to restrict a control protocol to only things that normal users can do.
I think Common Lisp just needs a rebranding/remarketing strategy. Until recently I always thought it was an ancient, mostly obsolete language that had a cult following due to Emacs or something. For some reason I grouped Common Lisp together with Fortran and COBOL in my mind and didn't realize it was separate from Lisp.

That perception needs to change if you want it to gain more traction among developers.
Thanks. I’m not a professional. I need drawing because it calms me down.
Physician investigates the link between racism and mortality rates
Contrary to a sibling, I think that Common Lisp very much needs style guides. Maybe not one, but some for various use cases. The standard library feels like a sprawling jungle and the Rambo-style idiosyncratic programming syndrome in the ecosystem doesn't help. Like how do you fill a hash table idiomatically, or manipulate strings. On the other hand, the merits of the language itself keep me going back to it.

In my projects I often find myself wishing for some actually comprehensive and written down guide to maintain consistency and elegance. It's hard to do it entirely in your head. I mean, even a multitude of these would be fine if they'd be explicit and followed. Let's build roads through this wilderness. One day I'll get around to (also) doing it myself ;p

The OP is quite short, but the Google guide they cite and some ones linked by others here seem interesting.

One thing I'd like sorted is naming CLOS writers and accessors as opposed to readers. I feels that it should be somehow communicated what they are.
JavaScript version?
Does puppeteer work with Safari and MS browsers or is it another Chrome only tool (and now Firefox)?
Why would there be any significant added cost to consumer good pricing?
You shouldn’t send the watch back for refinishing. Worn ones are more valuable.
I'd be interested in him doing a teardown of a Dell/HP/whatever brand PC laptop, and pointing out the cost cutting and poor workmanship he finds
If I had a gray beard... 30+ years as working dev.

I've never taken a 'computer class' while in school, although I've taken some instruction while working.

Entirely self-taught. I do this because I like it. Back in the day, I never played video games, I taught myself, and wrote, code. To this day, I don't play video games.

It's been my experience that hiring degreed CS graduates may not be the best course. Theirs a big difference between being 'book-smart' and real world smart. I tend to give preference to guys who write code for fun over those who are in it for the money.

Case in point, we just brought on a high-school student who is about to start his comp-sci degree. He has written code for years for fun. He's just rocking it. I'm sure he'll be invited back each summer until his degree is complete and will likely be offered continued employment after.
hah. they're a new technology/approach. of course there are going to be challenges.
Around $2600 plus the cost of electricity. Not viable for renters or apartment dwellers, and not a good candidate for subsidy since it would be used by 1-2 cars at most.
Well, I started on ZX-80 at school then did a CS degree which I didn't really get at first so I struggled in the first year - but in subsequent years I came to really enjoy the more abstract and maths oriented parts of the course.

I don't know where the idea that a CS course is a good practical training for a career in development came from - I'm pretty glad the course I did included almost nothing that was attempting to "train" you and focused mostly on the absolute conceptual fundamentals (from the electrical engineering side through general engineering maths to specialised CS subjects) as well as letting us loose to actually build stuff with minimal supervision but careful evaluation.

[The thing that really got my attention was the lambda calculus course where the lecturer mentioned the S & K combinators, of course the same course covered the Y-combinator!]
If they're of fine wool, that's a perfectly reasonable price. I wear exclusively Icebreaker wool t-shirts as undershirts and they're $80 each, and have lasted me for years. One of the incredible things about higher quality textiles (Irish linen, fine wools) is that they tend to get softer and more comfortable with washing, and reach an equilibrium point quickly where they will stay for /years/. I'm wearing an Icebreaker T right now I bought in 2016 that's still in perfect condition and is more comfortable than any T-shirt you've ever put on, I guarantee.

I'm not familiar with Loow's products, but since they're wool and people are saying they are of high quality, I don't think $75 is unreasonable.
Launch: The easiest way to express ideas, stay engaged, and get on the same page
In addition, you can't eat the suckers because they accumulate mercury!

https://www.outsideonline.com/1794941/florida-officals-dont-...
Charlie brown baseball league shirt
Pilot cartridges are very easy to refill with a dropper, or a syringe with a dispensing needle; you can pull out the little plastic seal with tweezers, fill the cartridge, and then push the seal back in with the back of a chopstick or similar.

That way, you avoid the wastage of throwing out empty cartridges, which are effectively unrecyclable because of the leftover ink inside and also because they don't carry material markings. They also hold considerably more than a converter, and not all Pilot pens (such as my Decimo) can even take a converter in the first place; worse, even if your pen can take a converter, refilling one at work or similar is a messy, time-consuming pain in the neck, where cartridges are easy to carry and quick to swap.

Whether you use a cartridge or a converter, it's also worth noting that inks formulated for Western pens often have trouble flowing in the narrower feeds and finer nibs of Japanese pens; I've had considerable trouble with Herbin and Monteverde inks in my Pilots, while they flow perfectly well in Western pens with broader nibs. Something to keep in mind to avoid the frustration of constant hard starts and other flow problems. Pilot's Iroshizuku line is well matched to their pens, and offers an extensive range of colors; for a Metropolitan, especially one with a nib narrower than M, I'd recommend starting there.
getting along with people and linking them or finding them interesting is different things.

getting along with people at work generally entails (for everyone) to laugh at jokes you don't find funny, and be ok with behaviours you wouldn't accept from 'friends'. That's life, learning to live with people daily. it's one of the most valuable things you can learn, to get along with people even if you don't like them or have no interest in them.

Just remember being nice and helpful doesn't mean you need to be someone's friend. you can be nice and helpful to everyone you meet and still dislike them or find them uninteresting. it's just making life easier / causing less friction daily.
Uber is testing an all-in-one subscription for rides, food, bikes, scooters
Amazing! :D
I am not a DevOps myself. I started reading Google's SRE and it made me feel that it was all about Google's tools and not about general DevOps knowledge.
first thought came into my mind is decentralization (dApp). What is the best platform? EOS.io?
Haha, you're right! Re-reading my own comment, I seem to switch context between "normal language" conditionals where the rules obviously are different from the "programming language" context where they are strictly defined.

Fun observation :)
You have to make sure your test cases exercise every possible code path. German demogroup .theprodukkt made a demo one time, .kkreiger, a first-person shooter game in 96kb. They used a technique like this to strip every line of source code that was not hit during a playtest. But the playtester didn't press the up-arrow in the main menu, so that doesn't work. More importantly they didn't get hit by any bullets, so in the final release the player is invulnerable because the code that handles damage was never compiled.

Edit: more informative link https://fgiesen.wordpress.com/2012/04/08/metaprogramming-for...
1/2^216 is 9e-66, so it's closer to 0.000000000000000000000000000000000000000000000000000000000000009%
Thank you. This industry has a huge failure mode in touting tech used in projects/frameworks without linking out to at least the source so that someone can learn about them. Can't tell you how many things I've bailed on because it was a pile of obscure library references that weren't (to me) worth looking up.
Right before Sprint bought Nextel, dooming both companies, I worked in what they called a “repair store”, taking apart phones and replacing bits and pieces (rubber keypads, boards, displays, most of the gadget)

We saw this all the time: my phone never got wet. Crack it open with the ol’ spudger, find a blue-green mess.

Had one lady bring hers in smelly like pee: her cat.

Had another pull it out of her cleavage: full of salty crystals and moisture.

I never went off that stupid paper, since the moisture of the PacNW air during rainy season is enough to set them off.

But yeah people treat their expensive, sensitive gadgets like shit
I'm not sure that I agree that it was a shortcut for the original creators or older users of JS. Lots of people (myself included) built stuff using self-style prototypical inheritance and argued against adding Java-style classes and inheritance, since they pollute the cleaner prototypical model with a bunch of inconsistencies (not necessarily worse, just inconsistent). We only really lost that argument with ES6 about 4 years ago.
Ask HN: Personal Cloud Solution? (Mail, NextCloud, etc.)
I used Sovereign (https://github.com/sovereign/sovereign) for past several years, but it is no longer developed much and I have hard time to keep server running. Perhaps someone know something similar I can use to replace my current setup? Basically I am looking for something I can automate to deploy a server with mail, next(own)cloud and such. Sovereign provides ansible playbooks to set it up automatically. Anything similar out there?
I think for anyone that started programming in the early days of home computers like the ZX81, C64 and BBC Micro, except for the fundamentals, most CS courses seemed to be completely useless. I cannot honestly say anything I learned in my course was useful compared to pursuing my own interests.