Discussion:
Puzzle corner 51
Add Reply
Mike Easter
2025-01-01 18:35:00 UTC
Reply
Permalink
Today's CQ:

CBSW SW Y QDT LDYI. Y QDT
UDXSQQSQX. YQO CBSQXW
TSZZ KBYQXD. - CYLZNI WTSMC

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

This is a new year. A new beginning. And things will change.
Taylor Swift

Solving: a new beginning jumped out at me.
Swift spent her early years on a Christmas tree farm in Pennsylvania
that her father had purchased from one of his clients,[10] and she
spent her summers at her family's vacation home in Stone Harbor, New
Jersey, where she occasionally performed acoustic songs at a local
coffee shop.
And now, a few words about new year 'day' minutes.

The winter solstice was at 1:21a PST 12/21, and the amount of daytime we
had here that day was within 11 sec of 10 hours. Now, with the new
year, we already have 3 minutes more of daytime. One could debate
'daytime' and night because of the complexities of the different kinds
of dawns and twilights, which is sometimes fun.

Which reminds me of a story. In Mexico, unlike the .us, it is NOT all
right to fly VFR at night. That is not altogether a bad rule, as night
flying has some disadvantages VFR. In any case, a group of 4 friends
and I were traveling in a light plane to land in Cozumel, a small quaint
island w/ a small quaint a/p, totally unlit of course and we landed 'at
the end of the day'. VFR of course.

It happens that there were two federales (armed w/ the conventional
'assault style' weapons) at the a/p. Which was a bit of a surprise to
me. In any case, they wanted to 'discuss' whether it was night or not.
I know that most people would just figure that the discussion was
actually supposed to be all about mordida, but I'm not inclined that
way, and I was accompanied by a 'world's greatest' pilot who never wants
to be in the wrong about anything that has to do w/ regulations or
conflicts w/ air traffic control or tower people. Or aviation rules,
generally.

In any case, we didn't pay any mordida and we didn't get jailed or shot;
so I guess we 'won' our discussion and we didn't get into the subtle
similarities and differences between astronomical, nautical or civil
twilight different definitions.
--
Mike Easter
Mike Easter
2025-01-01 18:53:14 UTC
Reply
Permalink
a group of 4 friends and I were traveling in a light plane to land in
Cozumel, a small quaint island w/ a small quaint a/p, totally unlit
of course and we landed 'at the end of the day'. VFR of course.
I misspoke. While we did do Cozumel that trip, this 'incident' was
actually at Isla de Mujeres, much much more 'quaint' in terms of a/p.
The island was formerly served by Isla Mujeres National Airport, but
the airport and landing strip have since closed.
Yeah, right; 'national airport'. Ha.
the airport features a single asphalt runway, designated as 15/33,
measuring 1,050 by 23 metres (3,445 by 75 ft). Adjacent facilities
include an apron with parking positions for small aircraft and a
small terminal and control tower, which is currently abandoned and
has been vandalized.
Loading Image...

I didn't realize until now that there was a 'control tower' on top of
that ramshackle building.

BTW, we walked to the quaint hotel where we stayed.

I also just learned today that there is a .mx naval base somewhere on
the island, which probably explains the presence of the federales at the
a/p.
--
Mike Easter
Mike Easter
2025-01-02 18:23:27 UTC
Reply
Permalink
Today's CQ:

RCLGCIJ TIBLVY KAD YLPM,
XCWDY PGI QDDK CLO
QBLVDIY VEPM. -- YCIC
SPEDIBOVD


.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

January brings the snow, makes our feet and fingers glow.
Sara Coleridge

Solving: C>A, L>N, January, brings

SC
was an English author and translator. She was the third child and
only daughter of the poet Samuel Taylor Coleridge
had several children for whom she wrote instructive verses. These
were published as Pretty Lessons in Verse for Good Children in 1834
which included popular poems like The Months: "January brings the
snow, makes our feet and fingers glow."
--
Mike Easter
Mike Easter
2025-01-02 18:33:51 UTC
Reply
Permalink
Post by Mike Easter
Sara Coleridge
Interesting reading about the birthplace of SC and the Lake District of
England.
Post by Mike Easter
The national park received 18.14 million tourist visitors in 2022.
This equates to 29.15 million tourist days, counting visits of
greater than three hours.[10] It is the largest of the thirteen
national parks in England and Wales and the second largest in the UK
--
Mike Easter
Mike Easter
2025-01-03 17:53:49 UTC
Reply
Permalink
Today's CQ:

 WHQ LKHZ UWSZ BGH
 UGSN ETSQQ UKHEQS
 NWHETI. --  DGJGHQIQ
 JSWRQSV

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

One kind word can warm three winter months.
Japanese proverb

Solving: Q>E, one, Japanese proverb

Warm 3 winter mo/s? One kind word? Nah; maybe warm one winter day.

I was reading about .jp climate (which includes geography) and was
surprised to learn that besides the 4 main islands, that there are
The other 14,120 islands are classified as "remote islands" by the Japanese government.
I wonder how many people live on those remote islands, and if so, what
their lifestyle is like. Do some wealthy .jp/ese own private islands?
--
Mike Easter
Mike Easter
2025-01-03 18:37:55 UTC
Reply
Permalink
The other 14,120 islands are classified as "remote islands" by the Japanese government.
As if .jp didn't have /enough/ islands; sometimes they build one, an
artificial island in a bay.

Loading Image...
--
Mike Easter
Mike Easter
2025-01-03 23:32:05 UTC
Reply
Permalink
Who knows about Singapore?

Start w/ the geography of that part of Asia; the Indochinese Peninsula
It includes the countries of Cambodia, Laos, Myanmar, Thailand and
Vietnam as well as Peninsular Malaysia.
Geo buffs will caution not to confuse Peninsular Malaysia w/ the 'Malay
Peninsula'

Loading Image...

The Indochinese Peninsula is the big white blob at the top plus the
skinnier multicolored peninsula, while the latter is the Malay Peninsula.

Way down at the tip end of the red part of that is the island of
Singapore, an island country and a citystate.

If you want to get into some fun, read the bio of Stamford Raffles, who
was born aboard a ship captained by his father, but of course born of
his aboard mother. The young Raffles started working for the East India
Co at 14 and became much involved w/ the Brit involvement in the Dutch
East Indies after the Brits whupped the Dutch there.

Leaving out some significant history of that part of the world and
Raffles, he was integral to the founding of Singapore. I highly
recommend reading the wp Raffles article.

In any and all cases, today Singapore is a highly dev/d independent
country since 1965 w/ one of the highest GDPs (per person) of the world
as well as being a tax haven.

I came to be reading about Singapore today because of a major quantum
computing breakthru' by NTU scientists. Nanyang Technological
University, Singapore.

Rather than trying to put the breakthru' in a few words here, I'll just
link you to the article:

https://scitechdaily.com/scientists-discover-a-way-to-shrink-quantum-computer-components-by-1000x/
Scientists Discover a Way to Shrink Quantum Computer Components by 1,000x
--
Mike Easter
Mike Easter
2025-01-05 02:55:31 UTC
Reply
Permalink
I highly recommend reading the wp Raffles article.
... as well as his article in the Britannica, which covers different
facets of the subject.

https://www.britannica.com/biography/Stamford-Raffles

That is all interesting from the perspective of old history.

For a larger global perspective, I think the 21st century 'history' of
the nearby (to Singapore) Malay Archipelago is worth looking into.
Malay Archipelago, largest group of islands in the world, consisting
of the more than 17,000 islands of Indonesia and the approximately
7,000 islands of the Philippines. The regional name “East Indies” is
sometimes used as a synonym for the archipelago.
--
Mike Easter
Mike Easter
2025-01-04 17:55:47 UTC
Reply
Permalink
Today's CQ:

MTPPHMM JMV'G QHGHILJVHQ
FD SNO LBVD GJLHM DNT OJV,
FTG FD SNO DNT AYBD GSH
OHHW BUGHI DNT YNMH.
- AHYH

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Success isn't determined by how many times you win, but by how you play
the week after you lose.
Pele

Solving: isn't, the, determined, success

Pele, whose name was Edson Arantes do Nascimento died in '22 Dec at age
82. He was diagnosed w/ colon cancer the year before, underwent surgery
and chemo, then contracted Covid, was hospitalized and deteriorated of
multiple organ failure which dev'd a month after his covid dx. In his
case, the death certificate lists the organ failures & colon cancer;
while many people who died in some association w/ covid were said to
have died of that disease.

Lotsa controversy on that subject.
Of people who show symptoms, 81% develop only mild to moderate
symptoms (up to mild pneumonia), while 14% develop severe symptoms
(dyspnea, hypoxia, or more than 50% lung involvement on imaging) that
require hospitalization, and 5% of patients develop critical symptoms
(respiratory failure, septic shock, or multiorgan dysfunction)
requiring ICU admission.
At least a third of the people who are infected with the virus do not
develop noticeable symptoms at any point in time.[11][12][13] These
asymptomatic carriers tend not to get tested and can still spread the
disease.
Around 10% to 30% of non-hospitalised people with COVID-19 go on to
develop long COVID. For those that do need hospitalisation, the
incidence of long-term effects is over 50%.
--
Mike Easter
Mike Easter
2025-01-04 23:46:18 UTC
Reply
Permalink
My everyday driver is LM Cinnamon, but I've been fiddling w/ a number of
different KDE distro/s lately because of a thread that was started in
aol.mint about that DE.

Historically I would say that my favorite KDE has been KDE Neon, 'tho it
is based on Ub and Ub isn't usually my favorite base except for LM which
makes quite a number of departures from the Ub base, which Neon makes
'fewer'. For example, Neon default live includes NO snap packages, but
/does/ enable snap, which LM doesn't, but Neon /can/ enable snap and
even make it the default in its software manager.

In any case, I've played w/ MX KDE in the past, but moved it 'down' in
rankings because the dev/s chose to 'load' it; whereas I prefer the
default distro release to be not so loaded or even 'minimal' to keep its
size down and to keep its ram usage live to the desktop lower.

However, this time when I'm playing w/ MX KDE, I'm finding that some of
the things that it is loaded w/ are unfamiliar to me and worthwhile.
For example, it has a MX Viewer which is based on the Qt WebEngine, not
recommended for browsing, because it wasn't designed for security but
just for MX docs.

There's also a command line function called TexInfo, which functions are
explained on this huge html page; but of course the commandline texinfo
is just in a terminal and navigated as such. I would say that its
purpose is to make things simpler for anyone to write an info file.
Then, there is also the TeX formatting and printing functions.
--
Mike Easter
Mike Easter
2025-01-05 02:19:08 UTC
Reply
Permalink
Oops.
Post by Mike Easter
There's also a command line function called TexInfo, which functions are
explained on this huge html page;
https://www.gnu.org/software/texinfo/manual/texinfo/texinfo.html
--
Mike Easter
Mike Easter
2025-01-05 03:24:21 UTC
Reply
Permalink
Starlink Mini is a compact, portable kit that can easily fit in a
backpack, designed to provide high-speed, low-latency internet on the
go.
https://www.starlink.com/roam
ROAM WITH STARLINK Stay connected on the go, starting at $50/mo.
ROAM 50GB Best for infrequent and individual travel with low usage
$50/MO 50 GB Roam Data
Standard service is great for home internet in rural areas, while
the provider's Roam service and new portable dish are ideal for
staying connected on the go...
Broadband availability in rural areas, like 'hill country' TX is HUGE.

The 'nation' is trying to make rural broadband affordable, but that is
hard to do. Starlink's 'standard' service is more costly of course than
the roaming.

The residential is $120/mo and unlimited data. You can mount your $600
little antenna on a pipe.

OTOH in a well covered area not rural, I buy my internet connectivity
(cable) separately from my TV content (sat). I pay considerably more
than $120/mo for the two combined but I would also need to subscribe to
some kind of internet package or programming content in addition to
Starlink's little sat antenna connectivity.

However, starlink is not as fast as my cable broadband which would like
to claim 400.
Starlink users typically experience download speeds between 25 and
220 Mbps, with a majority of users experiencing speeds over 100
Mbps.
So, I wouldn't be likely to be changing. Further, if I would change my
sat TV provider periodically they would pay me $400-500 every few years to
change between the two main providers DirecTV and Dish.
--
Mike Easter
Mike Easter
2025-01-05 03:59:09 UTC
Reply
Permalink
A guy owned a Tesla cybertruck. He wanted to go to the wilderness w/
his trailer.

