From metaredux.com
0 3
TL;DR You’ll find the survey here. It’s been a while since the first and only “State of CIDER” survey.1 Right after it happened in the end of 2019, the world went to shit and I kind of forgot about my intent to do the survey annually. 5 years later, it’s high time we get back on track! CIDER has...
on Mon, 2PM
From metaredux.com
0 0
I just realized this morning that on the 31st of July 2021, my very first open-source project1 Projectile (a project interaction library for Emacs) had turned 10 years old. Time sure flies fast! I still remember the humble beginnings of the project, which started out simply because I was...
on Aug 1
From metaredux.com
RuboCop 1.62 Introduces (Experimental) Support for Prism
0 0
Recently I wrote that it was already possible to run RuboCop with Ruby’s new Prism parser, but that required a bit of manual work. I also outlined some plans to add built-in Prism support in RuboCop. 1 Today I’m happy to report that last week we’ve released RuboCop 1.62 which features...
on Mar 9
From metaredux.com
0 0
Background Note: I’ve started writing this article about one year ago (September 2020), but I dropped it at some point. Its final version is way less ambitious than my original plans for it, mostly because I forgot some of things that were on mind back then. Still, better than nothing. A long...
on Mar 8
From metaredux.com
Weird Ruby: The Double Aliased Enumerable Method
0 0
Ruby is famous (infamous?) for giving us many ways to do the same thing. One aspect of this is that quite a few methods in core classes have aliases, especially in the Enumerable module. E.g.: collect -> map inject -> reduce detect -> find select -> find_all Most Rubyists are probably aware that...
on Mar 8
From metaredux.com
Weird Ruby: Incrementing Strings
0 0
I guess most Rubyists know that you can use the methods Integer#succ1 and its alias Integer#next to increment a number. E.g.: 1.succ # => 2 The method is rarely used directly, but it’s used internally by ranges to compute the elements within the range boundaries: (1..10).to_a # => [1, 2, 3, 4,...
on Mar 5
From metaredux.com
Weird Ruby: Fun with String#split
0 0
String#split is a pretty-well known and commonly used method. Still, its behaviour in some cases might surprise you: irb(main):001:0> 'foo.bar'.split('.') => ["foo", "bar"] irb(main):002:0> '...'.split('.') => [] irb(main):003:0> 'foo...'.split('.') => ["foo"] irb(main):004:0> 'foo'.split('.')...
on Mar 1
From metaredux.com
0 0
Most Rubyists probably know that nil in Ruby is an instance of the singleton class NilClass. Because nil is a object like any other, we can actually invoke methods on it, and it turns out that NilClass provides a few - mostly conversion methods to other Ruby types. Let’s see some of those in...
on Mar 1
From metaredux.com
nREPL 1.1.1: Improved Completion with compliment-lite
0 0
Today I’ve released nREPL 1.1.1 with a couple of small bug-fixes and one more notable, if mostly invisible change. Historically nREPL’s completions op (introduced in nREPL 0.8) used internally a modified version of clojure-complete, that I eventually released as a library named incomplete....
on Feb 29
From metaredux.com
Need for Speed: Using RuboCop with Prism
0 0
By now probably most Rubists have heard of Prism (formerly know as YARP), the modern and (very) fast Ruby parser that’s aiming to replace all the existing Ruby parsers out there. Including RuboCop’s “own” parser (a.k.a whitequark/parser), which aimed to replace ripper and ruby_parser, back when...
on Feb 21
From metaredux.com
Configuring fixed/tonsky indentation in clojure-mode
0 0
A few years ago Nikita Tonsky made popular a certain style of formating Clojure code, that became known as “fixed” or “tonsky” indentation in the community. clojure-mode has long had some support for this via clojure-indent-style: (setq clojure-indent-style 'always-indent) However, it was kind...
on Feb 20
From metaredux.com
CIDER: Preliminary Support for clojure-ts-mode
0 0
I’m glad to report that yesterday the long-awaited preliminary support for clojure-ts-mode in CIDER has landed! This pull request (or rather the original PR on which it was based) was in the works for a very long time and it feels good to see it finally merged. What does this mean in practice?...
on Feb 20
From metaredux.com
Flycheck Updates: A new Stable Release and Way More
0 0
I’ve been pretty busy with Flycheck ever since I became its maintainer recently. Today I wanted to share with you a few of the recent highlights. Flycheck 34 I’ve cut Flycheck 34, which features quite a few new checkers and removes a bunch of legacy checkers. As I’m not familiar with all the...
on Feb 20
From metaredux.com
0 0
Alone we can do so little; together we can do so much. – Helen Keller I’ve started CIDER’s Open Collective some 7-8 years ago and over the course of time it became of the main donation channels for the project. In good years it would raise somewhere between $10,000 and $15,000. While my initial...
on Feb 15
From metaredux.com
The State of Flycheck: Alive and Kicking
0 0
Flycheck has been one of my favorite Emacs packages ever since it was released 10 years ago. I love writing clean idiomatic code, I love the help that lint tools provide with this, and I wasn’t particularly happy with the “tried and true” Flymake back in the day. When I came across the Flycheck...
on Feb 10
From metaredux.com
Weird Ruby: Pure Object-Oriented Negation
0 0
I’m kicking off a new series of posts dedicated to some fun and weird aspects of our beloved Ruby programming language. I was torn apart between “Fun Ruby” and “Weird Ruby” for the name of the series, but I’ve opted for the latter for no real reason. Today we’re going to talk about...
on Jan 18
From metaredux.com
Weird Ruby: A Weird Way to Filter Out Elements
0 0
Imagine you want to filter out the nil elements in an array. There are many ways to do this in Ruby: # common, but suboptimal array.reject(&:nil?) array.delete_if(&:nil?) array.select { |e| !e.nil? } # optimal array.compact But there’s a slightly weirder way to achieve this, courtesy of the...
on Jan 17
From metaredux.com
Weird Ruby: Mixing Code and Data
0 0
One of the fun weird aspects of Ruby is that you can mix code and data together in the same file. Here’s a trivial example: DATA.each_line do |line| puts line end __END__ I am Groot If you put the snippet above in a file named groot.rb and run with ruby it will output the following: I am Groot...
on Dec 23, 2023
From metaredux.com
CIDER & clojure-lsp Sitting on a Tree
0 0
CIDER (and nREPL by association) and clojure-lsp are often seen as competitors when it comes to Clojure development tools. You can find plenty of discussions online discussing the merits of both tools and their approaches.1 There are two common problems that I’ve noticed: People tend to conflate...
on Dec 23, 2023
From metaredux.com
0 0
This article is part of the “Meta Advent 2019” series. I’ve committed to writing a new blog post here every day until Christmas. It took me a while to write this article, but it’s finally here. I’ve opted to group related questions into several broader themes. Here we go… Note: You can find all...
on Nov 10, 2023
From metaredux.com
0 0
What can be a better start of 2019 than some freshly brewed CIDER’(0.)19? Consider the release of the latest CIDER my attempt to keep the New Year festivities going for a while longer. It’s also an attempt to clear some overdue items from my (humongous) personal todo list at the start of the new...
on Nov 10, 2023
From metaredux.com
0 0
Prologue This post is part of the mini-series “CIDER’s Orchard”. That’s intended to be the final article in the series, but this might change depending on my inspiration. CIDER’s Orchard: The Heart CIDER’s Orchard: The Periphery CIDER’s Orchard: The Future
on Nov 10, 2023
From metaredux.com
CIDER’s Orchard: The Periphery
0 0
Prologue This post is part of the mini-series “CIDER’s Orchard”. Currently I’m planning 3 installments in the series, but this might change depending on my inspiration. CIDER’s Orchard: The Heart CIDER’s Orchard: The Periphery CIDER’s Orchard: The Future
on Nov 10, 2023
From metaredux.com
0 0
Prologue This post is part of the mini-series “CIDER’s Orchard”. Currently I’m planning 3 installments in the series, but this might change depending on my inspiration. CIDER’s Orchard: The Heart CIDER’s Orchard: The Periphery CIDER’s Orchard: The Future
on Nov 10, 2023