handmade.network » Forums » Thoughts on doing more good
Oliver Marsh
142 posts / 3 projects

A budding game developer and programmer

#21569 Thoughts on doing more good
2 weeks, 4 days ago Edited by Oliver Marsh on Sept. 5, 2019, 3:34 a.m.

Hi everyone,

I was just wanting to get some people's thoughts on something I've been thinking about. I like coding in C and like the handmade approach,. I've also been making a game in unity with a friend, which has been a great experience and have learnt alot. Even though I'd say I make games, I don't play alot of games these days and spend more time thinking about social issues like climate change, education, farming and things like that (and software). I guess I feel games aren't 'serious' enough when all these other things are happening, and I feel like I could be having a bigger impact. I believe games do have a flow on effect to all these other things, and got into games through Jon's approach to games, but sometimes question am I doing the best thing I could be doing. I know there are good examples of projects on the site like 4coder, odin, remedy deguuger and lots more that show how software can make an impact, and jons compiler project and Jon's games are examples as well. Probably answering my own question here, but what could I do to do 'greater good' through coding and what are other people's thoughts on it.
1 posts
#21570 Thoughts on doing more good
2 weeks, 4 days ago Edited by VROOM on Sept. 5, 2019, 7 a.m.

That's understandable. I've had that happen to me many times as well - I would get in a funk about the pointlessness of whatever I'm working on when compared with such large problems I read about on the news. It feels like struggling to make progress, only in the wrong direction.

Perhaps I'll be pointing out something obvious, but you seem to admire these projects, which means you think they have some value. Each of them takes on a problem that's not even very new, but that few people have put enough time into solving very well.
  • Handmade hero is a low level programming education programme. It's the sort of thing I wanted when I studied CS in university, but never got.
  • Jon is trying to create a language that bridges the expressiveness of "high-level" programming with the control of the low-level.
  • Jon's games explore what games can do as a medium. The core gameplay of Braid or The Witness is not something you can even do in other media.
  • 4coder strives to be a programmable editor that gives you the most direct way to program the editor to do what you want it to.

The people behind these projects saw a problem that is worth exploring, and they're dedicating time to work on it. I know this is going to sound cheesy, but pick something you'd really want a better version of and dedicate unreasonable amounts of time to fixing it. I think Casey even mentions this in one of the HMH episodes: The people at RAD weren't the first to work on compression, they're just about the only ones who have decided to dedicate decades to the problem.

Also note that none of the projects you listed are as big as climate change or education, and I don't know to what extent social issues like "climate change, education, farming" can be attacked head-on via software. I'd say, if you're set on tackling problems of that magnitude, read up on what tools/processes are used to solve these problems right now, see where the roadblocks are, and then figure out how to go around them. To pick climate change as an example, here's a list of basic questions I would want answers to before I even begin to consider doing anything about it:
  1. Is measurement a problem?:
    • How do climate scientists collect information about the current state of the climate?
    • How do climate scientists deal with collecting historic information? Is the historical data accurate, is it incomplete, do they have to correct the data in some way?
    • ...
  2. Is interpreting the data a problem?:
    • How is all the collected information used to model the climate and its changes?
    • What's the delta between the model and actual measurements?
    • What tests have been run on which models to make sure they are predicting the correct changes (are we looking at the right data points?)
    • What is the largest contributor to climate change according to the model and why?
    • ...
  3. Is forming an action plan from climate studies a problem?
    • Is the data reviewed by and presented to people who can act on it? Do they understand it? Are they affected by acting on it (Will they lose their jobs/go bankrupt)? What will happen to them if they ignore it?
    • Is there actually any response these people can formulate? (If we know the sun will explode next Wednesdoy, but have no means to stop it, we won't act on the information)
    • If there are ways to address climate change, what are the benefits, neutral side-effects (as far as we know), and costs of each action? Who pays for the implementation? (How do we prioritise actions)
  4. Is implementing a plan the problem?
    • Are there economic factors that don't allow for the implementation of the plan? (Maybe the long term effects of not implementing the plan are severe, but the short term cost of implementing the plan ends up being bad enough that we won't recover to enjoy the long term benefits)
    • Is there a (more or less) central authority that could implement the plan or is responsibility distributed among many parties? If not, what would it take for all parties to work together? Who would have to implement which part of the plan?
    • Are there technical hurdles that need time to be solved? (Suppose we know we need to reduce air travel or make electric planes, but the electric airplane technology is still to be perfected)

Mind you, I don't know the first thing about climate change, so don't take the questions above as an example of an intelligent inquiry into the subject. My point is that when dealing with such large issues (or even "smaller" problems like "How do we make it so programs don't have as many bugs?"), you'd do best to learn about the problem end to end. The more specific information you can glean, the better.

After doing an end to end survey of the problem, you can pick your place to start making a change. Maybe you think the data side needs help, maybe the models aren't as good as we need them to be, or the analysing the consequences of potential plans turns out to be a huge nightmare. Maybe there's some technological breakthrogh that is yet to be invented (or an existing one brought to mass production).

You can do this for any problem, but, obviously, larger problems take more study. Here, I ended up ordering my example questions like this:
  • Do we have correct information?
  • Are we drawing correct conclusions from the information? (Is our mental model correct?)
  • Can we do anything about it?
  • How and what would it take?

Which is too general, but a starting place nevertheless. Once you get some understanding of a problem, you'll usually have much better questions to ask.

tl;dr: Pick a problem you want and _need_ to have solved, study it, then dedicate unreasonable amounts of time to solving it.
Oliver Marsh
142 posts / 3 projects

A budding game developer and programmer

#21571 Thoughts on doing more good
2 weeks, 4 days ago

