Advent of Code

I didn’t do much programming in college, but I have done a lot on the job. Mostly C++ in Linux. Then I found Python. It’s really great for these puzzles. The gif I made was just fast output to the terminal with prints. I have made several programs with ncurses, which would have made that really smooth. I’ve also done a bunch of opengl, qt, gtk2, openscenegraph, etc. No way am I going to mess with that if I don’t have to though. This is supposed to be fun!

You know I was thinking I was missing something when I was in school. Thanks I now know I didnt. I am not really interested in making games or 3d games like WOW. I just like to be able to screw around with code when I feel like. Thanks for the link. I will be checking that stuff out for my Brain health. :smiley: In retirement that is :smiley:

At least in my work, which is heavy on physics and algorithms and simulation, there is a need for everyone to know at least some way to visualize what their code is doing. I don’t write GUIs for a living, but my living requires writing GUIs. At the end of the day, a good visualization of your software can be better at gaining support than results. There have been many contracts won with a video of the debugging GUI.

Luckily, they all work about the same. The api is always different, but you always need to worry about the same things.

I first learned to program when I was 13 on a tandy color computer 80 or a TRS 80. It was in basic. In High School in 86 I learned fortran and C inside of a few months. I soaked it up like a sponge. In College after I had several years working with PLC’s in the field as a tech and diag and repairing their unusual problems I started formal college up and learned OOP. Best time of my life in college was the programming track. I had 10 classes in the associates program and another 10 in the bachelors program. :smiley:

1 Like

Hey Jeff is there an outline pdf of the MPCNC Burly? I thought I saw one somewhere. I wanted to get a visual of what it may look like. I’m slicing all the parts at the moment and trying to decide what will be blue vs red. Thanks

I’m not sure what you’re looking for. There is a dxf outline (Ryan drew them at mrrf, so search for mrrf). But what you really want is the parts page. Each row has a color. That’s how Ryan splits up the colors in his prints:

https://www.v1engineering.com/blog/parts/

thanks thats exactly what I was looking for. the outline he had that was on his wall he had in the frame. I also saw it on other things ppl had lazered. Thanks bud. I appreciate the quick feedback. :smiley:

Maybe you were thinking of this?

1 Like

Yes and I have the parts all printed up and labeled on how many is needed. lol. Your nailed it. Those are what I was looking for. Thank y ou. I just printed them and I will add color and try to visualize what I am trying to achieve with the colors. :smiley: You know the type plan plan plan :smiley:

[sarcasm]Thanks for this, @jeffeb3 [/sarcasm]

I learned BASIC on an ATARI 800 back in the 80’s, then FORTRAN and Pascal in college, but I haven’t had access to any programming language (except VBA) for 25 years plus a career and family, so I haven’t done any programming. I purchased a RaspPi a few years ago, but again life and family kept me from really learning any Python, but I got excited when I saw AdventOfCode and thought it would be a great excuse to work through the puzzles and force myself to learn Python in the process.

I completed 2015 day 1 and day 2 pretty easily, but I spent ALL DAY yesterday on day 3 (mostly part 2)…I was 99% correct, but I was encoding the houses poorly so I corrupted my own data scheme.

All this to say, I thought “oh, I’ll just work on this puzzle for a bit,” and boom, the whole day was gone. OMG

[sincerity]I am actually enjoying this and I’m actually learning, which was the point, so Thank you.[/sincerity]
:+1:

That’s great. I had a lot of fun and I used python, which is not my daily language, but it is so enjoyable to me (my daily is C++).

There are some good answers in the subreddit, but it is a pandoras box, and you will see how quickly others handle it.

Processing seems like another good language to try them in.

My language of choice is python. Some C … If I have too. I do a lot of job automation and data sciency stuff. Python is perfect for all this stuff.
I like doing hackerrank, codewarz, and general CTF/hackathons. The company I work for hosts a lot.

I was pretty frustrated on the last puzzle I worked on…I cannot believe that Python doesn’t have the ability to make a simple array (2D table). I wasted a bunch of time investigting NumPy and still couldn’t get what I wanted, so I settled for making a Dictionary.

A 2D list is a list of lists.

1, 2
3, 4
array = [ [1, 2], [3, 4] ]

four = array[1][1]

This can get hairy quickly though. There are lots of ways to make it more manageable, but this is the brute force way of doing that.

I saw several examples like that, but I wanted read & write to the array, and I couldn’t find an example, which made me think I couldn’t

array[1][1]=new value

You can write to lists [], but not tuples (). :man_shrugging:

The elements need to be there though, you can’t write to array[1][2]

I’ve been wanting to learn Rust.

I’ve been wanting to see how an AI sidekick can help my programming workflow.

Advent of Code seemed like a good testing ground to try them both, where I can dive in with a language that’s new to me and see what happens.

I’m 7 puzzles down and so far I am really liking it. I haven’t asked the AI for any high-level strategy, rather it’s just a replacement for googling the details, e.g. how do I map a closure onto a list. With it I am almost as fast in a brand new language as I would be in a familiar language. My code might not be idiomatic, and it might be less efficient (maybe clone() could be avoided with magic borrowing that is not yet second-nature), but it works.

Now I need to push the limit of how far up the abstraction hierarchy I can ask for help. My habit has been to only ask for details. Maybe I am leaving a lot of capability on the table by not asking it to do more.

2 Likes

I have yet to try it out. I have also wanted to learn rust. I probably will in the next year or so. It is getting closer and closer to my daily work.

I am still undecided on the ai tools. When I ask it for anything I know a lot about, it is wrong. But if I ask it for something very common (like sort this list based on a distance function in rust), maybe it would be fine.

I agree. I had a similar bad experience at first. I caught it making a very high error rate.

So I’m guessing if I know less than the average person on the internet, it’s probably helpful. If I know more than the average person on the internet, it’s a step down. And in addition, there are some special areas where it is very good like poetry (which for me is not particularly useful), and some areas where it is unbelievably bad, like arithmetic.

I also asked it to critique my style for idioms and efficiency and it pointed out some helpful things that I would not have known to look for. It’s starting to look like the value for my context is more as a teaching tool and not as a productivity tool, which is consistent with what I have tried before (in not being particularly helpful for productivity).