skysight-inc/HackerNews huggingface dataset:
This article lacks any depth! It is easier than ever to program and get started. 5 minute tutorials are available on almost anything and sometimes delivered by 8-9 year old kids.

Even low-level stuff are easier to pick up thanks to the explosion of readily available information and IDEs. No one is using Arduino? Perhaps it is true that newer generation is just less keen to put an effort to study anything outside of the norm of but learning old and new technologies has never been easier.
Cop fired for refusing to shoot suspect gets $175,000 settlement
KDE Plasma for me, it's amazing how good it is and how stable it has become. I've been using KDE for years and I've recommended it to almost anyone I could - and they always stuck with it, because it was simply too much well done. Compared to gnome 3 and other new desktop environments, KDE has always been so easy to use, predictable and customisable, a very joy to use.
Interestingly, Blender was originally proprietary, and was open-sourced after its parent company went bankrupt, and only after money was raised from the open-source crowd (before crowdfunding was a thing).
Thanks for mentioning draw.io. After a quick look around I can see that it will be very useful. I especially like the interface. If it wasn't for my browser interface above I would swear this is a very well made desktop app. Standard OS inputs used well are hard to beat. This really makes me think twice about using some of the fancy UI libraries out there.
Familiarity with how computers work arguably peaked during the early-mid PC era. The first computer that I used was an IBM 360. Basically, someone showed me how to punch cards, and how to enter my data. After submitting the job, I'd find out the next day whether it crashed, or completed properly. And after a few tries, I got my results.

But nowhere in that process did I know anything about IBM 360s, or how to program or run them. I more-or-less understood the mathematics involved in the data processing. And I could somewhat parse the Fortran. But I had no concept of anything like a directory hierarchy.

With an IBM XT 286, on the other hand, it was all in my face.
OpenSCAD. It’s not feature rich but it does its thing very well with a clean user interface AND a nice language to work in.
If there was, Apple might sue them for it.

So far there are GNUStep and Darling but they are not ready for prime time.

You can buy an old MacBook for $99 That can run an old MacOSX on it like 10.7 or under but it would only be a Core 2 Duo, but would use Boot camp to run Linux.
Your rhetoric is not quite honest. Best case != Average case.

Of course the one-in-a-billion guy whose life got saved by a timely update will be singing your praises. Not so much the hundreds that got in a sublethal crash because of a freshly introduced defect in that same update. But in the big scheme of things, the real issue are the millions that were unable to get on time to whereever they were going, because their fucking car became unresponsive for the fucking 30 minutes that it takes to download your fucking update.
I can completely relate to this.
It's also a love agency in a law and order criminal intent episode - I have to admit, it's written "Kizmate" in the episode
I’m amazed to see that the reaction of many people including the op author, don’t think that this is simply the symptom of a field (ide) that haven’t evolved in thirty years.

Whenever i open a terminal to type some esoteric command line i don’t feel like a tech genius. I feel like someone living in the stone age.
"I simply am not able to accept it." - how about, now just hear me out on this one.

How about, You entertain the possibility that the dude got fired because he deserved it and wrote something that was intentionally aimed at making the team he was supposed to be a part of erupt in a bunch of fruitless and non-productive drama. Which succeeded in becoming an industry wide viral hit. Drawing unwanted negative publicity to his employer. This is capitalism 101 here. Bro was toxic to effective team function. Who knows how much money Alphabet lost to this one drama llama.
Care Revolutions (YC S16) Is Hiring a Ruby/Rails Engineer in Los Angeles
Us: We are a shift based marketplace for Healthcare Professionals. We match talented nurses with shifts posted by medical businesses requiring highly specialized skillsets. We are growing rapidly and need your help!

Role: Ruby/Rails engineer with strong backend skills and at least 3 years of experience. This is a Rails api app backed by PostgreSQL and Redis with Sidekiq for backgound jobs. The app powers iOS, Android, and a separate Node/React/Redux web app. We are looking for someone who enjoys thinking deeply about data structures, interactions and transformations, who can collaborate well with product, web, and mobile developers. We're going to pay 120-150k depending on your experience, skills, and how you value equity versus salary.

