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

In addition, it would then increase the market prices, which in turn helps incentive lower emissions or greener cheaper alternatives


Exon could buy offset on behalf of their customer's expected emissions. (which I guess would indirectly increase the cost for their customers) .

or they could give discounts to their customers that show they have reduced their emissions through various initiatives , eg buying cleaner buses


Not Something1234 but also interested in a feature like this https://docs.stadiamaps.com/static-maps/#example


Hey! I am about to move to (Copenhagen) Denmark in a few weeks from Australia. I am also going in not speaking the language.

Any tips / suggestions?


Get a metro card or a bike asap. Note that the bikers in Copenhagen are quite fast so you better brush up your skills.

When you register your residency, your municipality is obliged to provide Danish lessons to you in some way. Take advantage of this. It’s a good way to meet new people.

Be prepared for the weather. Besides darkness, Denmark also exports rain, so have something to wear at all times.

Make sure that your curtains or blinds are actually good. In the summer months, the sun is shining for almost 18 hours, and even after sunset and before sunrise there’s quite a bit of light. The quality of your sleep will deteriorate if you are bombarded with sun and don’t get enough of it.

If you are a student, know that life can be expensive, getting a student job will help and you will make some acquaintances.

Don’t expect to mesh with the Danes quickly, the Danish society is very tight knit, but if you find yourself getting invited to hang out with a few people at an apt, it’s a good thing! It means you are becoming part of the group!

Danes can be brutally honest, so be prepared for that. It’s not because they intend to be mean, it’s because such is their society. They don’t intend malice, but they provide constructive criticism and you will find them to be quite friendly!

Get acquainted with the language asap; use anki cards and watch shows on Netflix to learn the sounds. As you get better, switch to audio description and you will improve your skills quite quickly.

Hope I helped!


I have a tangentially related problem I have been battling with that you may be able to help me with. I'm moving overseas (Australia to Denmark) and would like to keep my current mobile phone number working for calls and SMS , but use it from afar. I would be able to leave a raspberry pi at a friend's house. Can you use this setup without a SIP provider? Would you need to buy a modem for the raspberry pi?what would you do?


This is pretty much exactly the problem that we originally created https://jmp.chat to solve, no sip or complex setup needed these days for that use case.


I heard about you ages ago and wanted to use your service ever since. The only problem I don't need it for anything. But I'm glad you you are still there.


I would just port my number to twilio and use/write a really basic twilio mobile app. It's a bit risky to rely on a slightly cobbled hardware/software setup that is sitting across the world with no physical access.


Note that one problem with voip providers is the numbers/lines often won't be recognized as valid by snake oil 2FA and the like. So porting to a voip provider only works if your goal is receiving SMS/calls from actual humans or just parking the number for later. But if you're doing it to avoid having to change your number for every service that has an SMS nagwall, it likely won't work.

You can get a modem that will do SMS (eg a Sierra Wireless card), but I don't know if/how they do voice.

Also, I'd shy away from the RPi based on the unreliability of SD cards. It would/will be pretty annoying for your host to go down and you have to travel back to fix it. I suppose if your friend is halfway handy you could keep an image of the machine as installed. Or even take new images remotely (rsync from the raw device a few times in a row?). If the root filesytem goes wonky, have your friend pull the SD card and reimage it.


I've been using a voip number for all my sms 2fa needs for the last 5 years while living abroad. I have a dozen banks and other financial institutions plus the irs happily accepting it. Some companies, like openai, wont accept it, for those I just buy single use SMS numbers.


I've had problems with a bunch of places, so it's at least YMMV then. And I'd be wary of transferring an existing number in (as opposed to getting a new voip number and then setting it up).

I'm sure specific services are hit or miss - there really shouldn't be a problem sending SMS to whatever number a user enters, but paternalistic snake oil salesmen gonna be paternalistic.

I've had the least difficulty with Google Voice (I believe it's impossible to tell "Google Voice" usage from bona fide Fi usage where it's really the users' only phone number). Voip.ms has worked very little for me, to the point of that I don't even try it. Heck I even used a voip.ms number for some online classifieds, and another person using Comcast/Xfinity mobile couldn't text me. I'm not saying this as a slight against Voip.ms itself, from what I've gathered most voip providers will be treated similarly.

