skysight-inc/HackerNews huggingface dataset:
Different tools for different jobs. Rust is more of a systems language for close to metal performance and memory safety. Elixir is memory safe from a functional perspective utilizing the actor model. Elixir is good for real time concurrency and higher level systems.
The Phone That’s Failing Apple: iPhone XR – The Wall Street Journal
The Phone That’s Failing Apple: iPhone XR https://www.wsj.com/articles/the-phone-thats-failing-apple-iphone-xr-11546779603
As someone who works in applied ML but tries to stay heavily on top of research, I think it’s this. I am always stunned when I try to recruit people, talk with folks at conferences, or even look for jobs myself how few people care about commercialization. I’ve seen this attitude grow a lot in corporate R&D in recent years too as they pull in more academics with promises of independence from the “business grind”.
https://docs.google.com/spreadsheets/d/1-UlA4-tslROBDS9IqHal...
Digital Communications Protocols
Those construction jobs are invalid for inclusion because they’re temporary unless the building is going to be destroyed and rebuilt regularly. The only jobs created that can be included in the decision to build or not are the long term jobs.
I wouldn't pick Elixir because:

Rails has revolutionized web application development on Ruby, with Sinatra as the minimalist version and a lot of "me too" frameworks have been developed, and somehow I like them all.

* On Python, Django and Flask
* On Elixir, Phoenix
* On Crystal, Amber
* On Javascript Express js for Sinatra. But on JS we didn't get a successful Rails clone, but a storm of front end frameworks, finally Vue JS/React and endless others.

I wouldn't pick Elixir because The world is elsewhere: My choice is on JavaScript ES6, Vue, and a simple Express.js, Sinatra, Flask for most projects.
That could mean uninstall the entire operating system because this stuff can be done at device driver level, where closed source is king and even the system administrator can do nothing.
>the claim of "brain abnormalities" appear to come from a small number of doctors who likely were primed with irrelevant information

The study was published by the UPenn Center for Brain Injury and Repair (I’d recommend reading it) by the treating physicians.

It’s funny you would opine the treating physicians have irrelevant information. Yet, like many in this thread you tend to gravitate towards doctors/scientist making diagnoses sight unseen who have no patient information.

I’d say the real mystery is how anyone on HN could ignore the study from the UPenn Center for Brain Injury and Repair who examined and evaluated the patients completed with objective tests like MRI and hearing. As if that’s not enough you say

>it’s not far fetected this priming caused the doctors to see brain abnormalities where none existed

I’d like to know how the doctors bias manifested to the MRI and hearing testing. And I’m wondering why your logic doesn’t get applied to the scientists and the neurologist (who is clearly biased) who hasn’t examined the patients and has diagnosed them as suffering from psychosomatic mass hysteria.
Signal is the best-studied multiparty secure messaging protocol; there are academic papers that provide formal analyses. Trevor and Moxie won the Levchin Prize at Real World Crypto for Signal Protocol; the Levchin steering committee is a "Who's Who" of cryptographers, as are the other winners of the prize.

No, Signal is not "homebrew crypto".
5 Startup Intangibles That Can Energize Your Business
I presume they're referring to the ease of hijacking SS7 where SMS is so widely used for authentication / authorization.
Was BB ever really mainstream? I know it had loyal following, particularly for business users. But, at its peak it had 80M users globally. Most people still had basic phones then, and many of those with BlackBerries probably had an IT department supporting them.
Hmm have you thought about Rocketbook? It seems something you might like. It works like a physical notebook but then you can easily put your stuff to cloud or some other storage.
Haven't tried it though.

edit:
To be more precise I thought about Rocketbook Everlast:
https://youtu.be/FL2aOGwm3Ak
interesting to see the "blind man and the elephant" responses here, each hacker/blind man insisting that the beast needs to be tamed this way.. For the critics - do you value the human happiness that a software user has, with a well-made and visually pleasing app environment ?

porting software has been accomplished for decades, to varying degrees of success - of course this can be done.. go for it !!
Option 2. You can download all you data.
Weekly Robotics #20
Most C programmers with Mac experience know better.
The real reason behind isolated systemd services is to confine the damage if a world-accessible daemon gets breached.

If your threat model is you can't trust the programs running on your computer, then maybe you should switch to a different OS, for example Debian, and stick to the package manager.
https://imgur.com/a/6BYUDY0
This is good. I might try to adopt it.
Implementing a bloom filter
> I hope Librem5 will be here to show that it is possible to create a descent (sic) smartphone with a REAL linux (no, not android) under the hood.

That was already proven possible with Ubuntu's smartphone adventure. What we need is a sustainable effort. We've managed on the desktop, hopefully the smartphone is possible too.

