HN user

gogurt2000

72 karma
Posts0
Comments64
View on HN
No posts found.

In my experience, most businesses are running some portion of their operations in spreadsheets.

More importantly: they don't want to change. They're running things out of spreadsheets because that represents the technical skills their staff has. They don't want to learn a new, specialized tool for a process when a spreadsheet works. They don't want to pay for that specialized tool. They don't want to deal with troubleshooting it when it fails.

I doubt the question you want answered is, "Does Sam Altman know how to code?" The simple answer is: he has written code at some point in his life and at some basic level he knows "how to code" but probably hasn't coded anything significant at any of the companies he's lead. It's very likely he hasn't written any code at all since he left Stanford.

Altman isn't some kind of tech-CEO genius that's personally coding new AI models overnight and then surprising the world the next day with a generational improvement in model capability. That's Tony Stark. He's a fictional character.

Elon Musk, Sam Altman, Sam Bankman-Fried, Elizabeth Holmes, and Steve Jobs are not technically minded geniuses. They aren't autistic savants. They're extremely persuasive, socially minded geniuses who are happy to use their social skills to manipulate anyone and everyone to get more money and power. Their super power isn't solving engineering problems, it's getting people excited and onboard with their "vision" -- everyone from investors, to a board of directors, to the public.

Part of their manipulation is cultivating an image of being a technically minded genius. They want you to believe they're a real life Tony Stark, but the reality is they're much more like Joel Osteen or Kenneth Copeland.

Windows:

- Bloat: software packages and services that cannot be entirely removed (at least not without 3rd party tools) like Edge, OneDrive, Copilot, etc.

- Requiring a MS account

- Their focus on adding new features and changing visual elements to make things feel fresh (and justify their asking price) at the cost of stability -- both in terms of system stability (it's absurd how often file explorer windows crash in Windows 11 compared to Windows 7) and in terms of user interface stability, aka being able to find what you want because it's where it was in the past.

- The settings tool is disorganized and many settings that were in it in previous versions aren't in it at all. Those settings are still available if you can find the right .msc to access them. Many settings are only available through the registry because they plainly don't want you to change them (for example, restoring the Windows 10 style context menus or disabling "News and Interests" on the start menu).

- Ads

Linux:

- Surprisingly suffers from the same settings chaos. Desktop distros often have control panels for some common settings but inevitably I always find myself editing some random config text file to fix something (like broken wifi or bluetooth).

- The directory structure is nonsense and not clearly defined. As an example, it's a crap shoot if a random github project is setup to use /usr/bin, /usr/local/bin, or /opt/bin. I regularly see sys admins deploy software to /var. Even standard commands like mkdir might be in /bin or /usr/bin depending on the distro. It's the wild west. Software is often hardcoded to use specific paths, so fixing the directory structure would require serious effort (take a look at what Gobo Linux had to do to attempt this). To be fair: the directory structure in Windows is also riddled with redundant, ambiguous, and unused folders, but you have to dive into those folders much less often on Windows.

- Poor or delayed hardware support.

- Audio latency, wifi, bluetooth, and high res video playback all continue to be a crap shoot.

I hate ads. I use an ad-blocker, I've abandoned Chrome so I can effectively block ads on Youtube, and I avoid ad riddled services like television (ad-free streaming or piracy for me, thanks).

I propose people promote their products on their website and at their place of business. I don't want anyone trying to sell me things. If I need something I go and research it to figure out what my options are and which one I want.

I genuinely believe the world would be a better place with severely limited advertising because a lot of really terrible things are driven by ad revenue: social media and 24 hour news are my go to examples. Sure, broadcast television and radio would also die, but at this point I don't think we're losing much. And sure, content creators would lose out on ad revenue, but the vast majority already make very little in ad revenue and have found other ways to get funding.

The underlying problem is that businesses that rely on ad revenue are incentivized to hold people's attention as long as they can while showing as many ads as they can. Producing a quality product takes a back seat to misleading, emotionally charged, and addictive content that's designed to maximize engagement.

The paradigms from different programming languages aren't always compatible. The differences in those paradigms are the strengths and weaknesses that make languages better or worse for various applications. It's hard for me to imagine low-level plumbing that would give you the languages' strengths when mixing languages -- some mixes just don't make sense.

As an example... why would I want to call python from C? If I'm writing in C, its because I want high performance with low-level control of resources. To call a python function, I suddenly need to spin up the python virtual machine including its baggage like its garbage collector -- there goes my performance and low-level control, I'm suddenly running a massive stack that I didn't write!

Alternately, you could compile the python code into a bytecode (different than PVM bytecode) that C can call performantly... but to do that you lose the benefits of python. Suddenly your python code needs to be compiled after every change (slowing down development, one of Python's greatest benefits) and you're required to declare and enforce strict types (no more easy duck typing!) so that C can count on getting back data in the expected format.

In contrast, calling C from Python does make sense and can already be done.

And writing plumbing to handle generic interoperability between 2 languages would be a lot of work. Writing parts of a project or system in different languages and then having them communicate through a standard interface like an API is much less work.

If you pursue this, be aware that consumers are tired of AI and don't believe it works well. You need to show that it's "insights" are reliable, accurate, and useful.

If you're stuck in traffic, stressed out because you're running late, do you think it's helpful to have a notification on your phone pop up and tell you "Stress slightly elevated this afternoon"? Do you think the AI could suggest solutions that the user won't be upset to see ("Try to relax with a breathing exercise...")?

If you ask it "Why do I feel tired today?" do you think it's helpful to get a chatGPT response listing bullet point reasons for people commonly being tired? You already know if you didn't get enough sleep, slept poorly, are burnt out, skipped a meal, haven't been exercising regularly, are recovering from a recent workout, are recovering from illness, or haven't been drinking enough water. Can the data collected actually identify a specific cause? Can the AI then suggest a specific, actionable solution?

A good example among analog controllers is the Atari one that had a variable capacitor and the capacitance was measured to infer its position. Although the measurement is digital, the controller, yes, was analog.

An abacus allows you to slide beads along a rod. Similar to your example of an analog controller, the device itself is analog but the measurement is digital. The traditional way to use an abacus is to slide beads from one end to the other with beads on one end counting as 1-5 (or multiples of 5, or so on). But you don't have to use it like that. You could use just 1 bead on each rod to represent a value from 0 to 5 with its position along the rod, or even a value from 0 to 100 with its position. Heck, you could use two beads on the rod to represent a range using their positions. Using this logic, an abacus is analog but the traditional way of interpreting them is digital.

One could argue that fingers are analog in the same way as abacus beads or electronic signal voltages in "digital" circuits. Yes, the traditional way to count on your fingers is to count each finger held up as a value of 1 and then add up the number of fingers to get the represented value, but fingers can be anywhere between entirely up and entirely down. You could hold a finger halfway up and count it as 0.5.

If you feel that argument falls under remark 3, I think you have some options:

1) Resolve the conflict between your example of an analog controller in remark 2 and your refusal to consider interpreting an analog signal/state as a discrete value as digital (as expressed in remark 3).

2) Accept that trying to fit everything in the real world into strict definitions is a fool's errand. Definitions are essentially simplified models that allow us to represent some aspect of the real world, but they can never entirely encapsulate the nature of the real world (the map is not the territory).