One of these days when I get around to it I plan on setting up a wireless modem on a $3/mo paygo plan for my SMS nag needs. With a script that automatically brings the number as close to my paste buffer as possible.

What single use SMS service do you use? I haven't really investigated those.


Some services can definitely detect Google Voice. Chase bank won’t send SMS to voice.


I have a Chase account, they send 2fa texts to my voip number ok, but it's not Google Voice, it's another service.


> I believe it's impossible to tell "Google Voice" usage from bona fide Fi usage where it's really the users' only phone number

These are definitely distinguishable, and some auth service treat them differently. Google Voice numbers come from a different carrier (the one named Bandwidth) than most Fi numbers.


"One of these days when I get around to it I plan on setting up a wireless modem on a $3/mo paygo plan for my SMS nag needs. With a script that automatically brings the number as close to my paste buffer as possible."

This is called a "2FA Mule":

https://kozubik.com/items/2famule/

"A 2FA Mule is a mobile phone configured to forward SMS 2FA codes via email."


I use something similar. A dedicated app makes a POST request to my Google Apps Script as soon as any sms arrives at my second phone. That script sends it in a Telegram Bot Chat to all of my devices.


I use a RedPocket (GSMA Flavor) $60/year for my resume and 2FA number as an eSIM.

I turn it on when needed, which is almost never. When not job searching, the voicemail plays the classic "this line has been disconnected" tones and message on repeat for two minutes. WiFi calling means I can use it anywhere I have WiFi.

I get incredibly few spam calls using this strategy.


There are two different reasons companies ask for your phone number, and it's worth distinguishing between them:

The first is for sending a verification code during signup to prevent spammy/abusive signups. In my experience, this is the least likely to work with VoIP numbers because companies often intentionally block VoIP numbers.

The second is for sending 2FA codes during login. My experience with this has been much better. AFAICT, companies do not intentionally block VoIP numbers for this use case. When SMS does fail, there is almost always an option to send the code by voice call, and this is always 100% reliable.

I also have some experience with using a modem with a SIM card to receive SMS. I've used two different models of modem (not Sierra Wireless) and both have been very flaky, often locking up and requiring a power cycle, or having hours-long delays when receiving SMS. I would not call this approach a panacea.


Unfortunately, Twilio is no longer a viable option for sending SMS for personal use. If you want to send SMS you have to register a "campaign" and jump through a bunch of hoops that assume you're a company sending a large volume of application-generated messages (e.g. you must disclose samples of the types of messages you intend to send, and get explicit opt-in from recipients). Up until now, I've managed to avoid registering a campaign by instead paying a slightly higher per-message cost, but this is being phased out on July 5. I've been trying out https://jmp.chat (their founder is commenting elsewhere in this thread) and will likely port my number to them.


Hmmm ... I think the July 5 deadline is specifically for UK recipients ?

Regardless, your overall impression is correct: Twilio is no longer a hacker/hobbyist/enthusiast option as you cannot (by the letter of the law, at least) send SMS without registering your business entity:

https://twitter.com/rsyncnet/status/1593384850073214976?lang...

This is very troublesome to me because I have built my own personal telco out of twilio functions and twiml bins, etc., and am heavily reliant on all manner of SMS workflows.

As of this writing (2023-05-27) everything - even SMS delivery to T-Mobile numbers - continues to "just work" but it sounds like I will just wake up one morning to have it all broken ...


The deadline is for US recipients:

> • Effective July 5, 2023, all 10DLC phone numbers used to send SMS and MMS messages to U.S. phone numbers must be fully registered to an approved campaign under your brand. Messages sent using unregistered phone numbers will be subject to a gradual increase of message blocking by Twilio, beginning on July 5, 2023, ultimately leading to a full block of all unregistered U.S.-bound messages sent after August 31, 2023.

Source: https://support.twilio.com/hc/en-us/articles/1260800720410-W...


I use Callcentric for this. Ported a land line over years ago. It now has SMS which I can do using the Callcentric app. And it forwards voicemails to me with email. Otherwise I don’t use that line for actual calls anymore.


I have setup a PRI to SIP channel before using elastix (now discontinued and bought by 3CX I think).

