Do all the things like ++ or -- rants, post your own rants, comment on others' rants and build your customized dev avatarSign Up
From the creators of devRant, Pipeless lets you power real-time personalized recommendations and activity feeds using a simple APILearn More
Search - "wk204"
I don't think I could give the best advice on this since I don't follow all the best practices (lack of knowledge, mostly) but fuck it;
- learn how to use search engines. And no, not specifically Google because I don't want to drag kids into the use of mass surveillance networks and I neither want to promote them (even if they already use it).
- try not to give up too easily. This is one I'm still profiting from (I'm a stubborn motherfucker)
- start with open source technologies. Not just "because open source" but because open source, in general, gives one the ability to hack around and explore and learn more!
- Try to program securely and with privacy in mind (the less data you save, the less can be abused, compromised, leaked, etc)
- don't be afraid to ask questions
Do whatever makes you happy and dont let your idiot parents pressure you into tech just because they think thats where the money is.13
No matter how much you learn and practise, you're still going to break something.
So get on with learning, and break something huge!4
Like visual basic? Go for it. Scratch? Get stuck in. Like playing around with HTML/CSS/JS? Ignore anyone who laughs. Want to learn C++? Awesome!
The best thing you can do as a kid is get exposure to it, be creative, be curious, work out how to do stuff, and get stuck in. It's not the time in your life to listen to anyone who's discouraging. Then, whether you take this up longer term or not, you'll have had some fun, created some cool stuff, and have a good grasp of some basic concepts.3
1. Learn to use Google.
2. If you don't know English, learn it. Most good resources are in English.
3. Be patient and don't give up. You'll get *very* frustrated, believe me.
4. Don't bother other people with stupid questions, refer to item 1. Only ask in forums/answer hubs if you can't find what you're looking for through Google. Yes, that means going into Google's second result page.
5. Don't get discouraged if you don't have friends your age that like programming. You'll find people with the same interest later :)
6. If you don't understand stuff right away, don't worry. Copy code from YouTube tutorials and change them a bit. No Ctrl + C Ctrl + V though, copy it by writing. Little by little it'll start making sense and soon enough you'll be able to write stuff of your own.
7. Most importantly, have fun!
(This advice comes from someone that started programming at age 10 in a county that doesn't speak English)8
Whichever learning path you choose, its gotta be a marathon not a sprint. Start off with 30 minutes or an hour every few days. Make it as fun as possible
Surely this will be down voted, but whatever:
2. Wait until you are 13-15 years old to dive into it
3. Live your childhood "normally" (this normality is totally subjective of course)4
Right off the bat
No beating around the bush like a pansy
Actually knowing the CPU operations (which in essence are very limited and simple) will help him/her understand EVERYTHING: its limits and its capabilities.25
If you dont find any answers on stack overflow dont post a question there.
That place is too cruel for adults let alone kids1
Advice to any child thinking to start coding:
Don't think too big at first. You'll definitely get there if you play it smart. Babysteps, kiddo, start with the babysteps. We've all been there, we've all started with all the hello-worlds.
Never trust a sole source of information. Always have doubts and double-tripple check with other sources. Some tutorials are misguiding, others could be solving slightly different problems than they appear to at the first glance
listen to the seniors/mentors. Seek for mentorship. This field is too vast to absorb it on your own. Mentors will help you there.
Before diving into coding make sure you know what you want to build, how it'll work. "I'll make it move somehow" is the straightest path to disappointment. Think it through, ask mentors for help if you need
If you're building an elephant, start with his front left feet's toes. Don't start with the elephant.
Most importantly - have fun!
Never be afraid to break something your working on! You’ll gain so much experience from trying to fix it including your own computer!4
A bit late.. and not much about how to learn to code..but more of a figuring out if the kid has a right mind set to do so..
If the kid is not the type to question everything, not resourceful, not a logical/critical thinker, gives up easily and especially if not interested in how things work then being a dev is most probably not for them.. they can still persue coding, but it will end badly..
From my experience, people who have a better education than me, but lack those skills turned out to be a crappy dev.. not interested in the best tool to complete the tasks, just making 'something', adding more shit to the already shitty stack.. and being happy with that.. which of course is not the best way to do things around here..or in life!!
Soo.. if the kid shows all that and most importantly shows interest in learning to code.. throw him the java ultimate edition book and see what happens.. joke!
There are plenty of apps thath can get you started (tried mimo, but being devs yourself it's probably not so hard to check some out and weed out the bad ones) that explain simple logic and syntax.. there is w3schools that explains basics quite well and lets you tinker online with js and python..
so maybe show them these and see what happens.. If it will pick their interest, they will soon start to ask the right questions.. and you can go from there..
If the kids are not the 'evil spawns' of already dev parents or don't have crazy dev aunties and uncles, then they will have to work things out themselves or ask friends... or seek help online (the resourceful part comes here).. so google or any flavour of search engines is their friend..
Just hope they don't venture to stack overflow too soon or they will want to kill themselves /* a little joke, but also a bit true.. */
Anyhow, if the kid is exhibiting 'dev traits' it is not even a question how to introduce it to the coding.. they will find a way.. if not, do not force them to learn coding "because it's in and makes you a lot of moneyz"..
As with other things in life, do not force kids to do anything that you think will be best for them.. Point them in direction, show them how it might be fun and usefull, a little nudge in the right direction.. but do not force.. ever!!!
And also another thing to consider.. most of the documentation and code is written in english.. If they are not proficient, they will have a hard time learning, checking docs, finding answers.. so make sure they learn english first!!
Not just for coding, knowing english will help them in life in general. So maaaaybe force them to learn this a bit..
One day my husband came to me and asked me how he can learn.. and if it's too late for him to learn coding.. that he found some app and if I can take a look and tell him what I think, if it is an ok app to learn..
I was both flattered and stumped at the same time..
Explained to him that in my view, he is a bit old to start now, at least to be competitive on the market and to do this for a living, but if it interests him for som personal projects, why not.. you're never too old to start learning and finding a new hobby..
Anyhow, I've pointed out to him that he will have to better his english in order to be able to find the answers to questions and potential problems.. and that I'm happy to help where and when I can, but most of the job will be on him.
So yeah, showed him some tutorials, explained things a bit.. he soon lost interest after a week and was mindblown how I can do this every day..
And I think this is really how you should introduce coding to kids.. show them some easy tutorials, explain simple logic to them.. see how they react.. if they pick it up easily, show them something more advanced.. if they lose interest, let them be.
To sum up:
- check first if they really want to learn this or this is something they're forced to do (if latter everything you say is a waste of everybodys time)
- english is important
- asking questions (& questioning the code) is mandatory so don't be afraid to ask for help
- admitting not knowing something is the first step to learning
- learn to 'google' & weed out the crap
- documentation is your friend
- comments & docs sometimes lie, so use the force (go check the source)
- once you learn the basics its just a matter of language flavour..adjust some logic here, some sintax there..
- if you're stuck with a problem, try to see it from a different angle
- debugging is part of coder life, learn to 'love' it4
Make google (or any other search engine) your best best friend.
Understand the art of asking questions.
Dont be ashamed of asking most of the developers no matter the experience still ask questions thats how people succed.
Make some projects .
use sites like hackerrank.
Learn utilise make.3
1. Learn as much as you can before starting your first serious job. Because once you are in production, you are not as much learning new concepts as you are copy pasting, fixing dead code and getting stressed by deadlines.
2. Aim as far as possible and believe in yourself. Facebook or google might comprise of a billion lines of code, but it's not like you can't understand all of it if you gave it your 100%. Be it a weird but amazing looking design or a simple looking calculator, you can figure it out if you are curious and dedicated enough.
3. Learn to google.
4. Don't let assholes berate you. And you WILL meet a lot of assholes in this field.1
Sho Ha Ri
First, follow the tutorial and don't try to do anything fancy, finish it and have it in a working state
Second, start experimenting, can this be improved? How? Does it still work?
Last, transcend. Develop your own way of doing it.
If you don't go through these stages properly you might get stuck and frustrated and never get whatever you're working on in a working state, resulting in hating the technology.2
After you have made pong, overengineer it, put new mechanics into it.
And because we're talking about kids here I think games are good because they can easily see what they have done, that helps them to keep motivated to tinker.
It’s like with lego you build things using tutorials and then break them and upgrade as you want them to be.2
Don’t let anyone tell you what to do in your life. Be whatever you want to be.
...if you do decide to be a coder, remember no language is better than the other. No language is perfect. You’ll never be a perfect coder. You’ll always need to search for basic things.
If at any point of time you disagree with any of this, you’re on the wrong path.3
As @shoop said, learn to Google is essential. Also, if the interest isn't on top, mentor them, give them tasks that build on each other. And don't start with assembler language.1
Learn to program on your own BEFORE doing formal studies, or chances are you'll get either annoyed && (bored || frustrated).
Best advice is to present them with a challenge. Find some real world problem. Afterwards figure out how to help the kids solve it by code. If you manage to inspire the kid, it will find the most creative ways to learn whatever it is.
Ex problem: "make a piggy bank" or "help mummy not forget groceries". Does not have to a perfect solution as long as the concepts are clear
For coding advice
Don't stop thinking
Keep asking how and why a thing works
Learn the logic
Pick any one language
Write some code, do mistake, fix, learn and repeat
Do keep a balance of coding and real life ,playing games are necessary
Do exercise as well....
Maybe some more things we can , but most important is
Do what you love not what others love.
It's your life live and code your way...
Don't make your problems too tangible. Abstract them. Sure you need to check which events (given by start & end dates) are happening at a given time. Don't jump in just yet. Think about it. You're searching for intervals given a point. Google that. Read about it. You'll learn something useful instead of just doing an inefficient naive solution. Now that you know it, show off. Find some programming competition and own that!10
The best way to get a kid interested in coding is give them legos. If they hate legos, they most likely wont like programming, or anything that requires you to understand how something is designed in order to build a service or product.
Next is just to see what the kid likes and what they're good at.2
I'd strongly advise to learn some basic about OOP and a commonly used programming language and not go down the tutorial rabbit hole and rather try stuff out.1
Bruh, just learn them how a computer works with minecraft. Inverters, And, Nand, etc... can all b made there. From there, u can make flip-flops, u can make registers, adders, multiplexors, demuxs. Ofc makin anything more then a 1-bit, maybe 2-bit machine, would be a pain, and dont get me starting on memory that extends one register. But hey, if u got the patience, u can ofc. Put it together to an ALU, combin all of them with a PC to an CPU. Ofc, you got no ROM or RAM, but hey, atleast u've built the hard part.4
Pick up a course, or like in my case a book and start. Try to understand as much as you can, try to write some easy programs that will maybe calculate, convert or display something. Anything, basically. You can always start a course that teaches you straight from the beginning for eg. boe to build a game, website or anything you're interested in. Just one thing to remember. Never make breaks that will last longer than 2 days. Keep on pushing and follow the course. Then you'll definitely achieve something worth your time.
When you do a microproject on some framework, make sure you know how it works, as in, know what you've written rather than blindly copying from tutorials, stackoverflow or documentations.
When (not if) you mess up, kick yourself for a while. Then make sure you reflect why it went wrong and take that knowledge with you.