Live data from Hacker News

Ask HN: HN people who write meaningful software, how did you learn to program?

news.ycombinator.com

51–60 of 76 posts

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#51
I became interested in computers through games, and was fascinated the first time I saw one play video (1993-ish?) That grew into an interest in controlling them, with programming being the natural route. I got a book of BASIC code when I was about 11, and ended up being able to take some programming classes at about 14. College for Computer Science meant some intro programming classes, and I started taking part in programming competitions.

After graduating, my first software that had much meaning to me was "KhedNes", an NES emulator that I worked on, on and off, from about 2008-2014. Professionally, I worked on a piece of backup software that had 10s of thousands of companies as customers at its peak. That was definitely a neat thing to think about.

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#52
I learned to program because I needed to get things done.

First I wrote a tool to check a bunch of coupon codes on a website, then I taught myself to code to hack a friend who tried to hack me. Eventually it turned into writing tools to hack websites and then it turned into making them. Then it turned into entrepreneurship, contracting and now bootstrapping small projects which collectively make a good amount of money.

The key skill to effect change in the world (and reap the benefits) is not programming, it's learning to think in terms of product and use software as a way to deliver value.

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#53

Earlier quoted context omitted.

> Story for another day. Story for today, please?

Well...here goes. Mom used to have an AOL buddy she always talked to. Di57 was her screen name, and what she called her when talking to us about her. They were about the same age, both married, had kids, etc, so a lot in common. They'd talked for at least a couple years, I guess. One day the lady asked her if I could write something to see what her family was chatting about... in the guise of 'protecting my family' a…

Wild. Thanks for sharing.

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#54
My dad was a mechanical engineer. One of my first memories is playing Hunt the Wumpus on a SYM-1 with him. Later, we had a Commodore VIC-20, Commodore 64, etc. I taught myself BASIC. It was really cool to be able to create so easily. Just turn the computer on, and start typing.

Then I got a job writing BASIC around the time I was in high school, and by the time I went to college, I was lucky, knew what I wanted to do, and got accepted into the Computer Science program as a freshman.

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#55

Earlier quoted context omitted.

1. Most people are using tools 2. CSV parsers are easy to write I know I know, someone once said it was hard, everyone else wanted to be smart and started reporting it. What CSV is, is ambiguous. But if you're ingesting CSV generated by the export function of a tool, that's not ambiguous.

It seems like, at least, converting a flat JSON record to CSV (or vise-versa) should be a one-liner in lots of cases. Usually I want CSV, it is because I'm playing around with data on the command line and doing grep/cut/and so on. If I has something that output json... that miller tool is supposed to be good for this sort of stuff I think. https://miller.readthedocs.io/en/latest/

Usually I use jq (https://stedolan.github.io/jq/) though I think it has a newer fork now.

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#56
I've been trying to program computers since I first got my hands on one. Once, when the family PC broke, it came back from the repair shop with a christmas card having been pulled from deep inside the floppy drive, because I was playing at operating it. I was probably 5. I made my first web page in the mid-nineties as a pre-teen. Eventually I got a BS in Computer Science, did lots of full-stack development and went on to manage Infrastructure teams first for Yelp and then for Uber. I wrote key pieces of software at both companies, used to manage probably petabytes of data and provide core functionality to tens - hundreds? - of millions of people. And I managed teams that took that even further.

But my earlier forays - writing macro bots on AOL and messing with the eggdrop source code on IRC - were just as meaningful; they hold the same place in my heart, even if they didn't have the same commercial success.

For me, my love of programming has never been about the value delivered. I've never really cared, in my heart, about how meaningful the product was (which is not to say I didn't make career decisions to optimize for that).

There are three things that have always driven me.

The first is an appreciation for the aesthetic elegance of a finely written program. A good source file is like a poem to me; even the paragraphing is part of the code, and I take great pride in crafting it. I never learned to draw or sculpt, but I poured a lot of what I think is a similar energy into my code.

The second is a sort of visceral awe for the speed with which a computer can do something, once I've given it sufficiently elegant instructions. I remember downloading the complete works of Shakespeare off Project Gutenberg in university, and feeding it into a word count program I had written for an intro programming class, and it spat out an answer in less than half a second. Every single word written by the greatest artist of the English language, boiled down to an integer in less than the time it takes a clock to tick. If I hadn't already been sold, that moment would've done it. What power!

And then lastly, I've always appreciated that outside of academia, programming is just a tool to accomplish some other task. I've worked in multiple industries that I wouldn't have known anything about otherwise, because I am skilled operator of a very versatile tool. I have my craft, and I get to apply to a myriad of problems, and that has helped me to build my "ocean" of knowledge an inch deep, which is a source of joy for me.

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#57
In 1990 I was programme director of a radio station and had an ongoing requirement that only software could efficiently deliver. There was no suitable app available and I had neither the budget nor management permission to pay for it to be written. In the end I said "How hard can this be?", took home a (very primitive) laptop with DOS and GB-BASIC on it, and taught myself to code.

With the lessons I learnt from that I bought a c compiler and kept learning. Six years later I left the radio industry to work full time as a developer.

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#58

Earlier quoted context omitted.

> Story for another day. Story for today, please?

Well...here goes. Mom used to have an AOL buddy she always talked to. Di57 was her screen name, and what she called her when talking to us about her. They were about the same age, both married, had kids, etc, so a lot in common. They'd talked for at least a couple years, I guess. One day the lady asked her if I could write something to see what her family was chatting about... in the guise of 'protecting my family' a…

https://magnesiumandhealth.com/murder-by-methanol/

Re: Ask HN: HN people who write meaningful software, how did you learn to program?

#59
I tried many times to learn programming in the internet (Coursera, Udemy, YouTube, CodeAcademy, etc) and I was never successful. I always managed to get a few lessons and things strat getting complicated and I drop.

Two year ago, a family member, who have a very small charity institution, and all the income/outcome was written up in a notebook, ask me if I can digitalize the accounting. The simple solution was a Excel sheet and done, but this person is very bad with technology, so I was afraid that he would move something in the excel and everything would be messed up. So I build with Google sheets, google sites and Google forms a very simple web application to record incomes and outcomes. Once I did that I start working with Google App Script in order to automatically send emails with invoices and reminders.

At the beginning I didn't had a clue of what I was doing, just copy and paste code from the internet into Google App Script, and following YouTube videos step by step. (Google app Script is a cloud environment where you can run JavaScript code and connect to Google products via API) With a few experiments I start understanding what's going on.

I was very satisfied with the result and start looking for other things to do and automate.

With the time I start involving html and JavaScript client side code.

I became pretty good in those things, and all my learning was basically looking in W3 school and stack overflow every time that I needed to do something new.

I did a few web applications like this.

When one of my friends ask me if I can help him with some automation and was willing to pay 500usd for something that took me an hour, that rang my bells and I realized that I have something with great potential in hands.

To make long story short, eventually I quit my job and start making custom software for small companies.

Today I have about 10 softwares that my customers use an daily basis and overall they are pretty happy with my work.

The big lesson that I learned: it's very hard to learn something new if you don't have a clear purpose for it's application, and for that reason it was always very difficult for me to learn how to code, until I needed to solve specific problems. (Or the other way to learn is to be in the right environment (collage) where the specific goal is to not leg behind)

Post reply on HN