HNHacker News
TopNewBestAskShowJobs

hyperrail

1,743 karma · joined June 21, 2011

Hi! As of 2019, I currently happen to be a software developer at Microsoft.
submissionscomments
hyperrail··on The End of Finale
Indeed, I have heard that at least early versions of Finale had painfully unmaintainable code that severely slowed its development.

This supposedly was/is in part because Finale's original author Phil Farrand [1] was a musician turned self-taught programmer and Finale was only his second software product.

[1] https://philfarrand.com/biography/

hyperrail··on Audit finds NYPD spent thousands of police hours on unconfirmed gunshot alerts
These news reports quote responses from other interested groups like the New York Police Department itself, the New York Civil Liberties Union, and ShotSpotter, Inc.:

https://www.cbsnews.com/amp/newyork/news/nypd-shotspotter-re...

https://www.nytimes.com/2024/06/20/nyregion/nypd-shotspotter...

Note that the NYPD's leader, the New York City police commissioner, is appointed by and answerable to the mayor. Mayor Eric Adams supports the ShotSpotter gunshot alert system, which may explain the NYPD's position.

Also note that this audit is published by the New York City Comptroller's office. Both the mayor and comptroller are directly elected by the people, meaning both Adams and Comptroller Brad Lander are politicians as opposed to nonpartisan bureaucrats/civil servants. That may have something to do with Lander's framing of his office's report.

hyperrail··on Tax consequences of WIN95 team members keeping a piece of software for testing
Fringe benefits not specifically excepted are also taxable wage income in the United States, but I don't think employers are forced to gross them up at the highest marginal tax rate or are otherwise discouraged from giving them out in lieu of cash.

The USA's income tax agency, the Internal Revenue Service or IRS, has a whole booklet to help employers figure out how to withhold taxes for fringe benefits:

https://irs.gov/pub15b - Publication 15-B, Employer's Tax Guide to Fringe Benefits

It discusses the de minimis exception mentioned in the originally linked page, as well as exceptions for some meals - important if your employer gives you free or discounted cafeteria lunch or restaurant lunch discount coupons.

hyperrail··on ARM64EC (and ARM64X) Explained
The same place you download the x86 build: visualstudio.com

See: https://devblogs.microsoft.com/visualstudio/arm64-visual-stu...

hyperrail··on Numbered Musical Notation
Personal story: Some of my relatives in Thailand play the piano or electronic keyboard as a hobby. Almost all their "sheet" music score books are printed in this notation, but some of my western friends didn't realize it was music at first until they saw the lyrics.

Later on, I learned that country music in the US uses a somewhat similar "Nashville System" [1], but I believe that system doesn't let you span multiple octaves the way this system does.

[1] https://en.wikipedia.org/wiki/Nashville_Number_System

hyperrail··on How can the state prevent Internet “viewpoint foreclosure”?
Part of a series summarizing a law review article by the same author:

Nicholas J. Nugent, The Five Internet Rights - https://nugent.s3.amazonaws.com/public/Nugent+-+The+Five+Int...

