skysight-inc/HackerNews huggingface dataset:
FP and OO are overly complicated, and it is not feasible in large industries. It is also a kind of production method that emphasizes personal technology in hand workshops. Personal technology greatly affects product quality and extremely unreliable production methods.FP and OO are actually taking a detour, highly embellished and ineffectual, and produce all kinds of fail.

Most OO systems are just simulations of real-world surface phenomena, and the whole system, like a mess, I think it is not good method of OO to simulate the real world, but to design it correctly with an abstract refined data model as a prototype. For example, the ggplot2 of the R language, the system is clear, with the perfect data model as the prototype. So a good OO system is more inclined to a data flow system, and I think Ggplot2 is more likely to be a data-driven plot system if OO was not in vogue at the time.

Excessive application of OO and FP design patterns, in addition to increasing complexity and error probability, reduce performance, without any benefit. Complex networks of relationships between objects in the OO system are also difficult to maintain.

I tend to construct systems with the simplest concepts and the most basic techniques, syntax, and functions. Used to implement my mind, The Pure Function Pipeline Data Flow is the simplest, stable, reliable and readable.. There is a great poet Bai Juyi in China. even illiteracy understands and appreciates his poetry. I hope that my code can be understood by the junior programmer even in the most complicated system.

For me, programming is the process of designing a data model that is simple and fluent in manipulation. More than 80% functions of my project is ->> threading macro code block, each step is simple, verifiable, replaceable, testable, pluggable, extensible, and easy to implement multithreading. The clojure threading macro provides language-level support for PurefunctionPipeline&Dataflow.

https://github.com/linpengcheng/PurefunctionPipelineDataflow
Only if you eat a modern diet. You can't blame our teeth for being ill prepared to handle coca cola.
Dreaming actually means you are not sleeping well...

In your case, you probably were under pressure. But if it continues, it might cause damage to your brain.
Damaging if true :/
Of course not. I’m in no way arguing against regulation, I have no idea how you concluded that. I’m saying that regulation always trails innovation.
I don't actually read his comment as dismissive or confident, but more surprised and curious. There's nothing wrong with questioning other people's statements when they don't marry up with your own opinions.
Method calls are messages. Same thing.

To better understand what Alan Kay is talking about it helps to know a specific fact about Smalltalk, the language he invented. Unlike in C++ or Java or JavaScript Smalltalk objects can not have public data-members. They can only have methods. Methods can read and write the "instance variables" inside the object, no-one else except the object itself can.

This means that objects can only communicate by calling methods. They can not read or write data stored into another object. Thus they are totally ignorant about the "implementation" stored inside other objects. They can "send it messages" meaning call its methods. But because all communications with an object are processed by the methods of that recipient object, the recipient object itself is wholly responsible for the MEANING and effect these method-calls have. "Message-passing" is an apt metaphor for such a thing.

This is "message passing" because it is the recipient object who must ALWAYS INTERPRET ALL messages it receives. Therefore method-calls have the semantics of "messages".

Whereas in Java and C++ and JavaScript the caller of an object can also directly modify other objects without the object being modified being "aware" it is being modified. The "meaning" of such modifications is then determined by whoever makes them. Say I store into your object the property "you.age = 253". But what does that mean what does that signify? Only the other object which stored that value "knows" why it did that, what it "means" what implications it should have for the later progress of the program.

So even though in Java etc. you can implement message-passing simply by calling methods, you can also do other things to the object from their outside than only send them "messages". An Object-Oriented language according to Alan Kay (according to me) then is one where the only way objects can communicate with other objects is by calling methods i.e. by message passing, never by modifying the objects directly from their outside.
I didn't mean to give the impression that you forget vanilla Vim, more that it becomes somewhat painful to use as you deal with the absence of what you've come to expect.

It doesn't really matter much whether you use tabs or spaces, or how many spaces a tab key (or tab character) represents, but having to swap between them multiple times a day gets... tiresome. There's a fluidity that comes with your tool behaving how you expect, and a time of acclimation when it changes. Whether the benefits of either keeping your config close to stock to reduce this acclimation period or highly customizing your personal Vim to be as efficient as possible is the better solution probably depends on the individual and the relative amount of time spent in each environment.

I'm not really urging one approach over the other, but rather noting that one should be cognizant of this, as it may allow for better decisions at different times. I, for one, found certain Vim customizations to be not worth the effort at one point when I was doing a lot of remote Sysadmin work, but worth investigating more when my time in Vim shifted more towards being used in one main instance.

As a simple example, if you spend 80%-90% of your time on remote servers, how useful is it to install Nerdtree on your main instance and spend the time configuring and learning how to use it well? Are the keys to Vim split windows and resizing better, or perhaps figuring out how to do that in screen/tmux is more effective a that time (can that be assumed to be on the servers?).