Of course there is the problem of all those proprietary IOS and Android only apps…
I think Elixir is quick to learn, long to master. You start off building web apps in Phoenix, being relatively productive from the start, and thinking to yourself "well, there's definitely some magic I don't understand, but this feels a lot like Ruby." You'll immediately notice and learn the smaller differences (immutability and pattern matching).

Then one day, you'll need to store and mutate data in process. And then you'll learn about GenServers and Supervisors.

Then one day, you'll want to have some base functionality but for whatever reason, composition isn't a good fit, so you'll start to dig into macros.

Fundamentally, Go is much more Ruby-like than Elixir (Ruby and Go have shared heap, global GC, array-based data structures, same evaluation strategy, mutability, ...). Elixir is very different. But it's discoverable.
The article talks about how the “age of technology” is clearly coming to an end with the Nasdaq in imminent peril due to this development.

My comment is pointed towards the title because it perfectly summarizes the foolishness of the overall article.
Same for me: I have a program that indexes Git repositories in $GOPATH and provides fast access:

$ cg gh:foo/bar
$ pwd
/x/src/github.com/foo/bar

Source is at https://github.com/majewsky/gofu/tree/master/pkg/rtree, README is at the top of the repo.
The YKarma experiment: Reputation as a spendable currency
Sure it's a feature request but a feature that would be much simpler if the messages were routed through the phone any way.
I could never understand why would someone accept these jobs. What's so great about becoming a manager and work 60h/week? How's that better than 40 a week as a subordinate and letting someone else worry about all the office drama?
I need good support for images and that's under the paywall
IIRC the first reporters were CIA agents stationed at the embassy.

Mass hysteria seems an even more plausible possibility if you assume that some of the reporters aren’t genuinely reporting their experiences.
I use higher-order parser combinators in a few different languages and its not really that noticable on a modern machine assuming you're parsing human-written source and not gigabytes of json.

but if you look at it, the real cost is in closure creation and control transfers (function indirection). functional compilers are already trying really hard to make those costs disappear.

there is some really interesting work lately in manual vectorization of traditionally control flow laden tasks like parsing. i would fully expect some clever people in an appropriate linguistic framework to make frameworks for automating that transformation.

but for me personally I find the parser combinator approach:

o a pretty direct translation of a model you might see in BNF

o considerably easier to maintain/extend/reuse than either external parser generator or recursive descent

o more straightforward in the construction of output values than the traditional approach of a parser generator language

o amenable to a flexible decomposition of layers rather than the traditional scanner/parser split (alot of simple languages dont really need that distinction)

o self contained - removes a big external dependency

o simplifies the build

its a really good default in the absence of other constraints
wants to learns computer programming languages /codes then go to the link for tricks and tips to learn coding
https://trickytricktolearn.blogspot.com
https://trickytricktolearn.blogspot.com
Regarding not feeling well on a vegan diet, have you considered whether it was due to your gut bacteria not having adjusted yet? I was very much a carnivore for the first 32 years of my life (I was a hunter and came from a hunting family) so it took me a couple of months to adapt to a vegetarian diet due to the greatly increased fibre.

I didn’t mean to come off condescending but I did mean to attack. Recommending a high meat diet in this world is like recommending people drive gas guzzlers. It is irresponsible and selfish. The time for that behaviour has gone and we all need to be willing to give up a few things for the future of the planet.

Regarding vegans being very pushy (I am not one and don’t intend to be) I think that’s reasonable. It is unquestionable scientifically that the world will be better off if people didn’t eat meat. Given that, why would you not want to push hard for change?

On a more individual vegan diets absolutely are more healthy. The longest lived people in the world (subtracting genetics) are vegetarian or vegan. I cannot fathom how you could think otherwise; I mean just look at stomach and colorectal cancers. Figures are very clear.
Agreed. My friends and I who kept in touch through Hangouts (gchat or whatever it is called this week), have moved to Keybase. It works fine, although the desktop chat app occasionally crashes on macOS, and the iOS app is not optimized for anything larger than an iPhone screen.
BB was thoroughly mainstream in the UK.

https://www.theguardian.com/media/2011/aug/08/london-riots-f...

from 2010 / 2011

> Using BlackBerry handsets – the smartphone of choice for the majority (37%) of British teens, according to last week's Ofcom study – BBM allows users to send one-to-many messages to their network of contacts, who are connected by "BBM PINs". For many teens armed with a BlackBerry, BBM has replaced text messaging because it is free, instant and more part of a much larger community than regular SMS.
So the main performance penalty is that you want to parse

foobar | foobaz

As

fooba(r|z)

But this requires you to analyse your parsers. Virtually all parser combinator libraries in haskell are monadic and most others follow suit. This means you can parse turing complete languages and parsers are very pleasant to write but also all predicates are undecidable and therefore you can't optimize well.

