TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Ask HN: Where did you first learn to code?

18 点作者 Genius_um大约 1 年前
Is it with books, tutorials, microcomputer manuals like before, courses, anyone ? Tell us everything.<p>For beginners, come see here for advice on the best way to learn coding. I&#x27;m pretty sure there will be experts among us.

33 条评论

romanhn大约 1 年前
I don&#x27;t think I&#x27;d recommend the learning environment I had 30+ years ago - there&#x27;s just so much more information these days catering to all kinds of learners (whether you learn by reading, by watching, by doing). I was growing up in a Soviet&#x2F;post-Soviet space with basically no access to help outside of peers&#x2F;teachers and IDE help files. Books existed, but I didn&#x27;t happen to run into any in my early coding years.<p>Back then, you really had to want to code. My first exposure to coding was at school where we had to use basic drawing commands (LINE, CIRCLE, etc) to draw a house. You&#x27;d write your program at home, and type it up in class next day. First assignment was to draw a house, which everyone accomplished with like six lines. I spent a whole afternoon coming up with two pages of code resulting in a 3D house with door, windows, chimney, and some scenery. And that&#x27;s how I got hooked for life. Then came BASIC, Turbo Pascal, and the rest is history.<p>A lot of it was just banging my head on the table while exhausting every possibility. Some things don&#x27;t change with time I suppose :)
vparikh大约 1 年前
My uncle bought a TI-99&#x2F;4A when Texas Instruments were blowing them out for $49 around the summer of 1987 or so. Played Parsec with the voice module and that was it - I was hooked. I needed to figure out how it did this. Started with the BASIC programming books that came with the machine.<p>Begged my parents until they bought me a Commodore 64 with a 1541 drive. I go a subscription to Compute&#x27;s Gazette and typed in programs and figured out how they worked. Graduated to Richard Mansfield&#x27;s Machine Learning for Beginners (<a href="https:&#x2F;&#x2F;archive.org&#x2F;details&#x2F;Compute_s_Machine_Language_for_Beginners" rel="nofollow">https:&#x2F;&#x2F;archive.org&#x2F;details&#x2F;Compute_s_Machine_Language_for_B...</a>) and I was on my way. And poured over the &#x27;Antatomy of the Commodore 64&#x27; which had a dump of the annotated ROM firmware and poured over it to learn the machine inside and out (<a href="https:&#x2F;&#x2F;archive.org&#x2F;details&#x2F;The_Anatomy_of_the_Commodore_64&#x2F;mode&#x2F;2up&#x2F;" rel="nofollow">https:&#x2F;&#x2F;archive.org&#x2F;details&#x2F;The_Anatomy_of_the_Commodore_64&#x2F;...</a>)<p>And finally - dove into &#x27;The Kracker Jax Revealed Books 1, 2, 3&#x27; (<a href="https:&#x2F;&#x2F;www.lyonlabs.org&#x2F;commodore&#x2F;onrequest&#x2F;the_kracker_jax_revealed_trilogy.pdf" rel="nofollow">https:&#x2F;&#x2F;www.lyonlabs.org&#x2F;commodore&#x2F;onrequest&#x2F;the_kracker_jax...</a>) to learn all the protection schemes and how they were implemented to work around them. This taught me all of the tricks of disk access&#x2F;memory compression, encryption and obfuscation. This really showed me a lot of how low level coding to control micro controllers&#x2F;memory access&#x2F;hardware level coding etc.<p>I had about four friends in school from 4th grade to high school graduation that had 64s and we would spend lunch and recess discussing what we learned&#x2F;hacked&#x2F;discovered the night before. Sure we were outcasts - but then we were so obsessed within our little world we could care less about the petty teenage drama around us.<p>Good times. I miss those days. I look at kids today and feel kind of sad that they lack the opportunity and&#x2F;or the patience to do anything like that.
评论 #40020492 未加载
pplante大约 1 年前
I started playing with a pirated copy of VB3 on my computer and asked my parents for a programming book for my upcoming 12th birthday. My Dad got me a copy of Learn VB4 in 21 days on Oct 26th 1997. I was extremely excited until I saw the 600 page tome and felt overwhelmed. He died in a car accident around 1030pm on Oct 28th, right before my birthday on the 29th.<p>I spent the next few weeks absorbing that book as a way for me to honor his persistent career&#x2F;life advice that I use my mind rather than my hands. I&#x27;m 38 now and haven&#x27;t stopped coding.
cc101大约 1 年前
Stanford, 1968. From there on I continued to learn to code wherever I went. The darn field would not stop changing every 6 months or so! Same thing today. My current side project constantly demands I learn something new. Maybe it&#x27;s time to stop and learn something else.
评论 #40018080 未加载
JohnFen大约 1 年前
I learned to code when I was about 12, through a program intended to help smart schoolchildren who struggled in school.<p>And help it did! Not with school (I never figured out how to operate successfully in a school environment), but it was my first step that led to a career path that I&#x27;ve reaped the benefits of for over 35 years now.<p>But it was only the first step that lit a fire. From then on, I learned (and still learn) everything through reading books and magazines, doing, and picking apart the work of others.
Genius_um大约 1 年前
I personally thank everyone in the comment area who shared and will share their adventures with programming, their advice, their sources of learning. I can&#x27;t answer everything but in any case I&#x27;ve read them all. I saw that it did people good to remember memories from up to 60 years ago and to share them with other people. I learned things.
antfarm大约 1 年前
In 1986, when I was thirteen years old, I bought a Commodore 16 with datasette at a German supermarket chain (ALDI). The computer came in a “Learn To Program” bundle with a BASIC course (book and cassette).<p>My next computer was an Amstrad CPC6128 which came with a great built-in BASIC (Locomotive BASIC) that made graphics and sound very easy with built-in commands. The manual was excellent and illustrated the language with small examples.<p>My third computer, an Atari 1040STE, also came with an excellent BASIC (Omikron BASIC) and a printed manual. Later, while still in school, I even ordered a Simula 67 compiler and manual from Lund University in Sweden, having read about the language and object oriented simulation in a computer magazine.<p>Programming for me was hobby as a teenager in the 80s, I made small games and simulations and illustrations of math problems completely on my own with only the help of those manuals and no help of an adult.<p>Learning to program was a lot more accessible back then. I am often pondering the idea of building an educational app that captures the spirit and limitations of the experience a beginner programmer had in the 80s. Low level graphics and sound commands with obvious semantics (e.g. PLOT, DRAW, SOUND) are in my opinion the best building blocks for a curious beginner to create their own programs with. Loops, conditionals, variables etc. then become something you <i>want</i> to learn about because you <i>need</i> them to create what you have imagined.<p>I switched from backend engineering to iOS development 10 years ago partly because in my opinion it is the closest environment to the cozy world of home computers.<p>Oh, and there were two concepts I never fully understood when I was learning to program on my own, namely recursion and pointers. It took me until week 3 of my first computer science class at university (Algorithms and Data Structures, taught in Modula 2 btw.) to finally get it.
rufus_foreman大约 1 年前
I learned on an Apple ][ starting in 1978 or 1979. One of the books I learned from was BASIC Computer Games Microcomputer Edition, <a href="https:&#x2F;&#x2F;annarchive.com&#x2F;files&#x2F;Basic_Computer_Games_Microcomputer_Edition.pdf" rel="nofollow">https:&#x2F;&#x2F;annarchive.com&#x2F;files&#x2F;Basic_Computer_Games_Microcompu...</a>.<p>Versions of the BASIC language were slightly different, from what I remember some of the games wouldn&#x27;t run exactly as written in the book, I had to try to figure out what the issue was and fix it.<p>I remember looking at and playing with the source code for other games on the ][ as well. For Little Brick Out, there was one poke statement where you could change the value and turn the whole background into bricks instead of just having them on one side.
0xBDB大约 1 年前
At the risk of dating myself, I copied Basic programs by hand out of RUN magazine, typed them into my Commodore 64, and saved them on floppies on the separate add-on floppy drive I begged my parents for. ( I am just a bit too young for the tape drive peripheral).
qup大约 1 年前
My first code was vb6. Shoutout to any nerds from the #vb6 private chat on AOL. I made some aol &quot;progz&quot; as we called them--mainly programs that interacted with the AOL client, sending automated messages or watching for commands.<p>I started building websites in the 90s, that&#x27;s where I really learned. I wanted a website to exist, so I built it. I learned enough to implement the features I dreamed up. I started in HTML with server-side includes, and moved up to PHP which was my first proper web language. Things we take for granted (databases) were not always known to me--my first projects were all flat files with custom naming schemes.<p>The first code I remember seeing was GORILLA.BAS, in middle school. I began writing BASIC programs in composition notebooks. I don&#x27;t have the notebooks anymore, and I doubt they would run, but they were choose your own adventure type games. I didn&#x27;t have a computer until I was 16, though.<p>I also have run linux as my main OS since I was 16, and that exposes you variously to a lot of code, or at least it used to.<p>I&#x27;ve worked professionally as a web dev for many years based on this self-taught experience. I think the best way to learn to code is to build what you want. It will push your limits, but you&#x27;ll stick with it because you need the thing. Even when you&#x27;re very experienced, you have to learn new things with new projects. New APIs or libraries, new languages. So get used to it, just dive in and learn what you need to know today. It&#x27;s easier than ever.
评论 #40020751 未加载
hiAndrewQuinn大约 1 年前
Oh, I love this question.<p>I&#x27;ve never shared this before, but my very first experience with &quot;write lines into a text editor and run it&quot; coding was in the Boston Public Schools system, at age 8, when we spent a few days learning Turtle graphics in the computer lab. &quot;Move 10, turn 90 degrees, move 10, turn 90 degrees,&quot;... And you have a square! This would have been, ah, 2002 or 2003.<p>Python has turtle in its standard library. <a href="https:&#x2F;&#x2F;docs.python.org&#x2F;3&#x2F;library&#x2F;turtle.html" rel="nofollow">https:&#x2F;&#x2F;docs.python.org&#x2F;3&#x2F;library&#x2F;turtle.html</a> It makes me very, very happy.<p>Python 2.7 was also my first &quot;real&quot; programming language, which I learned at 14 while working a summer internship at Akamai Technologies after 9th grade. I managed to secure the position over some more talented friends because as soon as we had an Internet connected computer in the house I accidentally broke Windows, got my upstairs neighbor (who I later learned worked in bioinformatics, which explains a lot) to install Ubuntu 12 before my parents got home, and devoted virtually every waking hour of my life to reading Wikipedia, which meant I ended up reading a lot about computer programming terms. The first nontrivial program I remember writing was a polynomial division calculator in Python so I could check my math homework, which I would discover 10 years later helped me a lot with grokking finite fields. I always love when ideas across time knit together.<p>Python is still my go-to for roughing in ideas to this day. My subconscious sometimes generates nonsense Python code in my dreams after I&#x27;ve had a particularly productive day at work.<p>Since then I&#x27;ve added quite a few weapons to my arsenal. As a teenager I really enjoyed learning to program in different <i>paradigms</i> as opposed to just different coding styles, so I picked up some Scheme and Haskell early on and they&#x27;ve paid a lot of intellectual dividends. Learning good old fashioned C from K&amp;R has proven to be surprisingly useful context to this day.<p>Nowadays I&#x27;m much more pragmatic: If I can do it in a shell script, arguably the highest level programming of all, that&#x27;s where I start.<p>Thank you for giving me this opportunity to brag about how cool and geeky younger me was. His life was by no means perfect, but I think he handled things really well!
评论 #40021225 未加载
inetsee大约 1 年前
When I was about 13 years old (60 years ago) I discovered a programmed instruction text that taught machine language programming. Not assembly language, machine language. It would have a page of explanation, followed by a multiple choice question. Your choice of answer would direct you to another page in the book. If your answer was correct, you&#x27;d see the next page of instruction. If you were wrong the page you landed on would give an explanation that would hopefully clear up your misunderstanding. I gave a book report on the book which cemented my nerd cred for the rest of my time in high school.<p>It was another 4 years before I was in college and was able to run a program on an actual computer. An Algol program on a Burroughs B5500 mainframe, complete with punched card reader and line printer. After I graduated I got a job with a defense contractor, and spent the rest of my career working for defense contractors. At one of my jobs I worked on the flight computer software for the Air Force C-130 cargo plane and I would never fly in one of those planes, but that&#x27;s a story for another day.
mindcrime大约 1 年前
Well... the <i>very</i> first coding I did was on a Bally Arcade game console. One of the &quot;games&quot; you could get for it was a BASIC environment, so I&#x27;d run that and type in some BASIC programs from some book or magazine or whatever. I didn&#x27;t actually go very far with that though, because there was no keyboard and you had to do all the typing by manipulating an on-screen keyboard with the game paddle thing. Which TBH, kinda sucked. Anyway, all of this was probably about 1988 or 1989 or thereabouts.<p>Fast forward to 1993 or so, I was at Brunswick Community College, and took an &quot;Intro to programming logic&quot; class and some other &quot;Intro to Programming&quot; class. I also built my first real PC (a 386DX&#x2F;40 system with 1MB of RAM, which I later upgraded to a WHOPPING 4MB so I could run Borland C++). Anyway, I bought a copy of Herbert Schildt&#x27;s book <i>Teach Yourself C</i>, downloaded a C compiler from some BBS (I didn&#x27;t have Internet access yet at this time) and started learning to code in C. I consider this the real beginning of my programming education.<p>Fast forward to 1995 and I&#x27;m at UNC-W and taking another introductory level programming class, and it&#x27;s about the first or second week of class and the instructor (Dr. Adhar) gives us some lab assignment to code in C. I code it up and wait as he&#x27;s coming around checking on people. He gets to me, looks at my code, and in this awesome sing-song &#x2F; rolling accent of his (I think he was from Pakistan or something like that) he goes &quot;Aaaah, I see you be using techniques I no teach yet. Very good. Carry on.&quot; And it&#x27;s been a continual process of learning more and more ever since.<p>I went from C, to C++, to Java, to Groovy, and mixed in splashes of Python, R, Octave, Kotlin, Prolog, LISP, etc. over the years. These days if I&#x27;m writing code it&#x27;s usually either in Java, Python, or Groovy.
评论 #40020766 未加载
33a大约 1 年前
TI92 graphing calculator and the instruction manual. Hundreds of pages of weird math functions to try out and understand. Triggered some kind of weird pokemon-esque collect em all ocd instinct in me and I ended up learning programming as a side effect.<p>I think one thing that&#x27;s missing in a lot of current programming education is too much focus on the grammar and basic constructs and not enough focus on the nouns and verbs. Environments like MATLAB, QBasic and even JS are great because they have lots of little bits of random stuff you can just start poking at and plugging together. I wish there were more beginner references which start with lots of random facts about assorted bits and bobs instead of trying to preach some boring grand unified theory of coding.
trevnocap大约 1 年前
This was very This was very unorthodox but about 2 years ago a used an app called Mimo. This was great to learn the very basics. Being a mobile app i also thought was helpful since if I was bored on my phone, I would just do a lesson.<p>After getting through their courses you will know the basics. Then I would suggest following a tutorial or two (only do 1 or 2, you don’t want to keep copying code like this you stop learning). This will help you learn how to structure projects.<p>After that try to built small things on your own and use AI to help debug.<p>Doing this I went from knowing absolutely nothing to now being able to built small projects on my own.<p>Here is a link to my last project for example. I am very happy with what I have learned over the past 2 years.<p>Www.useequityval.com<p>Good luck, it’s worth the challenge!
MountainMan1312大约 1 年前
One day when I was 7 or 8 I just couldn&#x27;t take it anymore. &quot;Command Prompt&quot; looked like the thing I wanted most out of the computer. Screw the games, I need to know what this thing does.<p>So I clicked it I guess I saw the MOTD or whatever, saying to run &quot;help&quot; command. I ran it, started reading, started messing around with it.<p>Soon enough I had made a &quot;chatbot&quot; using nothing but GOTO statements. It had many branching paths, but the conversations were completely pre-determined. Like &quot;Hello, what is your name?&quot;, <i>&quot;bob&quot;</i>, &quot;Hello bob, how are you today&quot;, <i>&quot;not good&quot;</i>, &quot;I&#x27;m sorry to heard that&quot;
评论 #40019236 未加载
dcminter大约 1 年前
My dad used to write custom accounting software for small businesses to run on the Wang 2200 office minicomputer system. He picked up a Sinclair ZX81 to see if it was something he could use professionally and quickly concluded that it was too primitive, but it was cheap enough that he let me play with it.<p>I sat down with it and the BASIC manual and figured out how to write a keyboard controlled animation of a cat. I was 9 and obsessed by cats. I think my dad was a bit taken aback that I&#x27;d managed it, but the ZX81 was basically mine from then on and computers were my new obsession.<p>That&#x27;s a personal core memory right there!
sebnun大约 1 年前
I was first intrigued by the system files in windows 95, and why they were there. I discovered that they were using some weird text (HTML, js, XML) to show some fancy stuff on windows explorer and I started changing those files and seeing how they affected windows explorer.<p>Then I think I probably discovered some .vba files and became interested in that. I remember my first &quot;real&quot; language was visual basic 5 or 6.<p>I haven&#x27;t used windows in more than 20 years (how time flies :)) but windows 95 will always have a special place in my heart.
codingdave大约 1 年前
As a child, reading BASIC documentation that came with the Apple ][.
mo_42大约 1 年前
When I was 12 or 13, I was really curious about computers. At some point, I discovered the section about programming languages in the local library. I didn&#x27;t go to any other section after that.<p>Back then, we weren&#x27;t connected to the internet. So getting a compiler was a real problem. I found one book that contained a CD with software. That&#x27;s why my first language was C.<p>The first program sorted integers in an array. I later learned that the algorithm is called bubble sort.
jbirer大约 1 年前
Funnily enough, 4chan&#x27;s &#x2F;g&#x2F; board got me into learning C when I was around 14. That went into doing my own small projects (like a music player in GTK), doing some PHP and NodeJS later on, and then going into a full blown freelance career. A place like 4chan having such a positive impact on one&#x27;s life seems like a bit of God&#x27;s sense of humor.
thewizardofaus大约 1 年前
I remember trying to teach myself python when I was 9 years old. I downloaded a book and couldn&#x27;t understand how while and if statements could be used to build a functioning program that does something cool... So I stopped... Learnt Matlab 10 years later for 1st year university and the rest is history.
CM30大约 1 年前
Through online tutorials and coding websites about my hobbies on services like Geocities and Tripod. Then after that, I learnt more and more when reading more guides and blog posts, working for various companies making websites for clients or maintaining their own internal systems, etc.
speedgoose大约 1 年前
The first content that worked for me was &quot;le Site du Zéro&quot;, an old French popular e-learning website with a good community, made by a teenager for teenagers. The point was to teach noobies programming in a fun and colloquial way with many emojis.
评论 #40021276 未加载
LorenDB大约 1 年前
I learned C++ around six years ago with learncpp.com. Can&#x27;t recommend that site enough.
kaidon大约 1 年前
About 35 years ago. Found a commodore PET in the trash along the roadside. It came with a tape drive and a book of games written in BASIC. I took it home, tidied it up and then started learning from the book.
sergiotapia大约 1 年前
Trying to create my own Tibia private server with my younger brother back in the day. Learned about mysql, xampp, apache, ports and such.
interbased大约 1 年前
I learned HTML in junior high school. I also messed around with CSS by customizing my MySpace profile.
mraza007大约 1 年前
I started out with CodeAcademy when they first started their site. my first language was JavaScript
01HNNWZ0MV43FF大约 1 年前
My brother taught me some qbasic and the computer had no Internet so I just kept playing with it
throwiforgtnlzy大约 1 年前
C. 1990, Turbo Pascal IDE, trial and error.<p>Around 1994, I managed to get to a Computer Literacy bookstore.
chrsw大约 1 年前
In college, 20 years ago as part of my engineering degree. I&#x27;m still learning.
joshxyz大约 1 年前
stumbling on vb6 kn a computer.<p>being able to drag and drop text fields and buttons was majestic.