We are funded, pre series A, with a solid runway. Now is a great time to get a decent salary and equity without all the tax hangups of coming on board with a later stage start up. Join us and help us revolutionize the health care professional space!

Email derrek at carerevolutions.com
> We have a huge problem in the office right now in that we don't have any mechanism to pay each other digitally for things like lunch - seriously

Apple Pay in iMessage makes this laughably easy and secure.
Figma
I got just a taste of RN recently. The thing that stood out the most about it to me is being able to iterate through debug cycles at a much higher speed compared to native debugging.
sublime is overpriced by a factor of 2-3

especially with competition from atom + with electron improvements leading to atom not having totally garbage performance
I kinda like the smell, coming out of dryer vents on a below freezing night.
How not to replace email
*matrices
Spectre can be avoided (at small performance cost on new CPUs) with microcode updates and OS fixes. Meltdown can be fixed just at the OS level.

At this point, whether you're releasing a chip with or without the vulnerability is not an issue. Fixing them will make you look better in benchmarks if anything, because you don't need anymore the slow PTI mitigation.
I don´t want to enter the eternal debate but predictability is definitely not the greatest kde features.
Nice to see proof of what everyone already knows.
huh. Today I learned...

I've always liked the home made stuff you find at street and farmers markets; bigger variety in scents for sure.

Also thinking about the soap making process makes me think of Fight Club.
Yes. Bugs are called bugs because you could actually find bugs among triodes and they could cause the computer to malfunction. Then the wording was extended to software bugs.
Wolframalpha.com
tesseract-ocr
CMU-sphinx

and such.
Great concept. I was just wondering Having an email address in profile is pretty common for HNers, so kismet can also send a verification email to any email it finds in profile for verification too. This might reduce the friction and encourage more people to signup.
Kazaa lite codecs, classic media player, Vs code, Google docs and most Google products, freely, android
Group Office

https://sourceforge.net/projects/group-office/

Amazingly complete CRM system with a robust and fast web based IMAP client.
I believe that OSM should deliver data, and not a service because it's extremely data-demanding.

Although I have to say that since OSM offers data, they could make an effort into providing good exports of that data, with better segmentation and choice of format. You should not have to download planet.osm or use some overpass API. The choices are very limited, and offering data through XML is insufficient.
Any number of programming languages and their implementations. My personal favorites being Nim, Lua, and the sadly forgotten Tcl/Tk.

Linux. Arch for my fancy stuff, Alpine for my servers.

SQLite and Fossil, from the inimitable D. Richard Hipp, plus rsync and rclone to keep everything in its place.

Yes, I'm a minimalist.

Of course, good is so intrinsically tied up with free that we cannot pry them apart. Not for the sake of money (I do contribute, I do donate), but for the convenience and accessability, and of course the principle.

Oh, and GIMP. How could I forget?
LOL. Spend some time dealing with French banks and then we can talk about American banks. France is a place where people actually write checks for things and you have to physically visit your specific branch to accomplish certain transactions. The concept of “branch banking” hasn’t made it to France yet. Even withdrawing cash from a bank requires an appointment (if you want to withdrawal over a few hundred Euros for instance.)

French banks are a nightmare conpared to American ones.
Already posted here: https://news.ycombinator.com/item?id=16394828
> Google

It's paid by advertisers. Docs and mail are just the Trojan horse to get you to use Google for searching.
TreeSheets: http://strlen.com/treesheets/ - infinitely nestable spreadsheets, great for organizers

TreeProjects Personal Database: http://personaldatabase.org/ - searchable, inter-linkable, hierarchical notes and media tracking for projects

Godot Game Engine: https://godotengine.org/ - the scene graph system wherein a "scene" is just a saved subtree of nodes and can be instantiated at any point within a parent scene is so far beyond the clumsy scene/prefab split in eg. Unity
No. The purpose of the Crown in the reporting line is so that when the PM says “do this illegal/extrajudicial thing” everyone replies “I don’t work for you, I work for Her Maj”.
The free (as in free beer) version of Manic Time.
My understanding of Ethereum is that it markets itself as a smart-contracts platform, and you need to have an associated coin (Ether) to pay people to run the platform.

