skysight-inc/HackerNews huggingface dataset:
I've made a mistake while creating thread and I think I'm no longer able to edit the title.

I'm from Poland, so such name is natural for us.

Euboea depends on POSIX and X86 highly, therefore I thought about Euboea like about another text processing / computation language to be used in shell scripts making programming easier.

> isn't interfacing with C and "no access to files" contradictory

As UNIX philosophy states, CLI tools may use stdin and stdout (among other streams), to read data, process it, and output it back. Also, this model is ensuring a) safety, b) simplicity.

Interfacing with C is actually not that advanced right now and all you can do is to specify C function name by modifying libE.c, it's exported name usable from Euboea and amount of parameters (-1 if vararg)
A linear time algorithm to cut lines
I feel like the timing of supper is a cultural thing. I prefer to eat later, but it sucks trying to do that in America, unless you want fast food. But I fell in love with Spain because it was honestly the optimal meals times for my body. Wish it was easier to do in America, at restaurants.
"Software is used as a boogeyman for leadership and process failure."

In my business systems consulting business, I think I have seen exactly this issue almost more than any other issue that I've encountered... across industries and business sizes.

Software gives you that convenient, opaque, ill-understood rug you can sweep any old systemic (non-technological sense) problem under. And it's probably so common because it works. Those people trying to get to the root of organizational problems more often than not don't have sufficient understanding of what role technology plays in their business as to challenge people blaming the system... so many dollars and so much time get dedicated to solving the wrong problems this way....

To be fair most, if not all, business systems are terrible, but they aren't usually the core problem when a company gets to bringing some like me in to "fix/replace" the systems. Makes my job a little harder than it should be to be honest.
And "typeahead", where your fingers can be entering data faster than the computer can respond to it. Folks who are used to this tend to really lose their cool if this feature goes away, and I can't really blame them.

https://en.wikipedia.org/wiki/Typeahead
> And if I get a new machine, all I have to do is install my tools via Apt/Brew/etc, clone my dotfiles repo, and run an install script.

If I get a new machine I only install

- dotnet core

- Visual Studio Code

Finished.

Both are available on all mainstream platforms that you might want to use, including Linux, Windows and Mac.
Thats why old wooden well preserved (made) ships survived up untill to now.

Crappy made w/e will break the moment you stop maintaining it.
> Actually, it might. If half the users can't use your highly-efficient system and then have to go bother your workers to figure out how to buy a ticket,

That's the kind of user-hostile decision-making that annoys and infuriates people. It's basically saying it's better to bother a hundred other people than have one person bother you.

In my comment I said that you need to support both sets of public transit users well, and that it's not either/or. In many cases it's a mistake to make the dumbed-down newbie interface the only interface, because that could make your system noticeably worse for most users.

Personally, in cases like this, I think some kind of touch-screen guide to the efficient expert interface is probably the right balance. Make it easier for newbies to scrape by (because that's the best they'll ever be able to do), but give frequent users a path a better experience rather than holding them back.

> that's probably worse than making things slightly easier for your regular visitors.

I think we're talking about residents, not visitors, in this case.
I don't know, with SSH access to a machine, I would edit the remote file with Emacs on my local machine via Tramp or using SSHFS.
Electric resistance heat is 1.0 or 100% efficient, all electricity put into the heating element is converted to heat. Not sure if your trying to include power plant conversion and transmission losses, but that gets very complicated.

Gas units range in efficiency based on how much heat they recover from the exhaust, 80% is typical, 90+ for a condensing heater with two stage heat recovery. The problem with condensing is the exhaust gases fall below condensation point for the water vapor created during combustion requiring a condensate drain complicating the install location and cost significantly.

Heat pumps are over unity they use some energy to move more energy from the environment into the water, they are basically solar assisted resistance heaters.

The energy cost difference is not as clear when comparing a heat pump tank storage unit to a gas on demand tankless they are both typically more cost effective than tank storage electric or gas.

