Types Of Software Consulting Firms - Which One Do You Work For? - <AUTHOR> http://www.skorks.com/2010/05/8-types-of-software-consulting-firms-which-one-do-you-work-for/ <comment><USER2> OK this guy Alan Skorkin is trying to write "controversial" blog entries - presumably to help promote his services. Well and good. But this is just re- posting the efforts of others with no value added as far as I can see.

Yesterday, as I recall, it was a rather silly attack on JavaScript.

"Nothing to see here" as they say.</comment>


Discovering a New Form of Communication in the Brain - <AUTHOR> https://thedaily.case.edu/discovering-a-new-form-of-communication-in-the-brain/ <comment><USER2> Abstract

Slow periodic activity in the longitudinal hippocampal slice can self‐propagate non‐synaptically by a mechanism consistent with ephaptic coupling

Slow oscillations are a standard feature observed in the cortex and the hippocampus during slow wave sleep. Slow oscillations are characterized by low‐frequency periodic activity (<1 Hz) and are thought to be related to memory consolidation. These waves are assumed to be a reflection of the underlying neural activity, but it is not known if they can, by themselves, be self‐sustained and propagate. Previous studies have shown that slow periodic activity can be reproduced in the in vitro preparation to mimic in vivo slow oscillations. Slow periodic activity can propagate with speeds around 0.1 m s−1 and be modulated by weak electric fields. In the present study, we show that slow periodic activity in the longitudinal hippocampal slice is a self‐regenerating wave which can propagate with and without chemical or electrical synaptic transmission at the same speeds. We also show that applying local extracellular electric fields can modulate or even block the propagation of this wave in both in silico and in vitro models. Our results support the notion that ephaptic coupling plays a significant role in the propagation of the slow hippocampal periodic activity. Moreover, these results indicate that a neural network can give rise to sustained self‐propagating waves by ephaptic coupling, suggesting a novel propagation mechanism for neural activity under normal physiological conditions.

Abstract isn't so flamboyant as the linked article

</comment><comment><USER3> Does anyone know, how does the strength of these fields compare to the strength of the field in the brain from a wifi router at a reasonable distance? Why doesn't all the comms gear mess with our thought processes?

<comment><USER4> Neuroscience PhD student here. The skull acts as a low-pass filter. EEG recordings are typically low pass filtered at 70Hz or lower for example. This is why you can't decode eg speech from a EEG: the neural encoding is at a higher frequency band than can be recorded. Even though the signal is much stronger, digital comms equipment is orders of magnitude higher in frequency and does not penetrate the skull well.

<comment><USER5> What about the radio signal used for MRI imaging, is it blocked by the skull as well? Or is it just strong enough to be able to penetrate the skull?

<comment><USER4> fMRIs use a crazy strong magnetic field—typically >= 3 Tesla. The signal that is measured is not electrical but rather the blood oxygen level. Effectively, this is a correlate of the metabolic expenditure of nearby neurons. Wass it is also like a low-pass filter except here it's more like 0.5 Hz or slower. On the plus, you get much improved spatial resolution

<comment><USER5> MRIs use two magnetic fields, a static one and a dynamic one. And they use a radio signal according to the larmor frequency to excite the spin of the atoms. I was wondering about that radio signal component.

</comment></comment></comment></comment></comment><comment><USER6> Looking at the paper [0], particularly Figure 4, it looks like they cut slices then stick them back together again. This allows the signal to propagate (4.B).

But when a gap of 400 microns is added (4.C), the signal doesn't propagate.

I'm sure that the actual cutting causes some damage, and perfect realignment is unlikely, but I'm not sure how this is conclusive of ephaptic coupling, or how it eliminates the possibility of electrical or chemical communication by synapse, gap junction, or axonal transmission.

