Project Euler and various distractions

Since I started messing with Project Euler again yesterday, I’ve finished up my work on problem 73, and almost started problem 74. I got as far as creating an Evernote note to keep track of my work on it, but that’s about it. Instead, I did a bunch of messing around with my existing code and poking around on the internet to see what’s going on with Euler these days.

I discovered that one of my favorite resources for Euler info, MathBlog.dk, has disappeared from the internet. I’m not sure what happened to it, but it’s unfortunate. I can still find it via archive.org, which I appreciate. The posts there helped me understand what was going on with the problems, and included C# code solving the problem. I always try to figure out the problems on my own, but it’s nice to see how other people solve them and see if I can figure out what’s going on with the more advanced solutions.

And I found another interesting blog with Euler discussions and solutions. His posts are really good, with a lot of detail, C++ source code, and links to other resources.

Meanwhile, I got interested in experimenting with GitHub Codespaces, to see if I could edit and run my code right from GitHub. The first issue I hit is that my current project was using .NET 4.8, which is pretty old. I was surprised by that, but then remembered that I’d last done any real work on it in 2015, so I guess that makes sense. After a fair bit of mucking around, I got it moved to .NET 6, pushed it back to GitHub, and tried again. Long story short, it still doesn’t work in Codespaces. I could probably get it working, eventually, but I’ve got better stuff to do right now. So that pretty much killed the available time I had today to mess around with Project Euler.

using ChatGPT to help solve Project Euler problems

Since I started playing with (and learning about) ChatGPT recently, I’ve been thinking about possible use cases where this kind of thing could actually help me out. I’ve watched the episodes of The AI Bot Show where they show how it can be used with D&D and with board game design, and that’s fun, but not directly relevant to me right now.

I realized today that trying to use ChatGPT to help me solve Project Euler problems might be an interesting exercise, and a bit more relevant for me. My intention wouldn’t be to get ChatGPT to just spit out the answers, but to use it as an assistant to help me figure out the problem. So I started playing around with that.

First, I realized that I haven’t touched Project Euler since 2022, and haven’t actually solved a problem since 2015! I’d solved problem 72 on April 9, 2015, apparently. And I started work on problem 73 in May 2022, but didn’t get very far with it. So I had to spend some time just spinning things up and refreshing my memory on where everything was and how it all worked.

Having done that, I found that I’d already written a working “brute force” solution for the problem, and used it to solve the simple case (where the limit value is 8), but not the actual problem (where the limit is 12,000). Well, it turns out that the brute force solution worked fine with the actual value, and ran in just a second, so there was no need to do anything more complicated.

Plugging in the correct answer for this problem unlocks a PDF that explains some better solutions to the problem. But I had trouble following it, so I did ask ChatGPT to help me figure some stuff out there. But then I hit a wall, since I didn’t understand a particular mathematical notation used in the PDF, and I can’t easily paste it into ChatGPT and ask it to explain it. (I think I might need to figure out LaTeX or something…) It’s got to do with Farey sequences and Stern-Brocot trees, and I don’t understand any of that. Oh well. I do want to sit down and work on this some more, but it’s 5 PM now, and I should really take a break for dinner some time soon.

One thing I tried with ChatGPT was pasting in a pseudo-code solution to the problem (the simplest one from the PDF) and asking it to convert it to C#. It did a good job of that, and surprisingly even filled in a method that was called in the pseudo-code but not defined (a GCD method). And it even explained that GCD was short for “greatest common divisor,” and explained what that means. So that was kind of cool.

I was curious to see if other people have played around with using ChatGPT for help with Euler problems, so I did some web searching on that. I found a thread on the Euler forums, from late 2022, where there was a bit of talk about it. And here’s a GitHub repo where somebody just fed a bunch of Euler problems to ChatGPT to see how good it would be at solving them correctly. The results are interesting.

Back on the subject of ChatGPT and similar AI tools in general, I’m still listening to podcasts, reading articles, and playing around with stuff. I guess I’m convinced now that it’s not all snake oil, at least. But I haven’t talked myself into paying for ChatGPT Plus or a paid Poe subscription yet.

digging in to ChatGPT and similar AI stuff

I’ve successfully been ignoring all the hype around ChatGPT and similar AI stuff all through this year.

I was initially amused by some of the stuff folks were posting to Twitter when ChatGPT and DALL-E and other tools were made publicly available. There was a lot of funny stuff out there, with folks getting oddball results out of the chatbots, and using the image generators to make some really crazy images. Initially, it seemed pretty harmless, but also fairly useless.

