HN user

pitdicker

282 karma
Posts5
Comments49
View on HN

To add something similar: I am now at the point where maybe a few times a day I can visualize a glimpse of a memory, but otherwise it is blank and I have no visual dreams. But it does not hinder the ability to think about complex systems in any way. My day job involves making 2D technical drawings from multiple angles, 3D modelling, and of course to come up with the solutions before putting in the work of drawing/modelling stuff.

To give an example from my software at work, structural engineering: You make a 3D-model (BIM, Building Information Model) of the steel skeleton of some project. The software can than generate 2D drawings, the blueprints. All beams, colums etc should be labeled in the drawing with the steel profile and quality (if non-standard).

However the software has a terrible label placement algorithm that happily switches around the labels of adjacent elements. And it does so without notice after some changes to the model. That is behavior that can lead to pretty dangerous mistakes.

The reply of the software company: you have to check it anyway. That is why you get paid, right?

Software engineering takes surprisingly little responsibility compared to other engineering disciplines. This seems like a good development to me.

Of course you can't expect someone who just put something online as a hobby project to take much responsibility. But to ask some basic security/reliability from companies, foundations etc... Shouldn't that just be normal?

As it was explained to me warts are caused by a virus, which at some point the local skin tissue no longer attacks. Any treatment that provokes the immune system in the area without damaging the tissue too much has a change of waking up the immune system to the wart's virus.

If that is true it is no surprise to me all sorts of folk medicine work on warts.

On average man burns ca. 2500 kcal per day, mostly in rest. One hour of reasonably intensive cardio burns 500~600 kcal. If you have two such workouts a week it comes down to an increased energy use of 2*600/(7*2500) = 7%. Or a large meal. Just looking at the numbers it seems spending some time at the gym is not going to do much for loosing weight. Or said differently: eating 7% less is easier.

Of course cardio and strength training are useful for building/preserving muscle mass and general fitness. But for weight loss looking at food seems more effective.

Fair Cake-Cutting 2 years ago

When it comes to economics it never ceases to amaze me that we build an entire system on the basic assumption that everyone acts primarily in their own self-interest, and that that system somewhat manages to function.

Luckily when it comes to regular cake cutting there may be a host involved that just wants to give his guests something nice. And the guests hopefully just enjoy the cake instead of being overly sensitive about the fairness of the divisions.

The syncytiotrophoblast is the outermost layer of the placenta, the part that is pressed against the uterus. It’s literally a layer of cells that have fused together, forming a wall. ... There’s no other structure like this anywhere else in the body.”

When evolutionary biologists like Chuong mapped the genomes of these cells, they found that the protein that allowed these cells to fuse into a wall, called syncytin, didn’t look like it came from human DNA. It looked more like HIV.

So the entire premise of the placenta evolving from a virus rests on the fact that the organ has a unique function requiring a unique protein in the body. Saying the source probably is a virus seems quite a leap of thought. And aren't there many highly specialized proteins in the body?

Has anybody has some more information on what protein in a retrovirus looks similar to syncytin?

If wish we could merge this comment with the thread where people are defending Youtubes right to show ads. I am so glad there is technology available to choose what I want to read and see without being forced too much other content.

If a CC2 building collapses, the expectation is that in only about 3% of the cases this leads to someone dying. I don't know the complete reasoning, but can imagine some factors of why this number is far below 100%: a building is not always in use, there are often warning signs with time to escape, and collapse can be localized (not the whole building).

It may be nice to know the safety factors used for structural engineering of homes, offices and other regular buildings in the EU.

The Eurocode defines 3 consequence classes: CC1, CC2 and CC3. CC1 has the lowest consequence and is used for regular homes, light industry and agriculture. The chance of dying as a result of structural failure is low, 0.001. The chance for a CC2 building (apartment buildings, offices, hotels etc.) is defined as moderate with 0.03. And CC3 is for special buildings, such as large stadiums, with a high risk of death on structural failure, 0.3. There are other factors that go in defining a consequence class however, including economic and social concerns.

The consequence class maps to the chance that we find it acceptable for a building to collapse in a given year. Causes can be anything, like extreme weather. For CC1 this is 1 in 100, for CC2 1 in 10.000, for CC3 a chance of 1 in 100.000.

So the chance one or more people die in a stadium during a heavy storm due to structural failure could be 1 in 300.000 in a year if you purely look at the statistics behind the structural safety standard.

The statistics map to simple reference values for the loads of wind, snow, rain, usage etc. and easy safety factors. For example CC2 has a safety factor of 1,5 over all variable loads.

