5 ms·
Heh, nope, `timebuild.pl` is the canonical entrypoint for an "official" Windows build, and has been for a very long time. It's a hideously elaborate dependency
by mdriley 6y ago
Heh, nope, `timebuild.pl` is the canonical entrypoint for an "official" Windows build, and has been for a very long time. It's a hideously elaborate dependency resolver and task runner that is responsible for tying together all the various build steps necessary to create an installable OS.
refs:
https://web.itu.edu.tr/~dalyanda/mssecrets/other/Startup.htm https://web.itu.edu.tr/~dalyanda/mssecrets/other/Startup.htm
In order to perform these operations, execute the following command from within a razzle window, whose current directory is %sdxroot%.
· perl tools\timebuild.pl
https://careers.microsoft.com/us/en/job/869511 https://careers.microsoft.com/us/en/job/869511
Experience with “Timebuild”, razzle, and the Windows build system
- saagarjha 6y agoThat job description is strange to me–how could they ask for experience with an internal tool? Is it just a filtering mechanism to hire ex-Microsoft employees? This seems like an Apple job posting asking for experience with XBS, or an Amazon one asking for Brazil familiarity–unless this has been published in some form to the public, like Google and Facebook have done? > #gamingjobs Heh. Someone needs to tell Microsoft recruiting to dial back the "fellow kids" :P
- bri3d 6y agoMost large companies, for various legal, policy, and compliance reasons, require job requisitions to be posted externally in order to be posted for internal hiring and vice versa. This job listing is probably intended to make an internal hire.
- iso8859-1 6y agoBut why not list it as a "required" qualification then? This way, people will apply because they think it isn't necessary.
- ghaff 6y agoPeople will apply anyway because so many requirements aren't. Also, people do boomerang to companies they've worked at before.
- thisisnico 6y agoI've seen companies list x number of requirements and hire someone that doesn't meet any of the "requirements".
- throwaway0a5e 6y agoBecause some middle manager is likely filling out a web form with zero regard for accuracy because it's just a formality they already have someone in mind and HR is gonna bin all the resumes anyway.
- kevin_thibedeau 6y agoIf that someone is a guest worker the job posting is legally required.
- easton 6y agoThey do it if there is a candidate(s) internally they want to hire, but HR requires (either because of laws or internal policy) that they also look for outside candidates. The outsiders won't pass the screening because they don't have experience with the required tool, and the team gets to hire the person they wanted anyway.
- saagarjha 6y agoI wonder if you can still apply if you're managed to sus out the requisite experience through reverse engineering…
- R0b0t1 6y agoDepends, some places only want to count experience if it can be linked to hours you billed.
- Nextgrid 6y agoHow would this comply with the law if an external candidate would have no chance to pass anyway (due to work experience required with an internal tool not available to the public)? Wouldn't posting a job that an external candidate has no chance of obtaining still violate the intent of that law?
- ponker 6y agoThere can be external candidates with that qualification. In general the standard is “Bona Fide occupational qualification” which means that you have a legitimate reason for the requirement. For a college hire this would likely not suffice ... you can teach a college hire what they need to know. For the engineering director running the project it very well might be.
- yodsanklai 6y agoIncidentally, a bunch of people outside Microsoft had access to these tools (e.g. academics).
- aYsY4dDQ2NrcNzA 6y ago
- cartoonfoxes 6y agoSeems perfectly legitimate to me. Returning, former employees, are a thing.
- vlang1dot0 6y agoWho outside of Microsoft is going to have experience with the Windows build system? Is this like recruiters looking for 20 years of Go experience lol?
- mike_d 6y agoLots of people who have never worked for Microsoft have experience building in the Windows codebase. Large OEM partners that need to do driver development, academics, and government customers are all granted source access licenses.
- deleted 6y ago[deleted]
- iso8859-1 6y agoWhich build of Perl is used inside Microsoft? ActiveState? Strawberry?
- kbenson 6y agoProbably ActiveState.[1] Microsoft had surprisingly good support for Perl back in the day, and I remember running into knowledge base articles or documentation that had Perl snippets in examples of how to automate some things. 1: https://www.perl.com/pub/1999/06/activestate.html/ https://www.perl.com/pub/1999/06/activestate.html/
- derefr 6y agoHuh. From the referenced memo: > The complete list of depots follows [...] > Admin, Base, COM, Drivers, DS, EndUser, InetCore, InetSrv, MultiMedia, Net, PrintScan, Root, SdkTools, Shell, TermSrv, Windows ...which bears a striking resemblance — both back then and to this day — with the root-level categories that divide up the features in the "Add or Remove Windows Features" chooser in the Control Panel. I guess those root-level categories in the chooser (which were always pretty meaningless) turn out to represent which particular Microsoft source repo the component's code can be found in. As a wild guess, the "Add or Remove Windows Features" chooser is the way it is, because it's the runtime representation of what's actually mostly a build-time feature selection system; where disabling a component at build time speeds up your build, at the cost of that component being forcibly greyed out in the "Add or Remove Windows Features" chooser for that build. Basically the same as disabling the building of a kernel module in a Linux modular build. As Raymond Chen would say, "it makes sense with kernel-tinted glasses."
- mdriley 6y agoEr, a few problems with the reasoning here: 1. Windows developers did not build large parts of the product on any regular basis. Windows took ~18 hours to build on incredibly powerful build lab hardware -- as soon as it took longer, it was time to buy a new build lab. Incremental rebuilds were notoriously flaky, at least in the days before https://github.com/microsoft/BuildXL https://github.com/microsoft/BuildXL. The most common dev loop that I saw was to install a recent dogfood build (so APIs and binary interfaces were reasonably recent) and then repeatedly rebuild and clobber binaries on that install. 2. The only real build-configuration options for timebuild were architecture and compile mode (dbg, chk, fre, opt). There wasn't an option to build or not build parts of the tree. 3. raymondc's reference to "kernel-colored glasses" is about viewing things from the kernel side of API guarantees. This is more an applied lesson in Conway's Law.
- derefr 6y agoRe: the second point, I wasn't hypothesizing passing a runtime option to timebuild, but rather running a build against a local "root enlistment directory" that has the Base and Windows depots synced, but not necessarily all the depots for the other components. I suppose this wouldn't have resulted in an installable release, though. (At least on its own. I guess the populatefromvbl.pl script described in the memo is there to bodge a partial clean build of individual components, together with "the rest of Windows" from some parent release, to form a test build?)
- sterlind 6y agooh god, flashbacks. when I joined Azure Fabric we'd inherited Razzle and all its arcane passes. I still have no idea why; we weren't part of Windows except in name back then. also, what a strange email to be public. not that it's a hot secret, but who cares about sdx outside of MS 10 years ago?
- mulmen 6y agoI've said for a long time that if you could snap your fingers and delete all Perl code in the world the lights would turn off. I didn't realize Windows builds would also cease.