TL;DR version of lessons from the post:
- Writing open source software can be very rewarding in ways you can’t predict
- Be in it for the long haul
- Ship it and ship regularly
- Have broad, open-ended goals
- If you care enough, you’ll find the time
- No one cares about your unit test coverage
- There’s no shame in marketing
- Clear it with your employer
- Foster community
- Keep it enjoyable
Source: https://www.reddit.com/r/Python/comments/smta85/lessons_learned_from_my_10_year_open_source/
Bank Python implementations are effectively proprietary forks of the entire Python ecosystem which are in use at many (but not all) of the biggest investment banks. Bank Python differs considerably from the common, or garden-variety Python that most people know and love (or hate).
I've said so far that a lot of data is stored in Barbara. Time to drop a bit of a bombshell: the source code is in Barbara too, not on disk. Remain composed. It's kept in a special Barbara ring called sourcecode.
it's possible to sit down, write a script and get it running in prod within the hour, which is a big deal.
Using simple Python functions, in a source controlled system, is a better middle ground than the modern-day equivalent of J2EE.
One thing I regret about software as a field is how little time is spent learning from existing systems and judging what they did well, or badly. There are only a small number of books discussing, in detail, real systems that exist.
- Culture: mutual trust, willingness to learn and continuous improvement, constant flow of information, open-mindedness to changes and experimentation
- Automation: deployment pipelines (CI/CD), comprehensive test automation
- Lean: minimize WIP state, shorten and amplify feedback loops, look for opportunities to remove waste, fix errors as they are discovered
- Measurement: monitoring, system metrics, KPIs
- Sharing: sharing knowledge & practices, including successes & failures, learn from each other's experiences, proactively communicate, shadowing & pairing on tasks
My highlights / quotes:
This creates an obvious congestion. Most people try to address it in the wrong way: using pragmatism. Let’s close the issue after two weeks of no original poster replies, after we ask some question. Close all the issues that are not very well specified. And other “inbox zero” solutions. The reality is that to process community feedbacks very well you have to take the time needed
So what happens? That you start to prioritize more and more what to look at and what not. And you feel you are a piece of shit at ignoring so many things and people, and also the contributor believes you don’t care about what others have to give you. It’s a complex situation.Sometimes I just stop looking at issues and PRs for weeks, because I’m coding or designing: that is the work I really love and enjoy. However this in turn creates ways more pressure on me, psychologically. To do what I love and I can do well I’ve to feel like shit.
the sum of the productivity of me working just when I want is greater than the productivity I’ve when I’m forced to work every day in a steady way.
Girl Underground propose de jouer les aventures d’une jeune fille perdue dans un monde fantastique à la manière d’Alice au Pays des merveilles, du Magicien d’Oz, de Labyrinth ou du Voyage de Chihiro !
De quoi retourner en enfance, explorer des mondes merveilleux peuplés de fée, de fantômes et de monstres étonnants tout en explorant en creux le monde des adultes et vivre un voyage initiatique.
Très intéressants avis sur ce jeu, qui me tente bien du coup !
I participated in this year's js13kGames, a JavaScript game development competition with a file size limit of 13kb, including code, assets and everything else. My entry was Underrun, a twin stick shooter using WebGL.
Very detailed and insightful post-mortem on the winning game of the js13kGames competition !
Reminds me of Fabien Sanglard game architetcure reviews, except it's from the author himself :)
I opted to render the player character as a sprite as well, even though it needs to be freely rotated. It was far easier to produce 8 different sprites – one for each direction – than to implement a loader and renderer for complex 3D models. [...] The game never needs to rotate any geometry. [...] To make the player character rotation look convincing I build a 3D model and simply took screenshots for each of the different perspectives. I'm a total doofus when it comes to 3D modeling software, but that doesn't stop me from using the ingenious Wings3D. The result doesn't look like much, but scaled down to 16px, it doesn't matter.