(previously posted to HN but with no discussion as yet: https://news.ycombinator.com/item?id=37309248 )

hyperrail··on A Case of the MUMPS (2007)
Today's The Daily WTF is very direct, usually just one intro paragraph and then the wacky code or process. Maybe more your speed?
hyperrail··on Microsoft employees are hooked on the company’s training videos?
It's interesting: as of when this comment was posted, 3, and maybe 4 of the 5 claimed Microsofties in this comment thread (including myself) aren't the best fans of these ethics training videos.

Which is definitely not a common opinion within Microsoft - they are truly wildly popular, and even the people who don't like them use themes from them as inside jokes that need no explanation. (Examples: All the threads on MSFT Yammer about supposedly insecure or unethical practices - "Did Nelson come up with this??" And the person in the linked news story who dressed up as Nelson for Halloween - I remember how hilarious that was when it got posted on Yammer!)

I wonder if this is just a bit of randomness. Or perhaps this site tends to attract more curmudgeons...

hyperrail··on Microsoft employees are hooked on the company’s training videos?
https://www.youtube.com/watch?v=5UyHHsCmtoc <-- This local TV news story includes clips that give a bit of a taste of these Microsoft ethics training videos.
hyperrail··on Microsoft employees are hooked on the company’s training videos?
I find these Microsoft ethics training videos quite cheesy, but I appreciate that they try to keep your attention by falling into neither of the buckets you mentioned. The originally linked news story goes into that quite a bit.

As an alternative, Microsoft provides transcripts of all these training videos, which you can read instead of sitting through the videos themselves. Feels much quicker especially if you don't like them.

hyperrail··on Microsoft employees are hooked on the company’s training videos?
You can always go back and watch the old videos - I think that you're expected to anyway, unlike the pre-Nelson SBC trainings. CELA figures the policies being taught don't change that much, so they no longer repeat all the material in the same detail between seasons/fiscal years.

* Microspeak decoder: CELA is the legal department (Microsoft Corporate, External, and Legal Affairs); SBC is the abbreviated original and formal name of the Microsoft Trust Code (Standards of Business Conduct).

hyperrail··on How Should Compilers Explain Problems to Developers? (2018) [pdf]
> if the error message suggests a change, one of the risks is that such an edit can make the error go away, but the code will not be correct. [...]

"Error messages: diagnostic is preferable to prescriptive" [1] is a riff on a similar theme, though the author of that blog post is focusing on error messages for Microsoft's C# compiler, which are more likely to be intended for experienced professional developers, so he is coming at the problem from a different perspective than the student-focused one of the paper you mentioned.

[1] https://web.archive.org/web/20060720004516/http://blogs.msdn...

hyperrail··on The destructive new logic that threatens globalisation
The Financial Times had an interesting, and more optimistic, take on this a few months ago:

Is US Industrial Policy Undergoing Japanification? - https://www.ft.com/content/5c2f8bd2-e586-435c-9a0c-2ec165521... (archive.today: https://archive.is/ZGTxl )

The author makes the point that by adopting protectionism to subsidize new or ailing domestic industries that politicians and their voters or donors favor, the US is doing what it accused Japan of doing for many years. But he says there is a contrast: Japan was always looking for an economic advantage in its industrial policy, while the US approach is not mainly about creating/saving jobs but about resisting a particular rival and potential enemy, China, and is targeted to that end.

The implication is despite the apparent irony of hypocrisy, the United States is not actually turning its back on free trade, forever or in every context.

hyperrail··on How the Steam Deck breathes life into underrated old games
Yup, Northstar lets you self-host multiplayer servers for Titanfall 2, with non-standard game modes, settings, and map rotations. And with the Northstar client (modded TF|2 app) you can access a server browser for Northstar servers, so you don't need to go through the official servers at all.

Northstar first got really popular in a period when the official Titanfall 2 servers were extremely unreliable - you'd either be stuck matchmaking forever even with a supposedly large number of players online, or you'd start a game with 12 players and be lucky to have 3 or 4 of them still connected by the end. Most people blamed the problems on DDoS attackers, and although the game developer Respawn acknowledged the problems, they never really delivered a server-side or client-side fix for them. So, the only enjoyable way to play TF|2 on PC was with Northstar.

hyperrail··on How the Steam Deck breathes life into underrated old games
Oh, that's great to hear that Titanfall 2 runs on Steam Deck (apart from that crashing/over-syncing problem).

I'm guessing you own the game on Steam and not from EA/Origin? Are you using the base game or Northstar? If Northstar, did you have more trouble setting that up than on your Windows PC?

hyperrail··on Always use [closed, open) intervals
I like Raymond Chen's formulation of this point:

> Good advice comes with a rationale so you can tell when it becomes bad advice. If you don't understanding why something should be done, then you've fallen into the trap of cargo cult programming, and you'll keep doing it even when it's no longer necessary or even becomes deleterious.

from: https://web.archive.org/web/20100104031036/http://blogs.msdn...

hyperrail··on Nonprofit Hospitals Put Up Obstacles to Help Needy Patients
Archive.today link: https://archive.ph/A1M2G
hyperrail··on HP 12C English Calculator
> It's almost as if the C-64 were the favorite tool for writers, and Commodore still made it just because of that.

Many lawyers in America still use WordPerfect, and I suspect Corel still makes and updates it for that reason :-)

I've heard from WordPerfect fans that it gives much more precise and reliable control over formatting than Microsoft Word, very important for picky court clerks and judges. WordPerfect also has a "reveal formatting codes" function, the equivalent of showing the HTML tags or Markdown syntax in line with the formatted result.

I haven't used WordPerfect in years, not since some WYSIWYG version for DOS (6?), so I don't have a personal opinion on whether it still deserves its popularity today.

hyperrail··on HP 12C English Calculator
I think English just refers to the language for the package labels and manual. Nothing to do with the calculator itself.
hyperrail··on Notes against note-taking systems
I'm having some trouble understanding what note-taking systems the author is attacking. There are some hints:

> Getting lost in your knowledge management system is a fantastic way to avoid creating things.

> All of the above applies to reading books about note-taking, taking courses about note-taking, and watching videos about note-taking.

> I am waiting for any evidence that our most provocative thinkers and writers are those who rely on elaborate, systematic note-taking systems. I am seeing evidence that people taught knowledge management for its own sake produce unexciting work.

