TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

How I learned to program

322 pointsby deafcalculusover 7 years ago

16 comments

bluedinoover 7 years ago
His &#x27;ineffective fumbling&#x27; and &#x27;high school&#x27; seem to mirror my experiences. Using a bunch of mismatched books and computers with no real goals, no mentor, and no real results.<p>However, it&#x27;s amazing when you read about &lt;insert famous programmer&gt;. They grew up with Apple II&#x27;s and Commodore 64&#x27;s, but they <i>mastered</i> them. Or at least that&#x27;s the narrative from the author of the articles that talk about them.<p>They don&#x27;t just write silly BASIC programs like the rest of us, they started using assembler and learn the machine like the back of their hand. They learn how to optimize the living crap out of their code. Maybe their schools just had better books in their libraries or they subscribed to the good magazines of the day. Or they were just that much better at programming and smarter and more focused, one of the above, or all three.
评论 #16012496 未加载
评论 #16012058 未加载
评论 #16013639 未加载
评论 #16012389 未加载
评论 #16012348 未加载
评论 #16016389 未加载
评论 #16012415 未加载
评论 #16011847 未加载
cabaalisover 7 years ago
&gt; We were exposed to some kind of lego-related programming, uhhh, thing in school, but none of us had any idea how to do anything beyond what was in the instructions. While it was fun, it was no more educational than a video game and had a similar impact.<p>I wonder how many of these &quot;teach your kid STEM&quot; toys have this result. I learned to program when my mom got me a vtech precomputer 1000 for Christmas when I was a kid. But becoming a &quot;developer&quot; took many years of effort. Hopefully more kids will be set on the path like I was.
评论 #16011134 未加载
评论 #16011118 未加载
评论 #16011619 未加载
评论 #16010984 未加载
评论 #16010919 未加载
评论 #16011610 未加载
评论 #16011302 未加载
mattfrommarsover 7 years ago
Looking back in my life when I was born a year after Tavish Armstrong, I just feel so, disappointed how my life turned out to be. I had similar dreams and hope but they didn&#x27;t work out in the end.<p>Only if I told my younger self to actually go through the Macromedia Flash book I borrowed once in high school, I would have had my first glimpse in computing. But during my early days, I never had anyone who was remotely interested in computers. I wasn&#x27;t great at socializing either which would have lead me to people who were in machines. There was AP CS course at my university but I never took it only because I thought it was too hard and instead took AP Calc.<p>Without any concept of computing or the power of programming, how can a kid get into life of software development? All the random success stories I&#x27;ve read of popular programmers these days, all of their younger days began with someone giving them a gift or some &#x27;assembly&#x27; language computer and started from there.<p>Wish the pursuit of programming caught me much earlier in life than right now, went into wrong major and always thought about programming, programming. Having friends and family who aren&#x27;t into computers didn&#x27;t help either until last year. So much life was wasted.
评论 #16013268 未加载
评论 #16012210 未加载
评论 #16012079 未加载
评论 #16014511 未加载
评论 #16012121 未加载
robocatover 7 years ago
<p><pre><code> &quot;but that’s so obvious that it’s not even worth stating&quot; </code></pre> Intelligent people I know say this or something similar. What is obvious to a smart person for something they are skilled at, is not obvious to the rest of us!
评论 #16011406 未加载
评论 #16011491 未加载
评论 #16011514 未加载
评论 #16011690 未加载
评论 #16011309 未加载
评论 #16013716 未加载
评论 #16014483 未加载
mooredsover 7 years ago
&gt; hear a lot of stories like that, and I’m happy to listen because I like stories, but I don’t know that there’s anything actionable here. Avoid managers who prefer doling out punishments to helping their employees? Obvious but not actionable.<p>Actually, the advice to avoid managers who are not helping employees is eminently actionable. It&#x27;s just that the actions are either tedious or radical.<p>Tedious steps to take, before you are in the situation: find other current and former team members on linked in and do backchannel references on the position.<p>Radical steps to take, after you are in the situation: quit your job and find another one.
评论 #16011248 未加载
评论 #16011356 未加载
crispytxover 7 years ago
&quot;I ended up at a little chip company called Centaur. I was hesitant about taking the job because the interview was the easiest interview I had at any company4, which made me wonder if they had a low hiring bar, and therefore relatively weak engineers. It turns out that, on average, that’s the best group of people I’ve ever worked with. I didn’t realize it at the time, but this would later teach me that companies that claim to have brilliant engineers because they have super hard interviews are full of it, and that the interview difficulty one-upmanship a lot of companies promote is more of a prestige play than anything else.&quot;
vinn124over 7 years ago
as an aside, i think dan luu&#x27;s writings are some of the best on interweb: articulate, methodical, concise.
评论 #16011492 未加载
评论 #16018953 未加载
评论 #16013003 未加载
tomxorover 7 years ago
&gt; In conclusion, life is messy and I don’t have any advice.<p>That _is_ the advice :P seriously. Most advice is far too subjective to likely be applicable to yourself (because life is so messy).<p>With one exception: &quot;leave bad roles more quickly and stay in good roles longer&quot;, as the author mentions, it seems far too obvious, but it&#x27;s not... because &quot;bad&quot; is actually subjective, so &quot;not working well enough&quot; is perhaps more accurate.<p>Some &quot;successful people&quot; have never had a &quot;not working well enough&quot; part of their career because they are crazy lucky, and others have simply been perceptive enough to recognise it and move on. Some label this as &quot;luck&quot; but luck implies some objective &quot;good&quot;, it&#x27;s about chance, the chance of landing in a well fitting scenario.<p>Rolling the dice can be painful, and knowing when it&#x27;s good not always obvious. Perhaps at least knowing to look out for this even though you don&#x27;t know what it will look like for you, is the only general advice?
petraover 7 years ago
Anybody knows how to solve that third meta skill, of &quot;solving hard problems&quot;?
评论 #16011779 未加载
评论 #16011929 未加载
评论 #16013358 未加载
评论 #16013915 未加载
评论 #16012994 未加载
copper_thinkover 7 years ago
My recollection is that Dan was working at Microsoft during &quot;Third real job (2015-2017).&quot; (He has a couple of posts in this timeframe where he refers vaguely to his employer. &quot;Hiring Lemons&quot; is one.)<p>I would be interested to know what teams Dan worked on while he was at Microsoft. He says that team #1 couldn&#x27;t build their source code on most days, and that while team #2 was better, they still often had broken builds in origin&#x2F;master.
评论 #16012885 未加载
评论 #16011973 未加载
kebmanover 7 years ago
Pretty anecdotal, but it seems to strike a chord with a few people in here, like anecdotes tend to do... I like the HTML&#x2F;CSS approach, and then tack on some JavaScript. No stupid assembler to keep track of. I&#x27;ve taught about 300 kids web design, and around 150 programming (rough estimate), and that&#x27;s what stuck the best with the kids. Java, not so much. From JavaScript the sky&#x27;s the limit. Personally I tried BASIC, but I really learned programming by going the PHP route, and onwards to Perl and Java. But the first thing I learned was HTML&#x2F;CSS. If I could choose again, I&#x27;d go JavaScript first, and perhaps Python - another lovely language.
评论 #16018333 未加载
bikitanover 7 years ago
&gt; My class had a couple of kids who already knew how to program and were making good money doing programming competitions on topcoder<p>&gt; High school (1996 - 2000)<p>This does&#x27;t seem right. What sorts of competitive programming sites were around that early?
评论 #16020742 未加载
sdwqerover 7 years ago
<a href="https:&#x2F;&#x2F;i.imgur.com&#x2F;vBhtqtE.png" rel="nofollow">https:&#x2F;&#x2F;i.imgur.com&#x2F;vBhtqtE.png</a> [2]<p>next step - CSS for dummies, because this is awful[1]<p>[1] <a href="https:&#x2F;&#x2F;i.imgur.com&#x2F;vBhtqtE.png" rel="nofollow">https:&#x2F;&#x2F;i.imgur.com&#x2F;vBhtqtE.png</a><p>[2] <a href="https:&#x2F;&#x2F;i.imgur.com&#x2F;vBhtqtE.png" rel="nofollow">https:&#x2F;&#x2F;i.imgur.com&#x2F;vBhtqtE.png</a>
xchipover 7 years ago
What is your github account? I am curious to see some of your code.
chefandyover 7 years ago
Ironically, my high school expelled me for truancy. My guidance counselor, in what I think was a hamfisted attempt to scare me straight, told me that I&#x27;d never get into college without As and Bs, so I took her word for it. Why study, or taking the SATs if my existing marks would keep me out of good 4-year colleges anyway? I had two years of terrible grades behind me, I was quickly moving up in the ranks in a food service job anyway, and I wasn&#x27;t planning on going into the military, so what was the point?<p>During school hours, I&#x27;d just sit in the computer lab learning Photoshop 2.0, HTML, and the new cutting edge thing called CSS. I&#x27;d have loved to take one of the BASIC classes because I had already worked with it a bit on my TRS-80, but they were only offered to kids who had taken AP Algebra 2. One pleasant spring day I was coming back onto campus after smoking a butt across the street, and the vice principal told me I wasn&#x27;t allowed back onto school property because I was no longer a student. After a few months of just working, I went back and finished high school in a part-time night school program while working full time. Oddly, I&#x27;ve always thought of this as a somewhat pleasant time in my life despite my negative feelings about high school in general.<p>A year or two after graduation, around 2000, I took a few classes in a UNIX undergrad certificate course at Northeastern. Not only did I ace the classes, but I ended up teaching my classmates more than the instructor did in the Linux class. (That was way less cool than it sounds though; he recommended everybody drop the course and ask for a full refund because he was under-qualified and knew it.) Also, the second-level C class teacher— a hardcore windows guy— emailed me asking questions about developing in a Linux environment for a few months after the class ended.<p>It was a confidence boost which SHOULD have pushed me towards college, but I still assumed that no 4-year college would have me, and the thought of essentially trudging through two more years of high school in the form of community college was... unpalatable. I stopped taking classes before I finished the certificate because they didn&#x27;t offer me anything I couldn&#x27;t learn on my own— even if I did enjoy learning little-unexpected things like C-shell scripting, and advanced awk— and it wasn&#x27;t going to lead to a real degree. I was much more interested in working in bars and living in shitty apartments with a million roommates with only discount pizza and malt liquor for sustenance. (wait, maybe I did go to college...)<p>I was lucky enough to get a $10&#x2F;hr job as a university library IT assistant where the systems administrator gave me a bit of flexibility with what I worked on, a bit of leeway for solving those problems, all of the tech books I wanted, and all of the scrap hardware I could muster up. I ended up learning how to use Perl, first as a systems language and then for CGI programming, honed my shell scripting skills, built a few slightly more involved internal web applications using PHP, learned how bigger networks worked, good IT practices, and lots of other cool stuff. From there I bounced around to a few higher-level support type jobs and then got my first regular software development job after that. Since then, I&#x27;ve tackled problems with increasing complexity and managed a few projects.<p>Though the more &#x27;vocational&#x27; path I took to coding instilled some good practices and a rock-solid work ethic, I feel like there&#x27;s a bit of whiteboard swag that people who took a math-first, comp-sci-heavy path to coding have that I lack. As the level of complexity with my work projects increases, I sometimes struggle because I picked up a lot of the math and comp-sci knowledge magpie style without having the solid theoretical foundation to tie it all together. I thought learning a programming language without a real-world problem to solve, and no real deadlines was a slog; doing that with things like discrete math is much worse. (though I do think it&#x27;s super neat.)<p>It&#x27;s pretty funny that the primary difference between me and him is that I believed a guidance counselor who told me it was impossible. Approaching 40, I realize how full of shit she was.
评论 #16013957 未加载
fiatjafover 7 years ago
You may think this website is old-fashioned, but it uses FLEXBOX when it should be using table layouts.