This needs investigation, but - Over the top of my head, I think you could probably have some kind of a 4G/5G modem hooked on to an SBC (Pi, APU, etc.) and then forwarded to your SIP line which you can pick over IP (Internet), this should work.

One of the child comments mentioned DID (Direct Inward Dialling). I am no expert, but if your Australian provider supports something similar, you will get the number (friend) who is dialling in, instead of your own Australian number dialling in to your receiver phone. This is useful for caller ID, otherwise it's just like a forwarded call.

Hope this helps.


I've never done it, but look into chan_mobile and a bluetooth dongle to connect a mobile (with your SIM) to asterisk running on a Pi at your friend's place.


pre postgres 15 can you solve this with two unique constraints ?

unique (EmployeeName), unique (EmployeeName, CarID)


You’d most likely solve this by making the CarID NOT NULL because there’s why would you even have a row with no useful data?

And if this is your employee table, you’d have UNIQUE (EmployeeData) and UNIQUE (CarID), and it would do what you want.


That's not quite the same, since the previous solution of unique (EmployeeName, CarID) allowed for one employee to have 2 separate cars. You have to use conditional indexes to solve this.


hey thats neat! how do you build the iso?


It's very simple, a basic NixOS config like https://paste2.org/E5IUKfs9 built with

    nix-build '<nixpkgs/nixos>' -A config.system.build.isoImage \
                                -I nixos-config=iso.nix
you can add anything else, for instance X config for interactive usage, perhaps with the same (nearly) EXWM used normally etc. Nix language is obscene but making iso is awesome easy, just a matter of download and build time.


thanks!


That's awesome, would you mind sharing your nix config. I have never used nix and would love to see an example


I'd prefer not to share my personal git repo as it would reveal my identity, but I based it on these:

https://github.com/MatthewCroughan/nixcfg

https://github.com/hlissner/dotfiles

https://github.com/georgewhewell/nixos-host

https://github.com/ipetkov/dotfiles

There's also the DevOS project, which is an attempt to create a base of boilerplate than anyone can use as a start to build a system:

https://devos.divnix.com/

Recommendations:

* Definitely use flakes

* Use Agenix to store secrets out in the open (encrypted with your SSH key)

* Use home-manager

* Keep config modular so you can selectively include it in various hosts and domains (e.g. desktop vs server).

Think of it as building software when you figure out how to organize your config. The bulletpoints above can all be a bit difficult to figure out so don't feel bad if you don't get them installed right away. Try to start with a machine that isn't your daily driver and blocking your workflow.


Champion! thanks


Interesting. By this, do you mean select '2020-01-01' :: date; is slow, but select '2020-01-01' ::pg_catalog.date; is fast?

If so, that is very surprising. Any ideas why that is slow?


No, just that an adversary character might create a type `date` in a schema that's on your path, so that any data goes through that type's input and output functions / the semantics of the query change.

It's quite similar to why you fully qualify table names and column names.


Can you give a short example? So you don’t trust your own administrator?


> So you don’t trust your own administrator?

Not per se, but it might just as well be that you share the database with several other applications, which might do DDL. Fully qualifying all identifiers is the easiest way to guarantee that you don't have negative dependencies to worry about (i.e. depending on the non-existance of some identifier in a certain schema); the issue will most likely happen only when a) an adversary gets CREATE TYPES access to the database, or when you use custom types and a name that's in use starts to be shadowed.

Examples:

CREATE DOMAIN "bigint" AS pg_catalog.text;

CREATE TYPE "text" AS ENUM ();

Though, in all earnesty, this is also an issue with custom operators:

CREATE OPERATOR = (function = always_false, left_arg = int, right_arg = int);

You can schema-qualify operators ( Col1 OPERATOR(pg_catalog.=) Col2 ), but in doing that you lose operator precedence.


A good corollary might be: "use very specific names for custom types."


I am not sure at the moment but don‘t you need superuser access to create operators? In that case not „any application“ could make your application faulty.


Nope:

> To be able to create an operator, you must have USAGE privilege on the argument types and the return type, as well as EXECUTE privilege on the underlying function. If a commutator or negator operator is specified, you must own these operators.

(https://www.postgresql.org/docs/14/sql-createoperator.html)


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

Search: