Live data from Hacker News

Questions

patrickcollison.com

131–140 of 493 posts

Re: Questions

#131
post #105

Earlier quoted context omitted.

The Bible and the Koran would easily be on the world's best seller lists if they weren't excluded by default. You might argue - and I would agree - that this is not necessarily a good thing as far as content goes. But the point is that putting something into writing snd giving it a tangible form on paper gives it an inherent stability and authority missing from digital media. We tend of think of digital media as temp…

>If the file format becomes obsolete, it's gone. (This has actually happened to many video and audio formats.) Any examples of video or audio files that are currently impossible to watch/listen to because knowledge of the file format, and all software capable of playing it was lost? If such a thing has happened, there are probably people interested in reverse engineering the format.

I keep hearing the fear of losing content because of obsolete file formats.

Then I think about Linear B, and I rest again.

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

Re: Questions

#132

Earlier quoted context omitted.

> Development convenience was also among the collateral damage. Don't you find that web & javascript are pretty much a straight denial of your argument ? They're "secure" (meaning we let anyone's javascript code just run in our browsers, even embedded in other people's code, and seriously expect no ill effects) They're extremely inconvenient to develop with. Especially compared to those "run-time above all else" envi…

> On the web, you can't, because every call immediately gets you into overcomplicated minified libraries that you can't change anyway, assuming it doesn't go into a remote call entirely. This is true if you go to a production website and try to start debugging. But it's untrue for any modern development environment. The minification comes later and even then, source maps are first class supported in browsers, mapping…

No, just no. Web debugging is worse than anything I've ever seen - maybe a bit better than cmd-line debugging with gdb, but not much.

Sourcemaps supposedly work, though I have never seen this actually work in practice. And since babel is apparently indispensible, you can't be entirely sure that conditionals and statements in your source haven't been optimized away in the transpilation.

Routinely one sets breakpoints in JS files that are not hit by Chrome dev tools, and symbols that should be in scope don't want to be defined. It's a mess.

I suppose if you know how to structure the rube goldberg machine correctly, web dev can be productive. But it's so hard, and the hardness is of the tedious yak-shaving variety. I just hate it and want to fire up Visual Studio and write some .NET apps with tools that just work instead.

Re: Questions

#133

There needs to be a club of people focusing on these sorts of questions consistently. There are only so many Gwerns and Scott Alexanders and Dredmorbiuses out there. There really are not that many people out there thinking about and discussing the Big Ideas and you keep running into the same ones over time. I fear many club members are lost in the blogosphere and near impossible to find with Google. Some possible ans…

> There needs to be a club of people focusing on these sorts of questions consistently.

They're called "universities".

Re: Questions

#135
> What's the right way to understand and model personality?

With data. Personality is a union of speech, writing, facial expression and body language. Until all of the nuances of these factors are measured across a diverse population in a unified dataset, our models will be primitive. The hardest part of collecting this data is that you want it in up-close and personal day-to-day interactions, from the vantage point of other humans. So the first requisite is discrete and high-res body cameras, but then the real challenge is how to make this type of study double-blind. (How to place the cameras without people knowing they’re wearing them). The models will flow from the data.

Re: Questions

#136

Earlier quoted context omitted.

It’s called price elasticity. It basically means that you’re much more willing to pay a large price for a product you need and which has no substitute than for a commodity product. Which is why stunts like multiplying the price of a drug by 1000 regularly make the news. Note that this is purely about price (ie the value you assign to the product) and has very little to do with its actual cost. Furthermore, since you…

> multiplying the price of a drug by 1000 Did you mean by 11 (1000% increase)? One of my pet peeves with using percentages.

Nope, I meant literally by 1000. I was thinking of Martin Shkreli but some googling shows he merely multiplied the price of the drug by 55 (although I think others have done worse since then)

Re: Questions

#137
post #129
post #106

> Why are programming environments still so primitive? Because we as an industry made a strategic decision in the late 20th century to value run-time efficiency over all other quality metrics, a decision which has manifested itself in the primacy of C and its derivatives. Everything else has been sacrificed in the name of run time efficiency, including, notably, security. Development convenience was also among the co…

Maybe the reason for this has more to do with the type of development structure that helps a language get scale. The rich powerful development environments you've described exist primarily in proprietary, integrated environments. If you want to integrate the editor, debugger, OS, and language, it helps to be able to coordinate the design of all those components. On the other hand, languages that have gotten to huge p…

Both Scheme and Common Lisp have been open standards since their inception. And both have excellent IDEs available, both commercial and open-source (Clozure CL for Common Lisp and Racket for Scheme).

I did my masters thesis in 1986 on Coral Common Lisp on a Macintosh Plus with 800k floppies and 1 MB of RAM. It had an IDE that would still be competitive today, indeed is in some ways still superior to anything available today. All this was possible because it was Common Lisp and not C. The language design really is a huge factor.

(Coral has today evolved into Clozure Common Lisp, which is completely free and open (Apache license). You really should try it.)

Re: Questions

#138
post #131
post #105

Earlier quoted context omitted.

>If the file format becomes obsolete, it's gone. (This has actually happened to many video and audio formats.) Any examples of video or audio files that are currently impossible to watch/listen to because knowledge of the file format, and all software capable of playing it was lost? If such a thing has happened, there are probably people interested in reverse engineering the format.

I keep hearing the fear of losing content because of obsolete file formats. Then I think about Linear B, and I rest again. https://en.wikipedia.org/wiki/Linear_B

There's no emulator that can run a Linear B parser. If a linear B dictionary ever existed, it was never mass produced. Linear B is older than the printing press, let alone the Internet. But now we do have those technologies, and "lots of copies makes stuff safe" is cheaper and easier than ever. I don't believe any mainstream digital format (i.e. popular enough to have a Wikipedia page) will be permanently lost unless there's a complete collapse of society, and then we'll have bigger problems to worry about.

Re: Questions

#139
post #98

Earlier quoted context omitted.

> Why doesn't autocomplete help me based on the adjacent problems others have solved? Doesn't the Facebook editor / autocompleter do that? I guess it's not available to anyone outside Facebook? > Why can't I connect my editor to a running program and hover over values to see what they last were? Why isn't time-traveling debugging widely deployed? Why can't I debug a function without restarting my program? print debug…

All 15 of them? The market has spoken, programmers want free stuff, and they’re happy doing it the old fashioned way. Except for those who aren’t content: [Insert videos from Bret Victor here] https://vimeo.com/36579366 Lighttable is another attempt that comes to mind: http://www.chris-granger.com/lighttable/

From my direct, personal, experience, it goes something like this:

"Don't you want better tools?" I'll ask

"Of course!" the programmer replies (note sometimes this is a conversation with myself) "but I don't want to pay anything for it" they caveat.

"That's no problem," I reply, "as long as it will make your life better."

"Well, that sounds good, but I also don't want to have to learn anything new."

"That..."

"Also, it has to just work from day one, if it doesn't quite work as soon as I touch it, I'll swear off it forever and go talk badly about it on twitter and hacker news."

"Ah..."

"Also, it has to work with every use case I can think of. Multi-threaded, GUI, deployed to HPC clusters running RHEL6 and also Docker containers running CoreOS, and it should be able to help me be productive in either JavaScript or s390 assembler. Also it should take no time to set up, and start giving me answers straightaway."

"Hm..."

"You know what, the methods I already have already satisfy all of these requirements and as a bonus, I don't have to learn anything new in order to use them. I spend enough time learning new frameworks to write software, why would I spend more time learning frameworks to debug software?"

"Because you spend more time debugging software than writing software?"

"Honestly the process of debugging, and the process of writing, have become so intertwined in my thinking, that distinction between them seems arbitrary and pointless."

"Thanks for your time."

Re: Questions

#140
post #130

>> Why do there seem to be more examples of rapidly-completed major projects in the past than the present? A large contributing factor is that major projects today are much more complicated than they were in the past. The tools we have built are always advancing, but the size of the human brain is not. As projects become more and more complicated, they require a larger number of people to collaborate, and that comes…

I suspect this appears to be true but it is an illusion. This is because although you're right there's an incredible complexity to manage - we've been actually doing that using abstraction for a long time by inventing black boxes - sometimes literally white coloured boxes like fridges and washing machines that take away the necessity of thinking about the nuance in domain X but also the development of ideas that abstract out.

We can also make something look very complicated if we try, by switching context, multitasking, improper coordination.

The natural world (think of coal mining, making bicyles, stream engines) always looks very challenging if you're starting out.

> It's also important to distinguish between projects that are deep vs. broad (i.e. those solved by new thinking vs. those solved by scaling up).

Agree.

> As technology has advanced, deep projects just get deeper. Although each level of technology builds on the last, there is still complexity added at every level.

But we see conceptually simple projects everywhere that aren't being done!

We literally use the same tech to construct roads as the Romans. That is trillions of dollars in maintenance.

We know that natural sunlight and biomes would improve people's health in buildings where we spend 99% of our time. We just don't do anything about it apart from a window and a potted rubber plant or two.

We clean our butts with paper! The Koreans and Japanese had this one solved years ago!

There is no great wealth of complexity in any of these - it's just that we've decided not to think about them for legacy reasons.

Post reply on HN