I have a 80% efficient tankless natural gas, it is wonderful having endless hot water at all faucets concurrently with a family of 4 plus occasional guests. I wanted to go condensing 90+ efficient but it was to complex based on its install location.
I used to LOVE Dilbert. His comics are so funny.

I didn't mind the Trump stuff. I think Scott Adam's insights were valuable even if his comments were extremely frustrating and contradictory.

But his somewhat new Climate Change denial stuff finally made me unfollow him.

https://twitter.com/ScottAdamsSays/status/109968558214017024...
The map doesn't show Silicon Valley
I think he's remarking about how the first version of anything is almost always suboptimal compared to later versions. I.e., it "sucked" compared to later versions, almost by definition.
You diplomatically state this, but they fail to deliver on the most important thing of their service, surely there is a plan to fix this?
A lawyer betraying a client is not wrong?
Portland does have some day centers with laundry and showers, however the usage is way above capacity.
Python will actually give you an error for `print foo` as soon as it parses the file. But there definitely are other scenarios where you'll only get the error in the middle of execution (such as passing the wrong type of thing as an argument to a function)
We understand what "smart" means in relation to what one can do in the world, but that says nothing of what it actually is. It's like if I make an analogy: "That guy is like a dog chasing a bone." It only means something if you understand it, it has no substance on its own. I feel the same way about the way people use terms like "smart," "intelligent" they only mean something if we already know what they mean, but we only know what they mean in relation to the world, not their character independent of it.

I do see the trajectories being different, but I believe they must also converge at some point.

Edit: Also, the documentary "Baby Geniuses" has extensive evidence that babies are really smart, they just can't communicate how smart they are.
In cooling mode, heat pumps work by heating the outside of the garage/house. To do this, the refrigerant has to be warmer than outside temperature. For a given fluid, you get an upper limit temperature like you mention, where efficiency drops to zero. This is because the fluid has a critical point, as you approach critical temperature the achievable enthalpy change in the condenser drops to zero.
It looks like it's time for an "Un-paywall Medium" Chrome extension. https://twitter.com/sephr/status/1101176562274037760

I imagine that most causal desktop users would rather install an extension in seconds than take the time to enter their payment information for an easily-bypassed paywall.
This is uncool of Strava to the point that I'm quite certain that I don't want a Strava subscription anymore so I cancelled it just now.
Essen: An AI that reads for you
>The lack of diversity doesn’t stop at work — it permeates every aspect of life. Everyone wears Patagonia and North Face, everyone has AirPods hanging from their ears, and everyone goes to Lake Tahoe on weekends. And everyone talks about the same things: startups, blockchain, machine learning, and startups with blockchain and machine learning.

Superficial, much? This entire article sounds like a parody.
I agree. I have found that the best use-case is to import existing HTML emails and then modify/add, as opposed to building them directly in the editor.
My computer wouldn't break down without updates. I previously had windows 7 for years and never updated. And had consecutive months of uptime. You don't get it.
missing: Structure and Interpretation of Computer Programs
You're conflating "optimized" with "optimizing". The observation is that Java and C# depend on a _very_ sophisticated runtime (including a JIT compiler) to perform comparably to Go which has a comparably simple runtime. I don't know that the point is a strong one; I'm just trying to clarify the conversation.
This is literally just a REPL for Go. Are you saying that Go is "off" because the compiled language doesn't include an interactive mode by default? By that logic, there is also something "off" about Rust...
At some point, the UI should settle down though. It’s not like you’re completely redesigning it every few months; most GUI applications I use don’t even see significant UI changes unless its a major version update (and usually a new fee..)

At which point, formal methods are exactly what you want, as you’re more interested in stability than plasticity at that point.

I’m not even sure UIs should be changed as often as they are (change is by default a negative, and has to overcome that loss, as you lose the many benefits of “getting used to it”) but thats a separate issue
>Yeah I keep hearing / reading about rust, even seen some demos but the demos all end with "oh no I'm not using this for anything". Still cool but ... want to see someone doing something in production / get their thoughts on that.