In the truck's bed, he rigged a gasoline generator and gastank to charge
his truck, since there weren't going to be any charging stations.

For several reasons, it isn't the same as a hybrid Tesla truck, but for
his 'project' as a DIY idea, it worked out fine. The generator was not
quiet, it wasn't strong enough to charge the battery at full charging
rate (it took 14 hours running while camping in the wilderness) and it
wasn't able to do its thing while traveling, but for the DIYer, it
solved his problem exactly.

For me, who is still driving a 20 y/o conventional car, I prefer a
hybrid when I'm renting a car, because of the convenience of its gas
mileage and other battery powered features, so I wouldn't ever buy a
EV-only vehicle. I would consider a hybrid, depending on the 'deal'.

Some .us states, such as CA are going 'overboard' on their demands for
'conversion' of the public to EVs; and I think the interest in EV-only
is waning, partly because of the deficiency of the charging grid, but
for some other practical reasons. While the wilderness story is just an
anecdote, it is one of 335 million stories in the .us against EV-only.
--
Mike Easter
pothead
2025-01-05 14:02:07 UTC
Reply
Permalink
Post by Mike Easter
A guy owned a Tesla cybertruck. He wanted to go to the wilderness w/
his trailer.
In the truck's bed, he rigged a gasoline generator and gastank to charge
his truck, since there weren't going to be any charging stations.
For several reasons, it isn't the same as a hybrid Tesla truck, but for
his 'project' as a DIY idea, it worked out fine. The generator was not
quiet, it wasn't strong enough to charge the battery at full charging
rate (it took 14 hours running while camping in the wilderness) and it
wasn't able to do its thing while traveling, but for the DIYer, it
solved his problem exactly.
For me, who is still driving a 20 y/o conventional car, I prefer a
hybrid when I'm renting a car, because of the convenience of its gas
mileage and other battery powered features, so I wouldn't ever buy a
EV-only vehicle. I would consider a hybrid, depending on the 'deal'.
Some .us states, such as CA are going 'overboard' on their demands for
'conversion' of the public to EVs; and I think the interest in EV-only
is waning, partly because of the deficiency of the charging grid, but
for some other practical reasons. While the wilderness story is just an
anecdote, it is one of 335 million stories in the .us against EV-only.
That's my main point. This rush to green is putting the cart ahead of the horse.
There are meme on the Internet showing EV cars pulling a small trailer
carrying a generator.
I'm sure they are fake but funny though.
--
pothead

"Give a man a fish and you turn him into a Democrat for life"
"Teach a man to fish and he might become a self-sufficient conservative Republican"
"Don't underestimate Joe's ability to fuck things up,"
--- Barack H. Obama
Mike Easter
2025-01-05 16:57:01 UTC
Reply
Permalink
Sunday cryptoquip:

 BKFFIBYEZ U BFYTSQ CSLUDS U NUBVYIE TSBYZESQ,
 Y YDUZYES BVS OIKRT LQSUXS RIXB IN OSCCYEZ
                  TQSBBSB.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Supposing a spider became a fashion designer. I imagine she would create
lots of webbing dresses.

Solving: supposing a, I imagine she would, dresses
--
Mike Easter
%
2025-01-05 16:59:10 UTC
Reply
Permalink
what
Mike Easter
2025-01-05 21:51:52 UTC
Reply
Permalink
I like to read about OSes.

There's a worthwhile article in The Register today stemming from a '95
usenet message about OS/2 from a guy who wrote a book about it.
The real reason that OS/2 flopped went on to shape modern software
Even Microsoft's lead architect misunderstood the failure
The reason the article helps me is because of how much I was unfamiliar.

At the time W95 came out, I was a multiyear Atari ST user, nearly a
decade. I never had much of any exposure to CP/M, OS/2, W3s, or MSDOS.
I did have a little Mac exposure using Dave Small's Magic Sac w/ Mac
ROMs in my Atari/s.

I went directly from a quite satisfactory GUI interface on the STs to
W95 PLUS at the same time my connectivity graduated from dialup to
highspeed cable. My 'world' changed from the Atari Roundtables at GEnie
to the internet and usenet.

The 'vulture' Register surprisingly disagrees w/ the analysis by the
'father' of OS/2's msg.
--
Mike Easter
Mike Easter
2025-01-06 01:45:24 UTC
Reply
Permalink
Post by Mike Easter
There's a worthwhile article in The Register today stemming from a
'95 usenet message about OS/2 from a guy who wrote a book about it.
I forgot the link again.

https://www.theregister.com/2025/01/05/os2_flopped_reason/

That article goes on and on about how retarded the dev was, as well as
the hardware around Intel -286 and -386 in '86 and '87 during OS/2 dev
and W 3 years.

But *my* Motorola 68000 w/ 16/32bit had been around since '79, and all
kinds of OS were liking it by the mid 80s.
Post by Mike Easter
By the mid-1980s, falling production cost made the 68000 viable for
use in personal computers starting with the Apple Lisa and
Macintosh, and followed by the Amiga, Atari ST, and X68000.
The Register article seems oblivious to that dev.
Post by Mike Easter
Video game manufacturers used the 68000 as the backbone of many
arcade games and home game consoles: Atari's Food Fight, from 1982,
was one of the first 68000-based arcade games. Others included Sega's
System 16, Capcom's CP System and CPS-2, and SNK's Neo Geo.
In the '86-'95 era, I was fine w/ my graphical interface and networked 2
Atari STs together and used them in a small office; word processing, dot
matrix printing, database management.

When W95 came out along w/ broadband connectivity, my usage was all
personal.
--
Mike Easter
Mike Easter
2025-01-06 03:29:50 UTC
Reply
Permalink
A youthful Marie Osmond /image/ is busily making current TV ads I see.

The 'real' MO is 65 y/o.

It's magic.
--
Mike Easter
David
2025-01-06 09:14:50 UTC
Reply
Permalink
Post by Mike Easter
A youthful Marie Osmond /image/ is busily making current TV ads I see.
The 'real' MO is 65 y/o.
It's magic.
A link would have been useful! ;-)
Mike Easter
2025-01-08 18:56:20 UTC
Reply
Permalink
Today's CQ:

XAQGOEA XAF RACKK GN
JFRFIHFQ XAF FZQKL MCDXFQ
IGZDW. HOX CX'W XAZX
PZDOZQL MCDJ XAZX QZXXKFW
GKJ HGDFW. - PGAD NZRFDJZ


.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Through the chill of December the early winter moans, but it's that
January wind that rattles our bones.
John Facenda

Solving: the, through, December, early
broadcaster, sports announcer, news anchor, disc jockey, radio personality
--
Mike Easter
Mike Easter
2025-01-09 18:02:46 UTC
Reply
Permalink
Today's CQ:

 HZUE V WVE OQVNQO PXQ QP
 CXTRJ V HPNRJ, ZU OQVNQO
 YTNOQ HTQZ ZTWOURY.
 -- RVEKOQPE ZXKZUO

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

When a man starts out to build a world, he starts first with himself.
Langston Hughes

Solving: when a man, he, with himself, starts out to
American poet, social activist, novelist, playwright, and columnist
LH has an interesting wp bio.
--
Mike Easter
Mike Easter
2025-01-10 18:14:48 UTC
Reply
Permalink
Today's CQ:

 PNI'L FWFO BJMF PFAHCHNIC
 VJCFP NI DFJO. BJMF
 PFAHCHNIC VJCFP NI GNQF
 JIP QNCCHVHZHLK.
 -- BHAGFZZF NVJBJ

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Don't ever make decisions based on fear. Make decisions based on hope
and possibilities.
Michelle Obama

Solving: don't ever, MO, make decisions

I recommend MO's wp bio, particularly the Princeton/Harvard/law firm part.
--
Mike Easter
Mike Easter
2025-01-10 18:36:04 UTC
Reply
Permalink
I only recently became aware of the turmoil in Canadian politics,
apparently somewhat influenced by the election of Trump in the .us.

First, the 'right hand' (wo)man Freeland resigned as deputy PM, which
was associated w/ a 'wave' of resignations of the PM's cabinet. Now
Trudeau himself has resigned as PM and as leader of his Liberal Party
and said that the Gov. General would 'prorogue' Parliament until the
next party leadership election. The wp tries to explain to me what that
means for parliament.
--
Mike Easter
Mike Easter
2025-01-11 19:18:11 UTC
Reply
Permalink
Today's CQ:

Z JXVB SCZY AZPSLX GL
OLPSIL VPE TZPE -- V
YLVYRP RD XLYS DXRQ SCL
ACLLI RD SCL QZPE. -- MRCP
OLEELY

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

I pray this winter be gentle and kind - a season of rest from the wheel
of the mind.
John Geddes

Solving: the, I, a, John, this winter be

The JG of the quote doesn't have a wp article; he's an author, and...
John Geddes fought in the Falklands War with the Parachute Regiment
and saw action in the ferocious battle at Wireless Ridge as well as
at Goose Green. He was then selected for the SAS where he served in
Air Troop with distinction. He is a veteran of covert operations
worldwide including the Balkans, Northern Ireland and Africa. His
first book, Highway to Hell, about his mercenary adventures in Iraq,
was published by Century in 2006.
--
Mike Easter
Mike Easter
2025-01-12 17:26:19 UTC
Reply
Permalink
Sunday cryptoquip:

  BE F EDOFWD YTBYJDH NRQG YCRWPH'G QGCL
  GDWWBHU ERHHM NCJDQ FWW PFM WCHU, B'P
    LICAFAWM YFWW TDI F YCODPB-TDH.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

If a female chicken just couldn't stop telling funny jokes all day long,
I'd probably call her a comedi-hen.

Solving: if a, I'd, call, couldn't, chicken
--
Mike Easter
Mike Easter
2025-01-12 17:36:48 UTC
Reply
Permalink
This is for the coders out there; if it is of sufficient interest that
it should have a new subject thread, go for it.

On uncommon occasions, the jumble puzzle has me perplexed after I've
gotten all of the letters and I'm 'growing tired' of trying to get a
toehold on the final answer solution which is based on the graphic.

Then I go to the jumble solver and put in the letters (only up to 15,
that is a limitation) and the solver provides me w/ a wealth of words
grouped into bunches based on how many letters per bunch.

That isn't actually a 'solution' but it is a big help, because then I
can find /some/ word that gives me a toe-hold to solve the rest.

My coder question is; not for the 'code' per se, but for the concept or
framework of how you would code such a function.

That is, let us say that you have a giant word list w/ 'every' word in a
very big dictionary, because I see some 'strange' and uncommon words pop
out of that tool. Now what is the 'theory' of how to write your code to
sort the 15 given letters into groups which match the words in the wordlist?

If you want to see an example here's the site and some letters:
https://jumblesolver.me/solve

suvmittnedeonsn
--
Mike Easter
Steve Carroll
2025-01-12 18:50:46 UTC
Reply
Permalink
Post by Mike Easter
This is for the coders out there; if it is of sufficient interest that
it should have a new subject thread, go for it.
On uncommon occasions, the jumble puzzle has me perplexed after I've
gotten all of the letters and I'm 'growing tired' of trying to get a
toehold on the final answer solution which is based on the graphic.
Then I go to the jumble solver and put in the letters (only up to 15,
that is a limitation) and the solver provides me w/ a wealth of words
grouped into bunches based on how many letters per bunch.
That isn't actually a 'solution' but it is a big help, because then I
can find /some/ word that gives me a toe-hold to solve the rest.
My coder question is; not for the 'code' per se, but for the concept or
framework of how you would code such a function.
That is, let us say that you have a giant word list w/ 'every' word in a
very big dictionary, because I see some 'strange' and uncommon words pop
out of that tool. Now what is the 'theory' of how to write your code to
sort the 15 given letters into groups which match the words in the wordlist?
https://jumblesolver.me/solve
suvmittnedeonsn
While you said 'no code', I'm not sure I can effectively explain it that
way (I may not be able to anyway <shrug>). I wrote the following back in
COLA some years ago after a guy explained how to use prime numbers (I'm
terrible at math... I'd never have thought of using primes like this):

const myMap = new Map()

const setup = () => {
const data = {"act": 1,"cat": 1,"players": 1,"replays": 1,"sparely": 1,"splayer": 1,"pyrales": 1,"asperly": 1,"parleys": 1,"nope": 1,"open": 1,"peon": 1,"pone": 1,"stop": 1,"post": 1,"opts": 1,"pots": 1,"tops": 1}


const pList = new Map(Object.entries({ a:2,b:3,c:5,d:7,e:11,f:13,g:17,h:19,i:23,j:29,k:31,l:37,m:41,n:43,o:47,p:53,q:59,r:61,s:67,t:71,u:73,v:79,w:83,x:89,y:97,z:101 }))

const getProduct = (str) => {
const tmpArr = []
for (let i=0; i<str.length; i++) if (pList.has(str[i])) tmpArr.push(pList.get(str[i]))
return tmpArr.reduce((a,b) => a*b)
}

for(item in data) {
let tmp = 0
tmp = getProduct(item)
myMap.set(item, tmp)
}
return myMap
}
setup()

const findAnagramsFor = word => {
// const hrstart = process.hrtime()
myMap.has(word) ? myMap.forEach((item, key) => item === myMap.get(word) && word !== key ? console.log(key) : null) : console.log('Not found')
// const hrend = process.hrtime(hrstart)
// console.info('Search execution time (hr): %ds %dms', hrend[0], hrend[1] / 1000000)
}

Basically, primes are used to 'encode' words where each letter is
assigned a prime (i.e., 'a' = 2, 'b' = 3) and the products are
calculated... those that match are returned. Example:

So for "stop" it's: 67 * 71 * 47 * 53 = 1077169

And for "tops" it's: 71 * 47 * 53 * 67 = 1077169

I commented out the measuring as you don't need it (and it isn't likely
to work for you unless you know what env to use it in). FWIW, a JS Map
object is basically 'a unique array' of sorts and, when used with Map's
'has' method, the retrieval is much faster than array access.

(this code can be further optimized/refactored, especially to be more
'readable')

In any event, I would take that idea and hit something like a thesaurus
API. That said, looking at what Jumble returns, I'm not sure that'd do
the 'same' trick but I'd start there, at least.
Steve Carroll
2025-01-12 19:01:00 UTC
Reply
Permalink
Post by Steve Carroll
In any event, I would take that idea and hit something like a thesaurus
API. That said, looking at what Jumble returns, I'm not sure that'd do
the 'same' trick but I'd start there, at least.
It occurs to me that I can use and extension of the same idea...
extending it using other data structures to eventually have word lengths
incorporated. I'm not exactly sure how I'd code it but it seems it'd get
to a place closer to what Jumble does... and, this time, I'm adhering to
the 'no code' policy ;)
David
2025-01-12 20:13:31 UTC
Reply
Permalink
Post by Steve Carroll
Post by Steve Carroll
In any event, I would take that idea and hit something like a thesaurus
API. That said, looking at what Jumble returns, I'm not sure that'd do
the 'same' trick but I'd start there, at least.
It occurs to me that I can use and extension of the same idea...
extending it using other data structures to eventually have word lengths
incorporated. I'm not exactly sure how I'd code it but it seems it'd get
to a place closer to what Jumble does... and, this time, I'm adhering to
the 'no code' policy ;)
This code is designed to identify anagrams of a given word. Here's a
detailed explanation of what it does:

### 1. **Initial Setup**
```javascript
const myMap = new Map();
```
- `myMap` is initialized as an empty `Map` object. It will eventually
store words as keys and a unique numeric "product" as values.

### 2. **The `setup` Function**
The `setup` function does the following:

#### a. **Data and Prime Mapping**
```javascript
const data = {"act": 1,"cat": 1,"players": 1,"replays": 1,"sparely":
1,"splayer": 1,"pyrales": 1,"asperly": 1,"parleys": 1,"nope": 1,"open":
1,"peon": 1,"pone": 1,"stop": 1,"post": 1,"opts": 1,"pots": 1,"tops": 1};
```
- `data` contains words (e.g., "act", "cat") with placeholder values.
These words will be processed for their anagrams.

```javascript
const pList = new Map(Object.entries({
a:2,b:3,c:5,d:7,e:11,f:13,g:17,h:19,i:23,j:29,k:31,l:37,m:41,n:43,o:47,p:53,q:59,r:61,s:67,t:71,u:73,v:79,w:83,x:89,y:97,z:101
}));
```
- `pList` maps each letter of the alphabet to a unique prime number. For
example, `a` maps to `2`, `b` to `3`, `c` to `5`, and so on.

#### b. **The `getProduct` Function**
```javascript
const getProduct = (str) => {
const tmpArr = [];
for (let i = 0; i < str.length; i++) if (pList.has(str[i]))
tmpArr.push(pList.get(str[i]));
return tmpArr.reduce((a, b) => a * b);
};
```
- This function calculates a "unique product" for each word by:
1. Extracting the prime number corresponding to each character in the
word.
2. Multiplying all these prime numbers together.
- The result is a unique number for each combination of letters,
regardless of their order (e.g., `act` and `cat` will have the same
product).

#### c. **Populating `myMap`**
```javascript
for (item in data) {
let tmp = 0;
tmp = getProduct(item);
myMap.set(item, tmp);
}
```
- For each word in `data`, its unique product is calculated using
`getProduct` and stored in `myMap`.
- Example:
- For `"act"`, the product is `2 * 5 * 71 = 710`.
- For `"cat"`, the product is also `710`.

### 3. **Finding Anagrams**
```javascript
const findAnagramsFor = word => {
myMap.has(word)
? myMap.forEach((item, key) => item === myMap.get(word) && word
!== key ? console.log(key) : null)
: console.log('Not found');
};
```
- The function `findAnagramsFor` finds anagrams of a given word:
1. It checks if `myMap` contains the given word.
2. If
Brock McNuggets
2025-01-12 19:22:15 UTC
Reply
Permalink
Post by Steve Carroll
In any event, I would take that idea and hit something like a thesaurus
API. That said, looking at what Jumble returns, I'm not sure that'd do
the 'same' trick but I'd start there, at least.
What are you looking to do with a thesaurus? I am sure it is not the same, but
I can select pretty much any word from any app and have it be looked up at
thesaurus.com

About as fancy as most of my coding goes. LOL!
--
Specialist in unnecessary details and overcomplicated solutions.
David
2025-01-12 20:08:15 UTC
Reply
Permalink
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll

*WHY* did you do that?!!!
--
David
Brock McNuggets
2025-01-12 20:46:05 UTC
Reply
Permalink
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.

Saw ME posting and did not realize I clicked on a post that was marked read.

I shall not be looking at his reply. Did not even realize that was his post.

But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
--
Specialist in unnecessary details and overcomplicated solutions.
%
2025-01-12 22:00:23 UTC
Reply
Permalink
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Saw ME posting and did not realize I clicked on a post that was marked read.
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
but you are
Brock McNuggets
2025-01-13 00:36:05 UTC
Reply
Permalink
Post by %
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Saw ME posting and did not realize I clicked on a post that was marked read.
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
but you are
In his demented brain.
--
Specialist in unnecessary details and overcomplicated solutions.
%
2025-01-13 00:50:45 UTC
Reply
Permalink
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Saw ME posting and did not realize I clicked on a post that was marked read.
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
but you are
In his demented brain.
it sure is fun from a spectators point
Brock McNuggets
2025-01-13 01:11:07 UTC
Reply
Permalink
Post by %
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Saw ME posting and did not realize I clicked on a post that was marked read.
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
but you are
In his demented brain.
it sure is fun from a spectators point
Carroll cannot stop himself from being an ass.
--
Specialist in unnecessary details and overcomplicated solutions.
%
2025-01-13 01:15:16 UTC
Reply
Permalink
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Saw ME posting and did not realize I clicked on a post that was marked read.
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
but you are
In his demented brain.
it sure is fun from a spectators point
Carroll cannot stop himself from being an ass.
but he can limit how big
Brock McNuggets
2025-01-13 01:46:59 UTC
Reply
Permalink
Post by %
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Saw ME posting and did not realize I clicked on a post that was marked read.
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
but you are
In his demented brain.
it sure is fun from a spectators point
Carroll cannot stop himself from being an ass.
but he can limit how big
Do you have evidence of this?
--
Specialist in unnecessary details and overcomplicated solutions.
%
2025-01-13 02:48:49 UTC
Reply
Permalink
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Saw ME posting and did not realize I clicked on a post that was marked read.
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
but you are
In his demented brain.
it sure is fun from a spectators point
Carroll cannot stop himself from being an ass.
but he can limit how big
Do you have evidence of this?
yes
David
2025-01-12 23:34:13 UTC
Reply
Permalink
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Haha! Of course it was! ;-)
Post by Brock McNuggets
Saw ME posting and did not realize I clicked on a post that was marked read.
ME has been very helpful to me over the last week or so. We've been
having discussions here:- alt.os.linux.mint
Post by Brock McNuggets
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
It matters not one jot. SC has been a complete arsehole towards you ever
since I invited you here .... and he followed. He's not 'normal' so I'll
continue to help him whenever I can. Sadly, he doesn't really listen to
what I say, but that is his loss.

Think about how you might be of help to the stricken folk in Los
Angeles. Imagine how YOU would be feeling right now if you had lost
EVERYTHING which you owned. It makes me shudder just to think about it.

Stay safe and well, my friend. :-D
--
David
Steve Carroll
2025-01-13 00:21:08 UTC
Reply
Permalink
Post by David
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Haha! Of course it was! ;-)
Exactly... no one believes that BS.
Post by David
It matters not one jot. SC has been a complete arsehole towards you
As have many... from his POV... who have 'done what he does'.
Post by David
ever since I invited you here .... and he followed.
Stop lying, I wouldn't even know where "here" is if you hadn't 'invited'
me.
Brock McNuggets
2025-01-13 00:34:54 UTC
Reply
Permalink
Post by David
Post by Brock McNuggets
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
It was an error.
Haha! Of course it was! ;-)
It was. I thought I was replying to ME. The content had no random attacks or
obvious lies... very unlike Carroll's style.
Post by David
Post by Brock McNuggets
Saw ME posting and did not realize I clicked on a post that was marked read.
ME has been very helpful to me over the last week or so. We've been
having discussions here:- alt.os.linux.mint
Excellent to hear. He has a lot of wisdom.
Post by David
Post by Brock McNuggets
I shall not be looking at his reply. Did not even realize that was his post.
But, damn, when I note I have not responded to him in X months or years he
will point to that post and pretend I am reading / replying to his posts.
It matters not one jot. SC has been a complete arsehole towards you ever
since I invited you here .... and he followed. He's not 'normal' so I'll
continue to help him whenever I can. Sadly, he doesn't really listen to
what I say, but that is his loss.
I wish EVERYONE would just stop giving him any air. Let him rely on Pothead,
Skeeter, and other trolls to get any attention.
Post by David
Think about how you might be of help to the stricken folk in Los
Angeles. Imagine how YOU would be feeling right now if you had lost
EVERYTHING which you owned. It makes me shudder just to think about it.
It is sad.
Post by David
Stay safe and well, my friend. :-D
Thanks. You, too.
--
Specialist in unnecessary details and overcomplicated solutions.
Steve Carroll
2025-01-12 21:19:04 UTC
Reply
Permalink
Post by David
On 12/01/2025 19:22, Brock McNuggets responded to Steve Carroll
*WHY* did you do that?!!!
You know why so cut the act. But he made a good point, I'm mistaken in
what I thought was being returned. At least he stuck to 'tech' this time!
Apd
2025-01-12 21:06:54 UTC
Reply
Permalink
[...]
Post by Steve Carroll
Post by Mike Easter
That is, let us say that you have a giant word list w/ 'every' word in a
very big dictionary, because I see some 'strange' and uncommon words pop
out of that tool. Now what is the 'theory' of how to write your code to
sort the 15 given letters into groups which match the words in the wordlist?
[...]
Post by Steve Carroll
While you said 'no code', I'm not sure I can effectively explain it that
way (I may not be able to anyway <shrug>). I wrote the following back in
COLA some years ago after a guy explained how to use prime numbers (I'm
[...]
Post by Steve Carroll
Basically, primes are used to 'encode' words where each letter is
assigned a prime (i.e., 'a' = 2, 'b' = 3) and the products are
So for "stop" it's: 67 * 71 * 47 * 53 = 1077169
And for "tops" it's: 71 * 47 * 53 * 67 = 1077169
Use of primes is a neat idea.

Here's another way to compare two strings, and a simple explanation:
<https://medium.com/@dio.hamidou/how-to-solve-the-anagram-problem-fc08fe46431c>

The core of it:
//- - -
for (let char in str1) {
indexOfChar = str2.indexOf(str1[char]);
if (indexOfChar === -1) return false;
}
return true;
//- - -

You have to go through your dictionary comparing words of the same
length to the letters you have. Then you have to shorten your letter
group by one and repeat the process again and again, removing a
different letter each time. Now shorten the group by one more letter
and repeat until you reach a single letter. A recursive procedure is
indicated. There'll be an optimal way to do this and also to organise
your dictionary for speedy access. Code will also be needed to try
every letter in the alphabet where spaces or '?' wildcards are found.
Steve Carroll
2025-01-12 21:31:30 UTC
Reply
Permalink
Post by Apd
[...]
Post by Steve Carroll
Post by Mike Easter
That is, let us say that you have a giant word list w/ 'every' word in a
very big dictionary, because I see some 'strange' and uncommon words pop
out of that tool. Now what is the 'theory' of how to write your code to
sort the 15 given letters into groups which match the words in the wordlist?
[...]
Post by Steve Carroll
While you said 'no code', I'm not sure I can effectively explain it that
way (I may not be able to anyway <shrug>). I wrote the following back in
COLA some years ago after a guy explained how to use prime numbers (I'm
[...]
Post by Steve Carroll
Basically, primes are used to 'encode' words where each letter is
assigned a prime (i.e., 'a' = 2, 'b' = 3) and the products are
So for "stop" it's: 67 * 71 * 47 * 53 = 1077169
And for "tops" it's: 71 * 47 * 53 * 67 = 1077169
Use of primes is a neat idea.
I got it from DFS.
Post by Apd
//- - -
for (let char in str1) {
indexOfChar = str2.indexOf(str1[char]);
if (indexOfChar === -1) return false;
}
return true;
//- - -
Interesting.
Post by Apd
You have to go through your dictionary comparing words of the same
length to the letters you have. Then you have to shorten your letter
group by one and repeat the process again and again, removing a
different letter each time. Now shorten the group by one more letter
and repeat until you reach a single letter. A recursive procedure is
indicated.
I haven't done any in my 'general' coding, just a little to 'demo' the
idea in my head.
Post by Apd
There'll be an optimal way to do this and also to organise
your dictionary for speedy access.
Seems a Map object would be a fast way in JS.
Post by Apd
Code will also be needed to try every letter in the alphabet where
spaces or '?' wildcards are found.
Apd
2025-01-12 22:45:10 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
You have to go through your dictionary comparing words of the same
length to the letters you have. Then you have to shorten your letter
group by one and repeat the process again and again, removing a
different letter each time. Now shorten the group by one more letter
and repeat until you reach a single letter. A recursive procedure is
indicated.
I haven't done any in my 'general' coding, just a little to 'demo' the
idea in my head.
Post by Apd
There'll be an optimal way to do this and also to organise
your dictionary for speedy access.
Seems a Map object would be a fast way in JS.
An alphabetically ordered dictionary wouldn't be needed. I'm thinking
a 2D array where one index holds every word of the same length.

for (let word in dict[theString.length]) {
// check every same-length word
}
Steve Carroll
2025-01-12 22:50:13 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
[...]
Post by Steve Carroll
Post by Mike Easter
That is, let us say that you have a giant word list w/ 'every' word in a
very big dictionary, because I see some 'strange' and uncommon words pop
out of that tool. Now what is the 'theory' of how to write your code to
sort the 15 given letters into groups which match the words in the wordlist?
[...]
Post by Steve Carroll
While you said 'no code', I'm not sure I can effectively explain it that
way (I may not be able to anyway <shrug>). I wrote the following back in
COLA some years ago after a guy explained how to use prime numbers (I'm
[...]
Post by Steve Carroll
Basically, primes are used to 'encode' words where each letter is
assigned a prime (i.e., 'a' = 2, 'b' = 3) and the products are
So for "stop" it's: 67 * 71 * 47 * 53 = 1077169
And for "tops" it's: 71 * 47 * 53 * 67 = 1077169
Use of primes is a neat idea.
I got it from DFS.
Post by Apd
//- - -
for (let char in str1) {
indexOfChar = str2.indexOf(str1[char]);
if (indexOfChar === -1) return false;
}
return true;
//- - -
Interesting.
I think the above is the kind of thing people who (actually) learned to
program before all these 'fancy methods' came out would use.

I'm working on a 'fancy methods' version ;)

It will use: const data = dict('/usr/share/dict/words')

And it'll obviously require node so to be Jumble-like it'd need a
front-end... I'm not going to mess with that.
Steve Carroll
2025-01-13 00:51:49 UTC
Reply
Permalink
Post by Steve Carroll
Post by Steve Carroll
Post by Apd
[...]
Post by Steve Carroll
Post by Mike Easter
That is, let us say that you have a giant word list w/ 'every' word in a
very big dictionary, because I see some 'strange' and uncommon words pop
out of that tool. Now what is the 'theory' of how to write your code to
sort the 15 given letters into groups which match the words in the wordlist?
[...]
Post by Steve Carroll
While you said 'no code', I'm not sure I can effectively explain it that
way (I may not be able to anyway <shrug>). I wrote the following back in
COLA some years ago after a guy explained how to use prime numbers (I'm
[...]
Post by Steve Carroll
Basically, primes are used to 'encode' words where each letter is
assigned a prime (i.e., 'a' = 2, 'b' = 3) and the products are
So for "stop" it's: 67 * 71 * 47 * 53 = 1077169
And for "tops" it's: 71 * 47 * 53 * 67 = 1077169
Use of primes is a neat idea.
I got it from DFS.
Post by Apd
//- - -
for (let char in str1) {
indexOfChar = str2.indexOf(str1[char]);
if (indexOfChar === -1) return false;
}
return true;
//- - -
Interesting.
I think the above is the kind of thing people who (actually) learned to
program before all these 'fancy methods' came out would use.
I'm working on a 'fancy methods' version ;)
It will use: const data = dict('/usr/share/dict/words')
And it'll obviously require node so to be Jumble-like it'd need a
front-end... I'm not going to mess with that.
I have two versions, the first one requires node (written because I
wanted access to a decent sized dictionary). The other (which has the
node stuff stripped out) can be run in the Console panel of a browser's
dev tools. They don't use the method you showed above, nor do they use
recursion or primes... not even a Map object or a Set... just looping
and it seems 'fast enough'. I've no doubt it can be optimized but I
think it'd serve ME's purpose 'as is' (were there front end code). On
that... given what when we were talking about back in the 'YARG era',
when ME was 'kinda, sorta' poo poo-ing some of the things put forth as
'cheating' (and he was right, which is what caused me to write mine the
way I did), what he's asking for now seems like a cheat of sorts. That
said, it's his cheat to have (of course he already has Jumble). In any
event, here's the browser version minus front end code (who knows,
maybe Glasser will surprise us with that?):

---
const dict = [
// your dictionary goes here
]


const letterCount = (str) => {
const counts = {}
for (const char of str) {
counts[char] = (counts[char] || 0) + 1
}
return counts
}

const potentialWord = (word, inputCounts) => {
const wordCounts = letterCount(word)
for (const char in wordCounts) {
if (!inputCounts[char] || wordCounts[char] > inputCounts[char]) {
return false
}
}
return true
}

const findByLength = (inputWord, dictionary) => {
const inputCounts = letterCount(inputWord)
const results = {}

for (const word of dictionary) {
if (potentialWord(word, inputCounts)) {
const len = word.length
if (!results[len]) {
results[len] = []
}
results[len].push(word)
}
}

return results
}

const findWords = (input) => {
if (!input) {
console.log('Provide a word and try again')
return
}

const result = findByLength(input, dict)

for (const len in result) {
console.log(`${len}-letter words:`, result[len])
}
}
---

Notes to anyone reading:

Regarding the dictionary, for my old anagram (single word) I ran ~7MB in
an HTML file (the dict was *in* the file), once loaded (didn't take that
long) it ran fine. As usual, I didn't do extensive testing and, much to
Apd's chagrin, it's devoid of things like comments and try/catch blocks
;) But as far as I can tell, it works.
%
2025-01-13 01:00:29 UTC
Reply
Permalink
Post by Steve Carroll
Post by Steve Carroll
Post by Steve Carroll
Post by Apd
[...]
Post by Steve Carroll
Post by Mike Easter
That is, let us say that you have a giant word list w/ 'every' word in a
very big dictionary, because I see some 'strange' and uncommon words pop
out of that tool. Now what is the 'theory' of how to write your code to
sort the 15 given letters into groups which match the words in the wordlist?
[...]
Post by Steve Carroll
While you said 'no code', I'm not sure I can effectively explain it that
way (I may not be able to anyway <shrug>). I wrote the following back in
COLA some years ago after a guy explained how to use prime numbers (I'm
[...]
Post by Steve Carroll
Basically, primes are used to 'encode' words where each letter is
assigned a prime (i.e., 'a' = 2, 'b' = 3) and the products are
So for "stop" it's: 67 * 71 * 47 * 53 = 1077169
And for "tops" it's: 71 * 47 * 53 * 67 = 1077169
Use of primes is a neat idea.
I got it from DFS.
Post by Apd
//- - -
for (let char in str1) {
indexOfChar = str2.indexOf(str1[char]);
if (indexOfChar === -1) return false;
}
return true;
//- - -
Interesting.
I think the above is the kind of thing people who (actually) learned to
program before all these 'fancy methods' came out would use.
I'm working on a 'fancy methods' version ;)
It will use: const data = dict('/usr/share/dict/words')
And it'll obviously require node so to be Jumble-like it'd need a
front-end... I'm not going to mess with that.
I have two versions, the first one requires node (written because I
wanted access to a decent sized dictionary). The other (which has the
node stuff stripped out) can be run in the Console panel of a browser's
dev tools. They don't use the method you showed above, nor do they use
recursion or primes... not even a Map object or a Set... just looping
and it seems 'fast enough'. I've no doubt it can be optimized but I
think it'd serve ME's purpose 'as is' (were there front end code). On
that... given what when we were talking about back in the 'YARG era',
when ME was 'kinda, sorta' poo poo-ing some of the things put forth as
'cheating' (and he was right, which is what caused me to write mine the
way I did), what he's asking for now seems like a cheat of sorts. That
said, it's his cheat to have (of course he already has Jumble). In any
event, here's the browser version minus front end code (who knows,
---
const dict = [
// your dictionary goes here
]
const letterCount = (str) => {
const counts = {}
for (const char of str) {
counts[char] = (counts[char] || 0) + 1
}
return counts
}
const potentialWord = (word, inputCounts) => {
const wordCounts = letterCount(word)
for (const char in wordCounts) {
if (!inputCounts[char] || wordCounts[char] > inputCounts[char]) {
return false
}
}
return true
}
const findByLength = (inputWord, dictionary) => {
const inputCounts = letterCount(inputWord)
const results = {}
for (const word of dictionary) {
if (potentialWord(word, inputCounts)) {
const len = word.length
if (!results[len]) {
results[len] = []
}
results[len].push(word)
}
}
return results
}
const findWords = (input) => {
if (!input) {
console.log('Provide a word and try again')
return
}
const result = findByLength(input, dict)
for (const len in result) {
console.log(`${len}-letter words:`, result[len])
}
}
---
Regarding the dictionary, for my old anagram (single word) I ran ~7MB in
an HTML file (the dict was *in* the file), once loaded (didn't take that
long) it ran fine. As usual, I didn't do extensive testing and, much to
Apd's chagrin, it's devoid of things like comments and try/catch blocks
;) But as far as I can tell, it works.
which is more than we can say for you
Brock McNuggets
2025-01-13 01:10:43 UTC
Reply
Permalink
Post by %
Post by Steve Carroll
Post by Steve Carroll
Post by Steve Carroll
Post by Apd
[...]
Post by Steve Carroll
Post by Mike Easter
That is, let us say that you have a giant word list w/ 'every' word in a
very big dictionary, because I see some 'strange' and uncommon words pop
out of that tool. Now what is the 'theory' of how to write your code to
sort the 15 given letters into groups which match the words in the wordlist?
[...]
Post by Steve Carroll
While you said 'no code', I'm not sure I can effectively explain it that
way (I may not be able to anyway <shrug>). I wrote the following back in
COLA some years ago after a guy explained how to use prime numbers (I'm
[...]
Post by Steve Carroll
Basically, primes are used to 'encode' words where each letter is
assigned a prime (i.e., 'a' = 2, 'b' = 3) and the products are
So for "stop" it's: 67 * 71 * 47 * 53 = 1077169
And for "tops" it's: 71 * 47 * 53 * 67 = 1077169
Use of primes is a neat idea.
I got it from DFS.
Post by Apd
//- - -
for (let char in str1) {
indexOfChar = str2.indexOf(str1[char]);
if (indexOfChar === -1) return false;
}
return true;
//- - -
Interesting.
I think the above is the kind of thing people who (actually) learned to
program before all these 'fancy methods' came out would use.
I'm working on a 'fancy methods' version ;)
It will use: const data = dict('/usr/share/dict/words')
And it'll obviously require node so to be Jumble-like it'd need a
front-end... I'm not going to mess with that.
I have two versions, the first one requires node (written because I
wanted access to a decent sized dictionary). The other (which has the
node stuff stripped out) can be run in the Console panel of a browser's
dev tools. They don't use the method you showed above, nor do they use
recursion or primes... not even a Map object or a Set... just looping
and it seems 'fast enough'. I've no doubt it can be optimized but I
think it'd serve ME's purpose 'as is' (were there front end code). On
that... given what when we were talking about back in the 'YARG era',
when ME was 'kinda, sorta' poo poo-ing some of the things put forth as
'cheating' (and he was right, which is what caused me to write mine the
way I did), what he's asking for now seems like a cheat of sorts. That
said, it's his cheat to have (of course he already has Jumble). In any
event, here's the browser version minus front end code (who knows,
---
const dict = [
// your dictionary goes here
]
const letterCount = (str) => {
const counts = {}
for (const char of str) {
counts[char] = (counts[char] || 0) + 1
}
return counts
}
const potentialWord = (word, inputCounts) => {
const wordCounts = letterCount(word)
for (const char in wordCounts) {
if (!inputCounts[char] || wordCounts[char] > inputCounts[char]) {
return false
}
}
return true
}
const findByLength = (inputWord, dictionary) => {
const inputCounts = letterCount(inputWord)
const results = {}
for (const word of dictionary) {
if (potentialWord(word, inputCounts)) {
const len = word.length
if (!results[len]) {
results[len] = []
}
results[len].push(word)
}
}
return results
}
const findWords = (input) => {
if (!input) {
console.log('Provide a word and try again')
return
}
const result = findByLength(input, dict)
for (const len in result) {
console.log(`${len}-letter words:`, result[len])
}
}
---
Regarding the dictionary, for my old anagram (single word) I ran ~7MB in
an HTML file (the dict was *in* the file), once loaded (didn't take that
long) it ran fine. As usual, I didn't do extensive testing and, much to
Apd's chagrin, it's devoid of things like comments and try/catch blocks
;) But as far as I can tell, it works.
which is more than we can say for you
LOL!
--
Specialist in unnecessary details and overcomplicated solutions.
Steve Carroll
2025-01-13 01:26:55 UTC
Reply
Permalink
Post by %
In any event, here's the browser version minus front end code (who
(snip)
Post by %
But as far as I can tell, it works.
which is more than we can say for you
LOL!
Said two idiots who were unable to address the topic ME raised to the
guy who did. Notably, you didn't surprise anyone ;)

(how many times have I "shown" how to create a page with inputs?)
%
2025-01-13 01:35:30 UTC
Reply
Permalink
Post by Steve Carroll
Post by %
In any event, here's the browser version minus front end code (who
(snip)
Post by %
But as far as I can tell, it works.
which is more than we can say for you
LOL!
Said two idiots who were unable to address the topic ME raised to the
guy who did. Notably, you didn't surprise anyone ;)
(how many times have I "shown" how to create a page with inputs?)
good thing i'm not here to do anything to anyone ,
which highlights another demonstration of your emotional paranoia
Brock McNuggets
2025-01-13 01:46:42 UTC
Reply
Permalink
Post by %
Post by Steve Carroll
Post by %
In any event, here's the browser version minus front end code (who
(snip)
Post by %
But as far as I can tell, it works.
which is more than we can say for you
LOL!
Said two idiots who were unable to address the topic ME raised to the
guy who did. Notably, you didn't surprise anyone ;)
(how many times have I "shown" how to create a page with inputs?)
good thing i'm not here to do anything to anyone ,
which highlights another demonstration of your emotional paranoia
Carroll is always trying to control others. Damn. He is really pathetic.
--
Specialist in unnecessary details and overcomplicated solutions.
%
2025-01-13 02:51:29 UTC
Reply
Permalink
Post by Brock McNuggets
Post by %
Post by Steve Carroll
Post by %
In any event, here's the browser version minus front end code (who
(snip)
Post by %
But as far as I can tell, it works.
which is more than we can say for you
LOL!
Said two idiots who were unable to address the topic ME raised to the
guy who did. Notably, you didn't surprise anyone ;)
(how many times have I "shown" how to create a page with inputs?)
good thing i'm not here to do anything to anyone ,
which highlights another demonstration of your emotional paranoia
Carroll is always trying to control others. Damn. He is really pathetic.
he has childhood issues he doesn't talk about that make him this way
Brock McNuggets
2025-01-13 15:08:26 UTC
Reply
Permalink
Post by %
Post by Brock McNuggets
Post by %
Post by Steve Carroll
Post by %
In any event, here's the browser version minus front end code (who
(snip)
Post by %
But as far as I can tell, it works.
which is more than we can say for you
LOL!
Said two idiots who were unable to address the topic ME raised to the
guy who did. Notably, you didn't surprise anyone ;)
(how many times have I "shown" how to create a page with inputs?)
good thing i'm not here to do anything to anyone ,
which highlights another demonstration of your emotional paranoia
Carroll is always trying to control others. Damn. He is really pathetic.
he has childhood issues he doesn't talk about that make him this way
Seems VERY likely. At least Gremlin has, at times, opened up with his
challenges.
--
Specialist in unnecessary details and overcomplicated solutions.
%
2025-01-13 15:11:03 UTC
Reply
Permalink
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by %
Post by Steve Carroll
Post by %
In any event, here's the browser version minus front end code (who
(snip)
Post by %
But as far as I can tell, it works.
which is more than we can say for you
LOL!
Said two idiots who were unable to address the topic ME raised to the
guy who did. Notably, you didn't surprise anyone ;)
(how many times have I "shown" how to create a page with inputs?)
good thing i'm not here to do anything to anyone ,
which highlights another demonstration of your emotional paranoia
Carroll is always trying to control others. Damn. He is really pathetic.
he has childhood issues he doesn't talk about that make him this way
Seems VERY likely. At least Gremlin has, at times, opened up with his
challenges.
some of the others do too
Brock McNuggets
2025-01-13 15:19:48 UTC
Reply
Permalink
Post by %
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by %
Post by Steve Carroll
Post by %
In any event, here's the browser version minus front end code (who
(snip)
Post by %
But as far as I can tell, it works.
which is more than we can say for you
LOL!
Said two idiots who were unable to address the topic ME raised to the
guy who did. Notably, you didn't surprise anyone ;)
(how many times have I "shown" how to create a page with inputs?)
good thing i'm not here to do anything to anyone ,
which highlights another demonstration of your emotional paranoia
Carroll is always trying to control others. Damn. He is really pathetic.
he has childhood issues he doesn't talk about that make him this way
Seems VERY likely. At least Gremlin has, at times, opened up with his
challenges.
some of the others do too
I have... and of course Carroll uses it against me and lies about it. Likely
one reason he does not open up: he is afraid others will treat him how he
treats others.
--
Specialist in unnecessary details and overcomplicated solutions.
%
2025-01-13 15:24:54 UTC
Reply
Permalink
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by %
Post by Brock McNuggets
Post by %
Post by Steve Carroll
Post by %
In any event, here's the browser version minus front end code (who
(snip)
Post by %
But as far as I can tell, it works.
which is more than we can say for you
LOL!
Said two idiots who were unable to address the topic ME raised to the
guy who did. Notably, you didn't surprise anyone ;)
(how many times have I "shown" how to create a page with inputs?)
good thing i'm not here to do anything to anyone ,
which highlights another demonstration of your emotional paranoia
Carroll is always trying to control others. Damn. He is really pathetic.
he has childhood issues he doesn't talk about that make him this way
Seems VERY likely. At least Gremlin has, at times, opened up with his
challenges.
some of the others do too
I have... and of course Carroll uses it against me and lies about it. Likely
one reason he does not open up: he is afraid others will treat him how he
treats others.
he's a typical usenetter there's 100's like him around
Steve Carroll
2025-01-13 01:22:51 UTC
Reply
Permalink
On 2025-01-13, Steve Carroll <"Steve Carroll"@noone.none> wrote:

By the way, below is the function you want to invoke:

Example: findWords('subservient')
Post by Steve Carroll
const findWords = (input) => {
if (!input) {
console.log('Provide a word and try again')
return
}
const result = findByLength(input, dict)
for (const len in result) {
console.log(`${len}-letter words:`, result[len])
}
}
---
"Hmmm...", seems there's an 'issue' with the output of this code (gulp).

If anyone can spot it then they probably did more testing than I did
(not much). You may not even notice it if the dictionary used is small.

(AFAICT, it doesn't affect anything WRT what the code is used for)
Apd
2025-01-13 12:37:48 UTC
Reply
Permalink
Post by Steve Carroll
I have two versions, the first one requires node (written because I
wanted access to a decent sized dictionary). The other (which has the
node stuff stripped out) can be run in the Console panel of a browser's
dev tools. They don't use the method you showed above, nor do they use
recursion or primes... not even a Map object or a Set... just looping
and it seems 'fast enough'.
The recursion would be needed to mimic the jumble solver page Mike
showed, e.g. given "stop":

4-letter words: stop,post,opts,pots,tops
3-letter words: sop,opt,pot,top,sot
2-letter words: so,to

Then there's the wildcard to consider, e.g. "t?e" can be "tee", "the",
"tie", etc.
Post by Steve Carroll
I've no doubt it can be optimized but I think it'd serve ME's purpose
'as is' (were there front end code).
The extras I just mentioned may be wanted.
Post by Steve Carroll
On that... given what when we were talking about back in the 'YARG era',
when ME was 'kinda, sorta' poo poo-ing some of the things put forth as
'cheating' (and he was right, which is what caused me to write mine the
way I did), what he's asking for now seems like a cheat of sorts. That
said, it's his cheat to have (of course he already has Jumble). In any
event, here's the browser version minus front end code (who knows,
[snip code]

It's more an aid to remembering words as it is. A cheat would be if
you entered your letters and it gave all possible anagrams, including
phrases.
Post by Steve Carroll
Regarding the dictionary, for my old anagram (single word) I ran ~7MB in
an HTML file (the dict was *in* the file), once loaded (didn't take that
long) it ran fine. As usual, I didn't do extensive testing and, much to
Apd's chagrin, it's devoid of things like comments and try/catch blocks
;) But as far as I can tell, it works.
It works well but according to your followup comment, there's an issue
with output. The only one I see is truncation of the array display if
there's many words found. Also, findByLength() is returning an object.
Perhaps you'd use that if accumulating different length words but for
singles I'd return an array instead, like this:

// - - -
const findByLength = (inputWord, dictionary) => {
const inputCounts = letterCount(inputWord)
const results = []

for (const word of dictionary) {
if (potentialWord(word, inputCounts)) {
results.push(word)
}
}
return results
}
// - - -

Then for the output you wouldn't need the loop in findWords(). You
can also use a format specifier to improve how the array is logged:

console.log(`${input.length}-letter words: %s`, result)
Apd
2025-01-13 16:15:31 UTC
Reply
Permalink
Post by Apd
The recursion would be needed to mimic the jumble solver page Mike
showed
Except it isn't! By some magic, when I extend the dictionary it finds
the embedded shorter ones.
Post by Apd
Then there's the wildcard to consider, e.g. "t?e" can be "tee", "the",
"tie", etc.
There's still that to consider
Post by Apd
Perhaps you'd use that if accumulating different length words
Which you are.
Forget that routine.
Post by Apd
Then for the output you wouldn't need the loop in findWords().
You still need it.
Post by Apd
You can also use a format specifier to improve how the array is
Like this:

console.log(`${len}-letter words: %s`, result[len])
Steve Carroll
2025-01-13 18:05:37 UTC
Reply
Permalink
Post by Apd
Post by Apd
The recursion would be needed to mimic the jumble solver page Mike
showed
Except it isn't! By some magic, when I extend the dictionary it finds
the embedded shorter ones.
If I'm reading you properly, yes, they have to be in the dictionary to
be found.
Post by Apd
Post by Apd
Then there's the wildcard to consider, e.g. "t?e" can be "tee", "the",
"tie", etc.
There's still that to consider
I know.
Post by Apd
Post by Apd
Perhaps you'd use that if accumulating different length words
Which you are.
Forget that routine.
Post by Apd
Then for the output you wouldn't need the loop in findWords().
You still need it.
Post by Apd
You can also use a format specifier to improve how the array is
console.log(`${len}-letter words: %s`, result[len])
Logging to the console is for 'demo viewing', this really needs front
end code, as well.

Dude, you're killin' me here! Have I been Yoda'ed (AGAIN), or not? ;)

Granted, I forgot to address the wildcards but, as to the environment
constrictions regarding what gets shown of the output, that's an env
constraint. If you use this with a front end (like I alluded to when I
said what's missing), you won't have that issue. There actually is
another issue and it's because I should've used what I previously crowed
about *not* using, a Set (so you can now guess what that issue is ;)
Apd
2025-01-13 19:25:48 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
Post by Apd
The recursion would be needed to mimic the jumble solver page Mike
showed
Except it isn't! By some magic, when I extend the dictionary it finds
the embedded shorter ones.
If I'm reading you properly, yes, they have to be in the dictionary to
be found.
The point is that I didn't initially have those shorter embedded words
in my small test dictionary, therefore I only saw one line of output.
I didn't see that the "counts" object for a long string with all the
letters for a shorter word in the dictionary would also enable that
word to be found.
Post by Steve Carroll
Post by Apd
console.log(`${len}-letter words: %s`, result[len])
Logging to the console is for 'demo viewing', this really needs front
end code, as well.
Dude, you're killin' me here! Have I been Yoda'ed (AGAIN), or not? ;)
No, I missed a trick!
Post by Steve Carroll
Granted, I forgot to address the wildcards but, as to the environment
constrictions regarding what gets shown of the output, that's an env
constraint. If you use this with a front end (like I alluded to when I
said what's missing), you won't have that issue. There actually is
another issue and it's because I should've used what I previously crowed
about *not* using, a Set (so you can now guess what that issue is ;)
The reason I found the shorter words were included was because I was
concerned about duplication, e.g. "banana" might give three "an"s.
Turns out that's not the case when I removed my testing of Set! I
can't think of another issue requiring Set.
Steve Carroll
2025-01-13 20:58:21 UTC
Reply
Permalink
Post by Apd
Post by Steve Carroll
Post by Apd
Post by Apd
The recursion would be needed to mimic the jumble solver page Mike
showed
Except it isn't! By some magic, when I extend the dictionary it finds
the embedded shorter ones.
If I'm reading you properly, yes, they have to be in the dictionary to
be found.
The point is that I didn't initially have those shorter embedded words
in my small test dictionary, therefore I only saw one line of output.
I didn't see that the "counts" object for a long string with all the
letters for a shorter word in the dictionary would also enable that
word to be found.
Post by Steve Carroll
Post by Apd
console.log(`${len}-letter words: %s`, result[len])
Logging to the console is for 'demo viewing', this really needs front
end code, as well.
Dude, you're killin' me here! Have I been Yoda'ed (AGAIN), or not? ;)
No, I missed a trick!
Post by Steve Carroll
Granted, I forgot to address the wildcards but, as to the environment
constrictions regarding what gets shown of the output, that's an env
constraint. If you use this with a front end (like I alluded to when I
said what's missing), you won't have that issue. There actually is
another issue and it's because I should've used what I previously crowed
about *not* using, a Set (so you can now guess what that issue is ;)
The reason I found the shorter words were included was because I was
concerned about duplication, e.g. "banana" might give three "an"s.
Turns out that's not the case when I removed my testing of Set! I
can't think of another issue requiring Set.
I had issues with at least one dupe. In any event, I put a short (not of
my choosing) and a screencast in my channel. The latter is a GUI version
I said I wouldn't write, so it's not much but it works (still minus the
wildcards). The GUI is using a bigger dictionary (about 100k more).


Apd
2025-01-13 21:56:57 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
The reason I found the shorter words were included was because I was
concerned about duplication, e.g. "banana" might give three "an"s.
Turns out that's not the case when I removed my testing of Set! I
can't think of another issue requiring Set.
I had issues with at least one dupe.
It will happen if there are duplicate dictionary entries but I can't
see how else.
Post by Steve Carroll
In any event, I put a short (not of
my choosing) and a screencast in my channel. The latter is a GUI version
I said I wouldn't write, so it's not much but it works (still minus the
wildcards). The GUI is using a bigger dictionary (about 100k more).
http://youtu.be/G4BQsP-d9Kg
Looks good but I question some of those words which seem too obscure
to appear in a jumble (or anything else, for that matter). Including
wildcards would give far too many for long words.
Steve Carroll
2025-01-13 22:04:23 UTC
Reply
Permalink
Post by Apd
Post by Steve Carroll
Post by Apd
The reason I found the shorter words were included was because I was
concerned about duplication, e.g. "banana" might give three "an"s.
Turns out that's not the case when I removed my testing of Set! I
can't think of another issue requiring Set.
I had issues with at least one dupe.
It will happen if there are duplicate dictionary entries but I can't
see how else.
Post by Steve Carroll
In any event, I put a short (not of
my choosing) and a screencast in my channel. The latter is a GUI version
I said I wouldn't write, so it's not much but it works (still minus the
wildcards). The GUI is using a bigger dictionary (about 100k more).
http://youtu.be/G4BQsP-d9Kg
Looks good but I question some of those words which seem too obscure
to appear in a jumble (or anything else, for that matter). Including
wildcards would give far too many for long words.
The words are based on the dictionary used... from JumbleSolver:

envenoms
teosinte
unsonsie
diseuse

There are plenty I'd consider obscure <shrug>.

Mine looks a bit nicer now:

<Loading Image...>

(Roboto mono from Google Fonts)

So, do I want to mess with that 'C' thing, or no? The problem is, I
don't know the language so I'd be whining all the way through ;)
Apd
2025-01-13 23:19:11 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
Post by Steve Carroll
http://youtu.be/G4BQsP-d9Kg
Looks good but I question some of those words which seem too obscure
to appear in a jumble (or anything else, for that matter). Including
wildcards would give far too many for long words.
It's showing fewer words than in your examples.
Post by Steve Carroll
envenoms
teosinte
unsonsie
diseuse
There are plenty I'd consider obscure <shrug>.
<https://i.postimg.cc/FNkdbhHb/js-monospace.gif>
(Roboto mono from Google Fonts)
That is tidier and easier to read.
Post by Steve Carroll
So, do I want to mess with that 'C' thing, or no?
Probably not for that project which looks half-baked to me.
Post by Steve Carroll
The problem is, I don't know the language so I'd be whining all the
way through ;)
So would I because I think it's using some of the latest additions of
which I know nothing!
Steve Carroll
2025-01-13 23:41:49 UTC
Reply
Permalink
Post by Apd
Post by Steve Carroll
Post by Apd
Post by Steve Carroll
http://youtu.be/G4BQsP-d9Kg
Looks good but I question some of those words which seem too obscure
to appear in a jumble (or anything else, for that matter). Including
wildcards would give far too many for long words.
It's showing fewer words than in your examples.
Post by Steve Carroll
envenoms
teosinte
unsonsie
diseuse
There are plenty I'd consider obscure <shrug>.
<https://i.postimg.cc/FNkdbhHb/js-monospace.gif>
(Roboto mono from Google Fonts)
That is tidier and easier to read.
Post by Steve Carroll
So, do I want to mess with that 'C' thing, or no?
Probably not for that project which looks half-baked to me.
Post by Steve Carroll
The problem is, I don't know the language so I'd be whining all the
way through ;)
So would I because I think it's using some of the latest additions of
which I know nothing!
Oh well, it looked interesting on the surface...
Steve Carroll
2025-01-13 23:47:45 UTC
Reply
Permalink
Post by Apd
Post by Apd
Post by Steve Carroll
http://youtu.be/G4BQsP-d9Kg
Looks good but I question some of those words which seem too obscure
to appear in a jumble (or anything else, for that matter). Including
wildcards would give far too many for long words.
It's showing fewer words than in your examples.
Notably, ME mentioned WRT JumbleSolver:

"because I see some 'strange' and uncommon words pop out of that tool."

I'm not sure of a way to deal with it other than to attempt to 'curate'
a dictionary for 'JumbleSolver use' <shrug>.
FromTheRafters
2025-01-14 10:10:59 UTC
Reply
Permalink
Post by Apd
Post by Steve Carroll
Post by Apd
Post by Steve Carroll
http://youtu.be/G4BQsP-d9Kg
Looks good but I question some of those words which seem too obscure
to appear in a jumble (or anything else, for that matter). Including
wildcards would give far too many for long words.
It's showing fewer words than in your examples.
Post by Steve Carroll
envenoms
teosinte
unsonsie
diseuse
There are plenty I'd consider obscure <shrug>.
<https://i.postimg.cc/FNkdbhHb/js-monospace.gif>
(Roboto mono from Google Fonts)
That is tidier and easier to read.
Post by Steve Carroll
So, do I want to mess with that 'C' thing, or no?
Probably not for that project which looks half-baked to me.
Post by Steve Carroll
The problem is, I don't know the language so I'd be whining all the
way through ;)
So would I because I think it's using some of the latest additions of
which I know nothing!
Using pseudocode or block diagrams with text allows one to avoid the
idiosyncrasies of a particular language. I liked the prime number idea,
but wonder if it really helps resource wise. Of course, pseudocode
doesn't compile or run, so showing results is out. :)
Apd
2025-01-14 12:58:48 UTC
Reply
Permalink
Post by FromTheRafters
Post by Apd
Post by Steve Carroll
The problem is, I don't know the language so I'd be whining all the
way through ;)
So would I because I think it's using some of the latest additions of
which I know nothing!
Using pseudocode or block diagrams with text allows one to avoid the
idiosyncrasies of a particular language.
But not how to learn that language.
Post by FromTheRafters
I liked the prime number idea, but wonder if it really helps resource
wise.
Every anagram has a unique number and all the dictionary words can be
precomputed and indexed in lists of anagrams by a single number.
Lookup would be very fast. Great if you want to find anagrams using
all letters but not for when you want embedded words using fewer
letters. That's what counting letter occurences does, as a side effect
really.
FromTheRafters
2025-01-14 16:40:38 UTC
Reply
Permalink
Post by Apd
Post by FromTheRafters
Post by Apd
Post by Steve Carroll
The problem is, I don't know the language so I'd be whining all the
way through ;)
So would I because I think it's using some of the latest additions of
which I know nothing!
Using pseudocode or block diagrams with text allows one to avoid the
idiosyncrasies of a particular language.
But not how to learn that language.
Agreed, but ME likely isn't interested in specifics. I like block
diagrams, but that is difficult in this text-only medium. Your
demonstration/explanation comment seemed good enough to me.
Post by Apd
Post by FromTheRafters
I liked the prime number idea, but wonder if it really helps resource
wise.
Every anagram has a unique number and all the dictionary words can be
precomputed and indexed in lists of anagrams by a single number.
Lookup would be very fast. Great if you want to find anagrams using
all letters but not for when you want embedded words using fewer
letters. That's what counting letter occurences does, as a side effect
really.
Long words (think 'Jumble' for the medical field) could slow things
down quite a lot as each 'number' of sufficient length could lead to a
very long list of non-words. Still, it seems a clever idea even if it
doesn't scale well.
Steve Carroll
2025-01-14 17:16:23 UTC
Reply
Permalink
Post by FromTheRafters
Post by Apd
Post by FromTheRafters
Post by Apd
Post by Steve Carroll
The problem is, I don't know the language so I'd be whining all the
way through ;)
So would I because I think it's using some of the latest additions of
which I know nothing!
Using pseudocode or block diagrams with text allows one to avoid the
idiosyncrasies of a particular language.
But not how to learn that language.
Agreed, but ME likely isn't interested in specifics. I like block
diagrams, but that is difficult in this text-only medium. Your
demonstration/explanation comment seemed good enough to me.
I wasn't 100% sure of what ME was asking:

"how you would code such a function"

Apd's explanation nailed things on a base level but it doesn't address
"how" one would code. 'What' you're solving is different than "how" you
solve it and things can often be done more than one way - i.e. primes
can be used for this. Apd also mentioned recursion, though, not with my
slow(er) example (that used nothing 'fancy' aside from 'new-ish methods').
Apd
2025-01-14 19:05:43 UTC
Reply
Permalink
Post by FromTheRafters
Post by Apd
Post by FromTheRafters
Post by Apd
Post by Steve Carroll
The problem is, I don't know the language so I'd be whining all the
way through ;)
So would I because I think it's using some of the latest additions of
which I know nothing!
Using pseudocode or block diagrams with text allows one to avoid the
idiosyncrasies of a particular language.
But not how to learn that language.
Agreed, but ME likely isn't interested in specifics.
Yes, but this part was about SC learning C/C++ (and myself for new
features).
Post by FromTheRafters
I like block diagrams, but that is difficult in this text-only medium.
Your demonstration/explanation comment seemed good enough to me.
That's good.
Post by FromTheRafters
Post by Apd
Every anagram has a unique number and all the dictionary words can be
precomputed and indexed in lists of anagrams by a single number.
Lookup would be very fast. Great if you want to find anagrams using
all letters but not for when you want embedded words using fewer
letters. That's what counting letter occurences does, as a side effect
really.
Long words (think 'Jumble' for the medical field) could slow things down
quite a lot as each 'number' of sufficient length could lead to a very
long list of non-words. Still, it seems a clever idea even if it doesn't
scale well.
It scales ok because the calculations are done when the dictionary is
built. Only one needs to be done for the letters you give it at run
time. However, stupidly long scientific words could cause overflow
with all the multiplication. They should be left out. The longest in
the OED is: pneumonoultramicroscopicsilicovolcanoconiosis, which is 45
letters and has a value of 2.0874156167471668e+65. I don't know what
that is written out but it works in a lookup.

