๐Ÿ’พ Archived View for bbs.geminispace.org โ€บ s โ€บ Lisp โ€บ 22859 captured on 2024-12-17 at 15:01:22. Gemini links have been rewritten to link to archived content

View Raw

More Information

-=-=-=-=-=-=-

Learning Lisp as a non prgrammer: AI to the rescue?

Edit - Corrected small mistake.

Hi there!

So I've been trying to learn Racket with the HTDP method as a non-programmer, and it's not going well...

The people of the Racket community are lovely and willing to help, but the so-called "beginners" section of their forum is so intimidating, I just feel embarassed asking stupid questions. That forum does *not* differentiate between "Newcomers to Racket", and "Absolute noobs"... They all go in the beginners section.

HTDP is much more difficult than advertised for self-learning, even though I'm totally fascinated with Lisp as a "tool for thought".

I stopped and resumed the course several times over the past four years, when it's supposed to take less than six months to complete it.

In my case, the lessons are clear and understandable, but the exercises are frustrating because they seem to have been written by a totally different person than the professor.

So I have two questions for you guys:

1) Is this a "sunk cost fallacy" type of scenario? Should I just admit that I'm not fit for this type of activity and let it go?

2) If not, do you guys have advice on how to effectively use AI as teacher? For now, I've just been asking for introductory explanations on the specific topics I'd be on, but that's it. Maybe there are more inventive ways of getting AI to help?

Anyway... Thanks for reading! Cheers!

Posted in: s/Lisp

๐Ÿ˜บ Nono

Dec 16 ยท 1 day ago ยท ๐Ÿ‘ CarloMonte, HanzBrix

6 Comments โ†“

๐Ÿธ HanzBrix ยท 22 hours ago:

AI is a terrible teacher, it gets a lot of stuff wrong, but you won't have the experience to know it is wrong. Which means you'll learn the wrong way to use it and might cause a lot of bugs or inefficiencies in your code.

Learning to code is never a sunk cost fallacy, for the mere fact that you are learning more about a tool you use every day, a computer.

You will feel stupid, but keep going to the forums, people are excited that you just want to learn their favorite language. There will be elitists, you can ignore those.

While Lisp has some oddities that doesn't lend itself to other languages, a good chunk of it is still learning how to "think" code.

๐Ÿ satch ยท 20 hours ago:

I'll have to disagree with @HanxBrix and say that while AI is a worse teacher than a real live person who knows the material and will talk to you, in most cases it's a lot better than nothing.

Strategies for effective learning with LLMs:

By following these guidelines, you should have a positive learning experience which allows LLMs to make knowledge and understanding accessible to you which wouldn't be otherwise.

โ€” ๐Ÿ™ƒ

PS - Don't give up!

๐Ÿš€ stack ยท 18 hours ago:

I've experimented with ChatGPT as a coding assistant, and here is what I've learned:

It is great if you know the subject, and just need a quick reminder. But it is often completely wrong. If you know the subject, you can ask again and it sometimes corrects itself. Again, you need to know enough to tell if it is hallucinating.

For instance: it is great as a manpage+ -- it provides examples of usage, and you can conversationally ask it about parameters, and it is mostly correct.

It is useful to provide boilerlplate. I asked it to write a particular kind of a unix domain socket server, and it gave me a couple of pages of C code, a good start. But it left out a crucial detail which made it not work, and it took me a couple of hours of research to figure it out.

When I asked it for some key binding advice for an editor, it was right on until it gave me entirely incorrect info. When I challenged it, it game me a different, incorrect binding 3 times, after apologizing profusely.

When learning spanish, it told me that 'esto' is the neuter form of the word, entirely wrong. Otherwise it gave me good advice, including what native speakers would say in particular circumstances. Although I don't know enough spanish to catch more subtle errors!

To summarize, it is nearly useless, and I laugh when I hear about the "AI revolution" and "programmers will lose their jobs" on the mainstream media news. Yeah, they will lose their jobs if they use ChatGPT to do their work.

If you are an expert, you can use it as a terrible assistant who knows quite a bit but will lie shamelessly -- at your own risk.

๐Ÿš€ stack ยท 17 hours ago:

Learning Lisp, you will encounter a few walls that you just have to push through.

- crawling through sexps and lists and trees

- really understanding bindings and closures

- macros

These are very different from anything else in other languages, and will break your brain.

It just means that you are doing it right!

It gets easier, and if you get through, you will understand that Python was created by a moron, and other things that you will have to keep to yourself.

PS I would strongly recommend switching to Common Lisp as soon as practicable. There are too many good reasons to go into here.

๐Ÿ‘บ daruma ยท 17 hours ago:

I'm not a season programmer. I've never been good a programing and I have to accept it. Although the early feeling of creating something is great, fixing bug, troubleshooting, and maintaining code is something I cannot do, even if my life depended on it. But I understand programing enough to play with it. I am also in the process of really slowly learning lisp. How am I envisioning to do that? By learning how to use emacs. The idea of scripting thing to help my in my writing and creative process seems good enough to get me going. for me these are my coding lessons:

- Start small

- Make something that is really useful even if simple

๐Ÿš€ stack ยท 17 hours ago:

Emacs lisp is a decent way to get going.

Although I chose to dive in head first into CL, after deliberating about whether to choose Common Lisp or a Scheme. CL was definitely the right choice, even though Scheme appears to be more minimal... Scheme completely misses the mark when it comes to practical coding, and especially, macros.

PS...I thought I was a seasoned programmer but then I learned lisp and realized I had spent my life just diddling around in the sandbox.