6 ms·
I'm guilty here. For years I've been meaning to learn modern webdev, but every time I've sat down to read the docs, tutorials, books, and what have you - I just
by TrackerFF 2y ago
I'm guilty here. For years I've been meaning to learn modern webdev, but every time I've sat down to read the docs, tutorials, books, and what have you - I just give up after a couple of hours. Getting seemingly easy stuff done is just a drag.
The other day I decide to try ChatGPT 4o with canvas. For a solid year, I've planned to create some easy membership registration and booking system for this small club I'm part of - just simple stuff to book rooms in a building.
Well, to my absolute amazement - I had a working product up and running after 4 hours of working with ChatGPT. One block at a time, one function at a time. After a day I had built on a bunch of functionality.
So while I'm not completely clueless on back-end programming, my front-end skills are solidly beginner. But it felt like a breeze working with ChatGPT. I think I manually modified at tops 10 lines during all this, everything else was just copy/paste and upload source files to ChatGPT.
Any errors I'd get, I'd either copy/paste, or provide a screenshot.
I actually tried doing something similar when GPT3.5 came out almost two years ago, but it was just too cumbersome then. What I experienced the other day felt lightyears beyond that.
So, did I learn anything ? No - not really. But did it solve a problem for me? yes.
EDIT: But I will add, it did provide solid explanations to any questions I had. Dunno how well it would have worked if my 70 year old mom had tried the same thing, but a gamechanger for people like me.
- aimazon 2y agoThe point missed here is that you didn’t need to write any code at all, with or without ChatGPT. ChatGPT helped you with busy work: you reinvented something that already exists, instead of using a mature and established membership platform, you built your own. The reason this has parallels to education is because that’s what education traditionally is: busy work. You did learn something, by the way: you learned how to use modern tools. You didn’t do things most efficiently but it was more efficient than writing code without the help of ChatGPT.
- pclmulqdq 2y agoWhen you are learning something, that busy work helps. What you think of as busy work when you are a professional is actually often sort of novel to learners and is a simple example of how to do stuff.
- stackghost 2y ago>The reason this has parallels to education is because that’s what education traditionally is: busy work. Busy work is work that is assigned merely for the purpose of occupying one's time. That's not the same thing as practice. We drill children in arithmetic not to keep them busy but because it turns out repeatedly solving multiplication problems is an effective way to teach children their times tables.
- ghostpepper 2y agoThis may be why the practice was invented but I bet there are plenty of teachers who see it more as a way to keep them busy
- stackghost 2y agoYes, intent matters.
- hbosch 2y ago>That's not the same thing as practice. Exactly right. In terms of education, there generally seems to be a blurry line between was is considered learning and what is considered memorization. If you memorize your times tables, it doesn't mean you've learned multiplication for example... oftentimes the ability to memorize and recall things is opposed to learning, which means leveraging previous knowledge to solve something new. In the case of AI, it usually presents facts and opinions simultaneously (something a calculator famously does not do, for example). Facts are memorized, opinions are learned. In all core studies it's always been more important to understand what you're solving for, and why, rather than "how" to solve it. The continued dissolution of the "how" barrier is a net benefit for all of civilization, and when experts of "why" are valued more than experts of "how" the world will be a much better place.
- nunez 2y agoThis is one reason why many educators are phasing out homework. It's great practice but can easily lead students to regurgitating information instead of understanding and retaining knowledge. This is also why quizzes and tests are vital in a well-designed curriculum: they test understanding (or at least are supposed to).
- whimsicalism 2y agoI love that AI negativity on HN is so strong that we reclassify whatever work AI can do into “busy work” as soon as it is possible.
- aimazon 2y agoThat’s not my point. I’m not disparaging AI. I described AI as modern tooling that is beneficial to learn. I’m sure there are many professional developers saving time using AI to generate code they would have otherwise written. My point is that in this specific case, AI didn’t enable anything useful. I would have said exactly the same if the OP had written the code without AI. If a problem is long solved, reinventing it is busy work. Busy work can be fun, I reinvent things all the time, but that doesn’t change the nature of it. If the project they had built had been something novel (that does not exist) then it would have not been busy work. I was shit talking education if anything :)
- valval 2y agoSo your definition of busy work isn’t “work AI can do”. It’s “work that accomplishes things that have already been accomplished before”. The latter is even sillier. Your position might be indefensible.
- JTyQZSnP3cQGa8B 2y ago> you reinvented something that already exists Since AI can’t invent new stuff, who will do that? Juniors who haven’t learned anything because of those tools? Or seniors who will disappear one day because they are retiring or are being replaced by AIs? I already work with juniors who use ChatGPT and cannot explain what they wrote. They have a fucking engineers degree and don’t know anything. It’s catastrophic and may increase in the future. What will happen if it continues like this?
- aimazon 2y agocode is an input not an output. People don’t care about code, they care about products. You can build something new using code that already exists: every product we use today is built on a lot of what came before. My point wasn’t that writing code with AI is bad, my point was that writing code for the sake of writing code is bad. If something already exists, use it. If something doesn’t exist, build it, bring something new to the world — whether that’s with hand-typed code or ChatGPT assisted code, I don’t care. I think we should write less code.
- jpc0 2y ago> You can build something new using code that already exists: every product we use today is built on a lot of what came before. I don't disagree with this from a business perspective but for an engineers perspective I find it severely limiting. Even very very basic things should probably stay fresh foe you. If you cannot implement a basic parser ( recursive dexent / pratt etc) you will very likely reach for regex when there is likely a better solution that isn't a lot of code. You should probably know how to write leftpad... Or how to strip ascii whitespace using an ArrayBuffer and a for loop in JS. These are things that is extremely easy but a little tedius to do but are fundamental skill to building up more complex solutions later. You should probably know how to build and reason about some more advanced datastructures in your language. Basic trees, directed graphs, trie. These are things that if they are second nature for you to implement you can come up with novel solutions to actually novel problems when they come up. You also get an innate understanding of where the performance characteristics of certian algorithms and datastructures actually lay. Because big O doesn't always tell the full story...
- deleted 2y ago[deleted]
- tempodox 2y agoYou happened to use an LLM for something that is most prominent in its training data. Do something off its beaten path and correcting all the hallucinations will be more work than just plain old learning it.
- banku_brougham 2y agoyep, this is what have found so far.
- whimsicalism 2y agonot true in my experience - of course you have to work within its capabilities but i find it to be a capable partner across large segments of tasks
- ants_everywhere 2y agoThis is my experience too. Even with pretty common problems in popular languages like Python. The code generated by ChatGPT 4o is full of bugs. If you give it feedback it just thrashes instead of trying to locate and correct the underlying problems. Even if you ask it to think about and correct the underlying problems, it still generates buggy code, often with the same problems it was pretty decent at reasoning about.
- red-iron-pine 2y agoive found it works for small scripts that are simple, and have easily accessible code or examples. i was testing a data transform function and needed to pull a couple of different types of data, so i had it give me a simple script to get stuff out of alpha_vantage, yahoo finance, quandl, and a few kaggle datasets, and those generally worked out of the box, or close to. a few of those actually have code on their site for the API, but OpenAI made it faster. i would have gotten there eventually, but it saved me a couple of hours. anything more complicated and it gets messy. its like a genie who grants you exactly what you ask for in the most literal sense, and only has a 90% idea what you're talking about to begin with.
- furyofantares 2y agoYou also didn't learn modern webdev for the years you'd been meaning to. You're actually better poised to learn it now if you care to, now that you have a component you care about that already works that you can work from. Of course maybe you won't, maybe having GPT there will indeed prevent you from ever learning it, I don't know.
- swatcoder 2y ago> So, did I learn anything ? No - not really. But did it solve a problem for me? yes. And this is exactly the concern. The tools are genuinely useful for some tasks. But unlike club organizers getting to DIY some hobby project for their club, students aren't yet being tasked to produce useful things in the best way possible. They're being tasked to do fairly rudimentary things so that they can learn some fundamentals by way of practice. And likewise, in trades like ours, juniors are tasked to do useful things, but they're given affordance to deliver those things in ways that help them learn some fundamentals by way of practice. Students and juniors who skip the practice are basically just trading their future expertise and readiness to accomplish trivial things that either don't or barely matter. Some of them may become the first generation of expert prompt engineers, accomplishing things in totally new ways in what amounts to a novel trade, but many of them are just going to be shooting themselves in the foot.
- echelon 2y agoThis is experience though, and people do learn this way. This is the exact same exercise as my first time slapping Dynamic Drive scripts together to customize EzBoard back in the 2000s. I didn't understand any of it at the time. This style of learning is hands on. You learn a little bit about the shape of the problem before you sit down and learn the theory. Not everyone learns by opening the book first. Some people like to get their hands wet. Introduction through practical osmosis can lead to a fertile appreciation for the theory.
- fao_ 2y agoIt's not learning if the AI is feeding the person an incorrect model of the world, though. There's less likelihood of that if someone is reading information curated by a human that understands the shape of the problem and the domain. The AI doesn't "understand" any of that and just spits out words in an order that "seems correct" — that's precisely the problem.
- echelon 2y agoUnless the learner is being purposely mislead, it's still learning no matter what the entry point is. Even if the learner is climbing a suboptimal hill, they're still learning the subject landscape and getting a sense of it. It's still a gradient. The entire subject of chemistry is like this. They feed you lies and half truths for the first few years of your undergraduate career so that you develop a sense for things. The real model is far too complicated and scary to introduce.
- treflop 2y agoIf it’s not your daily job, I don’t see the harm. Sometimes I use ChatGPT for something I absolutely don’t care about. But if it is, then I think you’re trading it for a career of trial and error. Regularly I watch people at work spend a week trying to solve a problem, but because I learned the fundamentals at some point in my past life, I am able to break down the problem, identify the root cause, and solve it quickly.
- sibeliuss 2y agoAs someone who already has skills in backend / frontend, AI tooling has made me fearless in terms of new material. I couldn't type it out by hand, but by getting something working through a (much faster) trial and error process, I'm learning so much! I suspect this is your case as well. There's a lot of learning going on underneath, which will only improve your abilities in ways that will come back as astonishingly beneficial if you keep working on your project.
- bdlowery 2y agoYou skipped all the hard parts, all the struggling, and now you have a working product without a mental model and can't level up to doing harder things on your own. Struggling IS learning. You didn't try different paths, piece different info together, and then eventually create a mental model. You just used ChatGPT to skip to the end result. It's like enrolling for a Calc 2, cheating on all the homework to get an A, and saying "did i learn anything? No, but it solved all of these annoying homework problems for me!" Now when you have to take the 1st exam you're screwed because you didn't learn anything.
- jessekv 2y agoTo dig into your metaphor, what would you say is the equivalent of the first exam in a programming context?
- simonw 2y agoI’ve long believed that the best way to learn anything in tech is to attempt to try to build something with it. My hunch is that people who use the process you are describing will still get a massive leg-up in learning skills like web development. Often it isn’t a choice between using AI-assistance to get some working vs spending 20 hours figuring it out from scratch: it’s a choice between getting somewhere with AI or not doing the project at all, because life is full of things to do that are more rewarding than those 20 hours of frustration. Anecdotally, I’ve heard from a bunch of people who always wanted to learn software development skills but were put off by the steep initial learning curve before you see any concrete progress… and who are now building useful things and getting curious about learning more.
- lovethevoid 2y agoI agree on building to learn, but disagree on the massive leg-up. It's like believing that using a template off GitHub is going to teach you much (outside of specific use cases). This is also why a lot of GitHub issues now submitted by users don't even follow very basic processes you may have outlined on narrowing down problems. Here's this long copied code from terminal, fix it. What makes the most difference in building to learn is the tiny steps you take to build. Printing hello world for the first time, changing it and seeing something else, using inputs for the first time to print hello, [variable], getting that image to animate across the screen. Each step becoming a great foundation for further curiosity, rather than turning your project into a black box. In contrast, I've heard from a bunch of people who wanted to learn software development, but now don't see a point since AI can do it. Same with drawing. There's a large growing apathy towards learning skills I've noticed. This is why most advocates for it don't do it from the perspective of learning. They do it from the perspective of building fast in the hands of those who already grasp the foundations.
- simonw 2y ago> It's like believing that using a template off GitHub is going to teach you much If you use a template off GitHub, read that template, dig into bits of it you don't understand, make some changes to it and see what happens - then you'll learn plenty. LLMs are amazing tools for learning if you're willing to put the effort in. If you just use their output without trying to learn anything from it you won't learn much from it at all.
- hammock 2y agoThe whole thing reminds me of how we used to check out BASIC books from the library and manually type in complete programs, games etc from the book and run them. I wouldn’t say I learned NOTHING, far from it, but it definitely wasn’t a path to become fluent in BASIC
- drdeca 2y ago“In the Phaedrus, writing is the pharmakon that the trickster god Theuth offers, the toxin and remedy in one. With writing, man will no longer forget; but he will also no longer think.” When I have to navigate to somewhere I haven’t been before, I generally do not read a map, but follow instructions from some navigation software. As a consequence, I often don’t really know where places are, just the route I take to get to a destination. With GPS navigation, I do not get lost, but neither do I have much awareness of how locations are spatially arranged. Such technologies seem to always be like this. A potion which removes a difficult task, but also dulls the ability to do such tasks oneself. It is like that one SMBC comic https://www.smbc-comics.com/comic/identity https://www.smbc-comics.com/comic/identity “ Humans offloaded memory to books, then thought to computers. Now, we're offloading our desires to the network. All that remains are basic bodily functions, which well offload in another generation or two. At that point, well just merge into one united entity so, it all works out.”
- illwrks 2y agoNot to put a downer but have you also perhaps created a liability for your club? If you don’t fully grasp what is going on with the code have you potentially left the door open to exploits?
- dmurray 2y agoA reasonable thing to be concerned about, but he described having a solid understanding of the backend, which is the more likely place to introduce a security hole.
- analog31 2y ago>>> So, did I learn anything ? No - not really. But did it solve a problem for me? yes. In my old age (60), I've gotten a little bit philosophical about this issue. I'm old enough to have pored through entire textbooks and manuals, e.g., BASIC, HyperCard, Turbo Pascal, MS-DOS (to name a few). But I can still ask myself at the end of the day: So, did I learn anything? Those things are all flawed, temporary creations of some individual, and are no longer useful. On the other hand, there are certain things that I've learned, and consider to be "fundamental," such as math, physics, and admittedly, music. Now a philosopher might correct me and point out that my choice of "fundamental" is arbitrary, but if nothing else, those things are long-lasting. The laws of physics that I'm capable of grasping haven't changed in my lifetime, nor has the technique of playing the double bass without injury. Perhaps a thing you could do is sit down and decide what things you consider to be fundamental enough (relative to your interests) to learn on a deep level, and what things you can interact with on a superficial basis by letting AI take care of them for you.
- iknownthing 2y agoI did something very similar to this, except I would say I did learn something. It felt like studying by looking up the answers - not the best way to study but if you look up the answers to enough questions you are bound to learn something by osmosis.
- QuantumGood 2y agoMany years ago I skim-studied a couple webdev books after trying to choose useful ones. The deeper I looked, the nuttier they seemed, which later I realized was due to bandwagon bias. Bias of any kind is of course hard to subtract, but seems a particularly strong problem for new coders looking for learning resources.
- xigoi 2y agoMay I hazard a guess that the website you created is at teast 10× slower than it needs to be?