Hacker News new | past | comments | ask | show | jobs | submit | ekimekim's comments login

> You cannot go to a AT&T store to buy a phone and then use it on tmobile’s network.

Why not? You're paying them for the device. Why should they have a right to stop you using it how you want? Imagine if buying a car also came with a requirement to only use the dealership's petrol stations for the first year.


Because contracts that people sign when they buy a subsidized phone are not really enforceable. Folks will get a "free" phone and stop paying. There is not much that provider can do. The cars are valuable enough and when you stop paying your loan you will lose it pretty fast.

Why not? Because AT&T doesn’t like selling stuff for other telecom companies. In fact the only reason they have stores is to sell wireless services. If you don’t want their service, they don’t want to sell phones to you from their stock.

Something I learned from an AT&T store


Generally they are sold at a discount, with the deal that they will make back the discount if you use their service. You can buy an unlocked phone new from the manufacturer but then you will pay full price.

Are they actually discounted? Where I am in Europe they don't do that anymore, it's usually cheaper to buy the phone from Amazon - if you can afford the up front cost.

At least in the US, in July, for a Google pixel 8, through Verizon or AT&T, no. Buying a pixel 8 retail from best-buy or Amazon was $200 cheaper than either carrier, and both wanted to push financing instead of outright purchase. My experience (mostly with Verizon) has been that buying directly from the carrier has been more expensive in the last decade than buying the phone retail.


Because the devices AT&T sells are subsidized and come with a network contract.

You can go other places to buy unlocked phones.

I don't buy carrier-locked phones anymore, personally.


If a car manufacturer gave me an offer to only use one particular petrol vendor...I would very much consider it.

I joined a company in late 2020 that had gone remote at the start of the pandemic, and this crossed my mind. The deciding factor for me? The founders had since moved to different locations across the US. That put their money where their mouth was more than anything.

Well based on compiler bootstrapping techniques, it seems the solution is simple: Start by hand-assembling the most basic RNA life, then run each step of evolution in sequence. All you need is the DNA (and know the living conditions) of every single organism between single-celled organisms and a modern human.

Python handles this case by raising the new error but including a reference to the original error. By default, the formatted error shows both:

    >>> mylist = []
    >>> try:
    ...     first = mylist[0]
    ... finally:
    ...     inverse_length = 1.0 / len(mylist) # imagine this was something more complex
    ... 
    Traceback (most recent call last):
      File "<stdin>", line 2, in <module>
    IndexError: list index out of range
    
    During handling of the above exception, another exception occurred:
    
    Traceback (most recent call last):
      File "<stdin>", line 4, in <module>
    ZeroDivisionError: float division by zero

No. Your example is not similar to what we are discussing here

    class A:
        def __del__(self):
            1/0
There is no way to catch that exception. It will just print a warning with the exception but it can't be handled.

Java also does this.

This is one of the coolest things about these kinds of bootstrapping projects + reproducible builds IMO. One could imagine creating an incredibly simple computer directly out of discrete components. It would be big, inefficient and slow as molasses, but it could in theory conform to instruction set architecture, and you could use it to build these bootstrap programs, and you could then assert that you get the same result on your fully-understood bad computer as you get on not-fully-trusted modern hardware.


This is changing. Postgres (as you noted) supports JSON, and it also has excellent native support for arrays, range types, and composite types. For example:

    CREATE TYPE number_with_unit (
        value DOUBLE PRECISION,
        unit TEXT
    );

    CREATE TABLE example (
        height number_with_unit, -- our composite type, eg. (6, 'ft') or (180, 'cm')
        known_aliases TEXT[], -- list of string
        active_times TSRANGE, -- time range, ie. (start, end) timestamp pair
    );

    SELECT height.unit,
           known_aliases[1] AS primary_alias,
           upper(active_times) - lower(active_times) AS time_active 
    FROM example;


You need to be aware of the tradeoffs, though. For example, adding an alias in your example could easily result in a lost update: if two users add an alias at the same time the second write will overwrite the first. You can go up an isolation level or check it in your application (do an `UPDATE ... WHERE` then check it went through), of course, but with relational tables you get this for free without any worry or performance impact.


> word knowledge was intended by the game designers to be a part of the game

This is the most frustrating part of Scrabble to me. I consider my vocabulary to be pretty good. But frequently when I try to use an even slightly-esoteric word in scrabble, it turns out to not be in the official dictionary. And conversely, the official dictionary is full of words I've never heard or seen used by real people and often has some definition like "18th century slang for <word>". I then lose to people who know all these weird words (especially the very short ones, which they've memorized) and who admit they have never heard these words outside a scrabble context either.

In short, the English the players speak and the English defined by the official dictionary are different enough languages that it seems only useful as a way to learn "Scrabble English" and not modern English.


Yes, I agree the official Scrabble word lists are arbitrary and sometimes downright inexplicable. But assuming you're not trying to win official competitions, you can play with any dictionary you like.


Yes, their chat is still compatible with IRC, albeit with lots of extensions (which you can opt into using IRCv3 capabilitiy negotiation). More recently they've been adding UI elements on the main site that are web API powered instead of chat though (eg. polls, sending bits).


The issue is that you don't normally let humans on them until you've proven they don't explode. If Boeing had followed each of those incidents with a re-do where everything went perfectly, it wouldn't be a problem.


Yeah this is really starting to cause problems as things like this sugar tax push companies into adding sweetener to their "normal" versions. I now can't simply buy a Coke and know it will taste like Coke - I need to inspect the packaging and check if it will taste disgusting or not.

It's fine that they exist but presenting them as being full sugar when they aren't is false advertising.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: