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

科技回声

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

GitHubTwitter

首页

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

资源链接

HackerNews API原版 HackerNewsNext.js

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

Ask HN: Teaching Code to Someone That Asked Me for a Job

66 点作者 sirrele将近 8 年前
Yesterday I made a deal with an old high school friend that reached out to me about a job as well as a loan. In general, I don't loan money to friends. It gets complicated quickly and risks the actual relationship. However, I made a deal with him where I would give him a little more money that what he asked for and he wouldn't need to pay me if he committed to learning how to code (with my assistance). I hypothesize that the growth that I will receive by teaching code and the potential positive impact that can result in his life will be worth the experience. Have any of you done something like this? I would love some pointers or thoughts :)

26 条评论

grardb将近 8 年前
&gt;However, I made a deal with him where I would give him a little more money that what he asked for and he wouldn&#x27;t need to pay me if he committed to learning how to code (with my assistance).<p>I would highly recommend against this.<p>If you lend money to someone, expect to never get it back ever, regardless of the deal you made. I know this from personal experience.<p>What I also know from personal experience is not to expect someone to learn how to code because you want them to. I gave my old laptop (which was still working well) to my cousin under the condition that he completed a single Udacity course on programming. I will tell you right now that he did not even come close to finishing the course.<p>I don&#x27;t know you or your friend of course, but if I had to put my money on it, your friend is not going to learn to code, and you&#x27;re not going to get your money back for a <i>long</i> time, if ever.
评论 #14604755 未加载
评论 #14604889 未加载
评论 #14605249 未加载
评论 #14604925 未加载
评论 #14604960 未加载
PaulStatezny将近 8 年前
I can speak from experience.<p>TL&#x2F;DR: Lessons from teaching a friend to code.<p>I have a friend who was looking for a career change. I&#x27;ve spent somewhere between 75 and 150 hours helping him learn to code. (Web development.) Here&#x27;s what I learned in the process:<p><i>1. I highly overestimated how quickly one could learn web development with no prior programming experience.</i> I was too optimistic, and I told him if he put serious time in, he could have the skills to build a simple web app in 6 months. He put in a more realistic amount of time than I&#x27;d suggested, balancing other areas of life. It took him closer to 18 months, including enrolling in a coding camp, which he&#x27;s now about to complete.<p><i>2. Charging money for a service helps people take it seriously.</i> At first I didn&#x27;t charge him, but then I took the advice of a friend who has that philosophy. This isn&#x27;t definitive evidence, but I think charging for the training helped both him and myself to take it seriously and put effort into it. He&#x27;s now about to graduate from a code camp, and I&#x27;m not sure if he would have done it if not for establishing that mindset that this training is valuable. (I recognize the value of code camps is debatable.)<p><i>3. Motivation is an important (and tricky) thing.</i> There were times where he was spending more time on video games than programming. But I remember when I was learning, and programming felt very hard and mysterious for years before I began to feel comfortable making an entire project on my own. The difficulty level was demotivating at times.
danso将近 8 年前
I&#x27;ve tried to teach code to coworkers and friends for free. It doesn&#x27;t really work out. Teaching programming is significantly more difficult than doing it (IMO). You&#x27;ll definitely learn how hard programming is to learn, and that can be helpful. But unless someone puts real skin in the game, and&#x2F;or have a real need to learn programming, they probably won&#x27;t be able to muster the focus and commitment needed to reach a satisfactory skill level.
评论 #14604383 未加载
评论 #14611582 未加载
kazanz将近 8 年前
I started a little full-stack bootcamp to give back to the community, I had about a 50% success rate teaching people from all types of backgrounds, economic and educational levels etc.<p>I typically charged a couple hundred bucks so that they would have &quot;skin in the game&quot;. 100% of the people, I or someone else funding, failed to finish the course. Having skin in the game is absolutely critical to their success.<p>In this case, it seems they have nothing to lose, and I suspect if they are willing to beg you for cash, they would have no problem going elsewhere.<p>I suggest some sort of deal where he has to put something in other than &quot;time and effort&quot;. Perhaps have him &quot;pay&quot; you in other ways, such as chores around your house. Mowing the lawn, etc.
评论 #14604568 未加载
评论 #14605653 未加载
aerovistae将近 8 年前
I have helped many people learn to code.<p>I was teaching JS basics to a friend the other day who was interested, and he said something that I thought was particularly well-worded. When he stumbled across the idea of classes (as in OOP, that is), I said he should avoid them for now because it&#x27;s too advanced and it would just make things confusing. I encouraged him to focus on basic functions and control flow.<p>He demurred, insisting that we do something &quot;actually interesting&quot; and had me teach him how to create a class. He likened the motivation to learning Brazilian jiu-jitsu:<p>&gt; I don&#x27;t want to spend hours practicing passing the guard, I want to learn to rip someone&#x27;s fucking arm off.<p>And having learned some BJJ myself, and having experienced that exact same desire and irritation, I couldn&#x27;t help but sympathize. Passing the guard is a crucial part of BJJ, but it feels quite basic and uninteresting in the beginning, much like if statements and for loops.<p>The point is, make sure your learner is working on something he finds interesting, like trying to put together a basic calculator app or <i>anything</i> concrete that he can relate to. Empty isolated exercises that aren&#x27;t leading to building anything are detrimental to interest and motivation.
jrochkind1将近 8 年前
If you don&#x27;t loan money to friends, this sounds like the worst loan conditions ever, don&#x27;t do it. It&#x27;s like loaning money to friends but worse. &quot;A commitment to learning how to code&quot; is a pretty subjective loan repayment&#x2F;forgiveness condition, now you&#x27;re in the position of judging whether he _really_ demonstrated that commitment. This is even _more_ complicated to your friendship than a straight loan.<p>Who knows if he really has motivation to learn to code at all, or is just doing it to get your money. Without his own internal motivation, learning is not gonna work. But even if he has internal motivation, this is still like loaning money to friends but worse.
评论 #14606109 未加载
stevedt将近 8 年前
Just my anecdotal experience: the people who should be coding will find a way to start coding.<p>The barrier to entry is so low -- talking about learning to code, not necessarily finding employment. I have tried with coworkers and family members who wanted to do it for the money and their heart just wasn&#x27;t in it.
评论 #14604892 未加载
tbirrell将近 8 年前
I assume the job is about coding, otherwise this would be a very interesting situation and will likely backfire as your friend will have no motivation to actually learn.<p>That said, here are some tips. Note that I have never taught someone to code, but I am familiar with mentoring someone through a skill set I already have. Consider all languages as placeholder terms for whatever stack you are going to teach, they are what I started my career in, so I&#x27;m using them here.<p>- Beware the curse of knowledge. Yeah, I know XYZ the most obvious thing in the world, but if you think back to the dawn of time, you&#x27;ll remember when you didn&#x27;t understand how a function worked.<p>- Start slow. This builds off the last one. Start with the basics. I personally learned to code in the following order. HTML &gt; CSS &gt; JS &gt; jQuery &gt; PHP &gt; MySQL &gt; PHP. Start easy and lay a solid foundation, then build on that.<p>- Teach the language before the framework. Okay, this is based off my learning experience rather than my teaching experience. However, if you want your friend to fully grasp and be able to keep going, teach them JS before jQuery and PHP before Laravel. Show them how the magic works. It will make it so much easier for them (and you) down the road.<p>- Have fun. I know that&#x27;s a cliche ending to every list ever. But remember to make the process enjoyable. Presumably, you are a programer, and if you are anything like me, you love what you do. Try to instill that in your teaching. It&#x27;ll make your friend more likely to stay and learn without fighting the process.<p>Good luck!
评论 #14604484 未加载
评论 #14604255 未加载
评论 #14604539 未加载
gorpomon将近 8 年前
Here&#x27;s my two cents as someone who&#x27;s taught coding and also taught literacy for adults.<p>My gut feeling is that it will be hard to make work. Learning to code takes a long time (a bootcamp is 11 - 17 weeks at 60hrs a week, so 660 - 1020hrs). However keep in mind that&#x27;s entry level proficiency.<p>I think the best outcome would be that this person learns enough to get into a bootcamp. You&#x27;d be shocked how many people apply who just aren&#x27;t ready to even start. They could learn enough with you that they find out if they like it or not, and if so from there they can take out a private loan to attend one. Keep in mind, I&#x27;m not sure how predatory (or not) the companies giving private loans to bootcamp grads are, but it is an option, and at ~$17k in cost, it&#x27;s steep but not life derailing if doesn&#x27;t work out (my guess is it&#x27;s about the cost of a broken bone if you&#x27;re not insured, just a guess there).<p>If you make the expectation they learn to code to get a job, it probably won&#x27;t happen, if you level set that they learn enough to get into a program and OWN IT, then perhaps you&#x27;ll have some success.<p>Just my two cents, hope this helps!
RankingMember将近 8 年前
I think wanting to teach him to code is admirable, but I hope he actually WANTS to learn, given the difficulty and need for perseverance.<p>I do question the lending money thing but maybe there&#x27;s some aspect of his character that makes you trust him enough to risk the relationship that we&#x27;re not aware of.
eof将近 8 年前
I have tried to teach people to code. More often than not it does not work out. It appears to me there is something intrinsic or developed at a very young age which sets a mind up to be both able and willing to think like a programmer.<p>Most people simply don&#x27;t think that way, end of story. Some do though, I hope you picked one of them.<p>I wouldn&#x27;t worry too much about teaching him to &quot;code&quot; as there are a lot of ways to be valuable in the industry in general, and helping your friend is a very good thing to do.<p>In any case, I think you will probably get a lot out of this . Just don&#x27;t try and force a square peg down a round hole.
评论 #14604933 未加载
评论 #14604955 未加载
hackermailman将近 8 年前
The best intro I&#x27;ve found is the edx course HtDP which is now a micromasters track <a href="https:&#x2F;&#x2F;www.edx.org&#x2F;micromasters&#x2F;software-development" rel="nofollow">https:&#x2F;&#x2F;www.edx.org&#x2F;micromasters&#x2F;software-development</a> it&#x27;s free to audit instead of paying for the verified track (which gets you TA help). He could conceivably do the first 2 courses in that track then learn whatever you&#x27;re doing or finish the whole track by next year.
quaunaut将近 8 年前
I sorta did something like this.<p>A friend of mine[1] pushed and pushed and pushed me to learn Python, and at one point even paid me a small amount to make two plugins for Anki(a flashcard dekstop app), which was really difficult, but are still on my Github today[2].<p>That was enough of a push that then, I pushed as hard as I could into Django, got my first gig, and a year later switched to Ruby&#x2F;Rails, and have been growing ever since.<p>I highly recommend this course of action. It absolutely changed my life, and brought me from barely being able to scrounge out a minimum wage job after crossing the country, to making more money than my Father and being able to live effectively wherever I want, and in just 5 years. It&#x27;s been incredible, and it&#x27;s all thanks to his kindness toward me.<p>1. <a href="https:&#x2F;&#x2F;twitter.com&#x2F;kfdm" rel="nofollow">https:&#x2F;&#x2F;twitter.com&#x2F;kfdm</a><p>2a. <a href="https:&#x2F;&#x2F;github.com&#x2F;bravely&#x2F;Anki-Reset-Leech" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;bravely&#x2F;Anki-Reset-Leech</a><p>2b. <a href="https:&#x2F;&#x2F;github.com&#x2F;bravely&#x2F;Anki-Priority-Switcher" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;bravely&#x2F;Anki-Priority-Switcher</a>
评论 #14604697 未加载
franciscop将近 8 年前
I have been using codementor.io and I love it. It is similar, except that you get <i>paid</i> to teaching instead of having to pay to teach. That one is for you in case you are interested to keep growing (and get some money).<p>For your friend I think that is great as you avoided any kind of conflict of interests for him.
Grustaf将近 8 年前
Really great initiative, I hope it works out well! I haven&#x27;t taught anyone like this, but in other contexts.<p>I would say since money is involved and he doesn&#x27;t necessarily have the same strong motivation that self learners usually do that it&#x27;s important to lay down clear rules, i.e. what does it mean to learn to code. Ideally this should be output based rathe than input oriented, like building a certain simple app. That&#x27;s also extremely rewarding.<p>I always tell people to follow the stanford course on swift (from itunes u), it&#x27;s absolutely brilliant. Depending on his background something else might be more suitable, but in any case you could act as the TA checking his homework, but also as a classmate&#x2F;teacher that can answer questions. The bulk of the presentation of new material you ca safely leave to a mooc i think.<p>Good luck!
评论 #14604326 未加载
avdicius将近 8 年前
A personal account of perhaps an old timer already. Entirely based on personal experience so probably less than representative.<p>People are either able to code or not. Teaching does not work. Those who are able to code almost entirely pick all the skills by themseves. If a &#x27;natural born&#x27; coder gets into some formal environment, such as university or something, suсh a person in two months surpasses the level of all the peers and the direct instructor as well.<p>In the university I was trained for automatics. But I quickly learned that coding takes me no effort at all, as opposed to, say, understanding electronics. After reading Wirth, Kernighan &amp; Ritchie, and Stroustrup I often found myselfs hinting students from the programming department how to perform their tasks as they were scratching their heads and I was just passing by.<p>This has nothing to do with inteligence. I&#x27;m perhaps not very smart. When I starred at some scheme I had no idea if this an amplifier or something else, what is the role of one resistor or another. At the same time mates from my group read it as it was written in plain English (err, in plain Russian to be precise). But the very same persons were totally unable to code. It&#x27;s very strange. For me coding is trivial and takes no inteligence. This is why I do it for living. The path of the least resistance. I&#x27;m kind of puzzled why persons smarter than me cannot code.<p>Anyway, after reading some foundational books the only thing that helps is reading other people&#x27;s good code. For me it was reading pieces of the old (around 90&#x27;s) BSD and GNU code.<p>I never met a person I&#x27;d appreciate for directy handing me over any useful coding skill. YMMV.
nyxtom将近 8 年前
Make sure you set project oriented goals, this might help eliminate the issue of him asking you to fix things for him all the time and also create some foundational skills. Also, there are some wonderful classes online that go from basic logic to coding skills all the way up the stack. Check out <a href="http:&#x2F;&#x2F;www.nand2tetris.org&#x2F;" rel="nofollow">http:&#x2F;&#x2F;www.nand2tetris.org&#x2F;</a>
kreeWall将近 8 年前
I was hired a year ago without a computer science background into a position as a data analyst (I know data), but needed to learn how to code. I&#x27;ve been using a lot of online resources on my journey of coding. Feel free to reach out if you&#x27;d like some of these, I can help you figure out what would work best for the languages and concepts you&#x27;ll need help with!
agjacobson将近 8 年前
Coding is a very complex skill. The success probability in going from zero coding experience to being a self-starting coder is a bet I wouldn&#x27;t take except out of pure friendship or charity.<p>There are two problems. If you substitute &quot;gardening&quot; above for &quot;coding,&quot; my statement is still true. The second is the nature of learning exercises. We all know that a real problem to solve generates motivation that is much more valuable than, and can self-generate syntax and algorithm knowledge.<p>With all the free tools, free courses, and free pdfs around, I wouldn&#x27;t try to train someone who is not already brimming with questions generated by real frustration.
gedrap将近 8 年前
This is a noble effort but your post is missing one key answer: is this person motivated enough to do it? Or just needs some money right now and maybe for the next month or two?<p>Coding is hard, and takes a lot of hours (like, a thousand or two) to get to basic proficiency. So yeah, you need a lot of will power and motivation to get it done. Especially outside formal setting like university, where you are pretty much forced to do it.<p>I know plenty of smart people who have uninspiring jobs with low salaries, and they keep talking how they will learn to code, but they don&#x27;t manage to go past hello world.
obstinate将近 8 年前
It would have to be a very close friend indeed for me to offer to do a bunch of free labor (in the form of teaching) in addition to giving money, and I&#x27;d have to be satisfied that the circumstances were not reasonably within the person&#x27;s control. It&#x27;s not that I think people don&#x27;t deserve help up when they screw things up that are within their control. It&#x27;s that I don&#x27;t want to &quot;throw good money after bad,&quot; and from my experience and what I&#x27;ve heard from others, that&#x27;s the majority outcome for situations like this.
hluska将近 8 年前
What if you flipped it around a little? You aren&#x27;t so much lending him money and teaching him to code as it is hiring him to help you with a side project.<p>If you judiciously assign him tasks to work on, help him get started but encourage him to use solid Google&#x2F;Stack Overflow skills to solve his own problems, you may end up truly helping him.<p>The alternative, which scares me a little, is that he will start working on tutorials, get bored, start to doubt himself and then completely disappear from your life because he failed and can&#x27;t pay you back.
meerab将近 8 年前
One common mistake is to assume that &#x27;only way to solve his job problem is to teach him to program&#x27;. If your goal is to make the man stand on his own feet, there are more than one way to do so. High schoolers have career counselors. Their job is to match student&#x27;s interest and available careers. You are overwriting career counseling step.<p>You are saying &#x27;Learn to code, that career path worked for me, it will work for you&#x27;.
oblib将近 8 年前
I did something similar with my daughter&#x27;s fiancé, but I didn&#x27;t really teach him how to code. I taught him how to learn how to code and he picked it up fast and was very productive.<p>Unfortunately my daughter broke off the engagement so we didn&#x27;t get a chance to work on much together but he went on to a career in coding so it worked out pretty good just the same.
brador将近 8 年前
Lend only money you can lose and ask them to learn programming. But don&#x27;t sweat if they don&#x27;t and walk away if it starts risking the friendship.
zappo2938将近 8 年前
1. Learn Microsoft Excel. 2. Take test at temp agency. It&#x27;s all they care about. 3. Profit. Quickest way to earn a living with a computer.