|
If she is smart she will do the learning thing alone (or pick alone the route at least)...
As you not actually going to teach her programming, you should show her the possibilities - how versatile computer programming is... Do not waste your (and her) time on 'Hello World'-like things... Make her hungry, move her imagination... If she is any good the rest will come...
"The only place where Success comes before Work is in the dictionary." Vidal Sassoon, 1928 - 2012
|
|
|
|
|
|
|
I scrolled through the article and now I'm fluent in C++
|
|
|
|
|
I'm happy for you. It really is an easy language underneath it all!
|
|
|
|
|
|
Do you have stock in that company?
|
|
|
|
|
Ok, as you don't seem to appreciate my suggestions this is the last time I will try to help you.
Goodbye !
|
|
|
|
|
Come on man, I didn't mean it like that.
In fact, I was just looking at Hackr.io because it was on top and you left some pros.
It's just that you link to that website just a bit too much to just be an enthusiast.
|
|
|
|
|
Ah, then all is forgiven
|
|
|
|
|
People have different learning styles and preferences.
So I would let her drive the learning or ask her how she likes to learn as she is a teacher and probably understands different learning styles.
As a personal preference I always like to learn by having a project that I cannot possibly complete with my current level of knowledge.
That way I have a goal and the goal forces me to learn what I need to learn in order to reach that goal.
Scratch is a great learning environment for basic principles, I would generally suggest it as a good place to start from then from there move onto something like C# and a calculator application.
You might even be onto things like the shunting yard algorithm, for parsing basic mathematical formulae, in a couple of months if your student is really bright.
“That which can be asserted without evidence, can be dismissed without evidence.”
― Christopher Hitchens
modified 23-Jul-20 3:42am.
|
|
|
|
|
If you are using winforms, why not build a calculator application. Very simple, easy to get working and will show a few fundamentals.
|
|
|
|
|
No offence intended, but it sounds like she can't sit still for 5 minutes. Perhaps she would be best trying to work out what she is trying to achieve from life, before she picks her next "career".
Use some of those psychology skills on herself
|
|
|
|
|
No offence intended, but maybe you shouldn't judge people based on two to three lines someone wrote about them on a public forum
She spent the last ten years of her life getting to where she is now, doing study after study, and finishing them all with good grades.
Next to that, she taught kids and (specifically) immigrants for the past five years or so, because she loved helping and seeing these kids grow.
But after this time she decided now is the time to try something new and I have no doubt that if she likes this, she'll go for it and she'll be a (certified) programmer in a few years time.
I know few people who are as determined as she is/was.
|
|
|
|
|
Fair enough, but I still stand by my statement.
Spending 10 years to become a primary school teacher is hardly an achievement, most people will do it in 4 years. From my perspective, spending 10 years doing different degrees is definitely a sign of someone who doesn't know what they want to do with their life.
I am not saying there is anything wrong with it. She if free to do whatever makes her happy. I am simply pointing out that she appears to get bored easily, and without any long term goals, programming will just be another "stop gap". Anyway just my opinion, of which I am sure she has no care
|
|
|
|
|
musefan wrote: Spending 10 years to become a primary school teacher is hardly an achievement It's a bit more complicated than that
musefan wrote: Anyway just my opinion, of which I am sure she has no care Your careless words hit her hard and she went from successful teacher to sleeping on a bench in the park, next to a shopping cart full of stuff and looking for food in dumpsters, all in the past hour
That was sarcasm, just in case you missed it
|
|
|
|
|
Sander Rossel wrote: Your careless words hit her hard...
I change lives, it's just what I do.
Sander Rossel wrote: That was sarcasm, just in case you missed it
You may be a stranger, Sander, but if there is one thing I know of you it's that you are a rational and logical thinker, with a good sense of humour. Thus, no need to explain your sarcasm
In fact, the day you respond emotionally will be the day I report your account as being hacked
|
|
|
|
|
|
Find a personal project that matters to her.
I have built an address book application in early every language I've learned. I know the requirements, e.g., I know what the final result should do, so I can focus on the construction and how the pieces-n-parts work together. Help her choose something that covers all the bases -- data storage (DB, XML, etc), middleware, and UI.
This will help her round out her new skills while doing something completely practical. It also teaches data structure & management, which go beyond just coding.
|
|
|
|
|
I'd change the order a bit:
HTML->CSS->JavaScript->PHP->MySQL
And that can be done rather pleasantly, with those "try it" editable example at W3Schools[^]
For all but MySQL, she can download and use the still very nice FREE editor, Expressions 4 from MicroSloth. Vertrigo gives her a free WAMP server so she can start to play with her own fully functional webserver with very very little hassle (webserver, php, MySQL).
The nice thing is she doesn't need to download anything for the first several steps. Just play. Keep her away from things like WordPress - or she'll possibly get sucked into the ignorance is bliss trap.
As for something like (C/C++/C#) - that's for down the line and how her tastes fit into the world.
Ravings en masse^ |
---|
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
Leave Entity Framework and NHibernate off for a while. Of the three main paradigms of coding, introduce her to structural and object oriented and leave model programming for later.
|
|
|
|
|
When I read the subject of your post and the first paragraph, my knee-jerk was "learn Python first" then "learn C++", but it appears your advice is focused on web development. Web development will show the fruits of your labor pretty quickly and that may motivate you to "keep going", no doubt about it, but I feel that Python also does this to only a slightly lesser extent. It is interpreted (no need to compile), has a lot of features to play around with (GUI, client/server, parsing, files, text processing, AI/ML, and on and on...) to make neat apps and games while also teaching concepts like object-oriented design (OOD), program structure / modularity, and multi-file projects and organization. C++ will layer on top of the OOD and multi-file project concepts while teaching new concepts like pointers and understanding the compile/link build process via gcc/g++/Makefile's, etc. Another path I would consider is maybe Android development (through Android Studio) - I'd lean towards Kotlin, but Java has more general use, so I'm not writing that off. Again, you can see the fruits of your labor quickly while making cool little apps on your Android phone or tablet.
|
|
|
|
|
There is an app called Grasshopper, which is designed to teach programming to beginners. I learned SQL initially because a work program used that to do custom reporting. The program's help guide was amazingly good at teaching SQL. Other languages I've learned by just getting one of those "how to code in X" books and going through it. The trick is to fix every program they create because none of them work as written. Forces one to learn more, faster.
I agree that getting her interested in a problem that needs solving, then doing the code to solve it, is way better than hello world. Hello World requires too much knowledge of computers and programs before one can even start to really understand what it does.
Bond
Keep all things a simple as possible, but no simpler. -said someone, somewhere
|
|
|
|
|
Are you wanting to teach her how to write code, or how to solve problems using code? In my opinion, they are vastly different.
"One man's wage rise is another man's price increase." - Harold Wilson
"Fireproof doesn't mean the fire will never come. It means when the fire comes that you will be able to withstand it." - Michael Simmons
"You can easily judge the character of a man by how he treats those who can do nothing for him." - James D. Miles
|
|
|
|
|
I saved this link a time ago from a similar conversation... I think it might help you.
It works best in Chrome: Learn to Program[^]
It might help you a lot to give a fast introduction in this world
M.D.V.
If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about?
Help me to understand what I'm saying, and I'll explain it better to you
Rating helpful answers is nice, but saying thanks can be even nicer.
|
|
|
|