There are a couple ways around this:

- rewrite into non-turing-complete parsers when possible using heuristics. Ghc supports this, the original motivation was implicit parallelism for facebooks anti-abuse infrastructure

- use a non-monadic dsl. This either makes coding more awkward or forces you to reimplement a bunch of things like if statements

- if you really need performance and error messages use a parser generator instead of an embedded dsl

Ghc inlines functions incredibly aggressively so the higher order combinators don't have a huge cost. Doing this in a jit compiled language will be more expensive. There are also tradeoffs in the primitives you use - you could only have a primitive to check a single char and then use it in a loop to check strings. But even when inlined you won't beat a fine tuned string comparison function this way.
It's also possible to move the listener to a permission-protected unix socket https://docs.syncthing.net/users/config.html?highlight=unix%...

Pity that I don't know of any browser that readily supports HTTP over a unix socket (nginx can proxy_pass it, but then you're back to a TCP listener).

But a multi-user install could reasonably lock things down in that way, though the defaults definitely favor "works out of the box on a single-user machine".
Bookmarks have a great ux for it: save all open tabs to a bookmark folder, open all bookmarks in a folder
I think a lot of the Swift Playgrounds ideas are “officially” acknowledged to have been inspired by that Bret victor “Inventing on Principle” talk.
> I've been nerdsniped as well. I can't say I'm going to go ahead and try and solve it, but the methodology presented in the post seems suboptimal.

Let me explain it. I do know the presented approach is extremely naive, but... My initial question was: "how slow this might be?", and it turned out that's not that bad as I supposed, so shared this finding with others. :)

Thank you for pointing this article.
Family: Laptop, internet at family member's home, work in the day.

"Vacation" travel: Haven't done this myself (outside visiting family) but have had colleagues who did it without issue. Available and worked in the day, did vacation things in the evening presumably.
They can be as fast as hand written recursive descent parsers, which is what they are under the hood anyway.
But of course this way of writing parsers is like compiling without optimization passes. It can be fast for a lot of things, but not as fast if you can do some optimizations, like moving shared prefixes out of strings to match them only once or use lookup tables instead of iterating over a lot of choices, etc. It requires generating an AST with combinators, not parsing functions directly. Which nullifies the whole point of using parser combinators in the first place.
On Linux (in the kernel image), it exercises bugs in the dynamic loader. I tried it once :)
I've found CQRS and DDD designs fit well with OTP and elixir. The actor model with pattern matching ends up cutting away a lot of the classical OOP DDD details.

The issue I see is carryover from other ecosystems taking paradigms that aren't necessary and don't fit into libraries and patterns. It feels like there are still conventions to settle on.
What America can learn from the fall of the Roman republic
By file type at first (Ie music, documents, professional development, books, etc). For finances, I aggregate by year - 2016 Finances, 2017 Finances, etc.

Others have mentioned a process system so Parsing, Not Parsing, Long Term Not Parsing (nas). I think I’m going to adopt that into my workflow as well.
I think most experienced devs here are talking about one side or the other of balancing benefits/costs. Yes, there are pros/cons of taking it further one way or the other. The best way I've been able to prioritize is to the the current code primarily serve current needs. If there are other likely and soon expected capability, make some accomodations that don't negatively impact the complexity of serving the current function. If they're at odds, merely document the ideas to handle the expanded case.

The situation to avoid is to pay a complexity tech debt now, for something that may not occur for some time, possibly never with all the maintenance of current features upon that complexity.

A common reoccurrence is generalized methods. There was a PATCH endpoint for main entity which I'm sure started out innocently enough with maybe just two change sets. Following the intents through the layers of this choke point implementation is unpleasant. We could achieve the same by composing variants at a higher level so that each concern is separated from the others, but then we introduce this 'machinery' that may not be warranted. If there are many or a dynamic components then it may be the best solution but not until.

I recently fell for this myself. On recognizing that a particular service was just a combination of two state machines, I abstracted the state machine operation and applied it to each subproblem. It worked like I expected but the result wasn't right. The state machine machinery was more visible than the core logic. I eliminated the concrete abstraction and created two implicit state machines that invisibly did what was required for each subproblem. If we already had a common state machine form that we were familiar with, things could be different but not when introducing it into a codebase for the first time.
This problem would remain a problem forever? I'm happy enough if I can help a problem be solved faster. If I can make it happen that some strategic technical solution happens ten years before it would have been without me, I'd be extremely satisfied. But there's no way to know.

I tend to work the other way.

