1. 2

    In a world where many/most people used this, there would be a lot of redundant computation occurring.

    I wonder if such a system could/should be built in a way that this could be exploited - effectively memoising it across all users. (In the same way that cloud storage exploits redundancy between users by using content addressable storage on the backend so they only need to store one copy of $POPULAR_FILE)

    e.g. for compilation you’d probably want:

    1. content-based-addressing of the data input (I am compiling something equivalent to foo.c)
    2. content-based-addressing of the executable input (I am running gcc 2.6.1 on x86)
    3. some kind of hash of the execution environment (cpuid flags, env vars, container OS?)

    and probably some other bits and pieces (does executable access system calls like local “current time”). Could probably be made to work if the executables agreed to play nice and/or run inside a decent sandbox.

    It would be challenging, but also very cool, to get this right.

    1. 1

      Gradle has a distributed cache that can probably do that.

      1. 1

        That’s interesting, thank you.

        I was using the example of compilation, but I think the general question is interesting. “We are performing this computation, with this executable code, on this input data, in this runtime environment (which is a special case of input data)”

        If we can determine that (all essential) characteristics of these are the same as a previous run, then we can lookup the result.

        I think there are interesting questions as to what constitutes inputs here (e.g. no-pure things like ‘time’ and ‘network’) and - moreso - what makes the executable code “the same” for this purpose. (What level do you work at - source code, binary etc).

        1. 1

          Gradle has a very flexible task system - you can completely define the relevant inputs and dependencies of tasks by yourself. Often that will just be files, and some dependencies on the outputs of other tasks. The tricky part is usually defining all of them correctly. But once you do that, magic happens - tasks can be cached, and if you set up a distributed cache, it may even be shared amongst multiple machines (devs, CI ,etc) A task doesn’t have to be compilation, can be anything that takes inputs and produces outputs, maybe you want to do some code generation, or whatever. I’m sure there are other build systems that are backed by a similarly flexible high-level task system, Gradle is just the one that I happen to know.

      2. 1

        Llama (https://github.com/nelhage/llama) does a few of these (like content addressing). I have played around with it a bit and its been a joy.

      1. 1

        Once I somehow got systemd and dnsmasq to fight over who owns resolv.conf (on Ubuntu 18.04). First one would overwrite it, and then the other would notice and overwrite it again.

        1. 1

          Control flow recovery is performed using the mcsema-disass tool, which relies on IDA Pro to disassemble a binary file and produce a control flow graph

          Would be cool if this could be ported to use ghidra’s disassembly framework instead, so all the components would be opensource.

          1. 1

            This feature has been requested for a while. We have not had time to implement it, but as the comments in the PR say, we are making progress towards use of more diverse CFG recovery sources.

          1. 1

            I’m one of the developers of McSema and can answer any questions people may have.

            I’d also like to point out McSema’s suite of sister tools:

            • Remill: instruction semantics for ARMv8, x86, x86-64, and Sparc. ARMv7 is in progress.
            • Anvill: Lift binaries with the goal of producing bitcode similar to what a compiler may emit. Anvill is much less mature than McSema and has somewhat different goals (to produce cleaner bitcode versus exactly mimic underlying semantics). Eventually we see the tools sharing a common platform.
            • Rellic: Produce goto-free C source output from LLVM bitcode using Clang’s AST library.
            1. 11

              Bluetooth has been the worst wireless offender. Every device I try with (except an iPhone) its always a frustrating game of degraded performance and random un-pairings where the only solution is to power everything down and start fresh. As the author points out, the custom dongles do work, but I was under the impression they work specifically because they are wireless and not bluetooth.

              The frustrating part is that many mice and keyboards are simply not available in wired versions.

              1. 2

                Never had any issues with Bluetooth on Android, neither on Windows. Only pairing speakers on Linux is a challenge, but this seems to get better over time.

              1. 52

                nine-to-five-with-kids types

                God forbid people have children and actually want to spend time with them.

                As someone with kids, I’m reasonably sure I’m pretty good at what I do.

                1. 40

                  The second statements includes a retraction of sorts:

                  P.S. I have no problem with family people, and want to retract the offhand comment I made about them. I work with many awesome colleagues who happen to have children at home. What I really meant to say is that I don’t like people who see what we do as more of a job than a passion, and it feels like we have a lot of these people these days. Maybe everyone does, though, or maybe I’m just completely wrong.

                  I disagree with them that it’s wrong to see your work as a job rather than a passion; in a system where it’s expected for everyone to have a job, it’s bullshit (though very beneficial for the capitalist class) to expect everyone to be passionate about what they’re forced to do everyday. Nonetheless, the retraction in the second statement is important context.

                  1. 14

                    Owning stock was supposed to fix this, rewarding employees for better work towards company growth. However the employees are somehow not oblivious to the fact that their work does not affect the stock price whatsoever, instead it being dependent mostly on news cycle about the company and their C-level execs (and large defense contracts in the case of Microsoft).

                    1. 8

                      Your appeal to our capitalist overlords here is incorrect. It’s a symptom of capitalism that you have people at work who are just punching in and don’t have a passion for it. If we weren’t bound by a capitalist system, people would work on whatever they’re passionate about instead of worrying about bringing home the bacon to buy more bacon with. Wanting people to be passionate about their work is a decidedly anti-capitalist sentiment, and wanting people to clock in, do their job, clock out and go home to maintain their nuclear family is a pretty capitalist idea.

                      1. 2

                        I agree with you.

                        in a system where it’s expected for everyone to have a job, it’s bullshit (though very beneficial for the capitalist class) to expect everyone to be passionate about what they’re forced to do everyday.

                        That’s true I think, undoubtedly. You can “fix” it by accepting people who aren’t passionate, or by replacing the system where people need a job to survive. I’d definitely prefer to fix it by replacing the system, but in any case, blaming 9-to-5-ers is wrong - they’re victims more than anything, forced to work a job they’re not passionate about instead of going out on whatever unprofitable venture captures their heart.

                        1. 1

                          or by replacing the system where people need a job to survive

                          How do you propose we do that, without literally enslaving people? And without causing necessary but often necessarily low-passion jobs (like sorting freight in a courier company, at 1AM - one of my jobs as teenager) to simply not get done?

                          I mean, what you’re really proposing is that some people get to go on ‘whatever unprofitable venture captures their heart’ while … what? Someone else labours to pay their way?

                          I personally think that it’s entirely reasonable to accept people whose passion isn’t their job, provided they’re professional and productive. There’s nothing here to fix, really, beyond rejecting the (IMO) unrealistic idea that a good employee has to be passionate about their work.

                        2. 2

                          Every time we’ve tried an alternative at scale it’s led to mass murder, or mass starvation, or both.

                          You’re also ignoring the fact that some jobs are just plain unpleasant. I’ve worked some in my youth. It’s reasonable not to be passionate about those; they’re either high paying because they’re unpleasant but skilled, or the lowest paying job because they’re work you do because your labour isn’t valuable in any other way.

                      2. 9

                        As another kind of beef against that line, in my experience, people working crazy long hours on a consistent basis generally aren’t doing it out of some kind of pure passion for the project, implementing a cool amazing design, etc. They’re usually pounding out ordinary boring features and business requirements, and are working long hours because of poor project management - unrealistic promises to customers, insufficient resources, having no idea what the requirements actually are but promising a delivery date anyways, etc. IMO, anyone with any wisdom should get out of that situation, whether or not they have kids.

                        Also IME, those who do have genuine passion to build some cool new thing often don’t work long hours at all, or only do so for a short time period.

                        1. 7

                          Someone I know could easily be working for Google or such, but he works for a smaller, non-tech, local company as a developer, so he can spend his free time building the projects he likes (or the luxury of not having to at all), instead of some absurd scale megacorp thing which will drain all the free time he has. (Or specifically, build the great thing you want to, and not be subject to what say, Facebook wants.) IMHO, it’s pretty smart…

                        2. 7

                          The anonymous author apologizes about this specifically in their follow-up.

                          1. 4

                            The apologies sound like something between a sincere apology for just blindly ranting at it all and an apology for apologies’ sake. It looks to me like the author actually feels (felt) closer to the way he described in the first message then the second. Not all the way, but somewhat.

                            1. 1

                              The apology is also written in an entirely different style. It’s not clear there’s strong reason to assume it’s the same person.

                              edit: reading through the comments, the blog’s owner says: “I won’t reveal how the anonymous poster contacted me, but I am 99.9% sure that unless his communication channel was hacked, he is the same person.” So, ok, it’s the same person.

                          2. 11

                            I know what people the author means though–not all these people have kids though, they’re just the ones who punch a clock from 9-5 and want to remain comfortable and don’t want push themselves to make great things. It’s not that these people want to make bad things, or don’t want to make great things, or aren’t capable of doing great work, they just don’t receive any self-fulfillment from work. I don’t blame these people for acting this way, I’d just rather not work with them.

                            The best dev on my team (by a long shot) is a 9-5 worker who never finished college, but accomplishes more in one day than most devs accomplish in a week or more. He aspires to do incredible work during his time and he exceeds every day.

                            1. 9

                              Once organizations get to a certain threshold of complexity, though, you need to be thinking much more about the incentives that are offered rather than the micro-level of which people want to do excellent things. You have to make it easier to do the excellent thing than not, and that can be difficult, or, in an org the size of Microsoft’s Windows kernel groups, basically, impossible.

                              1. 5

                                The comment was directed at the author’s “9-5 with kids” comment since the author is referring to the contributions of those people. Organizational structure produces different effects on products based on the personalities and abilities of those people within the organization.

                                In general, the bigger the organizational, the less risk-tolerance, but most actions incur some sort of risk. Also, staying with the crowd and doing what you’re told is safest, so inaction or repeating previous actions often becomes the default.

                                1. 2

                                  Good point. It never makes sense to innovate and take risks in a large organization. If your gamble pays off, the pay off will invisibly pump up some vaguely connected numbers that will look good for some manager higher up. If it doesn’t pay off, it’s your fault. So, regardless of how good a gamble it was based on risk-reward ratio, it’s never favorable for you personally. Don’t expect your immediate superior to appreciate it either, even if the gamble pays off, because that person is also facing the same odds.

                              2. 7

                                As an anecdote, the eventually worst workplace I’ve been had a deeply ingrained culture of being passionate about work, and about being part of “a family” through the employer. It’s not entirely a healthy stance.

                                1. 4

                                  I don’t blame these people for acting this way, I’d just rather not work with them.

                                  Why not?

                                  You said they want to make good things, great things, and can do great work. Why does someone else’s opinion of their job matter to you?

                                  1. 5

                                    It’s when people’s opinions affect the work they do. My point is they can do great work, but many don’t. Sometimes it manifests as symptom fixing rather than problem solving because it’s “whatever gets me out today by X, screw consequences later.” Other times it manifests as “I wasn’t told to do this, so I won’t”. When I’ve seen it, it’s often pervasive short term thinking over long term thinking.

                              1. 4

                                I realize it’s chicken and egg, but as a developer I’m still a bit frustrated by needing a physical device to do any porting, and the number of physical devices isn’t high and they aren’t aimed at developers. People have made it work under virtualization, but it looks quite unsupported and hacky. I mean, this guide requires downloading two blobs from somebody’s OneDrive. The cross compilers are freely downloadable, but I wouldn’t feel comfortable posting compiled binaries to anything without having a chance to test that they basically function.

                                1. 1

                                  I totally agree with you, that’s why I suggest that Microsoft should look into sponsoring maintainers and giving away devices.

                                  1. 1

                                    I guess what I’m trying to say is I’d really like an emulator. Giving away devices doesn’t scale - 1000 x $1000 devices is $1m and it’d barely make a dent in the software ecosystem. An emulator lets anyone contribute who wants to.

                                    (Aside: this week I’ve been working on NT MIPS developer tools and fixing issues relating to NT MIPS in my software. I can do that because qemu runs it out of the box. It’s tragic that MIPS has better emulation support than ARM64.)

                                    1. 1

                                      It looks like QEMU has very extensive ARM64 support (https://wiki.qemu.org/Documentation/Platforms/ARM) and has no problem running ARM64 Linux: https://wiki.ubuntu.com/ARM64/QEMU

                                      1. 2

                                        That’s correct, but look at the link in my first post - QEMU can emulate the CPU but getting Windows to run requires a UEFI and a pile of drivers. It’s not impossible to do, I just wish it were available in a supported way.

                                      2. 1

                                        I wonder if offering Azure Virtual Desktops would scale and if they have arm64 Virtual Desktops…

                                        To be honest, Visual Studio on x64 or x86 can cross-compile to arm64 but then you can really run it and no one will release apps without actually trying them.

                                        Thats why I wrote the post, to raise awareness that at the moment it is hard to be a developer on WoA if you want to target WoA. If you want to be a web developer or if WSL works well for you then you’re all set, it works wonders but for building Desktop apps is tricky at the moment.

                                  1. 10

                                    I’m glad there are finally blog posts that mention working remotely isn’t all sunshine and rainbows. It takes a lot of effort to balance home/work life, avoid distraction, and communicate with your coworkers.

                                    1. 7

                                      I’ve worked for five years remotely and I wouldn’t do it again.

                                      Yes, you need discipline, avoid distraction and have a clear separation between home/work, but the dealbreaker for me is how much less efficient/more isolating remote working is.

                                      Isolating from the “having conversations” perspective. A mind-boggling amount of progress is an outcome of having random conversations and random discussions with people in an office, or attending the right meeting or the right devJF or the right event. It’s also the sad reason why large companies spend so much on flying people around countries.

                                      1. 12

                                        I’ve pretty much only worked remotely for the past 7 years and it is awfully isolating. I’d disagree with you on efficiency though - on few occasions where I’d go visit the office I’d spend like 10 hours there and would have 3 hours of real work done. Remote work does display burnout better though.

                                        So I think that if you’re in a rut you’ll do less work remotely but otherwise you’ll be much more efficient. Honestly I cant imagine working in a office. The days are so short already and the inefficiency of the whole culture would drive me mad.

                                        1. 4

                                          I think that main issue with remote work (which I do, and love) is that all kinds of things that are implicit in an onsite office need to be communicated differently. The obvious example is whether or not someone is busy, but other things like who is chatting with who, is there a big meeting going on, and after meeting chit chat. All kinds of signals physical proximity provides simply aren’t there in a remote environment.

                                          Both remote and onsite work and work and have different strengths, in my experience.

                                        2. 2

                                          I agree on the conversations, its one of the things i miss from office work but it certainly seems that depends on personality type. There are people who hate that part the most and find it distracting.

                                          Another thing I just remembered: you also effectively need an extra room in your house/apt/etc to dedicate to work. Depending on where you live, going from N rooms to N+1 can be a very expensive proposition.

                                      1. 3

                                        I don’t understand this post at all. In real life, what matters is how long it takes to determine if one number is the correct one (the eval function), and if that process leaks any information via timing or energy consumption or similar. What’s the point of all this? If you can control the oracle and re-write it for SIMD, why do you need to guess a number?

                                        1. 11

                                          I tried to address this in the blog post since I expected a question like this, but obviously I didn’t make my point.

                                          So the goal of this wasn’t to offer a new (and expensive) way to find whether an oracle verifies a 64-bit number.

                                          The point was to show that problems that at first seem insurmountable or impractical may be well within reach, and that spending some time looking at available hardware resources and how to formulate the problem can make huge difference over the naive approach.

                                          I can’t quite remember the details, but the original impetus for this came from a real issue. We wanted to know which would be faster: to run some analysis passes or just brute force the answer. This led to a discussion about how hard it is to brute force a 64-bit compare, with the original consensus being “wait until the end of the universe”. Obviously, it doesn’t take that long even for a naive approach, so then I got curious about exactly how insurmountable the “guess a 64-bit number” problem was.

                                          1. 2

                                            I can’t quite remember the details, but the original impetus for this came from a real issue.

                                            iirc, it was random numbers used as verifiers; we had someone that we were attempting to persuade to use 128bits for something, and this came up.

                                            note Artëm and I work together!

                                            1. 1

                                              Sorry I missed the point, I was just really confused about how/why one would even think to ask the question in particular.

                                              In my defence, the question basically boils down to “how quickly can I search for a number that equals 7”

                                            2. 8

                                              What’s the point of all this?

                                              Rule of cool, man, rule of cool.

                                              1. 2

                                                @artem says below, it did actually come from a real life issue, so whilst cool, it definitely was more of our “I wonder if…” line of thinking.

                                            1. 5

                                              If someone here can make an OpenCL and/or an ARM NEON version I would be most thankful :)

                                              ARM is particularly interesting since then it’d be possible to do a cost analysis of ARM-based cloud instances, to see how they compare to x86.

                                              1. 4

                                                There is an accompanying github repo with code to reproduce the results: https://github.com/trailofbits/sixtyfour

                                                1. 3

                                                  I think that I/O latency of cloud vs local machine may cause some of the slowdown.

                                                  If possible, could you try the following tests:

                                                  • Build LLVM on a tmpfs mount on both cloud and local.
                                                  • Compare an equivalent x86 cloud offering (say, AWS) against ARM cloud offerings.
                                                  1. 1

                                                    This is why I included time spent in kernel, but sure, why not. Both tests you suggested seem worth doing, so will do.

                                                    1. 1

                                                      Scaleway uses local storage btw, only AWS has networked storage (that’s technically really fast, but the regular tier has some complex burst/throttle things).

                                                    1. 2

                                                      Seems to fly in the face of the reproducible builds movement :) One could compile it for a reproducible build, ensure happiness and then recompile with this for security I guess.

                                                      1. 1

                                                        It was actually one of my counterpoints to reproducible builds. Reproducible builds in deployment = reproducible attacks. The diversity approach makes systems as different as possible to counter attacks. In the big picture, the attacks reproducible builds address are rare whereas the attacks diversifying compiles address are really common. Better to optimize for common case. So, diversified builds are better for security than reproducible builds in common case.

                                                        So, I pushed the approach recommended by Paul Karger who invented the attack Thompson wrote about later. The early pioneers said we needed (at a minimum) secure SCM, a secure distribution method, safe languages to reduce accidental vulnerabilities, verified toolchains for compiles, and customers build locally from source. Customers should also be able to re-run any analyses, tests, and so on. This was standard practice for systems certified to high-assurance security (Orange Book B3/A1 classes). We have even better tools now for doing those exact things commercially, FOSS, formally-verified, informal-but-lean, and so on. So, we can use what works with reproducible builds still an option esp for debugging.

                                                        1. 8

                                                          With load-time randomization you can both have and eat that reproducible-build cake.

                                                          1. 1

                                                            cool idea, Thanks for posting!

                                                            1. 1

                                                              That’s news to me. Thanks for the tip!

                                                            2. 1

                                                              It was actually one of my counterpoints to reproducible builds.

                                                              Running a build for each deployment is extremely impractical. Also, when binaries are generated and signed centrally you have guarantees that the same binary is being tested by many organization. Finally, different binaries will behave slightly differently, leading to more difficult debugging.

                                                              Hence the efforts on randomizing locations at load time.

                                                              1. 0

                                                                The existing software that people are buying and using sometimes has long slowdowns on installs, setup, load, and/or update. Building the Pascal-based GEMSOS from source would’ve taken a few seconds on todays hardware. I think that’s pretty practical compared to the above. It’s the slow, overly-complicated toolchains that make things like Gentoo impractical. Better ones could increase number of projects that can build from source.

                                                                Of course, it was just an option: they can have binaries if they want them. The SCM and transport security protect them if developer’s are non-malicious. The rest of the certification requirements attempted to address sloppy and malicous developers. Most things were covered. Load-time randomization can be another option.

                                                            3. 1

                                                              It looks like the builds are seeded, so it may be possible to reconstruct a pristine image given the seed.

                                                            1. 4

                                                              You can make person to person electronic transfers in the US, they just aren’t free or easy. I made monthly wire transfers for 3 years to pay rent. The transfers were person to person and cleared same day or next day, just like the author had in Australia. In the US though my credit union charged a $15 fee and required me to call them and then verify all information on a call back to me.

                                                              Real banks can do domestic wires all electronically but typically have higher fees. Banks can and do compete on the fees [1], but its just not something most US consumers care about.

                                                              There is no incentive for US banks to make person to person transfers either free or easy. The banks are responsible for costs of fraud, which would be massive at the rollout of free and instant person to person payments, but would gain no new revenue.

                                                              Eventually regulation will force their hand, but until then we’ll be taking pictures of checks.

                                                              1. 3

                                                                It is amazing that despite having sandboxing technology built into Windows, and used to sandbox renderers in Edge, the scanner portion of Defender was left un-sandboxed.

                                                                1. 2

                                                                  When I used Windows, there were also many 3rd party solutions like DefenseWall, AppGuard, and Sandboxie. I think Chrome published how theirs worked, too.

                                                                1. 4

                                                                  Am I the only one who thought this was hilarious and well planned? Looks like it worked even better than expected.

                                                                  The fake outrage has bought Burger King and the Whopper more media exposure than they could have paid for.

                                                                  1. 3

                                                                    Whether it was successful time will tell. Personally this caused irreversible brand damage both to BK and Google in my eyes.

                                                                  1. 28

                                                                    The startup programming environment represents the victory of showhorses over workhorses. It’s more important that these companies manage up into investors and look busy than it is for them to get any actual work done. In other words, startup programmers are more valuable as office furniture (see: $1-5M/head acqui-hires) than for what they actually do. Open-plan offices are terrible for productivity but they look busy. For this reason, I don’t see them going away any time soon.

                                                                    Also, open-plan offices are probably better than cubicles, which still have the noise and line-of-sight issues. If you’re in a typical cube and still visible from behind, then you get claustrophobia (brick wall in front of you) and agoraphobia (seen from behind, surveillance-state anxiety) at the same time. What we really want are private or pair offices… or just the ability to break away and code for a few hours. Cubicles would be a step in the wrong direction.

                                                                    The ideal office would have open spaces and private offices, so people can meet in the commons, break away, or have individual coding time. It’s amazing to me that this is judged to be “too expensive”, because a better office pays off multiply in productivity. I think that one of the problems is that office culture is in a deep state of denial. The fiction is that everyone’s working as hard as they can, at 100% productivity at all times, and that office accommodations are a nice-to-have rather than a critical factor in the quality of work. In other words, the stingy people who are constantly looking for ways to cut (and by “cut” I mean “externalize”) costs on office space see it as a nice-to-have and a morale issue rather than a raw productivity issue. You can’t raise the issue around open-plan offices without admitting that the corporate fiction (that people are already working at 100% efficiency) is false.

                                                                    Open-plan offices also have a problem with adverse selection. The really good individual contributors, as soon as they have leverage or clout, start working from home: first a day a week, then 3 days per week, and then consistently. The managers and wannabe managers show up every day, and so do the juniors who aren’t in a position to work from home, but the senior individual contributors usually get out of that environment. So this supposedly “collaborative” environment ends up losing the people who might actually be able to make others more productive, and gets stuck with the ones who make people less productive.

                                                                    1. 5

                                                                      Also, open-plan offices are probably better than cubicles, which still have the noise and line-of-sight issues.

                                                                      For what it’s worth, in my experience, the office with cubicles has been much better than the open-plan office (low-wall partial cubes rather than “bunch-of-folks-at-a-table”). It’s quieter and more private, and I can set myself up so the angles of approach are more constrained. There are definitely overarching differences in office environment, too—my current cubicled office is quieter overall and I’m not along the hot path the salespeople all take—but I think at least some of that is due to the fact that the space is partitioned rather than open.

                                                                      1. 2

                                                                        Office preference depends on personality. I have a suspicion that it has something to do with what one assumes is a universal human experience, but isn’t [1,2].

                                                                        Just because someone is a really good individual contributor has no bearing on whether they’ll like working from home. For instance, I worked form home for 2 years before I switched jobs so I could work in a co-working space (among other reasons). I know of another (very good) developer who is wants to leave their current employer because they want to work in an office.

                                                                        1. http://digest.bps.org.uk/2016/02/you-hear-voice-in-your-head-when-youre.html
                                                                        2. http://lesswrong.com/lw/dr/generalizing_from_one_example/
                                                                      1. 12

                                                                        Apple’s decision not to allow arbitrary parts to talk to their security enclave is a good security decision. However, Apple had handled this very poorly, by bricking the phone.

                                                                        My guess is that Apple employees only live in areas with authorized Apple stores, and can’t possibly imagine a legitimate reason for unauthorized repairs.

                                                                        1. 3

                                                                          I heard that touchid is simply disabled if it isn’t validated. The problem appears to be that when the user then later updates, some part of the update fails because it expects the touchid to be working, but it is instead disabled. My guess is a nasty bug as part of the install/upgrade process. I read somewhere on the hackernews thread about this that for some users a restore of a backup of an older got their phones usable again (with touchid still disabled).

                                                                          Does installing rando third-party aftermarket parts void the warranty?

                                                                          : Info is a bit vague and reactionary on this topic, so I am not sure if this is true or not.

                                                                        1. 1

                                                                          Doesn’t New York have about the same climate and the tall buildings that Chicago has? Why doesn’t New York have as many revolving doors?

                                                                          1. 3

                                                                            As someone who lives in Chicago and visits NYC for work, the average difference may not seem like much (Chicago has an average January low of 18F and NYC has an average January low of 26F), but it certainly feels much different.

                                                                            Maybe humans just perceive those lower lows more strongly? From my experience, the change from 0F to 15F feels like a lot more noticeable than a change from 30F to 45F.

                                                                            1. 2

                                                                              Interesting, to me, the change from 0F to 15F is almost nothing, but the change between 30F and 45F feels much different, because the air feels different above freezing as opposed to below. This could just be me though.

                                                                              1. 2

                                                                                I’ve got the same thing although in the Netherlands. I prefer it to be either above 10C or below 0C than in between. Maybe because there’s more water in the air while also being cold between 0C and 10C?

                                                                              2. 2

                                                                                I moved from Boston (very similar climate to New York) to Chicago for university, and was shocked by how much colder it was. Of course, them I moved to Minneapolis, and learned what real cold feels like. Ye cats.

                                                                                1. 2

                                                                                  Eh you get used to it, we’ve got nothing compared to places like anchorage. The wind is what makes cold cold. -20 with no wind? No problem. 10mph wind? Ok now you got my attention.

                                                                              3. 2

                                                                                When I first moved to NYC I was struck by the prevalence of revolving doors. I figured the reason was just that with so many people coming in and out it was more efficient in terms of the HVAC bill and I never thought of the pressure effect. I don’t know how it compares to Chicago, but I can tell you that NYC definitely has a lot of revolving doors compared to anywhere else I have lived.

                                                                                1. 1

                                                                                  Ah, ok. The article seemed to be saying that NYC had hardly any rotating doors:

                                                                                  Minneapolis might be colder and New York may have tall buildings, but Chicago uniquely combines all the important factors.

                                                                                  1. 1

                                                                                    As someone that lives in the twin cities, there really aren’t that many revolving doors even in the tall buildings. And yes we’re colder than Chicago most of the time. I’m actually hard pressed to come up with a skyscraper in Minneapolis or st paul with revolving doors for the entrance. None jump out at me but I’ll be honest I haven’t paid much attention.

                                                                                    Generally though we tend to have 2 sets of doors on buildings, so that might mitigate the pressure situation somewhat. I’ll have to ask my architect drinking buddy what the deal is. I always heard they reduced the cooling/heating bill more than the pressure situation.

                                                                                    1. 1

                                                                                      I think you missed a sentence. “Chicago and New York are the biggest markets for revolving doors.”

                                                                                      Though quite a few places in New York don’t have space for revolving doors. They don’t have space for double doors, either. They just hang a curtain inside the door, which is pretty useless.

                                                                                1. 7

                                                                                  Why would Chrysler think its a good idea to connect your car to the Internet?

                                                                                  1. 7

                                                                                    Finding out where the car was parked/stolen
                                                                                    Performance data, lap times Navigation Traffic data
                                                                                    Weather
                                                                                    News
                                                                                    Skype/viber/voip/facebook
                                                                                    Friends locations, “Hey, Jeff is at that petrol station!” (Might actually be cool, but prone to abuse/creepiness)

                                                                                    I’m not saying they’re good reasons, just some things customers might want :)
                                                                                    I guess anything you would use your phone/devices for + car spin offs of those things.

                                                                                    I think a better question is, “Why would any car company think it is a good idea to directly connect the vehicle control network to the entertainment system?”. As with the previous Toyota and BMW issues, air gap, people!

                                                                                    1. 5

                                                                                      “I lost my keys. Can you let me in?”

                                                                                      “Someone stole my car. Can you turn it off?”