[0] [https://physoc.onlinelibrary.wiley.com/doi/10.1113/JP276904](https://physoc.onlinelibrary.wiley.com/doi/10.1113/JP276904)

<comment><USER7> A synaptic cleft is like 40 nm, or 10,000x smaller than 400 microns, so it seems the scales of typical communication are enough orders of magnitude smaller to be an implausible explanation?

<comment><USER6> If the signal transmission worked at 400 microns, I would say that your feature size argument would be a good reason to consider other explanations, but they explicitly show that such a gap _prevents_ the signal from being transmitted.

Instead, the transmissible gap is poorly characterized—-they cut then stick the slices back together. Depending on how clean the cut is, the gap could be quite small. Yet they argue that this unknown small distance (which presumably still contains a fluid interface) is enough to eliminate the usual explanations. That argument feels undersupported to me.

<comment><USER7> Ah, I was under the assumption that 400 microns was implied to be at least within an order of magnitude of the threshold, so for example I assumed the signal transmission worked at at least 40 microns, which is still 1000x the synaptic cleft. If there's no information about where the cut-off is, only some upper limit, perhaps even due to the lack of precision in the technique itself, then this does seem pretty questionable, indeed.

</comment></comment></comment></comment><comment><USER8> When the electrical field potential changes, it changes the probability of neural firing. It's called ephatic coupling. Brain waves (local field potential) aren't just the measured average of the neural firing, but are a signal propagating force. This supports synchronization through entrainment and other resonance effects that are well characterized. Not sure why this is new, but it is great to see it in the news.

<comment><USER8> Here is the reference: [https://www.nature.com/articles/nn.2727](https://www.nature.com/articles/nn.2727)

</comment></comment><comment><USER9> Is this different from retinal waves? [https://en.wikipedia.org/wiki/Retinal_waves](https://en.wikipedia.org/wiki/Retinal_waves)

<comment><USER4> Very different. Retinal waves are a developmental phenomena and use action potentials for propagation. The study at hand attempts to disrupt all action potential transmission.

</comment></comment><comment><USER10> Does the method that Transcranial magnetic stimulation effects neurons relate to this out of interest?

</comment><comment><USER11> I wonder if this validates the Orchestrated Objective Reduction theory of consciousness pioneered by Roger Penrose and Stuart Hameroff. Seems like it would.

<comment><USER12> What does this have to do with supposed qubits inside neurons?

<comment><USER11> A bit technical, but some of the most vocal critics of Orch-OR claimed there was no way that quantum states could orchestrate across synapses or between neurons. This quite interesting finding argues otherwise.

<comment><USER12> I don't see how this enables any orchestration that other signals do not. There's still decoherence. It must have been among the weakest objections to Orch-OR. Knocking down the weakest counter-argument (which sounds like a strawman) doesn't really bolster the hypothesis in any way.

</comment></comment></comment></comment><comment><USER13> I noted this on the other thread about this discovery:

I wonder if this might be a basis for a biological means for "backpropagation"?

</comment><comment><USER14> Is this really new? I always thought that this was essentially the implication of the discovery of standing-waves in the brain

</comment><comment><USER15> what does that mean? is that a form of explanation for why we are more creative or able to solve problems in our sleep (or after sleep)?

<comment><USER16> it means that neurons can 'transmit' a spike to their immediately neighboring neurons even without chemical synaptic transmission (which is the norm). i cant think of a relation to sleep but there could be one.

</comment></comment><comment><USER17> never reported publicly anyway...underpinning of psychic phenomena perhaps?

</comment><comment><USER18> >Until now, there were three known ways that neurons "talk" to each other in the brain: via synaptic transmission, axonal transmission and what are known as "gap junctions" between the neurons.

I know about _chemical synapses_ (the "usual" synapses with gain, and which we model with weights in artificial neural networks, and which transmit information in forward mode), I also know about _electrical synapses_ (fast, no gain, bidirectional, possibly mediator of the backpropagation signal?) but I don't know what they refer to with "axonal transmission" ? surely they don't just mean pulse propagation along the axon, can someone point me to the accepted mechanism of axonal transmission across neurons? from cell body to synapse is just transmission line along the same neuron...

also correlation is not necessarily propagation, consider for example shining a laser dot on a distant wall, and rotating the beam such that the spot moves faster than light: this is perfectly possible, but no physical signal is moving faster than light, rather the dot at some initial time and the dot at a later time are correlated, but are both the result of a laser reflecting of a rotating mirror.

in order to eliminate a mutual cause, you dont make a local cut in some neuronal tissue, you fully separate the tissue, and then measure their electrical activity (preferably optically using a nematic liquid crystal as they used in the past to inspect voltage levels on chips under microscopes) while mounted on micron precision translation stage, and starting from a distance, slowly have the samples approach and measure their correlation, and do the same experiment without a neuron culture, because the correlation may be due to stray electric fields from the environment (another common cause, like the laser for the lightspeed dots)

use 2 different wavelengths (and corresponding filters at the detectors) of light to measure the optical activity of the nematic liquid crystal sensors, in order to make sure no light is leaking through...

According to wikipedia [https://en.wikipedia.org/wiki/Axonal_transport](https://en.wikipedia.org/wiki/Axonal_transport) :

>Since some axons are on the order of meters long, neurons cannot rely on diffusion to carry products of the nucleus and organelles to the end of their axons.

and:

>Vesicular cargoes move relatively fast (50–400 mm/day) whereas transport of soluble (cytosolic) and cytoskeletal proteins takes much longer (moving at less than 8 mm/day).

note that the flow of material in axonal transport is retrograde (i.e. in the opposite direction of pulse transmission), so any feedback, adjoint sensitivity or backpropagation signal - if it exists - to implement Automatic Differentiation in a physical manner, might move at such speeds. I don't know the typical axon lengths (please tell me if you know or can refer me to measured distributions of axon length), but this maximum of about 1000mm implies 125 days (8mm/day) or 2.5 days (400mm/day). If we assume the dimension of the brain as a typical axon length i.e. 10cm = 100mm then this becomes 12.5 days (400mm/day) and 0.25 days or six hours (8mm/day). For 1cm we have 30 hours (8mm/d) and 36 minutes (400mm/d). For 1cm to 10cm typical axon lengths and shorter indeed seem like the kind of time frame of learning, i.e. the weights may be modified during sleep, and the delay line of materials undergoing axonal transport in _each axon_ contain echoes or memories of synaptic activity during the day.

</comment><comment><USER19> _You are only coming through in waves_

<comment><USER3> Nice Scissor Sisters reference :-)

<comment><USER20> I am not familiar with scissors sisters but I know that line from Pink Floyd.

<comment><USER3> They did a cover of the same song. Worth a listen, it's completely different.</comment></comment></comment></comment>


A startup is pitching a mind-uploading service that is 100 percent fatal - <AUTHOR> https://www.technologyreview.com/s/610456/a-startup-is-pitching-a-mind-uploading-service-that-is-100-percent-fatal/ <comment><USER2> The reality of cryonics is a little bit more nuanced than I originally thought. Here's a really good read which changed my mind and puts more color to what Nectome is trying to do - [https://waitbutwhy.com/2016/03/cryonics.html](https://waitbutwhy.com/2016/03/cryonics.html)

</comment><comment><USER3> Wow, so now the cryogenic companies have come to their logical conclusion and will actively kill their customers instead of waiting for them to die on their own.

Still, I don't see why a viable brain scan from your dead brain has significantly better probability than getting your entire body rebuilt from your frozen carcass, so it seems like the competition with the straight up cryo guys for the gullible optimists should be pretty intense. Especially as cryo companies have a longer track record of staying solvent (if they have, I have not idea actually).

</comment><comment><USER4> [https://news.ycombinator.com/item?id=16577627](https://news.ycombinator.com/item?id=16577627)

350+ comments</comment>


Downloading aviation transponder data from GOMX-3 satellite with Gnu-Radio - <AUTHOR> http://destevez.net/2016/05/gomx-3-data-download/ <comment><USER2> A bit more info on GOMX-3.

[http://spaceflight101.com/spacecraft/gomx-3/](http://spaceflight101.com/spacecraft/gomx-3/)

<comment><USER3> Cool! It's amazing how much they can cram on (large) CubeSats these days.

Also, I learned a new term: [https://en.m.wikipedia.org/wiki/Thermopile](https://en.m.wikipedia.org/wiki/Thermopile)</comment></comment>


Brogrammers Bring Frat-House Ethos to Engineers' Geeky Coding World: Tech - <AUTHOR> http://www.bloomberg.com/news/2012-03-02/brogrammers-bring-frat-house-ethos-to-engineers-geeky-coding-world-tech.html

<comment><USER2> To paraphrase Daria: its not bad enough everybody in the tech world thinks they're smarter than me, now they think they're cooler than me too? :)

</comment><comment><USER3> This is not going to add much to the conversation, but.. Urgh!</comment>


US ranked 28th in average Hacker Rank points earned - <AUTHOR> http://www.cnet.com/news/which-country-has-the-best-programmers-hint-its-not-the-us/ <comment><USER2> There are so many other avenues where US developers are engaged in. Please feel free to correct me, but I feel developers involved in Hacker rank are like a relatively small data set.

Another traditional powerhouse India isn't anywhere near the top because their developers are busy working for the well known consulting demons.

It'll be interesting if Hacker rank publishes information equating rank to number of developers belonging to each country, experience level and so forth..

This is good information, but I feel it doesn't offer the complete picture.

</comment><comment><USER3> Ah, there's your problem: "Hacker Rank"

Do I really have to elaborate on that?</comment>


A subway-style diagram of the major Roman roads, based on the Empire ca. 125 AD - <AUTHOR> http://sashat.me/2017/06/03/roman-roads/ <comment><USER2> Tabula Peutingeriana is a road map of Europe which is a copy of a Roman original thought to have been based on a map prepared by Agrippa.

[https://upload.wikimedia.org/wikipedia/commons/5/50/TabulaPe...](https://upload.wikimedia.org/wikipedia/commons/5/50/TabulaPeutingeriana.jpg)

It also has a 'subway' feel, given that not much attention has been paid to getting the shapes correct.

<comment><USER3> Any idea what the small circular lake with the island in the middle, at bottom right might be? That's an interestingly precise shape.

(It's surrounded by labels for desert, but I can't make out the labels on the island itself.)

<comment><USER4> If you look at the map, you can see Samosata up north on the Euphrates, Ressaina between Euphrates and Tigris and Zeugma to the west. Tharrana is next to the circular lake with the island.

[https://en.wikipedia.org/wiki/Samosata](https://en.wikipedia.org/wiki/Samosata) is the modern city of Samsat [https://en.wikipedia.org/wiki/Rhesaina](https://en.wikipedia.org/wiki/Rhesaina) is Ressaina (see [http://www.perseus.tufts.edu/hopper/text?doc=Perseus:text:19...](http://www.perseus.tufts.edu/hopper/text?doc=Perseus:text:1999.04.0064:id=rhesaena- geo)) [https://en.wikipedia.org/wiki/Zeugma,_Commagene](https://en.wikipedia.org/wiki/Zeugma,_Commagene) Zeugma is near modern-day Gaziantep

The location of historic Tharrana is apparently not finally known. Harran, Turkey is one possibility mentioned at [http://www.euratlas.net/cartogra/peutinger/10_mesopotamia/me...](http://www.euratlas.net/cartogra/peutinger/10_mesopotamia/mesopotamia_5_3.html).

Since all reference points are in Turkey or Syria, best guess is that the cirular lake with the island is Al Jaboul Lake, 36.024360"N, 37.610087"E. It used to be a tributary to the Euphrates but no source I could find states exactly when that changed.

<comment><USER5> Good guess!

Here's an alternate proposal: Raqqah. Check it out on the map:

[https://goo.gl/maps/ubW2hp1Wh6N2](https://goo.gl/maps/ubW2hp1Wh6N2)

It obviously isn't in a lake, but it looks like the the tributary coming down from Harran goes both west and east of Raqqah, making it an island of sorts. The shape made by the this "island" is reasonably close to circular. Finally, per the map, it's southeast of Zuegma and south of Harran.

Obviously hypothesising wildly, but this map is just way too much fun.

</comment></comment></comment></comment><comment><USER6> Dear Sasha,

this is brilliant. I know the perfect person to give your map as a present and will buy the high-quality PDF no matter what. But let's try an experiment!

Can you name a price for setting the map free? By which I mean, releasing it and all source materials under a Creative Commons Share-Alike license of your choosing?

If so, then, dear Internet, let's crowdfund at [https://etherpad.wikimedia.org/p/..](https://etherpad.wikimedia.org/p/..). (just based on the honor system, from both sides). If you love Sasha's subway- style diagram of the major Roman roads as much as I do, then consider pledging a certain amount at that Etherpad for setting the map free.

Cheers, Ingo

 _Update_ : Sasha replied to a private mail of mine in a very kind way. He won't set the map free right now. Please still consider supporting him if you like his work. :-)

<comment><USER7> Selling copies to people who want it is more efficient than the crowdfunding approach: the people get their maps right away, and the author gets money right away. There's less friction in this approach.

Of course, we don't get the source code, which is a loss to some people, but all that extra "friction" involved in the crowdfunding path is why simply selling stuff directly is an easier way to make money. It also requires less guesswork on the part of the author as to how much they may be able to extract from the work, in total.

</comment></comment><comment><USER8> It's strange there are so many coastal routes. Shipping virtually anything by sea has been cheaper than moving it over land for a long time, and that probably includes troops. I would have expected roads to connect coastal settlements inland, not along the coast.

<comment><USER9> Romans were notoriously poor sailors. Even when they acquired total domination over all sides of the Med (through sheer stubbornness and massive production of naval units, so that they could move enough land troops to the other side rather than trying to win naval battles), they couldn't completely eradicate piracy; this means sea routes were cheaper but not necessarily safer.

Also, I believe coastal routes were mostly connecting town to town in organic ways. An inland route was usually planned explicitly, and hence named for the consul or emperor who approved it, whereas it looks to me like the coastal routes took more topographical names (adriatica etc) or ended up as extensions of original inland routes (aurelia).

<comment><USER10> _they couldn 't completely eradicate piracy_

I understand that fighting piracy was a political problem. Pirates were mobile, and while any commander could suppress piracy in any area those not caught would move elsewhere and return when the commander's _imperium_ was over and he had to return to Rome to give account.

It was feared that an admiral who was given an _imperium_ for the whole of the Mediterranean would have such power that he would use it for political ands and upturn the system. So piracy grew with Roman hegemony, and when the seas had become so unsafe that the security of the grain supply was a political issue something had to be done. It turned out that the fears were well- founded, Pompeius was given his _imperium maius_ over all the Mediterranean and 50 miles inland, he squashed piracy, and the First Triumvirate followed.

</comment></comment></comment><comment><USER11> Here is a github-hosted copy that isn't subject to the hosting rate-limits until we sort out what to do:

[https://sashatrubetskoy.github.io/romanmap/](https://sashatrubetskoy.github.io/romanmap/)

Edit: I am not the author, I'm too old for this :)

<comment><USER12> It's really lovely. Thanks for doing this. I contributed and look forward to hanging it up once I figure out printing.

How long did it take?

</comment></comment><comment><USER13> See also Orbis: [http://orbis.stanford.edu/](http://orbis.stanford.edu/)

<comment><USER14> Unfortunately, they've decided that Firefox 53 is an "older browser." There needs to be some ECMAScript versioning, some isFeatureAvailable() so that we can stop having this problem.

The older version of the map reminds me of Civ 1.

<comment><USER15> It gets worse. Per comments on [https://github.com/webcompat/web- bugs/issues/172](https://github.com/webcompat/web-bugs/issues/172) if you just spoof the Chrome or Safari UA string the site works fine...

</comment></comment></comment><comment><USER16> Very happily my hometown of Cambodunum is there, feeling strangishly proud. Sadly in 125AD we we're no longer a capital of Raetia, lost that to Augusta Vindelicorum.

<comment><USER17> That's some coincidence. I'm from about 20 min south of there (Im.). I was surprised to see KE on there.

<comment><USER18> 20 minutes by foot or horse?

</comment></comment></comment><comment><USER19> Mirror of image [https://imgur.com/a/VPtUV](https://imgur.com/a/VPtUV)

</comment><comment><USER20> I want to play MiniMetro on this map with Roman chariots instead of subway cars.

</comment><comment><USER21> Great to see the "major" city of Aventicum indirectly mentioned on HN :-) We can still enjoy the amphitheatre for open air concerts and opera.

</comment><comment><USER12> ASK HN: what's the service you use, ideally over the web, where you send a high-quality picture file and they return beautifully printed, large format, frameable prints?

Just contributed and need to send this files somewhere for printing and then find a framer. Thoughts?

<comment><USER22> I've used Canvas Press several times with good results. [http://www.canvaspress.com/](http://www.canvaspress.com/)

</comment></comment><comment><USER23> Tangential: George Dow[0] and Harry Beck[1] created the 'Tube map'.

[0] [https://en.wikipedia.org/wiki/George_Dow](https://en.wikipedia.org/wiki/George_Dow) [1] [https://en.wikipedia.org/wiki/Harry_Beck](https://en.wikipedia.org/wiki/Harry_Beck)

</comment><comment><USER24> Do you find subway-style to be a good method of conveying information? People seem to have agreed that the use of distinct colors is good, but are there more efficient ways of conveying the same info, for a given size? For example London tube map doesn't waste space to show actual distance and I am looking for other ideas on how to compress this.

<comment><USER25> The designer suggests it was done for aesthetic reasons. More importantly it held my interest a lot longer than a typical map might have, and thus I now know more about Ancient Roman roads!

</comment></comment><comment><USER26> What exactly is the benefit of a subway diagram over a normal map? I suppose the only benefit is that it abstracts away geometry and relative distances, so it basically discards information. This could be useful, to make smaller distances more readable in a crowded subway.

But in this case ... what is the use of such a map?

</comment><comment><USER27> ordered! Super awesome work, love it! Question: Did you build this programmatically querying Orbis or just drew it by hand?

<comment><USER28> As for the layout I'd guess hand-drawing. It's not that large a graph to begin with and subway-style layout algorithms tend to be horribly slow.

</comment></comment><comment><USER29> This is really neat. It'd be awesome to see famous people's hometown and traveling routes on top of this.

</comment><comment><USER30> Cached Version: [http://webcache.googleusercontent.com/search?q=cache:TrHiyz4...](http://webcache.googleusercontent.com/search?q=cache:TrHiyz4tPV8J:sashat.me/2017/06/03/roman- roads/+&cd=1&hl=de&ct=clnk&gl=de)

<comment><USER31> Unfortunately that seems to be missing the main bit one would care about, the actual map!

<comment><USER32> Outside of the cached version, the map image itself seems to be accessible: [https://sashat.me/wp- content/uploads/2017/06/Rome_III-01-1.p...](https://sashat.me/wp- content/uploads/2017/06/Rome_III-01-1.png)

I uploaded it to imgur just in case: [https://i.imgur.com/4Ozk1tF.png](https://i.imgur.com/4Ozk1tF.png)

</comment></comment></comment><comment><USER33> Being hosted on #HN has killed it

</comment><comment><USER34> I've started to see more and more of these "Tube map" style maps, and I've started to think about how one would go about making one pragmatically. Any thoughts or suggestions?

</comment><comment><USER35> Vienna seems very off?

<comment><USER36> It is - on the map it refers to the modern-day Vienne, near Lyon (Lugdunum): [https://en.wikipedia.org/wiki/Vienne,_Is%C3%A8re](https://en.wikipedia.org/wiki/Vienne,_Is%C3%A8re)

</comment></comment><comment><USER37> Anyone else see the basis for a really cool game here?

</comment><comment><USER38> Might help to add present-day names as well? I found it hard to research some of these on Wikipedia...

</comment><comment><USER39> Do the colors represent anything? It feels like they could have continued on in many places.

<comment><USER40> Different color means different road. The angles are not based on reality, so you can't really say that the roads 'continue' based on this image, they are merely starting/ending in the same city.

</comment></comment><comment><USER41> mirror: [https://sashatrubetskoy.github.io/romanmap/](https://sashatrubetskoy.github.io/romanmap/) (mods: can you update the link?)

</comment><comment><USER42> Should do this for the planets in Star Trek Federation.

</comment><comment><USER43> It's more like a Highspeed Railway System Map. ;-)

</comment><comment><USER44> Any mirrors? The site appears to be down.

<comment><USER19> [https://imgur.com/a/VPtUV](https://imgur.com/a/VPtUV)

</comment></comment><comment><USER45> The commute is just brutal.

</comment><comment><USER46> florentia is where its at.

</comment><comment><USER47> truly brilliant.

</comment><comment><USER48> Nice

</comment><comment><USER49> "The web service to this account has been limited temporarily!"

HN hug of death strikes again?

<comment><USER19> [https://imgur.com/a/VPtUV](https://imgur.com/a/VPtUV)

</comment></comment><comment><USER50> I'm on vacation in Lutetia right now!

</comment><comment><USER51> Why is Jerusalem not marked? Was the city not big enough at the time?

<comment><USER52> It is marked, as Aelia Capitolina. It was renamed after the emperor Hadrian razed the city and expelled its Jewish population in the aftermath of a revolt.

</comment></comment><comment><USER53> > _The way we travel on roads is very different from rail, which is a slight > flaw in the concept of the map_

You said it, author!</comment>


Casper's IPO is officially a disaster - <AUTHOR> https://www.cnn.com/2020/02/05/investing/casper-ipo-share-price/index.html <comment><USER2> Is Casper supposed to be a tech company? If so that's even more absurd than WeWork.</comment>


Packard Merlin: How Detroit Mass-Produced Britain's Hand-Built Powerhouse (2015) - <AUTHOR> https://www.tested.com/art/makers/492418-packard-merlin-how-detroit-mass-produced-britains-hand-built-powerhouse/ <comment><USER2> The story of the Merlin V12 is really the story of E.J. Houdry, a Frenchman who came to the US in 1930 and, with plenty of help at Standard oil, perfected fluid catalytic cracking of hydrocarbons.

FCC gave the US AVgas with octane as high as 150 by the end of the war. This allowed much higher engine manifold pressures than the Germans before detonation, who had mostly 87 octane fuel throughout the war. Engine power is roughly proportional to manifold pressure.

Source: a long rabbit trail of trying to understand why the Daimler Benz DB 605, while seemingly far more advanced on paper, was never better than parity with the smaller Merlin during WW2. Houdry being in occupied France at the wars' start would make an interesting alternate history.

<comment><USER3> Can you point me to any books on this subject? Sounds like a fascinating story to dive into in more detail.

<comment><USER2> Not specifically about this topic, but "Oil & War: How the Deadly Struggle for Fuel in WWII Meant Victory or Defeat" is the most definitive account of the overall fuel supply factors that I am aware of.

<comment><USER4> That book probably covers the operation to get fuel across the Channel for the D Day invasions. I'm fairly sure Brenzett Aeronautical Museum had a section about it along with some pipe and equipment when I went a few years ago.

There were so many astonishing developments in the background to support the front end fighting which are so easily overlooked.

Thanks for the book info, I've flagged that to get at some point.

<comment><USER2> Many, many, many inventions: -Babbitt bearing alloys with indium -AL7075 -Quartz oscillators -Magnetrons -Vocoding, PCM, and FSK ([https://en.wikipedia.org/wiki/SIGSALY](https://en.wikipedia.org/wiki/SIGSALY))

</comment></comment></comment></comment></comment><comment><USER5> What other engine would have a book written entitled "Sigh For A Merlin"?

[https://www.amazon.com/Sigh-Merlin-Spitfire-Alex- Henshaw/dp/...](https://www.amazon.com/Sigh-Merlin-Spitfire-Alex- Henshaw/dp/0947554831/)

The Boeing Museum of Flight once offered rides in a Merlin-powered P-51. I was first in line that day, and was smiling for a week afterwards.

From the book:

"One day I happened to be chatting near my home with an RAF Wing Commander (retired) now dressed in dark grey slacks and Norfolk jacket. Suddenly out of the blue and on its way to Coningsby was a fighter of the Battle of Britain Flight right over our heads.

We both stopped talking and looked up--the crisp steady note of the old Merlin as joyous a sound as ever it was all those years ago. The ex-Wing Commander said absolutely nothing-- then he sighed. It was such a poignant sigh. I felt it must have invoked so many memories of the days when the Wing Commander was young, daring and vigorous and like a Knight of the Crusade had leapt onto the Spitfire and its Merlin to ride into the pages of history.

The silence was still uninterrupted. Thoughts and memories began to flicker through my mind. I remembered crashing badly and the terrifying sound of things being torn apart; closing my eyes as the ruptured earth flung pieces of metal over my crouching head; the peculiar smell of oil, petrol and glycol and damp earth hanging in my nostrils. Then the panic as I struggled out of parachute, harness and shattered cockpit--and then the silence. An almost deathly silence. As I prayed a word of thanks over the crumpled wreckage and the large black mass buried in the soft ground--once a powerful, gleaming engine--I heard this sigh. It may have been a pressure-relief valve, or glycol, or oil on hot metal, but in the emotion of the moment it became a sound I shall always remember. What better epitaph to a wonderful machine and a magnificent engine than to call my book Sigh for a Merlin?"

<comment><USER6> I agree that Merlin powered planes do sound lovely, but there is also something about the Vulcan howl that is impressive (and a bit disturbing).

Mind you - in both cases recordings really don't do them justice.

<comment><USER5> I agree. Recordings not only don't do them justice, they don't have any similarity at all to how they sound. I recall standing in a field and a P-51 went by overhead, at minimum altitude and full throttle. If one hasn't heard that, one can never understand :-)

<comment><USER6> I must admit that I'd rather like to hear a BRM V16 as well...

</comment></comment></comment></comment><comment><USER7> This is part of a long and interesting story I don't have time to find the right links for...

In the UK compared to the US, say 1850-1950, the premium commanded by skilled labour over unskilled was always much smaller. Or another way to say that is that they had a very large pool of skilled people. This was part of what allowed them to do many interesting things first (like railways), but also as time went on discouraged automation. For example lots of first world war UK munitions factories imported the latest American machines, suddenly needing to modernise once their skilled men were conscripted. This is, I believe, part of why Rolls-Royce were doing things described in the article -- call it a first- mover disadvantage relative to Detroit.

There is lots of interesting data about all these things. If you want to think about robots taking jobs and all that, then understanding (for example) the cotton industry circa 1900 is actually a great place to start. If some factories employ 1/4 the workers of others, that sounds a lot like having 3 robots... transistors are not involved, but certainly dollars (and unions, and taxes, and shipping) are.

<comment><USER8> Thanks that is extremely interesting info. I have noticed when talking to Americans and reading about American manufacturing, I get the sense that workers are not expected to be particularly skilled and that production is designed with that in mind.

I am from a Nordic country and we tend to follow the German style system of vocational training where you go in an apprenticeship and get a certificate. I have tried to understand the American model but it seems less formalized to me. It seems to be more company specific. You get trained to do a particular job at a particular company.

<comment><USER9> It's increasing expected that entry level skilled jobs need an associates degree, which is 2 years at a small college.

A random example:

[https://www.mesacc.edu/programs/manufacturing](https://www.mesacc.edu/programs/manufacturing)

(The only reason that stuff couldn't be available in most high school programs is that we are a bunch of dicks over here)

<comment><USER10> Those are presumably higher level apprenticeships ie the ones you did after a classical craft one.

Having said that today the pool of 15 /16 year olds (usualy working class kids ) good enough to become apprentices now do full degree courses.

</comment></comment></comment></comment><comment><USER6> If you like this then I can recommend _" The Ministry of Ungentlemanly Warfare: Churchill's Mavericks"_ by Giles Milton - it starts with British inventors creating an important new weapon (the limpet mine) from sweets, condoms and bowls from Woolworths in a shed (of course)...

The boffin/craftsman side of things seemed particularly important to the UK effort in WW2.

<comment><USER7> In this vein, R V Jones "Most Secret War" is great if you haven't read it -- about the cat & mouse game of radar development, from a guy deeply involved:

[https://www.amazon.com/gp/product/B0033806QY/](https://www.amazon.com/gp/product/B0033806QY/)

<comment><USER11> Reading around, the stuff R V Jones got up to during that period makes for some entertaining stories!

E.g. [https://en.wikipedia.org/wiki/Battle_of_the_Beams](https://en.wikipedia.org/wiki/Battle_of_the_Beams)

</comment></comment></comment><comment><USER12> Here's some info about the guy that played an important role in figuring out the fuel mixture that made these power outputs possible. It's an equally interesting read.

[http://www.enginehistory.org/Biography/FrankWalkerWeb1.pdf](http://www.enginehistory.org/Biography/FrankWalkerWeb1.pdf)

<comment><USER13> And let's not forget Beatrice Shilling's contribution to the performance and combat-safety of the Merlin:

[https://en.wikipedia.org/wiki/Miss_Shilling%27s_orifice](https://en.wikipedia.org/wiki/Miss_Shilling%27s_orifice)

</comment></comment><comment><USER14> Wonderful piece for those interested in early WWII aviation. There are lessons for software development in there. Brad Cox's classic Planning the Software Industrial Revolution [1] highlights the importance of gauges to Eli Whitney's project to built firearms with interchangeable parts, and asserts we need a similar technology in software to enable construction from reusable components. In Most Dangerous Enemy [2], Stephen Bungay points out that it took 2.5 times more man hours to build a Spitfire than an Me109. German production engineering was far better than British. This piece illustrates that perfectly. Rolls Merlin engine was a great piece of design engineering, but it was inefficient in terms of production engineering. What is intriguing about this article is the detail on the effort needed for Packard to port the Merlin design to their production engineering standards, and then for Rolls and Merlin to share design changes. Effectively sending each other pull requests!

[1] [http://bat8.inria.fr/~lang/hotlist/free/licence/papers/cox/C...](http://bat8.inria.fr/~lang/hotlist/free/licence/papers/cox/CoxPSIR.html) [2] [https://www.amazon.co.uk/Most-Dangerous-Enemy-History- Britai...](https://www.amazon.co.uk/Most-Dangerous-Enemy-History- Britain/dp/1845134818)

<comment><USER8> Interesting, given that I've read that Americans were far better at mass production than the Germans. My impression is that Germans engineered their hardware better than Americans but they were not as good at mass producing it fast.

So if I understand correctly, the British was exceptionally slow at manufacturing compared to the Americans then.

<comment><USER5> I read years ago that the Spitfire required twice as many labor hours to produce than the Me-109. The Germans were pretty good at simplifying the design so it could be mass-produced.

</comment></comment></comment><comment><USER15> Tangentially related to this article is Simon Winchester's latest book "The perfectionists: How Precision Engineers Created the Modern World".

One of the chapters in this book is about the differences between the hand- built cars of Rolls Royce (and their origin story which I never knew) and Henry Ford's production line that required interchangeable precision parts.

<comment><USER16> During a childhood visit to a car factory I noticed how the panels for the small, mass-market, fairly horrid hatchback went together perfectly whilst the panels for the luxury low-volume saloon needed lots of men with actual hammers to bash into shape.

The tooling used to make the hatchback had cost a fortune and was the finest German stuff. The tooling used for the luxury saloon was a lot older and therefore worn. There were no backup dies in the worn tooling so over time the panel fit only got worse with once fine details no longer sharp.

The executives driving their luxury saloons would probably have been horrified if they had known that it was the cheap cars that went together properly in an exact manner with their cars being the ones needing to be bashed to 'look right'. They would also have been horrified to see the same facility used for making panels with everything being 'just being a bit of tin' to the staff rather than their pride and joy.

Having had the reality of luxury exposed as it being hand made, bashed into shape at such a formative age I have always wanted the robot built products, e.g. the mass market car rather than the bashed into shape expensive version.

The deluxe cars of today are still very much 'bashed into shape' in ways that they always have been. The BMW car brand 'Rolls Royce' very much hand-craft cars as they always have, they are not doing it wrong by not re-designing their products to make it so a rival can churn out millions of identical clones.

The original aerospace 'Rolls Royce' was in the same position, making a modest amount of engines and not in 'total war' mode. Their less than precise drawings were fine for what they were doing, they had people to bash stuff into shape, 'luxury auto style', with that making economic sense. The war changed everything though.

</comment></comment><comment><USER17> > That the Merlin outperformed the Allison at high altitude is hardly a > condemnation of the American-designed engine. In its element (up to about > 15,000 feet), the V-1710 was robust and reliable – utilizing fewer than half > the number of parts found in a Merlin. It was also extremely adaptable to > different configurations of gearing, rotation direction, accessories, etc. > The Allison engine is a showpiece of modular design.

\---

Engineering is finding the best compromise for a particular set of requirements.

</comment><comment><USER18> Reno air races coming up in September! [https://airrace.org](https://airrace.org) great opportunity to see and hear maxed out merlins pylon racing [https://youtu.be/X6ClBodW_lc](https://youtu.be/X6ClBodW_lc) [https://youtu.be/Xn805LoN6mw](https://youtu.be/Xn805LoN6mw)

<comment><USER19> [https://www.youtube.com/watch?v=JyWUTXuXjr0](https://www.youtube.com/watch?v=JyWUTXuXjr0) pretty disturbing end of a P51.

<comment><USER20> If you don't have a fear of flying and want to acquire it, reading NTSB reports of aviation accidents is a good start. In this case, [https://www.ntsb.gov/investigations/AccidentReports/Reports/...](https://www.ntsb.gov/investigations/AccidentReports/Reports/AAB1201.pdf)

</comment></comment></comment><comment><USER21> How about a 5 litre v-twin motorcycle cut off a Merlin engine?

[http://www.abc.net.au/local/photos/2015/08/19/4296075.htm](http://www.abc.net.au/local/photos/2015/08/19/4296075.htm)

</comment><comment><USER22> As a kid I remember reading an article in a hot rod magazine about a drag racer powered by a Merlin engine. It was quick, as you'd imagine, but easily overpowered the tires of the time so not as quick as it could have been. I wonder what happened to it.

</comment><comment><USER23> An interesting fact is that former Packard engineers were fathers of archetypal "American V8s." Some solutions they saw on Merlins were replicated 1-to-1 in their own works like cylinder head designs.

</comment><comment><USER24> Because Detroit built the Merlin engine in World War II - today, we don't have to say "Vorsprung Durch Technik"

<comment><USER25> >> we don't have to say "Vorsprung Durch Technik"

And yet apparently, some actually _do_ have to regurgitate 1980's-era copy from a German automobile makers' successful advertising campaign in (at least) the British market. As though doing so were some kind of victory. _Leave_ s me so sad.

<comment><USER6> Doesn't Audi still use _Vorsprung Durch Technik_ in their UK advertising?</comment></comment></comment>


Ask HN: How do you do your Market Research? - <AUTHOR>

It amazed me the other day when I was speaking with a friend of mine who built and sold his successful company pre dot-com. The company made it easier for people to receive faxes about a product/service being mentioned in radio.
The amazing part: of course, when one hears radio these days, we normally think of commuter traffic. But, what my friend discovered then was that a significant percentage of listeners were at work, where they had fax machines! What I am trying to say is that a little more digging and setting your assumptions aside about a market can bring interesting results!
So, dear hackers, how do you do your market research? Do you settle for a quick Google search or scourge through the databases at your local library? <comment><USER2> I used to use my schools' database connections, but lost them upon graduation. Oh the joys of being an adult.</comment>


Website Builder Webflow (YC S13) Went from Near Bankruptcy to $72M Series A - <AUTHOR> https://www.forbes.com/sites/alexkonrad/2019/08/07/webflow-went-from-near-bankruptcy-to-72-million-series-a/ <comment><USER2> Hey HN! I'm Vlad, CEO and one of the co-founders of Webflow.

It was over 6 years ago now, a just several months a rejection email from YC and a few weeks from being essentially bankrupt (my daughter had an unexpected surgery while we had only catastrophic health insurance), we posted a Show HN about Webflow ([https://news.ycombinator.com/item?id=5407499](https://news.ycombinator.com/item?id=5407499)). It was our last "hail mary" to show something tangible to the world before promising our partners to go back to our old jobs to actually get some income again.

Luckily, the Show HN took off like wildfire and we stuck to the #1 spot nearly all day. Tens of thousands of people signed up for our beta. This really helped us reapply to YC with tons more traction (and boundless confidence this time), and we were lucky enough to get in to the next batch.

We're now a team of over 120 people across 20 countries, serving billions of requests for tens of thousands of paying customers. I'm very confident that we wouldn't have been able to achieve this had the HN post not taken off here, and we're so thankful for the positive reception. Luckily, we didn't get those funny "I can build this in a day with some bash scripts!" kinds of comments :)

Even though it's been many years since then, we're still on the same mission to empower millions more people to build powerful websites (and increasingly, more powerful software!) without code. We believe that in the end, democratizing software creation will multiply the potential of the internet, likely by at least an order of magnitude.

A HUGE and humble thank you to the community here, and for your support way back when!

<comment><USER3> Vlad, thanks for building Webflow! My team and I love it. Building a company these days requires a website that looks and works great - but as a founder I'd rather spend my time working on the product and talking to customers. Webflow is perfect for it. Our designer Blanka knew nothing about web design, she used to do photoshop / illutrator mockups and rely on me or another person on the team to make it into a website. We switched to Webflow, and I spent an hour on a Skype call with her showing her the basics. Now she does everything herself. This is the website -> [https://datacue.co](https://datacue.co) \- was all done by someone who knew 0 about web dev.

The best thing about webflow for me is how it makes advanced features like CSS animations accessible to people. If you resize the website width till you see the mobile version, a hamburger menu pops up. Click on it and you'll see a little animation. I can't tell you how proud Blanka was that she did it herself, was really great to see.

Sorry this sounds like such an advert for you guys - but I'm a very happy customer.

<comment><USER2> Thank you so much for the kind words, and so happy to see that you've found Webflow to be so useful! Go Blanka!

<comment><USER4> I own a large web design agency, do you have options for partnership? We are always interested in new tools and better ways of doing things for our clients.

</comment></comment></comment></comment><comment><USER5> I think the main differentiator for webflow is the user experience of their tool. Its very well done, intuitive, easy to use but doesn't oversimplify. If designing app front ends was this easy it would be awesome.

In my mind the hook into their hosting service is keeping them from their potential. If they had a stand alone tool I could use or a corp lvl tool, it could be big.

That being said, maybe there is more money in it for them to do it this way. But as a designer I see so much missed opportunity to unit design and code for front end work. (And eventually basic app functionalities)

<comment><USER6> Yeah, my main complaint about Webflow is the lack of a standalone tool. Last time I was designing for a client, I was travelling in east Africa, and simply couldn't afford to pay refill cards for the data needed to use Webflow online.

The closest competitor I've found that is standalone is Pnegrow. It is pretty cool, but still not nearly as intuitive and fast to learn as we flow, sadly.

<comment><USER6> Sorry for the typos (mobile keyboard, arrgh).

For completeness, the link to the Pinegrow editor:

[https://pinegrow.com](https://pinegrow.com)

Also, I seem to have forgot to point out that one requirement I was looking for was Linux support (Pinegrow runs fine on Xubuntu).

</comment></comment></comment><comment><USER7> Congrats to these folks. But I have a serious, genuine question: How many of these click-and-drag, WYSIWYG website creators are we going to see?

I get there's a need for the long-tail of web traffic (small businesses, etc) to create an internet presence. But is it all that profitable, which I imagine is plenty of competition to undercut your prices? I don't know how a Wix, etc. can stand out or have a competitive advantage in this space. There are so many of them it seems.

<comment><USER8> Webflow is different. It doesn't limit to set of templates and their styling, which most other site builders do. It's a GUI layer above raw CSS and HTML, which gives you the ability to build virtually anything. It's an order of magnitude more powerful than its competitors. Webflow's own website[1] is a great example of what you can make with it.

Considering how many marketing departments I have seen struggling to pull someone from the dev team to fix a tiny, tiny change, this is a massive opportunity.

[1]: [https://webflow.com/](https://webflow.com/)

<comment><USER7> So when there isn't a template to do what you need, you have to know CSS and HTML, and must code yourself. The premise is "no-code". The uniqueness of this editor is it's ability to play nicely with anything you write yourself.

<comment><USER9> Nope. You don't have to code anything. That's the whole point. If you don't have a template, you start from a blank page and you build it using the GUI.

<comment><USER7> My original discussion point (top-level comment) was that feature alone doesn't sound like much of a differentiator from other WYSIWYG web builders out there.

<comment><USER2> That is, in fact, our main differentiator – and the main reason people choose Webflow. Check out this very diverse set of sites [1] that can be built with Webflow, this ability to visually develop any kind of custom layout/experience really does go a long way to distance us from any competitors.

[1] [https://webflow.com/discover/popular](https://webflow.com/discover/popular)

<comment><USER7> These sites are quite varied, I do agree. One small thing I noticed. Some sites could have improved tab navigation, for example [https://www.memberstack.io/](https://www.memberstack.io/). The site, without any interaction, is buttery smooth 60fps. When I start tabbing through the "What others are saying..." carousel, though, it destroys the animation frame rate (Chrome, Mac OS, 32 GB RAM).

</comment></comment></comment></comment></comment></comment></comment><comment><USER10> Great story! Couple of minor suggestions.

> Before you dig in, note that while sites built in Webflow work in all modern > browsers, we don't actively support use of the Designer in Mozilla Firefox. > Given all that has been said about BigTech, it will be awesome if firefox > becomes a priority so that we dont need to use Chrome.

One feature suggestion - being able to import CSS and HTML and then work with them. Often I will buy wordpress themes and want to customize them a little bit. Or when I want to move an existing site to maintain it using webflow. This will also open up revenue channel, being able to buy themes from other marketplaces and use them in webflow.

</comment><comment><USER11> I would say well deserved! I am not anymore into web design nor did I ever liked it much (I went low-level and to hardware design) but when I needed to do it I used webflow and it was delight. Easy, intuitive and really great tutorials were there.

Thanks Webflow team!

</comment><comment><USER12> As a non-coding technologist I was also a skeptic about how this was differentiated from other non-coding options, but it seems I need to get on the Webflow train. I will now add it with Figma to the toolbox for my venture builder empowering immigrant entrepreneurs - seems to have a good story to match that too. Cheers Webflow team!

</comment><comment><USER13> Congrats, but it's weird how $72M is series A. Facebook's Series C was $15M, Snap $50M series C. Weird.

<comment><USER14> It's because they were able to build a decently large business purely with their seed founding + ongoing revenues (It's called an A round because they've only ever raised a seed)

</comment></comment><comment><USER15> As someone who makes a living with react, I'd still turn to webflow if I had to throw together a quick design or help a friend out. Just feels way quicker and wysiwyg than doing it all by hand. Cheers for building such a nice product, and you know, surviving.

</comment><comment><USER16> Congrats Vlad, Bryant, and Sergie! Very happy for you guys. Well-deserved!

<comment><USER2> Thank you, Glen!

</comment></comment><comment><USER17> Very cool. For people familiar with WordPress, specifically what's the value proposition/reasons why it's better relative to a common CMS like WordPress?

</comment><comment><USER18> wonderful inspiring story about never giving up, showing how much luck & timing play in making or breaking a great idea, and that the American dream is still alive and kicking — as Ukrainian Refugee myself who migrated around the same time, has grew up poor through the wild 80s, and survived the Internet bubble..and still chasing it..I salut you!

</comment><comment><USER19> Congrats Vlad + team!

<comment><USER2> Thanks Brandon!

</comment></comment><comment><USER20> Wow, designers must be shitting their pants. You could fire a whole department and use this stuff easily!

<comment><USER21> If you only need a static website then it's a great solution.

But it is NOT hard to start running into barriers. In my experience it's essentially impossible to use it as a frontend design tool with say a node.js backend. There's no templating support, very restricted export (their CMS costs extra per site, and isn't part of the export), etc.

If your website has a login button then I'd be impressed if you designed the whole thing in webflow.

<comment><USER22> Exact reason why we migrated a webflow site to Next.js/GraphQL/Contentful/Hasura stack.

Webflow is an awesome design tool, but the exported code is very messy to work with. If are a designer or plan to stay on webflow for simpler static sites, it wouldn't matter though.

However, It does create a technical debt if you happen to scale up and your needs grow.

</comment></comment></comment><comment><USER23> I used to bump into Vlad and Sergey in Hackerdojo when they were hacking the very early version of Webflow.. I used the very first version and loved it..

Amazing story of persistence and focus. Keep up the great work folks!</comment>


A new way to read and print double-sided paper (2016) - <AUTHOR> https://mathlesstraveled.com/2016/01/08/a-new-way-to-read-and-print-double-sided-paper/ <comment> yoz-y I'd rather have 1/8 2/7 3/6 4/5 that way you read a page, flip it and put it on top of another stack. You end up with a well ordered stack with the second half correctly ordered.

<comment><USER2> With a second stack you could use the original numbering of the article in an even simpler way: read a page, put it on top of another stack (no need to flip). When your original stack is empty, flip the entire second stack once. Now it's correctly ordered for the second half.

<comment> yoz-y Actually, I haven't even thought of that, you are absolutely right! Flipping the paper just seems so natural.

</comment></comment></comment><comment><USER3> > There are downsides, though. One is that it's hard to jump ahead in the > document by more than one page at a time.

Another is that it's pretty hard to do with a stapled stack of pages, which is usually how I'd arrange a bunch of loose sheets.

<comment><USER4> I agree. I read through a stack of academic papers yesterday. Each one was printed double-sided and stapled. Why would you not staple it? I've never had a problem reading a paper this way.

This is like some runner making a blog post about how they found a better way to run that involves alternating between running on your feet and then running on your hands as it prevents the soles of your feet from getting as worn down. No! Put some shoes on and get on with your life!

<comment><USER5> > alternating between running on your feet and then running on your hands

I mean, this is how most fast-running mammals run (if you interpret "hands" to mean "front feet").

</comment></comment></comment><comment><USER6> Book printing has long involved printing pages out of order and in different orientations, so that pages are in the right order when the sheets (called signatures) are bound into the book. See an example here: [https://www.formaxprinting.com/blog/2018/01/book-printing- li...](https://www.formaxprinting.com/blog/2018/01/book-printing-lingo-what- is-a-signature/)

<comment><USER7> Nice explanation, thanks.

I worked on print production software. We called that style of imposition "bookwork". I once wrote a small app that'd generate those book signatures. Answer a few questions (page size, sheet size, style of binding, etc) to generate the whole production plan.

Sadly, my work (IP) was lost during a series of acquisitions. Then the whole industry segment imploded (ebooks, composite on demand printing, etc).

Anyone wanting to do print production (eg litho) bookwork today would probably start with EFI's Metrix, which I've never seen or used. But I know the creator (Rohan Holt) and prepress is his thing.

[https://www.efi.com/products/productivity- software/impositio...](https://www.efi.com/products/productivity- software/imposition-layout/efi-metrix-planning-and-imposition/overview/)

</comment></comment><comment><USER8> Well, if you want to extend your note collection you run in a problem, unless you use decimals for page numbering.

</comment><comment><USER9> > _Printing and reading things this way completely removes the need for any > rules, mnemonic devices, etc. to remember where you are and what to do next_

Yeah, except when somebody flips a page accidentally and/or someone else puts the second page on the bottom.

</comment><comment><USER10> What is triple sided paper? My searching isn't giving me anything...

<comment><AUTHOR> He's a mathematician. Musing about how reading a paper would be if paper had three sides. It's not a real thing.

<comment><USER10> Thank you! That definitely wasn't clear to me.

</comment></comment></comment><comment><USER11> When you bind the pages this doesn't work anymore, since you can't reorder the read page to the back.

Did I miss the author addressing this, or is it one of the disadvantages not listed?

<comment> yoz-y > But this is not a book, it is a stack of loose paper!

<comment><USER11> I promise I did look! Thanks, though.</comment></comment></comment>


Show HN: We built a simple video-call summarizer for macOS - <AUTHOR> https://get-spoke.com/ <comment><AUTHOR> During the confinement, as we spent our lives on video-conferences which we all had to attend although most of us were not active participants, but required "information attendees", we set out to build a video-call summarizer for MacOS.

The goal was to summarize video conversations, save, and share them with our team easily. So we set out to build a tool to capture video-conversation moments, upload them, run Text-To-Speech solutions on them, and then provide a simple "video editing by text editing" interface to clean and share the videos in a few minutes.

We started by building the video recorder itself in Swift, with AVFondation. Swift has all the wanted features of a modern language, but XCode just ruins it. On top of that, the documentation of AVFondation has up to almost no documentation when you implement something out of the ordinary (for instance the function to choose the format of video recordings takes a dictionary where 99% of the values lead to a crash).

So to mitigate this issue, we now use ffmpeg to convert the movs created by AVFondation to a good audio and video format for the web and audio-analysis.

On the web side of things, we started out by using Python / Django. Frustrated by Django's monolith and poor documentation, we switched to Rust with Rocket, overcoming our fears of lack of maturity. Rocket has just the right level of abstraction, everything being explicit, with a lot of procedural macros to reduce the boilerplate. One limitation we however encountered was that Rocket does not handle well hanging connections, which can be very problematic when uploading videos. This ended up blocking all the threads if the user's connection was reset during an upload, so we had to put Nginx ahead of Rocket.

A few months after starting the journey of building Spoke we just launched version 1.0. If you're also bored by attending useless video-conference calls when somebody could've just sent you a summary, feel free to check it out.

</comment><comment><USER2> Very interesting concept. I always find it surprising that people run online meeting as they would run off-line ones.

I think you are onto something, video-call summarizer + transcription will make off-line call so obsolete that they probably won't exist anymore in a few years.</comment>


Python Data Science Handbook Supplemental Materials - <AUTHOR> https://github.com/jakevdp/PythonDataScienceHandbook <comment><USER2> These notebooks are just Python code. They even have #-comments instead of markdown.

For awesome Python notebooks, see [http://norvig.com/ipython/README.html](http://norvig.com/ipython/README.html)</comment>


React is the new jQuery - <AUTHOR> https://medium.com/outsystems-engineering/react-is-the-new-jquery-64ae6d468358#.580du2i87 <comment><USER2> Considering that the goal of comprehensive JS web frameworks like React and Angular is precisely to move beyond naive--in the opinion of those frameworks, anyway--manual DOM manipulation as a means of instrumenting UIs and into higher-level MVC, this is a bewildering statement.

</comment><comment><USER3> Not correct, it will never be as big or good as jQuery.

</comment><comment><USER4> It's on Medium, so it must be true.

Seriously, the article has almost no content.

</comment><comment><USER5> No, it really isn't.

</comment><comment><USER6> No, no.</comment>


Swift: Challenges and Opportunity for Language and Compiler Research [pdf] - <AUTHOR> http://researcher.watson.ibm.com/researcher/files/us-lmandel/lattner.pdf <comment><USER2> Funny how people here mention source breaking change as the main issue with the language. I think it's because they haven't used swift on a large codebase. The main issue once you start to work on a big project are compiler crash ( [https://github.com/practicalswift/swift-compiler- crashes](https://github.com/practicalswift/swift-compiler-crashes) ) and compilation time.

I really don't understand how a compiler can crash that much ( actually i've been coding in many client and server languages before and it's the first time i see a compiler crashing while i code). It makes me really nervous, because it shows that unit tests aren't good enough, and that the language is really in alpha stage, not more.

As for compilation time, you may think it's just a matter of optimisation. But the problem is that until those optimisation arrive, you can't rely too much on type inference (main source of slowdowns), which diminishes a lot the beauty of the code.

Now that was for client side. Server side probably adds its share of issues.

I used to be very optimistic for this language, but i'd say the swift team only has one more shot to make it really production grade, before the word spreads that this language is for now just a joke ( maybe apple using it for its own app would help allocate more resources).

<comment><USER3> I actually love the source breaking changes. The alternative is easier and much worse, and it takes boldness to not roll with the alternative, e.g. add language bloat and keep suboptimal decisions as part of the language just to support code that's already shipped.

C++ is the prime example of what the alternative looks like.

<comment><USER4> I'm not sure I agree.

My girlfriend has decided to learn programming. She started with Swift because she wanted to write iOS apps. The course she's using targets Swift 2 but her install is Swift 3, or something like that (I haven't looked into it much).

XCode constantly flags stuff like x++ being replaced with x += 1. Really? Surely that's the kind of decision you make before version one of a language, not years after release. Why this pointless churn?

If these sorts of totally-indecisive deprecations were rare then you could overlook them, as otherwise Swift is a rather nice language. But they're everywhere. Even in trivial examples intended for beginners line after line of code gets the yellow deprecation warnings. "What does deprecated mean" was literally one of the first questions my girl asked me as she started out learning programming, which is ludicrous. You shouldn't be encountering deprecation warnings over and over when targeting a brand new platform using a teaching course barely a year old.

<comment><USER5> If your girlfriend wants a stable language for iOS development she should use Objective-C. Apple have been very clear about the fact that Swift is evolving and that there will be breaking changes.

Changes to Swift are hardly indecisive or pointless. A very clear rationale for removing the ++ operator was laid out here: [https://github.com/apple/swift- evolution/blob/master/proposa...](https://github.com/apple/swift- evolution/blob/master/proposals/0004-remove-pre-post-inc-decrement.md).

While these changes may be painful now (though the removal of the ++ operator seems minor to me), they should result in a stronger and simpler language in the long run.

<comment><USER4> The course she bought (without my input btw, she's pretty independent!) uses Swift. And that's probably right. Swift is a much nicer language than Objective-C, much closer to modern languages and has far less of the C heritage poking through. Even with the deprecation warnings, it's probably easier to deal with.

Removing x++ is indeed minor, which is why it's so curious. Sure, there are arguments for removing it. But there are also arguments for minimising language churn and just living with these things.

<comment><USER6> You could give a little help to your girlfriend. How about installing for her the required swift version by her course with swiftenv? This way she could learn the basics without getting nagged by Xcode. Later she could read up the differences and port her code to practice.

</comment></comment></comment></comment></comment></comment><comment><USER7> I found that on macOS, refactoring even a tiny Xcode project to use Swift added 10 MB of libraries to the resulting bundle. The OS needs to start including a stable set of Swift frameworks _by default_ so that Swift-based programs do not require users to download much fatter binaries.

<comment><USER8> Swift needs a stable ABI before that can happen. That was planned for Swift 3, but it didn't work out. Currently it's planned for Swift 4, which will ship next fall. If Apple immediately takes the opportunity to bundle the libraries with the system, then apps targeting iOS 11 or macOS 10.13 written in Swift 4 will be able to avoid embedding the libraries.

<comment><USER7> I don't necessarily mind paying the cost _once_ but since I tend to refactor applications into multiple utility applications (separation of concerns, crash stability, security, etc.) this means _each_ sub-bundle pays the cost too. At the moment I have not found an obvious way to avoid this, aside from somehow hacking all of them to symbolically-link to the same copy of the Swift libraries or something. Therefore, instead, I stick with Objective-C.

</comment></comment></comment><comment><USER9> I've recently started working on an iOS app in Swift 3 and it's a mostly pleasant experience, even though XCode doesn't have Vim keybinds.

I hope Swift can break out of the app-building niche, but from these slides it sounds like it will be a while until it can compete with Go and others in the high-concurrency space.

<comment><USER10> XVim[0] still works well if you're willing to resign Xcode. There are simple instructions in INSTALL_Xcode8.md.

0: [https://github.com/XVimProject/XVim](https://github.com/XVimProject/XVim)

<comment><USER11> I've been using XVim as well. The only downside is that it hides the cursor in Swift Playgrounds, so they can't really be used.

No problems inside Xcode projects though.

<comment><USER10> That is fixed in an open PR: [https://github.com/XVimProject/XVim/pull/1016](https://github.com/XVimProject/XVim/pull/1016)

<comment><USER11> This is awesome, thank you!

I shared on [https://github.com/XVimProject/XVim/issues/998](https://github.com/XVimProject/XVim/issues/998) since a lot of people have been waiting there.

</comment></comment></comment></comment></comment><comment><USER11> Kitura is mentioned in the slides since it's an IBM talk, but there's also [http://vapor.codes/](http://vapor.codes/)

</comment><comment><USER12> The presentation claims that Swift offers "progressive disclosure of complexity", but I don't really buy the argument. "Progressive disclosure of complexity" works when you are learning a language and writing code, because you choose what language features you use. But it doesn't work when you read code written by someone else.

<comment><USER13> > _" Progressive disclosure of complexity" works when you are learning a > language and writing code, because you choose what language features you > use. But it doesn't work when you read code written by someone else._

So? Most app developers are small or one-person shops, and don't "read code written by someone else".

<comment><USER12> That's debatable. And even if it was true, most apps rely on open source libraries which are written by other developers.

<comment><USER13> That's beside the point, since "Progressive disclosure of complexity" would still work for using those "open source libraries", as the most common case of bring a third party library into a Swift app would be to consume and/or extend its API, not refactor or maintain it.

I've used lots of third party libraries and for the most part I don't care at all what's going on in their code as long as they work for what they do.

</comment></comment></comment></comment><comment><USER14> Sadly this will go nowhere until Apple invests significantly more resources into non-Apple platforms.

They dont support Ubuntu 16.10, there is no IDE support besides XCode, and no Windows support at all. And I havent heard even a mention of Android support.

Such half-assed Linux and non existent Windows support will leave it as a toy language on these platforms.

</comment><comment><USER15> For a while I wanted to wait investing too much time in Swift, due to it's instability (breaking changes on every big release). But I noticed many potential clients in The Netherland already work on Swift projects. I've already lost some freelance work due to my limited (<1 year) Swift experience. Even though the language is still unstable, it's probably better to just bite the bullet and build up some Swift experience (perhaps by working on personal projects) if one is a freelancer.

<comment><USER16> So I understand you have Objective-C experience but not Swift experience? It was so easy to pick up on Swift, just remember to _never_ force unwrap and always use _guard_ or _if let_. Just stick to that religiously even when it doesn't make sense sometimes and a dramatically more stable app will be your reward.

Of course you should try to actually do something useful inside the _guard else_ so the user knows what went wrong or just log it with a remote logger so you can fix it for your next release.

The hard part is maintaining a large Swift application, but as long as your clients are paying the bills you shouldn't worry as a freelancer.

<comment><USER15> I have Swift experience (about 7-8 months for my own tvOS game) and I like the language a lot. It is not hard to pick up Swift. But to write Swift code with the same quality as my Objective-C code, I would need more experience. Which is why many clients preferred to pick up a more experienced Swift developers for some projects. After all, idiomatic Swift code can be quite different from idiomatic Objective-C code. Learning the Swift idioms takes some time.

I think for a freelancer a client has much higher expectations than from a permanent employee. An employer doesn't want a freelancer to learn (much) on the job. The employers is paying for an experienced developer that can deliver on quality from day one. After all, freelancers are usually much more expensive.

<comment><USER17> The sad part of it, is the vicious circle that side projects aren't accepted as experience, even if cool ones, and one doesn't get the contracts to actually be able to earn the experience as official customer projects.

Been on that path a few times...

</comment></comment></comment></comment><comment><USER4> Even though I haven't used it much, I like Swift: it's a big upgrade over Objective-C.

I do have some thoughts on the JIT/AOT part of the presentation though, which seems the most interesting to me. After many years where the two camps were largely separate, what we're seeing recently are more cases where JIT and AOT compilation get combined in new and interesting ways:

• Swift is AOT except when developers need fast response times, then it becomes JIT.

• Rust and Go are pure AOT always.

• Android went interpreted, JIT, AOT, back to JIT with AOT at night.

• Java 9 introduces mixed AOT/JIT mode, in which you can pre-compile Java modules to native code ahead of time, but that native code still self-profiles and reports behaviour data into the runtime which can then schedule a JIT- compiled replacement for any given method using the new profiling data. It also introduces ahead of time cross-module optimisation (a "static linker"-like thing called jlink).

Obviously these are quite different approaches, but they're working with similar(ish) languages on identical hardware. So which approach is going to win out, in the long run, if any?

It's fair to say that LLVM is the most advanced compiler toolchain for C-like languages. The JVM is I'd argue the most advanced runtime for more dynamic languages like Java, JavaScript, Python, Ruby etc. But it seems to me that LLVM struggles with some optimisations that should be quite basic and important - the way I read the presentation is that it won't do things like inline parts of the standard/collections library into calling code because they reside in different modules, and inter-procedural optimisation is only done at the level of the module. Otherwise compilation times become too problematic. A profile-directed JIT compiler has no such problems and will happily optimise across module boundaries.

As languages evolve, they seem to take on more dynamic features. This is especially true with the incorporation of functional programming styles where you're frequently passing functions to other functions and working with immutable data, which implies dynamic dispatch (when you can't inline through the call chain) and lots of copying of short-lived data structures (what a generational GC eats for breakfast).

Another major trend is multi-core processors, which we still aren't as good at exploiting as we should be. But more dynamic runtimes tend to find ways of using multiple cores even for single-threaded programs: if your program is inherently only able to use 1 or 2 cores at once, but you're on an 8 core machine and you aren't heat/power constrained, then using the other cores for concurrent GC or JIT compilers is basically free. If these techniques can speed up the execution of your program threads then it's a win, even though analysed holistically it might look like a loss. It is notable that multi- threading LLVM is apparently only a recent feature.

These trends lead me to believe that the JVM architects have the right general direction:

• Allow code to be AOT compiled but still optimise at runtime using multiple spare cores at once, to extract performance even in more modern, heavily OOP or FP-oriented code.

• Use a generational GC that is optimised for objects being mutated through copying and which doesn't cause large quantities of cache-coherency traffic due to the use of atomics all over the place.

• Support inter-procedural ahead of time optimisations like dead code elimination and statically resolved reflection with an optional link phase.

• Rely on pure JIT when developing to keep the edit-compile-run loop tight.

• Use a high level code transport format like bytecode that minimises the exposed ABI, thus allowing you to tweak and optimise the ABI used at runtime without breaking the world.

Apple has gone in this direction with the app store compiling bitcode to binaries for you, but LLVM bitcode was never really designed for that use case. Still, it seems like LLVM will be heading further in this direction in the future, or at least would like to, judging from the following comment:

 _I dream about the day when we can speed up the edit /compile/run cycle by using a JIT compiler to get the process running, before all the code is even compiled. In addition to speeding the development cycle, this sort of approach could provide much higher execution performance for debug builds, by using the time after the process starts up to continuously optimize the hot code._

 _Unfortunately, getting here requires a lot of work and has some interesting open questions when it comes to dependence tracking for changes (how you invalidate previously compiled code). That said, this would be a really phenomenal research area for someone to tackle._

These problems were already tackled years ago by the HotSpot project, which is capable of tracking the dependencies between compiled methods and invalidating compiled code when assumptions used in their compilation become invalidated. As you can also do manual memory management and bypass the GC in languages that target the JVM, I wonder if Swift would benefit more than Chris Lattner imagines from a port that targets it (at least, once the JVM supports value types, which it's getting experimental support for at the moment).

<comment><USER18> The LLVM inlining behavior is left over from C. Different compilation units won't inline.

The LLVM and its Gold linker actually allow their input to be LLVM-Byte Code not just obj files.

The advantage is cross language and cross module optimization.

As it works today with the right make file one can link Rust/C/C++ and mutually inline/optimize across language barriers.

</comment></comment><comment><USER19> Great to hear they want to add Rust-like borrow checker as one of memory management options.

</comment><comment><USER20> Is it not possible to get multi thread compiling with swift in Xcode today?

</comment><comment><USER16> I've noticed that the compiler (both real-time analysis and actual compiling) gets sluggish and unreliable over time when a project grows. I think I've found the source of the problem and unfortunately for people in large code bases it does take a bit of rewriting to get it back into shape.

Since the language is very strictly typed yet allows for a loose syntax, the compiler needs to guess which type you are actually using. For example the type Any? always works but perhaps you are declaring it like a dictionary that always uses a string as a key? It doesn't know until it analyzes all keys and sees that you're indeed always using a string as an index. Put one Int in the end of a long list and it breaks.

Now something like this doesn't hurt:

        let indexOfTab = 4

Because the compiler sees you're trying to put an int in a constant.

But this is a bit more difficult:

        let tabDict = [ /* long list of declarations here */ ]
        let indexOfTab = tabDict.first(where: { key, value in value == "contacts" })?.key ?? 0

First it needs to know if that tabDict indeed would have only Ints or similar values as keys and only strings as values because they would now need to match what happens in the filter.

This makes the complexity of the code to analyze explode in a way that if your code consists of many of these things you all of the sudden find your computer go to a crawl.

The alternative however is a bit more ugly (I could use a bad word to describe it, like: "Java"):

       let tabDict: [Int: String] = [ /* long list of declarations here */ ]
       let tabWithContact: [Int: String] = tabDict.first(where: { key, value in value == "contacts" })
       let indexOfTab: Int = tabWithContact?.key ?? 0

(bear with me, this code is not checked in Xcode, just a hasty example)

Now step by step the compiler does not have to guess anymore, if the first line doesn't compile (because for example you've added a string as a key) it just won't compile. Same goes for the filter function, if you treat the types wrong inside the filter block. Also not too much to guess in the third line, it will never guess what type the key is let alone compile if you would declare indexOfTab as a String.

What I would like to see is:

* A tool that can actually show the points where your code is slowing down the compiler a lot

* A tool that proposes you to split the declarations up for faster execution just like you can automate much of the changes after upgrading to a new version of Swift

All I do now is guessing and adding more code to get performance back to acceptable levels.

<comment><USER21> Not disagreeing with anything that you're saying, except that dictionaries are declared `[Key: Value]` and not `[Key, Value]`.

By the way, rather than using `.filter { ... }.first`, you should really use `.first(where: { ... })` instead. `filter` will iterate the entire sequence, while `first(where:)` stops after it finds a match.

<comment><USER16> All true! Let me fix it. I remember the "where" approach not completely working like I expected it, didn't dare to put it in without checking :)

</comment></comment></comment><comment><USER22> So Swift 4 is coming in Late 2017. Will it break all previous code again?

<comment><USER23> From Lattner:

"While our community has generally been very kind and understanding about Swift evolving under their feet, we cannot keep doing this for long. While I don't think we'll want to guarantee 100% source compatibility from Swift 3 to Swift 4, I'm hopefully that it will be much simpler than the upgrade to Swift 2 was or Swift 3 will be."

[https://lists.swift.org/pipermail/swift-evolution/Week-of- Mo...](https://lists.swift.org/pipermail/swift-evolution/Week-of- Mon-20160125/007737.html)

Swift 4 won't have anything like Swift 3's Cocoa renaming. It'll be minor language changes.

ABI stability and source compatibility should start with Swift 4.

<comment><USER16> I think Swift 4 changes are mostly improvements in interop with C and Objective-C, maybe Cocoa will get some changes to make API's more Swift-y.

I don't expect much big stuff anymore.

</comment></comment></comment><comment><USER24> Horrible slides! Is there a video recording from Chris' talk?

<comment><USER25> The IBM corporate website has a conference page:

[http://researcher.watson.ibm.com/researcher/view_group_subpa...](http://researcher.watson.ibm.com/researcher/view_group_subpage.php?id=6940)

I contacted one of the organizers and was told that the keynote was recorded. I can only assume that it will show up online eventually, perhaps on YouTube.

</comment></comment><comment><USER26> I thought about sitting down and learning swift, but they make breaking changed so often I really can't justify the time yet. I'm very curious what IBM comes up with, not sure yet why they're so interested in it other than LLVM.

Interesting news anyways.

<comment><USER27> This is why I avoided embracing Swift until this year - we started using it in parts of our app but the 200 breaking changes in our project every 6 months was a major PITA.

Starting with Swift 3 they claim to be source-stable which is why I've dared embrace it wholeheartedly now.

<comment><USER26> Well but now scala (what I knew and just kept running with) is getting native compiler, eventually iOS support, academic underlying calculus for the language, all kinds of good stuff.

I have a lot of respect for Lattner, obviously, but Swift has spent a LOT of goodwill that people were willing to spare it. Unless IBM pulls a really good thing out of their hat, I fear that swift might be in a perl6 position where they finally made a language worth a shit, but ran out of gas as they reached top speed.

I guess time will tell. I WANT swift to be awesome, but in order to make it a rational choice, I NEED swift to be stable, common, and approachable for new employees. (something scala can struggle with for some programmers)

It's really gonna bum me out when swift4 gets announced this spring (/s) and completely ruins everything, and then swift5 would of course be announced around the time swift4 becomes even remotely stable.

It's just been a disaster so far.

<comment><USER17> In what concerns Apple OSes, just like with any other first class programming language developers that want to target them will not have any other option.

All the language improvements Objective-C has got since Swift was made available, were only to improve the interoperability between both languages.

Also just check the amount of WWDC talks from the past two years that still used Objective-C on their presentations.

This is why it is so important to have OS vendors sponsor new languages.

</comment></comment></comment></comment><comment><USER28> Naysayers. The world will pour billions of dollars in Swift the coming years and they will keep complaining about it.

The most important advantage of Swift is that it allows you to code from the server to the desktop, mobile, watch, tv, IoT, in one language.

Swift will be everywhere and some are afraid of that, very afraid.

<comment><USER29> What on earth is this all about? Having spent a year working mostly in Swift I can't wait to see the back of it, even "billions" of dollars spent wouldn't turn it into a halfway decent programming language.

<comment><USER30> The problems you've listed in reply to my sibling commenter are all on the tooling side, not with the language, and yes they could definitely be fixed by spending "billions" on people and resources dedicated solely to improving them.

You didn't specify anything that says Swift isn't a "halfway decent programming _language_."

<comment><USER29> I don't think I've ever seen anyone regard the compiler as tooling, SourceKit for sure that makes sense, but not the compiler. Especially in this case as there really is just the one compiler for it so those are issues that will hit anyone using Swift now. But if you want problems with the language itself, let me see:

It suffers from similar problems to Scala, where it tries to blend OO concepts in with FP concepts. Variance is where this flares up terribly because it doesn't provide any explicit support for covariance or contravariance. You end up with invariance and subtyping in a bunch of places which is not a nice combination.

Protocols like Equatable and Hashable are implemented with compiler magic for arrays and tuples. Which means that you run into trouble with generic functions that say accept two instances of the same type which is Equatable if you pass an array of ints. The underlying reasons behind this (which mostly escape me at midnight on a Sunday) are something to do with protocols on generic types. You can't say "for a List if the elements are Equatable the List is equatable" IIRC. This one annoys me no end as we've had to fudge our way around it several times on the same project.

For some reason that eludes me, Optional<T> is given all sorts of special case syntax ("if let" and "guard let") which is like a crap version of "for yield" from Scala or do notation in Haskell that only works on that. As a result a lot of convenient abstractions are just not possible you end up writing all kinds of horrid looking chained map/flatMap calls instead. Sometimes because of this dissonance between things a block of code might have a guard let block, then some other stuff, then an if let block with an else condition. Whereas if you wrote the same thing in Haskell it would be one do block and that's it.

Concurrency and parallelism support is effectively Grand Central Dispatch, which is the most imperative API ever on macOS/iOS and on other platforms (according to the Github page I just looked at for it) is in the early stages of development. You're just calling the old Objective-C API and the language doesn't help at all there.

Edit: As a bonus addition, it's a statically typed "FP" language which doesn't have higher kinded types which means a bunch of handy abstractions are a real pain. See the Swiftz project for how they have to define things like monads as an example.

Is that enough problems?</comment></comment></comment></comment>


Show HN: Generate names like snapchat, dropbox, paypal for your next project - <AUTHOR> https://namewink.com/ <comment> valiant-comma Very nice, I like the real-time domain name availability check. However, I tried it with "photo" and it appeared to provide two suggestions that were the same (photoality, IIRC).

<comment><AUTHOR> Yes, it does repeat suggestions as of now, will fix it soon. Thanks for checking it out!

</comment></comment><comment><USER2> It is reporting .coms as available that aren't. I won't repeat what I typed though as it was a bit rude.

</comment><comment><USER3> This is nice, bookmarked it for my next project. Loved it.

<comment><AUTHOR> Cheers!

</comment></comment><comment><USER4> Did the site name 'namewink' come from the generator?

Cool site.

<comment><AUTHOR> It did! ..from an early prototype. Thanks for checking it out.

</comment></comment><comment><USER5> snapbox, droppal and paychat.

Three different startups, three different revenue models.

<comment><AUTHOR> lol... I like droppal :P</comment></comment>


MupenLaunch released, a N64 Emulator front end for OS X - <AUTHOR>

MupenLaunch has been released. It's a free and open source front end for the Mupen64Plus emulator on OS X.
http://code.google.com/p/mupenlaunch/
http://sjtrny.com/mupenlaunch/
Any feedback would be greatly appreciated! <comment><USER2> It would help if you build a better product page, especially screenshots. It's easier to get people to download and try your software if you show them how it looks like and "sell" them on it via a proper copy on the web page.

<comment><AUTHOR> Thanks, working on getting some screenshots up.

</comment></comment><comment><USER2> Also, I noticed that there is no source code in the source repository (a few .xib and .png files but not source).

<comment><AUTHOR> Well spotted. Apparently I had Cornerstone.app misconfigured to not commit sub dirs.</comment></comment>


How Lucas, Spielberg and Kasdan Created 'Raiders of the Lost Ark' (2013) - <AUTHOR> http://nofilmschool.com/2013/08/how-lucas-spielberg-kasdan-created-raiders-of-the-lost-ark <comment><USER2> >How Lucas, Spielberg and Kasdan Created 'Raiders of the Lost Ark'...

...without CGI, thankfully.

It's been more than a decade since Hollywood released a movie with a realistic patina.

For an example, compare the centerpiece truck chase in Crystal Skull with the propeller-dodging fistfight in Raiders. Where's the fullers earth, where's the blood, where's the sweat? Contemporary CGI effects contaminate films with a phony "sheen" which future film historians will no doubt condemn as glaringly phoney.

Likewise, CGI seems to encourage special effects artists to "overload" movie frames, the clutter devolving into little more than a figurative close-up of a child smashing toys together. Was the Tarzan reference really necessary in Crystal Skull's truck chase? Did a kitchen sink really need to float by in Revenge of the Sith?

Further, CGI characters are forgettable. Can filmgoers still see the details of the spheroid attack vehicles from Attack of the Clones in their minds eye? Contrast this with the AT-AT's from Empire Strikes Back. The former CGI props do not ring true to the mind and are thus only imperfectly recalled. The latter physical models are unforgettable. Also see ED209, the stop motion owl from clash of the titans, the terminator skeleton from Terminator 1, etc. Physical models are crude but effective. CGI is nuanced but phoney at a deeper and much more damning level.

The widespread adoption of CGI circa Phantom Menace will likely mark the beginning of a protracted dark age in filmmaking. Who knows when or if there will be a renaissance.

<comment><USER3> Another big difference between CGI and 'traditional' special FX is that CGI really seems to age worse. The SFX in the Indiana Jones films are dated, but they have aged well, IMO, and are still watchable today. Yet CGI from only a few years back (barring one or two exceptions) somehow manages to look so poor.

I wonder if this trend will continue, or will CGI manage to become 'good enough' so that the effects can stand the test of time. It's weird looking back at old movies and being disappointed at the computer effects, yet when I watched them the first time around I thought they were fine.

Or maybe this is just nostalgia, a sign of me getting old, and how "everything was better in the old days" :)

<comment><USER4> I think that might just be survivor bias. You don't remember, or have never watched, the bad pre-CGI movies.

<comment><USER5> It really depends.

 _Clash of the Titans_ and _Jason and the Argonauts_ were both stop-motion animations for much of their effects. The artifice is obvious but ages well.

 _Forbidden Planet_ uses a mix of practical effects, mattes, and hand-drawn animations (the monsters of the Id). Again, fairly obvious, but all told, ages fairly well.

And _2001: A Space Odyssey_ , only ten years later, has effects many of which could be contemporary. Shots of _Discovery_ in particular are near perfect, and I found the effects in the 1984 sequel, 2010 to be _worse_ in regards -- the sagging of a supposedly zero-G bridge was one that still registers with me.

But there are also lots of bad examples. Many of the James Bond franchise sequences involving flight or spaceflight are pretty obviously cheesy. The effects from Superman are hit-or-miss. Rear and front-projection effects, especially in automobile scenes, where auto occupants _clearly_ aren't in the same physics as the vehicle, are quite distracting to me (and date to the 1930s).

The thing about practicals -- model effects especially -- is that you've got a real physical object at play, and that's going to have depth and other elements which are still hard to capture in CGI. Though _blends_ of CGI with live-action (the epiphany for me was _True Lies_ which pioneered much of this) _can_ be highly convincing. The key is subtlety.

</comment></comment></comment></comment><comment><USER6> Raiders has long been one of my favorite movies. For me it represents an era of filmmaking (the 1980's) when filmmakers relied on strong characters and stories more than familiar sequels and over-the-top special effects.

If Indiana Jones or Raiders seem cliche, it's only because they were instant classics created by brilliant filmmakers at the peak of their craft.

<comment><USER7> Remember when people used to clap or cheer at the movies??The don't make 'em like they used to. Even with its moments of campiness, there's a certain authenticity, even nobility to Raiders. To this day when I watch the ark- opening sequence I get chills, in no small part due to John William's masterful soundtrack.

</comment></comment><comment><AUTHOR> Here's a PDF of the transcript of the 1978 story development session between Lucas, Spielberg and Kasdan:

[http://maddogmovies.com/almost/scripts/raidersstoryconferenc...](http://maddogmovies.com/almost/scripts/raidersstoryconference1978.pdf)

</comment><comment><USER8> I just watched this the other day and it is amazing how well the movie has held up over the years.

</comment><comment><USER9> Here's an article talking about it from 2009. I like this article better because it talks a little more of Indy's background and history, especially with Marion.

I like how this article talks about how you make someone more likeable having things happen off screen.

Although this is a little more disturbing because Lucas wanted Marion to be 11-15 when she had her affair with Indy.

</comment><comment><USER10> Check out Jamie Benning's filmumentaries on this film[1] and the original Star Wars trilogy and Jaws. Great fan produced pieces with making of info and interviews with cast and crew. Throw him a tip if you enjoy them too :)

[1] [https://vimeo.com/36011979](https://vimeo.com/36011979)

</comment><comment><USER11> Just search for "Raiders of the Lost Archives" on YouTube, and you ll see the truth about how the movie was made!

<comment><USER11> [https://www.youtube.com/watch?v=Ns8bG9AbfwM](https://www.youtube.com/watch?v=Ns8bG9AbfwM)</comment></comment>