But the number of Ether is fixed at 100,000,000ish. Which means that if the platform is successful, the coin will increase in value indefinitely. But I don't see why those who 'miss out' on the presale etc. (think banks, governments) would choose to hop on board at a later date - essentially gifting money to early adopters - when they'd be better off simply creating a new coin (or indeed forking Ethereum and awarding themselves more Ether). It all just seems very unstable, game-theory-ish situation.
Wow I've only just seen this part (i was only familiar with the headlines of this story I never bothered to look into it until now) Whatever anyone's feelings on the issue one way or another, Gizmodo totally fucked this Damore over and I have to think it was deliberate, it doesn't make sense otherwise. I just browsed the original paper and there are citations all over the place - to strip those out is a deliberate move to influence the narrative, it has to be, I mean hell they edited it. They changed the nature of the guy's argument and there's no way in hell they didn't realize how big of an impact that would make (they're not going for a Pulitzer @ gizmodo, and they never claimed to that i know of, but still they aren't total journalistic imbeciles they had to have thought about it)
Apps running inside a JS vm on iOS or Android are not "truly native". Misappropriating an existing term (native app) to include such a design is uninviting; not even necessary.

There are so many ways in which this is inferior to native code. And I say this as someone who works primarily with JavaScript.
This is hilarious as so many people use telegram to pump and dump crypto currency using Telegram.
I think the strategy is getting in a central position in people's communication; they also have a huge user base; perhaps that doesn't justify 850M but those are some things to look at.

Wherever someone has this big influence and strategic position, they will have big chances to leverage them and make such investment worth (especially if the founder has a proven business-runned mind).
Vision Simulations
I rather like the JPL rules which say that code MUST compile with NO warnings even if the warning is wrong. See rule 2 in https://lars-lab.jpl.nasa.gov/JPL_Coding_Standard_C.pdf.
Parsing s-expressions requires on-the-fly allocation of memory and something resembling recursion.

Parsing any code requires on-the-fly allocation of memory because your function can contain 10 or 100 or 1000 lines of code and, when you are at the beginning, you don't know how long the whole function is.

Parsing any code requires something resembling recursion because your function can contain 3 or 10 or 20 nested scopes and, when you are at the beginning, you don't know how deep the whole function is.

Of course that you can say that you can pre-read the code and compute how much memory you need beforehand, but that applies to Lisp as much as it applies to any other language.
Metabase: https://www.metabase.com
Only when it comes to things that the right is is indisputably on the wrong side of history and hasn't figured it out yet (gay rights, gender rights, etc).

Its not like the alt left yet to preach about communism or unions or taxation with the same privileged safety. Subjects like this get a lot of reasonable discussion from both sides at left leaning companies.

But when it comes to things like diversity? And you are a company full of the most intelligent people in the world? Yeah, sorry if you haven't realized that "unconscious bias" is a real thing, you don't deserve a safe space to question it, you are being wilfully ignorant.
Well there's Vim. OBS[1] is pretty rad, too.

If we're including programming languages under "software": Clojure.

If we're including libraries under "Software": Lacinia[2] and Reagent[3].

If we're including databases: ArangoDB[4].

1: https://obsproject.com/

2: https://github.com/walmartlabs/lacinia

3: https://holmsand.github.io/reagent/

4: https://www.arangodb.com/
Unfortunately, enumerating badness just a stopgap measure - as this seems, so far, to triggered by a specific combination of character classes, it at least possible that there a non-malicious yet crashy string: what now, if the Knights of Ni cannot stand to hear it, but if it a part of the message? The recipient might feel that something not right with the message, and the sender might not even know that the message has censored because a part of it seems to harmful tó intermediary code. (See what I have doing here?)
have you breadboarded it out with transistors though? when was the last time you designed a board? when was the last time you laid telephone poles or dug tunnels for wires? designed fiber optics for cross ocean communications? launched a satellite for your GPS?

