Live data from Hacker News

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

news.ycombinator.com

41–50 of 76 posts

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

#41
I don't really know how many users I have, so I don't know how "meaningful" my projects are, but I have found some of them posted on French, Chinese, Greek, Russian blogs etc., so hopefully they fill some people's needs besides my own.

https://github.com/spieglt/flyingcarpet

https://cloaker.mobi

https://github.com/spieglt/cloaker

https://github.com/spieglt/whatfiles

https://github.com/spieglt/winage

I learned to program because I was frustrated that after working in IT consulting for several years, I still had no idea how computers worked. I started with "Learn Python the Hard Way" and "Automate the Boring Stuff with Python". Then got a job doing some Windows consulting stuff, and they said they'd hire me as a software engineer if I learned Go, which was a pretty easy step from Python. I'd tried to learn programming as a kid several times and always found it too frustrating. I started working on side projects as a way to learn new languages, improve my resume, and scratch my own itches. The hardest part was coming up with ideas for useful/worthwhile projects. I was super frustrated one day that the easiest way to get a file between two machines that were right beside each other was sending them out to the internet via Google Drive or Dropbox, which made me want to write "cross-platform AirDrop", which became Flying Carpet. If you find yourself wanting a simple piece of software that seems like it should already exist, that's a great project idea.

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

#42
I learned out of necessity. At the time in the late 90s and early 00s, Sourceforge was big (It was Github of the time). There were multiple projects that I used and wanted to make modifications to, so I learned the languages that they were implemented in to do that. Over the years, those changes became less minor.

Eventually I started hosting a spinoff of Livejournal (LJ was/is? open source), and my users were asking for private messaging, so I added it by learning Perl. It was a great experience.

I mostly made sure that I was having fun and scratched my own itch.

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

#43

Earlier quoted context omitted.

By the way, "Export to CSV" is the most meaningful feature you can add to any project, regardless of purpose.

I've found JSON is extremely useful in command line tools, but with CSV people try to handwrite parsers for it that can't handle commas in fields.

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.

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

#44
I'm self-taught. I learned to program making flash games.

I started making meaningful software because there was a bug I wanted to fix.

I continued making meaningful software because someone sent me a hamper of chocolates a couple of years back.

I continue making meaningful software for many reasons, but primarily: I'm altruistic by nature. I talk and I listen to problems.

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

#45

With so many people laughing at the infamous top comment of the Dropbox HN launch[1], I got obsess with the idea one day we would be able to generate Dropbox like UI for any protocol like FTP by implementing this simple interface: ``` interface IBackend { ls(path) []file cat(path) stream save(path, stream) rm(path) mv(from, to) mkdir(path) } ``` So I open source my work [2] as a result of that thought experiment. Alm…

By my extremely crude understanding, isn't that basically what the FUSE filesystem interface does?

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

#46
I’m a full stack (web and mobile) engineer. When I was on product teams building the actual app experiences, I was so much happier and fully engaged. I thrive from customer feedback calls and working with product manager to build the best solution for the problem at hand. Probably built a dozen calendars and complex grid layouts, tested a few different cart/checkout flows, and improved performance for a tool by rethinking the way it was stored in the database that made it way more flexible for other purposes.

Now I work on purely backend, mostly services for other services, infra stuff, and it’s honestly so boring and dull. I know it’s important work as well, but it’s just not my cup of tea.

Unfortunately it seems that building products doesn’t pay as well as doing this purely backend plumbing. And I want to work on products which people out in the fields or in some specific industry use to do their jobs better. When I was doing this, I felt like I was actually making peoples work experience (and probably sanity) better.

Anyway I am a self taught and I just learned using YouTube videos, official docs/readme, looking at peoples code on GitHub, and also building out my own silly ideas. Probably have a hundred directories of half+ baked projects.

Feel free to reply if you work on an interesting product (please no dashboards for monitoring cloud systems :sob: lol) and looking for a guy who loves to build great app experience. Also down to discuss ideas!

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

#47
I started out coding on the side when I was a teen. Mostly just building native GUI applications in VB and Java, maybe some scripts here and there. I think it was a cool start because we could easily do stuff that worked...things like chat clients over our school LAN, scripts which would pull data/files from somewhere, and send them to the people.

Then I studied at University, where I got a more fundamental grasp of how things worked. My first job revolved around industrial automation and such.

These days I work in data science / engineering, and I write a lot of "useful" stuff for automating various tasks. It was really fun to automate stuff which freed up around 1000 manhours a week - not really impressive on the mega scale that many FAANG engineers work on, but when the company has xx people working on menial stuff which can be automated, you really do feel a sense of accomplishment.

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

#48

An important lesson I learned is that meaning and complexity are rarely linked. The most profitable code I wrote for a company took under a week and truthfully any mid-tier web developer could have done it. The code with the largest reach (millions upon millions of people) was an afternoon script. I’ve lately come up with a term for meaningful code: Friday Features. Little things you do on a Friday afternoon that hav…

I can vouch for this. Major project that took months of my time and effort? Seemingly little impact; sometimes I question where it was just management trying to keep me busy. Minor feature added to a tool as a side project? Seems like every damn person in the company, and all of our customers, use it on a daily basis. Funny how these things work out.

I have a very minor example of something similar myself:

A quick 1-liner Stack Overflow answer that addresses a common typo is my highest rated answer. Those that I spent hours (or maybe even days!) answering: almost nothing.

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

#49

Earlier quoted context omitted.

I've found JSON is extremely useful in command line tools, but with CSV people try to handwrite parsers for it that can't handle commas in fields.

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/

Post reply on HN