skysight-inc/HackerNews huggingface dataset:
You can easily incorporate the most widely used vim commands and shortcuts (including window splitting) in IntelliJ/PyCharm by installing their vim plugin.

You are then left with choosing between the comfort of using the subset of vim that isn't available through the plugin, and the comfort of using all the IDE features that aren't available in vim. I believe that for most people the latter will be far more productive.
In your opinion, what are the critical problems that exist in today's software projects?
I don't think there is any issue with Vim itself, and can't see why any place would disallow it. I still use vim on remote servers, and am quite happy with it. Being proficient with vim helps you do things faster for sure. The issue I was raising was to get functionality even comparable to jetbrains products, you need to install a good amount of vim plugins, and then you either audit them constantly, or place a lot of trust in the maintainers. You don't need any of that with jetbrains.

Please find an example here:

https://news.ycombinator.com/item?id=14857944
> how much effort people spend on learning IDE menus

I thought the point of a menu was you didn't have to learn much at all.
That is not a study. That is a case report written as a letter to the editor. That meets no scientific rigor at all and no generalizable conclusions can be drawn from it, it provides an anecdote for further research. It also doesn’t suggest that sniff tests would fare better compared to any other screening system for melanoma.
I was a long time YCM user but it seemed to slow down my editor, then I switched to ALE and it was much better. I'm curious to see what improvements CoC brings to the table. From the screencast it looks like it can automatically add import statements to TypeScript projects which would be a huge productivity boost for me!
http://time.com/3836834/may-day-labor-history/
Show HN: Emissary – a Slack bot for running and scheduling shell commands
I don't know, I think 9 to 6 has been becoming more of the norm here as well. All the places I have worked so far (maybe I've been unlucky) have expected more of a 9 to 6 (give or take an hour shift in either direction) than a 9 to 5 cadence.

Also, I don't know many people who work a strict 9 to 5 in office jobs, many take work home with them or are expected to always be available even on weekends should something come up. Not saying this is good, but I don't think strict 9-5 is the norm anymore.
That is true. I didn't realize it was six years old
Lack of discoverability makes for worse code, if anything. Constantly switching back and forth between documentation and the editor is a big hindrance to getting things done.
Of course, celestial navigation doesn't work in the daytime. It also seem weird to write an article aimed at readers who have never heard of it, but not mention the existence of terrain contour matching, which is widely used on cruise missiles and works any time of day.

https://en.m.wikipedia.org/wiki/TERCOM
Are there employers that never require employees to work more than 40 hour weeks? Ever? Even "implicitly"? Even if at 5:58 PM the elevator breaks and you can't leave until 6:01 PM? At the risk of losing what you say is a really important library forever? It seems too risky.

And even if there is one employer that is willing to make that guarantee, what library is important enough that it must be used and cannot be reimplemented, even given the combined resources of every employer not willing to make that guarantee?

If a lone developer wants to write software, great, but again it's not an open source license and they should have no expectation of others contributing to it, the way they would for open source. There's been lots of freeware / shareware in the world. It's mostly been out-competed by actual open source.
Yep. I named my company ‘metaobject’ after The Art of Metaobject Protocol. 20 years ago.

Metaprogramming is powerful. Can we make it more practical so we can reduce or eliminate the chasm Cees writes about?
You are the second comment here stating this specifically about Jordan Peterson. Weirdly enough, I had that same experience. I saw one video, didn't like it and yet YT keeps recommending this and that video of him or more right-wing people DESTROYING someone. It's frustrating to say the least, not only because I don't want to see it but because I showed a video once when giving a talk, and after it had finished, all those garbage recommendations showed up for everyone to see, making it look like I am secretly some lunatic.
And not every design is to the benefit of the consumer's it's targeted at - surely we should voice those concerns.
Elon Musk Hyperloop Dreams Slam into Cold Hard Reality
Has anyone tried to build conversation into RSS? An RSS item that is related or responsive to another RSS item?