If nothing else, I think it helps explain why some people are so enamored of some Vim plugins, while others try them and consider them "meh".
That's a poor analogy. It's an understandable mistake to make if you're not familiar with emulator development, but (most) emulators do not rely on stolen source code or other stolen proprietary secrets. They reverse engineer these secrets instead, which is completely legal (and, imo, morally and ethically valid.)

I don't know what Stallman's view on video game emulators is, but I'd expect he'd be opposed to them, like how I'd expect he'd be opposed to the original game consoles because they enable the use of proprietary software, since almost all commercial video games are proprietary. However, Stallman is normally in favour of reverse engineering proprietary systems to allow interoperability with free systems, even when that runs the risk of enabling piracy: just see DeCSS/libdvdcss.
Maybe you can go ask these people being murdered on video for the world to see if they consent to the broadcast of their death.

Oh wait.

Your belief that you'd be ok with it or even find that a positive outcome means pretty much nothing unless you're one of the people on that video.
Do you have anything supporting that? My observation has been the kid loses interest somewhere between 1-2 years- the moms aren't cutting them off. Solid food is generally much more interesting.
From his talk on OOPSLA[1], I'd say that only Smalltalk and Common Lisp (through CLOS) were able to perform OO as Kay envisioned.

Erlang is another story: it would probably be better to call it just actor model. But again, Kay himself says[2] that there is not a lot of difference between actor model and his OOP.

[1] https://www.youtube.com/watch?v=oKg1hTOQXoY

[2] https://www.quora.com/What-is-the-difference-between-Alan-Ka...
Windows 10 Pro is only $200.00 if your time is worthless, is the flip side.
Typical. Fix the symptom instead of the cause.
> Over time the original designers and engineers leave, new staff join. Field experience shows that most of the safety problems that were anticipated in design never happen. The organisation starts to become complacent.

This lifecycle pattern can be found at other organizational scales, including countries, e.g. soldier -> law -> artist -> merchant -> warlord -> soldier ..
Can you elaborate on the difference please, I’m not sure I see it myself...
The EU is working on extending the TEN-T road and rail network to Moldova and Ukraine as part of its Eastern Partnerships initiative [1], and they'll connect with existing and new corridors in EU member states. This will benefit Romania's Moldavia region, where there were no TEN-T corridors in the previous update in 2013, but is the region that borders both the Republic of Moldova and Ukraine.

Suceava, where this 1-meter motorway was built, will likely find itself on a corridor between Bucharest and Lviv (UA) and on another from Cluj-Napoca to Iași and Chișinău (MD) and Odessa (UA). This will unlock EU funding bring upgraded roadways and railways to this region.

[1] https://ec.europa.eu/transport/themes/international/european...
I'll assume you're talking about systemd here? How is linux being strangled? How is it Europe's fault? As far as I can see linux is booming and almost ubiquitous as far as backend OS's go...
Plus he outright lies and then soaks up the attention it brings him: https://www.reddit.com/r/apple/comments/9pow06/louis_rossman...
I know that every Trump supporter I know gets a hell of a lot from Fox and Facebook. They tend to spout off talking points about how Liberals are bad and this is bad and that is bad, without solutions or actual, practical proposals on making the country better.

The status quo on healthcare is not an option. Deporting every "illegal" is not an option. Banning Muslims is not an option.

I don't think Trump supporters are un-American, but I think they've forgotten some American values if they continue to support Trump the man. His leadership is the antithesis of America. If you're conservative, that's one thing. To be a Trumpian is to have missed civics class.
I think you mean Object#send? I actually think that's misnamed, I think it should be named Object#receive because that's what happens - you're forcing an object to receive a symbol for (by default) dispatch through its method table.

The fact it isn't invoked for regular method invocation is kinda indicative of Ruby _not_ being a pure message passing language, even if we like treating it that way.
What is the evidence for this claim? It certainly may be true, but I’d like to see evidence.
Soundcloud also seems to have a bit rot problem. https://twitter.com/textfiles/status/1102668648630681600

P.S. https://archive.org/donate
And if you knew the whole story you would know that guy deserved to be executed (google it). Kind of an argument against releasing material like that: The public does not have the information nor the time to interpret it correctly.
I get that, but that makes it less a "Rust Cookbook" and more "here's some high-quality libraries that do common tasks".
Yep. But you don't have to pay to keep using Sketch, as long as you're ok with not upgrading. Unlike Adobe creative cloud that stops functioning the moment you don't pay.
Show HN: Find potential investors for biotherapeutics startups
There’s maybe a billion-dollar opportunity there: maybe someone could invent a hybrid screen that switches from (O)LED to e-ink mode under bright lighting conditions.
I cant believe this didnt get more traction.

