skysight-inc/HackerNews huggingface dataset:
Lecturer here - we will definitely cover some other topics, including semantic analysis (type checking, etc), code generation, basic optimizations, ...

I still expect parsing will be the major part of the course, maybe 50%?

There are some good reasons for that too. Parsing has a rich (and interesting) theoretical background that you don't really have with basic semantic analysis (unless you go to symbolic execution) and optimizations. It's more of an engineering-only angle (which we cover), while parsing has both aspects.

Background in parsing is also more likely to serve most the average student in practice :) I also think it's less easy to figure out on your own.
> I can think of no other language founder who has put in nearly the same legwork.

I don't pay particularly close attention these days, but I'd think Rich Hickey's involvement in Clojure over time, at least to the point Elixir is today, would be comparable.
> the impossibility of good hypotheses arising from other approaches that would indeed be a good filter

No doubt hypotheses can be discovered in some other manner.

I do not think the epistemic method used in the continental school of philosophy provides any sort of way of verifying those hypotheses from premises.
I considered it, but the title literally says "porn" on it, so thought it unnecessary. It's up to the judgment of mods now.
Electric GT – Electric Vehicle Systems and Components
Regional flamewar isn't any good either :) But there are ways of talking about these things that don't involve flamebait and name-calling. If one reads the site guidelines and takes the intended spirit of curious conversation to heart, that goes a long way. Note this one:

"Comments should get more thoughtful and substantive, not less, as a topic gets more divisive."

and this one:

When disagreeing, please reply to the argument instead of calling names. "That is idiotic; 1 + 1 is 2, not 3" can be shortened to "1 + 1 is 2, not 3."

https://news.ycombinator.com/newsguidelines.html
Sinkhole in front of Pantheon reveals 2000 year old imperial Rome paving stones
> The crux of this debate is the subjectivity around what counts as "niche".

Once you get down from the obvious large players people tend to consider what they do mainstream enough and what they don't do too niche.
I am aware of Optane.

But even in its current best, 2nd Generation Optane Memory DIMM and not the the Optane SSD, both its Latency and Bandwidth doesn't come close to DRAM. Even IBM innovation of OMI ( Open Memory Interface ), allowing Petabyte of Memory while only adding 10ns of latency to DRAM were already met with some scepticism. And Optane DIMM is at least adding 50ns at best, and hundreds at worst.

Our Multi-Core CPU, and the roadmap of SoC, merging CPU, GPU and VPU are already meet with some Memory Bandwidth bottleneck.

Intel has also stopped all consumer / retail of Optane. They will only be available on server and probably from selected partner from now on.

Optane is cheaper than DRAM per GB, but it isn't cheaper than NAND SSD unless you take into account of TCO. Which I would argue is still more expensive than SSD given the cost of SSD has declined quite a bit ( or back to normal depending on how you look at it ). But Optane ( both DIMM and SSD ) is faster than SSD especially in IOP heavy operation so it is still worth the money depending on applications.

