HNHacker News
TopNewBestAskShowJobs

jpfr

1,707 karma · joined March 5, 2014

submissionscomments
jpfr··on Brexit Deal Fails in Parliament
Everybody will try to get as much food over the border as possible. Everybody will work together. The EU, the UK, the US, everybody. But this could still go very very bad.

What do you think "chaos at the border" means? Every truck, train and ship has to get the papers checked where they could just drive through before. But there are not enough qualified officers to actually check all the papers.

So goods will come in at a trickle.

This is the UK governments own statement. Chaos at the border for six months:

> Britain’s government has revised its worst-case Brexit scenario estimates for chaos at the country’s borders, which it now expects to last for six months rather than six weeks, the political editor of The Sun newspaper said.

https://www.reuters.com/article/us-britain-eu-borders/uk-now...

jpfr··on Brexit Deal Fails in Parliament
> A "no deal" outcome, which is clearly bad, is still the best thing brexiters can actually deliver.

It could go much much worse than just "bad".

The UK imports a lot of food from EU neighbors. In case of a hard Brexit, this will just ... stop. The question is whether all supermarkets can immediately redo their supply chains. That is not likely. Especially since the UK will loose all trade agreements with the non-EU countries as well. Because they had been made by the EU with the UK participating.

Our western societies are very efficient but also very fragile. If supermarkets can no longer fill up their shelves, people go hungry fast. If supermarkets can only fill 80% of shelves, people panic and start hoarding food. Those who are too late to the party go hungry. With enough people hungry for a few days, society collapses.

Like ... corpses in the streets.

We know what happened when the Soviet Union went down and shelves went empty. This scenario would end a lot worse for the UK. The Soviets had massive redundancies, inefficiencies and fallbacks that could be exploited. Such as people growing potatoes in their Dachas.

See the material by Dmitry Orlov on how the "soviet scenario" would play out in a western country:

https://www.resilience.org/stories/2006-12-04/closing-collap...

http://cluborlov.blogspot.com/2009/02/social-collapse-best-p...

Update:

What do you think "chaos at the border" means? Everybody will try to get as much stuff over the border as possible. Everybody will work together. The EU, the UK, the US, everybody. With the best intentions. But this could still go very very bad.

Every truck, train and ship has to get the papers checked where they could just drive through before. But there are not enough qualified officers to actually check all the papers.

So goods will come in at a trickle. Even with the best intentions.

This the UK governments own statement. Chaos at the border for six months:

> Britain’s government has revised its worst-case Brexit scenario estimates for chaos at the country’s borders, which it now expects to last for six months rather than six weeks, the political editor of The Sun newspaper said.

https://www.reuters.com/article/us-britain-eu-borders/uk-now...

jpfr··on $1T is leaving Britain because of Brexit
> EU member states will still want UK money.

Those shiny Euros the UK is coining?

Seriously, the banking services provided by the city will move to Paris and Frankfurt in no time. Outside the EU, London has zero structural advantage or lock-in.

jpfr··on Ask HN: How do you fix engineering culture?
No need to censor your private thoughts. But beware that many engineers have seen broken promises by management at some time in their career.

So they are difficult to convince that this time it’s different.

jpfr··on Ask HN: How do you fix engineering culture?
Consulting and “product engineering” are very different in the culture they require to be successful. From your description it sounds your culture is consulting heavy.

Read the books by Rands to understand the difference. And his blog posts about engineer personalities and group dynamics.

http://randsinrepose.com

jpfr··on Ask HN: How do you fix engineering culture?
What management thinks is irrelevant to morale.

What the engineers believe management thinks is relevant. Your last sentence seems to prove a point here.

jpfr··on Germany plans €3B in AI investments
Engineering Startup => Karlsruhe
jpfr··on Reasons to Fear Another ‘Great War’
Very similar arguments were made over 100 years ago.

And then the WW1 broke out.

Dan Carlin gives the relevant background quite good.

https://www.dancarlin.com/product/hardcore-history-50-bluepr...