Thanks for your response vroom, there's lots to think about from it. I think you nailed it on the head, having a framework to think about these things will help immensely. The questions you posed will be informing where and what I want to spend my time doing. Thanks for taking the time out to answer it
85 posts
#21573 Thoughts on doing more good
2 weeks, 3 days ago

On the topic of climate change and software, I actually saw a tweet just a few days ago from a climate scientist in which he said that a program that could accurately convert PDFs into CSVs would be an incredibly valuable tool. Apparently there are thousands upon thousands of PDFs with data that would take far too long to manually convert into CSVs (I assume for generating graphs from), so using machine learning to accomplish this would be invaluable.

It piqued my interest because I started working on a PDF reader a little while back as a little side project, and I've also always intended on digging deeper into machine learning.

It's an interesting problem, and one way in which machine learning can be used for good as opposed to, you know.. spying and other forms of collecting data on people for shady ethical purposes.
2 posts
#21575 Thoughts on doing more good
2 weeks, 2 days ago

On climate change specifically, this article by Brett Victor is incredibly helpful for assessing which problems in climate change you think can actually make a difference in.
Oliver Marsh
142 posts / 3 projects

A budding game developer and programmer

#21576 Thoughts on doing more good
2 weeks, 2 days ago

Interesting to think about how software will help this big issues. Thanks everyone for answering, I've got a better idea on where to focus my efforts in the future, and how I can go about doing more good and feel like I'm doing my best.
Abner Coimbre
293 posts / 2 projects


#21577 Thoughts on doing more good
2 weeks, 1 day ago

On video games, how often do you watch YouTube videos on your favorite series from 20 years ago? My mind uncontrollably goes back to Ocarina of Time (and its sequel) whenever I struggle with responsibility, growth, and maturity. It's not classic literature, but it's a classic something. I often feel emboldened by my childhood experiences with the game.

On software dev in general, I wouldn't underestimate the indirect power of small tools, including the ones being developed here. Aren't they an important pipe of a pipeline that achieves something far greater? I don't know, though, feeling like a wrench forever may or may not be for us.

If you want to be a level above low-level infrastructure, please consider the problem of social networks. Outside of climate change and the automation of repetitive cognitive tasks, I'm certain this decade will be defined by the ramifications of a sudden, unfettered connection of humanity.

Started Handmade Network.
Oliver Marsh
142 posts / 3 projects

A budding game developer and programmer

#21578 Thoughts on doing more good
2 weeks, 1 day ago

That is something that I always fall back on, thinking about how much video games meant to me as a kid (i think most of my childhood was either playing, thinking about or talking to other people about ocarina of time 😜).

Part of my thinking about not taking responsibility etc. is me thinking about what other people think about how I spend my time. The whole 'what society thinks of my role in society', which isn't beneficial for anyone.

And I agree, i believe the biggest evolution is going to be through avenues which allow people to express and show other people who they are. And going deeper on what they're capable of, and overcoming limiting beliefs that we have about ourselves.

I think putting more trust in myself that I know the best thing to do, even if it doesn't line up with other peoples (like parents or 'society') is something im not super good at.
115 posts
#21579 Thoughts on doing more good
1 week, 5 days ago

I've had this same feeling as well. You just think to yourself, 'how is this really going to potentially help anyone besides me?'. But I think games have the greatest potential of any art form when it comes to effecting people. It's one of the only entertainment mediums where the audience is in direct control and this can have powerful implications, especially given the power of hardware now a days which is allowing games the push the boundaries further and further, creating completely immersive experiences (not to mention the enormous potential of VR in this respect). If you still feel like your not doing enough then maybe work on your story telling skills to really help your next game grab people emotionally in some way.
Oliver Marsh
142 posts / 3 projects

A budding game developer and programmer

#21583 Thoughts on doing more good
1 week, 4 days ago Edited by Oliver Marsh on Sept. 12, 2019, 6:04 a.m.

Storytelling is a big thing that has come up for me, and getting better at it would be great. As an adult I loved the story\emotion conveyed in the swapper, the witness and Talos principle. If anyone has any resources for story telling in games, I would really love that. I havent really connected to more movie style story games like uncharted series.

I'm pretty good at coming up with gameplay and exploring that gameplay, but then going on to bringing that into a story, and provide the emotion that will drive people to explore your game, I'm not very good at.
115 posts
#21587 Thoughts on doing more good
1 week, 3 days ago

Ya, I'm no story teller either but it is definitely something I think can make a big impact and I would like to be able to have that ability. I will say it seems, like you mentioned, a lot of games with the biggest production and heaviest emphasis on story don't really land for me, at least not in a really impactful way. I'm not really sure what the secret ingredient is but it is definitely something to research more in the game dev field. Maybe the closer to realism you get with something the more critical the brain becomes of what your watching, detaching you from the emotion. I will say though that god of war did actually grab me with it's father-son dynamic. I know they did the whole 'one-shot' camera thing so maybe that had something to do with making the story seem more personal.
15 posts
#21588 Thoughts on doing more good
1 week, 2 days ago

I don't have much to add, but I wanted to thank you Oliver for posting about this sort of murky subject. I'm encouraged to see that you and others are grappling with it as I am. Also, that Brett Victor article is quite a treasure trove.

In particular, I identified with the oscillation you described between feeling like you want to do material good in the world, and falling back on more creative/artistic pursuits inspired by childhood experiences. I feel like good art, including games, can make humanity more intelligent, and able to make better worldly decisions -- and yet, the higher we feel the worldly stakes are, especially with a ticking-clock issue like climate change, the more we feel that there isn't time for artistic pursuits, and we must do something practical, even if that means leaving our inner children in the cold.

I don't know what a good balance looks like, but I'm glad it isn't just me thinking about it!