5 ms·
Games. The first computers kids will start to wonder about are the ones they're using to play games, be it a game console, tablet, or PC. Modding comes first, s
by synack 9y ago
Games. The first computers kids will start to wonder about are the ones they're using to play games, be it a game console, tablet, or PC. Modding comes first, slightly tweaking the game to add a new item, map, or remove some annoying limitation. The truly curious and persistent kids will eventually want to learn how to make their own games. This is where you'll find the next generation of programmers.
- inetknght 9y agoThis is exactly how I got into writing software. First, I got bored with playing the same scenarios in Command & Conquer over and over. So I learned to make my own. Then I got tired of some of those hacking utilities crashing (all the time!) and said I could do it better myself. So I taught myself to write software. 20 years later... I see people being hired who have no clue how things work under the hood and it makes me very, very, sad.
- blowski 9y agoI hear this argument all the time and it makes no sense to me. If I hire somebody to put my Ikea furniture together, I'm not disappointed to learn they're not a skilled carpenter. When I hire a children's entertainer, I'd be surprised to learn they were an extremely talented musician. There are people out there who know how everything works under the hood, and that's great. But they're typically expensive and unavailable. If I can hire someone within my budget to build something that solves my problem, why is that a bad thing? And if I can build something for someone that gives them value, again, why is that a bad thing? It just sounds like snobbery to me.
- sbuttgereit 9y agoWhy assume that both positions are mutually exclusive? There's nothing wrong hiring a mediocre developer (or anything) so long as they aren't tasked with doing something that needs more skill is fine: I've done it myself in the past and will do so in the future. When that something escalates into something that does require more, it can be sad or disappointing to see what the less skilled or less caring person did. Conversely, it can be wonderful to see someone that is a true accomplished craftsman at work, even on banal projects and they should be lauded... if that is snobbish, fine, count me in. Finally here's a clown that is also a talented musician: https://www.youtube.com/watch?v=O3O1XojnTag https://www.youtube.com/watch?v=O3O1XojnTag
- blowski 9y agoWho decides how much skill a given task needs?
- sbuttgereit 9y agoAt the end of the day whoever it is that is deciding that there is need they will have filled. This can be different from the person that will be the intended beneficiary of the task, or different from the person that will execute or oversee the execution of the task. Of course, this means the adjudication may happen after the fact, but it doesn't change who was initiating the action to make something "a task" and whether or not that person is satisfied with the outcome. In the professional world, I call this "the person signing my check". (Edit: ok, ok, there can be superseding criteria as well... mostly in areas where life/safety issues are at play).
- tonyarkles 9y agoIt's great, if they can solve the problem! My experience, as a kid who self-taught C after feeling that QBasic was too limiting, is that to debug problems, you often need to go a level or two deeper than the code you're working on. As an example, I've encountered bugs with Python libraries that I had to debug using GDB. If I wasn't comfortable with C, my only option would have been to throw my hands up in the air and say "I don't know why it crashes sometimes" Re: snobbery... maybe? I'm sufficiently self-aware to recognize that I have a lot of pride in the fact that I am comfortable pretty much anywhere in the development stack. Out of high school, I recognized that I would occasionally encounter software problems that appeared to be deeper in the system than I was comfortable with, so... I went and did a dual EE/CS degree. At this point, I'm happy writing JS (React/Redux are my preference), and I'm happy debugging ARM machine code (I once had a peripheral fail to initialize because the gcc optimizer had reordered code such that I was violating the wait states on the periph). Glitches on the power supply rail? Bring on the oscilloscope. Shit performance in your web app? Let's profile it and see what's up. So sure, I might be a bit of a snob about this. I put years and years of effort into deeply understanding all of this stuff. You want to hire a guy who knows jQuery and has never manipulated the DOM by hand? Go for it! And when the app is buggy and performs like shit, give me a call and I'll help you untangle the giant ratsnest they made.
- blowski 9y agoThat's actually the perfect way to be. A startup hiring someone of your level to build an MVP is probably wasting a lot of cash. Most startups will never grow big enough to worry about performance. And if they do, they can afford to pay you to come and in fix their code. That sounds like a balanced ecosystem to me.
- tonyarkles 9y agoTotally! And that's what some of my gigs have been. "We've got a product, we've found a market, and we need to fix some things about the product that we don't have in-house talent to do" On the MVP front, I somewhat agree with you. It all depends on what the product is. I've worked on tech spikes that have involved hardware prototyping, signal processing (both embedded and desktop/mobile), image processing, RF, etc. Those are the types of things where you often can't really "hack it together". I've also worked on simple, e.g., React Native MVPs. The only advantage I might have over a less skilled developer is that I can generally bang those things out quite quickly; in many cases, faster than the business part is ready for (which is likely just wasteful).
- bjornlouser 9y ago"If I hire somebody to put my Ikea furniture together... " talk about snobbery ;)
- monksy 9y agoIt's all about craftsmanship, and it's about the depth of knowledge. You can hire most people to build a car from a kit. However, you also have to accept blame from getting someone with a shallow understanding of the car when something goes wrong on the car. > But they're typically expensive and unavailable. Because the value of the knowledge is extremely high and the market is flooded with people that can do the job of creation but not solve the problems that arise out of it. > why is that a bad thing? TL;DR Short term, that's ok, long term: they have no understanding of what they're truly doing and the consequences as a result. You should accept responsibility for that.
- monksy 9y agoI think there is a concern in forcing kids to learn how to program vs gatekeeping and self-taught developers. With gatekeeping/a tightly knit community: modding, building a PC, and developing a game becomes an achievement that the kids do. It encourages them to succeed to become apart of the community. With having training/classes apart of the curriculum: It removes the reward of solving the problem and removes a sense of pride in accomplishment.
- tmccrmck 9y agoAs someone with a background in teaching CS at the high school and university level, I've had this sentiment for the last few years but have never articulated it as well as you've just done. I went back to my old high school a few years ago to see the AP Computer Science class and the difference in the students was marked to say the least.
- monksy 9y ago> I went back to my old high school a few years ago to see the AP Computer Science class and the difference in the students was marked to say the least. Could you elaborate? I'm not sure by what you mean.
- sporkenfang 9y agoEr... I don't think that's universal, but sure, you'll find some programmers there.
- sbuttgereit 9y agoThis. The whole reason I got into technology was because I needed to know it to make bigger and better games work. I started playing "electronic" games at a very, very early age (4 or 5) and at the time that meant pinball (with rotary dials for score)... then I saw the first video games appear next to my pinball machines... and then the very first home consoles appeared. By that time I was old enough to bug my parents enough to get one (Fairchild Channel F)... and things escalated from there to a Vic-20 (and so forth). The first programming I did was to make a game in BASIC that a friend bought and was broken work (simple syntax error). I learned networking (when PC networking meant IPX, BNC connectors, etc) to get the first multiplayer games up and running. I had no intent to be a professional technologists/developer. It was a means to an end. Much later, after I had entry level tech jobs, I honed the skills and knowledge to really be a professional... honestly, it came pretty easy once I realized I actually kinda liked the field in my mid-20s.
- bigtunacan 9y agoDefinitely games. This is what got me first hacking when I was a kid. Now as a parent, my oldest daughter (now 13), has been hacking on things for a few years now. First it was with Legos, then Minecraft modding, and most recently she's been trying to hack Movie Star Planet. Believe me; I was quite shocked we she came to me out of the blue and was like, "Hey dad; can you come take a look at this? I'm having a problem with Charles and I thought you could help." I was thinking, "Ok, I don't know who Charles is, but I'll listen to her." Turns out she was referring to Charles the web debugging proxy (https://www.charlesproxy.com/documentation/proxying/ssl-proxying/ https://www.charlesproxy.com/documentation/proxying/ssl-prox...) and that she was doing traffic analysis on her games to see if she could hack the data being passed around; not all that much different from Burp which I use for security auditing some of my apps at work.
- cr0sh 9y ago> and that she was doing traffic analysis on her games to see if she could hack the data being passed around I hope you had - either after or prior to that point - a heart to heart talk with your daughter about what she was doing. It's one thing to do that on a game or whatnot - but we all know where that can lead, whether accidentally or deliberately, and we have all heard stories of people (usually guys - but I bet that's going to change in the future) doing something "for the lulz" or "because they were curious" or "just to see what would happen" - and then quickly finding themselves on the dark end of a TLA agent.
- jbob2000 9y agoCan confirm, caught the programming bug by using Warcraft 3's map editor. It had a really powerful drag'n'drop script editor, which made it very accessible for me to learn about variables, conditionals, and events.