Then came the op-eds and think pieces from people worried about the impact that these things could have on the world. Everything from worry about AI causing human extinction, to ChatGPT replacing writers and programmers, to the environmental cost of running all this stuff. A lot of that was overblown, I think.

But recently, something pushed me over the edge and I decided I had to start learning some of this stuff. I’m not even sure what did it, exactly. Either way, I’ve been digging into this stuff, and I thought I’d write up some notes.

First, I’ve been looking at two primary categories of “AI” here: the LLM chatbots, and the image generators. I like playing around with the image generators, but I haven’t found much practical use for them, and they’re not that interesting to me, so I’m going to skip talking about those. I’ll just say that the Bing image creator is pretty fun to play with.

As to the LLM chatbots, I’ve started playing around with ChatGPT and a few others. I registered for a free account with ChatGPT, which gets me access to GPT-3.5.  Upgrading to ChatGPT Plus for $20/month would get me access to GPT-4, which is supposed to be much better. I don’t think I’ll be doing that, but a number of people seem to think it’s worth it.

At work, we have our own chatbot called “Mindspark”, which is powered by Azure OpenAI, which in turn uses GPT-4 and/or GPT-3.5, if I’m understanding it correctly. It’s internal-facing, and at this point, really just an experiment, I think. I’m not sure if there are any long-term plans for it. Anyway, it’s reasonably good, and also one of the only options, from my work computer. For some reason, we block access to ChatGPT’s web interface, so I can’t use that directly at work. (Which is one of the reasons why I probably wouldn’t pay $20/month for ChatGPT Plus. If I was paying for it, I’d want to have access to it at work and not just at home.) I’ve also noticed that we block Perplexity, and I expect some of the other popular tools. (I’m not sure why, though I’d guess it has something to do with distrust of the privacy policies for those tools and worry that proprietary corporate info will get into them and then maybe leak back out?)

I’ve also played around with Poe, which is a tool that gives you access to a bunch of different AI tools, including ChatGPT. They also have a $20/month plan that gets you access to more advanced models, and lets you use it more. I’m not sure how worthwhile that is, vs. using ChatGPT directly. I guess there’s some utility in having access to multiple sources through a single interface. I definitely want to play around with it some more.

And I’ve tried out the new Bing chat. It’s also powered by GPT under the hood, I think. The nice thing about Bing chat is that, unlike the free version of ChatGPT, it combines web search with GPT, so that it can return more recent information than using ChatGPT alone. (And my company doesn’t block Bing chat, so I can use it at work.)

So that’s my brief overview of the front-end interfaces for LLM back-ends that I’ve tried out. I haven’t found one that is noticeably better than the others, at this point, but I haven’t done much with them yet.

I should also mention that all of these things, for a lot of the use cases I’ve tried, are spectacularly bad at returning correct and/or useful data. In general, I’m not sure if they’re super useful as general research assistants. If you can find an answer to a question with a regular web search or a simple Wikipedia check, that’s way better than asking ChatGPT.

Aside from just playing around with these things, I’ve also been reading some articles and listening to some podcasts. I thought I’d include some podcast links here, for reference.

  • Here’s an episode of the New Yorker Radio Hour from a few months ago, where they did an interview with Sam Altman, CEO of OpenAI. It’s somewhat interesting, at a high level.
  • Ezra Klein has done a few shows talking about AI and LLMs and stuff. Some of it is pretty interesting to me, but it’s mostly high-level philosophical stuff, and I’m not sure what I think about some of it.
  • On the more practical side, Scott Hanselman did an episode of his podcast recently where he interviewed a guy who wrote a book on “prompt engineering”. That’s the kind of thing that made me roll my eyes, until I started digging into it a bit. I still think the whole prompt engineering thing is a bit overblown, and I don’t want to read a whole book about it, but I’ll admit that some of it is useful, and I have now watched a couple of LinkedIn Learning videos on the subject.
  • Also on the practical side of things, I’ve queued up a few episodes of .NET Rocks related to AI. This one, from August, looks interesting.
  • And there’s a recent episode of RunAs Radio that got into some good no-nonsense explanations for how LLMs work. I think that episode has a better explanation of the tech involved than anything else I’ve read or listened to. (I’m sure there are other good explanations out there, of course, but this is the best one I’ve stumbled across so far.)
  • And, finally, related to .NET Rocks, I see that Carl has a video series called The AI Bot Show that covers this stuff. I guess I’m going to have to watch some of those.