Some day we will have smart homes. How would they look like and how can I work towards that vision? Or, what restricts ubiquity of wearables? In my opinion wireless charging over a considerable distance. Then I contemplate how I would do it. For example embedded in ceiling lights with infrared lasers and a positioning system. And I talk about it in case someone else also finds it an interesting idea, because I've so little time on this planet...
I disagree with this article's fatalistic tone.

IMHO the Apple ecosystem was always about getting people hooked on one of their products and then up-selling them other products and services and thus set them up for a lifetime of buying the latest and greatest from Apple at regular intervals.

In the past few years, I've seen many long time Apple users opt for alternative brands. And not just because of the price points. I have friends that now have Android phones and windows/linux laptops where just a few years ago they would have been de-facto iphone and macbook owners as well as own a whole range of misc apple branded products. Apple had a really nice business tapping into these people's disposable income and it has been evaporating for a while now.

By squeezing their iphone and mac book user base too hard, they have started to bleed users. This is bad news because it means the upselling business is going to dry up as well. People with an Android phone are not going to want an iWatch or iCloud subscription. They are also not going to order anything in the Apple store or sign up for Apple Music. And raising prices there is going to shrink the user base even harder.

Apple has neglected some of their core product lines and especially their recent desktops have not gone down well with users. The pattern is the same across their product lines: sales revenue is up but volumes are down for the last few years and not just because of the price. They make more money with fewer users. Except, now they are making not as much money as they hoped with even less users than they expected. They squeezed too hard and the numbers no longer add up.

The fix is simple: they need to change course and get volumes up again by making sure that they have attractive premium products that people can afford. You don't get service revenues up if your user base keeps shrinking. A few well positioned products at the right price point could easily bring back lots of users that have dropped out of the ecosystem. More of the same is not what is going to make that happen.
Looks nifty and simple. Last time I had to work with low mem environment (64k heap for Lua running on MIPS) I ended up implementing something close to TLSF [1] allowing to choose some trade-offs regarding perf/allocation efficiency.

In the end we still had to add one layer of hack^H^H engineering tricks to workaround fragmentation issues in the worst case :-)

[1] http://www.gii.upv.es/tlsf/files/ecrts04_tlsf.pdf
If you are a non-white person, no, I would not say you have had your expectations set by experiencing white privilege.

You are welcome to empathize with white people. I often do. I am one. I empathize with that guy. But that doesn't mean we shouldn't acknowledge privilege.

If you can't fathom what this has to do with race, I'd suggest you haven't studied the topic enough. There is an ocean of history and rivers of current evidence that in America race drives a lot of this.

For example, you could go read Loewen's Sundown Towns, [1] which demonstrates that America had a major period of violent ethnic cleansing circa 1890-1930 known as the Nadir. That peaked with white people destroying America's most prosperous black district, firebombing it from the air and burning 35 blocks to the ground. [2]

You could go back from there and read about slavery and the civil war. You could read the various declarations of secession, where white people make clear they're willing to go to war because they believe black people are so inferior that they must forever be property. You could read the reports of the Freedmen's Bureau, and how even after the civil war there was endless violent aggression against black people.

Or you could go forward from the Nadir and read about Jim Crow. About white flight. About redlining. About racial exclusion covenants. Heck, right here in the Bay Area after WW II there was public debate over whether the peninsula should be declared whites only in its entirety.

From there you might read about the present. There too there's a ton of material. E.g., the classic resume study showing discrimination against black people. [3] And there are plenty of evocative books. E.g., Julie Lythcott-Haims's memoir Real American about growing up biracial. [4] Or Ijeoma Oluo's So You Want to Talk About Race. [5] And I don't think an understanding of American racial dynamics is complete without a look at white fragility. DiAngelo recently did a talk about her excellent book that's a good intro. [6]

I agree that America could be unique in the extent to which race matters historically and currently. But it's not like other countries don't have major issues with racial discrimination. Wikipedia has a very long list of ethnic cleansing campaigns, for example. [7] Congrats if your home country never had any of that, but that's not where you are now.

I also get why you might think discrimination was due to some correlative factor, like money. I used to think that too. But over time I came around. What changed was studying the history, looking at the evidence, and really listening to non-white people with empathy and an open mind.

[1] https://www.amazon.com/Sundown-Towns-Hidden-Dimension-Americ...

[2] https://en.wikipedia.org/wiki/Tulsa_race_riot

[3] https://www.nber.org/papers/w9873

[4] https://www.amazon.com/You-Want-Talk-About-Race/dp/158005677...

[5] https://www.amazon.com/You-Want-Talk-About-Race/dp/158005677...

[6] https://www.youtube.com/watch?v=45ey4jgoxeU
I agree with you, but I guess you know that the answer is "because c still has no proper dependency manager so downloading a c file and adding it to the project/makefile/etc is often the easiest way forward"