I have been noticing a very painful decline in Google results with more content not labeled as ads but clearly placed due to a metric other than usefulness. I routinely find myself multiple pages deep in searches, which never used to happen.

Mark my words, this is purposeful on googles end, either directly through some kind of ordering affiliate or indirectly through some kind of seo partnership
Strava does a pretty good job of gamifying exercise (well cycling and running).
Yes, I in fact just installed it. They changed the text in the "search bar" present in the homescreen, which is a great improvement (it now says "filter rooms"). However this feature is only useful for really heavy users with tons of rooms, yet it's displayed front and center while the global search option which is fundamental for onboarding is still hidden.

The full redesign has been postponed because they are rewriting the whole program: https://github.com/vector-im/riotX-android
But this issue I'm complaining about is also present on the redesigned Riot Web.

Edit: sorry, I think I'm wrong. The current mobile version seems to already be the redesign though it looks mostly the same to me: https://medium.com/@RiotChat/riot-mobile-update-brand-new-ri...
I think it still needs a lot of work.
To keep things in perspective, California has a GDP per capita of $74,000. There are only two nations that can compare to that: Norway and Switzerland. It's nearly 100% higher than France, the UK and Japan.

Romania's GDP per capita is ~$10,700. They've made great strides in building up their economy in the past two decades. Their 21% GDP growth since 2007 is among the best in Europe. Per capita they rank above Mexico, Brazil, Turkey, China and will pass Russia this year or next.

California's problems aren't due to lack of income or economic output to tax, and it can afford a bit of drag on its economy from mediocre roads given the extraordinary output levels in question (which isn't to say CA shouldn't fix its terrible roads). California is a case of mismanagement of riches over decades, which isn't a position that Romania has (yet) found itself in.
I have a hard time verbalizing it but something about Uber creating all these millionaires sickens me.

In no order:

* The business is fundamentally based on ignoring the law.

* They've done nothing but lose money, more than any private company ever.

* The money keeping them afloat is very dirty (mostly from Saudi Arabia)

* The culture is well-known to be awful.

* The drivers are completely exploited, working long days with no security and taking huge financial and physical risk.

* Their headquarters is at one of the most awful corners in the city, which they've done nothing to improve.

And in the end they'll have to start making money. Which means either increasing their prices or increasing their cut. When that day comes we'll realize what we've lost.

But yet, all the people who signed up and coded the app will be millionaires.

Smells like society misallocating value.
Kind of interesting given that Alan Kay wanted to get rid of the notion of "data" completely. After all, what is data without the program to decode it? Maybe data and program are the same thing and separating them has caused us great pain in the last 30+ years;-)
I can understand why Romanians would be upset, feeling that they are "behind." Their roadways may feel crowded and unsafe, but if the roadways were improved that would just encourage much more traffic and congestion. And all the other attendant problems, like pollution, public debt burdens, private debt burdens, accidents, sprawl, atomization, and an ugly (sub)urban monoculture.

On the other hand, with enough vision and willpower their lack of roadways could be an opportunity to create a development model that is not so dependent upon car infrastructure. They could devise tax policies, zoning, and regulations that promote walkable communities. They could build out light rail, or Personal Rapid Transit (PRT) for intra-urban travel. And high speed rail for longer distances.

Cars aren't all they are cracked up to be. Don't just copy everyone else. Learn from their mistakes.
You put your finger on a key issue, which is consent. Many people were shown this film of a brutal mass murder with no warning due to autoplaying video on news or social media sites.
I don’t have much experience with cooking, but this sounds correct to me from what I know about thermodynamics. After all, air has much less thermal conductivity than glass, but if you stick a potato over an open flame you expect a spot on the potato to burn, rather than all the air to slowly heat up and heat the potato evenly.
I only use qbittorrent for years. Open source, free, crossplatform. There's not a single thing I miss about uTorrent.
Matrix isn't really hostile to competing server implementations. If it were, then they wouldn't have spent a long time and a lot of effort to finalize the Server-to-Server spec r0.1, which anyone can implement [1].

And just to add my personal anecdote, Matthew (CEO of New Vector, co-founder of Matrix.org) is present quite often in the Matrix HQ chat room, and willing to field questions from anyone. Perhaps with slightly less willingness when people start such accusations.

Also, to address some of the technical issues, I think what they're talking about as "The blocks have hashes but their implementation does not check the hash" in the DAG is being fixed with the next (v3) room version [2]. Again, this development is all being done in public: see e.g. https://github.com/matrix-org/matrix-doc/pull/1659 for the v3 room proposal.

