Looking for Introduction to Programming


#1

So I’m really interested in taking @Johnny5’s Fast LED Workshop if it becomes available.

Unfortunately, I asked if it requires prior education, and he confirmed that one needs to have some knowledge of programming.

Doesn’t need to be extensive, but in order to cover both the LED animation as well as sound reactive capability in a 4 hour time frame, I’d be hard pressed to also go over basics such as variables, arrays, loops, if statements, etc.

How should I go about this? like, what language should I start learning and where? Do you have a favourite tutorial website or youtube series? Paid or free?


#2

Hey Laura if you have the time, I highly recommend taking CS50 online. It’s free also! It covers some C, which is useful for Arduino but the best part I think is the overall approach to programming.


#3

I am on my phone at work and saw your message by email. Is there a date set for the light workshop you want to be ready for?


#4

@miststlkr Well, the workshop isn’t set yet, so it’d be by what @Johnny5 says. :smiley:

I did the Responsive Web Design from Free Code Camp over a few days, so hopefully I can get a few basics in before it comes down to crunch.

https://learn.freecodecamp.org/


#5

Have you done any Arduino programming? If you have the IDE installed and an Arduino board to play with you can do some basic led blinking… The addressable led and fastLed projects are just a bit more complex (imho)…


#6

@packetbob I have done nothing and know nothing and own nothing! :smiley:

It’s one of my struggles to get started, I would love if there was some sort of tutorial or pre-made shopping list on what to buy so I don’t purchase the wrong thing.


#7

If you have a laptop download and install the Arduino IDE (https://s4scoding.com/how-to-download-and-install-the-arduino-ide-software/)…
If you come to the Space tomorrow night (with the laptop that has the Arduino IDE installed) I’ll be there and will bring some knock off Arduino NANOs for $6 each…(I’ll bring a few in the event anyone else wants a quick and dirty intro)
If all goes well you should be able to make the NANOs on board led flash by the end of the night…
On a PC it should go pretty easy but some times MACs have driver issues…


#8

I have some free addressable LEDS also for you Laura - the same kind that’ll be used in the light workshop. Will bring in thursday.


#9

Yay Thursday LED party.


#10

I’ll do an intro to Arduino workshop before his if he is not in a rush


#11

My 12yo recently got a lot of mileage out of a Tinkercad Arduino simulation, it allows Scratch-style visual coding, and shows the C-syntax alongside.


#12

I saw a Facebook ad a few times for a “free Arduino kit”. Just had to pay about 10-13 for shipping, and it took about 3 weeks, but here it is.

Look for inventr or inventr.io


#13

Should be a few people around that have Arduino or Arduino-compatible stuff kicking around, and can loan/give them out for free.

I have some STM32F1 “Blue Pill” boards I’d be happy to loan out (they’re like $2 + $2 for the programmer), but they might not be the most user friendly for starting.


#14

I got the free Uno clone as a starter (and had fun making the onboard led blink; fast blink, slow blink, all the blinks!)
I just need a laptop, but may head to Freegeek


#15

One other strategy is that I’d recommend learning Python as a first language. It runs on Windows/Mac OS/Linux, quick and easy to get set up, and is one of the, say, 5 most popular languages. It’s very clean and well designed, has a ton of material available for learning programming for the first time, and just about any problem you could have is easily searchable on Altavista or whatever.

Because “learning the language itself” isn’t the hard part of learning to code, it’s internalising the systematic / logical thinking, almost all of the concepts you’ll learn will be easily applicable to other languages down the road.

You can start immediately :slight_smile:

Learning for learning’s sake is usually pretty tough with coding, though. It helps to have a problem/project you want to solve, and then work towards that. It’s like a puzzle that accidentally teaches you to code along the way.


#16

Learning python also lets you take advantage of Circuit Python.

Adafruit may be a good source of resources for picking up both. I haven’t played with it personally, but I’ve heard very good things about the Circuit Express board. It has a bunch of sensors and RGB LEDs right on it.

Price is pretty great too. (~$32, though locally Lee’s is out of stock: https://leeselectronic.com/en/product/16439.html)


#17

That’s a nice add-on for future projects for sure, but I would definitely avoid CircuitPython / Micropython while learning the very basics. It adds a whole other level of things that can go wrong.


#18

Thanks so much, @Janet first hosting tonight and @packetbob, both of you for teaching me how to start programming and soldering. This is a great entry, and I can get started with a world of blinky lights! I can’t wait to download new libraries and perhaps of some of my own coding.

Happy Easter weekend, you guys!


#19

Yay @Laura! That was really great! So nice to hang out with you and @packetbob and play with arduinos and addressable LEDs. Also now I appreciate the beauty of those velcro ties…so soft.

Also great you did soldering! Look at this joint - so purty. Looking forward to seeing what you get up to with blinky lights and libraries and code!

image


#20

Laura - It may be presumptuous of me, but I know you are into sewing and soft crafts, I would suggest you have a look at Adafruit Trinket and Adafruit Flora. They are arduino-compatible and designed for wearable projects. I figure that may be of interest to you. I’m a big fan of the Trinket, personally. The primart down side is that they reduced the number of IO pins in order to make therm small and easy to hide, but depending on the project that may not be an issue.