(Or is that what Mastodon is trying to do?)
Condos similar to my apartment cost about 2x as much monthly, after 20% down.
Openness on its own is not a significant competitive advantage. Twitter provides comments, retweets, and already has friends and celebrities.

RSS is still there on the publishing side for major publishers and all popular blog platforms. So why is it not as popular as email? Maybe individually visiting websites is good enough and maybe that itch is scratched by Twitter.
I use autocompletion because it helps me get things done faster, not because it helps me get things done that I couldn't do without it.
Easily solved by adding another digit after the year. That leaves the edge case of Japan having more than 10 emperors in a year, but thats unlikely.
Move fast break things doesn't work so well with medicine though. I heard vets are much more high tech because they wont get sued, probably true.
No repo, this is part of Unity.
People ignore this fact: if you're terminal-based, you OS independent. You can work out of ssh. Really handy-dandy sometimes. Depends on your role, of course.
Whenever I read a technical overview like this, I like to see references to existing literature. This report doesn't do this, see for example https://link.springer.com/chapter/10.1007/11541868_7 which is basically the same thing but in Coq.
Is there any legal precedent for considering ota update pushes as admission of guilt
You’re welcome! And thanks :)
It's there more or less all the time in the background. Every 2-3 years you'll see a resurgence in "Why I vim" posts. It's also part of the shell world. Usually it's tied to new waves of tooling...

* A new language or paradigm comes out

* Clicky tool makers (IDE, management software, etc) can't really keep up with the rapid change, and they aren't sure if this will catch on, so they don't make great tools for it. People have to use the cli tools to take advantage of all the features.

* Since folks are already in the shell, they want to make their environment better, so new folks are introduced to shell stack, and new customization options for tmux or shell or vim come out.

* Eventually if the thing catches on Clicky tool makers catch up and the shell scene quiets down a bit - people abandon shell stack for clicky tools if that's their preference, and the new shell converts integrate with the broader "shell folks community". (That community is always there, just quietly using the relatively stable interfaces in the background).

* At some point a new language or paradigm comes out...
I'm not so sure about this. Remote is great for task-based work. But certain companies like Amazon seem to have a "cult"-like culture that keeps everyone focused and on the same page. And Google provides on-site services to increase productivity and time spent on campus. Being a remote worker, I feel more detached from the company "vision" and more like a mercenary who likes to get things done and then go about my life.
I recently had a need for a slack bot that could dynamically select which user to notify each week based on a schedule. /remind would have been perfect for this if it let me do some computation to figure out who to @ in its notification message, so I decided to build that.