jpfr··on A Plan 9 C compiler for RISC-V [pdf]
What are the advantages of using the Plan9 compiler versus TinyCC?

https://bellard.org/tcc/

https://repo.or.cz/w/tinycc.git

jpfr··on How to Write a Technical Paper [pdf]
The Bible for these things:

http://www.treesmapsandtheorems.com/pdfs/TM&Th-samplepages.p...

jpfr··on M.I.T. Plans College for Artificial Intelligence, Backed by $1B
Neural networks are all "nonlinear function approximation". Last I checked, the state-of-the-art in all the fields you mention is some variation of deep neural network.

Not to be despicable. On the contrary, function approximation is a very rich and deep topic.

jpfr··on TinyTeX: A lightweight and easy-to-maintain LaTeX distribution
Have you tried LuaTeX? If you use plain TeX (without requiring extra LaTeX files), you should only need the binary.

LuaTeX is the successor of pdfTeX. Much improved. And it can use your local .ttf/.otf/... font files out of the box.

The install is very minimalistic and should not require more than downloading a binary and maybe a config file.

http://minimals.contextgarden.net/current/bin/luatex/linux-6...

jpfr··on Don’t sign a CLA
I do not agree with the sentiment that all CLA are evil.

Yes, CLA that transfer all ownership to the project are bad. But many CLA are in place to protect the project from bad actors. For example companies suing the project because an employee has submitted code that he wasn't allowed to make public.

I use a CLA in an open source project. But it does not transfer ownership. It just states that the contributor is allowed to make the contributions and accepts the license.

https://gist.github.com/Pro/7d90e84b0765e7aa9068667e3418ef52

jpfr··on Skripal Suspect Boshirov Identified as GRU Colonel Anatoliy Chepiga
They had to make some very unlikely connections. Look for the jumps in their analysis where they suddenly know what to Google for. Because of what? A photo from somebody in Chechnya that looks not at all like the guy they want.

Could be they knew what they had to find... Anyway, they have some great sources for an open source analysis joint! ;-)

jpfr··on If You're Not Writing a Program, Don't Use a Programming Language [video]
We had the perfect term early on: informatics

It is also the official term for computer science in many cultures. Mostly in European countries/languages.

jpfr··on Numworks: open-source, Python-compatible handheld graphing calculator
embedded.fm recently had a great episode with the guy who hacked TI calculator protections. Apparently they could brute-force the keys required to build custom ROMs.

https://www.embedded.fm/episodes/259

jpfr··on Constraint Solver (2015)
There is a huge class of non-linear problems where gradient descent (with line search) is guaranteed to find the global optimum: Convex optimization problems.

And within convex problems there is a hierarchy of "difficulty": LP ⊂ QP ⊂ SOCP ⊂ SDP

The Simplex algorithm solves only LP. And it was shown that the Simplex has an exponential worst-case runtime (in the number of constraints). Whereas interior-point methods (basically variations of Gradient Descent) have a much better worst-case runtime.

See here for further reference: http://web.stanford.edu/~boyd/cvxbook/bv_cvxbook.pdf

jpfr··on The algebra and calculus of algebraic data types
Such functions can’t exist.

The “C” void is expressed by the unit singleton.

So it is |a|^1.

jpfr··on Why Read the Classics? (1986)
This is a great project! Sadly SE has a focus on ePub and similar formats. These are impossible from a typographical standpoint. Text in ePub reader apps always comes out with a ragged right or impossible word breaks.

Latex with the microtype package is the only solution that does text justification on the level of a human professional. Can’t SE convert to that and provide PDF for common screen sizes?

It would be so easy if only Project Gutenberg had a standardized master source format. So conversion tools can be built around that. But all efforts in that direction were killed of by trolls in the community.

jpfr··on Emacs Lisp JIT Compiler
The guile-emacs branch afaik did not use precompiled byte-code. So startup took ages.

Guile itself is making huge progress. There's ongoing work for JIT compilation as well. Andy Wingo drives this work. And he brings a lot of experience from work on the V8 Javascript engine.

