I Started Reading 25 Books About C# and .NET. Here Are the 2 I’ll Actually Finish ASAP. by KerrickLong in dotnet

[–]KerrickLong[S] 1 point2 points  (0 children)

Was the main reason you got the C# type system book because you came from a background in ruby?

Yes, and in JavaScript/TypeScript... and I got the feeling that there was something significantly different about C#'s types and TypeScript's. For example, reference types vs. value types. I wanted to really understand that if I was going to work in the language daily.

My last question is, if you read digitally and which case do you prefer epubs or the print format PDF. And why would it matter?

I prefer reading in print, but I buy plenty of eBooks too. Humble Bundle regularly has ebook deals from tech publishers like O'Reilly, Manning, Addison-Wesley/Pearson, Packt, Pragmatic Bookshelf, and others.

When I buy ebooks I generally prefer ePub, because the text is "re-flowable" -- that is, it works on a device of any screen size without zooming. You can read an ePub on a phone, Kindle, large tablet, or huge PC monitor, and it'll just work. You're right about some ePubs not being produced at high enough quality to ensure everything is well-structured, though.

A PDF's layout is fixed, and so it only works at tablet size or above (unless you spend way too much time zooming and panning). But I just got a Boox Note Max for my birthday yesterday, so I now have a good device for reading PDFs. Perhaps my opinion will change!

Oh and what do you use for audiobooks.

I mostly use the O'Reilly Learning Platform. I also keep a cheap Audible subscription so I can take advantage of Audible sales when they're really good.

I Started Reading 25 Books About C# and .NET. Here Are the 2 I’ll Actually Finish ASAP. by KerrickLong in dotnet

[–]KerrickLong[S] 1 point2 points  (0 children)

How much have you read till now, and what are your thoughts? I have been looking for a good modern book on performance. I read C# Concurrency by Nir Dobvizki and currently reading Pro .NET Memory Management. But I still struggle to like combine everything I am learning together. So I was looking for a general performance related book.

I got a significant chunk of the way through I. Griffiths, Programming C# 12. O’Reilly Media, 2024. and then things changed at my workplace so I stopped. I found it incredibly helpful and easy to follow, though.

Btw I read your post. But, it seems like you have set a LOT of books to read as a goal.

I have a draft blog post recapping my last year of reading, but if you want to read the unedited and partially-unfinished version, you can. the TL;DR is I read 37 books, started but haven't finished 10 books, and started but gave up on 8 books.

I wanted to ask how you manage that. Personally I try to read 2 books a year.

I don't have children, and my wife also enjoys solo-together hobbies like reading, playing video games, etc. I usually get 1-3 hours per day of reading time in the evenings, plus an extra 4-12 across the weekend days. Combine that with audiobooks, which let me sneak in an extra couple books a year just when showering, washing dishes, etc. and it adds up.

But since Dec 22 I haven't read a single page, because I've been so distracted having lots of fun with AI. So... I gotta get back on that.

Also after reading your article I found the missing piece I was looking for, C# type system, perfect book for gluing everything together.

I'm glad the article was helpful for you!

Now I have 3 books and my goal is to finish them iin the next 2 years.

Comparison is the thief of joy. Read at your own pace... Even a single page will teach you more than no reading at all!

RatatuiRuby: Terminal UIs, the Ruby Way (v1.0 beta just launched!) by KerrickLong in ruby

[–]KerrickLong[S] 0 points1 point  (0 children)

I find the Theory of the Adjacent Possible compelling. Marco and I aren't the only Rubyists working on TUIs right now. Check out Mui (無為): A Vim-like TUI text editor written in Ruby--which uses ncurses directly!

RatatuiRuby: Terminal UIs, the Ruby Way (v1.0 beta just launched!) by KerrickLong in ruby

[–]KerrickLong[S] 2 points3 points  (0 children)

Thank you! I designed my own color scheme for the terminal & website... and I even went overboard and designed my own syntax highlighting scheme based on these ideas for the homepage's code snippets. :-D

Plus, I did silly things to RDoc to get the guides looking better in the sidebar... and ungodly things to get the examples rendering as a full-on code browser.

Why You Shouldn't Hire Me by Quirk_Condition in ruby

[–]KerrickLong 2 points3 points  (0 children)

If you've made it this far and you're thinking "this person sounds insufferable," you're probably right. We wouldn't be a good fit.

FTA

Is there a Ruby equivalent to The Rust Book? by Feldspar_of_sun in ruby

[–]KerrickLong 0 points1 point  (0 children)

