5 ms·
This week I’ve both been playing Factorio, and writing code for a new application. So, lots of figuring out interfaces, architecture and modularity, and how thi
by avalys 6y ago
This week I’ve both been playing Factorio, and writing code for a new application. So, lots of figuring out interfaces, architecture and modularity, and how things will work together.
When I change from one of these activities to the other, I have the distinct mental impression that I’m not switching activities at all. When I switch from Factorio to my text editor, it’s such a seamless transition, as if I’m just scrolling to another part of my factory.
Not a sensation I’ve had with any other game, or any other pair of distinct activities, really.
I figure it must mean Factorio makes me a better coder. I better get back to it, then!
- AtomicPlayboy 6y agoI also would replace the Teamwork part of the article with achieving Modularity and Information Hiding. Sounds like a game Jeff Bezos would have fun playing if it was about setting up a distribution center. Or rather, ordering production of the game and letting players figure out how he could improve its logistics.
- toomuchtodo 6y agoAre we far off from Factorio ending up on a CompSci class syllabus and being an educational expense? :)
- xmprt 6y agoI see a world where it's used to introduce slightly older students to programming (like 7th grade+) just like Minecraft is used in some classrooms right now.
- Shorn 6y agoThis is one of the reasons I don't play Factorio, or games like it. The point of playing games for me is escapism and rest/recuperation. I feel like I only have so much programming time in me - I think playing these types of games makes me less likely to do some real work. Plus the "achievement high" is much less; at the end of the day, when you win/do well - you know you're supposed to feel that way, the game was designed for you to win. I like to sometimes just browse around in my side-project's UI or even codebase and appreciate what I built. Of course, you have to be in the right mind-frame for that. You don't want to go looking for your achievement high and end up thinking "Wow, all that effort and this is all you have to show for it?"
- taneq 6y agoYeah, that’s what always stops me from playing these. It’s fun at first (like any new project) but then I realise I could be doing exactly the same work and getting paid for it. Which I guess makes me super lucky in the “I get paid to play video games” sense.
- avalys 6y agoI tend to agree with you - but actually I love programming itself and I could do it all day without getting tired. The things that tire me out about work are poor documentation, inconsistent requirements, team politics, other people’s mistakes, compiler errors, version conflicts, the stress of having to deliver by a deadline or having other people depend on me, etc. Factorio has none of that, it’s just a constant stream of positive mental stimulation.
- Shorn 6y agoI guess there's a few parts to it, for me. There's "the itch" - the desire to program, to build something. Which I do find coding-style games tend to satisfy (so there's the fear I will have lessened motivation to work on my side project). Then there's the "focus" side - I still love programming (and consider myself blessed for that). By "only have so much programming in me" I meant more "I have a limited ability to deeply focus within a given day/week". So I don't want to be thinking too hard when I game - I want to lose myself in the flow specifically without having to concentrate too hard (I find books/movies and playing hockey are great for this too). Please note, I'm not arguing with anyone here - I guess I'm just talking out loud. It's not my intention to denigrate Factorio-style games in any way.
- crazysim 6y agoThat’s not true. It can if you go play on some servers! Different strokes for different people of course.
- asddubs 6y agoI definitely found this with minecraft - building stuff there scratches the same itch as programming, so I mostly stopped doing it, since I'd rather make useful things than some random build in a world only I am ever going to see
- pm90 6y agoIt is a fun world where programmer-like thinking is rewarded and is a lot more visual. I’m not sure if it helps me be a better programmer but it solves an itch I have as a maker to design/build complex machinery that works together. The rails systems are particularly interesting to design and build. However, once I launched my first rocket, the desire to play the game dropped and I’m playing other games now. But for a few weeks, I was so engrossed in the game that I even thought about design optimizations in my dreams. I don’t think any video game had me this involved before. I hope they build on top of it to create more interesting mechanics.
- avalys 6y agoOnce you’ve launched the rocket, the real fun comes - try to get to one rocket per minute. :)
- eric-hu 6y agoOnce I launched my first rocket, I figured I’d try to aim for 100 Science Per Minute (spm) to see what the fuss was about in the community. That turned out to be a big and rewarding challenge. I still had a spaghetti base by the end, but it was far more orderly than what I had started with. It also forced me to learn game concepts deeper to hit that scale. Nuclear power production and coherent train system design each took me some time, but the result was well worth it.
- hansbo 6y agoI had a similar experience. For the month or so I was hooked, I felt attached in a way I haven't felt to a video game since I was a teenager. It almost felt sad when my interest dropped, like I lost something valuable.
- kortex 6y agoThis is where I disagree with the article. Factorio has absolutely made me a better dev. - Learning to more heavily prototype, bootstrap, and rewrite, rather than refactor. - learning to "just ship it" and get by with "ugly" operations that work well enough - learning to balance the two often-contradictory points above
- roguas 6y agoYou need to define rewrite and refactor. Extensive refactoring is rewriting. Analogy is not really great since most of the time in Factorio you will be refactoring by rewriting pieces of your factory. But the balance is a good metaphor. After some time you will start your factories with at least some semi-bus, rather than just one belt for raw materials etc. but trying to start with final architecture from day 0 is probably a very bad choice.
- pkkim 6y agoNice subtle brag that you're able to both play Factorio and do other productive activity in the same week.