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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

Learning BASIC Like It's 1983

284 点作者 fcambus超过 6 年前

37 条评论

jcmeyrignac超过 6 年前
I&#x27;ll share my own experience, since I started computer programming in 1982 (on a 6502 based computer called Oric-1), then worked in the game industry for 18 years.<p>What I remember from these early times:<p>1) we had only one television at home, so typing programs required to have access to the TV. This is why I spend a lot of time analyzing programs BEFORE typing them, since I didn&#x27;t have a lot of time to type them. This probably taught me a lot !<p>2) I always wanted to improve the programs I typed, so I spent a lot of time optimizing them. This also proved useful later ;-)<p>3) Some programs included mysterious hexadecimal characters. I tried to find some documentation about that. It was difficult, because the information was scarce, and there was no Internet. One day, I got an Aha!, and I discovered 6502 that day. This was useful, since I did write quite a lot of games in 6502, and it got me my first job in the game industry in 1985.<p>4) In France, there was a beautiful newspaper called Hebdogiciel. It contained programs for all kinds of computers. I tried to convert these programs to my computer, and this also gave me pointers to handle conversion between Basics. My first job was about converting Basic programs between various computers (Thomson TO7 &lt;&gt; Exelvision).<p>5) everything was so new and exciting ! Nowadays, I don&#x27;t feel this kind of excitement. Everything is so easy to put in place. At the time, we only had 48 to 64 kilobytes of memory. Everything was a challenge. The computers were not designed to write games, but games were doable.
评论 #17901880 未加载
评论 #17902510 未加载
评论 #17901983 未加载
评论 #17902934 未加载
评论 #17902270 未加载
评论 #17901533 未加载
评论 #17903908 未加载
评论 #17902258 未加载
评论 #17901495 未加载
YouKnowBetter超过 6 年前
I cannot agree more. I started when a computer did not have an OS, let alone 1.000 applications.<p>You got dropped right into the interpreter. There was not already a GB of OS loaded that you had a hard time to learn. All the code that was there was what you wrote (copied) yourself.<p>The processor &amp; interpreter was about as fast as you could think, so it was easy to follow and step though (mentally). Reversing to assembly was the logical next step and since the programs where small, it was easy to learn &amp; memorize.<p>After years of coding yourself, you&#x27;d stumble on the first OS, which consisted of the most rudimentary libraries that one could basically read &amp; remember.<p>Years later still, the first rudimentary networking picked up. Slow and not business critical so again easy to experiment with. By the time I connected the first commercial network to &quot;the internet&quot; downtime of email for less than 24 hours was not even noticed.<p>I do not envy the kids who nowadays stand 0 change to ever learn the complete stack of code running on any modern device. From what I see, they all are &quot;stuck&quot; on top of a GUI with only the slightest idea of what happens between their mouse and the actual hardware (and even that is often not hardware anymore).
评论 #17902041 未加载
评论 #17902059 未加载
评论 #17902064 未加载
评论 #17904281 未加载
评论 #17903979 未加载
评论 #17901974 未加载
ofrzeta超过 6 年前
&gt; If you wanted to play one of those games, you had to type in the whole program by hand. Inevitably, you would get something wrong, so you would have to debug your program. By the time you got it working, you knew enough about how the program functioned to start modifying it yourself.<p>As someone who was there and did that I want to refute that assumption :) I have typed in many programs and there&#x27;s not a lot to learn because most of them consisted of many pages of DATA lines and a small loop that loaded those machine instructions into the home computer&#x27;s memory and started the program by a USR directive (please note that I made this explanation many years after the fact). I guess there are not many teenagers who are able to debug this kind of program by looking at the actual opcodes.<p>Sure you could learn a lot from typing in regular BASIC programs but that weren&#x27;t the most interesting games as far as I remember. The most productive learning experience was interactive and exploratory programming a shown in the OP article.
评论 #17901285 未加载
评论 #17901663 未加载
评论 #17901318 未加载
评论 #17901194 未加载
评论 #17901158 未加载
评论 #17901162 未加载
评论 #17903761 未加载
评论 #17901222 未加载
评论 #17902916 未加载
评论 #17902572 未加载
评论 #17901879 未加载
tralarpa超过 6 年前
&gt; I think the people that first encountered computers when they were relatively simple and constrained have a huge advantage over the rest of us<p>I pity sometimes the young people who are studying computer science nowadays. I studied CS in the 1990s. Compared to a modern curriculum, my courses looked very basic: five years on functional programming, compiler construction, networking, databases, etc. No P2P, cloud computing, mobile applications, IoT, etc.<p>Now, most CS studies have to rush through the basics in three years, followed by two years where the students have to learn all the tools and techniques that they need for their professional career. I had an entire course (&quot;Advanced topics in databases&quot;) on the efficient implementation of indexing and query execution for databases. Today&#x27;s students have to learn in the same time: a shortened version of the old course PLUS nosql, column-oriented DBMS, DHTs etc.
评论 #17902063 未加载
hfdgiutdryg超过 6 年前
<i>It was just last week that you saw the Commodore 64 ad on TV. Now that M</i>A<i>S</i>H was over, you were in the market for something new to do on Monday nights. This Commodore 64 thing looked even better than the Apple II that Rudy’s family had in their basement.*<p>Alternative version:<p>It&#x27;s 1983 and your dad decides to buy a personal computer. The C64 is too expensive at $595, so he buys a VIC 20 (introduced at $295, probably $200 by &#x27;84).<p>You plug it in to the television downstairs and, after mentally tuning out the hum from the RF converter, you start to enjoy gems like GORF and Radar Rat Race (<a href="https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=1LRkON9XTOk" rel="nofollow">https:&#x2F;&#x2F;m.youtube.com&#x2F;watch?v=1LRkON9XTOk</a>).<p>You try to read the included user manual, with its helpful computer chip themed cartoon mascot explaining things like strings, but none of it makes sense because you&#x27;re eight. You and your sister spend hours reading aloud and typing in bytecode listings from then-popular computer magazines. Imagine spending an hour transcribing hex codes, only to type the run command and have it crash.<p>If, on the off chance you found the errors and got the program to run, you&#x27;d find it was wildly over-hyped in the description. You didn&#x27;t want to waste your work, so you&#x27;d save it to the tape drive that used audio cassette tapes.<p>A few days later, you&#x27;d try to load the program from the cassette tape and find that it was corrupted. I never once got a saved program to load from that thing, it only successfully read commercially published software.<p>The nostalgia is largely inaccurate. It was an era of immense frustration. And I never saw any C64 television ad, probably because we only had three television stations and no market to speak of for personal computers.<p>Incidentally, there&#x27;s no way the kids in Stranger Things would have had those high end walkie talkies. They&#x27;d have had the crappy ones that only work to maybe 100 yards and emit static nonstop.
评论 #17903981 未加载
评论 #17904047 未加载
评论 #17904430 未加载
评论 #17903962 未加载
amorphous超过 6 年前
The problem is not that it was easier in the 80s to start programming (that would be that same as to say it was easier to study medicine in the 1800s) but that today it is much harder to get to the point to do something <i>meaningful</i>.<p>If you want the simplicity of the Basic interpreter, just fire up a Python console, and you are in a much more comfortable position to learn programming and computer science than you were back then. But it is still a long way to get to someplace useful. In the 80s, by owning a VC-20 and programming Basic and Assembler, I was pretty much already at the edge of something new and powerful.
评论 #17903359 未加载
评论 #17904514 未加载
评论 #17904321 未加载
jgrahamc超过 6 年前
<i>I think the people that first encountered computers when they were relatively simple and constrained have a huge advantage over the rest of us</i><p>I don&#x27;t and I grew up in the era of 8 bit machines and kilobytes of RAM etc. I fully recognize that it was <i>fun</i> to have those constraints and we learnt a lot about dealing with them (using less memory, using fewer instructions) but I don&#x27;t buy that that really matters for most programmers today. They&#x27;ll have other things to worry about: e.g. debugging distributed programs.<p>Sure, if you want to do microcontroller work then that sort of thing is useful, but literally nothing stops a &quot;Full Stack&quot; programmer picking up an Arduino and programming it and learning something new.<p>I love playing with those environments (<a href="http:&#x2F;&#x2F;blog.jgc.org&#x2F;2009&#x2F;08&#x2F;just-give-me-simple-cpu-and-few-io.html" rel="nofollow">http:&#x2F;&#x2F;blog.jgc.org&#x2F;2009&#x2F;08&#x2F;just-give-me-simple-cpu-and-few-...</a>) but every day I see people with different experience of computing from me and I don&#x27;t feel that I have an advantage over them: they often know about things I&#x27;m totally ignorant of. It&#x27;s true that I&#x27;m very good at debugging horrible low level things, but it&#x27;s also true that I&#x27;m not good at imagining the state of a system with hundreds of micro-services.
评论 #17903100 未加载
DanielBMarkham超过 6 年前
I&#x27;ve been doing a lot of tech blogging lately, playing around with various F# tools and toy projects, seeing what resonates with the community.<p>There was a progressive complexity that happened back in the late 70s and early 80s such that people alive today who still code and learned back then have taken the ride from machine language to multi-gigabyte stacks.<p>We just kept adding stuff and having to make sure we could be functional in all of it. Not an expert, but functional. It was standard practice on my commercial programming teams to decide what everybody wanted to learn on a new project before starting. (And these were high-paying projects. We always left with happy customers).<p>People were jack-of-all-trades. Most everybody was. You had to be.<p>What am I seeing resonate, at least as far as I can tell? The inability to understand what the hell is going on and work with it. You get a C++ compiler compiling a hellacious codebase working in DOS, a rails configuration ain&#x27;t nothing.<p>I see what are supposedly senior programmers walk a bit off the happy path on a framework and they&#x27;re lost. Not only are they lost, they are insecure, afraid, embarrassed. There&#x27;s nothing wrong with these people. There&#x27;s something wrong with the way we&#x27;re training and staffing them.<p>Fifteen years ago I was still coding commercially, having a blast. Talking to a recruiter one day about various projects, she said &quot;You know, you&#x27;re one of the last true general consultants&quot;<p>There may be ten thousand of us. Beats me. But her general appraisal was correct. There is a drastic and complete change between the way coders used to relate to technology and the way they do today. It&#x27;s not tech. It&#x27;s mindset.
评论 #17902801 未加载
tarcyanm超过 6 年前
This is why the &quot;STEPS Toward the Reinvention of Programming&quot; (a.k.a. 20k Lines of Code) Project was important. It was spearheaded by computing luminary Alan Kay with help from some very impressive researchers.<p>The final report is available here: <a href="http:&#x2F;&#x2F;www.vpri.org&#x2F;pdf&#x2F;tr2012001_steps.pdf" rel="nofollow">http:&#x2F;&#x2F;www.vpri.org&#x2F;pdf&#x2F;tr2012001_steps.pdf</a><p>I haven&#x27;t kept up with subsequent research the Institute has produced. I do know they had an aversion to producing software artifacts and were far more concerned with the written reports (which in some senses restricted the ability of amateurs like me to play with the interesting output by the group). I did play with OMeta (a meta-parser) and the COLA &#x2F; Id code - which was enlightening!
masswerk超过 6 年前
For all those willing to play around a bit, here&#x27;s a low entry-level access to Commodore BASIC, a web-based PET 2001 emulator. You may write programs in your favorite text editor and load them per drag-and-drop, and even export any screen contents as text. (Also, all the special characters are accessible by a virtual keyboard.) Manuals are found in the programs&#x2F;download section.<p><a href="https:&#x2F;&#x2F;www.masswerk.at&#x2F;pet&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.masswerk.at&#x2F;pet&#x2F;</a><p>(Core emulation by Thomas Skibo, interface and IO enhancements by yours truly.)
评论 #17905613 未加载
wmnwmn超过 6 年前
You are right that it was a special and exciting feeling learning these things when these machines were brand new. When my friend&#x27;s family bought a TRS-80 in 1978, it was like some kind of alien artifact that fell from space; we were utterly fascinated by it even though its capabilities were almost absurdly minimal. It had only 4k RAM and that required several minutes to load from the casette tape storage.<p>Nevertheless it ran BASIC and my friend and I learned to program on that machine. Subsequently we honed our skills on Apple II&#x27;s at school, and later by hacking on the PDP-11 at school. In 1981 I built a simple Z-80 computer, roughly equivalent to the TRS-80 (note:&quot;80&quot;). At that time doing something like this literally caused newspaper reporters to come interview you. It was nice to learn these things sort of organically, albeit perhaps not optimally; I&#x27;ve made my living in software development and to this day have never taken any class in programming.<p>Of course that moment of novelty really was brief. Once the IBM PC came out in 1981, computers proliferated rapidly and they no longer seemed so special. Nevertheless I do think that our &quot;Generation X&quot; had sort of lucky timing with computer culture, since we were also just reaching working age when the Internet revolution hit (my first job out of grad school came from an ad which literally said &quot;the Internet revolution is here and you can be part of it&quot;...a small part to be sure but still part!)<p>But anyway every time period has its pluses and minuses! If you want to know how it really felt to grow up during that time, the truth is that we envied the 60&#x27;s generation hugely and thought that everything we had was just kind of a pale imitation of what they did (for example, music). Take a look for example at the book called &quot;Generation X&quot;, which is pretty dystopian, and really did express how many people felt. There&#x27;s always something new happening!
Ricardus超过 6 年前
It was definitely fun to go to the computer lab in high school and play with&#x2F;program the Commodore PETs. These were the 4K models with the chicklet keyboard.<p>I will say this though. I disagree with one word in the author&#x27;s text. He said the machines of the time were &quot;constrained.&quot; They weren&#x27;t constrained at all. They had limitations just like today&#x27;s machines do. But we weren&#x27;t aware of the limitations because we weren&#x27;t time travelers coming from the future with more computing power in our pockets than most corporations had in 1983.<p>In fact the exact opposite was true. The computer industry was bursting at the seams. It was exploding. It was not constrained at all.<p>Then they cloned the IBM PC and the rest is history. Every machine you&#x27;re reading this post on descended from those.
bennyp101超过 6 年前
I would have been 6 around 1990 when I first discovered BASIC, on our Amstrad CPC464. Found the manual filled with code, and that cemented my love of programming.<p>It&#x27;s interesting how rather than coming with an instruction manual nowadays, its assumed that everybody knows how a PC (including phones) works, especially as they are more complicated now - just hidden beneath a veneer of GUI
Koshkin超过 6 年前
You can have the full experience today using the Colour Maximite board: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=XQA8lowEKOo" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=XQA8lowEKOo</a>. The MMBasic environment it uses is surprisingly powerful and convenient - it even includes a full-screen text editor.
atemerev超过 6 年前
Now, this sort of experience can be recreated with Arduino, micro:bit and other educational microcontrollers and nanocomputers. Raspberry Pi doesn’t count: too complicated.
评论 #17901830 未加载
评论 #17901506 未加载
stevage超过 6 年前
I can&#x27;t decide how much I buy this argument. I was born in 1980, and started programming Logo and BASIC very young (around 5 and 7 years old respectively). Almost everything this post describes is familiar to me: typing in code from books, learning PEEK and POKE, etc. I just don&#x27;t think much of that matters: whether you learn BASIC on a stupid terminal that can&#x27;t do much else, or in a super simulated terminal in a web browser seems kind of irrelevant.<p>OTOH, the experience of learning C and having to actually write video and network drivers (or their barest elements) because there wasn&#x27;t a web you could download a library from...yeah, that probably actually did make me a better programmer. Having had the experience of writing a little bit of actual assembler, even just the old &quot;MOV AX 10; INT 13&quot; (am I remembering that right?) does give me a sense of connecting with the machine more deeply than someone who grew up with the internet.<p>On the first hand again though...living through the late 90s and most of the 2000s was crap. The time of Java. And the worst kind of JavaScript. I pretty much stopped coding altogether until the web had matured as a platform a bit, by the early 2010s.
评论 #17904164 未加载
philjohn超过 6 年前
I&#x27;ve recently been introducing my son to programming, and it was so much more difficult just to choose the best starting language.<p>When I started in the mid to late 80&#x27;s as a child, we had a Commodore 128 and it was Basic or nothing. I also remember typing in those program listings, getting annoyed they didn&#x27;t work, realising I&#x27;d transcribed something wrong, then when it was working making changes.<p>We then moved onto a 386 and I gravitated towards QBasic (and later TurboBasic because you could use the mouse and compile to an exe)<p>With my son, I ended up searching high and low, umming and ahhing, and in the end I found the spiritual successor to those computer magazines with program listings in a Python for Kids book that takes them step-by-step (a little like the Commodore manual did) introducing concepts and eventually getting you to build a game.<p>I think a lot of the wonder about computers that seems to have waned is because we&#x27;re all older and not looking at it through the same lens, true, computers are far more ubiquitous now, but learning that you can tell it what to do and are only limited by your imagination is still incredibly powerful to a child.
tokyodude超过 6 年前
Not basic but fantasy consoles like pico-8 try to bring back that feeling. Pico-8 has a 32k limit and all graphics &#x2F; sound &#x2F; code are memory mapped so you can peek and poke if you want to old school hack. It boots directly into a Lua interpreter.<p><a href="https:&#x2F;&#x2F;www.lexaloffle.com&#x2F;pico-8.php" rel="nofollow">https:&#x2F;&#x2F;www.lexaloffle.com&#x2F;pico-8.php</a>
esfandia超过 6 年前
The nature of programming has changed so much since then. Back then, you could get going by knowing a very limited set of building blocks (BASIC keywords, all described in a single manual). The challenge was to build something meaningful out of those building blocks. Programming could be hard, but never too complex. Problem solving at its purest. That&#x27;s what got me hooked!<p>Today, the set of building blocks is unlimited. The challenge is to find the right building block for what you want to do, using the infinity of resources available to you (all the APIs, libraries, Google, GitHub, StackOverflow, blog posts). You&#x27;re drowning in complexity, even if what you want to program is straightforward. And you are constantly mindful of writing idiomatic code, always wondering if there&#x27;s a better way to do the same thing, which is normally a good thing but can be time-consuming and getting in the way of the fun part that is the problem solving.
评论 #17904157 未加载
eggy超过 6 年前
I started on a Commodore PET 2001 in 1978, and wrote a horse racing game for my parents. Three horses, ASCII characters randomly going across the screen 0,1 or 2 spaces. Odds at the start and payoff calculated at the finish. My parents loved it! (OTB and racetrack fans). I then went on to a Vic-20 (1981), Amiga 1000 (1985) and eventually a 386 PC, a PowerMac PC (I got minix or other variant running on it), and then Linux, Mac, and PCs thereafter. The Basic Stamp in 1997 really brought back old coding to me with the addition of hardware tinkering. My fondest memories are the horse racing game, and plotting the 4 main moons of Jupiter on my Vic-20&#x27;s thermal printer. Figuring out how to program those two programs started me on coding. Funny, I have always coded, but only as an employed coder for two years at one job. I program for myself, and when I can for work when needed (mainly technical computing).
sjclemmy超过 6 年前
I recently found a copy of the commodore 64 programming manual in a garage sale. Of course, I had to buy it. Compared to the *nix paradigm with heaps and stacks, it&#x27;s very, er, basic. The manual explains that you are just loading registers with instructions when you program. No Heap, No Stack, No memory management.
评论 #17902575 未加载
temporallobe超过 6 年前
BASIC was my first love. I was 10 when I got my first computer, a Tandy TRS80. It came with an instruction manual with example BASIC programs and I could save my programs with an external tape deck. Something awoke in me and from then on, I onew my calling. I still remember the first command instruction: SOUND 39,20
emersonrsantos超过 6 年前
There’s this naive concept that these 8 bit microcomputers programming were based in BASIC. The speed of these Z80 chips was 1-3 MHz.<p>Almost all games and programs in the 8-bit world were written in Assembly. The BASIC interpreter was just used as the bootloader to load and run these programs, BASIC was in fact the shell interface and the toy language, but the assembly programs essentially sold the computers.<p>If you wanted to do something in these computers, it would have to involve assembly because of BASIC slowness. And there were newbie books about assembly language, assembly libraries, tons of assembly compilers and debugging utilities available anywhere.
评论 #17904830 未加载
评论 #17903903 未加载
freediver超过 6 年前
Thinking about how to introduce my 6yr old to the world of programming I decided she is going to write her first code like I did - using BASIC on C64.<p>Luckily there are many JS C64 emulators online like this one <a href="https:&#x2F;&#x2F;virtualconsoles.com&#x2F;online-emulators&#x2F;c64&#x2F;" rel="nofollow">https:&#x2F;&#x2F;virtualconsoles.com&#x2F;online-emulators&#x2F;c64&#x2F;</a> so its a breeze to get started.<p>And of course her first program was<p><pre><code> 10 PRINT &quot;HELLO PETRA&quot; 20 GOTO 10 </code></pre> exactly 33 years after her dad made his first.<p>She also tried Scratch and like it but to me in order to write code you need to learn to &quot;write&quot; it.
mmjaa超过 6 年前
I&#x27;ve been quite into retro- computing for a few years, and have started recently to amass a collection of my favourite machines from the 8-bit era .. and one thing I&#x27;m really intrigued about is the &#x27;lost tech&#x27; of these machines.<p>I remember for one of these platforms, there wasn&#x27;t really a great commercial release scene - but there was a great home-hacker scene, with type-ins from magazines and so on ... and I remember having quite a small library of routines and utilities, saved on cassette tape, that could do various things - fast scrolling, tape copying, UNDELETE commands, and so on. But now these things are lost to time (still out there on my cassette collection, wherever it is these days) .. and we have to re-create them.<p>So now one of my favourite aspects of the hobby is the reconstruction of all the &#x27;cool utilities and stuff&#x27; that made the platform great in the 80&#x27;s. Its not so easy! For some of the obscure platforms, we really have to dig deep .. fortunately though, 8-bit computer magazines seem to have been pretty well preserved on the Internet. Its just now a matter of going through them, spotting the gems for the obscure platform, and re-typing it all in, lol. ;)<p>But that said, having a variety of 8-bit machines at hand is really a special treat. I always wanted a Spectrum machine, and now its finally affordable. ;P
评论 #17902206 未加载
seriocomic超过 6 年前
Wow, what a throwback - this was me, but I had already cut my &quot;basic&quot; teeth on the Commodore VIC-20, quickly upgrading to the C-64 as soon as I could get someone to drive me to the nearest city to buy one with my meagre earnings. I&#x27;m still fumbling my way through &quot;programming&quot; today...
jmull超过 6 年前
Actually, the memory mapped approach of the C64 is an abstracted API. It’s so immediate and intuitive, though, I can see why you might not think of it that way.<p>(I started on the Pet and later th C64, and had so internalized this approach that I was baffled when I first encountered systems where this wasn’t the primary approach.)<p>I think there’s actually a lesson here for API design today: the power of the “everything’s-a” approach. Then it was everything’s a memory location. But generally the everything’s-a approach allows for a flat abstraction space with low cognitive overhead and high inherent&#x2F;automatic composability, leading to short learning curves and high productivity.
drawkbox超过 6 年前
In 6th grade there were Apple II&#x27;s at school I was part of a group of honors kids that got to code BASIC on Apple II&#x27;s. I made a Tron disc game, it wasn&#x27;t good but the ability to create a game, render block graphics using text and code BASIC was magic.<p>My friend also had a Commodore 64 which even to start a game you had to know some commands (LOAD &quot;$&quot;, 8, LIST, then LOAD your game). Computing and coding&#x2F;interfacing with the computer was more involved but simple as well, led to lots of fun learning to code and create.<p>Between these two machines (Apple II and Comodore 64) I fell in love with coding and games. I never had an Amiga which was a bummer but these were enough to inspire kids to be creators with code.<p>In high school my teacher Mr Isles was big into the internet and media computers, we were watching TV on a computer, playing games like Scorched Earth, making games in pascal while browsing the web, it was amazing and moving fast.<p>Flash had the same fun factor as those in late 90s to around 2006-ish before the mobile phone came out. Flash communities were very special in both designers and developers, it was powerful that either type of aim could create games, interactives, experiences and Amiga like demo scenes.<p>Even when mobile truly arrived in 2007 when the iPhone and smartphones upped the game, I was blown away when OpenGL was on it and I knew immediately that it was a new handheld gaming market that I had to get into. Mobile existed at that point and I was making games on Windows Mobile but everything changed with iPhone&#x2F;Android in mobile in the ability to create. That fun creation market is still going on today, now we are onto fun interactive tools like augmented reality and location based games which are fun.<p>There are really inspiring innovations happening all the time in each generation but it does seem like the fun platforms and really interesting ones are led by gaming, or apps today, and areas approachable by designers and developers alike to create interesting games, apps, interactives and the platform makes it fun.<p>I think it is really important for platform designers&#x2F;developers to make their platform approachable, simple and reduce complexity so that it can attract people interested in creating. I think an engineers job is to create simplicity from complexity, design platforms smartly with senior skill for the junior, in some areas today we are failing that due to heavily specialization. Every truly successful platform that really hit and progressed innovation&#x2F;creation forward did exactly that.
Annatar超过 6 年前
&quot;<i>I think the people that first encountered computers when they were relatively simple and constrained have a huge advantage over the rest of us.<p>Today, (almost) everyone knows how to use a computer, but very few people, even in the computing industry, grasp all of what is going on inside of any single machine.</i>&quot;<p>An astute observation: I see a lot of complexity in IT today which obviously comes from not having a clue how the hardware functions and how it&#x27;s efficiently programmed. The complexity, performance and resource hits grow with every layer of abstraction. Convenient for those who write software, very bad for users who then needlessly suffer.
okket超过 6 年前
This is literally how I got hooked on computers in the 80s. That and a soldering iron.
评论 #17902438 未加载
评论 #17901800 未加载
评论 #17902279 未加载
tabtab超过 6 年前
A magic feature of BASIC was that you didn&#x27;t need to learn different editors to get started. It was based on line numbers, so the line number was how you added, changed, and deleted lines.<p>I could walk into a computer store in early&#x2F;mid 1980&#x27;s at the mall, spot a model of microcomputer I never encountered before, and could type:<p><pre><code> 10 PRINT &quot;Oh no! Something is going to blow! Run!&quot; 20 GOTO 10 RUN </code></pre> Then scurry off while snickering.
sytelus超过 6 年前
Can we replicate this experience on modern PCs using VMs?
jonplackett超过 6 年前
This brings back so many memories from being about 12 and figuring out BASIC on my dad’s PC.<p>Why did programming get so complicated?
macca321超过 6 年前
I own 10printhelloworld.com, but unfortunately 20goto10.com is only available for a whole heap o&#x27; money. :(
tomrod超过 6 年前
This is brilliantly written. Thanks and kudos to the author!
tsumnia超过 6 年前
This is my current research [1]! In 2015, I was at PyCon&#x27;s Educational Summit when I thought about integrating some of what we do in martial arts to CS - drilling moves to use in sparring&#x2F;randori. Sparring&#x2F;randori is a high intensity activity that requires fast problem solving skills which rely heavily on muscle memory due to the speed involved. Additionally, forcing a beginner to spar is one of the fastest ways to make them quit [2]. I think this is one of the reasons why CS has a high dropout rate - we are asking them to &quot;spar&quot; (problem solve) too early or incorrectly and as a result they quit because they hate feeling like failures. Instead there should be some level of drilling before getting &quot;thrown to the wolves&quot; (as I used to tell my students) to build their confidence and understanding. I don&#x27;t think traditional small&#x2F;large scale programming exercises fully tackle this problem.<p>I think drilling is something we do in almost all technical skill development (music, art, athletics, vocational) and I wanted to bring the same thing to my CS courses - so I started requiring typing exercises as one of their assignments for the week. These aren&#x27;t just &quot;typing a for loop 10 times&quot;, but additional context (for example, the link below shows regular expressions for addresses) to give them something they could use as a template for their programming exercises. To combat copy and pasting, I just made the code an image. In my first link, you&#x27;ll see an example of using a regular expression to validate addresses. After completing this, the students would then be required to complete some Q&amp;A exercises as well as traditional programming exercises where they needed to design functions that: validate phone numbers, (a limited scope of) email addresses, and Social Security Numbers. The objective of that week was to get them familiar with regular expressions, not finding a StackOverflow link that teaches them how to implement regular expressions.<p>As the article says, this is what we did in the 80&#x27;s. That doesn&#x27;t make it better, it just makes it how things were done &quot;back in the day...&quot; However, K. Anders Ericsson states that early specialization is often a key determinant to future mastery and that deliberate practice refines areas where an individual struggles and may be unenjoyable [3] (see my older comments on grit&#x2F;perseverance). Likewise, syntax errors are one of the first problems novices face [4]. By completing typing exercises, the learner does not need to worry about using problem-solving skills, which they may still be struggling with, just the correctness of the typed characters. Thus, typing exercises give the learner a deliberate practice resolving a simple, but major issue. Additionally, typing exercises remove students&#x27; ability to just &quot;copy and paste&quot; before using example code. With syntax errors mostly resolved, the student can then focus on problem-solving rather than where the semicolon should go.<p>I currently have a SIGCSE paper under review, but the gist of the paper is that students that voluntarily completed typing exercises performed better in their class than students that did not. The students may have just been more motivated and therefore that is why they scored higher, so there is a limitation to my study. I could require it, but then designing a control group that would receive the same amount of learning would be difficult as well.<p>[1] <a href="https:&#x2F;&#x2F;research.csc.ncsu.edu&#x2F;arglab&#x2F;projects&#x2F;exercises.html" rel="nofollow">https:&#x2F;&#x2F;research.csc.ncsu.edu&#x2F;arglab&#x2F;projects&#x2F;exercises.html</a> (the Heroku link is currently down as I&#x27;ve made recently changed to the live version)<p>[2] <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=hHebXvoHue0" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=hHebXvoHue0</a> (Rener Gracie is a character, but listen to those first few minutes)<p>[3] <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Practice_(learning_method)#Deliberate_practice" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Practice_(learning_method)#Del...</a><p>[4] <a href="https:&#x2F;&#x2F;dl.acm.org&#x2F;citation.cfm?id=2677258" rel="nofollow">https:&#x2F;&#x2F;dl.acm.org&#x2F;citation.cfm?id=2677258</a>
gaius超过 6 年前
<i>I think the people that first encountered computers when they were relatively simple and constrained have a huge advantage over the rest of us</i><p>It is not a blessing but a curse. If you understand the computation you will spend so much time wondering “WTF is this (modern) computer doing” when it fails to do something simple that you know an older machine with a tiny fraction of the power could do easily.
评论 #17901309 未加载