See this for ridiculously long words:
<https://en.wikipedia.org/wiki/Longest_word_in_English>
Steve Carroll
2025-01-14 16:46:51 UTC
Reply
Permalink
Post by Apd
Post by FromTheRafters
Post by Apd
Post by Steve Carroll
The problem is, I don't know the language so I'd be whining all the
way through ;)
So would I because I think it's using some of the latest additions of
which I know nothing!
Using pseudocode or block diagrams with text allows one to avoid the
idiosyncrasies of a particular language.
But not how to learn that language.
You'll not get the idea of memory management in 'C' that way.
Post by Apd
Post by FromTheRafters
I liked the prime number idea, but wonder if it really helps resource
wise.
Every anagram has a unique number and all the dictionary words can be
precomputed and indexed in lists of anagrams by a single number.
Lookup would be very fast.
Yes... "resource"-wise, it doesn't suck ;)
Post by Apd
Great if you want to find anagrams using all letters but not for when
you want embedded words using fewer letters. That's what counting
letter occurences does, as a side effect really.
Mike Easter
2025-01-13 22:50:34 UTC
Reply
Permalink
Post by Apd
No, I missed a trick!
I must've missed a trick also, because I don't really 'see' from my
perspective the answer to my original qx:'
Post by Apd
My coder question is; not for the 'code' per se, but for the concept
or framework of how you would code such a function.
So, I'm not talking about code, altho' I realize that some coders find
it simpler to express something as code than a word 'diagram', but I'll
try again.