So, in conclusion, I guess I’m doing a little less eye-rolling at this stuff now. I see some utility in it, and I’m getting a better idea of what it’s good for and what it’s not good for.

 

I probably still have COVID

I got sick with COVID two weeks ago. I took the whole week off from work, started Paxlovid, and got better. This week, I worked from home the whole week. I was feeling better Monday through Thursday, but was still testing positive as of Thursday. Then, on Friday, I got sick again. And I’m still feeling sick today. I haven’t taken another test yet, so I’m not sure if it’s a rebound COVID infection, a cold, or something else.

Here’s a good article on the Paxlovid rebound thing. The article says that a rebound usually lasts two or three days, but can last as long as ten. I’m really hoping for the two or three days, so I’ll be better by Monday. I’m not sure I can hack another week of being sick. And I’d kind of like to show my face in the office next week, if I can. (Not that I like being in the office, just that I don’t want people to think I’m slacking off…) I really wish we had, as a society, normalized the idea that erring on the side of caution is fine, and good, and pushing yourself to get back into the office as soon as possible isn’t good for anyone.

My Paxlovid was free, surprisingly. I’d assumed that, with the public health emergency over, there’d at least be a co-pay. But I guess the government program that pays for Paxlovid is still going. I did just see some articles about the coming price hike for Paxlovid though. Yikes. I hope my insurance will cover that, if I ever need it again.

With all the testing I’ve been doing, I almost ran out of COVID tests. I ordered a new batch from the free government program, but they haven’t shown up yet, so I ordered a couple of kits from Amazon. The retail price for a 2-pack seems to be $24, but Amazon had them on sale for about $16. So that’s not too bad, and of course they showed up the next day. (I also checked to see if my insurance would pay for them, but apparently that’s not a thing anymore, since the official “public health emergency” ended.)

Not that I would wish COVID on anyone, but it’s nice to know I’m not the only one getting COVID recently. Stephen Colbert caught it too, and did one show from home, then skipped the rest of the week. So, if he can take some time off, I can too, right?

 

Master Keaton

I’ve been thinking about Master Keaton a bit lately. I noticed that all ten volumes of the manga are listed as being banned in a certain school district in Texas, based on this article. I haven’t actually read the manga, but I’m having trouble figuring out how a manga about an insurance investigator could be problematic. (Well, it’s manga, so I’m sure there’s something…)

I have all the DVDs for the Master Keaton anime. I bought most of them in 2006, but have still only watched the first three. I’m thinking about re-watching those first few, and then going on and finishing the series.

And I poked around a bit today to see if the manga was still in print. It is, but apparently only in paperback and not digitally. As I was looking at that, I noticed that apparently Right Stuf is shutting down and getting merged into the Crunchyroll store. Right Stuf has been around since 1987, and I’ve bought a bunch of stuff from them over the years, but nothing lately. That’s partially because I have too much stuff to watch/read so I shouldn’t buy anything new, and partially because I can usually find what I’m looking for cheaper at Amazon. I always feel a little guilty buying stuff at Amazon instead of a smaller retailer, but I often do it anyway.

Returning to the subject of the Master Keaton manga being “banned,” I just dug into that a bit more by searching for it here, and apparently it had previously been classified as OK for middle school students, but has been reclassified as only for grades 9+. So maybe that’s not so bad. I remember the anime as being fine for all ages, I think, but maybe the manga is a bit more violent. Still, I’m sure most middle school kids in America have seen much worse.

some random links

I’m continuing to feel better today (see previous post), though I’m still not enjoying the “Paxlovid mouth” side-effect. I’m currently masking it with some apple juice.

