The Sudoku puzzle format consists of (usually) a 9 by 9 grid that must be filled with numbers. The classical Sudoku rules are as follows
- Each row must contain all of the digits from 1 to 9, with no repetitions
- Each column must contain all of the digits from 1 to 9, with no repetitions
- Each sub square (3x3 grids marked by bold lines) must contain all of the digits from 1 to 9, with no repetitions
The historical inspiration of Sudoku begins with the Latin square, a type of grid problem similar to Sudoku in that it consists of an N by N grid where N digits (or letters) must be arranged in accordance with rules 1 and 2 of Sudoku (the sub square had yet to be invented). The first known example of a 9 by 9 Latin Square is from a monograph over 300 years ago, written by the Korean mathematician Choi Seok-Jeong. However, the Latin Square was popularized in the west by the legendary mathematician Leonhard Euler, who independently invented it almost 70 years after Choi Seok-Jeong.
According to Christian Boyer (idk who this is), on July 6th, 1895, the french newspaper La France published the earliest known example of a “true” Sudoku puzzle following all 3 rules of modern Sudokus, although french newspapers had previously been publishing similar (but different) puzzles prior. The name “Sudoku” itself (meaning “single digit”) comes from Japanese magazines in which the game was popular during the 80s and 90s.
In Modern times, the Sudoku puzzle scene has been blessed with the addition of numerous variants, that add on additional rules, elevating the puzzle. The puzzle in the provided image is one such example, known as the “miracle Sudoku”. It comes with 3 additional rules on top of the 3 original.
- If 2 digits are separated by a knight’s move in chess, then they cannot be the same
- If 2 digits are separated by a king’s move in chess, then they cannot be the same
- If 2 digits are adjacent (left, right, down or top, none of the diagonal directions), then they cannot be consecutive (ex - 5 and 6, or 7 and 8)
As can be seen from the fact that only 2 digits have been provided to start with, modern Sudoku authors are big fans of making puzzles that appear to be impossible to solve. This of course, is my favorite part about modern Sudoku. If you want to try to solve the miracle Sudoku, here is the link.
Some of the other example variants add new rules, such as German whispers, Dutch whispers, Renban lines, Entropy lines, Thermometer lines, killer cages and many more. You can find a massive collection of these puzzles on the logic-masters website.
Join our public Matrix server!
https://rentry.co/tracha#tracha-rooms
As a reminder, please do not discuss current struggle sessions in the mega. We want this to be a little oasis for all of us and the best way to do that is not to feed into existing conflict on the site.
Also, be sure to properly give content warnings and put sensitive subjects behind proper spoiler tags. It’s for the mental health of not just your comrades, but yourself as well.
Here is a screenshot of where to find the spoiler button.
ranting and raving about IDEs
i like neovim more than other editors but i would like it more if my stupid plugin manager let me configure on a per project basis and i didnt have to fuck around with tabstops and line endings all. the. time. arghhhhhhhh. say what you will about IDEs (and there’s a lot to say) but at least you dont have to fuck around with this shit constantly, forget the setting names and have to dig through documentation to set it up/fix it every single time you come back to a project. I’ve spent more time fucking with tabstops and line endings than I have actually writing code. Such a gigantic pain in the ass. My take on editors is that I hate them all except emacs bc i’ve never used it and I’d probably hate it too for anything other than tiny LISP progs. I just want a lightweight and fast terminal editor with syntax highlighting/errors in the current files I have open, symbol lookup, and an easy way to hook up to a debugger. thats it! I don’t need git integration! I’ll use the fuckin cli! I dont need AI bs! its crap! I don’t want to manually disable half my plugins when i switch to a different language and still load every lsp for things i’m not even using! I just want it to work consistently, require minimal configuration and get the fuck out of my way so i can write the damn code. fuck!!! people hate on the godot code editor cause it doesn’t have multiple buffers but damn if I havent gotten more done just because i dont have to fuck around with the settings all the time
text editor nerd shit
Just use Emacs. All text editors after emacs are worse reimplementations of Emacs because only Emacs understood that the code editor shouldn’t have an API and should just exist to manipulate and edit text. Also no AI ootb. Every feature you listed is built in.
Emacs can be used in the terminal btw and out of the box has support for LSPs (you literally hit “eglot” and it turns on)
You do want git integration, but on the level of Magit in Emacs where every git feature has been converted to a mnemonic interface and there’s no workflow interruption from diff to editor window. You dont even have to go into the git window you can do git commands right in the editing window.
Emacs concepts of major and minor modes also makes it super flexible in any environment.
is there a way to set it up so that my configuration + plugins/packages are based on my current project?
Emacs has support for local variables, whether they’re inside a directory or file. So yeah it’s very intuitive to set up Emacs for a certain project (involves setting up a
.dirs-local.el
).I was very confused because I thought this was gonna be about IEDs and it was actually about computers