Lastly, no one has a clear roadmap on Optane or 3D XPoint cost reduction. There is a difference of we want to reduce our cost and we know how to reduce our cost. 3D XPoint's Fab has been under utilize from Day one and are currently making a small loss even with Intel's guarantee purchase agreement. ( And Intel aren't selling all of them either ) There are nothing in the next 3 years that changes this landscape, and considering how technology moves, I would bet that 5 years down the line things would be about the same.

I dont want to be too dismissive. I would surely want Persistent Memory and a computer that just turned on like the old days with a press of power button. And the revival of SmallTalk like OS! But right now It doesn't seem feasible in the foreseeable future without some massive trade offs.
Maybe they are just evil...?
My team recently did a virtual escape room. Was well organized and encouraged communication and collaboration within the team. We used this company: https://www.puzzlebreak.us
That's great! It's really hard to create a safe space for people to do art.
There is also Spriter. Its not open source but there is a free version and the paid version was a kick starter and they had it for sale at a low price on Humble bundle at times.

https://brashmonkey.com/spriter-pro/
I'm sorry, but we don't read replies longer than 140 characters or that use the word "persecuted". Please create a new account and re-submit your argument in the form of a haiku.

Having made rules is not sufficient for those rules to be just. Rules are not themselves authority bearing - nor can one side be upset when they make obnoxious rules and get push back. When you respond to criticism of those rules by deleting the criticisms... well it's clear you are no longer hosting an open forum and instead trying to shut down speech you don't like.

The posters did not use insults, they did not attack the people behind signal - they pointed out that the statement regarding the proxies was false (which it factually was) and that the circumvention that Signal gave was likely insufficient for most users. Shutting down a potentially serious security bug because it's in the wrong spot or because you don't like the tone is bullshit - it tell me you as a person care more about tone policing then keeping your users safe. When you're doing battle against nation-states who like to jail their dissidents, you don't get to reap half-successes.

This isn't a child's baseball game, this is a situation where lives are at risk. "Sorry, we really tried to put out the fire, but your yard sign made me upset and I had to go write in my journal instead of doing my job."
Also, add a couple of type annotations to the program:

import time

def fib(n: int) -> int:
if n == 1 or n == 0:
return 1

return fib(n - 1) + fib(n - 2)

t0 = time.time()
fib(35)
t1 = time.time()
print(f"{(t1 - t0) \* 1000} ms")

The run:

~> mypyc fib.py

And boom:

~> python
>>> import fib
332.64994621276855 ms

(FYI, mypyc is a compiler that's part of the mypy package).
An infinitesimal fraction of humans have ever owned a slave.

I know how the pronoun was intended to be used, and I’m not attributing any ill-intent. It’s perfectly appropriate to use “we” when referring to humans in general; such as “back before we discovered nuclear power” or “back when we discovered antibiotics.”

But, for something as recent (and ongoing) as slavery, you may want to think twice before using such a sweeping pronoun. A good portion of the US, for instance, have great-grandparents who literally fought in a war to abolish slavery. More subtly, the use of “we” seems to impute blame or responsibility on those living for actions taken by a very small group of people. It’s neither accurate nor useful.
I'd say parsing is easier when you know how to do it, but getting to understand it the first time is harder.
X and Wayland Are Like Petrol Cars vs. EVs
Doesn't the security of Tor depend on the proposition "Surely my opponent would never operate a bunch of exit nodes"? That has always been my impression, and it seems like a problem when your opponent is a state actor.
Now try the tail recursive version! :)
Yeah, this seems like a real disingenuous complaint around a pretty incredible (and still super young) accomplishment. I would also assert that Elixir is an excellent language syntactically to work on data science-y projects. I'm really excited.
Study finds the need for power predicts engaging in competitive victimhood
Who's Afraid of Background Independence? [pdf]
This is correct, though both are exact at the scales in question (14930352). There's a more general question of whether it's beneficial to take a perf hit for all arithmetic in order to support some corner cases of infinite precision, or be explicit that standard arithmetic won't be precise, but you can opt into it via some mechanism (BigNum, in the JS case)

I prefer the JS approach.
Yeah, remember macro based generators before C++ got templates, or Eclipse EMF before Java got annotations?

Although we did survive with them and delivered code into production, it doesn't mean we keep using them 20-30 years later.
I found this thread when the Xorg Foundation twitter re-tweeted it: https://twitter.com/XorgFoundation
Simple advise. Start with a 5 dollar droplet and increase ram / disk speed when required. If you reach 64 gigs consider spliting.

What I do is put my database on a droplet and my files on another and it can handles millions of requests. Put them on the same machine and I need to increase ram higher than the cost of multiple small droplets.

If you ever reach those limits consider setting up a load balancer.
Why you are being down-voted is beyond me. Your response is reasoned, clear, and open-minded, as well as informed. A citation might improve it, but as it stands, its a fine exemplar of the kinds of comments we should be promoting here on HN.
I agree, this article is a perfect example of the weak parts of Go.

I love Go for many decisions that have been made during its development, but the handling of enumerations is certainly not part of it.
Python as an implementation is slow but python as a language is much better designed then javascript. That is the main reason why they are gotos.
That was my understanding, too, and I wrote it. :)

