131 private links
Eternal Terminal (ET) is a remote shell that automatically reconnects without interrupting the session. Learn how to install and use it here.
ET was heavily inspired by several other projects:
- ssh: Ssh is a great remote terminal program, and in fact ET uses ssh to initialize the connection. The big difference between ET and ssh is that an ET session can survive network outages and IP roaming. With ssh, one must kill the ssh session and reconnect after a network outage.
- autossh: Autossh is a utility that automatically restarts an ssh session when it detects a reconnect. It's a more advanced version of doing "while true; ssh myhost.com". Although autossh will automatically reconnect, it will start a new session each time. This means, if we use tmux with control mode, we must wait for the ssh connection to die and then re-attach. ET saves valuable time by maintaining your tmux session even when the TCP connection dies and resuming quickly.
- mosh: Mosh is a popular alternative to ET. While mosh provides the same core funtionality as ET, it does not support native scrolling nor tmux control mode (tmux -CC).
I’ve used MATLAB for over 25 years. (And before that, I even used MATRIXx, a late, unlamented attempt at a spinoff, or maybe a ripoff.) It’s not the first language I learned to program in, but it’s the one that I came of age with mathematically. Knowing MATLAB has been very good to my career.
However, it’s impossible to ignore the rise of Python in scientific computing. MathWorks must feel the same way: not only did they add the ability to call Python directly from within MATLAB, but they’ve adopted borrowed some of its language features, such as more aggressive broadcasting for operands of binary operators.
Hi and welcome to User Inyerface, a challenging exploration of user interactions and design patterns.
To play the game, simply fill in the form as fast and accurate as possible.
A frustrating and unpleasant UI-UX experience.
The non-repetitive alternative to YAML...
Dhall is programmable, but NOT Turing-complete.
Dhall supports comments, multi-line string literals and string interpolation with non-technical users in mind.
Natural language processing algorithms applied to three million materials science abstracts uncover relationships between words, material compositions and properties, and predict potential new thermoelectric materials.
The overwhelming majority of scientific knowledge is published as text, which is difficult to analyse by either traditional statistical analysis or modern machine learning methods. By contrast, the main source of machine-interpretable data for the materials research community has come from structured property databases, which encompass only a small fraction of the knowledge present in the research literature. Beyond property values, publications contain valuable knowledge regarding the connections and relationships between data items as interpreted by the authors. To improve the identification and use of this knowledge, several studies have focused on the retrieval of information from scientific literature using supervised natural language processing, which requires large hand-labelled datasets for training. Here we show that materials science knowledge present in the published literature can be efficiently encoded as information-dense word embeddings (vector representations of words) without human labelling or supervision. Without any explicit insertion of chemical knowledge, these embeddings capture complex materials science concepts such as the underlying structure of the periodic table and structure–property relationships in materials. Furthermore, we demonstrate that an unsupervised method can recommend materials for functional applications several years before their discovery. This suggests that latent knowledge regarding future discoveries is to a large extent embedded in past publications. Our findings highlight the possibility of extracting knowledge and relationships from the massive body of scientific literature in a collective manner, and point towards a generalized approach to the mining of scientific literature.
Today I want to talk about fzf and ripgrep, two tools I use all the time when working in Vim and the terminal. They have become an absolutely vital part of my workflow. Ever since I started using them I can’t imagine myself functioning without them anymore.
I have a saying that summarizes my opinion of Rust compared to Go: “Go is the result of C programmers designing a new programming language, and Rust is the result of C++ programmers designing a new programming language”. This isn’t just a metaphor - Go was designed by plan9 alumni, an operating system written in C and the source of inspiration for many of Go’s features, and Rust was designed by the folks at Mozilla - whose flagship product is one of the largest C++ codebases in the world.
This is a long-term project to decode all of the GNU coreutils in version 8.3.
This resource is for novice programmers exploring the design of command-line utilities. It is best used as an accompaniment providing useful background while reading the source code of the utility you may be interested in. This is not a user guide -- Please see applicable man pages for instructions on using these utilities.
Over the past 25 years, email has weaved itself into the daily fabric of life. Our inboxes contain everything from very personal letters, to work correspondence, to unsolicited inbound sales pitches. In many ways, they are an extension of our homes: private places where we are free to deal with what life throws at us in whatever way we see fit. Have an inbox zero policy? That’s up to you. Let your inbox build into the thousands and only deal with what you can stay on top of? That’s your business too.
It is disappointing then that one of the most hyped new email clients, Superhuman, has decided to embed hidden tracking pixels inside of the emails its customers send out. Superhuman calls this feature “Read Receipts” and turns it on by default for its customers, without the consent of its recipients. You’ve heard the term “Read Receipts” before, so you have most likely been conditioned to believe it’s a simple “Read/Unread” status that people can opt out of. With Superhuman, it is not.
Tired of kubernetes tools that don't prioritize user experience?
Sanic allows you to define commands and configuration on a per-environment basis with ease.
Sanic uses Buildkit, cutting edge technology which builds your images concurrently and efficiently.
Sanic allows you to define deployments using a templating language your team already understands.
Refined Evernote desktop app
Working on the command line is a quick alternative to clicking through filesystem management tasks. Here are some basics to get you started.
BibJSON is a convention for representing bibliographic metadata in JSON; it makes it easy to share and use bibliographic metadata online.
It is a form of JSON - a simple, useful and common way of representing data on the web; we use it to shift information around between our apps.
- A BibJSON record is a JSON object
- A BibJSON collection is a JSON object containing "metadata" followed by "records"
- The "records" key in a collection points to a list of BibJSON records (JSON objects)
- The collection and the records both have the "collection" key, and their value should be the same
- Each record should have a "cid" - an identifier unique within the parent collection
- Each record should have a "type" - such as "article", "book", or even "author"
- Record type places no constraint on what can be placed in the record
- The default set of keys are based on the bibtex keys
- BibJSON keys are lowercase, no spaces, and usually singular
- The keys can point to strings, lists, or objects
- Any thing that is a simple string should remain so
- Where object complexity is required, make it an object
- Where additional keys are namespaced, include a "namespace" declaration in the collection "metadata"
- BibJSON APIs may return other metadata relevant to the parent app; developers can identify such metadata by prefixing the key with "_"; just ignore what is not useful to you
System Tar and Restore is a versatile system backup script for Linux systems, that comes with two bash scripts, star.sh and a GUI wrapper star-gui.sh, which perform in three modes: backup, restore and transfer.
Awk is a very nice language with a very strange name. In this first article of a three-part series, Daniel Robbins will quickly get your awk programming skills up to speed. As the series progresses, more advanced topics will be covered, culminating with an advanced real-world awk application demo.
I noticed most people focusing on making more complex ledgers capable of executing "smart" contracts and/or crypto-magically obscuring transaction details and such. And I think those projects are pretty cool, but I'd always wanted to attempt to do the opposite and implement the simplest decentralized ledger I possibly could given lessons learned from bitcoin. I think that's what cruzbit is. Anything that I thought wasn't strictly necessary in bitcoin, or was otherwise weird, I got rid of. I wanted the design to be conceptually simple and extremely developer-friendly. I finally had some personal time on my hands so I decided, why not.
And now cruzbit exists.
Snap! is a broadly inviting programming language for kids and adults that’s also a platform for serious study of computer science.
Snap! is now a community website where you can share and publish projects so others can find and remix them, and where you can ask questions and discuss the beauty and joy of computing. We invite you to check out the new site. Did you know that you can embed Snap! projects in other web pages?
We've also enhanced the programming language, making it easier to discover and to use powerful blocks for analyzing data and transforming media.
Completely block Google and its services. Contribute to nickspaargaren/pihole-google development by creating an account on GitHub.
The lazier way to manage everything docker. Contribute to jesseduffield/lazydocker development by creating an account on GitHub.
On June 29, 2019, the FreeDOS Project turns 25 years old. That's a major milestone for any open-source software project! In honor of this anniversary, Jim Hall shares this look at how FreeDOS got started and describes its Linux roots.