Here's a group of 15 letters incl repeaters. Here's a large word list
with all necessary words included. We want to create groups of lists
ordered by number of letters, say from 15 to 1.

I don't yet understand the strategy of how to do that. In words, not code.
--
Mike Easter
Steve Carroll
2025-01-13 23:40:53 UTC
Reply
Permalink
Post by Mike Easter
Post by Apd
No, I missed a trick!
I must've missed a trick also, because I don't really 'see' from my
perspective the answer to my original qx:'
Post by Apd
My coder question is; not for the 'code' per se, but for the concept
or framework of how you would code such a function.
So, I'm not talking about code, altho' I realize that some coders find
it simpler to express something as code than a word 'diagram', but I'll
try again.
Here's a group of 15 letters incl repeaters. Here's a large word list
with all necessary words included. We want to create groups of lists
ordered by number of letters, say from 15 to 1.
I don't yet understand the strategy of how to do that. In words, not code.
I don't know if this will make sense, or not, but... in a nutshell my
example counts the occurrences of each letter in the 'given word'.
Whatever is used as 'the dictionary' is looped through and each entry is
processed to see if it can be formed from the letters *within* the
'given word' using letter counting. Words with matching letter counts
are added to the results, which are then grouped/sorted by word length.
Apd
2025-01-14 00:24:20 UTC
Reply
Permalink
Post by Mike Easter
Post by Apd
No, I missed a trick!
I must've missed a trick also, because I don't really 'see' from my
perspective the answer to my original qx:'
I did wonder.
Post by Mike Easter
Post by Apd
My coder question is; not for the 'code' per se, but for the concept
or framework of how you would code such a function.
So, I'm not talking about code, altho' I realize that some coders find it
simpler to express something as code than a word 'diagram', but I'll try
again.
Here's a group of 15 letters incl repeaters. Here's a large word list
with all necessary words included. We want to create groups of lists
ordered by number of letters, say from 15 to 1.
I don't yet understand the strategy of how to do that. In words, not code.
I'll try a simple example. My dictionary contains only these words:

cat, set, test, tests

I want to check these letters:

estt

First count them:

e: 1, s: 1, t: 2

Loop over every word in the dictionary and check each letter in it is
present and its count is not greater than the same letter in our set
of letters. If true, append the word to a list where we have an entry
for each word length (where that length exists). "cat" fails (no c or
a), "tests" fails (only one s) but the other two pass. Loop over our
list to display:

3-letter words: set
4-letter words: test
Mike Easter
2025-01-14 02:29:09 UTC
Reply
Permalink
Post by Apd
Loop over every word in the dictionary and check each letter in it is
present and its count is not greater than the same letter in our set
of letters. If true, append the word to a list where we have an entry
for each word length (where that length exists). "cat" fails (no c or
a), "tests" fails (only one s) but the other two pass. Loop over our
It is amazing that the solver does it in an instant.
--
Mike Easter
Apd
2025-01-14 12:51:26 UTC
Reply
Permalink
Post by Mike Easter
Post by Apd
Loop over every word in the dictionary and check each letter in it is
present and its count is not greater than the same letter in our set
of letters. If true, append the word to a list where we have an entry
for each word length (where that length exists). "cat" fails (no c or
a), "tests" fails (only one s) but the other two pass. Loop over our
It is amazing that the solver does it in an instant.
Yes. We can't see the code because it's done server-side. There's a
certain amount of dictionary organisation that can be done to help.
If javascript Map and Set structures are being used, they're optimised
for speed. Anyway, I hope my explanation was enough to show how the
letter counting method works.
Steve Carroll
2025-01-15 19:59:52 UTC
Reply
Permalink
Post by Apd
Post by Mike Easter
Post by Apd
Loop over every word in the dictionary and check each letter in it is
present and its count is not greater than the same letter in our set
of letters. If true, append the word to a list where we have an entry
for each word length (where that length exists). "cat" fails (no c or
a), "tests" fails (only one s) but the other two pass. Loop over our
It is amazing that the solver does it in an instant.
Yes. We can't see the code because it's done server-side. There's a
certain amount of dictionary organisation that can be done to help.
If javascript Map and Set structures are being used, they're optimised
for speed. Anyway, I hope my explanation was enough to show how the
letter counting method works.
RE: 'the speed thing'... I actually still have the single word (pure?)
anagram gizmo I wrote up... from back in 'the days of COLA':

<https://altitudes.x10host.com/ana-gen/>

One word, no wildcards or spaces, either... and no asking for your money
back!

;)
Apd
2025-01-15 21:59:40 UTC
Reply
Permalink
Post by Steve Carroll
RE: 'the speed thing'... I actually still have the single word (pure?)
<https://altitudes.x10host.com/ana-gen/>
One word, no wildcards or spaces, either...
Using primes. Even on my old kit, after a second or two to load the
page, an answer is immediate.
Post by Steve Carroll
and no asking for your money back!
It won't solve a letter jumble unless the letters are already a word!
Steve Carroll
2025-01-15 22:25:26 UTC
Reply
Permalink
Post by Apd
Post by Steve Carroll
RE: 'the speed thing'... I actually still have the single word (pure?)
<https://altitudes.x10host.com/ana-gen/>
One word, no wildcards or spaces, either...
Using primes. Even on my old kit, after a second or two to load the
page, an answer is immediate.
Post by Steve Carroll
and no asking for your money back!
It won't solve a letter jumble unless the letters are already a word!
Blah... blah... I take back what I told FTR about using primes for that,
in fact, I was sure you'd "Grumble" ;) Add 'index2.html' to the link.
For some reason it's not quite as fast on the single word (?) and, while
still no spaces or other crap, I did widen the input to facilitate that
long word you used and it goes up to 20 letters on the variable lengths:
'spectromicroscopical'

Can't get that on JumblerSolver... and mine let's you curate the
dictionary and works when the net goes down! ;)

Aside from not showing "Your word" (it's in the input field, like
JumblerSolver) there's something I did on the input of the old one that
I forgot to do on this newer 'merged' version.
Apd
2025-01-15 23:12:42 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
It won't solve a letter jumble unless the letters are already a word!
Blah... blah... I take back what I told FTR about using primes for that,
in fact, I was sure you'd "Grumble" ;) Add 'index2.html' to the link.
For some reason it's not quite as fast on the single word (?)
It's now very slow here on even a short single word. Try entering opst
and see how many 4-letter words it finds!
Post by Steve Carroll
and, while still no spaces or other crap, I did widen the input to
facilitate that long word you used and it goes up to 20 letters on
the variable lengths: 'spectromicroscopical'
So I see.
Post by Steve Carroll
Can't get that on JumblerSolver... and mine let's you curate the
dictionary and works when the net goes down! ;)
Which is great. Some entries aren't words, like "spt".
Post by Steve Carroll
Aside from not showing "Your word" (it's in the input field, like
JumblerSolver) there's something I did on the input of the old one that
I forgot to do on this newer 'merged' version.
Oh?
Steve Carroll
2025-01-16 17:42:12 UTC
Reply
Permalink
Post by Apd
Post by Steve Carroll
Post by Apd
It won't solve a letter jumble unless the letters are already a word!
Blah... blah... I take back what I told FTR about using primes for that,
in fact, I was sure you'd "Grumble" ;) Add 'index2.html' to the link.
For some reason it's not quite as fast on the single word (?)
It's now very slow here on even a short single word. Try entering opst
and see how many 4-letter words it finds!
"Hmmm...", I'm removing it for now (maybe forever ;)
Post by Apd
Post by Steve Carroll
and, while still no spaces or other crap, I did widen the input to
facilitate that long word you used and it goes up to 20 letters on
the variable lengths: 'spectromicroscopical'
So I see.
Post by Steve Carroll
Can't get that on JumblerSolver... and mine let's you curate the
dictionary and works when the net goes down! ;)
Which is great. Some entries aren't words, like "spt".
I think the dictionary I used contains come abbreviations... but
something is 'amiss' if what you said is true (I didn't spend much time
testing it).
Post by Apd
Post by Steve Carroll
Aside from not showing "Your word" (it's in the input field, like
JumblerSolver) there's something I did on the input of the old one that
I forgot to do on this newer 'merged' version.
Oh?
It didn't apply lower casing to inputs.
Steve Carroll
2025-01-16 18:00:40 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
Which is great. Some entries aren't words, like "spt".
I think the dictionary I used contains come abbreviations... but
something is 'amiss' if what you said is true (I didn't spend much time
testing it).
<Loading Image...>

All of those appear in my dictionary, Jumble's is more curated.

I did actually test my version (before I took it down, I ran about 25
words), I couldn't get it to slow down. Can you describe what you were
doing and what was happening? Not that I'll fix it but at least it's
'tech talk' related.
Apd
2025-01-16 18:41:08 UTC
Reply
Permalink
Post by Steve Carroll
Post by Steve Carroll
Post by Apd
Which is great. Some entries aren't words, like "spt".
I think the dictionary I used contains come abbreviations... but
something is 'amiss' if what you said is true (I didn't spend much time
testing it).
<https://i.ibb.co/WtG5hbW/js-vs-faux.gif>
All of those appear in my dictionary, Jumble's is more curated.
I did actually test my version (before I took it down, I ran about 25
words), I couldn't get it to slow down.
You have a more modern Mac and my old Firefox is slow. I also have a
version of Chrome which I've just tried and it's noticeably faster.
Post by Steve Carroll
Can you describe what you were doing and what was happening?
Just a pause of some seconds (on FF) when pressing the button.
Post by Steve Carroll
Not that I'll fix it but at least it's 'tech talk' related.
I've got wildcards working (I hope!) on the code you posted earlier
(not the primes version). It took me a long time because of making
stupid mistakes. I had a bunch of conditional debug code which kept
altering the results. One day I'll learn to spot "=" is not the same
as "==" when used in the context of an "if" test!