I spent some time at the computer today, paying some bills, and catching up on some miscellaneous stuff I was neglecting while sick. I thought I’d put together a link post, with a few random things I stumbled over today.

  • The Coronavirus Still Doesn’t Care About Your Feelings – from The Nation. I don’t really have anything to say about this, but thought it was relevant to my current situation.
  • The cult of Obsidian – from Fast Company. I’ve mostly given up on Obsidian, and have decided to remain with Evernote for now. But I still think Obsidian is interesting, and I may return to it at some point. I’m a little interested in maybe picking up David Sparks’ Obsidian Field Guide, now that it’s out, though there wouldn’t be much point in that, if I’m not going to use Obsidian.
  • I just saw the news that JHU in Manhattan has closed, via this interview at The Beat. I’ve been going to JHU since back when it was in A&S Plaza. So that’s got to be back in the early 90s, since it was only called A&S Plaza from 1989-1995 (per Wikipedia). I always liked that store, both before and after Jim Hanley retired. Mind you, I haven’t been there in a while. I can’t really remember the last time I was there. In more recent years, I’ve been more likely to stop by Midtown Comics, mostly just because I’m more likely to pass by there on my way to or from Penn Station.

I’ve skimmed some of the news coming out of NYCC, but there’s not much that caught my eye. I looked at the Harvey winners, and there’s some interesting stuff in there. Having just spent a week at home, sick, you’d think I would have done some comic reading, but nope. I didn’t really have the energy for it earlier in the week. Then, on Wednesday, I decided to start watching Only Murders In The Building, and that kept me out of trouble from Wednesday through Friday. (I watched one season per day.) I should probably talk myself into doing some reading today and tomorrow, but I’m still not sure I have enough energy for it.

I got COVID

I got my COVID and flu shots on Saturday, as planned. On Sunday, I had a fair bit of pain in the arm where I’d gotten the COVID shot. But no other obvious side-effects. Then, on Monday, I woke up with my usual set of cold/flu-like symptoms: headache, slight fever, runny nose, etc. I assumed it was just side-effects of the COVID and/or flu shots.

It was still pretty bad on Tuesday, so I did a tele-medicine thing through CVS. The doctor there told me that, yes, it was probably just side-effects from the vaccines, but that I should do a COVID test. So I did that, and it came back positive. I really should have gone back and done a second call with CVS, but I didn’t. I can’t tell you why, except that I was pretty sick and just wanted to sleep. And I was hoping maybe it was a false positive.

I  was still sick on Thursday, so I did a second COVID test and that came back positive too. This time, I decided to call my regular doctor and see what she said. She wasn’t in the office that day, but her receptionist acted as a go-between, and she prescribed Paxlovid for me. In retrospect, I really should have reported the positive COVID test on Tuesday and gotten started with the Paxlovid then. Better late than never, I guess.

So now it’s Friday, and I’m feeling a little better. I probably could have gone back to work today (remotely of course), but I decided to just take a full week off. Better to get one more day of rest. The Paxlovid has a couple of side-effects. The worst is the metallic taste it leaves in my mouth. It’s quite unpleasant, and it doesn’t go away. (It’s not just the aftertaste of the pills, so you can’t just wash it out.)

So the plan now is to isolate through the weekend and start back at work on Monday, working remotely all week. Our company doesn’t have a firm policy about that, but I’m pretty sure it’s OK for me to do that. I’d like to be in the office for at least one day next week, if I could, since we’re supposed to have a meeting with the guy who (I think) will be my new boss, and it would be good to meet him in person. (My current boss is retiring at the end of the year.) But hopefully I can participate in that meeting via Teams.

Meanwhile, NYCC started yesterday. I guess I’m glad that I didn’t make plans for that, since I would have had to cancel them. I haven’t kept up with any news coming out of the con, since I’ve been pretty out of it, prior to today. This whole thing has made me even more reticent to go out and re-enter the world (as it were). And it’s made me realize that I’ve gotten a bit too lax about masking up. Lately, I’ve been skipping the mask sometimes, in environments where I should probably be wearing one (even though no one else is…).

 

NYCC, football, booster shots, and other stuff

It’s Sunday morning, and I’ve got a bunch of assorted thoughts kicking around in my head, so I’m going to try to write a rambling blog post, and see what shakes out.

NYCC

NYCC is next weekend. I’m not going this year. And I’m not even enthusiastic about watching any panels from home, really. I looked at the schedule of what would be streaming via Popverse, and there’s not much that looks interesting to me. I’m pretty sure that NYCC 2021 was the last time I went into NYC for anything. (Leaving out the time in 2022 when I passed through on my way to Albany.)

It’s also occurred to me that I haven’t really taken a vacation this year, and we’re getting near the end of the year. I’ve used up a fair bit of my PTO time this year on sick days, but I could still take a few days. I should probably do that. I don’t need to have a plan to do anything specific, but it would probably be good for my mental health to check out from work for a bit and go for some long walks or something.

TV and TiVo

I see from my “On This Day” widget that I bought my TiVo eight years ago. I keep thinking about finally getting rid of it and pulling the plug on cable TV entirely, but I’m still hanging on to it. I only get the basic broadcast channels through cable now, but that’s still useful for stuff, including football, news, and a handful of shows.

Meanwhile, I talked myself into signing up for NFL+ yesterday, mostly because it was 50% off, and because I kinda wanted to watch the Jaguars/Bills game from London this morning at 9:30, and it’s only on NFL Network. So now I’ve got subscriptions to both MLB.TV and NFL+. At some point, I’m going to have to cull some of these subscriptions. I’ve got Netflix, Peacock, Paramount+, and the Disney+ bundle, plus Apple TV+ from my Apple One bundle, and Amazon Prime Video.

The Giants are doing pretty bad this year, by the way, and I usually lose interest in football if the Giants aren’t doing well, but I still haven’t given up hope this year just yet.

COVID and flu shots

I got my COVID booster and flu shot yesterday, COVID in the left arm and flu in the right. My right arm is fine today, but the left arm hurts a lot. It was bad enough overnight that I couldn’t put any weight on it, so every time I rolled left, I got a stab of pain. That made for a rough night.

I’ve noticed that all of the “ceremony” around COVID shots is basically gone now. The person who gave me the shots didn’t ask for my vaccination card or ask me to sit around CVS for 15 minutes afterward. And the old CDC V-safe program was shut down earlier this year, so I won’t get all of those fun text messages this time. So I guess we’re in the phase now where we’ll just be getting a yearly flu shot and COVID shot together every year, and it’ll be no big deal. Oh well.

Social media

Like most sane people, I’ve almost entirely given up on Twitter now. I’m mostly using Mastodon and Threads. I’d hoped that most of the people I followed on Twitter would move over to Mastodon, but that didn’t happen. A bunch of the tech folks moved to Mastodon, but most non-tech folks (and news orgs) have moved to Threads instead. That’s not great, since Threads doesn’t have any third-party clients, and will probably eventually have ads and a bunch of other dumb cruft, but it’s good enough for now, I guess.

Right now, I’m listening to Sleepy Hollow on XPN, and Julian Booker, who used to post the playlist to Twitter, is posting it to Threads. So it’s that kinda stuff that’s probably going to wind up on something like Threads rather than Mastodon, and I guess I need to deal with that.

In theory, Threads is eventually going to support ActivityPub, so there will probably be a way to consolidate my Mastodon and Threads browsing into a single third-party client at some point. (Assuming Meta isn’t pulling a Lucy/football thing and lying to us about ActivityPub support…)

Speaking of Lucy/football stuff, here are a couple of fun takes on that from today’s Foxtrot and an older Off The Mark. And, while I’m posting comic strip links, I liked today’s Cul De Sac too!

Quicken Classic

I’ve been using Quicken for a long time, and I’ve been complaining about it for nearly as long. (My earliest Quicken complaint on this blog is likely this one from 2004.) And, once in a while, I get frustrated enough with it that I start looking for alternatives. There were two things that happened recently that have got me interested in that again.

First, they’ve changed the name of the desktop product to Quicken Classic. Here’s a video where their CEO tries to explain that. The name change itself doesn’t really matter to me, but it makes me worry a bit that they’re de-emphasizing the desktop product even more than they already have. Their web product is called Simplifi, and it might be worth thinking about switching to that, but I’m not keen on that idea. I’m pretty sure I’d lose all my history and wouldn’t have nearly the same functionality I have with the desktop app.

The second thing that got me thinking about moving off Quicken again is some continuing issues with the link to my 401(k) account. I’ve searched the web and found a bunch of other people are also having trouble with Fidelity, which is the provider for the 401(k). In my case, the funds got pretty mixed up, so I deleted and re-created the account in Quicken. That got me a bit further, but there was still a weird thing going on where it looked like I had twice as much money in the account as I actually do. I might have fixed that now, but I won’t really know for sure until I sync the account again.

When I have trouble with Quicken, I start getting “the grass is greener on the other side” thoughts, but then if I stop myself, I realize that Quicken is still the biggest player out there, so if Quicken is having issues with Fidelity, then smaller players like Banktivity and MoneyDance probably are too.

Maybe it’s time to give up on this stuff entirely and just switch to keeping a summary spreadsheet, where I update some high-level numbers once a month.