That is before my time, I only ever owned a serial A3 XY-plotter. Wikipedia (https://en.wikipedia.org/wiki/Plotter#History) suggest it was possible on a roll:

Early pen plotters, e.g., the Calcomp 565 of 1959, worked by placing the paper over a roller that moved the paper back and forth for X motion, while the pen moved back and forth on a track for Y motion. The paper was supplied in roll form and had perforations along both edges that were engaged by sprockets on the rollers.

In the 1980s, the small and lightweight HP 7470 introduced the "grit wheel" mechanism, eliminating the need for perforations along the edges, unlike the Calcomp plotters two decades earlier. The grit wheels at opposite edges of the sheet press against resilient polyurethane-coated rollers and form tiny indentations in the sheet. As the sheet is moved back and forth, the grit wheels keep the sheet in proper registration due to the grit particles falling into the earlier indentations, much like the teeth of two gears meshing. The pen is mounted on a carriage that moves back and forth in a line between the grit wheels, representing the orthogonal axis. These smaller "home-use" plotters became popular for desktop business graphics and in engineering laboratories

I think plotting on sheets was more common though.

For construction plans the A0 and A1 paper sizes are standard. But those paper sizes don't come as sheets, they are printed on a roll of ca. 900mm wide and cut by the printer.

So if the drawing doesn't fit on a standard paper paper we just take the width of an A0 (841mm) and pick some arbitrary length. My personal limit is 200cm because then it becomes a bit impractical to handle. And if it really, really doesn't fit in the 841mm width, I'll take the edges of the 900mm that are usually cut off too instead of splitting the drawing awkwardly over two papers.

From http://prize.hutter1.net/:

Being able to compress well is closely related to intelligence as explained below. While intelligence is a slippery concept, file sizes are hard numbers. Wikipedia is an extensive snapshot of Human Knowledge. If you can compress the first 1GB of Wikipedia better than your predecessors, your (de)compressor likely has to be smart(er). The intention of this prize is to encourage development of intelligent compressors/programs as a path to AGI.

The Task: Losslessly compress the 1GB file enwik9 to less than 114MB. More precisely:

- Create a Linux or Windows compressor comp.exe of size S1 that compresses enwik9 to archive.exe of size S2 such that S:=S1+S2 < L := 114'156'155 (previous record).

- If run, archive.exe produces (without input from other sources) a 10^9 byte file that is identical to enwik9.

- If we can verify your claim, you are eligible for a prize of 500'000€×(1-S/L). Minimum claim is 5'000€ (1% improvement).

- Restrictions: Must run in ≲50 hours using a single CPU core and <10GB RAM and <100GB HDD on our test machine.

My Brother HL2240D (ca. €100) started to see some wear on the wheel that picks up pages after ca 80.000 prints. I combined some parts with another HL2250 that had some wear, and was good to go for a few more years. Rock-solid devices!

I finally picked up a new HL-L2375DW (and passed on the trusty old printer) and have to admit Brother made excellent innovations. As far as there were any annoyances, they are fixed. I no longer turn it off, it remains in standby sipping <<1W of power. And driverless printing is just great.

There was a lot of talk about Firefox having poor performance, but I have never experienced any of it. For daily use Firefox has always been one of the more responsive applications on my PC.

If you experienced poor performance the common explanation at the time was that you either had a profile folder that had accumulated all sorts of stuff that somehow caused a slowdown, or had some unfortunate extensions installed.

You are right. POSIX specifies one thing, the standard library in Rust and some other libraries specifies something different. 'Safe to use unless there are other threads' is not really something you can or want to encode in a type system.

But libraries and users are caught in the middle.

My respects for your work on Chrono!

And you are right about time-rs (or I think you are). Version 0.1 was never fixed, and version 0.3 does the OS and thread count checks.

It does have some advantage for chrono to do everything in Rust: it can now return two results for ambiguous local time during DST transition fold, and properly return None during a transition gap.

This also caused a lot of trouble for time libraries in Rust. The two foundational libraries, chrono and time, rely on localtime_r to get the local time instead of the clock value in UTC. localtime_r reads the TZ environment variable (and optionally others like TZ_DIR). Rust declares it safe to modify the environment, while POSIX declares it unsafe.

CVE-2020-26235, RUSTSEC-2020-0071 and RUSTSEC-2020-0159 where opened against the crates. That left the Rust ecosystem with a pretty much unsolvable issue for many months. Chrono went with the solution to parse the timezone database of the OS natively and read the environment using the Rust locks. Time tries to detect if the libc version has thread-safety guarantees to access the environment, and otherwise panics if there are multiple threads.

More reading: https://docs.rs/chrono/latest/chrono/#security-advisories

Good look to whomever is going to formalize that!

Does anyone have an idea of the amount of effort it would take? Would the effort be comparable with the original proof by Andrew Wiles?

Around 2010 I started playing with Adblock Plus, and provided a translation for a while. Wladimir Palant was a friendly, responsive, and as I understand it respected developer.

There were not countless adblockers, just Adblock and Adblock Plus. Adblock was abandoned, and Adblock Plus was were the innovation and performance improvements were happening.

Adblock Plus was there in the first controversies around adblocking ethics. It 'took care' of the first lawsuit. It did a lot of good work that the later adblockers benefit from.

Personally I have never been a fan of the acceptable ads feature. But it comes from that time, and offers a middle ground in the adblocking ethics debate, and a way to finance legal troubles.

Now I have not been involved in a very long time (Using uBlock Origin and whatever filters are default), but just condemning Adblock Plus outright is a bit too quick.