I'll try it on a large dictionary and perhaps start a new thread,
taking the code forward.
Steve Carroll
2025-01-17 16:36:33 UTC
Reply
Permalink
Post by Apd
Post by Steve Carroll
Post by Steve Carroll
Post by Apd
Which is great. Some entries aren't words, like "spt".
I think the dictionary I used contains come abbreviations... but
something is 'amiss' if what you said is true (I didn't spend much time
testing it).
<https://i.ibb.co/WtG5hbW/js-vs-faux.gif>
All of those appear in my dictionary, Jumble's is more curated.
I did actually test my version (before I took it down, I ran about 25
words), I couldn't get it to slow down.
You have a more modern Mac and my old Firefox is slow. I also have a
version of Chrome which I've just tried and it's noticeably faster.
Good.
Post by Apd
Post by Steve Carroll
Can you describe what you were doing and what was happening?
Just a pause of some seconds (on FF) when pressing the button.
Post by Steve Carroll
Not that I'll fix it but at least it's 'tech talk' related.
I've got wildcards working (I hope!) on the code you posted earlier
(not the primes version).
That part wasn't really needed but I'm glad, as goofy as this
"incomplete project" is, it didn't die out so quickly.
Post by Apd
It took me a long time because of making stupid mistakes.
You and me both!
Post by Apd
I had a bunch of conditional debug code which kept altering the
results. One day I'll learn to spot "=" is not the same as "==" when
used in the context of an "if" test!
Yoda! You can't tell me that your use of C/C++ hasn't conditioned you
for "=" being an assignment operator (along with a bunch of other
languages). With JS, if you had an issue on that at all it should've
been between "==" and the strict equality operator, "===". We may have
to pull your Jedi Order card!
Post by Apd
I'll try it on a large dictionary and perhaps start a new thread,
taking the code forward.
Cool. I've been thinking of starting a "Programming Corner" thread,
beginning with basic JS info (because it has access to a readily
available GUI). Being that ME asked what he did and people like DB,
Glasser and Tim love programming, I figured: 'Why not'? ;)
Apd
2025-01-17 17:47:04 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
I've got wildcards working (I hope!) on the code you posted earlier
(not the primes version).
That part wasn't really needed but I'm glad, as goofy as this
"incomplete project" is, it didn't die out so quickly.
It's not quite there yet. The more test cases I add, the more problems
show up. It shouldn't be that hard!
Post by Steve Carroll
Post by Apd
It took me a long time because of making stupid mistakes.
You and me both!
Post by Apd
I had a bunch of conditional debug code which kept altering the
results. One day I'll learn to spot "=" is not the same as "==" when
used in the context of an "if" test!
Yoda! You can't tell me that your use of C/C++ hasn't conditioned you
for "=" being an assignment operator (along with a bunch of other
languages). With JS, if you had an issue on that at all it should've
been between "==" and the strict equality operator, "===". We may have
to pull your Jedi Order card!
Yeah, I know. It must be carelessness. A good IDE (i'm not using one)
ought to warn you. Having "if (x = blah)..." is bad form and
misleading.
Post by Steve Carroll
Post by Apd
I'll try it on a large dictionary and perhaps start a new thread,
taking the code forward.
Cool. I've been thinking of starting a "Programming Corner" thread,
beginning with basic JS info (because it has access to a readily
available GUI). Being that ME asked what he did and people like DB,
Glasser and Tim love programming, I figured: 'Why not'? ;)
Go for it, but not one massive thread for everything. You never know,
it may attract intelligent passers-by to this noisy/derelict/quiet
backwater. DFS and SD (I know who that is now) have shown their faces
and another regular poster from elsewhere popped up once.

<Loading Image...>

That's a 30+ year old Windows 3 program that I still use to explore
anagrams. The dictionary is almost as large as yours and there's no
lag whatsoever in loading it and finding words.
David
2025-01-17 18:22:17 UTC
Reply
Permalink
Post by Apd
You never know,
it may attract intelligent passers-by to this noisy/derelict/quiet
backwater. DFS and SD (I know who that is now) have shown their faces
and another regular poster from elsewhere popped up once.
Please feel free to invite any friends you may still have.
--
David
Steve Carroll
2025-01-17 21:39:24 UTC
Reply
Permalink
Post by Apd
Post by Steve Carroll
Post by Apd
I've got wildcards working (I hope!) on the code you posted earlier
(not the primes version).
That part wasn't really needed but I'm glad, as goofy as this
"incomplete project" is, it didn't die out so quickly.
It's not quite there yet. The more test cases I add, the more problems
show up. It shouldn't be that hard!
You saw my placeholder text, right?
Post by Apd
Post by Steve Carroll
Post by Apd
I'll try it on a large dictionary and perhaps start a new thread,
taking the code forward.
Cool. I've been thinking of starting a "Programming Corner" thread,
beginning with basic JS info (because it has access to a readily
available GUI). Being that ME asked what he did and people like DB,
Glasser and Tim love programming, I figured: 'Why not'? ;)
Go for it
I was 'kinda, sorta' joking, none of those people care about such
things. IIRC, even ME said he'd prefer Python. One thing I've noticed
is, with DB mostly gone for the time being (which means: no "support"),
HWSNBN isn't doing nearly as much lying (or whining).

I suppose I could put up a condensed version of a few fundamentals pretty
quickly. Maybe follow up with a little project like building a simple
calculator, which is always a good one for learning some of the basics.
Post by Apd
, but not one massive thread for everything. You never know,
it may attract intelligent passers-by to this noisy/derelict/quiet
backwater.
Ever the optimist, eh? ;)
Post by Apd
DFS and SD (I know who that is now) have shown their faces
and another regular poster from elsewhere popped up once.
I doubt eeither of them would be interested in "basic JS info", or
probably any JS related stuff, for that matter <shrug>.
Post by Apd
<https://i.ibb.co/Vgv2hqg/ani-gram.gif>
That's a 30+ year old Windows 3 program that I still use to explore
anagrams. The dictionary is almost as large as yours and there's no
lag whatsoever in loading it and finding words.
If it works, it works!

Steve Carroll
2025-01-14 16:03:59 UTC
Reply
Permalink
Post by Apd
Post by Mike Easter
I don't yet understand the strategy of how to do that. In words, not code.
cat, set, test, tests
estt
e: 1, s: 1, t: 2
Loop over every word in the dictionary and check each letter in it is
present and its count is not greater than the same letter in our set
of letters. If true, append the word to a list where we have an entry
for each word length (where that length exists). "cat" fails (no c or
a), "tests" fails (only one s) but the other two pass. Loop over our
3-letter words: set
4-letter words: test
I *knew* I was gonna get Yoda'ed somewhere along the way ;)

Excellent explanation!
Apd
2025-01-14 19:06:17 UTC
Reply
Permalink
Post by Steve Carroll
Post by Apd
Loop over every word in the dictionary and check each letter in it is
present and its count is not greater than the same letter in our set
of letters. If true, append the word to a list where we have an entry
for each word length (where that length exists). "cat" fails (no c or
a), "tests" fails (only one s) but the other two pass. Loop over our
3-letter words: set
4-letter words: test
I *knew* I was gonna get Yoda'ed somewhere along the way ;)
Excellent explanation!
Thanks!
Mike Easter
2025-01-14 03:25:59 UTC
Reply
Permalink
Today's CQ:

IXFD SA GMD QNDLGDAG
EXNBD SY GMD JYSFDNAD. SG
SA GMD MDLNGVDLG XE GMD
CXNLI BXACXA. -- CLNGSY
IJGMDN HSYQ, PN.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Love is the greatest force in the universe. It is the heartbeat of the
moral cosmos.
Martin Luther King, Jr.

Solving: MLK,J

MLK,j isn't much of a cosmologist if he thinks love is the greatest
force. As far as we can tell, love is only found here on earth, while
considering the cosmos/universe there are an awful lot of great forces
out there.

And, I'm not sure that MLK's 'love' ideas were altogether conventional,
considering his infidelities to his spouse Coretta, who, fortunately for
the marriage, simply accepted them,
King's wife Coretta appeared to have accepted his affairs with
equanimity, saying once that "all that other business just doesn't
have a place in the very high-level relationship we enjoyed."
--
Mike Easter
Mike Easter
2025-01-14 17:38:36 UTC
Reply
Permalink
Today's CQ:

 W KEHU LWC GMNXVWGGC WEL
 TMDZVWNMQXGC TWGGK TVHR
 NYX KJC - ZESMLLXE - WEL
 KXXRK GMJX W NYMED HT
 UHELXV. -- KZKWE HVGXWE

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

A snow day literally and figuratively falls from the sky - unbidden -
and seems like a thing of wonder.
Susan Orlean

Solving: a, seems like a, Susan, snow day

SO is an author and columnist. The above quote came from an '11 article
in the New Yorker, which is nice.
https://www.newyorker.com/culture/susan-orlean/snow-day-2

She has a wp article and a website https://www.susanorlean.com/author/
--
Mike Easter
Mike Easter
2025-01-15 16:19:17 UTC
Reply
Permalink
Today's CQ:

ZBBFK[ MTZI KFEKRF ENNFC.
WCGQX ITFGC PGRXATZXFA.
IZXF ITFGC REOF. -- MZRRL
RZPD

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

Accept what people offer. Drink their milkshakes. Take their love.
Wally Lamb

Solving: people, accept, what, offer, their, take, love, Wally, milkshakes

WL's wp article has an interesting story about the author, who chose to
facilitate a writing program at a women's prison and some of his
students had successes.
The publication of the first book became a source of controversy and
media attention when, a week before its release, the State of
Connecticut unexpectedly sued its incarcerated contributors—not for
the six thousand dollars each writer would collect after her release
from prison but for the entire cost of her incarceration, calculated
at $117 per day times the number of days in her prison sentence.
--
Mike Easter
Mike Easter
2025-01-16 20:00:46 UTC
Reply
Permalink
Today's CQ:

TV TK GWOE FZM WPAO P
HXPHJ TE FZMX WOPXV
VWPV VWO DTSWV GTDD HZQO
TE. -- SPIXTODP XZRTD

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

It is when you have a crack in your heart that the light will come in.
Gabriela Rodil

Solving: that, the, it is when, a, heart,
When I got to the unique D in GR's name, I had these letters left DFJQVXZ

I don't know if the entrepreneur GR is the source of the quote.
--
Mike Easter
Mike Easter
2025-01-17 18:10:33 UTC
Reply
Permalink
Today's CQ:

ZQP GXFP MXT YFWVNP WOC
APKPRFWZP MXTF KVSP, ZQP
GXFP ZQPFP VN VO KVSP ZX
APKPRFWZP. - XYFWQ IVOSFPM


.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

The more you praise and celebrate your life, the more there is in life
to celebrate.
Oprah Winfrey

Solving: The more you, there, to, OW
Bill O'Reilly said: "this is a woman that came from nothing to rise
up to be the most powerful woman, I think, in the world. I think
Oprah Winfrey is the most powerful woman in the world, not just in
America. That's – anybody who goes on her program immediately
benefits through the roof. I mean, she has a loyal following; she has
credibility; she has talent; and she's done it on her own to become
fabulously wealthy and fabulously powerful."
... and he's not the only one; her wp article names lots of
'significant' people who say similar things.

OW was born in Kosciusko, MS pop 6842 (declined since 2010); she's 70 now.
--
Mike Easter
Mike Easter
2025-01-17 19:20:35 UTC
Reply
Permalink
Seen on /.

A tech mag w/ a rep for scooping stories appropriately named
'Semiaccurate' says it has heard that there is a 'suitor' who wants to
buy Intel in its entirety at current market price, which is $85 bn.

The mag has paywall and free articles, of which this intel article is
currently free and has some worthwhile backstory.

https://www.semiaccurate.com/2025/01/17/sources-say-intel-is-an-acquisition-target/

While the mag is claiming a high likelihood the story is probably true,
it seems they are also hustling for subscribers to their paywall.

Now back to what the kids at /. are saying.
--
Mike Easter
Loading...