Huh? Besides Mozilla itself using it in the browser in several backends, there are tons of places where its used in production (and several articles on HN on the topic).

Where do you see all those demos who say "I'm not using this for anything"?

I've seen articles on Mozilla using Rust, Dropbox using Rust, MS using Rust (rustgrep used in VSC but also something in Azure IIRC), Google using Rust (Google Fuchsia), Facebook using Rust (Mononoke, etc), and so on.
Blockstack Id Verification
Verifying my Blockstack ID is secured with the address 19dDps7PeSu8F5hGvxxg41qMUeXQbo3SgF https://explorer.blockstack.org/address/19dDps7PeSu8F5hGvxxg41qMUeXQbo3SgF
Apple to lay off 190 in self-driving car division
I find it a very weird reasoning, as inconsistency is everywhere in Go's type system.

Every standard type literally has it's own type system, as do more than a few functions. Structs, arrays, maps, slices, ints, ..., make, new, range, delete, ...
Always look at your dependencies and in that I include the programming language, the os and the hardware. I have seen good systems fail for supporting the wrong label printer.
But... it's exactly UI.
It's been explained and reasoned about quite extensively here.
That is a completely inept comparison. Domain squatting serves no purpose other than lining the owner’s pockets in what many would consider an unethical manner. Domain names are finite and cannot be replaced as a manufactured product can. A more accurate comparison would be buying every lot of land in an area, another finite resource, without any intention to use the land for yourself with the only goal of then marking it up significantly to milk a potential purchaser without adding any value to the transaction.
That's quite a drawback. I don't mind supporting some creators and YouTubers through Patreon or YouTube membershops because $5/month isn't all that much. But if I had to make a decision to spend $60 to support them that much for the year, I doubt I would do that for most. Some charge $50-$100/month on Patreon for certain benefits too, I doubt many would be willing to pay $1000 up front for that for a year.

I'm surprised this is a payment processor limitation. I thought Stripe supported automatic recurring payments?
AI that reads articles and finds the essence for you.

Essen is for you if you want to get the essence of an article, don't have time to read some lengthy texts, or simply want to experience how cutting edge AI can enable you to get the most value from information.
FYI... it looks like hnchat is no longer a thing in case you want to update any way fellow HN'ers can contact you.
Being able to change the color temperature of the bulb (bluish-white during the day, warm white at night) is a real benefit - and not something a socket can do.
Hello everyone, thanks for all your feedback!

Regarding IDEs and bloatware: here’s a more detailed explanation of that argument

https://lucasfcosta.com/2018/08/05/In-Praise-of-Plaintext.ht...

They’re not always bloatware, they have meaningful use cases, I just don’t think most of them are in the domain of software engineering specifically.

I’ll take some time to go through comments in more detail at another time and address them in the post if they’re relevant to the context.

Thanks again for all the amazing feedback.
A linter would catch that.
IIRC, these are taught. But it's a bit like a CS ethics course; you can bring a horse to water but you can't make it drink. And even if you believe in it, that goes out the window if your clients want that context-ignoring modern architecture. Developers and local power brokers are often more interested in showing off their ability to afford Zaha Hadid or Calatrava than they are in providing useful assets to the community.
What's an example of a language where the second would be more expensive than the first?
Learning a text editor plus ctags (etags) plus how to integrate your text editor to N compilers (syntastic) will make you equally proficient without fiddling with one IDE for each language.

It sounds lame early in your career, but after a while, switching between C++, java, JavaScript (ok this one requires a little more involvement because the browser is the compiler of sorts), typescript, etc is very easy.

When you switch languages/projects it is just a matter of opening a file with a different extension. All your text editor muscle memory is still there.