I'm fine with calling it "the mother of all sciences", though, just to annoy some natural scientists.
Didn't know such feature.

Interesting day: https://news.ycombinator.com/front?day=2017-10-09 Microsoft gives up on Windows 10 Mobile the same day Librem 5 was funded.
Interesting. Thanks for the detailed answer.
The specifications do say that JavaScript only has floating point numbers (and no integers) and that Python has infinite precision integers. But in implementation, for whole numbers small enough to fit into a regular 32-bit integer both Python and Node.js use regular integers as an optimization. fib(35) comfortably fits that.

I guess node.js might have the edge here with the necessary overflow checks in the addition. Both languages have to do them to fall back to either doubles or bigints respectively, but Node.js's JIT can probably do them faster.
Anything that involves free stuff. Cooking class with free ingredients, a painting class with free paint, a wine tasting with free wine. Just anything but a regular old zoom "happy hour".
> you will find many stories that fit into the 10 points

I don't doubt that. In a nation of 300+ million you can find someone who believes just about anything. But it's still a very long way from there to the conclusions that the conjunction of those ten points is a mainstream point of view, which is what McWhorter claims.

Nonetheless, thanks for the references and the considered response.
Maybe, but it's also why synthetic benchmarks are not convincing. Maybe node better handles a bad pattern, but if performance is a concern to this level we're more concerned about functionally equivalent good patterns even if the code is very different.
Hard to give expert advice, but if you can “instrument” your product (software I assume) to measure and report on customer usage, that’s a good start. That would be at the micro level. At the macro level, you might keep track of how customers interact with your company, with social media, with marketing campaigns or with product workflows. Good luck!
Makes sense. I only suggest it since that might not imply that it contains blurry images of it. You can edit the title if you wish.
Pattern matching accepted for Python
duckduckgo has a !bang for hacker news `sudo !hn` redirects to hn.algolia.com with the thread at the top of the list
I agree. This is a much more reasonable post.
Super helpful! Will get it fixed.
I don't know what you mean by stealing. In college you are generally supposed to devote twice as many hours outside of class as in class. It's probably stated in your student handbook. That is why 12 to 16 credit hours is called "full time". In a problem-solving discipline the best way to spend that study time is solving problems. As a bonus you can get personalized feedback when it is graded.
I've just got my KDE CE PinePhone.

I love it because of what it represents, but as a phone it's not there yet.

The more "eyes" on this device, the better.

I have seen phones want to succeed and fail so many times.

It isn't the distro that matters, it's the software running on that distro which can then be a universal package for all Linux devices.

It's OK making ofono or Wayland run great on device A, but don't forget that wpa_supplicant and X11 run on every Thinkpad and Raspberry Pi we install on.

The work we do today benefits the ecosystem, not just the community.

Sorry for just saying thank you to everyone. I guess I should have had a point?
How is reposting content that was previously removed by maintainers not inappropriate? Signal made it very clear that this stuff should be posted on their community forums, not github.
It wasn't my comment, but there is more than one meaning for the word liberal. [0] I was going with adjective 2. relating to or denoting a political and social philosophy that promotes individual rights, civil liberties, democracy, and free enterprise.

I took "more liberal" to mean "more left" as in the political spectrum of Left vs Right, Liberal vs Conservative because that's the only definition that really fits the context of the sentence...

Despite the fact that Liberalism has much more to do with Liberty than liberal use of government, Liberals today certainly want to use the government liberally to make new laws for solving any small discomfort.

[0] https://www.google.com/search?q=define+liberal
Please don't screw it up. I use this constantly.
People said the same thing about 3d printing, and as soon as the FDM patents expired in 2009 the field exploded.
OpenDrives | Multiple Roles | Culver City, CA | Full Time | REMOTE OK | https://www.opendrives.com

OpenDrives makes high performance data storage a reality for our customers using our unique combination of hardware and software. Our customers range from Hollywood blockbusters, to medical imaging specialists, to academia and everything in between. At OpenDrives we are building next-generation data storage solutions for high-performance workflows.

