This is written so compellingly that I almost want to try this approach to learn French swearing.
Also note that since the MS-EU settlement, the SMB protocol is quite extensively, if a bit passive-aggressive opaquely, described in a series of documents that Microsoft updates to this day, e.g. https://learn.microsoft.com/en-us/openspecs/windows_protocol...
The other option (e.g. when it's not your submission) is to email the mods, which I've just done, and they will fix it up if appropriate.
For example, the MAPI specs have references to valid parts of the protocols and data structures that are not used anywhere and which in fact crash MAPI libraries (so Outlook and Exchange just throw errors if you give them such data), sometimes giving a glimpse of how there might have been abandoned features that were never delivered.
Like, surprisingly, HTML email support in Outlook[1] :D
[1] MAPI Message struct, and thus Exchange and Outlook, crashes when encountering "HTML message" let's call it "submessage". Turns out the valid way to save a HTML message is by wrapping it in RTF and saving it as Rich Text submessage. Plain text is another submessage.
Also one thing I have discovered with the whole work from home thing, is that users connected to their personnal cloud account on windows at home who then also connect their professionnal o365 account for work randomly end up with various weird issues.
Their cloud account in the OS thing is just not well thought out.
It was one of the "first few major cases" in the EU against tech, and the testimonies from the open source side had been great in explaining to the judge just what they wanted (and almost as important, what they didn't want at all, despite Microsoft claiming otherwise)
Then Microsoft got a fine by day and tried to play the force card by refusing to pay for a while.
https://fsfe.org/activities/ms-vs-eu/ms-vs-eu.en.html
https://blogs.fsfe.org/gerloff/2011/05/27/samba-case-hearing...
Against? I would call it pro tech, against the tech industry.
This meant that early versions were compatible with Pathworks servers but not Windows ones (but Windows could be configured to work with Pathworks)
This item is popping up from HN's Second-Chance Pool - check the mouse-over text on the submit time. Background - https://news.ycombinator.com/item?id=26998309
This item has been on HN a number of times. Sometimes the "How " is re-added to the title, sometimes not. (Click the 'samba.org' link, above, for a quick look at that.)
If I ever want to teach someone how to write a black box implementation for some kind of software interface, I'll point them to this to get started. The French café analogy is pretty good. It's also great because Parisians aren't always the nicest people around, just like the servers and clients you'll be working with during your implementation.
I guess nowadays you could also automate some part of the protocol discovery with LLM agents? Has anyone tried this before with any promising results? My idea would be to have a traditional fuzzer poking at the server, but use an LLM agent whenever you get a non-error message or a different error message to attempt the well-crafted request without having to shotgun every possibility under the sun into the server.
(It still incredibly hard to pull off for real, because of complex stateful protocols and edge cases around timing and transfer sizes. Samba did take 12 years to develop, so even with LLM help you'd probably still be looking at several years.)
Interesting to me is the audience - this article is appropriate for a middle schooler on up to read, and assumes no technical knowledge at all, or very little. Documentation targets and the social culture around them have varied since I started reading documents like these, but this sets an especially low bar for reader knowledge.
I like it. On the one hand, I could have gotten much more technical detail out of a version that used industry-specific words and was half the length, but on the other, I got what i needed, and learned much about the author to boot.
People would jump in, contribute their part, write a bit and leave. Folk were willing to contribute ideas to your project and assist in parts you got stuck. You learnt and understood by studying the source you were given or obtained. There were less expectations, if you had a half-baked thing folk gave you grave .
Code was more optimistic, fun and free for all. You didn't get lynched for not having a license or for not using $LANG. You grabbed something from Sourceforge and ran with it.
Why are you not using Python!? Why are you coding in TCL. PHP, pathetic. eww, you use IRC? lol perl.
Forums were rampant, the internet was a friendly place; LAN parties were awesome and the internet had rainbow coloured fences not grey greased walls like now were climbing over are a struggle requiring you to leave with one or the other. The world wasn't as depressed and a new phone was a new phone and not just a rehashed Android UI.
Where did we go wrong is an answer that cannot be answered other than we seem to keep making the same mistakes over and over again blaming whoever.
Granted I was 15, so naivety. Thirty Seven this year and still waiting for someone to code the time machine to relive those days.
/me goes and scours sourceforge
And yeah, remember Eggdrop? :D
Documentation was never fun so I'll use my age as an alibi. I was just a script kiddie and recalling downloading MB's of scripts and uploading them on to polarhome [0] where some awesome swede was hosting shell access to different systems on his home DSL. Me kitted with my three-hour limited 56k and my fathers work 128K ISDN line.
Oh well, nostalgia over back to work, writing IT architecture docs.
Driving character out of the software world. Spotify couldn't whip the llama's ass even if it wanted to. And it doesn't want to. Spotify is a boring office worker that we're professionally cordial with only because they run the stockroom.
I won't take it for granted now.
As a side note, the documentation has been pretty darn good too. I set up an AD server in Samba just from the docs, with a bit of additional help from Stack Overflow. It was only after I had finished that I determined that I could do what I needed with just the basic Samba user/groups. (My needs were not complicated enough to justify the extra overhead of AD.)
"I made 40,000 dollars in a week with one simple trick" is exactly as bad as "How I made 40,000 dollars in a week with one simple trick"
One of the recommended ways to solve it was to smb mount a volume for the volatile files. Which almost as fast as the overlay.
i386•5d ago