If you use IDEs, today you are on a project that only builds in eclipse, tomorrow intellij, then you move back to C++ and have to use visualstudio... and you don't even know the Go To Line keyboard shortcut or Text Search...
I am legitimately curious how a government entity can get a patent. Shouldn't anything funded with tax dollars automatically get put into the public domain?
Pakistan's Move to Free Pilot Not Enough to Reduce India Tension
I wonder how feasible maintaining that is? I feel like it's very common to find people who work on your house will mess this up (cable or satellite dish installers, for example). That seems to happen for everything, but it depends on the resiliency. I bought a house where satellite dish installers drilled right through the shingles, likely compromising the water permeability of the roof. Ironically, I had heat pumps installed last year. Soon after I had rodents. I feel like they did a good job of weatherproofing exterior holes they made, but after patching up the crawlspaces the rodents disappeared.

People are grossed out by rodents and a leaky roof has to be addressed, but if their heating/cooling cost goes up slightly because a cable installer messed up are they going to hire someone to hook up a blower door, patch things up, and charge this back to the cable company?
Yarn deleted all of my code
Meh. Extreme circumstances result in extreme behaviors. It's a story as old at time.
It's difficult for a non-specialist to place this article in a broader historical context. I thought string theory was by now more or less considered a dead-end, so I wonder if this article is an attempt to revive it, or the first sign that it may actually go somewhere after all. Maybe someone knowledgeable can weigh in?
> It's such a small cost to add during construction and it pays off in a year or two, tops.

Classic market failure: operational costs don't factor into home buying decisions prominently, so whatever small added construction cost is borne by the homebuilders (the cost of added insulation doesn't quite result in an equal increase of selling price).

Short of instituting a carbon tax that would make operational costs of heating suddenly more prominent and priced accordingly, this is a great case for efficiency standards in homebuilding. Suppose your home came with an "energy star" HVAC rating...
The Cheating Cheaters of Moscow (2010)
Weird flex, but okay.

But seriously, it’s hard to read “look how tough we have it” about getting a 6 figure job out of school. You didn’t get into Harvard. That’s not a life defining tragedy... hoping this is parody. The vast vast vast majority of the world works harder for less. We should be thankful, not weirdly bragging about how hard our childhoods were. Try Detroit or Bangladesh....
> I have some experience in C++, and I am familiar enough with the standard library to remember that operator[] doesn't check bounds while the at member function does.

Everybody knows you're supposed to check pointers for being null, and yet time and time again developers fail.

As long as you rely on human nature and provide one API which is simple, convenient, obvious and dangerous and one which is complex, inconvenient, non-obvious and safe, you will just drive users towards the former.

> I would assume that the Firefox C++ programmers know this as well. However, maybe I'm wrong or have too much faith?

Just because they know when quizzed doesn't mean they'll always remember when actually doing. Even less so when subscripting is safe in pretty much every other language which provides array subscripting, and ::at… only exists in C++?

> IMO calling the at function isn't particularly verbose

No, but it's still more verbose and less intuitive than [], especially given the above (that tons of languages use [], and very few have an at method)

> A good way to dissuade people from making unidiomatic choices is to make them more verbose.

Indeed.
In this context, think of "text" as shorthand for unstructured text. Which is another subset of text. The sort of text that Unix tools traditionally handle. Colon-separated files like /etc/passwd, line-oriented files like /usr/share/dict/words, etc.

So, now we have two subsets of text, and it makes sense they can have different levels of expressiveness.

(Actually, unstructured is too extreme since there is a little structure. Something like "isomorphic to CSV" isn't quite right, but closer.)
Maybe it's a product of where I live - an island on the west coast where there are no interstates and many independent gas stations.
I don't tip often for Uber/Lyft, but I do always tip for Uber Eats and other food delivery apps, mostly because my condo unit is kind of hard to get to. I find that if I don't explicitly say "Will tip for door delivery" in my Uber Eats delivery instructions, about 15% of drivers won't come anywhere near my door and will just wait for me outside of the building. After adding that line, it went down to 1%.

So for me, tipping is kind of just an added cost I have to account for to get the app's actual promised service.
> That applies to Java and C# only, where the language grammar is so simplified that you can be 99% confident semantic refactoring didn't screw your code

Some of us would say well-designed instead of simplified :-)
The original runtime had far, far worse GC pauses. They concentrated on making sure they could make a good one later rather than getting a perfect one out the door immediately. There was also a series of crashing bugs of varying severity in the first couple of versions. Even then you had to go a bit out of your way to find one, but they're a lot harder to come by now.

