ryanmolden

Joined 15 years ago

Karma
1,526
Submissions
325
Member since
Feb 11
I break stuff in Visual Studio and occasionally try to help people extend it.

Contact: [email protected]

Github: http://github.com/ryanmolden (not a lot there at the moment. One day I will post a number of other things I am/have been working on...one day).

[ my public key: https://keybase.io/ryanmolden; my proof: https://keybase.io/ryanmolden/sigs/BoeDiGIsYjXrgN3zOnFHi_fWb_qC3OEeGQNCGmeeHuY ]

View on Hacker News

Recent submissions

Comment · 12 years ago
Far and away the biggest problem with the background/foreground issues is COM and its apartment models. A large part of some of the core pieces of Visual Studio are (still) written in native code and are STA bound objects (mostly when they don't really need to be, but that's another discussion).

Converting off of STA in legacy code is extremely difficult due to the transitive nature of it as well as the fact you likely have very large and complex types which were never written to be thread-safe because the STA protected them from that (let's not talk about re-entrancy though :)).

It is getting better since managed code has MTA semantics by default, but even with async code all it takes is one person calling Wait on a Task on the UI thread...

A huge sync API surface that is publicly callable also doesn't help. Even if you want to make things async under the covers you generally can't since callers are expecting synchronous semantics and there is no (good) way to make work async, present a sync calling surface to callers, and not block the UI thread (if you say nested message pump, you lose :P)

Comment · 13 years ago
There is, iirc, also a time limit between when an investigation begins and one an indictment is filed. The idea being to prevent the government from simply having someone under investigation in perpetuity. I suppose the ADAs COULD try and time the indictment against unrelated pop-culture events, but in my experience it seems so unlikely as to be mostly the stuff of movies. Delays more frequently where due to problems getting financial records or untangling complex webs of them, problems locating willing witnesses, problems with witness intimidation, etc..
Comment · 13 years ago
Grand juries sit for 18 months, so that would be one hell of a long game.
Comment · 13 years ago
As someone that served on a federal grand jury, no. Well, at least not vocally, I presume people internally weren't basing their votes on pop culture but saying something else out loud. Then again the strength of most cases that make it to the grand jury, from what I saw, are fairly strong, and the burden of proof is lower (since indictment != conviction). If the case is weak the ADA's wouldn't even bring it to us.
Comment · 13 years ago
Yes, not to mention that it simply means people that don't fit their pedigree filter are available. I have met brilliant hackers from MIT/Berkeley/et al, I have also met average hackers from those schools, and brilliant hackers from other schools. My experience leads me to believe the correlation between brilliant hacker and school (if any) is positive, but not dominating. The again maybe that is just me hoping, not having come from their vaunted halls :)
Comment · 13 years ago
have any links to the Connect issues in question? I am not doubting their existence, just trying to understand how they fell through the cracks. There are multiple levels of filters before they get to the product teams, mostly because of volume. I have seen people file Connect bugs against non-MS products, even complaining their own product crashes and it is Microsoft's fault (that one turned out to be a ref-counting issue in their code). I don't necessarily like the filters, but having seen it unfiltered I appreciate it, since otherwise we would have time for little else.
Comment · 13 years ago
Would you wear a lapel camera that recorded your entire day and uploaded it in real time to the police? Why not? Something to hide? More seriously, my objection would be that assuming everyone is guilty or needs to be monitored is a weird state of governance. Crime exists, it always will regardless of level of monitoring. So the discussion is about what are the reasonable tradeoffs between privacy and crime prevention/solving. I think 24 hour surveillance is too far for the gain it may bring. As others have pointed out, the government also can have...interesting interpretations of who "the criminals" are (see infiltration of civil rights groups in the 60's by the FBI for example), and has shown, even recently, that their idea of oversight is really "theory only" and they don't appreciate actual oversight. Giving broad powers to such groups is a very bad idea.
Comment · 13 years ago
Because one can buy success? Like Google+? Or a lot of things Microsoft has tried recently? I realize, all else being equal, a threat of a major investment by a deep pocketed company shouldn't be taken lightly, but the idea that Google can "throw a billion dollars" at a market segment and thus dominate seems like wishful thinking by management.
Comment · 13 years ago
I talked with someone internally that works on this, he said:

I can type { and } on a Swiss keyboard which is a AltGr + ä and AltGr + $.

What keyboard layout were you seeing issues with? Looking at Wikipedia it looks like it would be South Slavic Latin based on your mention of Alt Gr+N?

You can mail me privately if you wish (mail in profile).

Comment · 13 years ago
I'm sympathetic to this as I may know people who work at various DOD subsidiaries, and they are good people. That said, to deny there are no sociopathic power seekers in these organizations is just naive. Giving an absolute power that can so easily be abused to any organization is a terrible idea. Even if today they are lead by a metaphorical holy, righteous person, tommorow they may not be, and when such a change occurs it won't be announced like some cartoon villain holding a press conference declaring their evil plans for all to see. I agree that congress, at least certain members of it, those privy to this information, have no legitimate claim to ignorance and outrage (okay, maybe the former), but I see the bigger problem being a program like what is alleged is even allowed to be set up. They claim there is strict oversight/auditing of data, and while I have no doubts this is technically true, I highly doubt it is the story "on the ground", just based on my knowledge of human nature and large scale organizations.
Comment · 13 years ago
It says can be audited. I suspect the number of times that has been done is vanishingly small, perhaps only on Snowden, after his revelations :) It smells to me like plausible deniability. Claim you have set up a system where things can be audited, don't ever answer how frequently it is done or what the penalty is for abuse of the system. Top secret and all. This kind of system really should freak people out. I imagine it would be a great blackmail info system if people start speaking against the govt or "causing problems". I can imagine public figures don't want to be publicly shamed for their online activities, gambling, porn, affairs, etc...
Comment · 13 years ago
Best of the best that apply to Google. Or in other words, their hiring process is "Hire the best people that apply here", or, you know, the hiring policy of every company in the world. You could argue they uniquely attract smart people with some kind of high IQ gravity centered at the Googleplex, but that seems unlikely. Makes for good marketing copy though.
Comment · 13 years ago
There is also some trickiness around when things get executed. If you return an IEnumerable<T> that is really a LINQ query, and the caller doesn't immediately enumerate it, they run the risk of getting exceptions when they do enumerate if you mutate the collection the query runs over. You can of course force its evaluation, but that also loses some of the benefits of the laziness. Bring in multi-threading and even if you properly synchronize collection access (and that is hard to do without custom collection types, since LINQ is like the honey badger w.r.t. synchronized access) you can still see the collection modified exceptions talked about above.
Comment · 13 years ago
Well, I wouldn't say it should be expected during builds. In the past the build architecture was somewhat questionable, i.e. they ran builds synchronously on the UI thread, which works fine if your build takes like 50 ms :) I don't work on the project build team but I believe most languages now build off the UI thread, and any that have long sequences of activities they are doing on the UI thread should still be pumping to prevent UI lockup. That said, running your own pump in an app as complex as VS is...not something to be undertaken lightly, so it is possible their pumps are not correct or their 'in between pump' tasks are taking far longer than they thought/expected. If you can repro it even without repro steps I can give you some instructions on getting a perf trace I could take a look at, they generally point to the culprit pretty clearly.
Comment · 13 years ago

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton