Jacques Cousteau's grandson wants to build the ISS of the sea - <AUTHOR> https://www.smithsonianmag.com/innovation/jacques-cousteaus-grandson-wants-to-build-international-space-station-of-the-sea-180975635/ <comment><USER2> Not sure how much of a news story it is. I also want to build the ISS of the sea, I always did. Now, I don't have a famous granddad with whom I share my last name, but even if I did it's not like it's enough to build ISS of the sea.

The article is written in a very dreamy tone and contains very little substantial information. It firmly assures that "Proteus will be" such and such, as if they are making the finishing touches already, yet "Proteus is still in the concept phase". "Fabien is raising $135 million" (which, TBH, seems quite a conservative estimate for this project on the one hand, and on the other is a pretty huge investment for something that doesn't have any ROI projections attached), but there's no discussion about what else except for his surname this Fabien guy actually has to have any chances to succeed.

So, yeah, I would prefer if journalist learned to provide something more factual and informative in their stories, instead of telling me how cool deep- sea exploration is. I know it's cool, alright? I don't know if a project like that can actually happen in the observable future.

<comment><USER3> > I would prefer if journalist learned to provide something more factual and > informative in their stories

It is deeper than that (no pun intended); many journalists seem to be lacking the critical thinking skills required to judge whether a story passes a basic sniff test when it comes to science and technology.

The Proteus project is not the ISS of the Sea, it is a vanity project. Clickbait from cnet is par for the course but I guess I expect more from a publication with "Smithsonian" on the masthead.

The previous HN thread _Proteus: Underwater research lab worthy of a Bond villain_ [1] points out that this is not just a questionable idea but a really bad one.

[1] [https://news.ycombinator.com/item?id=23985772](https://news.ycombinator.com/item?id=23985772)

<comment><USER4> I wonder if journalists are no longer getting the same on-the-job training they got with print magazines? Maybe the cycles are too quick, it's too easy to convince yourself that you can fix a mistake post-publication, and you don't interact with as many experienced coworkers throughout the process.

Are we the baddies?

<comment><USER5> _I wonder if journalists are no longer getting the same on-the-job training they got with print magazines?_

They don't, but the roots run deeper than that.

College journalism departments used to stand on their own, or be part of a Communications department. Now, a lot of them are part of marketing departments because that's where the donor money is.

For example, one of the "Big J" journalism schools used to be Medill at Northwestern University. A decade or so ago it changed to become the "Medill School of Journalism, Media, Integrated Marketing Communications."

I used to mentor interns from that school. The first few years after the switch we started getting students who didn't know the first thing about journalism. They were being taught how to edit videos for YouTube, not how to find out how a congressman voted on a particular topic. We had students about to graduate who didn't know important recent historical figures. Couldn't tell you what party any president belonged to earlier the current one, and his predecessor.

It goes along with a long-running theme on HN: That universities are no longer about education. They're only in it for the big money now.

</comment></comment></comment></comment><comment><USER6> Just in case anyone here is considering donating to this project, do your due diligence. There is quite a bit of behind-the-scenes drama in the Cousteau family, which is why both Jacques's son, Jean-Michelle, and his grandson, Fabien, each have their own 501(c)(3) separate from the Cousteau society. JM has [http://www.oceanfutures.org/](http://www.oceanfutures.org/) and Fabien has [https://www.fabiencousteauolc.org/](https://www.fabiencousteauolc.org/). According to JM, he broke away because the Cousteau society had been taken over and corrupted by one of Jacques's ex-wives. I never verified this, but it is consistent with Charity Navigator's one-star rating [1]. We used to be major supporters of Ocean Futures, but they too seem to have become dysfunctional. Neither JM's nor Fabien's organization even merits a rating on CN. It's kinda sad actually.

[1] [https://www.charitynavigator.org/index.cfm?bay=search.summar...](https://www.charitynavigator.org/index.cfm?bay=search.summary&orgid=3583)

</comment><comment><USER7> Can I ask the obvious question? What good is a stationary lab in one spot in the ocean? Didn't we do plenty of that in the 70's?

If you really want something interesting, build a sub that can park itself in stationary locations or some sort of crawler lab with legs that do minimal impact on the floor and have the ability to reach the deepest parts such as the Mariana Trench. The ocean is huge and parking in one spot seems ridiculous.

<comment><USER8> Some science experiments require visiting the same patch of ocean repeatedly. Having access from an underwater lab means that scientists can spend more time doing science and less time traveling to/from the site and decompressing.

My uncle is a marine biologist and spent time living in an underwater lab in Florida. Aside from all the diving he was able to do, he said it smelled like a high school locker room and everything was damp inside.

<comment><USER9> On the plus side, you don't have to worry about your soda fizzing over...

[https://www.youtube.com/watch?v=EJiUWBiM8HE](https://www.youtube.com/watch?v=EJiUWBiM8HE)

<comment><USER10> A YouTube video that jumps right in to the main point and doesn't have any "don't forget to subscribe!" stuff in it is kinda jarring in 2020.

<comment><USER11> way to paraphrase the top comment on the video

<comment><USER10> I have YouTube comments disabled. Everyone should.

</comment></comment></comment></comment></comment></comment><comment><USER12> I suspect somebody was inspired by the Octonauts' Octopod, down to the "liquid door" hatch inside:

[https://vignette.wikia.nocookie.net/octopod/images/f/fd/Octo...](https://vignette.wikia.nocookie.net/octopod/images/f/fd/Octopod.jpg)

<comment><USER13> I never really liked Octonauts. I was gutted when the kids were old enough that they didn't want to watch the latest Fireman Sam movie on the other hand - especially after I'd spent 2 years waiting for it :(

They grow up so fast.

<comment><USER14> Fireman Sam is trash. Long live Sarah and Duck! ;)

<comment><USER15> Never thought I'd be giving shouts out to Sarah and Duck on HN but here we are. That show has a rare combination of real chill and real personality. As my son is aging out of Sarah and Duck, I'm hoping to find similar content to offer him that will be stimulating but not spastic like so many shows. I would also love to find more stuff like Beat Bugs and Motown Magic, which are a bit more typical but still wholesome.

</comment></comment></comment></comment><comment><USER16> There sure is a lot to discover below the surface of our oceans.

I recently watched "Diving Deep" [https://de.oceanfilmtour.com/en/movies/volume-7/diving- deep/](https://de.oceanfilmtour.com/en/movies/volume-7/diving-deep/) a documentary (part of the Ocean Film Tour 2020) about Mike deGruy, an ocean cinematographer.

deGruy showed what the chemicals that were used to disperse the oil during the Deepwater Horizon spill did to the life on the ocean floor. The chemicals removed the oil from the surface of the ocean (where it was visible), but made a mess below the surface. A wakeup call for sure.

He also appears to have been a really nice, fun guy.

<comment><USER17> Completely support this. Grew up loving his father's programs and I think we should invest more in saving our planet than going to Mars.

<comment><USER18> Those who understand rocket engineering can't just be asked to switch to something else, though. In any case, there has been a lot of evidence that humans' foray into space has led to a lot of innovation of technologies that we've used here on Earth.

We also should have a plan B as a species.

I'm of the camp that believes we should go to space and also focused on saving the Earth.

</comment></comment></comment><comment><USER19> When I was a kid I used to watch a TV series called SeaQuest. Pretty much the same idea, isnt it? :)

[https://www.youtube.com/watch?v=vQNXOscKEhY](https://www.youtube.com/watch?v=vQNXOscKEhY)

<comment><USER20> Same here and it was fairly complex in its geopolitical views. It wasn't just fish and bikinis.

</comment></comment><comment><USER21> I _strongly_ recommend the YouTube channel deep sea oddities:

[https://youtu.be/pDW4IYVlbbw](https://youtu.be/pDW4IYVlbbw)

It made me realize that alien like life is more fascinating on earth than it will ever be on my lifetime lurking at the space.

</comment><comment><USER22> Please call it Sealab 2021.

<comment><USER23> Or Rapture

</comment></comment><comment><USER24> Discussed 26 days ago [https://news.ycombinator.com/item?id=23985772](https://news.ycombinator.com/item?id=23985772)

</comment><comment><USER25> Anyone else immediately thinking about Subnautica while looking at the article's teaser image? :)

<comment><USER26> I thought "Sealab 2021"!

<comment><USER27> Pod 6 is jerks!

</comment></comment></comment><comment><USER28> So they want to create a multi-story structure anchored at "60 feet"? Is that 60 to the bottom? 60 feet to the top of the structure? 60 feet to the moonpool? That thing looks 80 feet tall.

Fyi, moonpools are cool. They create all sorts of interesting practical physics problems. Take the one in the artist rendering. Say it is at 60 feet. What is the pressure depth of the rooms on the second floor, say 15 feet above the moon pool? What about the rooms below? If I poke a hole in a room _below_ the moonpool room, does water come in or air leak out?

By having a moonpool, the entire structure has to be kept at the pressure/depth of the water at the moonpool. So rooms above are at higher pressure than the water immediately outside, while rooms below are at lower pressure. The simple act of having that open pool creates very interesting structural design issues.

<comment><USER29> Aren't all of these problems solved by just having the moonpool room airlocked?

<comment><USER28> Airlocks are actually rather dangerous. Things can go wrong very quickly. An accidental rapid/unplanned decompression, even only across a few feet of pressure, can do real damage. Then there are the issues building the doors, which hold enough force that should they pop open they could kill. The biggest advantage of the moonpool approach is having the entire complex at the same pressure, with the pool acting as a passive safety valve against wild pressure fluctuations.

<comment><USER30> Yeah, pressure differentials are no joke. Look at the Byford Dolhin incident [1]:

> Hellevik, being exposed to the highest pressure gradient and in the process > of moving to secure the inner door, was forced through the crescent-shaped > opening measuring 60 centimetres (24 in) long created by the jammed interior > trunk door. With the escaping air and pressure, it included bisection of his > thoracoabdominal cavity, which resulted in expulsion of all of the internal > organs of his chest and abdomen, except the trachea and a section of small > intestine, and of the thoracic spine. These were projected some distance, > one section being found 10 metres (30 ft) vertically above the exterior > pressure door.

> The blood of the three divers left intact inside the chambers likely boiled > instantly, stopping their circulation

[1] [https://en.wikipedia.org/wiki/Byford_Dolphin](https://en.wikipedia.org/wiki/Byford_Dolphin)

</comment></comment></comment></comment><comment><USER31> There are a lot of reasons for having a stationary lab under sea - I have seen a lot of experiments for acceleration of coral growth, bringing corals back to life etc that need long term study and sustained help. However, I am a bit confused as to why this project needs an expensive building as opposed to something like a submarine shell with living quarters (and a moon pool, of course).

<comment><USER32> Better quality of life? I've seen those submarine tours on Youtube and they look cool initially but I could imagine it could get old pretty quickly eating freeze-dried rations and living in such a small space with no homey human elements to its design. Even the Antarctic bases have mini-libraries, and ping pong tables and whatnot that look like they would be much nicer to spend an extended period of time.

Humans weren't meant to be cooped up in a vessel. In space we don't really have the tech to build something bigger but I imagine in the ocean we could do it if we wanted to.

</comment></comment><comment><USER33> We already have an ISS of the Sea. Many believe this 'International Swimming Station' is the real ISS.

> > [https://en.wikipedia.org/wiki/Neutral_Buoyancy_Laboratory](https://en.wikipedia.org/wiki/Neutral_Buoyancy_Laboratory)

<comment><USER34> That seems to be just a pool to mimic zero gravity, which I would not equate to the ISS in ocean form at all

</comment></comment><comment><USER35> If I build underwater real-estate, there are no laws governing it? There probably aren't laws anywhere in the world about it? Probably I can still be harassed if it's in national waters. But if it's in international waters? Nuclear reactor test site?

<comment><USER36> There are plenty of laws (in this case, more like 'treaties') regarding international waters and use thereof. You can't do whatever you like, you certainly can't avoid all laws there. Usually you will have to flag your structure as being part of a nation and then follow their laws while onboard.

</comment></comment><comment><USER37> Curious lack of any mention of Jacques Cousteau's first son (and father of Fabien) Jean-Michel, who I met about a decade ago while doing some work for his Ocean Futures Society.

</comment><comment><USER38> If they do it I I hope they use low-iron glass to mitigate that greenish tint you get from looking through normal shitty glass.

</comment><comment><USER39> \- why just 60 feet / 20m below the surface?

\- what will be possible that now is not?

<comment><USER40> For extended stays, physiology demands of breathing compressed gasses get complicated. At that depth, the effects are minimized.

</comment></comment><comment><USER41> I was underwater for 2 months on a nuclear submarine. Does that count?

</comment><comment><USER42> Somewhat played a bit too much of Subnautica.

</comment><comment><USER43> So, some kind of sea lab, in 2021?

(Pod six are jerks)

</comment><comment><USER44> It will be like the octonauts

</comment><comment><USER45> Reminds me of Aquanox :)

</comment><comment><USER46> I'm really surprised something like this hasn't been done yet.

</comment><comment><USER47> We're in a pandemic, seriously, why not?

<comment><USER48> At least it's already isolated..

</comment></comment><comment><USER49> Does he have a name?

(I was raked over the coals a few months ago for describing a person as "Jeff Bezo's ex-wife. I want to make sure we hold all these cases to the same rule.)

</comment><comment><USER50> Jacques Cousteau was a horrible person, both personally (bigot, anti-Semite, pathological liar) and professionally. It's inexplicable that he passes for a defender of nature when in reality he "explored" things by blowing them up with explosives and destroyed unique sites, etc.

The grandson is a different person of course; but he invokes his grandfather's name as a reference and proof of competence. Don't fall for it.

<comment><USER51> Do you have sources for such accusations?

<comment><USER50> Plenty of sources (in French). For example:

Anti-Semitism: [https://www.lemonde.fr/archives/article/1999/06/18/la- plonge...](https://www.lemonde.fr/archives/article/1999/06/18/la-plongee- antisemite-du-commandant-jacques-yves-cousteau_3551090_1819218.html)

Cousteau's first wife Simone was independently wealthy and financed his boat (Calypso) and expeditions. She lived on board most of the time (yet never appears on camera). But he had another secret family (with kids) on the shore with a former flight attendant, since the late 70s. Simone only learned about it in 1990. Letters were published where she asks a friend in disbelief if this can be true. She then died within a few months. Can't find the letters right now but I did read them then.

Critique of "Le Monde du silence": [https://www.rtl.fr/culture/medias- people/video-pourquoi-le-m...](https://www.rtl.fr/culture/medias-people/video- pourquoi-le-monde-du-silence-de-cousteau-est-il-naivement- degueulasse-7779029379)

In that movie from 1956 which won the Cannes Film Festival Palme d'Or, the team blows a whole coral reef with dynamite in order to "count fish living in it". They also catch live sharks on board and kill them with shovels "because seamen don't like sharks".

You can watch the documentary and see for yourself.

<comment><AUTHOR> Regarding bigotry and antisemitism, there are, of course, caveats in the article you link:

 _Interrogé par Le Monde, Erik Orsenna confie : « C 'est évidemment une lettre ignoble. Mais j'ai peur que si l'on ouvre toute la correspondance des Français de l'époque, et si l'on écoute l'enregistrement de leurs conversations, on découvrirait beaucoup d'autre antisémitisme de cette sorte. Autrement, Pétain n'aurait pu rencontrer en France un tel accord, et des horreurs comme les rafles de juillet 42, organisées par la police française, n'auraient pas pu se produire. A la différence de son frère, Pierre-Antoine, dirigeant de Je suis partout, ce que je dis dans mon discours, et à ma connaissance, Cousteau n'a jamais émis ce genre d'ignominie en public ni ne s'est engagé dans aucune action antisémite. »_

Which is not to excuse anything, but it seems to me the majority of French society (indeed, European society) at the time held such views. Why single out Cousteau? And why do it in an article about a project undertaken by his _grandson_ , who is not himself, I believe, accused of holding any of those biggotted views? Kin punishment is no less a barbaric practice than antisemitism (and islamophobia, as per the article above).

As henearkr says below, the rest of your comment is about Cousteau's personal life, which is neither here nor there. This is not the Daily Mail.

<comment><USER50> Cousteau falsely claimed to have been a member of the Résistance when he was in fact protected by the occupying German army. His first film received a positive critique in his brother's newspaper Je suis partout in 1943, which launched his entire career. He later said the film only came out in 1946.

The part about his personal life is to further substantiate the "liar" part. It's not just that he had a "mistress"; he had another family and hid it from his wife, whom he didn't divorce because he needed her money. She died of sorrow when she eventually found out. I think it tells something about his character.

I'm getting downvoted heavily for all these comments, but I persist in thinking we should be more careful about the "heroes" we choose. This man is no hero. He's horrible.

<comment><AUTHOR> What "heroes"? Why do we care about Jacques-Yves Cousteau's character? We are commenting on an article about a project by Cousteau's grandson. Why does Jacques-Yves Cousteau's lying or antisemitism have anything to do with Fabien Cousteau's project?

In any case, why do we need to judge anyone's character in a HN thread? What is this, inquisition by internet forum? That is just the worse, lowest form of internet activity and I'm really sorry to see it on HN. This is at the level of the darkest recesses of 4chan.

<comment><USER50> > _We are commenting on an article about a project by Cousteau 's grandson._

Exactly. And we wouldn't be talking about it were it not for the affiliation.

> _This is at the level of the darkest recesses of 4chan._

Right. Does this count as Godwin's law?

<comment><AUTHOR> >> Exactly. And we wouldn't be talking about it were it not for the affiliation.

I posted the article and I didn't post it because Fabien is Jaqcues-Yve's grandson, but because I find the idea of underwater habitats interesting. You're the one who is focused on the "affiliation". And for no good reason other than to throw some dirt around, from what I can tell.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER52> Jacques Cousteau, and really many prominent oceanographers / explorers (Ballard, who discovered the Titanic, comes to mind) have a background in espionage. Getting a large international joint effort off the ground coming from that field...can be difficult.

Recently Alexandra Cousteau, the grand-daughter of Jacques, had her name surface in regards to Epstein and whatever operation he was running.

<comment><USER12> I know these sound like conspiracy theories, but Ballard _was_ actually on a secret US Navy mission to find some subs when he accidentally stumbled on the Titanic:

[https://www.wearethemighty.com/titanic-discovered-top- secret...](https://www.wearethemighty.com/titanic-discovered-top-secret- mission?rebelltitem=1#rebelltitem1)

And the Glomar Explorer was an actual CIA operation:

[https://en.wikipedia.org/wiki/Glomar_Explorer](https://en.wikipedia.org/wiki/Glomar_Explorer)

...but dragging Epstein into this? Really?</comment></comment>


Announcing the Liberated Pixel Cup: an epic contest for gaming freedom - <AUTHOR> http://lpc.opengameart.org/

<comment><AUTHOR> Creative Commons announcement: <https://creativecommons.org/weblog/entry/32322></comment>


"Dark pattern" UI design – Google makes it awkward to remove all your history - <AUTHOR> https://history.google.com/

<comment><AUTHOR> For the ultimate in "dark pattern" user interface design check out the unbelievably awkward interface for removing your history from Google.

[http://history.google.com/](http://history.google.com/)

1\. Initially the history page asks you just to stop your search browser history. Most people would assume that this is all required but this doesnt delete your previous search history which has to be manually removed via a very clunky process by Google standards. This is all hidden away through several levels of menu.

2\. There is no single click button to delete all your history

3\. You have to individually remove your history from each of the following sections (hidden by default until you click on a button) -> Location history, Device state history, Voice search history, Video search history, Videos watched history.

4\. You have to turn off history recording for all the sections individually and then manually remove the existing prior history on top of this (not obvious).

5\. Even for each of the history sections, you cannot globally delete with one click, you have to delete one page at a item (20 items to a page). This means to delete a couple of years retained data your looking at 50 actions or so.

Again how easy would it be to make a button that stops all recording and deletes all history?</comment>


Geep: Rare 'goat-sheep' born on Irish farm - <AUTHOR> http://www.bbc.com/news/world-europe-26882203

<comment><USER2> I don't quite think this belongs on HN. However, I also think it's just a matter of time before some open source project is named "Geep".</comment>


Automakers invented the crime of "jaywalking" - <AUTHOR> https://www.vox.com/2015/1/15/7551873/jaywalking-history <comment><USER2> I propose the new crime of jaywording: using an easily guessed password for an important account. Also, to reuse a password from a personal account for an important work account.

This crime causes a huge amount of damage, not just to the jayworder but to innocent victims. It has led to hundreds of major breaches, including foreign hacking of a major political party.

A fine of $200 is probably enough for normal accounts.

</comment><comment><USER3> Url changed from [https://getpocket.com/explore/item/the-forgotten-history- of-...](https://getpocket.com/explore/item/the-forgotten-history-of-how- automakers-invented-the-crime-of-jaywalking-816728195), which points to this, which is a dupe of [https://news.ycombinator.com/item?id=16158918](https://news.ycombinator.com/item?id=16158918).</comment>


DNS Seizures Take Out MegaUpload - <AUTHOR> http://torrentfreak.com/dns-seizure-takes-out-megaupload-111129/

<comment><USER2> You know, if they do this enough times we might develop a whole new cadre of folks who can run DNS servers. That would be a good thing because the underpinning gears of the interwebs are not as sexy as the front facing side and so much harder to recruit for.</comment>


Ask HN: What are the important problems of your field? - <AUTHOR> <comment><USER2> In geosciences, still many. Some leading ones: carbon sequestration, mineral resources (mining and associated environmental and political risks), origin of moon, earthquake prediction, age and Earth conditions of origin of life, magnetic reversals, mechanisms and speed of recovery from mass extinctions.

In all of these, earth scientist are likely to work across diverse size (diatom to outcrop to mountain range to solar system) and time (the lifetime of an organism, a species, an ecosystem, a biome) scales gathering data to create models. What do past carbon isotope ratios tell us, what's the size of the atmosphere. X-ray crystallography, surface area of a large copper deposit.

Geologists' datasets may be small for creating complex models, and they often are looking at unique processes, so they frequently write their own programs.</comment>


The Rise of the Secret Supper Club - <AUTHOR> http://www.newyorker.com/reporting/2012/12/03/121203fa_fact_goodyear?currentPage=all

<comment><USER3> Whenever I hear of an über-exclusive thing like this, whether it's a gathering, a club, a business, or whatever, I think how much better to be the one running it than to be someone trying to get in.

Craig Thornton is a talented, hard-working kid who probably wouldn't get seated at Spago if he walked in the front door a couple years ago, but by hacking his way into the dining scene, he's got celebrities trying to figure out how to get invited to his apartment.

The lesson is, don't worry about what other people think of you, find a way to make other people worry about what you think of them.

<comment><USER4> > Craig Thornton is a talented, hard-working kid

I think you're understating how successful of a chef he is. And being a successful chef is a lot about marketing.

<comment><USER5> As is the case with software developers too (and probably most other fields).

</comment></comment></comment><comment><USER6> I read this the other day and completely fell in love. What a fantastic thing to be doing - but, as jaysonelliot says, from the perspective of the person doing the scene-hacking. It's worth noting that by the end of the article, he's opening a real restaurant. This was his way in.

Do what you love.

I wonder, though, if it could be done with something more accessible - <USER2> not into high end dining, but changing the idea of what a restaurant is for the folks who like good food but wouldn't think of trying to get a top-tier table, or paying for one.

Meanwhile, if you're hungry for more food obsession (and entrepreneurial obsession, to a lesser degree), the movie Jiro Dreams of Sushi is worth a watch.

<comment><USER7> Nice buzz words!!

<comment><USER6> Hey now. That's not very nice.

Here's an edit just for you. Better?

I read this the other day and completely fell in love. What a fantastic thing to be doing - but, as jaysonelliot says, from the perspective of the person running the unofficial restaurant. It's worth noting that by the end of the article, he's opening a real restaurant. This was his way in, and it was very effective, probably because his enjoyment of his work shone through.

I wonder, though, if the same trick could be repeated by creating an unofficial restaurant aimed at diners who like good food but wouldn't think of trying to get into a fancy restaurant, or paying for one. Could you arrive from outside the restaurant "scene" and make a name for yourself in the same way?

Meanwhile, the movie Jiro Dreams of Sushi is on a related topic, and very good.

<comment><USER7> You're right - I apologize. I am just getting a little tired of hearing the D word 10 times a day in relation to anything that is not strictly normal.

<comment><USER6> I'm with you, and I tend to agree with the Pando posts lately about "disruption" and the malformed philosophies that tend to go along with it. I didn't use it though, I promise!

</comment></comment></comment></comment></comment><comment><USER8> I think it's cool that there's people who like and enjoy this.

...but for me personally, this is just kind of weird. The dishes seem exotic just for the sake of being that way. The presentation reminds me of nouveau cuisine mixed with the results of an abstract art class, and I doubt the food would be very pleasing to my palate. It reminds me a lot of my literature classes in high school -- works that are odd, disturbing things that you had to have some magical "property" that others don't to really enjoy.

</comment><comment><USER9> They have some pictures of the food - <http://wolvesmouth.com/blog>

<comment><USER10> Wow. His presentation is beautiful. I love the colors.

EDIT: More photos here: <http://www.flickr.com/photos/wolvesmouth>

It's like eating art.

<comment><USER11> > It's like eating art.

I'd rather eat food.

<comment><USER10> The best dessert I've ever eaten was both:

<http://www.youtube.com/watch?v=qofsdSMuGbg>

There's something extremely decadent about devouring something that beautiful and meticulously crafted. Fine dining is as much about the experience it creates as the food itself. It's not for everyone.

</comment></comment></comment></comment><comment><USER12> FTA: _"He is obsessed with obscurity, which is why I love him," James Skotchdopole, one of Quentin Tarantino's producers and a frequent guest,says._

Many of those that entertain being "cool", cultivate an 'underground exclusivity and avoiding the mainstream' image. Of course this helps to create the mystique. I would argue that a genuine desire to be obscure, is perhaps not the main emotional driver, but rather being seen as cool is.

If that were not the case, participating in a New Yorker feature would be an epic obscurity fail.

</comment><comment><USER13> He could make 10x as much money in doing this in New York. We'd be all "ohhh, from LA? How exotic!"

</comment><comment><USER14> Reminds me of Chef Todd of Suite 12B in Vancouver.

<http://chowtimes.com/2009/12/09/12b-underground-kitchen/>

</comment><comment><USER15> I've really enjoyed Dana Goodyear's writing. Another New Yorker article I read recently is also by her, [http://www.newyorker.com/reporting/2011/03/21/110321fa_fact_...](http://www.newyorker.com/reporting/2011/03/21/110321fa_fact_goodyear)</comment>


China Vies to Be World's Leader in Electric Cars - <AUTHOR> http://www.nytimes.com/2009/04/02/business/global/02electric.html?hp

<comment><USER2> "It is behind the United States, Japan and other countries when it comes to making gas-powered vehicles"

As far as units shipped goes, its behind. As far as car factories within China (both foreign and domestic owned) serving its domestic population, they have a massive investment.

Happy to see such an announcement. I'll be even happier once major arteries of Chinese cities are "electric vehicles only". That's gonna be a while.</comment>


AirDog – A quadcopter with a camera that follows you - <AUTHOR> https://www.kickstarter.com/projects/airdog/airdog-worlds-first-auto-follow-action-sports-dron

<comment><USER2> I've been waiting for this. Drones typically have a short battery life, so I hope it's waterproof and floats.

There are some military uses for a drone that follows you around. With this and a BigDog [1] you are starting to have robots that can provide you with a lot of support.

Now we just need an autonomous car that can follow you (or your phone) around.

[1] [http://www.bostondynamics.com/robot_bigdog.html](http://www.bostondynamics.com/robot_bigdog.html)</comment>


Math problem: can public data reveal which firms use Black-Scholes? - <AUTHOR>

Black-Scholes is the fundamental math model the quanta use. It's based on the calculus missiles use to navigate themselves. Can you write software to identify the money rockets and shoot them down? Would you need active detection, like RADAR? Investments that would that could reveal a rocket in the numbers? If so, should regulators use such tactics to reign in firms? Should the be an "anti-missile" treaty that no one uses Black-Scholes? <comment><USER2> Nothing in this question makes any sense. Missiles? Rockets? _What?_

</comment><comment><USER3> Black-Scholes, eh? If I could identify those algorithms, I'd be a rich man indeed.</comment>


Learn from failure, find your value - <AUTHOR> https://emson.co.uk/2015/02/learn-from-failure-find-your-value/ <comment><AUTHOR> What skills have helped you become an Entrepreneur. What have you learned from your failures, and how have you picked yourself up when things have gone wrong?</comment>


Research in the Wild: Making Research Work in Industry - <AUTHOR> http://cacm.acm.org/blogs/blog-cacm/97467-research-in-the-wild-making-research-work-in-industry/fulltext

<comment><AUTHOR> For example, Google is well known for integrating many of its researchers into product groups and shifting them among product groups, working side-by-side with different development teams. While on a particular project, a researcher might focus on the part of the problem that requires esoteric knowledge of particular algorithms, but they are exposed to and work on many problems in the product. When this group comes together, everyone shares knowledge, and then people move to another group, sharing again. Moreover, these ephemeral teams get people to know people, yielding valuable peer networks. When a tough researchy problem later comes up and no one nearby knows how to solve it, finding the person in the company who can solve it becomes much easier.

I wonder if FB is different?</comment>


Zend Framework Hello World Dependency Graph - <AUTHOR> http://www.zlty-pes.sk/zf.png

<comment><USER2> This comes across as totally meaningless. Even ignoring the fact that this corresponds to no real world use of ZF there is way too much detail here for it to be useful.

For a comparison to other PHP applications see this post: [http://blog.fedecarg.com/2008/08/04/php-applications- where-i...](http://blog.fedecarg.com/2008/08/04/php-applications-where-is-the- include-coming-from/)

</comment><comment><USER3> This graph is produced by KCacheGrind from a backtrace file produced by XDebug (<http://xdebug.org/>). The combination of these tools is very valuable in identifying performance problems in PHP applications. Not at this level of detail, though :)

<comment><USER4> Anyone know a similar program for Mac?

<comment><USER5> KCacheGrind works on the mac. Install it via MacPorts or Fink. I've blogged about this waybackwhen:

[http://www.gnegg.ch/2006/08/profiling-php-with-xdebug-and- kc...](http://www.gnegg.ch/2006/08/profiling-php-with-xdebug-and-kcachegrind/)

And if you don't bother installing KDE3 on your Mac, there's also

<http://www.maccallgrind.com/>

and

<http://ccg.wiki.sourceforge.net/>

and

<http://code.google.com/p/webgrind/>

All three tools parse the profiling Output that's generated by XDebug which runs perfectly well on a mac, or on any machine PHP runs on.

</comment></comment></comment><comment><USER6> This might also be used as an educational tool for exploring the intricacies of the Zend FW. Especially those parts in which the Zend handles the 'View' and 'Controller' of the MVC :)

</comment><comment><USER7> Are there charts like this for some of the other PHP frameworks? CodeIgniter, CakePHP and Yii would be good ones to look at.

</comment><comment><USER8> Does anyone know one of these graphs for ruby on rails? i have a feeling it should be really huge

</comment><comment><USER4> How about showing us the code for the Hello World script as well?

</comment><comment><USER9> wow. suddenly i realized that i have so much to understand about Zend Framework.

</comment><comment><USER10> Image is broken...</comment>


Obama takes on zoning laws in bid to build more housing, spur growth - <AUTHOR> http://www.politico.com/story/2016/09/obama-takes-on-zoning-laws-in-bid-to-build-more-housing-spur-growth-228650 <comment><USER2> > _City zoning battles usually are fought block by block, and the president 's > involvement will create friction_

I'm getting a bad feeling about this. On the one hand I want to be able to actually afford a home in Silicon Valley. On the other hand no part of me believes that the bureaucracy of zoning laws will be fixed by more bureaucracy of our federal government.

There's a certain aspect of self governance that suggests we should leave home owners alone, even if what they're doing sucks in the meantime.</comment>


New five pound note: Not suitable for vegetarians - <AUTHOR> http://www.bbc.co.uk/news/business-38144598 <comment><AUTHOR> That's fine, in the UK vegetables cost way more than £5.</comment>


Ask HN: Getting first users, an impossible task? - <AUTHOR> It doesn't matter if I am launching an MVP, a finished software or app, people are reluctant and skeptical even though the products deliver on the promise.<p>What can founders do to get their first users? <comment><USER2> This might be an obvious suggestion but are you familiar with _Do Things that Don 't Scale_ already? There might be a few useful things in there.

[http://paulgraham.com/ds.html](http://paulgraham.com/ds.html)

<comment><AUTHOR> I am new to this. Amazing stuff, thanks for sharing!

</comment></comment><comment><USER3> Well there are options. Give them an incentive like a reduced price for the first 10 people to sign up.

<comment><AUTHOR> any ideas on how I can pinpoint where my target audience is?

<comment><USER3> Well that would depend on what problem you are solving.

<comment><AUTHOR> yep, but any helpful resources from your point of view that explain the most important principles and approaches? what people that have actually done it that you think one should follow their advice. I am new to this but I feel that there are a lot of low quality content out there by people who just talk on the internet.

</comment></comment></comment></comment><comment><USER4> what is your product?

Also, you may want to flip it around and look for a set of users first. Reach out to a set of business users and see what problems they have.

<comment><AUTHOR> Hey win! do you recommend any good resources that can help get in the flow of reaching out to people and finding out about their problems and frustrations?</comment></comment>


Ask HN: Do you say "please" when using alexa? - <AUTHOR> It kind of freaks me out every time i do this <comment><USER2> I catch myself saying thank you when I get a response. I thought it would be nice if it responded...</comment>


When Should You Not Use Rails? - <AUTHOR> http://codefol.io/posts/when-should-you-not-use-rails/ <comment><USER2> Anecdotal random story bits from my current company on why you should stick to Rails:

\- All of our "lightweight Sinatra(and similar) API" services eventually start to look more and more like Rails apps. Rails does many small developer convenience things well. Which you do not notice until you build this lightweight API yourself. E.g. console, logging, migrations, database connection pooling, rspec integration, i18n.

\- No one likes to work with your arbitrary personal project structure conventions. Where's the code? 'lib'? 'core'? 'app'? 'api'? Also, no one wants to learn your lightweight "data mapper" pattern written from scratch because you thought ActiveRecord is too bloated and "does not scale". That being said, there's quite a few things you can arbitrarily pick in Rails projects as well which others will find surprising. But the spectrum of those choices is little narrower.

\- Developers most of the time assume database connection pooling just magically happens. Sysadmins do have no desire to debug your apps. After couple weeks of back and forth you may realise that Rails does database connection pooling for you. And simply requiring 'activerecord' and establishing connection in your Sinatra app does not.

\- One day someone doing production maintenance wanted to remind themselves rake task name. And ran 'bundle exec rake' forgetting to add '-T'. Default task was rspec. It dropped production database. That day many learned that Rails has safeguards against things like this, while none of those "lightweight arbitrary structured APIs" had any. Though the lesson was clearly not very good, since we did this again couple years later.

<comment><USER3> This.

There are so many things that are required in a modern web app that these "batteries included" frameworks provide for you that it just makes sense to use these for most standard projects.

I personally use Spring Boot as my default stack because just setting up a basic boot starter project gets me:

* Routing

* Server side templates

* i18n translation files

* database connection pooling

* database migrations

* ORM

* Logging

* Json serialization

* unit testing, integration testing, mocks

* CSRF

* Validation framework

* Dependency injection

* SMTP email sending

and much more, all compatible with each other

If I would start with a blank Sinatra/Express project I would have to piece together all of these myself from various libraries and my own code.

<comment><USER4> But those frameworks force you to do things the way they want you to. As soon as you need to deviate a little bit, and very often you'll have to, you'll have to rewrite the entire thing.

<comment><USER5> I think that depends on the framework and what deviation you want.

I agree that if you use Rails and constantly override its conventions, you will have a bad day. But following conventions is usually a strength, not a weakness. Most websites are not shocking cutting-edge things that have never done before, but relatively boring simple tasks that involve grabbing data from databases and showing them to users via templates. Every decision you have to make is a cost, and if you have a small team, having basic naming convention decisions and directory location decisions already made accelerates development. There's a big advantage to following conventions when you want others to work with you, because different Rails applications look quite similar in many ways.

I have not had trouble overriding Rails when I needed to override something specific.

Btw, I like the original article. There's nothing that's good for all cases, so it's very important to understand what something is good and not good at.

<comment><USER6> Sometimes, Rails' conventions are just wrong, though.

Databases can have various constraints (uniqueness, etc.) enforced at the DB level. ActiveRecord also allows for uniqueness checks, but these are separate mechanisms. If you want to validate for uniqueness, two processes each running the same Rails app might concurrently check for uniqueness, assume validity, and then independently insert two non-unique records. At this point, your DB will throw an error. (Edit: Rails actually wraps this exception now, but if you follow the idiomatic pattern and don't bother catching it, it just 500's the request.) Rails is (edit: still) not wired to treat this as a uniqueness violation at all; it just has its own uniqueness validation mechanism that doesn't even work in the most common use case for Rails.

In a concurrent environment like this with a shared DB, the only way to avoid check-and-set conditions is to just try the insert and only complain about uniqueness violations when the insert fails the DB-level uniqueness check. (Edit: Rails provides a wrapped exception for this use case, but that's certainly not the conventional Rails way of handling uniqueness validations.)

Conventions are fine when those conventions work and actually enforce good practices. ActiveRecord in particular falls short of this. And without ActiveRecord, the rest of Rails doesn't do much to distinguish itself from alternatives. It's fine, but it's not necessarily anything special.

<comment><USER7> > Rails does not, or did not when I encountered this issue, recognize the > error as anything other than "whoa dude, MySQL/Postgres/whatever is > complaining, check this out"

ActiveRecord has thrown ActiveRecord::RecordNotUnique for this and done the right thing for over 11 years (the exception definition got moved to a different file at that point so idk exactly how old it is.)

> ActiveRecord in particular falls short of this

> without ActiveRecord, the rest of Rails doesn't do much to distinguish > itself from alternatives.

Callbacks are pretty bad but it sounds like Rails went through several near- complete rewrites worth of changes since the last time you used it. There's a lot more in Rails 6 compared to Rails 2.

<comment><USER6> > ActiveRecord has thrown ActiveRecord::RecordNotUnique for this and done the > right thing for over 11 years

I had these issues in Rails 3 when that was the newest version. I found the git blame you're referring to here and it may have been _written_ 11 years ago. Odd. It looks like maybe Rails 4 finally fixed this?

More to the point, the broken uniqueness validation is still there, as is the idiomatic "validate then write to the DB" race condition that leads to this issue in the first place. There's zero correlation between stating in your ActiveRecord model that you would like uniqueness (or any other constraint) and actually enforcing that constraint in the database, where it actually works. Having an actual wrapped exception to catch is an improvement but it doesn't fix the problem.

<comment><USER5> I think this is pretty clearly documented: [https://guides.rubyonrails.org/active_record_validations.htm...](https://guides.rubyonrails.org/active_record_validations.html#uniqueness)

"This [uniqueness] helper validates that the attribute's value is unique right before the object gets saved. It does not create a uniqueness constraint in the database, so it may happen that two different database connections create two records with the same value for a column that you intend to be unique. To avoid that, you must create a unique index on that column in your database."

It's pretty clear from that text that if you want a unique index in a database, it has to be a uniqueness constraint in database itself. But that's true for any such system, that's not specific to Rails.

In most applications there are simple isolated validations you can verify _without_ consulting the database, and other validations that can only be validated by consulting the database (such as uniqueness). Rails can do that, as can many other frameworks. I don't think that's broken, that's how things are.

<comment><USER6> Rails not only has to consult the database to validate uniqueness, but it still doesn't know for sure even then whether the row will remain valid. So why not just insert the row and see if you get away with it?

Simply removing the uniqueness validation and relying exclusively on database indices would be strictly better. ActiveRecord dynamically infers from the DB schema which columns your tables have; it could also infer foreign key relationships and uniqueness guarantees and use them to generate pre-insertion "best guesses" about validity if the user wants to run those without necessarily inserting. But Rails is supposed to be an opinionated framework, and "just try to insert and we'll let you know how that worked out for you, since we can't make any guarantees otherwise" is a perfectly valid opinion.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> Funny, I never bothered to not use Rails because I can go from zero to everything running on Heroku in 15 mins now with SSL on a domain and all the shit. Being incredibly lazy I do this even for non-DB stubs, using the free Heroku Postgres add-on. So I don't even know if it's possible to run Rails without a DB. I did try `nulldb` last time but migrations broke, which is odd.

Honestly, even if doing JSON API -> React frontend, I'd still do it. It's too easy to get it right with Rails.

<comment><USER9> Yep, I built a salary calculation app with Rails and React, using it as an API and it still saved me tons of time, and the business logic was well suited to Ruby with some nice unit tests

</comment></comment><comment><USER10> > I'd still start out in Rails, personally. If you're building something > quickly to see if anybody cares, I know of no framework that comes close to > its productivity.

I've used RoR for 5 years, spring boot/kotlin for 2 years and Django for a year. Once you've set up the workflow, there isn't much difference in terms of productivity. The pain point is setting up the base project and keeping it updated as library versions change.

What django and spring boot are missing are the commandline generators for entities, controllers and views and a quick setup.

Django and spring boot need a little bit of careful setup. Django needs its settings, applications array, middleware declarations, etc. Once you get over this and start adding your entities, views and routes it goes fine.

Spring boot requires a rigid folder structure, application property files, a careful setup for migrations and logging. Liquibase setup, etc. It doesn't get off the ground easily. Once you start writing your entities, repositories, controllers, services, views it goes smoothly thanks to lazy initializers.

<comment><USER11> springboot? it cannot get easier than this: [https://start.spring.io/](https://start.spring.io/)

I personally choose Java/SpringBoot, it has a steep learning curve, but has strong typing, runs as fast as most C++ code out there, plus you can do async.

and if you want something fast but that is as easy as Rails and runs on Java/Groovy/JVM, use Grails.

<comment><USER12> >springboot? it cannot get easier than this: [https://start.spring.io/](https://start.spring.io/)

That doesn't seem easy at all. Immediately I am presented with 5 choices and then a list of 50 things that I might want to add to my application. Some of those 50 choices seem to be mutually exclusive and I don't have any way of knowing which I might want or why.

Rails? Just rails new myapp.

<comment><USER13> To be clear, your choices are:

Build system, Language, Spring version, Java packaging, Java version

The rest is naming.

That is not complex to me.

As for the dependency options... well, they are dependency options. I'm sure you have no problem with adding gems to a rails project, even though there are thousands of them that may be mutually exclusive! A non-ruby dev might not know which gem they want and would have no way of knowing what they want or why!

rails new myapp is exactly the same as doing this with no dependencies.

</comment></comment></comment></comment><comment><USER14> I can't imagine developing an application this way anymore.

From the article: "Rails has less to offer an API server that speaks JSON over the wire."

Everything we do works this way now (JSON over the wire). Everything is a RESTful API first. We build a UI that uses the API, but the business function is served completely from the API. Why? Because if the function is valuable, then some other program will likely want to exercise it programmatically. _All of our capabilities are built to be composed programmatically by default._

The additional effects this has on our organization is that we can often turn around new integrations in hours. They're all API calls. Other developers can kick the tires through fully secured Swagger UIs before a pretty application ties it together. And everything we build can be combined into multiple different UIs anywhere in our suite of applications.

Every API is built with the assumption that it is out on the public internet, subject to all the security and scaling problems that entails. What it has driven us to do is get very good at standing up hardened, simple services that host a consistent API-style.

We build UIs, but we assume the real value is in the functionality and the data, not in one specific form of its presentation.

<comment><USER15> Less doesn't mean none. Rails (and frameworks like it) serve multiple purposes -

One is serving server side rendered pages. One is providing non-functional requirements such as security (including browser based security, some of which is tied to the pages served, i.e., CSRF tokens). One is providing CRUD functionalities.

The first one, and some of the conveniences of the second, you'd not benefit from. The last one, and some of the core functionalities of the second, you would. So, less to offer, but not 'nothing'.

</comment></comment><comment><USER16> > Ruby isn't designed for a team of 200 programmers where you don't trust some > of them.

Never mind a team of _200_ , even on a team of _one_ person I don't trust _myself_! That's why I'm using typed FP. I don't trust myself not to make clumsy errors. I don't trust myself to be disciplined and write all the tests. I don't trust myself to not design a naïve architecture which I'll have to do a huge — and dangerous — refactoring on later.

This is why I'm not using Ruby/Rails any longer.

<comment><USER17> I think "refactoring is much safer in strongly-typed languages" is a point against using Ruby. It's my understanding that some of what counts as "writing tests" in Ruby would be covered by static types in other languages. -- But it's also not the case that that having types excuses the developer from having tests. (Maybe with dependent types?).

This point reminds me of some essays from Steve Yegge where he argued that one way of categorising programmers was into two groups: 'conservatives' who liked languages like Haskell where you could have confidence the code worked if it compiled, etc. and 'liberals' who liked languages like Ruby, where if you notice something breaks you just fix it; just write some feature to see if it works or not. \-- I'd think for prototyping it's nicer to have the latter attitude, and it's more reasonable you'll have an understanding of the system since it's so fresh. For long term maintenance, the former is surely better

<comment><USER18> The Rails/Ruby community has probably the most developed testing culture out of all the programming communities out there, because tests are so critical when you're writing in a dynamic backend language. You don't have the built-in "tests" from a compiler that check every argument and method reference. And then you don't have as fast and obvious a feedback loop as you do with frontend languages.

</comment></comment></comment><comment><USER19> The article points out a nice pivotal moment where Rails stops being as useful: when the server costs are higher than the engineering costs. I'd add that this shouldn't be a comparison based on a prediction, but on an actual monthly report. Until then, I find Rails to be a perfect tool that enables devs and companies to keep working on what matters.

<comment><USER20> I totally agree with the thrust of this. There is one other concern, though. I actually just submitted my own blog post on how infra costs can break a business. [https://questinglog.com/costs-are-part-of- scalability/](https://questinglog.com/costs-are-part-of-scalability/)

If your business model brings in $X per unit of usage your hosting costs _need_ to be < $X per unit of usage or else no amount of engineering will make your business profitable.

One of the founders of Twitch recently tweeted about how using Amazon's new service for Twitch-like video streaming simply wouldn't be feasible for building your own Twitch.

</comment></comment><comment><USER21> You can pretty much substitute "Django" for any case where Rails is not appropriate. That is, they go hand in hand and both have similar uses.

But there are very few cases. Fewer I'd say than this article lists. Low level programming, and yes perhaps event-based systems. [1]

I find people just like rewriting their own batteries and conventions. Fun, no doubt, and a good learning experience.

I challenge any microframework / library user to surpass the productivity of a mature framework like Rails or Django. I argue nothing comes close.

And I don't mean "for the 5 second MVP". Perhaps your app won't need some of the batteries, but your app _will_ need logging. It _will_ need database migrations. It _will_ need forms and inputs. It _will_ need media uploads. It _will_ need to send email. And so on.

Future proofing too much is an issue in the industry. YAGNI after all. But this is the opposite case. I deem it: YAEGNI. You are eventually going to need it.

[1] Django 3.1, just released yesterday, begins treating async as a first class citizen. I was initially opposed to this, given 99% of the time you don't need async. But I suppose it's nice to have and drop down to.

<comment><USER22> It is very difficult to explain to someone who has not used Django/Rails just how productive they are, especially Node.js devs. I started off with Django, so when I moved to Express for a project, I was immediately slapped with the reality that I needed to write my own forms and admin site. These are some of the things that you simply do not have to worry about with the aforementioned batteries included approach of Django/Rails.

<comment><USER21> Exactly. Every NodeJS tutorial starts with: "look how easy it is to write a server and listen on port 3000".

Yea it's easy. But why are you writing a server? That should be the least of your concerns.

<comment><USER23> Well, I need to write a server if my requirements don't fit a server side rendered application and/or my usecase does not fit the absolutely anemic performance of Rails, which also applies when using it only for an API (it's not Ruby's fault btw).

The classic response is "zomg premature optimization bad", but some of us work on more complex applications than simple database CRUD.

</comment></comment></comment></comment><comment><USER24> Well if you need full package of migrations, html rendering etc... Rails is still a good choice. It is 2020 not 1996 we have choice now and picking up framework/solution based on our needs is standard.

Ruby/Rails and Elixir/Phoenix has one big thing, REPL. No matter what you choose. C++, Go, Rust, Node etc... getting solid easy to use REPL is effort and not built in feature.

in Rails/Phoenix you get it for free. That is a great perk!

<comment><USER25> How is REPL not a built-in feature of node ? Adding a REPL to any interpreted dynamic language should be trivial.

<comment><USER26> Semantics of execution can vary wildly. Node is somewhat usable except for the "REPL is not async context" which leads to annoying tricks, but for example Python is very non interactive due to code reload behaviour

<comment><USER25> >Node is somewhat usable except for the "REPL is not async context" which leads to annoying tricks

What do you mean by this ? It's been a while since I was able to use await in REPL, maybe you are referring to something else ?

<comment><USER26> Was either Node v10 or v12 (I suspect the latter), as it was in december 2019 or so and I tended to use latest stable. Await in REPL definitely didn't work, maybe there's tooling to fix that? Unfortunately Node is not my main, or even third-line tool, but I had to work with Strapi and it was definitely a common issue that I couldn't use "await" on a function.

</comment></comment></comment></comment></comment><comment><USER27> I've used Rails for various products for 10+ years (and plenty of other tools for comparison) and really appreciate it for the productivity, conventions, philosophy, etc. But after spending most of this year with Elixir/Phoenix, I don't think I'll ever go back.

In my opinion, Phoenix competes well with most of the strong points of Rails, and avoids many of the downsides - including the ones discussed in this article. It's also built on a more performant and robust foundation (Erlang/OTP). You may not truly "need" some of those advanced foundation features at first, but at just the same point where a Rails project starts to struggle, Phoenix really shines.

Phoenix is not the solution for every app, but for every app where I would have used Rails in the past, it's looking like Phoenix from now on.

</comment><comment><USER28> Personally once I started working with TypeScript, I don't want to go back to an untyped dynamic language. Its just too painful, even for personal projects, and tests don't fix the pain (at least not at the expense of not doing test- induced design damage which is also painful)

</comment><comment><USER29> Has anyone heard of good resources that teach you "when to use X" instead of "why you should use X"?

It's somewhat understandable that the official websites of frameworks/tools/libraries/languages/services tend towards espousing the advantages of the thing and leaving out most of the drawbacks. That's just how the incentives are aligned. But even the average blog article about a tool posted on HN rarely talks about what situations it is most effective, and what situations it should potentially be avoided. I suppose it's a natural consequence of blog authors only knowing so many tools, no single person knows them all.

I'm not saying this information isn't out there – just that it seems like the exception rather than the rule.

<comment><USER30> > Has anyone heard of good resources that teach you "when to use X" instead of > "why you should use X"?

One of the goals of a podcast I started last year was to answer that type of question and more.

It's mainly a podcast where I talk to someone new every week to get a better understanding of why they chose a specific tech stack to build their app but it also goes into the "how" since we talk about how they build and deploy their app, lessons learned along the way, etc..

A list of episodes can be found here: [https://runninginproduction.com/podcast/](https://runninginproduction.com/podcast/)

Each episode has a "Motivation for using ..." time stamp so you can jump to that part of the discussion. It's usually within the first 5 or 10 minutes.

The goal here is to have a bunch of real world examples of why and when someone used X and they usually spend a few minutes talking about why they chose that instead of something else too. There's episodes ranging from solo developers working on a side project to high traffic services handling billions of requests per month.

The idea is to have loads of practical examples instead of trying to theory craft hypothetical scenarios.

<comment><USER29> Thanks for that! Coincidentally I've had that podcast on my list for a while, guess it's time to give it a listen.

<comment><USER30> No problem.

Around 4-5 months ago I implemented a custom player so now it's really easy to listen at 2x speed, and there's always been timestamped links to quickly jump around to specific topics.

</comment></comment></comment></comment><comment><USER31> Is Rails still (I have not used it since 2016) incredibly hard to migrate after a couple of years? I have java/spring, asp.net (core) and php (no framework) in production and I can upgrade after a decade not touching and everything still works. I had Rails upgrades after 1-2 years that were absolute nightmares. I'm not sure about other people here but I really don't want to suffer through that 'for fun' while I don't have to. Speed of developing is not so much faster that I would take this for granted. But maybe things changed.

Edit; it was a question, what's with the downvotes? It used to be bad; I'm not the only one saying that. It's normal (Laravel, Node etc have it as well; it's fast moving).

<comment><USER32> I don't get why you're being downvoted. You're right, a while ago that was a major headache. The good news is that it's now much better!

\- Bundler makes keeping track of gems trivial

\- Rails defaults are explicitly version-bound. E.g. you can update to Rails 6 and keep using Rails 5 defaults.

\- There are now extensive official guides on how to update.

<comment><USER31> Good to hear, thanks! Maybe i'll try it again as it was quite nice outside updating/upgrading.

</comment></comment></comment><comment><USER33> Curious, what does the author mean here:

When It's 'Just' an API Server: Rails has less to offer an API server that speaks JSON over the wire. A lot of its HTTP security doesn't matter for that case (e.g. SQL injection safeguards, XSS prevention.)

It seems to me that SQL injection safeguards would still be needed in an API service. OFC XSS isn't relevant though.

(I word it like this to be charitable in case I misunderstand what the author was trying to say, but if they are trying to say what I think they are, I think they are wrong.)

<comment><USER34> I have no idea what TFA meant, but if they meant what you assume they meant (and I tend to agree with you) then the whole premise is broken. I'm not aware of "preventing SQL injection" as any particular advantage of Rails (nor even of ActiveRecord).

Obviously if you write sufficiently bad ActiveRecord method calls, you can trick it into doing SQL Injection. So it's not magic. (Indeed, I view that as a strength of AR; it has robust escape hatches. I hate ORMs, but I hate AR less than any other ORM.)

And equally obviously, every credible database driver written in at least the last 15 years has robust support for prepared statements and tolerable documentation on how to use it that can be understood in literally a few minutes. Which, of course, is exactly how AR gets it right in the first place.

(And I only have to say "in the last 15 years" because of the dumpster fire that was turn-of-the-century MySQL.)

</comment></comment><comment><USER35> I love Rails and it has done a lot for my career. However, after 6 years of Rails development I find myself far more likely to be reaching for 'dotnet new' rather than 'rails new'.

<comment><USER36> What language/framework does that use?

I played with F# and liked it enough but didn't use much of a framework (Giraffe). Biggest hurdle was there wasn't a good up-to-date setup guide I could find for macOS.

<comment><USER37> ASP.Net Core 3.1 is perfectly usable on OS X and by the end of the year .Net 5 promises to be truly cross-platform.

</comment></comment></comment><comment><USER38> Just another critical article without substance to steer up rails community and get some readers.

That API part in particular is dead wrong. Gives the feeling Rails is not good for anything.

<comment><USER24> The scaling factor for each app is really the way it interact with slowest part of the API. If it is Database than no matter how optimal your Rust code is, you might fare in the end not that much better than Rails just because you hinged everything on eg. Postgres.

<comment><USER39> Db is slow anyways is the default excuse when using slow web backends.

The one I'm currently working on is blazing fast and were truly hitting postgres limits... At nearly 50k requests a second.

The DB is rarely a bottleneck if you have sane structure and indexes. Ironically the slowest frameworks also tend to generate terrible queries (ActiveRecord, SQLAlchemy), so you end up with a slow database and web framework

<comment><USER40> I agree with you. I don't think anyone can convince me to use these bloated frameworks on any project ever again in my life.

</comment></comment></comment></comment><comment> rm_-rf_slash Something not touched on in this post but I'd like to know is the preference for using Rails with a Single Page App built in a framework like React.

When our team determined React to be the way to go for the front end, I looked at all of the parallel dependency management and the backend complexity (one might call "sophistication") of Rails, and ultimately decided to make the backend in Node instead.

Has anyone here experienced pleasant success with RoR+SPA?

</comment><comment><USER41> Phoenix as a Rails successor does fix most of these issues, in a right way.

</comment><comment><USER42> You can build "API only" apps with Rails using rails-api[1]. It removes all the bloating that comes with a typical html rails app.

[1][https://guides.rubyonrails.org/api_app.html](https://guides.rubyonrails.org/api_app.html)

</comment><comment><USER34> I think this is a pretty reasonable and balanced article, actually, and I think it straight-up admits what many instructors lie about:

If you already can write a Hello World back-end in some other language/framework, and you're now learning Rails just so you can do Rails+React, that's a dumb waste of time.

(I'd say the same thing about most frameworks for most purposes, but it's especially true with Rails. But doing Rails+React when you're already fast and competent with Rails, that's a very sensible choice in most situations.)

</comment><comment><USER43> I use Ruby to create API servers these days. For a couple of APIs, I used Rails API. Now I use a combination of dry-rb, rom-rb, roda and other pure ruby libraries to create APIs. There's a growing movement within the community to move Ruby off Rails.

Before the API thing, I also developed websites with fullstack Rails. The experience with fullstack Rails and Rails API have helped me a lot to understand the requirement of a backend framework. I'm forever endebted to Rails for this.

</comment><comment><USER44> I agree with the article. For instance, I was using Rails a lot in the past when I was bootstrapping small shitty projects to get a "taste of the user" and validating my ideas. For more complex projects I am using Ruby business oriented frameworks (trailblazer is a great choice here!) but I flavour it up with some ActiveRecord and ActionMailer as its very convenient. In general, the whole Rails framework became too much for my projects and to blown up.

</comment><comment><USER45> >>When It's 'Just' an API Server: Rails has less to offer an API server that speaks JSON over the wire. A lot of its HTTP security doesn't matter for that case (e.g. SQL injection safeguards, XSS prevention.)

I disagree on the SQL injection part, Api calls can contain user input which in turn can be used to perform SQL injection, I am not sure what the difference between a website and an api server is in regard to this concern.

</comment><comment><USER46> Answer: When Elixir/Phoenix exists

<comment><USER20> That's sure the answer I arrived at.

<comment><USER46> Did Rails for at least a decade, but won't go back after doing elixir/phoenix for a couple years now</comment></comment></comment>


Famous Memos - <AUTHOR> https://sriramk.com/memos <comment><USER2> Sorry, but I think it's beyond time to move away from the "cult of the CEO" and not lean into it.

Reading these memos in a vacuum only serves to perpetuate the myth of the cultish male CEO (and yes, every single one listed is male) as some prescient God-like figure who can do no wrong. Pass.</comment>