I see no technical reason why guile-elisp should be any slower than normal elisp. It's just that some of the optimizations have not yet been put into place. After a switchover all the improvements from Guile will come for free in the future.

See the branches named "master", "lightning" and "wip-elisp" here: http://git.savannah.gnu.org/cgit/guile.git

jpfr··on Scorching Summer in Europe Signals Long-Term Climate Changes
> Time will tell if this is a blip or a trend.

Which (measureable) criterion needs to be fulfilled so that you would acknowledge this as a trend?

jpfr··on Vectorized processing for Apache Arrow
The technology behind this (and Apache Arrow in general!) are really cool.

The HN submission title is much more clickbait than the actual content deserves. Any algorithmic improvement (in terms of big-O runtime complexity) can be scaled up to 100x by making the data set large enough.

jpfr··on Simple, correct, fast: in that order
> The idea that simplicity (which I'm pretty sure that nobody in here is using to specifically mean "the lack of cyclomatic complexity") can be measurably improved but that correctness cannot is incorrect.

Have you seen a program that comes with a formal proof of correctness? I have. And boy, they are really simple.

The end result can be complicated. But the program is broken up into small, simple, easy-to-understand pieces that are then composed.

http://spinroot.com

https://frama-c.com

jpfr··on Simple, correct, fast: in that order
We reached the maximum thread depth.

>> Simplicity is a much better goal for the day-to-day work. Because it can be tracked, measured and evaluated for every individual change.

>How does one purport to measure simplicity?

There's 40 years of research into that. And loads of tools to support dev teams.

You can start here: https://en.wikipedia.org/wiki/Cyclomatic_complexity

Also related are costing models: https://en.wikipedia.org/wiki/COCOMO

jpfr··on Simple, correct, fast: in that order
That's... literally what the author said.

    If your solution is not simple, it will not be correct or fast.
Correctness may be the end-goal. But correctness is absolute. So it is a bad performance indicator to set as the goal. Yes, we can track bugs. But the absence of open bugs is no guarantee for correctness.

I can never say "We are 5% more correct than last week. Keep up the good work!"

Simplicity is a much better goal for the day-to-day work. Because it can be tracked, measured and evaluated for every individual change.

jpfr··on Simple, correct, fast: in that order
Correctness is achieved by simplicity.
jpfr··on Simple, correct, fast: in that order
Your example is a case of premature optimization. That is not what the author is concerned with.

The problem are not the programs that obviously do not work or who break in a very visible fashion. Programs whose deficiencies are known can be fixed or worked around.

The real problem are programs that appear to work correctly but aren't.

To say it with the words of Tony Hoare:

    There are two ways of constructing a software design:
    One way is to make it so simple that there are obviously
    no deficiencies, and the other way is to make it so
    complicated that there are no obvious deficiencies. The
    first method is far more difficult. It demands the same
    skill, devotion, insight, and even inspiration as the
    discovery of the simple physical laws which underlie the
    complex phenomena of nature.
Source: 1980 Turing Award Lecture; Communications of the ACM 24 (2), (February 1981): pp. 75-83.
jpfr··on Literate Programming: Empower Your Writing with Emacs Org-Mode
Jupyter notebooks seem to be the modern form for literate programming.

People are writing entire books in the literate style:

http://nbviewer.jupyter.org/github/rlabbe/Kalman-and-Bayesia...

The style is similar to literate classics like "Structure and Interpretation of Computer Programs" and "Structure and Interpretation of Classical Mechanics".

The only downside is version control. Jupyter uses a custom file format. It is difficult to work with colleagues on the same notebook, since we cannot use the usual code-versioning tools (git/diff/etc.) to manually merge together concurrent changes.

Anybody knows a good solution for this?

jpfr··on Obfuscated Tiny C Compiler (2002)
Development is still going strong.

This is the active code repository of TCC: http://repo.or.cz/w/tinycc.git

jpfr··on Learn just a little Awk (2010)
You might appreciate the original implementation of awk. Good engineering everywhere.

https://github.com/RetroBSD/retrobsd/tree/master/src/cmd/awk

← PreviousPage 6 of 11Next →