Recent submissions

Comment · 5 months ago
Comment · 9 months ago
AWS has the notion of "partitions", which is a technical boundary encompassing multiple regions. This mostly doesn't come up, but it does poke through in certain implementation details, like how AMI manifests for groups of regions (partitions) need to be encrypted for different public keys. Each partition has a specific region which must be targeted for certain partition-wide actions, such as managing IAM endpoints in other regions.

https://docs.aws.amazon.com/whitepapers/latest/aws-fault-iso...

Normal AWS (`aws`) traces to `us-east-1`. AWS GovCloud (US) (`aws-us-gov`) is distinct, based in `us-gov-west-1`. AWS in China (`aws-cn`) is distinct again, based in `cn-north-1`.

The AWS European Sovereign Cloud is implemented as a distinct partition – `aws-eusc` based in `eusc-de-east-1` – so it has exactly as much in common with normal AWS as AWS GovCloud (US) or AWS in China.

Comment · 1 year ago
Comment · 1 year ago
This was TAMDAR data, which is a self-contained instrument package intended specifically for meteorological observations.

https://en.wikipedia.org/wiki/TAMDAR

Observations definitely fell off a cliff as commercial air travel slowed to a crawl. In terms of impact, though… it turned out not to be a big deal.

> Aircraft reports suffered a 75% decline in numbers from mid-March to mid-April 2020; in May the number started increasing again. Despite the loss of data there is no clear signal in the forecast skill—partly because the skill shows considerable variability on daily, seasonal, and interannual timescales (Figures 3 and 4). …

> …

> Overall, we can find no evidence that the decrease in aircraft observations has handicapped numerical forecasts of extreme weather to an extent large enough to incur significant economic impact.

https://agupubs.onlinelibrary.wiley.com/doi/full/10.1029/202...

Comment · 1 year ago
You might be interested in https://burn.dev, a Rust machine learning framework. It has CUDA and ROCm backends among others.
Comment · 1 year ago
Yes! Exactly this.

My last EV used 22 MWh over 6.5 years. That works out to 390W.

My solar array is located at high latitudes (northern Minnesota), the mounting angle isn't great, it's occasionally covered in snow, etc. In these conditions, I need 6.3 solar panels to produce 22 MWh over 6.5 years.

The area used by 6.3 solar panels -- enough PV to cover _all_ my EV's energy needs -- works out to be a parking spot large enough to fit the vehicle but not large enough to fully open any of the doors.

Comment · 1 year ago
Comment · 1 year ago
Comment · 1 year ago
ESPHome fills much of this niche for me. It's a framework for turning YAML device definitions into custom microcontroller firmware, with myriad supporting tools. The official device database at https://devices.esphome.io lists 554 devices but that's nowhere near the end of it.

Most manufacturers bolt on IOT functions by dropping an off-the-shelf module onto their device-specific board. It's sometimes possible to replace the factory firmware with ESPHome, sometimes even using over-the-air updates. For example, AirGradient air quality sensors: https://github.com/MallocArray/airgradient_esphome

Even when it isn't possible to commandeer the factory IOT module, the fact that it _is_ a module is still useful, because it's almost always possible to inhibit or remove the factory module and connect your own instead. The factory IOT module controls and senses the device, so your replacement module can too, using the same pins. For example, an IOT air filter: https://github.com/mill1000/esphome-winix-c545#final-assembl...

Some devices are designed around multidrop communication busses. These are usually even easier, since the ability to join the bus is an intended design feature, even if the device you're using is not intended. For example, many Samsung residential HVAC systems: https://github.com/omerfaruk-aran/esphome_samsung_hvac_bus/d...

Comment · 1 year ago
Comment · 1 year ago
This is true for many but not all weather models.

GFS and IFS are both medium-range global models in the class Google is targeting. These models are spectral models, meaning they pivot the input spatial grid into the frequency domain, carry out weather computations in the frequency domain, and pivot back to provide output grids.

The intuition here is that, at global scale over many days, the primary dynamics are waves doing what waves do. Representing state in terms of waves reduces the accumulation of numerical errors. On the other hand, this only works on spheroids and it comes at the expense of greatly complicating local interactions, so the use of spectral methods for NWP is far from universal.

Comment · 1 year ago
Comment · 1 year ago
It is common to use multipart uploads for large objects, since this both increases throughput and decreases latency. Individual part uploads can happen in parallel and complete in any sequence. There's no architectural requirement that an entire object pass through a single system on either S3's side or on the client's side.
Comment · 2 years ago
> In Rust, the main thread is special. (I consider this unfortunate, but web people like it, because inside browsers, the main thread is very special.) If the main thread exits, all the other threads are silently killed.

Rust inherits this from `pthread_detach()`:

       The detached attribute merely determines the behavior of the
       system when the thread terminates; it does not prevent the thread
       from being terminated if the process terminates using exit(3) (or
       equivalently, if the main thread returns).

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton