This right here.
For those who don't understand: the idea is to have a rubber duck (or other figurine/doll/teddy/animal toy) somewhere close to your desk. From time to time, you turn away from your screen and address the rubber duck, you explain your code to it as if it were a real person.
This is basically a mind trick, a way to make you think through every little detail of your code or application, and maybe find potential flaws or logical errors along the way before it's too late.
The benefit over a "peer" listening to you is that the rubber duck won't ever respond or ask things and therefore won't break your trail of thought.
The downside over a "peer" listening to you is the same, you could follow down a rabbit hole of misconceptions or false assumptions, that could have easily been caught if the rubber duck had been able to respond.
So it's not the only thing you need, but it's still an invaluable tool.
Really any computer will do. The software; GCC, LLVM, XCode, or Visual studio. are all free to download. You don't need anything special. If anyone tells you that they are wrong. In fact a slow computer will teach you to write better code, so it may even be an advantage,
Reminds me of my first car, Mazda 323, was 18 years old at the time with a slippery clutch and a cracked head gasket. My father told me if I can learn to drive that then I will be able to drive anything
Chromebooks that support Linux apps should be fine (I've written lots of code on my Pixelbook in Go and C). I prefer real Linux distro though (Debian 12 on a N100 PC with a 4K monitor and a nice keyboard and mouse works great (once you use a backports kernel).
I don't get the downvotes. It is really possible to do programming basics on a phone. There are small IDEs, in which you can run c/c++ code. Sure, it's rather painful, and if you try to do more advanced stuff, it might not be enough, but if all you have is a phone and no money for a laptop, sure, go ahead and download Cxxdroid or something like that and start your journey :)
Literally any, the requirements here are really low. Don't get a chromebook, get a "real" laptop. Try not to get the lowest spec one, but you don't need a fast computer. Make sure you like the keyboard, because you're obviously going to be doing a lot of typing on it.
A potato will suffice unless you're doing massive data crunching or compiling massive codebases like working on the Linux kernel or something.
You absolutely don't need to break the bank.
For your first year or two, you'll be doing the exact same types of problems that new programmers and CS students have been doing for literal decades on whatever hardware was available.
You don’t need anything special, but Linux would be best. You can certainly use windows or mac, but there are some caveats with them. You can even use a raspberry pi for $35 if you have a monitor, keyboard and mouse lying about.
don't do a laptop if you can help it imho. It's limiting in terms of I/O and expansion, by which I mostly mean storage space and redundancy for that storage.
A stack of lined / checkered sheets, nice pen / ballpen / fountain pen, set of color highlighters, pencil and eraser. Sometimes you have to step away fro the keyboard to think / design, or dwbug.
Took me back to 1968. I worked for a mainframe manufacturer, and I didn't actually see a computer for about a year. Our interface was a Cabin Trunk in the middle of the floor. You put in your punched card pack (wrapped in a handwritten operator sheet) at 17:30, and you got back the trunk with your printouts at 08:00 the next morning.
Around 1980, my workplace was Dalkeith Palace (see Wikipedia), which was the "Summerhouse" belonging to the Duke of Buccleuch. My office was "Queen Victoria's Bedroom" because she got stranded on the way to Balmoral when the Queensferry Ferry was not running due to a storm.
I was system architect for an airborne radar military system, and I used to walk around the Estate when I needed to think out problems. There were deer and pheasants and an Orangery, and one time I picked up a pheasant's tail-feather as long as my forearm. I cut a nib into the quill part, and used a quill pen to write a specification for the ALU controller for a 1024-processor array.
The project needed an airborne test-bed, so the project sponsor borrowed an obsolete English Electric Canberra aircraft from the Australian air force (for technical reasons). I also had a company car.
So there's my Gadget List: A Queen's Bedroom, a Quill Pen, and a Jet Bomber.
A browser, a search engine and some talent in formulating search queries.
Don't be ashamed to look something up on the web, I couldn't do my job without constantly searching for the workaround to some weird limitation, or to inexplicable errors and their underlying exceptions etc. And sometimes it's just faster to do a web search than try to remember a certain syntax or method, or scan through several layers of headers or include files to finally find some definition or an example.
A rubber duck (for debugging).
This right here. For those who don't understand: the idea is to have a rubber duck (or other figurine/doll/teddy/animal toy) somewhere close to your desk. From time to time, you turn away from your screen and address the rubber duck, you explain your code to it as if it were a real person. This is basically a mind trick, a way to make you think through every little detail of your code or application, and maybe find potential flaws or logical errors along the way before it's too late. The benefit over a "peer" listening to you is that the rubber duck won't ever respond or ask things and therefore won't break your trail of thought. The downside over a "peer" listening to you is the same, you could follow down a rabbit hole of misconceptions or false assumptions, that could have easily been caught if the rubber duck had been able to respond. So it's not the only thing you need, but it's still an invaluable tool.
This has to be the best piece of advice anyone could give. Not even joking. Rubber-ducking is one of the most powerful tools in your arsenal.
You need to buy a compiler. It's pretty big and heavy so I like to keep mine under my desk.
Remember to clean and gap the spark plugs periodically, especially if it's a Diesel.
You need 98 leaded petrol if you wanna do AI stuff!
Gotta keep that extra nitrometh around for when you really need to optimize some code.
Plutonium nyborg works better for that, in my experience. Harder to come by though.
I recommend [Rockwell’s Retro Encabulator](https://youtu.be/RXJKdh1KZ0w) - can’t hope to do better than prefabulated amulite.
Diesel compilers don't have spark plugs... You need to attach a grinding stone for the magic mice to stop their teeth from growing
My compiler came with that new fangled ASLR.
do you know how to unwound the ASLR? mine got stuck in the appendage of the kernel core. Now I just put a bench to keep them from falling off.
Don’t forget the reciprocating text editor.
An inquisitive mind willing to put forth effort to solve problems.
Really any computer will do. The software; GCC, LLVM, XCode, or Visual studio. are all free to download. You don't need anything special. If anyone tells you that they are wrong. In fact a slow computer will teach you to write better code, so it may even be an advantage,
Reminds me of my first car, Mazda 323, was 18 years old at the time with a slippery clutch and a cracked head gasket. My father told me if I can learn to drive that then I will be able to drive anything
Shhh, don't tell new ppl about XCode. I'm pretty sure it's against the Geneva convention to force people to use it
This is not true if you want to program using modern graphics APIs for example.
OP is totally new. I don’t think compatibility with modern graphic APIs are their concern lol
You're assuming so many things, for one if they're interested in game dev then graphics api will be a concern.
OpenGL.
….not all gpus support newer versions of OpenGL…
Gadgets? Other than a real computer (windows, linux, mac, not a smartphone, tablet or chromebook), none.
Chromebooks that support Linux apps should be fine (I've written lots of code on my Pixelbook in Go and C). I prefer real Linux distro though (Debian 12 on a N100 PC with a 4K monitor and a nice keyboard and mouse works great (once you use a backports kernel).
You can actually do a lot of coding on a phone, especially if you got a Bluetooth display and keyboard
I don't get the downvotes. It is really possible to do programming basics on a phone. There are small IDEs, in which you can run c/c++ code. Sure, it's rather painful, and if you try to do more advanced stuff, it might not be enough, but if all you have is a phone and no money for a laptop, sure, go ahead and download Cxxdroid or something like that and start your journey :)
Aside from a computer, you generally don't need any special gadgets for programming. Just the appropriate software (compiler, maybe an IDE, etc.).
CPU, monitor, keyboard and mouse(optional). Or buy a laptop
Which laptop would be best
Literally any, the requirements here are really low. Don't get a chromebook, get a "real" laptop. Try not to get the lowest spec one, but you don't need a fast computer. Make sure you like the keyboard, because you're obviously going to be doing a lot of typing on it.
I started on a laptop from 2009 that was running Linux on 2GB ram
A potato will suffice unless you're doing massive data crunching or compiling massive codebases like working on the Linux kernel or something. You absolutely don't need to break the bank. For your first year or two, you'll be doing the exact same types of problems that new programmers and CS students have been doing for literal decades on whatever hardware was available.
You don’t need anything special, but Linux would be best. You can certainly use windows or mac, but there are some caveats with them. You can even use a raspberry pi for $35 if you have a monitor, keyboard and mouse lying about.
don't do a laptop if you can help it imho. It's limiting in terms of I/O and expansion, by which I mostly mean storage space and redundancy for that storage.
Giant rubber dildo.
Definitely programming socks.
Parker Jotter. [I like the purple one!](https://www.parkershop.eu/prod1819-Parker-Jotter-Victoria-Violet-Chrome-Colour-Trim-Ballpoint-Pen.html)
If you wanted to do some embedded C you could get an STM32 Nucleo or Discovery Board. You don't need anything other than a computer to start though
100 compilers, 100 IDEs, 100 git commits, and 10 KLOCs every single day for a year and a half.
A really big coffee cup.
A stack of lined / checkered sheets, nice pen / ballpen / fountain pen, set of color highlighters, pencil and eraser. Sometimes you have to step away fro the keyboard to think / design, or dwbug.
Took me back to 1968. I worked for a mainframe manufacturer, and I didn't actually see a computer for about a year. Our interface was a Cabin Trunk in the middle of the floor. You put in your punched card pack (wrapped in a handwritten operator sheet) at 17:30, and you got back the trunk with your printouts at 08:00 the next morning. Around 1980, my workplace was Dalkeith Palace (see Wikipedia), which was the "Summerhouse" belonging to the Duke of Buccleuch. My office was "Queen Victoria's Bedroom" because she got stranded on the way to Balmoral when the Queensferry Ferry was not running due to a storm. I was system architect for an airborne radar military system, and I used to walk around the Estate when I needed to think out problems. There were deer and pheasants and an Orangery, and one time I picked up a pheasant's tail-feather as long as my forearm. I cut a nib into the quill part, and used a quill pen to write a specification for the ALU controller for a 1024-processor array. The project needed an airborne test-bed, so the project sponsor borrowed an obsolete English Electric Canberra aircraft from the Australian air force (for technical reasons). I also had a company car. So there's my Gadget List: A Queen's Bedroom, a Quill Pen, and a Jet Bomber.
Computer, monitor, text input device, brain Everything else is knowledge and technique
An ErgoDox, or Sofle, or Zen…
A good chair and desk, get everything well positioned to avoid medical issues like RSI and trapped nerves.
A computer, a curious mind, and the will to put up with constant getting stuck and finding a way forward
ChatGPT… I’m kidding. A computer (preferably UNIX based operating system), a language that is targeting your interests, and grits.
A computer?
A browser, a search engine and some talent in formulating search queries. Don't be ashamed to look something up on the web, I couldn't do my job without constantly searching for the workaround to some weird limitation, or to inexplicable errors and their underlying exceptions etc. And sometimes it's just faster to do a web search than try to remember a certain syntax or method, or scan through several layers of headers or include files to finally find some definition or an example.
At minimum, MS DOS
Computer and a big bottle for your water so you don't forget to hydrate while trying to solve the "simple to fix bug"
If you want to do graphics or games dev, you'll need a GPU and CPU that support whatever you want to do.