20 ms·
MS Teams channels cannot contain MS-DOS device names
- owlninja 3y agoWords: forms, CON, CONIN$, CONOUT$, PRN, AUX, NUL, COM1 to COM9, LPT1 to LPT9, desktop.ini, _vti_
- Brian_K_White 3y agoI was about to say "Which is essentially leaking the existence of something terrible inside. They should be embarrassed to say something like this in public. Like saying you can't have %s or $PS1. Why the hell not? What are you doing with this user-supplied input?" But maybe it's more about what everyone else might do with a channel name. Ie they might cut & paste it anywhere, and I guess windows users aren't expected to escape their own strings when pasted into cmd or powershell or wsl.
- tapoxi 3y agoI thought this as well but there's plenty of dangerous commands that aren't escaped here. I'm assuming it's a limitation of it actually writing something to the filesystem, hopefully your own (with the desktop app) and not one in Azure.
- vel0city 3y ago> What are you doing with this user-supplied input? Creating Sharepoint shares which can be mounted as network shares in Windows where these filenames are not allowed?
- dharmab 3y agoThe Something Terrible in this case is early DOS which did not have separate folders. So the device files were in the same namespace as the user's files, so the user couldn't name a file CON or LPT1. These are preserved for backwards compatibility. To this day you can write a program that writes to a CON file in any folder, and the program will print the write to console.
- ChrisSD 3y agoThis has actually changed a bit in the last few years. In Windows 11 writing to `.\CON` will write to the file but writing to `CON` will still write to the console.
- xp84 3y agoAnother interesting aspect of this, which I remember specifically from reading MS-DOS manuals in the 90s as a kid (I was an incredibly fun 12 year old) is that this choice was an intentional one done in the name of flexibility. These device names were correctly written with a colon, but you are allowed to omit the colons. For instance: copy con lpt1 And copy con: lpt1: were interchangeable. If they’d chosen to not save users keystrokes and force colons when referencing devices, I’m not positive, but I think it would have eliminated the need for many of these reserved words in file names in general. Also, side note, the “copy con outputfilename.txt” idiom is one that I still can’t ever remember how to do the equivalent on UNIX/Linux!
- gnosek 3y ago> Also, side note, the “copy con outputfilename.txt” idiom is one that I still can’t ever remember how to do the equivalent on UNIX/Linux! cat > outputfilename.txt
- xp84 3y agoBut it's not CTRL-Z to end, right? That's the part I forget every time :D
- Brian_K_White 3y agoOne of my favorite bbs sig tags was "REAL programmers use COPY CON FILE.EXE"
- cueo 3y ago> I was about to say Yet you said it twice[1]. [1] https://news.ycombinator.com/item?id=37076913 https://news.ycombinator.com/item?id=37076913
- Ekaros 3y agoNow I actually wonder were there ever any machines that had LPT9, COM9 I could barely see.
- deleted 3y ago[deleted]
- blueflow 3y agoYou can reassign real device to any of these names
- Ekaros 3y agoReassign and actually use all of them are different things.
- zaxomi 3y agoMSDOS 3.3 had COM1, COM2, COM3, COM4, LPT1, LPT2, and LPT3. LPT4-9 and COM5-9 was not part of MSDOS.
- olyjohn 3y agoIIRC those were mapped to specific I/O and IRQ Ports back in the day. COM1: I/O port 0x3F8, IRQ 4 COM2: I/O port 0x2F8, IRQ 3 COM3: I/O port 0x3E8, IRQ 4 COM4: I/O port 0x2E8, IRQ 3 I also remember, there was a while where there was no IRQ sharing. So some machines couldn't use all the COM ports available. Or you'd add in like a modem, and would have to disable the onboard COM port if it was using the same IRQ.
- fredoralive 3y agoIf you do embedded stuff you can easily get above COM100 if you're doing something like testing (if a USB to serial converter has a serial number, it gets a unique COM port). Although I don't think these high numbers have any effect on the file system, just the legacy low numbered ones DOS could have.
- tssva 3y ago
- transitorykris 3y agoIn the mid-90s there was a fun and short period of time where IRC clients like mIRC could be set to auto-receive files through DCC.. and would happily write to names like LPT1 (which of course would just write the data directly to the recipient’s printer)
- grishka 3y agoAlso, send a COM1 file containing "+++ATH" to someone you dislike to see them disconnect. I just made this up but it should work, right?
- zten 3y agoFor the absolute worst modems, I believe you could just send that in a PING on IRC and their client would write the string back and hang up
- keepamovin 3y agoAhahaha, I love this! I love how this new fandango thing harkens back to the earliest days of MS-DOS when it ran on a 086 or 286, back in the early (very early) 90s. Have to respect MS' backwards compatibility fanaticism. Impossibly as if a native port of MS Teams would be created for MS-DOS 3.1 (hahahaha). When more plausibly the MS Teams servers run on an ancient crazy proprietary MS-DOS 3.1 mainframe (still implausible, but hey). I know that this device name restriction also applies to Windows file names, so it's not that surprising (if you are inclined to be less fun than possible), but if you like fun, you can pretend the former. Relevant frag link: https://learn.microsoft.com/en-us/microsoftteams/limits-specifications-teams#channel-names https://learn.microsoft.com/en-us/microsoftteams/limits-spec...
- paulryanrogers 3y agoAgree BC is a laundable goal and appreciate their efforts. Though I do wish it didn't include limiting passwords to obscenely short lengths or absurd subsets of characters.
- keepamovin 3y agoYeah those 8+3 file names sure birthed some creative abbreviations. Necessity, mother, all that
- queuebert 3y agoBrevity forces thought, which I prefer to "Putting a Sentence in a File Name.docx". FORTRAN originally had the same limitation for function names, and that lead to some classics such as GEMM and SAXPY.
- djbusby 3y agoThose two are obviously GetExtendedMemoryMap and Saxophone.
- pluijzer 3y agoVery loosely related, but I really dislike the excepted design pattern for that cases where functions names are something like AssertThatOnePlusOneIsReturnAlwaysTwoAndNeverFive. It looks ridiculous, smells like a hack, and I cannot think of any reason why giving a description of the test couldn't be handled by the testing framework in a more graceful way.
- lokar 3y agoJust imagine the deep commitment to tech debt that results in this
- yellow_lead 3y agoOne man's tech debt is another man's API stability
- deleted 3y ago[deleted]
- flanked-evergl 3y agoOne man's API stability is another man's perpetual nightmare, especially if the API is bad. Things have to change to get better, and if systems are designed in a way which prevents API improvements, then you will just have perma-crap software.
- marcosdumay 3y ago> perma-crap software Yeah, we are talking about Microsoft here. I guess some people will pop-up from nowhere and disagree with your rationale, but it is flawless. Everybody loves the stability anyway.
- xp84 3y agoThis seems an odd place to be making this argument though. Of all the things that you might do if you had carte blanche to break all backcompat in Windows, you’d really pick these reserved words? like, how important is it to make a file named just con or prn? Or a Teams channel or Sharepoint group for that matter? I’d be aiming more for something like the backslash as path separator, or eliminating all system dependencies on drive letters. (I know NTFS can mount elsewhere, but too much stuff uses and assumes drive letters.)
- Dalewyn 3y agoThe notion that change is always good/better is false, and change for the sake of change is terrible.
- lol768 3y agoDoes this imply it's writing a file to the fs for its internal storage, with the name matching the channel's name instead of a channel ID?
- Brian_K_White 3y agoI think it only implies they worry about people cutting and pasting channel names into other things like random powershell scripts.
- icegreentea2 3y agoNot necessarily - it could mean that at some point they believe they'll need to create folder or file with the same name as a team, and they don't wanna have to deal with weird collisions. It's been a while since I've used Teams+Sharepoint, but I vaguely remember being able to have a Sharepoint workspace per team channel, and then being able to mount those workspaces as a shared/network drive. Stuff that might end up in the workspace is like... shared/uploaded files or something?
- i_am_jl 3y agoIt's been a while since I've used Teams+Sharepoint, but I vaguely remember being able to have a Sharepoint workspace per team channel, and then being able to mount those workspaces as a shared/network drive. Stuff that might end up in the workspace is like... shared/uploaded files or something? This is correct. Every channel is backed by a Sharepoint folder (maybe this is configurable?) that contains stuff like uploaded images, videos, recordings and transcripts of meetings, etc.
- Roark66 3y agoIt's hilarious on Linux you need chrome to use teams for screen sharing / video to work, and Firefox for sharepoint file sharing to properly work. If someone shares a file on a channel, you can open it in chrome. But you can't share any files yourself, because either the upload button doesn't work or when it does it looks like you shared the file in the chat for a split second then it dissapears.
- conscion 3y agoThis is most likely due to those names not being allowed for files or folders in the Windows file system. MS Teams channels create a matching folder in SharePoint where file attachments are stored.
- yellow_lead 3y agoI bet there is another vulnerability here, although they also seem to blacklist % and ..
- naikrovek 3y agomost of those are the usual forbidden path and filename characters. % is used to surround environment variables for interpretation, for example.
- lostlogin 3y ago> the usual forbidden path and filename characters. It’s pretty irritating when files and folders on my Mac can’t be uploaded to Teams due to this limitation. It’s only forbidden for Windows users.
- reaperducer 3y agoIt’s only forbidden for Windows users. I think the only character that Macs don't allow is the colon. AFAIK, everything else is fair game, even emojis. I just created a project with "ê" in the title. I wonder if I'll be able to share that with my Windows coworkers on Teams.
- recursive 3y agoYes. NTFS has no problem with non-latin letters and emojis in file names.
- qingcharles 3y ago
- Brian_K_White 3y agoI was about to say "Which is essentially leaking the existence of something terrible inside. They should be embarrassed to say something like this in public. Like saying you can't have %s or $PS1. Why the hell not? What are you doing with this user-supplied input?" But maybe it's more about what everyone else might do with a channel name. Ie they might cut & paste it anywhere, and I guess windows users aren't expected to escape their own strings when pasted into cmd or powershell or wsl. The teams code itself can probably handle it just fine, but maybe not all the unknown janky random things out there that might handle channel names. Other people have pointed out the SharePoint folders associated with the channels. Not sure I would excuse that myself since it's easy enough to just escape or modify or encode to create a safe version for the directory, but maybe it's important elsewhere for the channel name and the directory name to be identical. Within one app you could simply encode and decode both the channel name and directory name the same way and totally hide the encoding from the user, but if the directory is used outside of the app, then it would look bad with URL encoding or something that everything else will just display as it is, not decoded. So the directory has to be safe for everything else, and so the channel name has to be the same. Essentially choosing to have these limits rather than have directory names that look ugly sometimes. It's ultimately not even a safety or breakage thing, just a cosmetic thing. All directories will always look natural and good, because they don't allow anything that would have needed to be encoded.
- thefz 3y ago> essentially leaking the existence of something terrible inside It's just a restriction imposed on SharePoint folder names bubbling up. Nothing fancy.
- BasedAnon 3y agoi was going to write a bunch of suggestions for solving the problem but then i remembered i hate microsoft
- deleted 3y ago[deleted]
- air7 3y agoThis backwards compatibility chain reminds me of the age old tale of how rockets are the width of two horses... (1) (1) http://astrodigital.org/space/stshorse.html http://astrodigital.org/space/stshorse.html
- deleted 3y ago[deleted]
- bmitc 3y agoThat was fun.
- mordae 3y agoThis is pure gold. Thanks, you made my day! :-) Also, you might be interested in this: https://youtu.be/1NqRbBvujHY?t=2236 https://youtu.be/1NqRbBvujHY?t=2236
- Nzen 3y agoWhile I enjoyed rewatching the latter half of episode 2 of season 1 of James Burke's Connections tv series, I don't see how the invention of the cloud chamber (which you start the video at) is relevant to standards for rail, horses, or rockets. What's the connection ?
- msla 3y agoIt's a dumb joke with no basis in fact.
- chrisweekly 3y agohahaha, that's great. thanks for sharing
- chx 3y agotale it is https://www.snopes.com/fact-check/railroad-gauge-chariots/ https://www.snopes.com/fact-check/railroad-gauge-chariots/
- 3y ago
- mepian 3y agoThis is such a Microsoft thing to do. DOS compatibility will haunt us for the rest of this century at least.
- Ekaros 3y agoSometimes I wish we had fresh clean slate OS. Not the baggage of DOS or Unix... Something modern and sensible without insanity of either system.
- rado 3y agoHaiku? (if finished)
- jjgreen 3y agoTo convey one's mood. In seventeen syllables. Is very diffic. John Cooper Clarke
- reginaldo 3y agoI hear GNU Hurd will hit 1.0 any day now[1] :) /s [1] https://news.ycombinator.com/item?id=37036851 https://news.ycombinator.com/item?id=37036851
- mseepgood 3y agoSometimes, I wish other software products took compatibility as seriously as Microsoft does.
- cynicalsecurity 3y agoThe baggage of Unix is gold. The baggage of DOS is manure.
- Ekaros 3y agoLike everything being text? Pictures? Structured data?
- 3y ago
- acheron 3y agoI actually laughed out loud at that headline. Fantastic. AFAIK those still can’t be used as file system names, so I’m assuming it’s related to that. Tim Paterson’s Revenge.
- Roark66 3y agoWhy is it that most "chat/conference" apps become horrible sooner or later? I still remember when teams used to be an OK app. It even had a Linux desktop client. I remember when slack was actually fast, I remember Skype out being more reliable to make phone calls than my mobile/cell service. Today slack is extremely slow if you add few organisations to it (but at least you can add more than one). Teams has deprecated their Linux desktop client and the only way to use it on Linux is via chrome, but wait, if you use it as part of office365/sharepoint you need to use Firefox for "some" sharepoint links. So essentially you need 2 browsers at all times. Chrome for teams (screen sharing and video), Firefox for some sharepoint links.
- graphviz 3y agoThe market rewards features and integration, not performance, as long as an app is usable. Developers devel... I mean features features features.
- HPsquared 3y agoIt's easier to add things than fix annoyances.
- prepend 3y agoThe key is to be terrible and simple from the beginning. IRC works just as poorly today as 30 years ago.
- mschuster91 3y agoWhich is why its usage has declined ever more and more thanks to Discord, which is a pain in itself. Freenode's collapse in particular pushed a lot of people to just say "fuck it" to IRC in general.
- zelphirkalt 3y agoAlthough, at least what works today works tomorrow on IRC. Same cannot be claimed from MS Teams or Discord ...
- 3y ago
- prepend 3y agoTeams is so weird, “ Number of org-wide teams allowed in a tenant” is limited to 25. So my company can only have 25 “general” teams. I think it would be neat to learn the rationale behind some of these settings.
- ratg13 3y agoProbably to protect people from their own ignorance. If you are participating in 25 teams, it's likely already too many, general or not. Having to navigate 25 teams that are full of stuff doesn't concern you sounds like an absolute nightmare. You'd burn out everyone in the organization with a setup like this.
- Ekaros 3y agoAnd this is about organization wide teams, meaning those teams that people are automatically joined in, with up to 10000 members... So probably something you want to steer people away from.
- rejectfinite 3y agoYou want the ENTIRE company to be auto added to more than 25 teams?
- prepend 3y agoI don’t want the entire company to be added to any teams. Maybe one. But I think it’s funny that someone said “20 is not enough but 30 is too many.” And then implemented it. Setting such an arbitrary limit so low is what is interesting to me. Fight for an opinion of “none” or “one and only one.” But allowing the hellscape of 25 teams where people accidentally invite all employees to their meeting, but not allowing 100 teams is funny.
- tymscar 3y agoAnd usually when this happens it’s for some weird technical reason, and it almost always is a power of two number. Here it’s just plain weird!
- graypegg 3y agoIf this IS a case where the title of a channel is used as a SharePoint folder, I’m surprised there isn’t some standard way to escape specifically these strings? I know it would break compatibility for applications that rely on these magic device files, but SharePoint should NEVER actually want to speak to COM1. Weird to me it isn’t handled already in SharePoint!
- Kwpolska 3y agoSharePoint can sync with your filesystem on Windows, and Windows/Win32 doesn't support those names for backwards compatibility.
- draw_down 3y ago[dead]
- alkonaut 3y agoIf I ever do anything where I let people name things it's rarely a good idea to NOT lock it down with some restrictions. "Minimum length", "Maximum lenght" at least, but anyone who has programmed windows machines for any length of time might also have the scars to remember to do "is a valid file name" too. Having to escape everything or replace names with stable guids is not a good relpacement for storing \whatever\logs\channelname or whatever the need may be. Especially for systems that are hard bound to windows filesystems or Sharepoint to begin with. I bet there are apps on other OS:es where you CAN name things a "\0" sequence or "/" and for each such app I imagine there are people who regret making that possible.
- glonq 3y agoI'm old[school], so if I'm at the windows command prompt and need to bust out a quick batch file or script I will do "copy con foo.bat" instead of using notepad or vscode. Old habits die hard!
- xp84 3y agoSame! I know there are one or more ways to do this in a Unix/Linux shell, but despite being off Windows for almost 20 years I haven’t memorized it. I miss it though!
- deleted 3y ago[deleted]
- Mister_Snuggles 3y agoI sort of get most of these - they're internal to various bits of Microsoft technology. 'CON' plus the ones ending in $ are internal device names dating back to MS-DOS, 'desktop.ini' is a magic file that Explorer uses, '_vti_' is something I've seen but can't remember what it was from. But 'forms'? Why is 'forms' a bad word?
- monitron 3y agoI did some quick looking and it seems like SharePoint creates a hidden folder called “forms” to store, unsurprisingly, forms associated with a resource. Aren’t polluted namespaces grand?
- Mister_Snuggles 3y agoAh, that makes some amount of sense. But... Why not just call it "_forms" or ".forms", which are already prohibited due to the first character?
- tbyehl 3y ago_vti is the mortal enemy of anyone involved in web hosting during the mid-90s to early 2000s. Those are the server-side scripts and configuration for FrontPage, originally developed by Vermeer Technologies Incorporated.
- Mister_Snuggles 3y agoThank you! That was bugging me, but now that you mentioned FrontPage I clearly recall all of the _vti stuff.
- m00dy 3y agoI can't be the only one thinking that generally MS Team is offering probably worst experience in the messaging market.
- uraji 3y agoyou are not
- rqtwteye 3y agoSlack is working hard on catching up but Teams is definitely the leader in suckiness right now.
- ilyt 3y agoIt's absolute fucking garbage when it comes to text chat. It boggles my mind that they had so many examples on how to do it right and fucked it up so badly
- CSMastermind 3y agoI honestly think they should fire every single PM on that team. Like literally just keep the engineers and give them no more direction than make it better and designers need to approve any UI changes. That's it.
- m00dy 3y agoI just called Satya and told him that he should talk to Pavel to get some advise for the UI experience.
- Lio 3y agoI'm right with you on that. Highlight some text, right click and select copy. Teams copies some other random text and not what you highlighted. Grrr! Any product that can't even get basic copy and paste right is garbage in my opinion. The only reason people use it is that it's bundled for "free" with MS Office.
- bradley13 3y agoSo many of these limits seem arbitrary. Why 5? Why 500000? While they seem OK for most customers, why not make many of them MAXINT?
- Sakos 3y agoThat sounds crazy to me and I understand why Microsoft or any company wouldn't want to do that. It seems completely reasonable to me to set reasonable limits to avoid excessive resource usage or unforeseen/untested/unwanted performance limitations.
- xp84 3y agoBingo. Everything has a limit and when you set it yourself you’re moving the “how many x can I make?” answer from the “unknown” column to the “known and testable” column. Imagine if you add a feature tomorrow that, on startup, has to run something in linear time with the number of channels you have. If the upper bound were essentially undefined (and not practically testable if it’s max int(32)) it could be that in practice your new feature makes it so that getting above 23,456 channels effectively disables the server due to a timeout in a critical part of startup. But if you’ve defined that channel limit, you can be confident that a feature like that either does or does not break things, even when at your channel limit, because you can test that.
- jcims 3y agoI can't send a text from Google Voice to my phone that has the domain 'united.com' in it. It just gets lost in the ether.
- whalesalad 3y agoMicrosoft is going for the Guinness World Record for oldest tech debt. They are winning.
- nxobject 3y agoRivalled only by IBM... which makes for an interesting comparison; IBM for enterprise, and Microsoft for personal computing.
- kevin_thibedeau 3y agoUnisys beats IBM for longest supported platforms.
- bni 3y agoMICROS~1
- ok123456 3y agoUse CP/M device names instead, I guess.
- kentonv 3y agoCirca 1998 I was a teenage Linux zealot who would attend LAN parties carrying a Linux box. It actually worked -- at the time, WINE practically existed to support Starcraft, Quake 2 could run natively, and that covered like 95% of what people were playing. One time I thought it would be funny to run a shell script that looped through every Windows share on the network and tried to open `CON/CON` on it, resulting in a prompt Blue Screen of Death for each machine. For some reason my friends did not think it was funny.
- EspressoGPT 3y ago> Circa 1998 I was a teenage Linux zealot who would attend LAN parties carrying a Linux box. Arch, I suppose.
- g105b 3y agoif it were arch you'd know already
- gerdesj 3y agoSorry, how remiss of me! On behalf of Archoles everywhere: "I use Arch actually" (and so does my wife).
- saalweachter 3y agoArch wasn't around in 1998. I'm going to put my money on Slackware.
- Q6T46nT668w6i3m 3y agoI’d bet RedHat 5.2.
- timcambrant 3y agoThat was my first. Then Slackware 3.6. Both as cover CD:s of computer magazines because that download was too much to handle on 56k.
- maerF0x0 3y agoGeneral tip for structuring user data. Try to treat it as obscure blobs, whenever possible.. Imagine it's encrypted so it's not even printable/human readable. > forms, CON, CONIN$, CONOUT$, PRN, AUX, NUL, COM1 to COM9, LPT1 to LPT9, desktop.ini, _vti_ If they have to restrict those because some user input is going straight into their FS, then they mucked up. Probably should have been given a safe ID (perhaps uuid4, perhaps something more like a digest of the channel name instead of using the user input directly. For me it's a smell when someone says "You cannot use these characters". I automatically think "Why not? You're not using this unencoded or plaintext, right?" eg passwords, or usernames, or content that will show up on a webpage like a comment or such. This all being said, perhaps it's just an easter egg gone sideways... Perhaps they were just trying to have a bit of fun :)
- TacticalCoder 3y agoIt's bad, ok... But honestly what's the goal? To let people name anything, including the name of a channel, anything they like, like, say: "rm -rf /*" Wait, I've got better: that rm -rf, but written "fr- mr" with RLO left/right overrides. Surely that is something to aim for because nothing shall ever go wrong? Thankfully having a file named https://example.org https://example.org is illegal in Linux (and Windows too right?). Seriously: is this a problem of you? And if it's a problem, where do you draw the line? What about codepoint 0? What about Hangul fillers and RLO characters: do you think applications who refuse these do suck? There are, thankfully, limitation on what filenames can contain. And I think the restrictions aren't anywhere near restrictive enough. Same for usernames, same for channels, same for oh-so-many things. Does anyone really find it problematic that, say, Twitter only allows visible alphanumeric characters and underscore? (and 15 chars max) This seems very smart to me. I take that any day over longing for people being able to use poop emojis in their usernames and channels names.
- dylan604 3y agoI've found it better to use dd to wipe out data than an rf.
- aidenn0 3y agoWhile you can't have a file named https://example.org https://example.org you can absolutely have a path like that, as internal duplicate slashes are ignored and you can have a directory named "https:" with a file named "example.org"
- deleted 3y ago[deleted]
- hn8305823 3y agoHow I read the headline: "some horrible $MS product I don't use does some horrible $MS-like thing"
- aposm 3y agoAnother fun observation in that page - You can only have up to 20k max participants in a Teams live event. The footnote says you can do larger events with Microsoft Stream, but following that link says Stream live events are deprecated, and the alternative is Teams. Hmm...
- xg15 3y agoMS Teams channel names can't contain device names* Still incredibly sad, but not as insane as if you couldn't use the names inside a chat.
- wizofaus 3y agoThe only thing defensible there is that channel names can't end with a period - the same should be true of all URLs. Kids especially when told to type in a URL will put the period/full stop after it in the instructions they're reading from then wonder why it doesn't work...if it simply wasn't allowed browsers could just strip it off.
- hunter2_ 3y agoSimilarly, when drafting some sort of communication (email, documentation, etc.) one might have a URL as the last "word" of a sentence (or comma-delimited clause, etc.) and apply typical rules of grammar that say not to use a space between the last "word" and the subsequent punctuation. Then upon saving (or upon viewing, or sometimes upon hitting the space bar, depending on implementation) the automatic linkification kicks in, and in my experience enough of them aggressively trim such punctuation (period, comma, etc.) before setting the href that people can get away without thinking about this, but some linkification functions end up keeping it, yielding a 404 error when clicked. High-usage products like email clients and chat apps tend to aggressively trim, while lower quality products like ticketing systems tend not to, as far as I can tell.
- red_hare 3y agoReminds me of the rumor that the reason it went "Windows 7", "8", "10" and skipped "9" is because the fear of a codebase that went: if(version.StartsWith(“Windows 9”)) { /* 95 and 98 */ ... }
- fantyoon 3y agoIs the Windows version ever exposed as a string in the Windows API? Seems strange in my mind, but I have no experience with Windows. On the one hand it sounds like something Microsoft would do for backwards compatibility, but on the other hand it seems like a weird API to provide. I found GetVersion[1] but that returns the version as two numbers. [1] https://learn.microsoft.com/en-us/windows/win32/api/sysinfoapi/nf-sysinfoapi-getversion https://learn.microsoft.com/en-us/windows/win32/api/sysinfoa...
- Phrodo_00 3y agoI don't know if the rumor is true, but even if Windows itself doesn't provide an API that looks like that (I also looked around real quick and didn't find anything), it's not unreasonable that there could be libraries that provide the version that way.
- TheRealSteel 3y agoThe rumour is not true, despite reddit's insistence. Windows exposes it's version is a series of numbers, and even if it didn't, Windows 9 could have returned "Windows Nine", "Window v9" or loads of other things.
- deleted 3y ago[deleted]
- IshKebab 3y agoYou're imagining that all developers do things properly. I've seen Bash code that used a regex to get the first two digits from `python --version`. Hopefully they'll never release a Python 3.10!
- CSMastermind 3y agoSome of those limits look unreal to me. Do they really limit you to 200 people in a private channel?
- jiggawatts 3y agoPretty soon we’ll need historians to explain this to younger generations. Maybe alongside the school of computer science at universities we’ll have a school of computer archeology and a school of computer ethics where we’ll be taught not to use negative reinforcement for AI training…
- boffinAudio 3y agoMy favourite way of infiltrating/exfiltrating back in the day: c:\> copy CON: COMMAND.COM <furious streaming begins>