I run llama.cpp with Qwen3-VL-8B-Instruct-Q4_K_S.gguf with mmproj-F16.gguf for OCR and translation. I also run llama.cpp with Qwen3-Embedding-0.6B-GGUF for embeddings. Drupal 11 with ai_provider_ollama and custom provider ai_provider_llama (heavily derived from ai_provider_ollama) with PostreSQL and pgvector.
People on site scan the documents and upload them for archival. The directory monitor looks for new files in the archive directories and once a new file is available, it is uploaded to Drupal. Once a new content is created in Drupal, Drupal triggers the translation and embedding process through llama.cpp. Qwen3-VL-8B is also used for chat and RAG. Client is familiar with Drupal and CMS in general and wanted to stay in a similar environment. If you are starting new I would recommend looking at docling.
My best friend is spending 100 days writing hand written letters of love to those who contributed to her life’s journey. There’s humanity and connectedness with writing that no other medium offers both the writer and the reader. Her writing has been received with such love, tears of joy, and mutual appreciation. This includes book authors that she’s found herself meaningfully influenced and inspired by. She’s half way through the project, and I’m sure she’d be happy to connect if you’d like any tips.
One big tip is make sure your hands are ready with the proper pen and hand exercises.
Focus less on those who helped you, and more on helping others.
The first time I went to Defcon, I felt lonely and lost -- it was the first year they had those cool electronic badges, and at the time they were only given out as entrance tokens for an exclusive party that was the talk of the con.
I didn't really "know" anyone there -- like a lot of young hackers, I was part of one of those vBulletin board hacker crews that have been lost to time and I'd exhausted the meager savings I had built up that summer on my plane ticket and hotel room at the Riviera.
A lot of people who had expense accounts were going out to nice places for dinner -- the guy with per diem would get drinks, the guy who had to itemize, and me, the guy trying to get a group together to visit that cool looking dive bar next to Bally's kept getting laughed at and called a newbie...
Then none other than Dan Kaminsky[1] strolls up, tells me he knows who I am (!) and heard I'd been asking about the ninja party, tells me he can't get me in but he knows a room party. Shows me a room next to the pool with a keg in the bathtub, I threw them a five and we sat around talking until late in the night. They had some good tips on cheap places to eat, how to get free drinks at the penny slots, that sort of thing.
And then, every year since that I visited, I did what he did... wander the convention looking for the budget travel crew, the folks who don't do it for a salary and whom this is their reality, and I'd take them on a quest for two dollar hot dogs, show them the little store next to the dive bar where they could stock up on beer and liquor and ice and then disappear into the night like some kind of helpful spirit of the hacker night.
Anyways... long, profuse thank yous are not needed. What you should do is make sure you keep the gates open that were not gatekept for you. Be the person who connects others, in ways that you can't always list on your CV.
for me i figured out it’s about the body. it’s ok to be lifted up from the body into the thinking mind but i “owe” my body to spend some time there as well.
sometimes all it takes is sitting 20min in the morning just observing sensations in my body, and saying good morning to various organs haha. sounds silly but creates a solid foundation for my day.
For the longest time I railed against the fact that I am mortal, and my time is finite. I wanted to squeeze everything I could into my days, and I would feel guilty about projects I didn’t get to. This is despite having a wife, kids, house, full time job.
Eventually I burned out on programming-based side projects. I switched to activities that do not require staring at a screen. So I build analog electronics, study music.
Then I had a heart attack. My mortality and the fragility of life was never more clear. I accepted that I could die, and let go of all the mental baggage I was holding onto.
I’ve felt ‘cured’ ever since. I don’t recommend anyone get a heart attack. But I do think people fall into patterns, and get stuck inside of them. Sometimes a “pattern interrupter” can break us out.
My current problem is that I feel like I’m only barely managing to not completely burn out via relaxation at night. I used to have a ton of excitement over my side project, but for the past several months, I can’t muster the energy. I play a board game on Steam (Wingspan: 10/10 would recommend the physical and digital version) that has a soundtrack I like, and that’s about it. This keeps me sane, but I often find myself wishing I felt confident enough to extend myself further.
Hopefully when my current large work project wraps up I’ll be able to take a breather.
I, for one, can do heavy bodily harm to myself if I attempt to live in this state for long periods. It turns out my mind is much stronger than my body. Perhaps the flow state removes the regular messages the body sends when it's had enough.
Either way, life without play is dangerous for me.
If anyone wants to build this sort of thing the new Raspberry Pie Pico 2 is both orders of magnitude more capable than the chip used here and also around half the price.
It's by far the best value for money for an introductory 32bit ARM/Risk embedded device right now.
There's another way to look at this. When your partner has had many previous partners, it means that you are extra special, because even after all that prior experience, they choose you!
And about longevity, if you ask me, the most important factors for a solid relationship are:
1. Being completely comfortable around each other. No grudges. Being able to talk about anything, even if you don't always agree.
2. (related to #1) Having a mechanism for resolving conflict. Avoiding things like the silent treatment.
Yes. I turned my life around at 43. Single, obsolete tech skills, lots of debt, personal issues. Began with taking a genuine inventory of my life and how I function, not just how I felt. I picked a constructive and structured approach to that, which looked a lot like CBT therapy but was something else.
It was a life reset, clearing out all the baggage. It was very difficult but incremental and genuine over time.
After the personal part, I levelled up my tech with some commercial online courses. When I began the career pivot, there was a lot of ageism and ghosting. Eventually I got a foothold and was on my way.
As for the family and relationships, I can tell you that I got a lot of attention from women once I made all those changes. There are so many looking for someone who is at least trying to handle their lives. I hear it all the time. Even being older, I get curious early 30s women who want families.
Now in my early 50s, my life is so much better. In no way do I feel my best days are behind me.
First, introduce The Diataxis framework ( https://diataxis.fr/ ) for documentation. It makes people think about documentation in a more structured way, and allows you to be more specific in the types of missing documentation. (High documentation cultures are often good with explanation but not tutorials, for example.)
Second, I would introduct the idea of a Documentation Portfolio. I have a review of Agile Documentation at https://www.ebiester.com/documentation/2020/06/02/agile-docu... and it speaks to another structure for how to build the documentation in a more reliable form and thinking more carefully about your audience for a particular type of documentation.
One of the things I've spent time helping other engineering managers understand is that burnout doesn't relate only to exhaustion.
Instead, as the Maslach Burnout Inventory points out, it tends to be a three-factored issue. The MBI is a tool widely used in research studies to assess burnout, and it measures three scales:
1) *Exhaustion* measures feelings of being overextended and exhausted by one's work.
2) *Cynicism* measures an indifference or a distant attitude towards your work.
3) *Professional Efficacy* measures satisfaction with past and present accomplishments, and it explicitly assesses an individual's expectations of continued effectiveness at work.
So you can absolutely be experiencing burnout even if you're not experiencing exhaustion, if the other two scales are tipped hard enough.
Among the questions that help measure Cynicism and Professional Efficacy:
* I really don't care what happens to some of my colleagues/clients.
* I have the impression that some of my colleagues/clients make me responsible for their problems.
* I have achieved many rewarding objectives in my work
In the workplace, I've seen a few people crash into a burnout and it was always your list in reverse order.
It starts with work being rather meaningless or just spinning wheels. It takes an enormous amount of effort to achieve little progress and even then the outcome doesn't bring about a great satisfaction, it is rather vague.
Which is then followed by cynicism. Which self-sabotages a way out, because with cynicism you'll be sure everything feels meaningless, even if it isn't.
Next, people grind through this perpetual state of deep unhappiness for the longest time possible, because showing vulnerability is taboo, plus bills have to get paid. Until the mind snaps, and subsequently the body.
Literally a countdown of your list: 3, 2, 1. Game over.
In the case of millennials, the link to work seems weaker. They seem to have a generic existential dread to them.
Ayyyyy fellow neurosignal hater, I wasted the first year of my PhD (out of 3) working on electroencephalography (EEG) signals, I'm forever bitter.
You see all these great papers on medical applications but no one tells you it's a high-dimensional signal that contains one bit or maybe a byte of data at best. So you can do binary classification, or one of many classification (poorly).
And that's all you see in all studies:
Claim: "Learn to predict behaviour from EEGs"
Actual: "We learn to tell whether the patient is moving in any way or completely still with 60% accuracy."
Claim: "Learn to reconstruct images from EEGs"
Actual: "1 in n classification of previously seen images, then we put a billion parameters on top to go from the binary vector to the mean of the training images with no actual information used from the original signal."
I go with "my first impulse is to suggest..." which IMO adds the diplomatic nuance of admitting an incomplete understanding of the problem and/or the person experiencing the problem.
Same here, with a slight variation. I usually say "my first thought is to try ..." or "the first thing that comes to mind for me is ..."
Depending on the situation I might also use the old "Have you tried ..." phrasing.
I'm still pretty young so this might not apply, but I tried to skip university and make it as a freelancer. Worked out fine money wise, but got severe burn out working on a project that I shouldn't have taken on in the first place, but needed the money.
I recovered fine, but it was pretty brutal. For a while I couldn't even look at code without getting nauseous and a having a splitting headache. I'm not exaggerating here, it was like I had lost the ability to comprehend code at all. Code was just meaningless symbols randomly arranged without any rhyme or reason.
What helped eventually is about ~6 Months of completely distancing myself from Programming. No programming for work, no programming for fun, not keeping up with current developments, nothing. I was fortunate enough to be able to afford this, but I truly believe that a 6 month long hard brain reset was needed. Wouldn't have worked in 3 months. Other comments here echo a similar sentiment and you'll find other blog posts and personal experiences on the internet with the same conclusion.
On the upside, coming back after 6 months and discovering that I stopped getting physically ill trying to code was an amazing moment. I fell in love with programming all over again. Only this time I learned to listen to my body and
started prioritizing health and happiness over a steep career and financial success.
Honestly I don't think many people would be impressed by my professional output (especially not on this site), but I can honestly say that I've never loved it as much as I do now and I can rest easy knowing that it's sustainable and doesn't negatively impact my mental health.
> If I was forced to have an audience for ten years I’d just be saying crazy shit all the time.
There is an alternative. Just blog without an audience. Don't keep any web server logs (or don't look at them). Delete the analytics.
The fact that someone theoretically could be reading my blog is enough motivation to write something understandable (rather than just scrawling some gibberish in a notebook), but whether that audience actually exists or not doesn't matter to me.
There's no inherent need to write regularly if you feel you have nothing new to say, is there?
This guy Lars Anderson is fascinating, doing so much more with arrows. He has a great video, trying to rediscover or recreate the Comanche capabilities. Well worth 5 minutes of your time if you have any interest in historic military or the abilities of humans to do amazing things. https://www.youtube.com/watch?v=liHlCRpS70k
I believe IPFS was partially intended to help the Internet Archive in that regard. They'll be the consumer of last resort for all objects, thereby bringing about the Permanent Web.
> For this reason, formal proofs of correctness are valuable for distributed algorithms.
I have a massive amount of respect for Martin and his work, but I think that this emphasis is the wrong one (if our goal is to increase the correctness of deployed distributed algorithms).
Instead, I like to think (building off work of folks like Ankush Desai, an AWS colleague and creator of P) that the process of specification, and it's products, are more valuable than the creation of a proof. Model checking - either exhaustive or stochastic - is valuable for checking the properties of specifications, but pushing the last step into full proof is often not worth the additional effort. Instead, I think making proof the focus and goal tends to turn most programmers off the whole topic.
I think we should be saying to folks "If you pick up these tools you'll end up with a crisp specification that'll help you move faster at development time, extremely clear documentation of your protocol, and a deeper understanding of what your protocol does" instead of "if you pick up these tools you'll end up with the mathematical artifact of a proof". This has been a big shift in my own thinking. When I first picked up Promela, Alloy, and TLA+/TLC/TLAPS, my own focus was on proof (and remained so until 2014 ish, when I spent a lot of time talking to Chris Newcombe and Leslie Lamport as we were writing the "Formal Methods at AWS" CACM paper). Over time I've found the journey much more valuable than the artifact, and tools like PlusCal and P which make specification more approachable more valuable than tools with less familiar syntax and semantics.
We shouldn't be surprised that few people can make progress when we ask them to understand both Paxos and Isabelle at the same time! Maybe if that's your focus as a PhD student, then it's OK.
> The real challenge in verifying distributed algorithms is to come up with the right invariant that is both true and also implies the properties you want your algorithm to have. Unfortunately, designing this invariant has to be done manually.
This is true. Invariants are hard. But maybe I'm more optimistic: I think that there are a lot of very real systems with straightforward invariants. Lamport's three invariants for consensus (section 2.1 of Paxos Made Simple), for example: https://lamport.azurewebsites.net/pubs/paxos-simple.pdf Similarly, invariants like Linearizability, and even formal definitions of isolation.
The research I would love to see is work to synthesize invariants from formalisms like Adya's or Crooks' work on database isolation levels. I think that's a very tractable project, and would be super useful to practitioners.
I've found it easy to stop a great deal of such behaviors by examining not what they promise to deliver, but what they actually brought. I.e. don't look forward, look backward when making decisions.
Alcohol promises a great time. Alcohol delivers a hangover and regrets.
Junk food promises a great time. Junk food delivers poor health and regrets.
Going to the gym promises hardship and struggle. It delivers health. I've never once regretted it.
Reading a book promises struggling and boredom. It delivers wisdom and inspiration. I've never once regretted it.
If you compare what you think you will happen with what you know will happen from experience, it's very easy to see how often you are misjudging these things.
As someone whose computing career was improved by learning to touch-type in grade school (Mom had been a secretary, saw that these "personal" computers had keyboards, and bludgeoned the high school to let me in to the summer-school typing class) it's not actually the speed that matters - though that does certainly impress people - it's that it's "automatic". If you're not thinking about letters and where they are, you aren't distracted from the entire sentence (or function) you're holding in your head - it just pours out through your hands into the machine.
(Sometimes I joke about how my hands know emacs, not my brain - but if someone asks me what keys I hit for something, my fingers move and then I work backwards from that.)
(And if you're collecting correlations - I have no musical performance talent at all and have spent maybe 10 hours total poking at musical keyboards - for me, typing is all typing, I expect musical keyboarding is a related but parallel thing, not the same thing.)
I gave up after a paragraph or two. It looked like it was going to moan about people trying to have fun and do some self care. I don’t have time for that.
Over time, I’ve come to see many “senior” or “success” behaviours as refined versions of childhood ones. Political sniping, business competitiveness, standard hierarchical power dynamics, etc. These are all “playground tactics” but grown up. I don’t see (many) “successful” or “leader” type people publicly engaging in so called “adult behaviours” - supporting, sharing, collaborating, taking time out to understand one another’s needs, looking for win-wins.
Of course, many adults do all these things. However, the higher up the power/success ladder you look, the harder these behaviours are to see. In a lot of situations, many people feel they need to win, or at best draw. Few enjoy losing, and the more they have riding on it (money, reputation, power), the more most people will aim to win. At the level of nations (or gangs), this gets deadly. The ways to win are just the same ways kids explore. The people most likely to win are the ones who lean hardest into those tactics.
So, I’m saying “we’re all children”. If you want to complain about adults playing games and wearing bright colours, you also need to complain about adults using armies to take resources and businesses blocking others out of markets.
I'm an individual who's opinions on unfettered anonymous speech have changed over the years, so I'll give my take.
I was a "free speech absolutist" in the early 00s, which was the "default" on places like Slashdot, and later on places like Reddit and HN. The reason I changed my opinion is that I was generally surprised by the amount of real harm that can be caused by the way technology can amplify false or harmful content. Specific examples:
1. I was actually surprised by the amount of glee people would take in online harassment, things like r/jailbait and fatpeoplehate. I believe that the social norms that would have prevented the proliferation of this content "in the real world" were ineffective in the anonymous, online world.
2. I was surprised by the amount of laughable BS that got real, widespread traction, stuff like QAnon.
3. Regardless of your politics, interference from foreign powers in democratic governments is now a much more realistic and effective attack scenario.
So I guess the short of it is that some "axioms" that I used to believe about free speech (e.g. "the truth will always bubble to the top in open debate") I no longer believe to be true in the way that technology can "hack" people's emotions. I definitely don't know what the right solution is, but I think that unfettered anonymous free speech on the Internet will lead to a type of society that scares me.
People on site scan the documents and upload them for archival. The directory monitor looks for new files in the archive directories and once a new file is available, it is uploaded to Drupal. Once a new content is created in Drupal, Drupal triggers the translation and embedding process through llama.cpp. Qwen3-VL-8B is also used for chat and RAG. Client is familiar with Drupal and CMS in general and wanted to stay in a similar environment. If you are starting new I would recommend looking at docling.