Let's stick with option 1 because it's more practical than philosophical (although, exploring option 2 may help you cope with life better in the long run). You can go with option 1 by simply dropping remark 3 entirely and accepting that a device can be analog in its physical form and digital in an interpretation.

Alternately, you can accept that the context affects which model best describes an abacus/fingers/electronic signal because your interpretation defines what the values represent. That is, the abacus has no representation of "internal values" -- it doesn't care if the beads are supposed to be 1's, 5's, fractions, or space ships. What each bead represents lies entirely in the person looking at the beads, not the abacus.

An example in that line of thought: the computer engineer designing a chip has to face the reality that electronic signals are analogue so he can design a chip that functions properly. In his context of work, the chip is analogue. The software engineer who uses that chip needs to know very little about the underlying hardware and is able to model its behavior as entirely digital. In his context of work, the chip is digital.

I'm not going to argue against engineers using AI coding tools to write boilerplate code faster. I certainly think it's a useful tool for that.

But outside of that context, it's problematic to argue that "you can't tell if something was created by AI just by looking at it. And if you can't tell the difference, then the difference doesn't matter."

It feels like we aren't too far away from AI being indistinguishably good at other things. Actors would obviously be upset if you started producing movies with their likeness without paying them (and without them shooting a single scene). Screen writers, voice actors, authors, and artists would be similarly upset. Fans have already rallied against video game studios that try to use AI to replace artists.

I certainly think the "if you can't tell the difference, then the difference doesn't matter" test is problematic when you look at video shared with news stories.

So what makes writing code different? Is it because consumers of movies, television, books, and art care if AI took a job away while consumers of code don't? Is it because people who write code don't really care about writing boilerplate and just want to get past that to bigger, better things? Is it because a lot of people writing code don't like it at all and only got into it for the money?

