Threads for df

  1.  

    I’ve never worked at Google, but I’ve now worked at three different companies trying to take Google-internal security tools and make versions that can be consumed by the outside world. So I find these stories fascinating.

    1. 1

      The infinite canvas in Miro and Figma is actually quite nice: because they are inherently collaborative, each person can work in their own corner and still see everyone else’s work and bring them together as a cohesive whole.

      This makes no sense for spreadsheets though, since you actually have to refer to coordinates frequently! And people will load in databases of 1 billion rows and it will get confusing.

      1. 9

        GitHub has the best user identity model. You can have one account, affiliated with multiple organizations, and log in through any of them. Each org can even set its own requirements for login – so for example my work requires that I login through their SSO, so even if I’m already logged into my own account, I may have to login again to get access to work stuff. You can have multiple email addresses as well and always change which is primary. They’ve clearly put a ton of thought into it.

        1. 1

          It would definitely be something in education. There is so much incredible untapped potential in young people around the world. I’m just not quite sure exactly what it would be. Perhaps an AI-based tutor – but one that actually, really works and is rigorously tested.

          1. 2

            Maybe a suite of online courses that provide access to material currently being removed from curricula in red states.

          1. 4

            There are basically two kinds of computer science papers:

            1. “I did something so monumental, so high-impact, that it absolutely needs a formal paper.” You should read these ones.

            2. “I did something very novel, which builds on other computer science papers in interesting ways, and presents some interesting challenges for the future, but hasn’t had any impact yet.” These are probably not worth the time to read, since most of them have ideas that have not had any impact yet. If you ever do a deep dive into the topic for a specific reason, then it makes sense to read.

            Like startups, or corporate projects, or anything else in existence really, there are specific criteria that allow CS papers get published that are probably not all that well aligned with “how good is the idea.” This can make coming in as an outsider feel a bit like crashing a party of strangers.

            1. 2

              In the Oracle database, in the main command line interface (sqlplus), the backspace key does not work. There are some terminal settings you can change to make it work, but most often people write their commands in Notepad and paste them in. You can forget about tab completion or up/down arrow history like you’d expect in any reasonable command line application. There are even various wrappers available just to make the command line usable.

              It has been like this for (as far as I can tell) the entire history of the product. They have thousands of employees working on Oracle and just have not bothered to fix problems that annoy most of their users in daily, routine operation.

              And yet they continue to make tens of billions of dollars.

              1. 1

                Anyone serious about Oracle development shells out for a Toad license.

                1. 2

                  Isn’t that even worse? You have to pay for a decent UI to use a very expensive product you already bought?

                  1. 1

                    You have already chosen Oracle so that’s just how it is. Oracle is a company where sales are kings. Developers are nerds who don’t count.

              1. 4

                There is a very active subreddit for running LLMs locally. I’m not used to getting high-quality tech advice from Reddit, but in this case it seems to be the perfect platform, since lots of individuals are puzzling out the best solutions for both hardware and software together.

                1. 1

                  Do we know what they’re using it for?

                  1. 3

                    Fonts, regions, and an unspecified syscall.

                    You can follow the first link to get to a presentation of David Weston on the subject.

                  1. 3

                    This seems kind of dumb. $88,000 is the annual salary of a junior software engineer in the US. If it will take more than 1/4 of the time of a senior engineer to make monitoring work as well as it does now without datadog, that’s probably a net loss. Certainly you’ll pay the opportunity cost of spending engineering resources on redoing all your monitoring.

                    1. 1

                      I’m surprised by your stats of $88k for a junior developer. Do you have a source for that? I can believe that might be the case in California or New York, but it feels off for a national average. Our junior devs make less than half that. Heck, I’m only making a little over half that. My boss’s boss’s boss isn’t making $88k and I’m not entirely sure her boss is making that much.

                      Don’t get me wrong, I know we’re underpaid, but, out of the last three places I interviewed at, no one was offering more that $60k for senior devs. And one of those was in New York.

                      1. 10

                        I made $65k my first year out of school working a government-ish job at a university research center 20 years ago. $45k for a dev in the US in 2023 is WILDLY underpaid.

                        1. 4

                          Yes, junior devs here in Minnesota (low cost of living area) are routinely getting offers for $100k or so. There’s a ton of data on levels.fyi.

                          1. 2

                            You should be more ambitious about compensation.

                            1. 2

                              Junior dev at big bank in a random city got that within 1 year of learning to code.

                          1. 1

                            In 1985, this machine cost $4.5 million, and achieved 32 MIPS. That was extremely impressive for the time. But it didn’t last long: by the late 80s, UNIX servers were faster, and by the early 90s, even some desktop PCs were faster. IBM stopped using its unusual ECL processors (fast but hard to cool) and switched to CMOS after this, and mainframes got substantially less complicated and weird.

                            1. 4

                              Note that the 3090 was an architectural family and was upgradable all the way up through the final run of water cooled ECL ES/9000s in the early 90s which is around 480 MIPS. It wasn’t until the mid 90s that IBM was comfortable moving all ES/9000 workloads to CMOS S/390. As clock increases the latency of interconnect matters more and more and I think the miniaturization of CMOS routing is what edged it out for these large computer designs as much as the inherent power utilization difference of the transistors.

                              https://www.ibm.com/common/ssi/cgi-bin/ssialias?appname=skmwww&htmlfid=897%2FENUS194-084&infotype=AN&mhq=sysplex&mhsrc=ibmsearch_a&subtype=CA

                              There are several things that make MIPS interesting but not summary of a large machine like this though, in the video you can see all the logic dedicated to functions other than CPU and the mainframe becomes more valuable than the sum of its parts when implemented with channel subsystems running channel programs for disk I/O, network communications, and terminals. These were also available with a vector unit and later system assist processors (mainframe CPU outside of the operating system image running its own microcode distributing multipath I/O and routing completions). These systems solved the problems of the day for the way computing was conducted at the time. The modern variety are still interesting in their own right for transaction processing.

                              1. 1

                                Good summary. You can always tell someone who knows absolutely nothing about mainframes when they only quote MIPS say things like “by the late 80s, UNIX servers were faster”. And the idea that “mainframes got substantially less complicated and weird” ever, much less because of a change to CMOS, is laugh-out-loud silly.

                            1. 2

                              It did its job perfectly: staved off interference by politicians by pointing them at a big complicated mess of technical measures that no one could understand, while not actually having any effect because no one used it.

                              1. 6

                                I worked at a bizarre company that followed Agile practices to the letter for a while.

                                One rule was that you could not check in code while any integration tests were failing. I used a Petri net simulation to demonstrate that based on the number of developers on the project, and the number of changes waiting to check in, and the length of time the tests took, and the length of time reviews/fixing took after fixing failures, and the chances of tests failing, and some other factors, you could essentially never check in code at all! Which unfortunately was pretty much what happened in practice.

                                1. 3

                                  I used these all the time in grad school. I could get substantially more compute than I could afford on my own, and it would essentially never get preempted. I had all my systems scripted so even if it did get preempted, I wouldn’t lose anything. It felt like a loophole in the system!

                                  Unfortunately for me, companies like Spot/SpotInst came around and helped hundreds of companies move workloads from on-demand to spot instances. We don’t know how successful they were exactly, but it was enough for Amazon to decide to make spot instances significantly less appealing. Remember, it’s not really an auction or a marketplace – Amazon sets the prices however they want and triggers as many preemptions as they happen to feel like.

                                  1. 10

                                    people underestimate how difficult it is to manage hardware. things like

                                    • capacity planning
                                    • datacenter footprint
                                    • storage device failure/replacement
                                    • data loss due to mismanagement of said storage devices
                                    • backups
                                    • virtualization
                                    • layer 2 networking - storage topology design
                                    • layer 3 routing - mpls, bgp, etc
                                    • storage networking - fibrechannel? 100gbps ethernet?

                                    you can ignore all of the above by using a managed service / cloud. people forget what a nightmare hardware management is - or they never managed hardware in the first place. it’s hard and really sucks tbqh

                                    1. 4

                                      people underestimate how difficult it is to manage hardware. things like

                                      This list is an understatement of what a DC provides.

                                      you can ignore all of the above by using a managed service / cloud. people forget what a nightmare hardware management is - or they never managed hardware in the first place. it’s hard and really sucks tbqh

                                      You can ignore all of the above by using a reputable DC. This entire list is bog standard support that the DC provides, often in a way that you cannot opt out of. The only wildcard is backups: that’s not necessarily always provided, but it’s nearly always a cheap addon.

                                      Going from AWS to running your own DC adds these hurdles, but going from AWS to leased or owned hardware in an existing DC doesn’t imply responsibility for anything here. I don’t think anyone is suggesting “move from AWS to a server rack in your closet.”

                                      1. 3

                                        It’s 20 servers total, at two sites. Most of those tasks are easy or irrelevant at that scale.

                                        One of my previous jobs had multiple entire data centers just for TESTING our software with thousands of configurations of weird hardware. Now THAT was a planning nightmare.

                                      1. 1

                                        Riley Goodside on Twitter was doing a lot of this stuff with GPT-3 last year.

                                        1. 2

                                          Nice! I made something similar using a mess of scripts when I was working on a test program that took around 48 hours to run — needed to get to it as soon as it was done to be able to iterate quickly. But not as a finished product!

                                          1. 3

                                            Even today the University of Minnesota is a bit fanatical about protecting its intellectual property. You know why Honeycrisp apples are so expensive? The university developed them and takes royalties. They also licensed Vidku (a very popular video sharing app for primary school classrooms), Turing Tumble (a board game for learning CS), and hundreds of drugs. But trying to charge for Gopher was perhaps the greatest IP misstep in history.

                                            1. 1

                                              I’ve been working on various infra software that does use client certificates for a few years. The problems, unfortunately, apply there too: the UIs are awful, it’s never really clear which client cert to use for different servers, and there is no good way to scope down CAs so that they can’t just issue a client cert for any arbitrary person. So far, we manage, but it’s a corner of networking standards that is very old and in need of improvement.