Our Culture:

Empowerment - Bring your talent and voice to the team.
Effectiveness - You know how you work best. Pick the right tools. Work Iteratively. Ship it.
Empathy - Nobody is a robot, take care of yourself, and each other.

Here are our open roles:

- Full Stack Developer - Maintain and improve the API and UI managing our product

- Linux Developer - Maintain our platform an extend functionality of open source software

- Test Engineer - Manual or Automated, Ensure the quality of our product

- Support Engineer - Support our customers as they use our product in their environment or in the cloud

- Professional Services Engineer - Install our product on site and get our customers up and running

Some tech we use: Javascript, Python, Bash, Make, Terraform, Slack, Zendesk

Apply through our hiring portal here -> https://opendrives-llc.breezy.hr/
I’m under the impression there is still plenty more you can do with a database backed CMS then you can with markdown files. For instance difficulty marking pages as related to one another. You could use the slug, but if you later change the slug, you must track down all of the pages that relate to it and update the slug there too. Aka no normalisation.
The judge claims:

> Mr Waymouth had "never fully articulated" why he was unhappy with Summerfield Browne's work.

But that's clearly not true:

> Mr Waymouth alleged: "I paid upfront for a legal assessment of my case. [...] But what I got was just the information I sent them, reworded and sent back to me."

In any case, libel laws are absolutely ridiculous and are fundamentally incompatible with a free and functional market economy as they make it unsafe for customers to share their experiences and criticisms.

I have committed to never voluntarily do business with companies that take legal action in response to criticism, whether I believe it to be true or not. If you have sued someone for libel and I can choose a competitor who has not, I will choose that competitor even if their product or service is inferior.
I can't wait and am terrified when Reddit eventually goes public. Honestly, I'm surprised that this hasn't already happene.d
> I'd say about 90% or so of the code I look at where someone is building raw SQL queries has trivial SQL injections in it.

Just parameterize the query and you're done. If someone isn't doing so in 2020 they're either working on a very old system or they're not doing it right.

SQL injection is just not a reason to avoid raw SQL.

One of the reasons I love Dapper.net is because it allows me to use raw SQL and helps solve the only pain point I have with raw SQL, dynamically building queries.
I always have fun with gather.town. Pictionary in particular is a blast.
Hi I'm Tony, CEO of Cosmic (W19). Cosmic is a Headless CMS that provides a web dashboard to create content and API tools to deliver content to any website or app. We just released the Cosmic REST API v2 which we rebuilt from the ground up.

Check out the link above to see the changelog article or you can read the list of improvements / features / changes here:

New Features:

Nested metadata props are now possible without limit. This gives you GraphQL-like data response powers to get only the data you need.
No depth limit for Object relationships. The only limit is the prevention of infinite recursion.
We now offer a Postman collection to review and demo all REST API methods. This is a great way to get started with the new API methods.
You can now use the after param for Object pagination vs limit and skip.
We now have endpoints for Metafields and Media Folders to do CRUD operations directly.

Improvements:

Lighter codebase, faster endpoints. In some cases, endpoint response times are up to 50% faster (non-cached).
Better endpoint structures that follow standard REST conventions such as POST /resources, GET /resources/:resource_id, etc.
Consistent error responses with verbose messages.
The Select Dropdown Metafield now includes both key and value in the API response.

Changes:

_id has been changed to id.
type_slug has been changed to type.
status can now either be published or any (which returns latest Object version draft or published).
query is now the primary method for fetching and filtering Objects (Advanced Queries from v1).
Single Objects must now be fetched using id. To fetch by slug, you will need to use query.
write_key will now be required in the request header as Authorization Bearer.
metafields are hidden by default.
Stricter user input requirements. No additional fields are possible in the body for POST and PATCH requests.
There is a new, more secure token authentication strategy.

You can see more in the new docs site:
https://docs-v2.cosmicjs.com

Let me know what you think!
> Or is this related to something else?