The bot currently has 2 slash commands, /sh [`command`] runs the command immediately and returns the output to you, and /notify [@user or #channel] [`command`] [cron expression] will run the command on the cron schedule and notify the user or channel of the output of that command.

At the moment it's running on a single t3.small EC2 instance with a t3.micro RDS database. Cron triggers are stored in the DB, which would allow me to add more worker nodes to distribute the load in future, if there is enough demand.

Each command runs as a non-root user in its own container under docker, on top of Google's gVisor kernel (https://github.com/google/gvisor). I've also limited the containers in their resource usage and mounted a read-only root FS (there's also a writeable tmpfs mounted at /data). Each command can run for a maximum of 5 seconds before it is automatically killed.

I'd love to hear your thoughts!
The US has one third the population of China, and has been bringing up ~100GW of natural gas power plants/year over the past ten years. Which produce as much CO2 as 50 GW of coal power.

Today, the US has has ~1300GW of coal, and ~1400GW of natural gas. China has ~1000GW of coal, and 700GW of natural gas.

We are, quite literally, the pot pointing fingers at a kettle.
Language servers are very exciting for me. This past summer I finally installed ALE [0] and it drastically improved my experience and code quality in JS. The live in-editor linting with eslint and formatting with prettier is awesome (and these aren’t even language servers, ALE just uses them as “fixers” and “linters”). So many people denigrade these things as “crutches” for bad programming languages or underdeveloped skills, but I don’t know how you can beat getting live feedback as you type. We are mere mortals! If you don’t have something like ALE installed and you use Vim, you won’t regret the time spent getting it up and running.

[0] https://github.com/w0rp/ale
Boots on the ground could use laser communications to satcom for coordinate corrections, bypassing the locale drift, or better yet, retransmitting over the spoofed signal with higher strength.
Multi-Platform Arcade Game Designer
I actually used it considerably for my news site bookmarks on my bookmarks bar. It was great for just catching up on the day’s headline. It’s a feature I sorely miss.
Osslib-android – license screens for your Android Apps
I'm skeptical for the simple reason that this post never calls out any specific feature of Lisp or Smalltalk which could cause this problem, and other languages which apparently don't suffer from these problems have most of the same features. It's almost as if unpopularity is the root cause.

Guy Steele famously said that with Java they "managed to drag a lot of [C++ programmers] about halfway to Lisp". I don't hear many complaints about Java being too 'organic' or difficult to document or that it only works on 2-pizza teams.

If you think that sufficiently powerful languages only work on small teams of dedicated people, why draw the line at Lisp/Smalltalk? Why aren't the Ada people going crazy about how loose and dynamic Java is, much less Python and Ruby -- all of which apparently "breeze through the 100, 200, 500 developer marks without much trouble"?

I remember reading about how Codd's relational databases struggled with acceptance because it was believed at the time that 'tables' were too complex for the average programmer, yet today that idea is laughable. People tend to rise to the level of expectation.
Yep, Linus has been quite vocal about his distaste for GitHub pull requests.

https://github.com/torvalds/linux/pull/17#issuecomment-56546...
"I'm honestly confused at how much effort people spend on .vimrc and .emacs files to get poor versions of narrow slices of functionality that comes out of the box with the most basic of IDEs."

I think that it's the other way around: people don't want to lose the editing experience that they already have by switching to another environment that might have some other benefits. For some people, that means an environment that they've tuned to their own requirements over years, and for others, it's just the core interaction model.

For me, I like modal editing, and the Vim commands are now automatic, but I have no attachment to any implementation of these, so I use the stock Vim on CLI, and VS Code with the Vim extension everywhere else to get modern features without losing the aspects of Vim that I really care about.
I checked the Chromium source and for Linux they explicitly mention not being allowed to send it externally[0]; they hash it via SHA1, encode it as base64, and use that value.

Interestingly for Windows they pull the machine id from the registry[1] and (at first glance) it doesn't seem like they're doing any hashing. The raw value gets used.

Haven't checked if the value gets sent externally but based upon the comment on the Linux code I'd bet it's a yes.

[0]: https://github.com/chromium/chromium/blob/aae20fb7d3616de40e...

[1]: https://github.com/chromium/chromium/blob/01a03aab2d89c93c15...
That's not how it actually works though. You've got what, half a dozen or more top level menus, with many submenus under those, and maybe even a third layer beneath that. And then you've got even more menus in the various subwindows anything in one of those menus might launch. Menus which again may have submenus.

And the worst part is you can't even run a text search on those menus!
That sounds odd to me - more than one stone frigate in the RCN has been paid off in living memory, more than one during the unification process (which is within my memory). Yes, it's a bit of a ceremony, and necessarily a kerfuffle, but there is no reason why the protocol should have been a mystery.
How often are you limited to out-of-the-box configurations? I've configured vim to my liking once, uploaded my dotfiles, and now I can have the same config everywhere. There's no need to repeat yourself.

Not to mention the productivity increase from having a blazing fast editor that just gets out of the way. Even on my beefy laptop, intellij products feel clunky and slow
/etc/machine-id reading was implemented in service of the Chromium "Enterprise" component:

https://bugs.chromium.org/p/chromium/issues/detail?id=812641

Comment 26 implements Linux support for reading the machine's unique identifier:

https://chromium.googlesource.com/chromium/src.git/+/15dc90a...

That patch is Linux-only support in service of the greater patch:

https://chromium.googlesource.com/chromium/src.git/+/81a7040...

And having read several rounds of "Device enrollment" phrases now, while the design document is non-public, I would hazard a guess that this is the essential components of enterprise device management.

Google hashes the ID before making use of it, so the actual ID remains disguised, but this absolutely would be necessary if they were trying to implement ChromeOS enterprise device management. (You need a unique identifier per enterprise machine, etc.)

Presumably they only care about this id file with respect to enterprise ChromeOS installations, since they make no effort at all to locate the file in any other location than the one.

It looks more like they simply don't care about reading the file in non-enterprise circumstances, since either the machine is enterprise-managed or it isn't, and as they only transmit hashes of the ID rather than the ID itself, they're in compliance with the FreeDesktop guidelines that require this file to be present:

https://www.freedesktop.org/software/systemd/man/machine-id....
Gizmodo:

1 page of blocked items on my NoScript
23 blocked items on my Adblock Plus

And now I can read the article..
If I'm in an area with good connectivity I can easily last two days with my OnePlus. On the move, though, or in bad signal areas, and 20 hours might be the limit.
I would love to have examples of good working conditions being arrived at naturally. Given that there are many programmers of various talent levels throughout the industry I have noted a number of dark patterns in programming work: long hours, pay that refuses to follow value of work (Apple makes 400k profit per employee), reduction in workspace quality, etc.

We can all pretend that we have more economic power than our highly paid blue collar peers that worked in highly unionized work forces in the past, but the programmers that make the kind of money for that to be true are very rare. Nearly 30 years ago my father made 70k as a union welder. It is highly unlikely that I will be able to match that salary street inflation, and the world is more expensive: education and health care could eat us alive at any moment.

I don't know how much of our effort the capital owning class needs to strip from us before we take advantage of the massive productive capacities we have before we make it fair again, but I assure you, it will be organized, not natural.
Your words, my words. I highly recommend people read [1] where Linus explains why he thinks kernel debuggers are basically unnecessary. I think many of his arguments apply here as well.

[1] http://lwn.net/2000/0914/a/lt-debugger.php3
It's true that it can be a lot of effort. But it is amortized over time. I personally don't tell anybody to run out and install tmux + vim — they'd either spend countless hours configuring it, or they'd grab an out-of-the-box config from somebody else and not really understand it, or they'd limp along with a basic and not-very-optimized config — but it's a valid path for those who really want to take it. For those who don't, installing VSCode and getting up and running quickly is a totally rational and defensible choice.
I don't understand your objection. It's standard practice to include notes like this in directions for hardware disassembly.

For example, take a look at the ThinkPad Yoga 460 Hardware Maintenance Manual:

https://download.lenovo.com/pccbbs/mobiles_pdf/p40_yoga14_mt...

Go to "1020 Base cover assembly" on page 71 (page number at the bottom of the page, not the PDF page number). Note how it instructs you to remove the three caps (feet) to reveal those screws.
What part of the Open Source Definition https://opensource.org/osd-annotated do SQLite's redistribution terms violate?

Why is it the case that projects that embed SQLite cannot be open source in the OSI sense? (I don't think this is true.)
Maybe you don't suffer from this, but these suggestions don't work.

Why? There is a sharp divide between "interacting with the internet" and "not." There is no one site (or set of sites) to block that can help. If I visit SO I now am one step away from an effectively infinite number of interesting things.

The key behavioral difference is removing the need to interact with the general net.

Burnout and tiredness are also not root causes in this situation they are a symptom of repeated failure to accomplish a goal. Pomodoro doesn't help much there.
Autocompletions are not limited to IDEs these days. With the advent of editor-agnostic language servers, I have high quality autocomplete in vim, with the bonus of not having to use a slow and clunky IDE.
Modern Monetary Theory
> Villages across Italy are selling abandoned properties for 1 euro or less, provided that owners take care of the renovations.

These renovations are typically more expensive than tearing down the house and building a new one, but that is forbidden, because there is probably some kind of regulation and "historical value". So saying that these are low prices is super misleading
Moving Forward After a Code Spike
Ideally you work in reverse and only need to grant access to things to which you want to allow access. Start from zero and let an application provide a manifest of what it wants to access. Ex:

* Open outbound TCP sockets
* Read from $HOME/.config/chromium
* Read from /etc/machine-id

It's not a new concept at all and there are multiple approaches for implementing things like this. Getting mass market adoption is sadly next to impossible.
I've attended 2 of Tufte's sessions. Highly recommend. The key take-away for me is "every pixel counts".

The caveat is that Tufte principles are rooted in a 2D print domain, so applying his ideas to interactive or 3D domains requires some discipline.

Sparklines in Google Sheets are a classic example of applying Tufte designs to the web.

https://www.benlcollins.com/spreadsheets/sparklines-in-googl...
Yes, I would welcome a collective foreign effort with open arms. I also think there are other and better ways to save the Chinese people (and the rest of the world from their government) besides invading the country.
Your comment didn't educate HN readers sufficiently; I thought it could use a technical backgrounder which could help others imagine the use cases and trade-offs. (I don't understand the Twitter architecture enough to add that for comparison, but perhaps many readers are more familiar with Twitter than RSS due to its popularity.)
Is it taught, or does it "grow in?" Toddlers don't get empathy training.
RSS is fine and good, but it's not comparable to Twitter. Maybe if all you do on Twitter is follow newspapers then it's comparable, but that would be a pretty dumb way to use Twitter.
Sure, I wasn't trying to imply anything about people who, for one reason or another, had difficulty with or could not do it, I was just expressing surprise that this might be a much larger subset of people than I had previously thought.
I think part of the issue with RSS is the real pain of dealing with XML. I'm mildly cheering for something like https://jsonfeed.org - which would be a big step towards making a decentralized system more of a reality.
Might be using the wrong wireless charger, I've heard this complaint and its all it could be.

If it isn't what your really telling us is you couldn't learn how to place a phone on a small surface.
Is this physical safety margin a substantially different problem than human-operated machinery, though? You don't want to get too close to a live forklift, either.
The good old days? In many ways, yes
> Why will the government avoid to use repressive measures against this?

This is how the labor law been structured in China. In many cases you need to file the case by yourself in order to get it investigated.

> So technically, the license isn't needed.

> If you can't get the law enforced, how will you be able to enforce the license

I don't think you've understood the situation. In China, we play it safe.

You can get administration involved, but you will likely need to file the case by yourself, which may cause you to get fired. Now, if a third-party can help you by putting some pressure on your company, then both of you will be safe.

The license adds another reason to convince your boss to not implement 996.
Why? There's a few high quality package managers already. Creating yet another one is not a great idea. vim-plug is what I use and it works perfectly fine.

For a more complete vim experience out of the box, check out spacevim.
I’m not sure I buy this: I recently had to write a bit of ruby (an omniauth strategy for my company’s OAuth2 server) and the code I encountered there (as well as in the various rails projects I’ve worked on) may as well have been written in macro-heavy lisp: in fact, lisp or smalltalk would be preferable because they would have good source navigation tools for the macros, such as a stepping macro-expander.
I identify as self-hating bourgeoisie.
I cringe when I see these kind of comments because for the heavy vim users it becomes clear the OP simply doesn’t get vim.

The uninitiated always stumble around with vim like bumbling bafoons wondering why anyone would use something so antiquated, but in the right hands vim becomes an elegant weapon for coding at the speed of thought.

A pity that for want of a GUI, most will never feel the power.
When police kill, what seems obvious on video rarely leads to convictions