Nothing that surprising, really.

If you look at Go's release note history: https://golang.org/doc/devel/release.html look towards the first few releases for the bugs they mention. For instance, here's a 1.1 fix: https://github.com/golang/go/commit/d72c550f1c7e13c323f4507b...

One of the advantages of not mutating the language too much is that there aren't very many things like this in the last few releases. I would expect the first 2.0 release to have a few rough edges even in the first non-beta release.
This dead argument seems to re-animate itself once a year or so. But my question is this: Why not learn both the IDE of your choice and how to use your terminal/vim? No need to arbitrarily limit your own knowledge and abilities. It just makes you stronger.
Agree completely. For a bit of my own story, a year+ ago I had the option to write a project in Rust and evaluated it vs Go. Long story short, I tried rust, and it was a massive headache and I failed. We used Go (as I had been for ~4 years).

Fast forward to ~2 months ago, a work project dictated tight control over memory which, while possible in Go, had me looking at alternatives. I decided to give Rust another try. This time it wasn't just an evaluation, it was needed to work so I bought and Rust book and spent some after hours time learning/etc.

This time, Rust has been an absolute joy. I have no understanding why last time was so painful, and this time it's been so amazing. Maybe it was the book[1]? Maybe it was just a 2nd round of learning based on my previous experience? Regardless, it's been great.

There's just so many mental overheads like what is concurrent safe, what is non-null, etc that are just great to not think about anymore. On top of that, the formatter and LSP are just great. It highlights in my text editor (Kakoune) what variable caused an error, where it gets moved incorrectly, etc. So much just works, it's great.

My only complaint these days is:

1. I find it odd that some things like slice reads can still panic by default. Yes, I can use `foo.get(1)` to avoid panics, but still - it's a bit odd to me.
2. I'm anxiously awaiting async/await. It's quite difficult to be patient.

[1]: Programming Rust: Fast, Safe Systems Development
So moving away in the hopes that SV will magically get better while you're away?

Doesn't sound like a practical plan.
I tried it on the text of the article itself.

Here's my cmdline:

# cat file | preserve only spaces and letters (remove punctuation) | convert to lowercase and put each word on one line | use awk maps to keep a count for each word and print map in two columns, count followed by word | sort in reverse numerically by count column, then by word ascending | print top 10 words by frequency

cat input.txt | sed -e 's/[^a-zA-Z ]//g' | tr -s ' A-Z' '\na-z' | awk -F ' ' '{ if($1 in count) { count[$1]=count[$1]+1 } else { count [$1] = 1 } } END { for(k in count) { printf("%d\t%s\n", count[k],k) } }' | sort -k1,1nr -k2,2 | sed -n -e '1,10 p'

Output:

27 the

21 to

15 a

11 is

10 of

10 that

9 but

8 text

7 was

6 and
San Francisco definitely feels like that to me. Everyone and everything just seem like they are part of a cult and worshipping at altar of startups. I can't explain it.
Making the JIT Part of the Cloud
This is why I'm creating a command-line alternative to Photoshop.
> You could write equivalently bad code in any language that supports array types, and get similarly broken results.

You wouldn't get "similarly broken results." The results for doing this in C/C++ are far more serious, which was a point the article made.

If you do this in Rust/C#/Java/etc they will safely crash. If you do this in C/C++ it is undefined behavior, it may crash, but it also could allow remote code execution.

The Rust version of this bug is Security-Low (crash), the C++ version is Security-Critical (potential RCE).
Pagedraw is shutting down and going open source