At the end of the day, a text editor is just a preference, just like mechanical keyboards, vim bindings, window managers and what have you. — On Emacs
If you want to build truly performant software, you need to at least keep performance in mind as you make early design and architectural decisions, lest you paint yourself into awkward corners later on. — Reflections on software performance
2020-06-02: Apparently, latency in terminal emulator is still a thing in 2020.
2020-06-02: I’m all for Iosevka these days (I do not want to buy Pragmata), but Victor Mono is such amazing piece of artwork.
2020-06-02: Lovely: Calendar busy colors according to agenda. Check out other experiments at tweaking Emacs UI by Nicolas Rougier, e.g. this large fringe or this basic config for an “Elegant Emacs”.
2020-06-02: 3mux: Terminal multiplexer inspired by i3 (via Brett Terpstra). The ability to switch between different layouts for current panes (e.g., tall or wide, in i3 parlance) is the only thing that I really miss in iTerm2.
2020-06-02: How to Live Well on the Linux Console. Or start Emacs with an Eshell buffer and you’re (almost) done.
2020-06-02: Simplified Common Lisp Reference.
2020-06-02: M-x doom tip of the day:
evil-jump-item) is a nice replacement for
I saved a personal, private backup of everything I’ve posted – 3,794 posts, not including this one – and then deleted it all except the first post.
First, the why: the internet never forgets, but that’s not how people work. “I like to remember things my own way. How I remembered them, not necessarily the way they happened.” The person who posted entries here ten years ago is a different person than me, and I see no reason for that older person to stay around*. — the end of livejournal, by Evan Martin
We’re the Electronic Frontier Foundation, an independent non-profit working to protect online privacy for nearly thirty years. This is Surveillance Self-Defense : our expert guide to protecting you and your friends from online spying. — https://ssd.eff.org/en
2020-06-03: Running Awk in parallel to process 256M records.
2020-06-06: TIL that you can customize your R prompt much like you do with your preferred shell. See also Customising your Rprofile.
2020-06-06: What the hell is a Deno?
Most developers are primarily engaged in making systems that acquire, extract, transform, maintain, analyze, transmit and render information—facts about the world. Most often, this information documents some human activity, be that of customers, suppliers, advertisers, travelers, voters, members, students, patients etc and must deal with all the irregularity thereof. This is in stark contrast to artificial systems, e.g., programming language compilers, which make up their own rules, in fully enumerated spaces, can eliminate irregularity and can reject anything which does not conform. — A history of Clojure
2020-06-08: A List of Hacker News’s Undocumented Features and Behaviors.
2020-06-08: Battlestar Galactica S4 finished. We just started watching Westworld 3.
2020-06-08: Two quick links for Shiny users: Outstanding User Interfaces with Shiny, Effectively Deploying and Scaling Shiny Apps with ShinyProxy, Traefik and Docker Swarm.
2020-06-08: Die analysis of the 8087 math coprocessor’s fast bit shifter.
2020-06-08: ggnuplot is a ggplot2 theme that makes your ggplots look like gnuplots.
2020-06-10: Demystifying text editor keystrokes. (via Irreal)
2020-06-10: Emacs as Email Client - Part I. Note taking as plain text attachments and reduced distraction mode are two of the most valuable features of mu4e, IMHO.
Everyone is constantly online, and the need for statuses has seemingly disappeared. But has it really? Toggling between online and offline may not be all that useful anymore, but along with that we lost a way to specify whether we want to talk or not. At best you’ll get a green dot meaning only “they’re looking at the screen right now”, or a note saying “last seen 10 minutes ago” – which could just mean that they woke up, checked the screen and went back to sleep. Combine that with the absurd amount of competing platforms, and your best bet at “hey everyone, I need to talk” is messaging every single person on every single platform and hoping that they respond. — I miss being online
Signal is pushing the envelope when it comes to forgetting information about its users. And as far as my technical knowledge goes I choose to trust Signal that they are doing whatever they can to stay the most private and secure messenger out there. — Signal - the secure messenger
Worse, it turns out that nobody else found all this stuff to be fascinating. Even though GPG has been around for almost 20 years, there are only ~50,000 keys in the “strong set,” and less than 4 million keys have ever been published to the SKS keyserver pool ever. By today’s standards, that’s a shockingly small user base for a month of activity, much less 20 years. — GPG And Me
2020-06-15: How to log your activities on Emacs.
2020-06-15: I’ve spent one hour this morning to build this little snippet in R. I’m so used to base R that using dplyr/tidyr stuff is painful at time, although chaining operations like this makes the workflow of data management so much more readable for other people.
2020-06-15: DBCore: Generate applications powered by your database.
2020-06-15: HOPL 4 is out. Lot of interesting articles on the hsitory of (many) programming languages, including an article by John Chambers on S, R, and data science.
2020-06-15: Random Numbers in Common Lisp.
2020-06-15: Teddy: A data framework for Common Lisp, wanna be like Pandas for Python.
2020-06-15: electricShine to boost your Shiny app.
Conversational software development is a term I’m half heartedly trying to coin to describe a way to develop your program with an incredibly short feedback loop. It aligns closely with hot module reloading for React based frontend applications but with a much tighter focus and an extra dimension that you may not have seen before. — Conversational software development
It’s amazing how great computer products can be when they don’t need to deal with corporate bullshit, don’t have to promote a brand or to sell its users. Frankly, I almost ceased to believe it’s still possible. But it is. — Computers as I used to love them
2020-06-18: The new design for Github is quite good actually.
2020-06-18: A Future History of Arming Bears.
2020-06-19: Deno is quite interesting. I ran some of the suggested examples and I just realized that the
run/install stuff makes distributing packages very smooth, as noted by Will Schenk.
2020-06-19: TIL about flycheck-grammalecte.
2020-06-19: Book Image Shortcode for Hugo.
I estimated that I had used my mac for approximately 10 hours a day, 5 days a week, 48 weeks a year, for 7 years straight, for a total for whopping 16800 hours. I have written the first versions of most of the software components of my startup using this computer. And all this time, this machine worked without a hiccup. It was never repaired, and I never opened the back cover. — Cleaning My MacBook After 16800 Hours of Use!
In functional programming, fold is a standard operator that encapsulates a simple pattern of recursion for processing lists. — A tutorial on the universality and expressiveness of fold
2020-06-22: Duh, Github is down, how funny if we were to completely loose access to it….
2020-06-22: I also reinstall VS Code, with VIM keybindings. This is only for Python because Emacs Python LSP sucks, but that’s okay! Anaconda sucks too, and that’s not okay. Are there any convenient way to install a Python package or environment outside macOS?!
2020-06-22: Recent headlines: My son and I are done with Battlestar Galactica, and back to Black List S5. I’m also done with the Handmaid’s Tale.
2020-06-22: Compiler and Runtime Support for Continuation Marks (PDF).
2020-06-22: Light is right, alright?. I switched back to a light theme too, since my eyes now seem okay with that. There’s no alabaster theme for Emacs, so I made my own. Lovely.
2020-06-22: This is a motherfucking website. And it’s fucking perfect.
Asynchronous written communication is the tool best suited for remote work. We are so used to talking to each other in the office, expecting immediate responses in work chat, and having meetings all day, that we tried to replicate that at home with zoom and slack. — Written communication is remote work super power
2020-06-23: TIL about keyfreq. This reminded me of the wonderful artwork done by Seth Brown (“Vim Croquet”, see here), back in the days where https://www.drbunsen.org was still alive.
2020-06-23: Tail-call Optimization, using Python.
I try to make sure I largely spend the time on things I enjoy, but it gets more complicated once you start selling work. Processing and shipping orders takes quite a bit of time. And it isn’t exactly my favorite activity. Obviously I enjoy the fact that people are willing to buy my work. But I can’t say I enjoy handling the paperwork, and dealing with packaging and shipping. — Making money
Maintaining servers falls into two phases: (1) Bang head until server works; (2) Capture effort into some automation tool like Puppet or Chef. — Literate DevOps
2020-06-26: A new Org mode? Foam is a personal knowledge management and sharing system inspired by Roam Research, built on Visual Studio Code and GitHub.
2020-06-26: Didn’t know we could organize Org journal (
file+datetree) using weekly subtrees.> I prefer a weekly format in my journal over a monthly format. In fact, the week is a “productivity unit” which always made sense to me, and this mindset integrates beautifully into Org-mode. — My Org Capture Templates
2020-06-26: A Pamphlet against R.
2020-06-26: Data Structure Design in CSV.jl.
2020-06-26: Dexplot is a Python library for delivering beautiful data visualizations with a simple and intuitive user experience.
2020-06-26: Five highlights on the Spark 3.0.0 Release.
2020-06-26: Geocomputation with R.
2020-06-26: generative artistry.
The UNIX toolset, like the one you’ll find in Linux and OSX, is the work environment of choice of a very large number of programmers and research scientists. If you are interested in a career as a programmer, data analyst, or researcher, you’ll need to master it. — The Hacker Ways
2020-06-27: Latest pinned package from Homebrew:
hugo. Yes, again… This time with version 0.73 which messed with the generation of the tagged entries, e.g. emacs. I’m tired of that backward compatibility issues.
2020-06-27: So many new textbooks by Gaston Sanchez!
2020-06-27: Borg: Deduplicating archiver with compression and encryption. Since I’m done with Dropbox and rely on Syncthing now, this looks like a great replacement for Arq eventually.
2020-06-28: How to learn D3.js.
2020-06-28: restic: Backups done right! Now I guess I just have to figure out how it compares to Borg.
2020-06-29: I just realized today that VS Code was using Jedi as the default backend for its LSP server. It’s still possible to use the MS Python server: same as under Emacs, once you select that option, all MS stuff get downloaded and VS Code gets pretty unusable for quite a few moments when you open a Python project. That was not Emacs fault, right? So I’m now back to Emacs full day. What a life!