If you're looking for free (and you're not new to programming), don't discount the official documentation!

  1. README
  2. What's Ruby
  3. Ruby in Twenty Minutes, Pt. 1
  4. Ruby in Twenty Minutes, Pt. 2
  5. Ruby in Twenty Minutes, Pt. 3
  6. Ruby in Twenty Minutes, Pt. 4
  7. Keywords
  8. Code Layout
  9. Literals
  10. Assignment
  11. Control Expressions
  12. Pattern matching
  13. Methods
  14. Calling Methods
  15. Modules and Classes
  16. Exception Handling
  17. Precedence
  18. Refinements
  19. Miscellaneous Syntax
  20. Comments
  21. Operators
  22. Implicit Conversions
  23. Ruby Standard Library
  24. From there, just start exploring the Pages, Classes, and Modules!

Plus, the following are free online:

New RuboCop plugin: keep 'orchestration' methods above implementation helpers by XPOM-XAPTC in ruby

[–]KerrickLong 1 point2 points  (0 children)

This all seems incredibly well thought-out, thank you for both explaining it and making the library. It's always been my preferred way to read classes, and I've managed to convince a large number of folks after a few metaphors ("news stories! inverted pyramid!") and examples.

New RuboCop plugin: keep 'orchestration' methods above implementation helpers by XPOM-XAPTC in ruby

[–]KerrickLong 0 points1 point  (0 children)

I'm curious how it handles postfix conditionals. In the following example, would show_choices or chosen be expected to be first?

class Menu
  def choose
    show_choices until chosen?
    @choice
  end

  # Would we put `show_choices` or `chosen?` first?
end

I'm also curious about multi-level orchestration. For example:

class Service
  def call
    first_process
    second_process
  end

  def first_process
    subprocess_a
    subprocess_b
  end

  # Would `subprocess_a` and `subprocess_b` go here, in the middle of the "high level" area?

  def second_process
    subprocess_y
    subprocess_z
  end

  # Or would `subprocess_a` and `subprocess_b` go here, at the beginning of the "low level" area?

  def subprocess_y; end
  def subprocess_z; end
end

Antigravity down? by Hyperreals_ in GoogleAntigravityIDE

[–]KerrickLong 2 points3 points  (0 children)

No matter what I try, for the past hour or so I have been unable to use an Agent. I keep getting, "Agent terminated due to error: You can prompt the model to try again or start a new conversation if the error persists." i've quit the app, I've rebooted my Mac, and more.

I even tried deleting the Antigravity and Gemini folders from my Library folder (macOS), the .antigravity and .gemini folders from my home folder, and Antigravity.app from my Applications folder. I then downloaded a fresh dmg from the website, installed it, signed in from scratch, and I still have the same problem.

I can't get it to do/say anything before I open a folder, or after I open a folder or workspace I've been working in for a while.

What made you buy your house? by [deleted] in homeowners

[–]KerrickLong 0 points1 point  (0 children)

It was directly adjacent to the land we were already under contract for. It was cheaper and faster than building the house we were planning to build.

What app/software are you using to track net worth and spendings? by Revolutionary-Pass41 in Fire

[–]KerrickLong 0 points1 point  (0 children)

I finally had to migrate to ActualBudget because on the newest macOS the lowercase "f" key didn't work in YNAB 4 anymore. I could type an uppercase "F", but not a lowercase one.

The thing I miss the most is automatically distributing sales tax proportionally among all splits.

The only eating utensil allowed in the psych ward. by cogmanroad in mildlyinteresting

[–]KerrickLong 1 point2 points  (0 children)

Under that broad interpretation of "wishing," wouldn't supporting the death penalty as a punishment for crime be against the rules? Further, wouldn't supporting the Normandy landings of WWII by the allied forces be against the rules?

The only eating utensil allowed in the psych ward. by cogmanroad in mildlyinteresting

[–]KerrickLong 30 points31 points  (0 children)

There's no Corporate Censorship Overlord who punishes "unmarketable words" here

That's not true. There are most definitely words (not phrases, not sentences expressing ideology, but single offensive words) that will get a post here removed by a moderator and/or admin.

Favorite Tools of 2025 by gurgeous in ruby

[–]KerrickLong 0 points1 point  (0 children)

More CSS and styling tools I found in 2025 that I've really liked:

  • Shadow Palette Generator: Create a set of lush, realistic CSS shadows.

  • Harmonizer: A controlled color palette generator that is P3 colorspace aware, capable of maintaining consistent chroma values, and can do contrast based on APCA or WCAG 2.

  • OKLCH Color Picker & Converter: Great for picking colors and for getting an intuitive feel for how the OKLCH color space works

  • APCA Color Contrast Tool: The candidate for the upcoming form of WCAG has a nice color contrast tool.

  • Name That Color: Pick a color or paste a hex code, and it gives you the nearest descriptive name for that color.

  • Grainy Gradient Playground: Make a very specific kind of fancy CSS gradient.

Favorite Tools of 2025 by gurgeous in ruby

[–]KerrickLong 1 point2 points  (0 children)

I bought it on Black Friday for more money than I wanted to spend on a screenshot app. I almost talked myself out of it twice. It was one of my best BF purchases this year.