[1]: https://matrix.org/blog/2019/02/04/matrix-at-fosdem-2019/
[2]: https://matrix.org/docs/spec/rooms/v3.html
Should You Have a Private VPN Server?
> FP and OO are overly complicated, and it is not feasible in large industries.

This is just an absurd statement on its face given how much of the internet runs on OO languages.
Yes, I changed my initial sentence slightly (you can see the difference in the quote of the original that vram22 included in their reply) to reflect my real intent is to call attention to the context many Vim articles and comments, and not necessarily this specific article. I didn't append an edit note as I often do (even though it was more than an hour after initially commenting) because I considered it a small clarification of my intent, but one was probably warranted. I'll consider your comment and this reply as that edit note now. :)
Show HN: Declarative JSON – JSON Converter
They monopolize a resource : big data
Performance-wise, yes.
OOP = Spaghetti code
Saved you the read
In the IBM antitrust case, IBM was forced to separate their OS and App businesses. Their OS business had to publish all of their APIs and was not allowed to communicate non-publicly with their App business. This was to prevent IBM from using their OS monopoly to gain an App monopoly.

Once you are a monopoly, you can expect such restrictions.

What Google is really good at is evading FTC regulation by staying within FCC jurisdiction. The FCC has historically been hand in hand with industry. The FTC has real teeth.
> This is a tongue in cheek but also piece of shit MIT propaganda piece mostly written by the clowns who created the abortions that were Multics and LISPMs.

Sure--the people who wrote systems with opposing philosophies to the "unix philosophy" are going to be the ones who write this book. And that they failed-in-the-market ("abortions") is already evident by the fact that HN is probably majority unix (mac) or unix-like (linux).

I confess I'm one of those people who has never used a lisp machine, and admires them greatly. I'd love to hear specific reasons I shouldn't admire them.
I do 99+% of my programming on my MacBook Pro's 13" screen. It's certainly possible to do, and I generally seem to prefer it to connecting to an external display.
It really deeply bothers me, I wish there was something I could do to help protect my rights from this sort of reactionary response. Does the ACLU still put up a fight in cases like this? They used to back in the day, but I'm not sure they would now...

EDIT: To make my view clear here, Facebook and others are free to remove the videos, I'd prefer if they age-gated and put a warning on them instead, but that's their choice. What I don't like is the way that that some police agencies have been suggesting that mere possession of the video is illegal.

The worst part here is that the attacker himself was suggesting that by hitting on ideas like free speech and the right to bear arms he'd be able to "accelerate" the deepening of political divides. I do not want to be put in a place where I'm forced to choose between fundamental rights and respect for entire races of people, but at this rate I fear that decision time may be approaching. Given time I hope cooler heads will prevail.
Boy are you guys sending me down memory lane. I remember all of these.
What Kay was getting at there is a bit difficult for me to follow, but I'm pretty sure that he meant something different than that. Something more specific and constrained.

What you're describing sounds to me like a very LISP-y view of data. Alan Kay, by his own admission, wasn't very versed in the LISP tradition - based on what he's describing, at the time he was pretty deeply immersed in the more ALGOL-y side of the world, back in a time long before there was much cross-pollination between the two camps, and that would presumably have influenced his thinking.

So, semi-wild conjecture: It seems to me like what he was really getting at is that he wanted to get rid of the heap. Or at least shove it deeply into "implementation detail" territory, the same way languages like Haskell try to banish any evidence of the existence of memory registers from the programmer's consciousness.

In so many languages in the imperative tradition, the standard practice was to have most your data living out there, in this giant pile of shared memory, more or less available for anyone to see. I think that, even before the birth of C, most academics recognized that as a source of liability; a lot of ink was spilled dancing around possible solutions to that problem in the mid-late 20th century and beyond. What Kay is saying in TFA seems, to me, to place his thinking clearly in the middle of that whole scene.
What dev board you use has no bearing on the firmware you can use for the ESP8266 and you can flash it for whatever firmware you want as long as there is enough flash memory, be it NodeMCU (Lua), Arduino, etc (they're all built on top of the native Espressif frameworks, regardless). All non-trivial firmware on the ESP8266 requires binary blobs from Espressif to run, however.
Thanks for sharing. Just bought one :)
I can send a "what time is it?" message to an object even if that object has no idea what that message means.

I can not call a method that isn't there.
And:

> Your sense of the possible is in no sense pure: sometimes you want the same thing you have, but wish you had done it yourselves; other times you want something different, but can't seem to get people to use it; sometimes one wonders why you just don't shut up and tell people to buy a PC with Windows or a Mac. No Gulag or lice, just a future whose intellectual tone and interaction style is set by Sonic the Hedgehog.
More tips:

If you inoremap jk to ^[ (esc), and kj to ^[ as well, you can just roll jk or kj keys to escape back to command mode. No more reaching for the esc key.