Overhead. Each operation translates to Python bytecode, and the Python interpreter performs a full loop of the core for each bytecode instruction.

The humble

a + b

is

LOAD_FAST a
LOAD_FAST b
BINARY_ADD

each of which gets painstakenly executed by the corresponding completely static handler which yields something along the lines of:

fetch the bytecode
jump to the handler
access the function locals
push the value for `a` (which TBF is just an offset into an array) onto the stack
increment the bytecode index
fetch the bytecode
jump to the handler
access the function locals
push the value for `b` onto the stack
increment the bytecode index
fetch the bytecode
jump to the handler
popp both values off the stack
dereference the type of `a`
look for the pointer to the add method
check if it's set
call it with `a` and `b`
which performs various runtime typechecks (e.g. are both parameters objects and integers) and does the actual addition
push the result back onto the stack
increment the bytecode index

Assuming a hot loop, a JIT might literally just emit an assembly-level

add r10, r11

or whatever register it allocated to those locals.

An other component is that these are likely comparing apples and pears: CPython uses infinite-precision integer arithmetics. And due to not using a JIT it has no way to even remotely optimise any of that away. Infinite precision arithmetics are pretty expensive as they require lots of overflow checking.
Does the FDA have jurisdiction in Canada?
iPhone 12 mini was Apple’s 2020 sales flop
Unfortunately, the image was never displayed by the app that was downloading it as an internet test.
Other than the massive areas of land they flood and destroy (but you don't live there right?), or the fish that can no longer swim upstream, or anyone downstream that has to deal with reduced flow...
Section 230 turns 25 today, and it’s never been more important
Regardless node IS definitively one of the fastest interpreted platforms around. It is well known that it is faster than python. Python wins in other areas, including being a much much better designed language.
Funny how perspectives can differ. I was just coming to comment how the UI was clearly not as polished as the competition. It's just the obvious stuff:

Typing in a passcode: dots are too small, not spaced out enough

Keyboard: it feels like the characters are about to run into the borders

Camera: lots of just empty black space around the picture--I'd rather they just overscan it a bit to fill up the entire screen.

Lack of a splash screen, icons in the app drawer are a bit too large, many of the prompts obviously expecting a mouse input, screens where responsiveness to the screen form factor is just broken.

I am overall impressed with how far Linux on a phone has come--it's also still a long way to the top.
Eh, when it comes to scripting, performance is almost never a concern.

Different tools are best for different jobs, for example if you need to run some basic NLP jobs pythons going to be much better.
Wouldn't just straight running this through cython make more sense? Or numba?
Golem Primer: what Golem Network is and what it can do
Even though it's not illegal!
Is anyone really ready to face the possibility that COVID-19 will not go way, and we will go multiple years with a "cancer" sized death ball rolling around the globe for the foreseeable future?

Who here is ready to wear a mask in public from now on?
Can’t believe I’m the first one to mention IPFS! I’m not clever enough to say something coherent about it, but IPFS though!!
Given that /r/WallStreetBets went from ~1M to 7M subscribers over the course of a week, I'm going to say that there is strong overlap between the average Reddit user and Facebook users.
Britain’s Sexist Campaign to Sell Computers
r/linux is the best linux forum since comp.os.linux
Hacker tried to poison Oldsmar water system
Tables stakes is now a lot higher than what was offered by the first Android phones. Unfortunately the barrier to entry into the mobile phone market has risen considerably since then.
OutByte Antivirus 4.0.7.59141 with Crack Full Download {2021}
Python gives you better escape hatches for typical compute-heavy work (lots of libraries use C under the hood), and Python has a better multi-threading story than Node.js.

But I guess the biggest differentiators are really the ecosystems and standard libraries. Node.js is certainly catching up, but Python has generally a better selection of high-quality libraries for tasks beyond the web.
I plan to show how to emit Java bytecode - the advantage being that you don't have to write your own GC, and you benefit from the JVM JIT compiler.

I think in general the backend is much easier (especially if you don't have to do your own optimizations) - you mostly need to know a couple of patterns for working with tree-like structures.