at some level, you're always going to be assuming the layer before reasonably works the way somebody gave it to you.

Its not cargo culting if you know where the actual dependence is, and both rails and heroku make it fairly clear what kinds of things they are doing. Even if you don't know how they're doing it, you know that without running the heroku part, you cant load the page in the browser, and without the rails part, you don't get any files you can change.
Wait, the previous generation had no phones at all. Do you mean that today's generation use phones instead of computers? In that case, I understand your point.
Turns out that the disabling did not work.

It is possible to detect mobile and disable it completely, but for now, because it's mostly demo material, I'll leave it enabled for mobile too. In a real-world scenario you'd probably show a message or explain why a mobile user cannot use it. That would certainly give you credits.
I think I'm one.

I don't think starting early or on your own is a requirement. Like in any field, intrinsic motivation is what counts (IMO).

I started programming in university at... um... 19? As a part of a physics degree. And fell totally in love with it. 20 years later I'm doing it for living and the love really hasn't faded.

Computer graphics is a demanding mistress, you really need to understand why programs and computers work.

Based on my experiences I would consider myself a pretty OK programmer.
That's not quite true. You pay a small amount once and you get it for life, and you can opt to support development and mappers by a really tiny amount (€1.20) monthly, but you don't have to.
If you are vegan, you aim for a whole food plant based diet.
Palm oil and any other refined oil or food has no important place in this diet.

Anyway, people must eat something. Replacing one crop by another does not change enough. It is time for efficient food production (indoor, GMO,...) that does not waste air, water, land, plants, insects and other animals like traditional outdoor agriculture.

E.g.

http://www.dailymail.co.uk/sciencetech/article-4863106/The-h...

https://www.smithsonianmag.com/innovation/future-will-we-be-...

https://www.wired.com/story/lab-grown-meat/
Sounds like Minority Report at least the TV show that quit using psychics and use an AI ML instead.
Let me guess... You work at a bulge bracket
Command line tool for soccer games
From what I understand gianduja nocciolato is just the generic name for a chocolate + hazelnut mixture traditionally made in Piedmont.

So this would be some kind of Nutella-like spread sold under some local/artisanal brand, made from like 80% hazelnuts + chocolate, instead of the 60% sugar + 20% palm oil + 20% hazelnuts and chocolate in Nutella. (I imagine ingredients vary somewhat from brand to brand though; check the label.)

It’s more expensive because higher hazelnut and cacao content are more expensive ingredients than sugar or palm oil. It’s also less spreadable and much less sweet.

A web search turns up e.g. http://foodloversodyssey.com/2011/07/history-chocolate-in-tu...
Union and intersection types make the following assumptions:

(0) There is a single physical universe that contains all values.

(1) The role of types is to “carve out” fragments of this universe.

(2) Say you have two values `x` and `y` of types `A` and `B`. Because it is possible to form the union type `A | B`, to which both `x` and `y` belong, the only way to make sure `x` and `y` cannot be conflated with each other is to make them physically distinct elements of the universe.

On the other hand, abstract types make the following assumptions:

(0) Each type is a “world” of its own, defined in terms of its logical structure. The values of a type are a mere consequence of this logical structure. Hence, it doesn't make sense to try to “split” or “merge” types.

(1) It doesn't make sense to argue that an int is different from a string, because it's just as nonsensical as arguing that they are equal. What they are is incommensurable.

(2) Say you have type two different abstract types `A` and `B`. Because they could share an underlying representation type `T`, you cannot rely on values of different types having physically distinct representations.

---

Suppose we had a language with both union and abstract types. The contradictions between the assumptions behind union and abstract types would lead to hilarious consequences:

signature ERROR_CODE =
sig
type error_code

(* specification of operations on error codes *)
end

(* we use opaque ascription, so that the internal representation
* of error codes becomes inaccessible to external parties *)
structure ErrorCode :> ERROR_CODE =
struct
type error_code = int (* prosaic representation *)

(* implementation of operations on error codes *)
end

type union = error_code | int (* union *)

(* suppose we also have flow typing so that this example works *)
fun test (u : union) =
if u is error_code then
ErrorCode.printErrMsg u
else
printInt u

val _ = test 42

You'd expect this code to print the integer `42`, but it actually prints:

ERR_DOUGLAS_ADAMS : The answer to the Ultimate Question of Life,
the Universe and Everything is the number forty-two.

Wasn't the fact error codes are internally represented as ints supposed to be unknowable to external parties?
Wasn't that what Btrieve was doing back in the 90s? Or was it PervasiveSQL on top of Btrieve engine you could access directly?..
> If only I could figure out how they _know so darned much_ about everything ...

As someone with a degree in Mechanical Engineering, I'd say that your observation is mostly due to (1) several hundred years' worth of head start (2) the field not shifting under them (much) over their careers (3) intuition from interacting with the real world being applicable and (4) you're also unaware of the crazy amount of accumulated computer knowledge you have. Now, due to the changing nature of software development, a lot of that accumulated knowledge is useless, but it wouldn't be useless in a more mature field. Imagine if all of the random arcania I've had to pick up from AppleSoft BASIC, Pascal, Perl 5, Tcl, ANSI C , etc. were directly applicable in my day job using C++, Scala, and Java.

Sure, there's some overlap, particularly from ANSI C to C++, but with Mechanical Engineering the basic tool kit changes much more slowly. I learned about common steel and Aluminum alloys, polyethylene, ABS... advantages and disadvantages of each, things to watch out for.

If a Mechanical Engineer really gets to know 1040 vs 1045 vs. 4130 steel alloys, that's knowledge that's going to pay dividends for the rest of her career. It's not like 10 years ago or 10 years in the future there was/will be a massive shift away from Aluminum and steel and the majority of engineers had/have to throw out most of what they knew/know about metals and learn how to design for Nickel and Titanium alloys. 3D printing brings something new, and heat treatment and machining techniques have improved, but even 3D printed metal parts aren't fundamentally different from the powdered metallurgy that my dad's cousin was researching in the 1940s.

You're also accumulating a ton of arcane knowledge, it's just that most of it has a relatively short useful life.

There's also survivor bias. The engineers that were promoted and kept through economic downturns tended to be the ones that were really interested in their field and readily soaked it in.
"good/bad mixed feelings" is a bit redundant.
IMO this is one of the worst suggestions.

Imagine you get an email from anonymous person at your workplace. This is about as awkward for workplace culture as it gets. Knowing that there is some guy a) who thinks that you stink, and b) who is not man enough to actually talk to you and instead sends an anonymous message, and c) you have to continue to work with that person, d) but you don't know who it is. Any of your coworkers could be that socially challenged person afraid to talk openly and taking such a ridiculous route.

Either you find the guts to and talk about it openly or you let it slide. I'd much prefer you take the first route. I consider this part of being an adult. It's only awkward if you make it so in the first place.
Postgres and redis.
Good catch about the article not matching the paper. Figure 2 in the paper is interesting comparing sources.

PDF link to paper: http://science.sciencemag.org/content/sci/359/6377/760.full....

I think they are correct about the soap, though. I use the unscented form of Hippie Soap (Dr. Bronners) and it does have a citrus scent that goes away quickly after it is first opened.

Zero voc paints are nice. I'm not sure if they are really zero voc or just much lower than usual voc, but they do smell much better.
I think you need data, not anecdata. I had the opposite issue. I had no problem playing GTA 5 on AMD, but with NVidia I couldn't go past some mission because the same PC would hang on me.
I'm all for the boycott of timber and palm oil products to end demand [1] for this destruction. But there's also the problem of the livelihoods of indigenous people [2]. But, at the same time, they are being exploited by the larger players [3].

[1] http://borneoproject.org/updates/indigenous-leader-appeals-t...

[2] https://www.borneotoday.net/discrimination-against-palm-oil-...

[3] https://theconversation.com/palm-oil-politics-impede-sustain...
Netbeans, Eclipse
Think Rails Is Magical? Maybe You're Scared
Telegram.