2,568 karma · joined September 26, 2011
Only later might they care about what server they are on, but that's a great place to start.
Edit, I suspect what I wanted was the "after delay" setting here https://zed.dev/docs/configuring-zed#autosave
I feel like this is more a commentary on the "needy" folks.
No one goes into a soup kitchen and expects to get their favorite meal, but I guess these folks were expecting the vegans to give up their beliefs and cook them hamburgers.
That the author would consider them public intellectuals is fascinating and speaks to their worldview and media consumption habits.
After all that, I think the concept of a ubiquitous language is excellent. Everyone should standardize on a common set of vocabulary. We even took it so far as to have a dictionary of our business domain terms. It's so obvious in hindsight that it seems completely foolish to do anything else.
The rest of the book is basically just one guy's preferred way to organize a CRUD codebase. You can use his preferred terms (entities, repositories, value objects) and put things in the "right places" based on how he really liked to organize the codebase on this one job he did. After trying sincerely to follow this book for five years, I now think this has very little value. I don't particularly care what he thinks is the difference a service and a repository. When we had a need that wasn't obvious from the book, we'd sit in on countless meetings of people arguing the definitions while quoting the DDD book like it's a sacred text. Endless bike shedding about one guy's favorite way to organize a CRUD app isn't a high value use of a team's time. Neither is spending weeks renaming and moving everything to match the perfect terms.
We bought into the idea that if we followed this guy's favorite organization, everything would be better. It wasn't. We spent a huge amount of time reorganizing 1.5 million lines of c#. I don't think we ever even gained a week back of that time. It was a huge waste of time for what? To feel good that we were following some book? We didn't reduce or remove any bugs. We didn't find it magically easier to add new domain logic, if anything it was harder because we had to debate every feature to ensure it was designed "correctly" according to the will of Eric Evans.
For example, look at this snippet from the article
> "Objects outside the aggregate are allowed to hold references to the root but not to any other object of the aggregate. The aggregate root checks the consistency of changes in the aggregate."
Imagine trying to read an entire book filled with this kind of language. Lots of new terms, special rules, and vague reasoning. It's perfect for creating an environment of religious debate.
Today I think that books (Riting Software is another) that just prescribe an organization are a waste of time. They promise benefits for just using new special terms and putting logic in the "right place" but then don't deliver. It's just one dude's preferred names for things, not a magic recipe.
A better option for learning architecture in my experience is books like "Structure and Interpretation of Computer Programs" that teach excellent fundamentals. Data structures, algorithms, functions, state lifecycles, asynchronous code, dynamic code generation, and DSLs are far more valuable and people rarely give them enough time. Once I got very comfortable with those fundamentals did architecture appear to me as just the same concepts repeated at a larger scale. Drilling fundamentals was highly valuable, and I wished I'd spent more time on those early instead of reading books about DDD.
Many modern activities will put someone in close proximity to lots of strangers. Airports, public transit, busy streets, college parties, even big grocery stores all have lots of strangers. A person who doesn't want to be surrounded by strangers is probably feeling an ancient survival instinct. Now, if that feeling prevents them from visiting family, living a happy life, or accomplishing their goals, it's a problem. But I don't think feeling uneasy in a location filled with strangers is inherently unhealthy.
Likewise introversion isn't a bad thing. Some people would just prefer to be alone, and that's okay. Maybe it's a muscle they could strengthen, but I've known enough introverted folks who constantly practice social skills but never increase their inbuilt number of "social hours". They love people, love entertaining and meeting people, but as soon as that number is hit they go off into their room and don't come out for a few days. I don't think this is an issue, they've got a fixed amount of social energy and that's that.
You can choose to work from a co-working space, coffeeshops, libraries, or just stay at home. But instead of getting home exhausted at 6-7pm needing to cook, clean, chores, etc, you can get that stuff done during your lunch break and then pop around to a friend's house by 5:05pm.
It's so much better I can't imagine going back to an office where I'm sitting alone and sad in a cube all day trying to focus while people yammer on the phone right next to me.
Also plumbing and a bidet! No catholes, no rashes, no norovirus! I wake up every day with gratitude in my heart for this abundance.
Bad food and shoddy material goods are practically free for a middle class person. It's easy to visit a big box store and get cheap, mass produced garbage. Food filled with preservatives, added sugar, and salt. Sawdust furniture that will barely stand up after assembly.
Now so many people are getting into gardening, woodworking, and fitness. There's so much value in working with our hands after a day filled with zoom meetings.
I decided to actively train my focus in my early twenties. Over time I got better and better at it. I require a few prerequisites: well rested, recently exercised, not too hungry, have no meetings coming up, and keep my phone away. I'm able to engage my hyperfocus at will. Most days it lasts for 4-6 hours straight. I am able to engage it at least once a day.
This took many years to build up. It's fragile - easily prevented by distractions. But with the right set and setting, once it engages it's an incredible tool. I've accomplished things in 4-6 hours that would normally take me weeks.
I wish I could get the benefit with meds, but here we are. Maybe what I've built is the generic crappy equivalent, but it's all I've got and I'm proud I've gotten it this far.
For how I trained it, I started programming on the train ride home. I worked through low stakes programming puzzles from SICP. I found it worked best if I sprinted to the train station and ate something an hour before departure. I would open my laptop and just try to engage the hyperfocus. Many days I couldn't: people talking, train noises, being hungry, etc. Over time though I got better and better at it. Eventually I would be engaging as the laptop screen was opening. To this day ten years later opening a laptop screen engages the hyperfocus if all the rest of the requirements are met. Over a year I finished SICP, doing about one exercise a day. I then picked up another book of homework problems, then another, and another. Over a few years the skill strengthened, I found I could hold it for the drive home from the train station and keep going after.
It's harder at a desk, often I'll burn an hour or two before I can make it click. But once it does I can hold it even when getting up to go get food or going for a walk. I've gone to a cafeteria with coworkers or driven home while still in a "work trance" that picks right back up when I log in again. It's very strange being in hyperfocus on a programming puzzle while talking to someone over food. I can release it, but then I might not be able to engage it again that day so I often leave it running. Rude to my coworkers at lunch, perhaps, but I gotta make money somehow and this is how I do it.
I credit a large amount of my success to this tool. It's fantastic for just getting epic amounts of work done. I can spend hours tracing down a detailed bug, or building out a whole new module. In this trance state reading code feels as natural as reading English. Big transformations make perfect sense in ways I cannot describe outside the effect.
I've used it to write two books, build my own business, and make a living.
There's so many ways to volunteer, always another way to help if you need a change. I got into fire fighting last year, and now help with ambulance volunteering. I also do free job skills tutoring, that's a fun way to interact with people directly.
A family of rabbits without enough quiet, food, shelter, etc will have hardly any babies. The mother will also eat any babies.
I used to teach public middle school, and I developed a profound belief that how we educate students is entirely backwards.
The things that make an off year effective scales to an entire K-12 program! See the free democratic schools like https://en.m.wikipedia.org/wiki/Sudbury_school I believe the majority of students would thrive in such a school, if they had the chance.
They have no formal classes, no teachers, no tests. Yet students still learn to read earlier, they read more and at a higher level. They graduate from college at higher rates, and have higher rates of entrepreneurship. I believe this model is a superior pedagogical model for the majority of the population.
"The Sudbury pedagogical philosophy may be summarized as the following: Learning is a natural by-product of all human activity. Learning is self-initiated and self-motivated.
The educational model states that there are many ways to learn and that learning is a process someone does, not a process that is done to him or her; According to the model the presence and guidance of a teacher is not necessary. "
Check out:
https://en.m.wikipedia.org/wiki/List_of_Sudbury_schools
https://www.phillyfreeschool.org/why-it-works
The problem is we are stuck with our current model - even when alternatives have better outcomes, parents just say "well my kid would not do well with that, they are too lazy to even do what we ask." They do not realize that our current model is so broken that disinterest in a student is a perfectly rational response.
For example, I think video game addiction is a natural response to being forced to do something you hate 8-12 hours a day. The fact that the Philly Free School has very few students ever even playing video games at all (but they are allowed to all day if they want) paints a very clear picture that video games are a symptom not a cause.
And finally, a damning indictment of our current model; https://cantrip.org/gatto.html
They had unimaginable grit and determination. Truly a remarkable tale.
I felt their vigor warm my bones, add strength to my legs. These are true stories of what is possible on the ragged edge of human survival. What can be overcome by sheer will. Our species has depths beyond our current understanding.
We can endure.