One idea that I've entertained is that they are terrestrial biological entities, like maybe a blue whale or giant squid but more rare and possibly of a shadow biome.
Generally (and I'm not sure if these are really mental models, but often are in my head as a code, and I would imagine are quite obvious to any developer above entry level): Red Green Refactor, YAGNI, Dry, SOLID, and IoC.
When it comes to choosing design patterns I usually lean towards KISS, and prefer less code.
Cyclomatic Complexity is the enemy of maintainable software and naturally arises when users request new features and grows exponentially with the number of users and/or developers. Because of that I do prefer Cowboy Coding - it handles one side of that count. Reflexively I'll argue with new requests and try and predict what else can go wrong or what unintended outcomes will be that will lead to more user requests or complexity. One pattern I often use in my head is to imagine software as biological systems, evolving ecosystems in tandem with users. There's a sort of evolutionary arms race between growing user stories, making the business money, and Conway's law. I try and stick to the 80/20 rule as often as I can when refactoring and making changes and often consider the biological paradigm Structure/Function when designing. I consider it a win when the system is either less technically complicated or the use case is simpler (less steps for a users workow) after I've touched it between releases.
I'm reminded of the stereotypical personality alignment matrix common to role playing games, with lawful and chatic matched to good and evil. Each of to need to strive to sit in the middle, true neutral. In this position one can recognize echo chambers are all around us and one must hop from to the another to gain understanding and sympathy. This would be easy if we mandated the teaching of cognitive and logical fallacies. However, I fear that the powers that be (wealthy, political leaders, and attention grabbing algorithms) intentionally use these against us. Sophistry has long been a weapon of politicians against the plebs and each other. I am at loss on how all of us can transition to a more enlightened state, a state where we don't build walls between us, but recognise the selfishishness and primal fears that lead us against each other. We all suffer from cognitive limitations and fallacies and none of us really know what is the 'correct' opinion on anything. I think if we can agree we all share the same limited stupidity that's the right step go forward.
Great answer. I did want to highlight the selling of ads as I believe this is the primary and largest reason behind influencing less informed masses to take unwarranted actions in a harmful 'us vs them' way. Engineered (human or otherwise) attention/action getting ads have given us clickbait, raigebait, and cross-sectional identity politics. I believe that without regulation on the beancounting ad algorithms that fight for attention this will continue and we will have even more extreme "us vs them" attitudes and fallouts in the future. How that is done, I have no idea, but cancel culture seems inherently wrong to me. Perhaps educational reform is the place to start and should focus on helping people be both open-minded and skeptical in their openminded-ness ie, switching from 'i'm right, they are wrong' to 'no one is right'. and from there, humbly rejecting objectively(scientifically) proven falsehoods and seeking to understand the fallacies we all fall victim to https://en.wikipedia.org/wiki/List_of_fallacies
I've recently forced myself into this habit. Having demanding clients, and being a conscientious person, I've enable them to demand more, faster. This started eating up my morning hours and had really blurred the line in separating my work life from my home life. Taking ownership of my time, I've reclaimed stressful mornings into relaxing, reading, meditating, and spending more time with my wife and kids. The clients still scream for stuff, but it can wait. Some things are just too important. I like the mantra here to pay yourself first because if you don't you'll be paying someone else. Thanks for sharing.
Thank you for sharing. This answer is perfect: I also dislike the look of diy. I recently started making my own whiteboards and while they are cheap for the sq. ft. they just have a country look. I have peers that make flashlights and nixie tube clocks for fun, but never really thought about selling them probably for the same reason. Having a crafting hobby able to pay for the tools and provide side income is ideal, your product and presentation look professional and fantastic.
I knew this would be an entrepreneur blog. I'm so sick of these paranoid scheme financial guys teaching at an abstract level. Sure I get the guy selling a shovel during the gold rush makes the money, but these bloggers aren't selling shovels they are selling shovel porn.
Research inductive reasoning. But beware, ideologies gained from abstraction are seductive in their simplicity and can utterly fail to handle complexities of real life. Super Thinking, by Gabriel Weinberg and Lauren McCann is a fantastic read on using abstractions as mental models.
I have recently had the pleasure of discovering a few of these people on Joe Rogan's podcast. His three hour interview format alots enough time to dive deep enough into some of these ideas to realize they transcend left vs right and address some fundamentals about who we are as a human race and what our natural and written histories can tell us about our current times and the dangerous implications of identity politics. We, as a society, censor these people at our peril.
The biggest challenge in debunking that myth is non-tech cooperate positions above developers. Once a cowboy coder delivers results and gets noticed for fixing stuff quickly, it's all over. That person is hailed as a hero and he'll be the first pick for leading the "A-team" of devs to make 2.0 once they realize how buggy and resiliant the current system is to change. This repeats adnauseum in every company I've worked in. The only solution is to embrace a cultural change that's centered around professionalism in software and puts the developer at the top of the org chart.