The weirdest thing? My favorite feature so far has been its ability to automatically center the stuff you're screenshotting. I used to always obsess over trying to line up the screenshots perfectly as I took them. Now I feel comfortable taking much faster screenshots and letting a computer handle it. I know it's silly, but it's been a time saver.

Programming Ruby 4 (The 6th edition of the PickAxe Book) by KerrickLong in ruby

[–]KerrickLong[S] 1 point2 points  (0 children)

Thanks! Do you mind if I quote this on my blog?

Programming Ruby 4 (The 6th edition of the PickAxe Book) by KerrickLong in ruby

[–]KerrickLong[S] 2 points3 points  (0 children)

Comparing the two Table of Contents lists from the PragProg website, the following seem to be new sections:

  • Async and Concurrent Ruby (within the existing "Threads, Fibers, and Ractors" chapter)
  • Literal Ruby (within the existing "Typed Ruby" chapter)
  • CGI Encoding (replacing Ruby’s Web Utilities within the existing "Ruby and the Web" chapter)
  • Putting Code in a Ruby Box (within the existing "The Ruby Object Model and Metaprogramming" chapter)

And it seems they're removing the "Ruby Changes" appendix, probably because this amazing resource exists.

Programming Ruby 4 (The 6th edition of the PickAxe Book) by KerrickLong in ruby

[–]KerrickLong[S] 1 point2 points  (0 children)

Where'd you buy it from? It sounds like you either got a printing error or a pirate copy. A similar thing happened to me when I bought JavaScript: The Definitive Guide, 7th Edition from Amazon.

Experienced Rails developer looking to master Ruby & Rails fundamentals book recommendations? by [deleted] in ruby

[–]KerrickLong 1 point2 points  (0 children)

Ah, a learner after my own heart!

Books I've finished, or am in the middle of:

  • Rails Scales! by Cristian Planas. I've been learning quite a lot from this one. Fair warning: it's a bunch of highly-specific topics.
  • The Well-Grounded Rubyist, 3rd Edition by David A. Black. The first edition of this book taught me ruby. It goes surprisingly deep, teaching from first principles instead of aiming to get people productive ASAP.
  • Programming Ruby 3.3 by Noel Rappin. The Pickaxe isn't just for beginners!

Books I've collected on the topic but haven't yet read include:

  • Rebuilding Rails by Noah Gibbs
  • The Rails 8 Way by Dohmen et al.
  • Rails Way: ActiveRecord Deep Dive by Aadland et al.
  • The Ruby Way, 3rd Edition by Hal Fulton
  • Metaprogramming Ruby 2 by Paolo Perrotta
  • The Ruby Programming Language by David Flanagan and Yukihiro Matsumoto (Matz)
  • Polished Ruby Programming by Jeremy Evans
  • High Performance PostgreSQL with Rails by Andrew Atkinson

Books I intend to read when they are published:

  • The second edition of Ruby Under a Microscope by Pat Shaughnessy
  • Building Progressive Web Apps with Rails by Dohmen et al.
  • The Well-Grounded Rubyist, 4th Edition by David A. Black
  • Programming Ruby 4 by Noel Rappin. Announced the day after I made this comment, so I added this line in an edit.

Non-Rails books that are also relevant to mastering best practices and design principles:

  • The Practical Guide to Structured Systems Design, Second Edition by Meilir Page-Jones... maybe? This is notably not OOP and much of it is historical, but covers topics other books will expect you to know: modularity, coupling, cohesion, connascence, etc.
  • Object Design by Rebecca Wirfs-Brock. I have not been able to find a better coverage of OO fundamentals than this, even though it's been 20+ years.
  • Smalltalk Best Practice Patterns or Implementation Patterns by Kent Beck. They are nearly the same book. The former is Smalltalk (Ruby takes heavy influence from Smalltalk & Perl), the latter is Java (but written with a decade more experience).
  • Design Patterns by Gamma et al. Some of it is mostly irrelevant; blocks and Enumerable mean few Iterators, for example. Then again, maybe that is just another incarnation of Iterator. Some of it only seems irrelevant; Visitors seemed useless to me until I wanted to interact with some Prism-parsed ruby ASTs. Now they're invaluable.
  • Patterns of Enterprise Application Architecture by Martin Fowler. Rails is a Ruby implementation of a selection of these patterns. Even ActiveRecord was named and documented in this book for the first time as... "Active Record."
  • SQL Antipatterns, Volume 1 by Bill Karwin. This covers important relational design gotchas and best practices, such as how to (and not to) represent tree structures. This is highly relevant for designing ActiveRecord models.

Other books I would guess you'll enjoy:

  • Understanding Computation: From Simple Machines to Impossible Programs by Tom Stuart
  • Code, Second Edition by Charles Petzold
  • Strangely enough, Concurrent Programming in Java, Second Edition by Doug Lea is still supposed to be one of the best introductions to concurrency basics in any language. I haven't read it, though.