I don't think the knee-jerk reaction to reject all AI generated content is misplaced. AI raises real questions and creates real problems that we need to address instead of simply dismiss because writing CRUD is boring.

I certainly expect Tesla to use the cameras on their cars for similar purposes if they haven't already. Although I would expect them to distance themselves from it by selling the location data 'in aggregate' to another company that interfaces with law enforcement agencies.

It's been overshadowed by Python which has a sexier image because it isn't associated with Microsoft. It certainly doesn't help that in the beginning C# was a Windows only language tied to the .NET framework. It's taken a decade for word to get out that it has evolved past that.

It is not obvious what you're supposed to do.

From just trying things randomly, I think the objective is to get each numbered square to 'claim' or 'path into' as many empty squares as the number shows. That is, if you see a red square that shows a 3 on it, you need to click on that red square, then click on an adjacent square to 'claim' it for that red square, then click on a square adjacent to the one you just clicked to 'claim' it as well, and so on.

Your options, from worst to best: - add a tutorial (everybody hates tutorials) - add some concise text to the bottom of every page that explains the objective and how to play - find a theme that makes the objective and how to play intuitive

Other feedbacK: - You absolutely need to show which square is selected (if any). - There's either a bug or some condition for play that I don't understand, but you can't try to occupy a square more than once even if the square is empty because a previous attempt to occupy it was canceled/reverted.

I don't want to defend Docker because I'm not a fan, but I can tell you that as a dev the appeal is controlling the environment instead of specifying it.

Lots of Docker fans don't think about what version of libc or java is in their image. They start with a base image, develop code that works there, and release the docker container without ever thinking about it.

If it's an open source project, ignoring bugs that occur outside the official docker build cuts out a lot of work. Inevitably someone with no Linux experience will try to setup Slackware on a raspberry pi to run your project because they read in a forum post that 'real nerds run slackware.' When it doesn't work and they open a bug report, you can spend the next year trying to teach them enough about Linux for them to fix their system and run your project. Or you can come across as mean by saying RTFM. Or you can just avoid all that by pointing them to the Docker image and admitting "I only have the resources to ensure this works in that specific environment."

If it's a corporate project, it safeguards against other devs or someone in IT being foolish. Despite having rules and procedures in place, I've seen plenty of instances where IT or a dev changed something in production environments without warning or announcing it because they thought it would be fine.

This is intriguing.

What are you discussing in the 15 minute phone call? Do you spend any time probing their coding knowledge?

Before the phone call, are you looking for examples of their work in open source or public repos?

0. You're spot on: data centers almost exclusively run Linux.

1. CUDA runs well on Linux, but it's not real clear to me what you're asking in the second half of this question. CUDA is an SDK and driver that nvidia produces so that developers can write and run software on their specialized hardware. You wouldn't really run anything on nvidia's hardware without it. You also wouldn't really run anything independent of the OS.

2. Yes, when deploying a new model in a datacenter setting you'd use a linux terminal. Any custom tools used in a datacenter will be command line tools.

3. Data centers typically run CentOS, RHEL, debian, or ubuntu. CentOS if you're a large tech company. RHEL if you're not (ie: you're a car company looking to offload some liability on red hat when there are technical problems). Debian or ubuntu if you're a tech startup. Big cloud providers typically provide their own distro like Amazon Linux or Oracle Linux (both of which are based on RHEL) for ease of use and support, but you can run whatever distro you'd like. If you're running something in a container you might use a more lightweight, security focused distro like Alpine.

For an AI datacenter, I'd expect to see RHEL, debian, or ubuntu because nvidia officially supports them. You'd need a very good reason to put resources into customizing a distro or using an oddball distro.

4. Working on anything in a datacenter is done through a terminal, but that doesn't mean the computer you're using doesn't have a GUI. People sit at Linux, Windows, and Mac desktops with terminals connected to remote machines in the datacenter. How they interact with the datacenter is CLI only, but they've got a gui because they have other stuff open like a web browser, slack, or an IDE.

Hope that helps!

To me that sounds like sophistry (unintentional or not). Wikipedia summarizes it nicely:

"Sophistry" is today used as a pejorative for a superficially sound but intellectually dishonest argument in support of a foregone conclusion.

Loosely related: The 60's scifi novel "The Moon Is a Harsh Mistress" explored the idea of computers with powerful enough AI that they could construct a logically persuasive argument for any stance by cherry picking and manipulating the facts. In the book I think they called those computers Sophists, which seems particularly relevant today. You can absolutely ask an LLM to construct an argument to support any stance and, just like in the book, they can be used to produce misinformation and propaganda on a scale that makes it difficult for humans to discern the truth.

I don't know why you would want to let someone use an AI when taking an IQ test. There's already debate about how useful IQ tests are for measuring intelligence. Letting someone use an AI during the test would just further muddy the waters: are you accurately testing the person's cognitive ability or their ability to feed questions into an LLM?

Every sequence of bits can have meaning depending on how it's interpreted. If there are infinite universes, then in one them there's a hardware platform that will interpret 'xiHkv9m1twpb0alV5Vn85A95KGdvSsciA4x3V0bzocZeJ3mpbzsKppUnFmySjABp86dUvlgodUyRz8texwaZwbat9odWNJY5yO8S' as a Tetris program. And in another universe that same sequence will be interpreted as a still frame from the movie The Matrix. When you ponder the infinite, meaning kind of dissolves.

It sounds like your "quantum random number generator" would produce a different sequence of bits in every universe? I actually think this breaks things. If every universe gets a different sequence, then there's no promise that any given sequence will align with a universe where it can be interpreted. I also think this means most universes end up with a sequence so long they can't interpret it.

Another way to look at it: if every universe gets a different sequence, then only 1 universe will get any given sequence. As an example, let's take the byte code to print 'Hello world.' in an x86 linux binary. If that sequence is produced in this universe, okay. But if it's produced in a universe where the x86 instruction set is different, or doesn't exist or where the linux binary format is different or doesn't exist, or where English is different or doesn't exist... There's lots of reasons the string might be seen as random garbage. There's just as many reasons the string could be interpreted as a song or a poem or any number of things.

I think to get the outcome of "every possible program is generated," you need to generate the same sequence in every universe, or every sequence in one universe.

The Trump administration doesn't need a lab leak (theory or evidence) to rewrite history. They rebranded Jan 6 as a heroic act of patriotism without any kind of evidence to support their claims.

Propaganda doesn't need facts or even logic to back it up. Propaganda just needs people willing to believe it or do nothing to fight it.

I think you should reach out to science and education influencers. At very least they can give you site feedback. If they like it, you might find opportunities to promote the site. I'd be interested to see what Tom Scott says (see his RI presentation: "There is No Algorithm for Truth").

If you want to aggressively promote it, setup some bots that fact check posts from popular figures known for spreading misinformation. Lead with the credibility score for their claims, give the briefest explanation possible, and link to the full report on the site. Be prepared to be very unpopular with some groups that don't care about any kind of analysis or evidence, but trust that you'll reach others who do.

Good luck!

Some honest (if blunt) feedback:

- You need to debug your react code. Something is constantly running. Your site shouldn't hit 100% CPU usage when sitting idle. This isn't just a performance issue, it's also a credibility issue.

- Rework the floating elements on report pages ("Try Another Analysis", "Credibility Score", "Other Reports"). Depending on the dimensions of the viewport, these cover the page's content, making it unreadable. This is also a credibility issue. Credible sites don't bombard the user with popups.

Do people in Silicon Valley respect Apple has a company?

People in Silicon Valley generally respect money more than principles, so, yes, they still respect Apple. Even if they struggle to leverage their resources, they have the money to be an industry player and can't be dismissed.

it's unclear why talented people work at Apple

This is a different question, but for many people the answer is the same.

Sure, hardware designers in the mobile space aren't excited to work for Apple because they're doing innovative things. But nobody in the mobile space is. The sector isn't attracting people who are driven to innovate, but people motivated by getting a paycheck. In contrast, Apple can certainly attract innovators in enterprise hardware.

They did attract innovators on the Apple Car project until they canned it, and they could certainly bring them back if they spun it up again. Opportunities to innovate in the automotive industry are limited and opportunities with funding more so.

AI is a bit different. They'll attract some talent because they can fund training models, but I think the funds involved and Apple's large corporate structure will actually hurt them here. I think we'll see more innovation come out of smaller research teams and startups that are willing to experiment (and risk failing entirely in the process).

You can't ignore giants like Apple and Google. But their resources don't always let them move faster than smaller teams on new, risky ideas.

Many aren't. For many it's just a job and they'd happily take a job in another field with better pay and benefits. But that's not super common right now. For the last 20 years dev jobs have been some of the cushiest available.

If its more than 'just a job', there aren't lots of options that are similar. You get problem solving, system design, and working in a mostly abstract space. You can find other careers with 2 of those things fairly easily, but all 3 is somewhat unique. And when you find all 3, the pay and benefits aren't comparable (pure math careers come to mind).

What other careers would you suggest?