It sounds like Mr. Chapin is referring to formalized techniques or processes for format and organization of notes. But he doesn't give any examples, and I'm not familiar with the ones he hints at - I've never watched any YouTube videos on note taking or read any books on organizing your thoughts.

When I was in college, I took detailed notes in paper notebooks, and still do so occasionally when I'm sitting in a lecture. Otherwise, I send narrative emails to myself, write more business-style notes in Microsoft OneNote, or doodle in a small memo pad. It's clear to me that this is not what he means by a "note-taking system," but what is?

hyperrail··on US Drought Monitor
Take note that the map is partly based on opinion:

https://droughtmonitor.unl.edu/About/WhatistheUSDM.aspx

> Who draws the map?

> Several authors from the NDMC, NOAA and USDA create the map. They take turns, usually two weeks at a time.

> How do they figure out where and how bad drought is?

> This is what makes the U.S. Drought Monitor unique. It is not a statistical model, although numeric inputs are many: [...]

hyperrail··on Tell HN: You can't hire because you don't post salary ranges
https://www.coloradoexcluded.com/ <- last year, when this requirement began, several companies started refusing to accept job applications from Colorado residents to avoid having to post salary ranges, and someone made this webpage to name and shame these employers.

It seems to have been less active lately, but based on what you say, that may not be because employers are responding to the incentive...

hyperrail··on Ask HN: Has anyone here worked on the Windows kernel?
It's also possible that you could be working in a department that focuses on writing bug fixes for released versions of Windows, instead of writing features and fixes for the next version. The bug-fix department will often be called something like "servicing" or "sustained engineering" (I believe it's currently called Windows Servicing and Delivery, or WSD).
hyperrail··on Ask HN: Has anyone here worked on the Windows kernel?
Salaried office workers receive far poorer wage and hour protections in the U.S. than you may be used to. Overtime above 40 hours per week is often unpaid, as is the case at Microsoft, and no amount of paid vacation is guaranteed by law. (Workers paid hourly do get overtime pay at 1.5 times the normal wage or higher.)

Microsoft's work/life balance is good in my experience; managers respect your time, product deadlines rarely or never cause long-hour rushes, and if your role lacks an on-call rotation then you won't be woken up in the middle of the night. But other companies may be far worse, and Microsoft is big enough that one person's experience never truly generalizes.

For time off in particular, as of my last experience 2 years ago, MSFT's US policy on paid time off was stingy by American tech company standards:

* There is no scheduled period of the year where everyone gets paid time off. (LinkedIn has 2 such weeks a year but it manages its HR independently of the rest of Microsoft.)

* You accumulate 3 weeks of vacation PTO per year of work for your first 6 years at the company, then 4 weeks per year for years 7-12, then 5 weeks per year for years 13+.

* Unused vacation days expire at the end of the calendar year following the calendar year in which you accumulated them.

* When you leave the company, you get a "vacation cash-out:" you are paid a lump sum equal to all your unused, unexpired vacation days.

* In addition to vacation, each calendar year you get 2 weeks of paid sick leave and 2 "floating holidays" to use like vacation days.

For comparison, at Google you accumulate 4 weeks of vacation per year starting just in year 2, while at Netflix and many smaller companies you get unlimited vacation at the cost of no cash-out.

In practice, there is more leeway at Microsoft on PTO than this policy allows. Even when I had an otherwise poor relationship with my manager, they still looked the other way when I went on Christmas/New Year's week vacation without filing an absence request or using up my vacation days. And I have heard of divisions where after a particularly stressful and overtime-heavy year, the division Vice President told everyone to take such an off-the-books holiday vacation.

hyperrail··on Ask HN: Has anyone here worked on the Windows kernel?
I think what I meant to say is that sometimes even telemetry and logging is unavailable to you. In my example, you might ask for more dumps for your Windows component or Microsoft first-party app on Watson Portal / Get More Data, but even after a few days of waiting you don't get any more, or only one more, because the issue occurs in the wild too rarely to show up in telemetry, or repros often but doesn't reliably produce a useful dump.

As an aside, if you are a third-party Windows application developer, I highly recommend you register your apps with the Windows Desktop Application Program: https://docs.microsoft.com/windows/win32/appxpkg/windows-des... - this will give you access to the same app reliability telemetry, including user-mode crash dumps (.DMP / .CAB files), that Microsoft has. This is only the latest of several iterations of this data access over the years, but it and its predecessors are still badly underused in my non-Microsoft experience.

hyperrail··on Ask HN: Has anyone here worked on the Windows kernel?
An advantage of working at Microsoft that only other huge tech companies can match is that you'll get the chance to interact with many different people, some of whom will inspire outright hero worship among you and your direct coworkers. Those interactions could be in email discussions (having to send endless emails to random people or unarchived mailing lists to get things done or find things out is the curse of Microsoft life), or in API review meetings, or just water cooler talk.

Getting the chance to work with people like that was one of the highlights of my Microsoft career. Some of them are famous or semi-famous outside Microsoft, like David Cutler (mentioned repeatedly in this comment thread), while others are not known outside MSFT at all but arguably should be, while others are respected among a small geeky community (I'm thinking here of 2 Linux kernel subsystem maintainers who joined MSFT after making their names in Linux, and continue Linux work today). If making those connections is something you'd want to do as well, I'd definitely see that as a big plus of an MSFT job.

hyperrail··on Ask HN: Has anyone here worked on the Windows kernel?
Heh, I wish that had ever been the case for me. Sometimes it feels like WinDbg freezes every other command. Plus, getting it to reconnect to a kd after it freezes and I kill it was such an exercise in frustration that if the target machine were my own repro box instead of a stress break remote, I would have just hard-reset the machine or (if it were a VM) restored it from snapshot.
hyperrail··on Ask HN: Has anyone here worked on the Windows kernel?
Even if you do work on Windows in-box code only, it might not be so easy. Here's another issue you raised with your old job:

> 2. Debugging exclusively via metrics and logs, since I can't just attach a debugger to a running server.

I find debugging Windows issues fun, but it might not be for you. On rare occasions, you might be lucky even to have telemetry and logs, for customer issues that can't be reliably reproduced. "We noticed that 30% of our module's crashes in the last Windows Insider Preview Dev build had this new stack, so we used Watson Portal to request more crash dumps from devices that ran into that particular crash, and a week later, we've accumulated this set of dump cabs...."

On the other hand, if you get an automated email saying "test case XYZ broke due to a crash in your module", you'll probably get a live kernel debugger remote - an email link or copy-paste command to open a kernel debugger on the dead VM, preserved for your debugging. But of course, bugs aren't necessarily caught that early, and even if they are, finding things via kernel debugging is a needle-in-a-haystack problem because you're debugging the entire computer, not just one process.

hyperrail··on Ask HN: Has anyone here worked on the Windows kernel?
One reason I specifically suggest you confirm what your job is is that the teams that work on Windows in-box kernel-mode components aren't just Windows-specific teams anymore. They are part of the Microsoft Azure Edge + Platform division.

That name is misleading, but only partly so: shipping the Windows desktop and Windows Server products are a major part of that division's mission, but so is building Microsoft's internal-use Linux distribution CBL-Mariner, all of Microsoft's embedded and Internet of Things software products (Azure ThreadX RTOS, Windows IoT, etc.), and various Microsoft-internal software and hardware products.

It's very possible that the team you'd be joining would be working on an Azure product or Windows kernel-mode code for an Azure product, which means all your 5 issues could be a concern, especially:

> 4. The insane amount of work required to stand up even the smallest microservice: infrastructure provisioning, certificates, security reviews, GDPR compliance, etc.

> 5. Anything I build will end up paging some poor soul at 3am some day when something is down or under heavy traffic.

(Point 5 is even worse in Azure because you will get paged yourself if you're on-call. You can't just assume that the operations or site reliability engineering teams will take care of problems without pulling in the original engineers, especially when the product is new and buggy :)

hyperrail··on Ask HN: Has anyone here worked on the Windows kernel?
Here's my thoughts based on working on Windows in-box code (user mode only, though) across 2 different Windows component teams, totaling about 5 years with a break in the middle. (Split into multiple comments for readability. Some parts removed because other people said it better.)

Most importantly, MAKE SURE YOU KNOW WHAT THE JOB IS! Microsoft people don't try to be dishonest, but there can be misunderstandings between you and your future coworkers about your role, and if you take a job that turns out to be different from what you expected, you will be unhappy.

If you haven't already, you should ask the hiring manager more about what the team does. Try to get enough specifics that you might not know everything the manager refers to, but can easily Google what you don't know: "For example, in Windows 10 version 2004, we shipped the API and implementation for the Windows hypervisor feature that lets third-party VM host software like VirtualBox force their VM guests' virtualized RAM to be paged into the host machine's physical RAM all the time." (Not an actual feature, at least as far as I know.) At this level of detail, you'll be able to judge whether the work is really what you think it is.

Talk to your other interviewers to learn more about the work and the team, if they gave you their contact info or otherwise seemed inclined to hear from you. 3 out of 4 of them are likely going to be your peers, and the 4th is either the hiring manager, another mid-level to senior leader, or a team architect - all will be at least close enough to your team that they won't give you vague generalities.

← PreviousPage 2 of 7Next →