Ask HN: What are the best resources for Internet marketing? - <AUTHOR> <comment><USER2> There is nothing best. Something might work for you might not work for someone else.

Not a direct answer. Its usually for SEO. But, I would recommend Backlinko [0]. SEO can be a factor in Internet marketing. So I would recommend that.

Other than that, it depends on what product you're trying to market.

If its a blog, then you can post on HN, Reddit, your niche related subreddits, etc...

If its a product, then HN, Reddit, Product Hunt, Indie Hackers, some news outlets like The Next Web, LifeHacker, etc...

[0]: [https://backlinko.com](https://backlinko.com)

</comment><comment><USER3> the book Traction that is co-authored by the creator of DuckDuckGo is a good resource.

I also learn a lot from reading posts or listening to the podcasts on indiehackers.org

</comment><comment><USER4> I would recommend you check out the reforge blog at [https://www.reforge.com/blog](https://www.reforge.com/blog)

<comment><USER5> I did the course would recommend it if you can get your employer to contribute for it. The blog is very good.</comment></comment>


A Grumpy Guy Complains About Complaining - <AUTHOR> http://go.c800colon5.com/blog/2014/01/09/a-grumpy-guy-complains-about-complaining/ <comment><USER2> From the article: _This is like finding a new alloy of steel and then building a bridge out of it to see if its any good. If Go doesn't have generics, and you know you need generics, why the fuck did you bother with Go? These details are widely, exhaustively documented; they are not surprises._

Well, I took a good hard look at Go, and I said, "There's a lot of stuff here that's really, really sweet, but error handling is going to require 600 gross conditional statements, and I'm going to have to rewrite common algorithms over and over and over because there are no generics."

But lots of people in Go community kept saying, "Yes, it looks a little unusual, and it doesn't have all the features you'd expect, but you need to give it a fair chance, and try writing a real project or two in it. Don't be a blub programmer, afraid to try out strange new abstractions."

So I wrote a couple of medium-sized programs in Go, including a server which broke simple substitution ciphers (to help perform OCR on subtitles). This involved a lot of tweaking of algorithms and optimizing. This was maybe my second or third medium-sized Go program.

And maybe about the third time I had to tear apart the server and rewrite it, and said, "This whole experience is actual incredibly painful. Why does this code keep hurting me every time I need to redesign something?" So I paid closer attention, and I said, "You know, my code is buried under error- handling conditionals and lots of stupid little subroutines that should be in standard library—but which can't be there, because there are no generics."

Seriously, if Go had Erlang OTP-style error-handling and some ruthlessly- simplified generics, I would use it all the time. The type system rocks, the basic data structures are excellent, and the standard library is good. It's clearly well-optimized for writing certain types of programs. It's just I don't write those programs very often.

It turns out what I want is a lot closer to Elixir: Erlang concurrency semantics, decent Unicode string handling, some light metaprogramming and a Ruby-like syntax. Too bad Elixir is still so young and obscure.

<comment><USER3> If you know Go doesn't have what you need, then why did you use it?

Sometimes, a language isn't a good fit for what you're building, and you said that yourself, you don't write those programs very often.

And some other times, a language just isn't for you, it doesn't match the way you think about programming.

For example, I tried to learn Scala a lot and it just didn't work, so I stopped trying because there are better uses of my time than saying: "I wish language X had feature Y" or "I wish language A was more like language B"

If Elixir has what you need, then by all means use it. Nobody knew Python before Google started using it, didn't stop them from doing great things with it.

<comment><USER4> A language with everything would be a nightmare. To program efficiently you need a balance between capability and mental footprint. If I have to write large amounts of code to accomplish a task, that is bad for me and the eventual reader. If I use some feature so esoteric the read has to stop and research, or worse, misunderstands that is also a problem.

The Go promise is that they don't have some things, but you won't miss them. Some are deliberate omissions, some are deferred until they decide if they are required and can sanely be implemented. How those impact you is going to depend on what problems you are solving.

The danger is to end up wanting language casserole with bits and pieces from everywhere. It might be what you want, but by the time you union that with everyone else it is too big to know.

You don't go in saying "I need exceptions. I will use Go!" You start down the road saying, "I used to use exceptions, but in Go I will explicitly check all the errors." Only with experience can you look back and see what the cost was.

<comment><USER5> A library for what you need - e.g. language features in library... but then that would be some form of lisp :)

</comment></comment></comment></comment><comment><USER6> >I think of these languages, these tools, as something akin to violins and cellos. They've been around, virtually unchanged, for several hundreds years. They are an absolutely gigantic pain in the ass to play- they haven't got any frets, they have tiny fingerboards designed to be played by scrawny, malnourished 15th century musicians. They've got tuning pegs designed for strings made out of animal guts and which rely on friction alone to stay in tune. They're freaking baroque. And yet, they get played a lot. You might argue that their design actually encourages mistakes.

I wish people wouldn't make analogies about things they don't understand. Frets do not make string instruments automatically better, in fact they limit you in terms of intonation and vibrato. The fingerboards are exactly the size they need to be, and would be less ergonomic if they were simply made wider (every attempt at an ergonomic violin I've seen has involved changing the body shape to make it easier to hold, not widening the neck. Widening the neck substantially on a bass would just be completely unhelpful) and a lot harder to bow. Friction pegs were certainly designed for gut strings, and that's why you'll find geared tuners on many instruments that use steel strings (and sometimes even on ones that use guts).

I just find it funny that he doesn't like it when people who don't understand Go try to criticize it, and then criticizes something he doesn't understand in an effort to strengthen his argument.

<comment><USER7> The analogy communicates fine to me, someone who doesn't play a violin.

It doesn't matter at all how accurate his criticism of a violin is, any more than it matters that C has nothing analagous to 'tuning pegs'.

Your wish that people wouldn't communicate in a way in a way that is effective but you don't like, is therefore silly.

<comment><USER6> I don't think you read my comment in full. I said nothing about how effective his analogy was, just that it was obviously misinformed, to a laughable degree.

<comment><USER7> Of course I read it in full. You write a lot about how his comments on violins are wrong (which I say is irrelevant) and then say "I wish people wouldn't use analogies about things they don't understand" (which I say is also irrelevant, because it's _effective_ ).

You then misrepresent what he doesn't like, which I ignored because one can only pick on so many annoyances in one post, then you suggest he was criticizing violins (which he wasn't) in an effort to strengthen his argument (which he wasn't, and he isn't arguing anyway he's describing his viewpoint).

<comment><USER6> I'm going to go with my original comment before I changed it for something more polite. Your comments are like the Go language: weakly typed and useless.

Hey, you're right, being intellectually lazy is effective!

</comment></comment></comment></comment></comment><comment><USER8> Yes, because everyone knows the full requirements for a project up front. That's why we all still use waterfall, right?

</comment><comment><USER9> Hum wow. So there's at least one guy on the internet trying to make sense. And the pop-software culture thing also had to be coined.

</comment><comment><USER10> The problem with Go it that it is fundamentally non-exciting. It brings very little to the table, when compared to C.

On the top of my head: \- GC (which some people find to be actually a cons) \- Some more modern ammenities for debugging. \- Coroutines (this is really where go shines)

On many other fronts, Go is actually a regression from C, because it favors being "safe" over being expressive. Goodbye macro, pointer arithmetic, etc.

Omitting exceptions is a moronic decision. In a program that does its fair share of I/O, this means that error checking will end up taking a huge % of the code written (easily 30%). It will naturally push people to either eschew error checking, or to write huge methods to dilute the error checking code.

So in the end, I'll use C with a coroutine library. It'll feel (and be) more hackish, but I'll be more productive and my code will be easier to understand.

Now, that's my opinion. Maybe other people have different sensibilities and Go is just fine for them. But I think it's pretty obvious that Go is not right for a lot of people, and nothing's wrong with them. It's unfair to pretend they haven't a point. Go is not for everyone.

<comment><USER11> > Go is not for everyone.

Yes. The OP agrees with you.

> Omitting exceptions is a moronic decision.

They didn't. Go has panic/recover. It isn't idiomatic to expose a panic in a library, but if you know you're going to be doing a lot of error handling, then you can utilize panic/recover to make error handling much terser. I do it frequently when writing parsers[1] or web applications.

[1] - [https://github.com/BurntSushi/cif/blob/master/parse.go#L56](https://github.com/BurntSushi/cif/blob/master/parse.go#L56) (Every panic with a `cifError` will be automatically translated into a regular Go `error` value.)

<comment><USER10> That's very interesting, thanks!

</comment></comment></comment><comment><USER12> > So here we find ourselves in a world with various better choices than C and > C++, yet they still get used for a pretty significant chunk of all the > coding that goes on in the world. Why is this?

Isn't the emergence of relatively many system programming languages in recent years partly a reaction to there indeed _not_ being many viable choices? I mean, I guess you have all the languages that are C-level (or Go-level) that were simply out-competed by C in the mainstream software world for whatever reasons, but people don't seem willing to go and program in languages like Ada and seeing if it's a better fit (or at least I haven't heard much of it). It seems more like, "every other decently mainstream language has mandatory garbage collection → therefore C/C++".</comment>


Ask HN: How do you keep a private journal? - <AUTHOR> I want to start keeping a journal, but I can't figure out a place I'd feel comfortable putting my personal thoughts.<p>I tried paper for some time, but (long story) I had to get rid of my notebook when a nosy acquaintance of mine started looking through my personal belongings. <comment><USER2> Use Joplin [https://joplinapp.org/prereleases/](https://joplinapp.org/prereleases/) it offer encryption for your notes</comment>


Fabric Engine + node.js Fibonacci benchmark (plus Alpha) - <AUTHOR> http://fabric-engine.com/2011/11/benchmark-node-js-fibonacci-server/

<comment><AUTHOR> Hi again - we implemented asynchronous compute for Fabric and node.js, which means we can go after the much publicized Fibonacci criticism. We're looking for closed alpha participants, so if you're interested please submit the request using the form at the bottom of that article.

Thanks - Paul (I work for Fabric)</comment>


Show HN: Laguna – Aggregated Job Listings as an API Feed - <AUTHOR> http://withlaguna.com/ <comment><AUTHOR> Hello HN!

I was working on a project that required me to scrape/integrate with several different job boards and freelance gig sites. After a couple of additional conversations, I realized this was something that a lot of places have to do (ex. personal projects, bootcamps, labor marketplaces, job boards, staffing agencies) and so spun it out as its own service with the first few customers and wanted to share with HN in case you were interested in this as well. Right now we're integrated with several sites (ex. Craigslist, Indeed, Upwork, etc.) and are adding more integrations every day :)

Would love to get you set up if interested!

</comment><comment><USER2> I'd love to integrate Laguna into [https://Pipedream.com](https://Pipedream.com). Can I get a developer account?</comment>


Matrices, diagrammatically - <AUTHOR> http://graphicallinearalgebra.net/2015/06/09/matrices-diagrammatically/

<comment><USER2> Best to start at the beginning and read through:

[http://graphicallinearalgebra.net](http://graphicallinearalgebra.net)

</comment><comment><USER3> I am guessing these diagrams are taken from Electrical Engineering and not Quantum Physics.

The blog looks like an expansion of their paper [http://arxiv.org/abs/1403.7048v3](http://arxiv.org/abs/1403.7048v3)

Yes! That's where I have seen these diagrams before. They are Hopf algebras, which appear both in Electrical Engineering and Theoretical Physics.

<comment><USER4> Baez discussed the paper on the n-Category Café, and it may be easier for the inexperienced (like me!) to get started there: [https://golem.ph.utexas.edu/category/2015/05/props_for_linea...](https://golem.ph.utexas.edu/category/2015/05/props_for_linear_systems.html) .

</comment></comment><comment><USER5> Very impressive if the author developed this by himself. But this is a well known idea from category theory:

[http://en.wikipedia.org/wiki/String_diagram](http://en.wikipedia.org/wiki/String_diagram)

</comment><comment><USER6> This reminds me of something I never understood fully: Penrose's tensor notation.

</comment><comment><USER7> I am still trying to wrap my head around this, but the parallels with functional programming are striking.

<comment><USER5> String diagrams are a way to describe morphisms (think functions) in monoidal categories.

A construction using monoidal categories (or a slight generalisation) can be used to give a categorical model for arrows.

[http://bentnib.org/arrows.pdf](http://bentnib.org/arrows.pdf)

This gives rise to these diagrams:

[https://www.haskell.org/arrows/](https://www.haskell.org/arrows/)</comment></comment>


$20,000 In 1 Month at 20 - <AUTHOR> http://www.sofamoolah.com/personal/20000-in-1-month-at-20/

<comment><USER2> There seem to have been quite a few posts recently about people making good money from their own business on HN. They seem to fall into two categories:

a) SaaS products

b) online marketing

The posts about the later seem to be more popular. I'm guessing because it is a lot easier to make a quick buck with online marketing, however the results also seem to be less sustainable. I'm getting the feeling that a lot of this is down to luck. As I understand with a SaaS product, if you manage to make $20k in a month, you are probably able to do pretty much the same the next month. It doesn't depend so much on choosing whatever is a profitable niche that month and how well Google ranks you.

Anyway, I from this I have two questions / requests for posts:

a) Has anyone managed to sustainably get income from online marketing?

b) Has anyone managed to make a quick buck like this from a SasS product?

</comment><comment><USER3> I don't mind the recent 'Passive Income Hacking' posts but I am not sure what this is doing on the front page, and why it made it there so fast with such a linkbaity title. flagged.</comment>


Google workers are holding a sit-in May 1 to protest alleged retaliation - <AUTHOR> https://www.cnet.com/news/google-workers-are-holding-a-sit-in-on-may-1st/ <comment><USER2> Next: a protest to protest the retaliation for the protest against retaliation</comment>


The Chilling Math of Inequality - <AUTHOR> http://www.bloombergview.com/articles/2016-03-15/the-chilling-math-of-inequality <comment><USER2> A link the the arxiv paper: [http://arxiv.org/abs/1602.07300](http://arxiv.org/abs/1602.07300)</comment>


Get Stackd – recommends the best no-code tools to use - <AUTHOR> https://sideprojectstack.com/get-stackd-product-hunt-launch/ <comment><AUTHOR> Hey Folks,

Happy Friday. If you're interested in making something with no-code but not sure where to start I've made an app called, "Get Stackd" for you.

It's 100% automated web app (built with no-code btw ) and with it you can get a recommended stack of what no-code tools to use to make your next no-code app.

The thing that makes it interesting is that it's based off of the no-code tools used in dozens of successfully made and launched no-code projects from talented Makers.

It is my hope that it helps you reduce the time and effort when making a no- code side project. So that you can make that thing you've always wanted to make.

With no-code!

If you have time to check it out or check out on Product Hunt I'd value your feedback.

Thanks,

Michael</comment>


Court: Facebook link, 'Like' not defamation - <AUTHOR> http://www.post-gazette.com/business/legal/2015/12/01/Court-Facebook-link-Like-not-defamation/stories/201512010001 <comment><USER2> Of course not. If I see a defamatory article on the front page of a newspaper and I call over a bunch of friends standing nearby and say "Hey guys, check out this article!", or even "...check out this _great_ article!" (to account for the self-like), would that be republication or defamation? If all the defendant did was post a link, there's no difference as far as I can see.

<comment><USER3> Somewhat related trivia.. A retweet, however, has been shown to be able to be libellous as it's considered to be "republication" of the material, at least in this awful court case: [https://en.wikipedia.org/wiki/McAlpine_v_Bercow](https://en.wikipedia.org/wiki/McAlpine_v_Bercow)

<comment><USER4> Interesting. However, the defamation standard in the UK is far lower than the US.</comment></comment></comment>


Ask HN: Is Better Business Bureau accreditation worth it for a small startup? - <AUTHOR>

I was contacted today by a salesperson from my local Better Business Bureau. She began the call by saying that someone had contacted them about our website and had inquired about our trustworthiness for online transactions. That had the intended effect of scaring me / preparing me for her sales pitch.
Bottom line: they want $595 per year for "BBB Accredited Business" status. We get to put their seal on our site and we get listed in their online directory of accredited businesses.
I've actually thought seriously in the past about going through this process in hopes of improving e-commerce conversion rates for our "Etsy for genealogy research" web app. But I found the manner in which the pitch was delivered troubling. It hearkened back in my mind to Jason Fried's concerns with Get Satisfaction's business model.
Can anyone share any opinions or experiences with Better Business Bureau accreditation? If you've paid them for it, has it been worth it? If not, what made you decide against it?
Thanks! <comment><USER2> It is $600 thrown away, their model relies on scarcity of information, the Internet has staked the heart of companies with scarcity of information as a business model and it is why they have become irrelevant for most online companies. Your local plumber may benefit from them, but you most certainly will not. Take that $600 and put it in ad-words and you would serve your business better.

</comment><comment><USER3> Sounds like a bunch of horseshit to me. The BBB is a dead org. Nobody contacted them about your site and their fee is robbery.</comment>


Ask HN: Why are programming communities becoming so politically correct? - <AUTHOR> I've been trying to find a new language to get into, after becoming bored with Ruby. I find that a lot of languages out there are intentionally maintaining communities that strive to shelter people like Adria Richards. They want to make sure that nobody is 'offended' and I think the idea is to somehow safeguard the community from those who might inhibit its progress, but I believe that it in fact does the opposite.
If we traveled back in time fifty years and showed people off the street video of a black president, mosques next to churches, and women having equal pay beside their male counterparts, there would be a considerable portion of people that would describe the whole thing as 'offensive' right?
I want to find a language I can really sink my teeth into, and go to conferences and attend meetups, but not at the expense of my dignity. I don't mind offending people, I don't mind when people are coarse to me, I don't mind hearing the truth spoken as it is, and I can appreciate people that get to the point and don't sugarcoat everything to avoid offending someone.
What should I do? <comment><USER2> > What should I do?

I had thought about this topic. See my past comments:

\- [https://news.ycombinator.com/item?id=10372461](https://news.ycombinator.com/item?id=10372461)

\- [https://news.ycombinator.com/item?id=10372527](https://news.ycombinator.com/item?id=10372527)

\- [https://news.ycombinator.com/item?id=10405881](https://news.ycombinator.com/item?id=10405881)

Being considerate of others is important, but that shouldn't come at the cost of being afraid to speak up one's well-reasoned viewpoints. I already sense members of Hacker News beginning to speak up frankly; now we just need to take the same attitude out to the real world (outside of the internet) such that incidents like Donglegate or Github-Horvath do not repeat themselves.

</comment><comment><USER3> The SJW invasion of github has expanded?

A good first step might be to move everything you can to gitlab -- especially if that means you can downgrade your github subscription (private repos on gitlab are free).

Common Lisp people still seem to interpret censorship as damage and route around it.

An attempted SJW takeover of comp.lang.lisp would be most musing.</comment>


Cringely's second column on the firing of Leo Apotheker - <AUTHOR> http://www.cringely.com/2011/09/cringelys-second-column-on-the-firing-of-leo-apotheker/

<comment><USER2> Amazing how he was able to make such a specific prediction, not only about the firing of Leo, but also the hiring of Meg Whitman, if it was actually just a prediction. But he most likely had some strong inside information.

It seems that the HP board is set on destroying HP with all these political games and hiring friends as CEO's.

<comment><USER3> Not to mention buying SAP (or as it actually turned out, a SAP-like company).

<comment><USER4> Maybe Autonomy could hire Leo?

</comment></comment></comment><comment><USER5> Impressive prediction. This was in February, way before the bungled Touchpad and WebOS strategy, followed by announcements that totally diminish the Hardware division, which remains a large portion of HP's value proposition. Cringely has made wild predictions that don't pan out, but this is one that was right on target.

<comment><USER6> Well, if you guess enough times...

<comment><USER7> These are VERY specific series of guesses. Names being mentioned, scenerios being played out.

</comment></comment></comment><comment><USER8> Reading the comments to hist first post totally made my afternoon. People ridiculing his choice of Whitman as the new CEO? And totally clueless ones stating that Apotheker was the right person to take HP out of trouble.

</comment><comment><USER9> Even a broken clock is right twice a day. He also predicted before the apple press conference where they gave away free bumpers for antenna problems that apple had halted production of iphones.

<http://www.cringely.com/2010/07/missing-in-action/>

<comment><USER10> What's Cringely's reputation? Why would be considered a broken clock?

<comment><USER11> He at least used to make an annual list and score himself later: 2011: [http://webcache.googleusercontent.com/search?q=cache:http://...](http://webcache.googleusercontent.com/search?q=cache:http://www.cringely.com/tag/2011-predictions/) 2009: [http://www.pbs.org/cringely/pulpit/2008/pulpit_20081216_0055...](http://www.pbs.org/cringely/pulpit/2008/pulpit_20081216_005509.html) 2006: [http://www.pbs.org/cringely/pulpit/2007/pulpit_20070105_0014...](http://www.pbs.org/cringely/pulpit/2007/pulpit_20070105_001440.html)

For 2009 he scores himself 4 right and 11 wrong, which is certainly broken clock territory, but he's usually decent _for a pundit_.

</comment></comment></comment><comment><USER12> In all fairness to Leo Apotheker you can't judge whether he would be ultimately successful based on a single year at the helm.

Imagine that the Apple board fired Steve Jobs after one year in 1998? After all he killed the clones as well as disrupting the most single profitable piece of a financial struggling company - [http://blogs.hbr.org/cs/2011/09/what_steve_jobs_taught_me_ab...](http://blogs.hbr.org/cs/2011/09/what_steve_jobs_taught_me_abou.html)

Not to mention wanting to open retail stores after CompuAdd and Gateway both proved that was an unworkable idea.

I personally think the board shouldn't have hired Apotheker in the first place but you can't give him more than an incomplete on his two turns as a CEO.</comment>


Dropbox V1 API endpoints disabled today - <AUTHOR> https://blogs.dropbox.com/developers/2017/06/updated-api-v1-deprecation-timeline/ <comment><AUTHOR> Dropbox has not only deprecated their V1 API endpoints, they are now also disabled. This means that any application which has not been updated to the V2 API will now fail. Expect a lot of unsupported apps to break for no good reason.</comment>


Sam Altman: 'The greatest threat to this country is incompetence of governance' - <AUTHOR> http://www.businessinsider.com/y-combinators-sam-altman-on-government-incompetence-2015-9 <comment><USER2> Why should cities build more densely now if truly massive job displacement is coming in as little as 10 years?

Why do people need to live in cities? To be near jobs that won't exist? Why shouldn't they be moving to less expensive low density situations if they're not going to have jobs?

If you're going to think and talk about these massive fundamental structural changes to the economy, then it's best to step 5 or 10 steps further back and start looking at the really big pictures.

<comment><USER3> > Why do people need to live in cities? Short answer: economy of scale. Higher > population density is ecologically more sustainable as well as it lowers the > cost of services.

<comment><USER4> It's a bit of a paradox then that city living is generally considered more expensive given that the economies of scale should kick in.

Presumably someone is making money here, probably owners of the land, which goes up in value thanks mostly to the efforts of the other people in the city, not anything the land owner does, as proponents of a Land Value Tax would argue.</comment></comment></comment>


How Magic: The Gathering card sets are designed - <AUTHOR> https://www.rockpapershotgun.com/2019/11/06/how-magic-the-gathering-card-sets-are-designed/ <comment><USER2> Here's a pretty good talk by Mark Rosewater with some lessons that don't just apply to games:

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

 _For those with PTSD: There are no mentions of 3 /3 elks. /s_</comment>


Operators and Sidecars Are the New Model for Software Delivery - <AUTHOR> http://www.ofbizian.com/2020/07/operators-and-sidecars-are-new-model.html <comment><USER2> This is really a book ad.

So, what's going on here, I think, is that you have some microservices which call each other. Each microservice is apparently put in a container to avoid dependency issues. Now you have a network overhead problem if the containers are on different machines, so there's something called a "pod" to make them run on the same machine. This is what the author calls a "sidecar". The author may be tangled in his own jargon. Cloudflare says a "sidecar" is another container inside a "pod", but one that is for some auxiliary function rather than being one of the main microservices doing the work. Hence the name "sidecar". The link in the article for "sidecar" is to the author's book, so you have to pay to find out for sure.

Now you have to connect up the messaging, start, stop, and update things, scale to multiple instances and machines, log, and monitor. So you need an orchestration system of some kind. The "operator" decides what to do, and the applications and the Kubernetes system, via the Kubernetes operator API, do it. The "operator" is shoved into the "pod" as a "sidecar".

Since making an operator that does the right thing is a hard problem, there's quite a collection of buzzword-intensive products to do some part of that job.

A better explanation is in the Kubernetes documentation.[1]

Did I get this right?

(About 15 years ago, I had to write something which did this sort of thing for QNX real time programs for a robot vehicle. Had to deal with things like inserting monitoring into a message passing system. The Robot Operating System (which is not an OS, it's a message management layer on top of Linux) does something similar. Now it's gone mainstream. Does it make things easier or harder?)

[1] [https://kubernetes.io/docs/concepts/extend- kubernetes/operat...](https://kubernetes.io/docs/concepts/extend- kubernetes/operator/)

<comment><USER3> Sidecars are extra containers that run alongside the main container in a pod. Both sidecars and pods are k8s jargon terms. Pod is what k8s calls a running image, a container in Docker lingo. Pods have metadata like resource claims that k8s uses for scheduling.

The point of the article is a bit like the distributed system analog of aspect oriented programming.

A typical problem might be that you want all your network communications to be encrypted, but you don't want to configure SSL for every service, because the libraries are all different, configuration files to point at rotating certificates are all different, etc. So instead you run an SSL proxy in a sidecar, and make the traffic go through that instead. You sort of bolt on extra horizontal functionality onto your existing set of services.

Operators are slightly orthogonal IMO. I think the core pattern of k8s, the control loop, is great for operational resilience, but it's a bit alien to many existing bits of software, so operators are the glue which converts an otherwise high-maintenance service into the control loop idiom.

I think the article does have a point, it points to a unifying theme for writing apps for k8s, and it's not necessarily just a book ad.

<comment><USER4> Correction: a pod in Kubernetes is a collection of running containers deployed on the same host at the same time.

<comment><USER3> Sure. And sidecars share a bunch of things with the main container. I am simplifying in an inexact handwavey way. You should still think of a pod as primarily a single container, and design deployment around that.

</comment></comment></comment></comment><comment><USER5> > Today's developers are expected to develop resilient and scalable > distributed systems.

The author start from within a silo. Many of today's developers don't have these expectations.

Operators are non-trivial software. Some of them are over 50k lines of code and still not near complete. It takes a fair amount of work to develop and test them.

It is sometimes implicitly shared that you MUST use an operator. There are times they are useful. There are many other times you don't need them. I'm still amazed at how often I can get away with a Kubernetes Deployment or StatefulSet and be just fine.

</comment><comment><USER6> I'm a bit skeptical of sidecars. It seems like a pattern born of organization separation between ops and dev instead of an optimal solution.

I mean, I think I get the benefits. You have your magical smart pipes that just work deployed along with but separate from the grubby app code. Supposedly the app code is simplified because a lot of the complexity is handled in the side car. They're separate containers so you can "compose" and deploy them separately.

But in practice, why is this not strictly worse than a set of libraries? You're spending overhead and do you gain, really?

The side car is language agnostic...but you need a language specific library _and_ you need to interface with the side car through some indirection (network, file, IPC) instead of in process execution. You DO consider the side car or you're double implementing the complexity in both the app and the side car anyway. Reaping the benefit is the same as depending on it, no? So now you have a dynamically linked dependency, so to speak.

Why not just save a lot of overhead and use a library when its viable and relegate the sidecar to a stopgap instead of promoting it as an optimal pattern?

<comment><USER7> It's not an either this or that, but a matter of convenience. If it's easy to build that library into your app in terms of testing, go ahead. But it might be easier to validate the library and app separately, and then run them together.

For instance, I have an app that needs to securely access sensitive data. I can build that access into my main app, as a wild violation of "separation of concerns" or build a sidecar which handles the access and exposes the data as a read-only file system to the app container. I test both locally and separately then rely on the container platform to ensure that the app only accesses the data through a read-only volume mount.

Which is easier? If you are green field, monolithic or meet all devs each day, maybe the library is easier. But what if the two parts are built by different teams in different countries? and Ops is a third team in a third country?

<comment> _-___________-_ If the library has a well-defined API and is built and maintained by a team following good engineering practices, and your app is built using a language/platform that makes accidentally working around their API impossible, the difference between that and a sidecar container being communicated with via a readonly FS or local network seems largely academic.

<comment><USER8> I don't think there are many languages where you can give certain permissions (e.g. r/w access to a directory, or TCP connection to a certain host) just to a single library in the application, in a way that can be enforced at runtime.

<comment><USER6> What does this secure? The same party controls both the main app and the sidecar so the assumption is an attacker can break into the main app only?

<comment><USER8> > the assumption is an attacker can break into the main app only?

Yeah, the idea is that the main app is more vulnerable (both due to being more exposed, and also because it's often more complex), hence it should have very limited permissions into the internal infra.

This approach is also used in other situations, like browsers, where the process that processes website content is very locked down, and can only perform actions in the system (network, filesystem, etc) through a limited channel to an outside process.

</comment></comment></comment></comment></comment></comment><comment><USER9> Allowing independent teams to deploy their service into production is a hard problem to manage. One way is to provide them with self-service to abstractions that are managed with guard rails.

Persistent storage, key/value stores, caches, naming, service discovery, networking, access control, authentication, authorization, versioning etc etc.

Having that as an API means you can deploy safely. Having it as a library means that you're missing the indication that these are networked services that you are relying on and must accomodate.

Having it as a networked "sidecar" means that it can be upgraded independently, so is an extension of the control plane beyond the lower level system services of k8s and equivalent. It can express business logic in terms of deployment policies, sign offs, audits, accounting etc.

</comment><comment><USER10> Lacking Kubernetes specific experience, I have no idea what the article is talking about. Is it just "you can write micro services in different languages and deploy them in separate containers, and they can still talk to each other?" Why is that observation insightful?

Is there some special inter- on intra- container communication mechanism that the author is trying to highlight?

<comment><USER11> A sidecar is an alternative to an application-level library for something that needs to be present in every instance, e.g. knowledge about how to contact other services, or authorization checks on inbound calls.

It's similar to another microservice in the sense that we're putting functionality across a network API instead of a function call. But unlike another microservice, a sidecar is deployed alongside each instance and usually inside the same network namespace, so there is no discovery/routing problem and latency is minimal.

<comment><USER12> I am wondering if those XML-SOAP people ever invented something like sidecar before?

<comment><USER13> Advanced, proper SOAP usage allowed for various patterns that acted similarly, but that generally falls under anything with middleware that jacks into messaging system

</comment></comment></comment></comment><comment><USER14> Lots of fancy headlines, but they don't even define what they mean by sidecar. Plus this appears to be mainly about Kubernetes microservices, not about monoliths or regular end user software.

<comment><USER2> Click on "sidecar" for the ad for the book.

<comment><USER14> That explains a lot. I was reading it with the Firefox reader mode, so I didn't see that this was pr text.

</comment></comment></comment><comment><USER15> hi all, the author of the article here :)

The book that is linked has been translated into 4 languages and does a good job explaining what is a sidecar. No need to buy, you can download it for free from here [https://developers.redhat.com/books/kubernetes- patterns](https://developers.redhat.com/books/kubernetes-patterns)

The article is for Kubernetes savvy readers, and the main takeaways (which I agree I failed to convey clearly) are these:

\- You can consume generic capabilities from a sidecar through HTTP/gRPC, rather than include these capabilities into a microservice's runtime as a library.

\- There are many sidecar examples today (some in a Pod, some shared) Envor, Cloudstate, Skupper, etc. Sidecar is an implementation detail. It can be with containers in a Pod, or it can be a shared sidecar per namespace or host machine - next to a monolith. The best example today, that provides generic developer primitives as a sidecar is Dapr.

\- Kubernetes Operators encapsulate operational knowledge into executable form and shipped to software consumers as an "Ops-included" mentality.

I explained in more details the concept of consuming distributed system capabilities from sidecars in this article [http://www.ofbizian.com/2020/05/multi-runtime- microservices-...](http://www.ofbizian.com/2020/05/multi-runtime- microservices-architecture.html) and webinar [https://www.youtube.com/watch?v=CZPEIJFJV9k](https://www.youtube.com/watch?v=CZPEIJFJV9k)

</comment><comment><USER16> Lots of negativity here, and perhaps a little bit of cynicism.

Kubernetes, and in a broader sense Docker, has a number of paradigms which in my opinion won't make it to super-broad adoption.

Docker has multistage builds, but are very impractical to integrate with todays mainstream CI pipelines. Most just suppose you want to clone the repo in their pipeline container and build the target images there. Lots of those power tools (eg. Feed integration...) do not cater for multistage builds.

Kubernetes:

Sidecars do seem useful, but then again not everything that can be separated should be (or is easy to do). My client really went overboard with React HOCs and basically some apps are just 1 long vertical LoC full of "with..." beyond count.

Pod security RBAC Cron jobs Prolly a few more that I forgot about.

Not to say that they are bad. I just don't see them being used that much...

</comment><comment> t-writescode This website throws up an error with BitDefender and stopped me from going to the link. Be warned.

</comment><comment><USER17> How have people's experiences been with Consul in general? Any pitfalls? We're rolling it out shortly for service discovery and some limited key/value storage (and a separate cluster for Vault storage)

<comment> t-writescode I have very limited experience with Consul and Vault. I do know that the older versions of these services, when they were CLI, were very unpleasant, especially the Vault.

Consul didn't immediately meet our needs since it has no form of an audit trail, so the purposes I'd hoped to use it for weren't really fulfilled. I did like what the service seemed to provide and how it provided it.

Just be warned that the lack of audit trail can be a problem if you want to use it for feature flags, etc. It will still need to be backed by some sort of store, like git.

<comment><USER18> The enterprise (paid) version of Consul 1.8 has audit logging.

</comment></comment></comment><comment><USER19> Really excellent article. I agree that alot of delivery of software will be via sidecars and operators in the k8s world</comment>


High performance models in TensorFlow - <AUTHOR> https://www.tensorflow.org/performance/performance_models <comment><USER2> How would you ever saturate 8 GPUs if your average large motherboard with 2 CPUs has only 40 PCIe lanes at its disposal?

Is there a motherboard out there that would allow the usage of 8 GPUs with each of them allocated the full 16 lanes?

The best I've found so far would be 4 GPUs on one board, either with 16/8/8/8 or in a rare case 16/16/16/16 (but that requires 2 CPUs).

Besides the physical space, which again seems to be limited to 4 double-wide GPUs on one motherboard.

<comment><USER3> Two CPUs max out at 80 lanes iirc.

<comment><USER2> That's correct, two Xeon 2600's do 40 lanes each and that's the maximum you can get right now. Which is why boards that are dual CPU usually require both CPUs to be installed to have all PCIe slots available because the PCIe interface is now embedded in the CPU rather than in the chipset.

<comment><USER4> You can get 4 CPUs easy, and even 8 CPUs

<comment><USER2> 40 lanes / CPU is the maximum afaik.

<comment><USER3> Yup, 2x40.

It also depends on what you plan to do with the gpu. For example, models that do most of the work on the gpu and rarely ingest data from the host, such as large and slow models, will run just fine. On the other hand, attempting to parallelize training across GPUs and nodes is a chore...

</comment></comment></comment></comment></comment></comment><comment><USER5> My bottleneck is still speed of reading data from json. I wonder whether I should wait for features to be built out here or go down the path of writing a custom data reader in C++

<comment><USER6> If your data has a little extra structure that isn't shared by JSON in general, you could probably get serious performance gains by rolling your own.

</comment></comment><comment><USER7> It appears that hacker news users upvote anything with machine learning or tensorflow in it. This is merely a fifo queue implementation, which is not particularly significant any way. Why it was submitted, much less upvoted, is nonsensical to me.

<comment><USER8> One (not so charitable, I have to admit) interpretation is that there is a sizable group of people interested in ML that doesn't have the more traditional computer science background, and thus find this kind of text far more appealing, xkcd's ten thousand and everything [0].

A more extreme version of this is situation is of the medical researcher who "reinvented" on his own the trapezoidal rule for numerical integration[1].

[0]: [https://xkcd.com/1053/](https://xkcd.com/1053/) [1]: [https://fliptomato.wordpress.com/2007/03/19/medical- research...](https://fliptomato.wordpress.com/2007/03/19/medical-researcher- discovers-integration-gets-75-citations/)

<comment><USER9> No, yesterday TensorFlow team released benchmarks [1], as part of these benchmarks they simultaneously published tips for ensuring high performance [2] which they used in benchmarks. The reason for publishing the second link is that due to copying memory between python and C++ (when using feed_dict) TensorFlow can appear to be slower than competing frameworks, hence they felt a need to point out methods used to ensure high performance by reducing I/O latency.

Looking at [2] without having context of [1] can be confusing. But no one is trying to pass this off as "innovation".

[1] [https://www.tensorflow.org/performance/benchmarks](https://www.tensorflow.org/performance/benchmarks) [2] [https://www.tensorflow.org/performance/performance_models](https://www.tensorflow.org/performance/performance_models)

<comment><USER8> Oh, sorry if I was unclear, but I didn't intend to say that the TensorFlow team is trying to pass this off as innovation. I was thinking about why some readers might find this interesting and upvote even without the context.</comment></comment></comment></comment>


Take Care When Validating Thrift Structures in Python - <AUTHOR> http://via-eng.tumblr.com/post/36516074836/take-care-when-validating-thrift-structures-in-python

<comment><USER2> This is a known issue (but I agree with you): <https://issues.apache.org/jira/browse/THRIFT-1732></comment>


Ask HN: How do you motivate yourself to keep building and finishing projects? - <AUTHOR>

I just finished a project that took me a lot longer than expected after doing a 12-hour coding push.  But that's unusual, I haven't done that much free-time coding in a few years.  What keeps you motivated? <comment><USER2> Discipline is one of the biggest things. Motivation is not enough, everyone has good days and bad days like when you don't feel like coding.

Establish a goal for 3 months/6 months/1 year/10 years, something realistic (let's say you want to get a new car... that will be in the next 2 years or something ).

Take 10 minute breaks every 1-2 hours and move around during that time. Go grab a coffee or something, it will increase your dopamine levels.

When you take a new project always take 30% extra time from your initial evaluation (that's to make sure you don't end up with 12 hour coding push )...

</comment><comment><USER3> Potential to make money. I don't make any serious projects on my own time unless there is a way to monetize them.

</comment><comment><USER4> Make it about proving something to yourself. You know that mindset you get into when you're playing a really hard level in a good game? Try channeling that and see if it works, it definitely does for me. :) - One of my projects from two years ago is now worth about $500k.

</comment><comment><USER5> not sure if this answer your question but it could be relevant to what you're looking for. I find it helpful to keep myself motivated and keep myself going. good luck. [http://www.bakadesuyo.com/2015/01/how-to-be- motivated/](http://www.bakadesuyo.com/2015/01/how-to-be-motivated/)</comment>


Earth's core rotates faster than rest of the planet - <AUTHOR> http://www.physorg.com/news/2011-02-earth-core-rotating-faster-rest.html

<comment><USER2> The news should be that the core does not really rotate faster. Does it matter if it's one extra degree every million years? Some tectonic plate may move by that distance over the same time.

<comment><USER3> Um, yes it does matter. You do realize that businesses get sued because they don't fulfill six-nines availibility? A change in rate of 10^-6 is extremely important, especially in the geomagnetic fields where the rotation of the inner core needs to be precisely measured.</comment></comment>


How the American opiate epidemic was started by one pharmaceutical company - <AUTHOR> http://www.psmag.com/health-and-behavior/how-the-american-opiate-epidemic-was-started-by-one-pharmaceutical-company

<comment><USER2> And? People who don't need drugs, wouldn't take drugs if their environment was better. The Rat Park shows that.

So, give it to them. Oxys are only expensive because the company charges it. Morphine is cheap to make. Real cheap. This is just American gov't torturing people for its sadistic demand that "drug's are bad".</comment>


The User is Drunk - <AUTHOR> http://www.youtube.com/watch?v=r2CbbBLVaPk

<comment><USER2> I think these guys have the idea nailed:

<http://threesheetsresearch.com/?p=233>

I love the copy on their about page (I have no affiliation!):

"At Three Sheets Market Research, we're not only researchers. We're consumers."

"Choose Three Sheets Market Research. Because your customers drink."

PS: is this idea trending - I have seen it 3 times in 1 day.

</comment><comment><USER3> Make things simple, direct, and obvious. This is born out in the studies that should a rapid drop off in registration depending on how onerous the process is.</comment>


Idea to App in 2 weeks - <AUTHOR> http://nemrow.tumblr.com/post/61214991178/idea-to-app-in-2-weeks <comment><USER2> I'd like to offer an observation about the copy at [http://www.pigeonpic.com](http://www.pigeonpic.com). The larger slogan, "Never lose touch with friends and family", is vague. The smaller one, "Send photographs through the mail with just a text message", is specific. It makes clear what you offer and also that there is a concrete service here instead of just another smarmy social site. If I were you, I'd drop the first one and put the second in its place. Then the clear copy and the sentimental photo would complement each other nicely.

I'd also make the one-two-three diagram much larger, i.e. make it the width of the banner. It does a good job of explaining what the original line means. To judge by all the sites out there that can't seem to state simply what they do, that is nothing to sneeze at. If you can get users to read that far until it clicks, you'll be way ahead of most.

Of course you can test all of this.

p.s. One thing remains unclear: how do you get the address to mail the printed photos to?

<comment><USER3> >The larger slogan, "Never lose touch with friends and family", is vague. The smaller one, "Send photographs through the mail with just a text message", is specific. It makes clear what you offer and also that there is a concrete service here instead of just another smarmy social site.

This is an excellent point. However, I don't agree with your second bit of advice to drop the first line and just use the "clear" copy. Instead, I suggest coming up with a better tag line that maybe even ties in nicely with the name Pigeon (love that name, btw). Maybe something like, "Send photographs to anyone on the wings of a text." OK, that's probably lame, but I think you get my point.

</comment></comment><comment><USER4> Congrats on launching. I built a similar idea and found it to not be profitable:

[http://babygra.ms](http://babygra.ms)

If you figure out how to make this profitable, when you consider printing costs and marketing costs, please share! Long story short, I found you have to give people one for free, and this kills your margins. Send me an e-mail if you want an Excel spreadsheet that proves this :)

I posted some details here:

[https://t.co/w2r59Ah6LN](https://t.co/w2r59Ah6LN)

</comment><comment><USER5> OP, if you chose the current title for your HN submission you should be aware that in some countries "Fuck Ya" will be read as "Fuck You". I think you mean "Fuck Yeah"?

<comment><USER6> I'm a native English speaker, and I read it as "Fuck you."

</comment></comment><comment><USER7> Congrats on shipping quickly!

Small nitpick - Twilio does offer MMS, but you have to have a shortcode in US: [https://www.twilio.com/mms](https://www.twilio.com/mms)

It's a hefty monetary commitment, so for the purposes of this story Twilio does not offer something compelling, but if you have the $$$ it's a solid service.

<comment><USER8> The blog date was 9/14, and the groundwork was done presumably at least 2 weeks before (seeing the title of the post). Twilio announced MMS on 9/18 at TwilioCon.

According to their website, you can get MMS via regular phone #s.

 _Send and receive pictures over both phone numbers and short codes with Twilio Picture Messaging._

However, this service was recently launched

</comment></comment><comment><USER9> > So after I launched this product I had more orders in the first 24 hours > than I did in total with my startup that took over a year to develop.

Can you please elaborate on what you did to get orders? I would think it would be many times harder to get a first order from someone you don't know, than writing the app.

<comment><USER10> since specific numbers aren't provided, he could have had 2 orders in his pigeon app and 1 from his prior effort and his claim would be true.

The "boomer age" people I know who want to print pictures and send them to someone go to a kiosk at the drugstore or a copy shop, where they also pick up a greeting card in which they typically like to handwrite a note to the recipient, that was the sort of thing people used to consider courteous.

</comment></comment><comment><USER11> Nice app. However, slow development time is not necessarily a bad thing. If you can develop an app in 2 weeks, it most likely means someone else can easily clone the same app. Whereas if you need 1+ years to develop it, it's likely not as likely to be duplicated (ie. there are actual technical barriers)

<comment><USER12> If others are interested though, that validates the idea, which is immensely more useful than the alternative.

</comment></comment><comment><USER13> 6 weeks: [http://multiplayerchess.com](http://multiplayerchess.com)

built it 3 years ago after I had quit my job and came to SF

<comment> clark-kent Cool stuff

</comment></comment><comment><USER14> This is a pretty cool idea and I applaud the rapid execution.

That being said, you could have tested this idea out without building any tech at all by using your own phone number for texts and manually printing and shipping photos.

Then if the idea took off and you could no longer manually keep up with the orders you'd know you have a winner.

<comment><USER15> That would have actually been his MVP. But seeing as he could develop the tech so fast, he did have the option to develop the technology first itself. And he did get a lot of text messages in the first 24 hours itself!

But, for someone who wouldn't be able to get the tech out so quickly, an MVP(here, text messages to your phone and manual printing) is the ideal thing. Even he could have benefitted because the product would be out in like a day itself and he could see if it was popular enough to work on it further.

</comment></comment><comment><USER16> This sounds awesome. Can I ask how you go about getting shipping details, etc from the sender if they simply give you a name? Is there more to it?

<comment><USER17> In the sign up process you enter the shipping info for who you want to send prints to

</comment></comment><comment><USER18> I like it! It seems similar to an idea pitched on Shark Tank recently.

I wanted to mention a hiccup in the sign up experience. After signing up, I received an SMS which said to reply "Y" to receive messages from Pigeon. Upon replying "Y", in addition to the 2-part welcome message, I received a 2-part message saying that Pigeon couldn't recognize the receiver for a picture.

</comment><comment><USER19> So I got to the page, and read the overall blog title, and thought the article was going to go a different way.

Was pleased that it turned out so well, sounds like a great idea -- I know there are companies (for example the one that recently was on the shark tank tv show) that are looking in this space, and I think the process that you've just pointed out is way easier than what they offer

</comment><comment><USER20> I think this is how it should be done. Get something super rough and functional to market as soon as possible. I've been taking the same approach to micro-portal sites I've been building and launching the last month. In my first month from 2 sites I made $125 from Google Ad revenue. Essentially I build aggregation sites that rewrite the content based on multiple sources, sometimes even improving the original source by using multiple angels for the same content. The result is 2 highly ranking Wordpress sites that get first page priority for some big keywords.

It might not be the most logical for an app you have to build, but I think getting something out super unpolished that works is a great way to get to market early. People think you need massive teams, business plans and a strategy, but all you need to do is release something. I made the same mistake on a project I've been building for 7 years and counting, I'm not sure I'll even ever release it.

<comment><USER11> I think there's a huge difference between creating a content farm and a real product.

<comment><USER20> Maybe so, but the result is the same. What I launched went beyond a standard content farm though. I didn't use free or purchased themes, I used a self- created Wordpress theme framework I created a little while ago as the base of the sites but each design was built from scratch in Photoshop. The content aggregation and rewriting plugin that I wrote isn't something you can find anywhere, especially not to the point articles are rewritten from multiple sources in a way that works.

I was merely trying to make a point of developers needing to get stuff out as quick as possible. Maybe what I did was different to an app (and rightly so) but the fact I executed on an idea from start to finish and didn't get caught up on the little things or having a perfect end result is something I think every developer can take from and apply to anything they do.

</comment></comment></comment><comment><USER21> Semi-related, but if you want to print a lot of pics, it's probably just worth it to buy a printer. I just bought this one: [http://www.amazon.com/Canon- PRO-100-Professional-Inkjet-Prin...](http://www.amazon.com/Canon- PRO-100-Professional-Inkjet-Printer/dp/B0095F5BCS) and I'm pretty happy with it. It supports Apple's AirPrint so you can print from iPhone/iPad on your local LAN/WiFi. Good quality prints and a bunch of rebates on this one if you dig around.

<comment><USER10> You're suggesting he buy a printer and print the photos, then address and stuff envelopes himself instead of using the service he found (lob.com)? I can't see that being cost- or time-effective.

Unless I have a high-volume business need for a printer I will never own one again. They are space hogs and money pits. Ink/toner is outrageous, buying paper in small quantities is expensive, and the consumer grade printers are slow and flimsy. The few times a year I actually need to print something I just go to kinkos or break the rules and print it at work. Maybe I'll look at using lob.com or a service like it though.

<comment><USER21> How about you just press a button on your phone and 30 seconds later hand a photo to somebody? There's immediate value in that for me, and I personally would rather do that than use a service (which I did do for years with the online vendors, and I had a crappy experience with all of them).

Plus I can tweak the print in Photoshop before and print direct from there. Each has it's place.

</comment></comment></comment><comment><USER22> You may be able to spread more virally if people don't enter the recipients details into your app, and it may make it easier on everybody.

This is definitely a "maybe", you'll have to do the research.

If you just have the recipients phone number and the photo, you can send a photo MMS to the recipient saying "x bought a printed version of this photo with PigeonPic. We need your address to send this photo".

Just an idea, you'll need to work on it, but I know, I don't have people's mailing addresses.

</comment><comment><USER23> The image on the homepage makes me think this family is running for their lives from a horde of zombies, but seem fairly happy about it. Gotta love stock photography.

<comment><USER23> [http://www.pigeonpic.com/](http://www.pigeonpic.com/)

</comment></comment><comment><USER24> Wow, this is a pretty sweet idea. Nice execution! I could certainly see using this.

I keep hoping I'll have an idea like yours that just pops into my head and I run with it.

</comment><comment><USER25> This is something I could see using from time to time with friends as a sort of fun lark or joke.

So you may not want to rule out younger users from your market. Imagine it, for example, being marketed to heavy instagram users. The branding is all different, but given that you already have the core product, it would be trivial to buy a second domain and create a new skin of the site for this audience.

</comment><comment><USER26> Deja Vu for me. I built and shipped a really similar app in 2 weeks last Dec (aim was 1 week but took 2 weeks eventually). [https://itunes.apple.com/us/app/wish-gift-never-forget- speci...](https://itunes.apple.com/us/app/wish-gift-never-forget- special/id586470540?mt=8)

</comment><comment><USER27> Good Job! Execution is everything, and shipping a Product in 2 Weeks is AWESOME! It sounds like you are on the right path, executing fast and getting traction. Keep it up! Make sure to check back in with the customers and use their feedback (I think you know that already after reading your Blog)

</comment><comment><USER28> Immediately thought of @stammy and [https://www.picplum.com/](https://www.picplum.com/). Kind of like an app version. Good luck!

</comment><comment><USER29> Small idea == (small risks, small returns)

Big idea == (big risks, big returns)

most of the time.

</comment><comment><USER30> Wow, that actually sounds like a fantastic idea. I can see this being very useful, especially if you add the ability to pre-purchase prints in discounted packages.

</comment><comment><USER31> How you make money if the print service costs $1.46 per photo and you still have the PayPal fee!? Do you have a better deal with Lob?

<comment><USER32> I see $1.21 on Lob's website, but it still makes for a thin margin.

</comment></comment><comment><USER33> I don't get it - how is just the name of the recipient enough to mail them a picture? Where are you getting the addresses from?

<comment><USER34> You create contacts in the app. Each contact has an address associated with it.

</comment></comment><comment><USER35> Just piling on the congrats although I'm sure passionately working on something for 2 weeks straight is reward in of itself.

</comment><comment><USER36> Working for a startup is the best experience you can get in order to find out how to execute your own ideas.

</comment><comment><USER37> It's interesting... the design of the site is very 2004ish, but it is surprisingly refreshing. Anyone?

</comment><comment><USER38> A lean startup. I am not sure how profitable it could get but you still put together a nice product.

</comment><comment><USER39> Congrats. I like this a lot.

</comment><comment><USER40> Love the simplicity of the instructions and minimal amount of links on page.

</comment><comment><USER41> that logo is excellent. (pigeon carrying a polaroid)

<comment><USER17> Thanks

</comment></comment><comment><USER42> Cool idea. Is mobile app in the works?</comment>


Ask HN: What is your current main OS? - <AUTHOR> What is you current operating system? Why did you decide for certain OS? Did you perform any customization? What are you concerns for OS selection process (performance, security, customization, etc.)? <comment><USER2> Antergos. I picked Antergos because I wanted strong access to the Arch resources like the Wiki and AUR. But at the time I didn't have enough time in the day to set up vanilla Arch. I'd thought that my experience running Gentoo a few years back would ha e helped me with that, but it didn't help me with getting Arch set up tbh. Antergos was a good compromise because I had previously used Manjaro, and found it just a little too far from vanilla Arch at times. As far as customisation goes, I first switched it to i3wm which was a solid experience, but then moved to xmonad. Beyond that I guess just the normal stuff like installing lots of applications and getting a nice Emacs environment set up by hand.

As far as concerns go. My main concern is that the OS hide as little as possible while also not making me deal with super low-level stuff unless I really want to. So Arch is perfect for that. I want to be able to build things up just the way I want them, and create my own personal cohesive system. So again, Arch is a perfect choice there. After that it's the level of community support for Arch that has made me finally give in and love it, despite the fact that I resisted for so long.

<comment><USER3> Glorious is the day when the top answer to such a thread is Antergos.

Fellow Antergosian

</comment></comment><comment><USER4> Windows 10, for lack of a better alternative.

I chose it because it is the OS that works most like what I actually want an OS to work like, which still isn't really that close.

I use O&O ShutUp10 to remove it's stupidest features, and make heavy use of portable apps. The portable apps are launched from a toolbar menu that acts as a menuized view of a folder, like the old fashioned start menu. It works great and if my system ever needs to be reinstalled I just recreate the toolbar and point it at the portable apps dir and I've got all my applications without any of this "installation" bullshit.

My main concerns for a desktop OS are that it enables me, as a user, to use it as a tool to improve my life. Too many OSs these days are more concerned with making things "easy" for me by hiding my ability to configure things, forcing decisions on me "for my own good", and effectively locking me into walled gardens to get applications. Not to mention trying to sell me things. My computer is a tool and it should allow me to conform it to my workflow, not try and force whatever it thinks the ideal workflow is on me.

It's also nice if I can actually use the hardware I paid for.

Sadly, Windows 10 is the best the modern world can offer.

</comment><comment><USER5> OpenSUSE Linux Tumbleweed with KDE Plasma desktop. Mainly because it has regularly updated software and it is very stable despite of this. And even if something would break I could just boot from a working snapshot automatically made just before the update. KDE Plasma desktop because I can customize it quite heavily to fit my workflow the best and no other desktop allows me this. And it also looks best to me. I also care about security and privacy quite a bit, and I trust GNU/Linux the most when it comes to this. It is also the most perfect OS when it comes to software development. Well Gentoo was even nice than OpenSUSE, but unfortunately I do not have the time anymore to compile everything and packages come in handy. Another thing I care a lot besides privacy is openness and user freedom so closed/totalitarian OSes like Windows and MacOS are out of the question for me.

</comment><comment><USER6> Extremely happy with arch linux (antergos os, for convinience.of having an easy time.setting.up) with awesomeWM (big gnome fan but dont want to wait 10 secs until it is fully usable when running on mid/high end hardware, especially in times where booting takes.less then 15 secs - now I can be productive within 30 seconds from cold boot

</comment><comment><USER7> For work, macOS High Sierra [I only upgraded when there's something I need]. Ubuntu 18.04 on most servers.

At home, Ubuntu 18.04 with LXDE. It's the most nonsense free regular desktop experience with obvious similarity with the server OS I primarily use.

I regularly try out other user-friendly desktop Linux distros and have my sister using Mint/Cinnamon without issue.

</comment><comment><USER8> ChromeOS with Debian stretch in chroot on laptop - Macbook Pro and old Lenovo. Debian stretch on servers or raspberry.

</comment><comment><USER9> ubuntu for desktop, mac os for notebook

</comment><comment><USER10> Debian stable

</comment><comment><USER11> Arch Linux

</comment><comment><USER12> Fedora 29</comment>


OpenCyc 4.0 is out - <AUTHOR> http://blog.markwatson.com/2012/07/nice-opencyc-version-40-has-been.html <comment><USER2> Looking into Cyc I infer the following...

Q: So what is Cyc used for? A: You could use it for games Q: Has it been used for a game? A: No

</comment><comment><USER3> I looked at OpenCyc previously while investigating semantic networks, but not long enough to figure out how to do things with it. I'd be interested in hearing about what any of you have used it for. A map of English knowledge and relations between concepts ought to be pretty useful for some things.

<comment><USER4> I just tried to see if there was something I could do easily with it that would be cool to learn about. Still have not successfully started up the engine without closing all other processes to free up memory.

<comment><USER5> I was running it on a 4GB MacBook Air and I shut down other memory hogging programs like IntelliJ - then everything worked fine. I recently rented a 32 GB server for running a large RDF data store, and that is where I am trying to relearn OpenCyc (I spent a lot of time with version 1, but became interested in other things - I am going to give version 4 another chance).

I wrote that blog article. I would appreciate any feedback on the utility of loading the RDF data into an OWL supporting RDF data store (I have an Enterprise Stardog license, which is what I would use) or use OpenCyc as a service.

Years ago, the OpenCyc usenet groups were useful so I need to check there.

</comment></comment></comment><comment><USER6> Is there any public demo using OpenCyc that does something resembling anything?

</comment><comment><USER7> Link to the primary source: <http://www.opencyc.org/>

</comment><comment><USER8> my hunch is that Cyc still has about 20% coverage for the probability density of meaning in text... just not quite enough.

Just increasing the size by 5x won't do because it's a problem like modelling human hair, at some point the snags, knots and frizz will just drive you insane.

<comment><USER5> That was my blog article. We are getting better tools for knowledge management such as RDFS/OWL, lots of linked data sources, perhaps (Open)Cyc, and companies like Google demonstrating great things that can be done with statistical NLP to solve tough problems like machine translation.

All that said, I think we have a long ways to go before we can build 'real' AI real world knowledge based systems that understand natural language text.

</comment></comment><comment><USER9> I remember reading about Cyc when I was a kid, thinking it was pretty cool. I remember reading breathless articles with emotional quotes from the system where it asked existential questions like "am I alive?". I grew up with Sci- Fi, Video Games and Anime where the protagonist had an AI that did all sort of wonderful things for them. I'm by default a _fan_ of the Cyc project and cheer a little whenever I see anything about Cyc.

So this is not meant to take anything away from the folks who work on (Open)Cyc, but I think it's time to ask some hard questions about this kind of AI approach:

Cyc (open or otherwise) is about 30 years old and has yet to demonstrate any sort of serious advancement over other, much lower friction approaches (actually it's hard to find utility at all). My personal feeling is that it represents a failed approach. This is not the same as a failure, it was a very important experiment that tried to answer the question (paraphrasing the WP article), "is it possible to craft an AI that can perform human-like reasoning using an ontology of common sense knowledge?" I think after 30 years the result has been an interesting curiosity, but the answer is a pretty strong "no".

There are more important questions though. Let's say that OpenCyc represents 30% of the state goal -- and since the goal from the WP page is a bit nebulous let's refine it and say 30% to the reasoning capacity of a 6-8 year old human child (6-8YOHC). And let's say that miracle upon miracles, Cyc is able to move closer to that goal at a steady 1% per year...and after 70 more years Cyc is now as smart as a 6-8YOHC. Is this desirable? I mean, is this a good thing to have? I don't mean this question to come from a source of deep philosophy or moralistic questions...but have you ever tried to get a 6-8YOHC to do any task more complex then follow a few simple instructions with lots of supervision (even getting personality and desires of the child out of the way)? A digital 6-8YOHC measured just on intelligence _might_ , just _might_ , be smart enough to follow a simple question like "find me news articles about the Libor scandal". But is that worthwhile? Is 100 years of R&D to achieve this useful?

The approach in the past was to not tackle the general purpose problems the Cyc was always meant to but to focus the approach on specific problem sets and build "expert systems". This is apparently what the (limited) list of use- cases Cyc is being applied towards is. This again means that Cyc has failed. "Common sense" knowledge means "general purpose" a 6-8YOHC knows as much about terrorism or biomedicine as it does about car engines...in other words it should perform equally well on any of those things because none of those things are "common sense". "It's hot outside so I shouldn't wear a winter coat" is a common sense thing.

So what are we left with? We're back to ontologies and various flavors of knowledge management and reasoning systems, all of which in my experience are faddish cover terms for the kind of AI research which just didn't go anywhere and haven't demonstrated much more than adding an interesting aside to what were already pretty darn good search results in my favorite search engine when I go to hunt down showtimes for a movie I want to see.

The number of dead, dying and useless Semantic Graph projects that are out in the world are astonishing. The lack of any real useful tools built with them is even more astonishing. And I don't mean tools that let you inspect the Knowledge Base (very exciting stuff like e.g. "is President Obama in the Knowledge Base? What is he connected to?") which I guess are useful sort of search engines in some contexts where the information is impossibly well curated (e.g. wikipedia). But I mean things like automated teachers, digital accurate diagnosticians, AIs that write good Pop Songs and hold interviews with the entertainment press, _anything_ that _might_ represent intelligence. It seems like whenever some of the pieces of these things show up (WP, Khan Academy, etc.) they are eschewing the direction that Semantic Research is taking us and going with a lower friction, higher payoff route. Why isn't there an AI that can suck in WP and Project Gutenberg and then generate and give me Khan academy lessons for K-12? Or at the very least provide NPCs in a game that are capable of having at least a 6-8YOHC level of conversation.

The answer has always been "wait till we add more objects/entities/facts/assertions/things/stuff/etc.". This is a bad answer, and unfortunately is the one that challengers to this approach get served back to them. Feeding "stuff" into a model and waiting for the spark of life to kick in just doesn't seem to be cutting it. There are ontologies with literally _billions_ of things in them that are nothing more than strangely structured databases with odd query interfaces.

I'm a fan of Cyc, and it feels like it _makes sense_ , and I'd love to be proven wrong, but I'm forced to lump it and similar approaches into yet another dustbin of evolutionary dead ends along with atomic powered cars and dinosaurs. I'm afraid Cory Doctorow was right <http://www.well.com/~doctorow/metacrap.htm>

I'd love to know for example that Cyc, as the most mature common sense reasoning system was the "go to" when Google started building the voice search in Jelly Bean and the Google Semantic Search and every few months we'll just be blown away by what's happening when we turn over a 30% 6-8YOHC on nearly every bit of human knowledge ever collected and it'll start doing really really useful amazing stuff for us instead of saving me a few smudges on my screen when I want to set an appointment or look up how tall Brad Pitt is.

I hate to turn this into a vent, but I just feel so... _crestfallen_...at the seemingly limitless lack of serious progress in the entire field (not just Cyc) despite what are probably millions of man years put into it.

The final hard question then is...is this kind of approach the right one?

<comment><USER5> +1 a very good vent, and anyone who has had a long term involvement with AI can agree with parts of or most of.

Do you really think that we should give up after 50 years of little success in the really difficult AI problems? I think we should keep trying. Failures are OK if they are affordable and we can learn from them.

<comment><USER9> To be honest, I don't know. Six months ago I was ready to write off the whole endeavor, then I see things like this [https://plus.google.com/100130762972482716067/posts/BN5qjTEN...](https://plus.google.com/100130762972482716067/posts/BN5qjTEN62r)

and feel like mankind _just_ took a little baby step in the right direction.

I don't think a 6-8 year old human child (6-8YOHC)is the right goal. Or a Star Trek like computer is either, talking to computers gets boring (talking to 6-8 year olds gets boring too!). It's the AI equivalent of the Gorilla Arm in interface design (perhaps "Gorilla Mind" is a good term?) and like I said, is achieving this really _useful_? Even if achieving the near term goal isn't useful, does it lead into a next goal that's useful?

I think the right goal is to brain storm ideas, "what would we like a computer to do for me?" then start inching towards those.

As an off-the-cuff example, build an AI scaffold of some sort, point it at Wikipedia and Project Gutenberg and have it generate a Khan Academy style educational program for K-12. Get it to start teaching, then use the feedback from the teaching to better model how humans think and learn.

There, that's my contribution to the world of AI. A quick brainstorm with something that could be useful for people. I would find it hard to believe that after half a century, researchers in the field haven't come up with similar kinds of exercises. But I keep seeing more myopic answers.

Getting an AI to tell me a famous movie star's shoe size is not interesting because it really only saves me time, but doesn't do something new for me. Likewise expert systems for diagnostics, any experienced human with a reference can do this job! AI seems too focused on replacing the "human who can do this job with a reference" (RAHWCDTJWAR) and not enough on augmenting what humans can already do to make them better, or doing complex tasks like instructing a class. The problem is not that we're emotionally driven to keep the "human with a reference" in the equation, but that over time, that human has proven to provide better results!

Any brainstorming ideas that fit this mold _should_ be rejected as vectors for the field. If it even smells like a project is turning into a RAHWCDTJWAR run!

Similarly the 6-8YOHC is the wrong direction. Let's be honest, 6-8YOHC aren't very useful or knowledgeable. Let's stop trying to make AIs that are do- nothing ignoramuses. I don't need an AI that knows that when it's hot out I shouldn't wear a winter coat. I _already_ know this.

Like I said at the beginning, I think Cyc and similar approaches have been _valuable_ as a line of research and inquiry, but have ultimately provided so much failure and so little progress, it's obvious that it's not the right way to go. Knowing this is so very important. But I keep feeling like this message isn't getting across and this basic approach to AI has long _long_ overstayed its welcome.

<comment><USER10> I understand where you're coming from. In my college days I bought all those thick academic books on "machine learning" when the term meant Lenat more than it meant statistics.

That route does seem to have failed us. Or at least not have gone much of anywhere in the years since. At the same time, I'm not sure the Google-y approach to machine learning has made real progress in the last 10 years.

Sure, we've got cars that may or may not be able to handle actual road conditions, but search, and more importantly any sign whatsoever of computers knowing what we want to do has stalled out for quite some time now.

I dunno. There's got to be another approach that yields more progress than either of the semantic or statistical paths.

<comment><USER9> _That route does seem to have failed us. Or at least not have gone much of anywhere in the years since._

I'd like to reference the recent Higgs result as a compare contrast example from a different field.

The search for the Higgs is slightly younger than the search for AI - but of about the same age so it's worth comparing. It took a _very_ long time to yield basic results -- namely "does it exist?" The search for the Higgs was pure Research. The day after the Higgs discovery nothing changed in the world except that we now know it exists. Given 20-30 more years of R&D we _might_ get a hoverboard, or faster blenders or something, and the total time investment will have been about 70 years from "notion on a chalk board" to "hoverboard".

AI researchers might use the Higgs as an example to not poo poo their field since they are still in that long _long_ time between theoretical proposal and working discovery. Detractors might say "but all you propose is just shoving more factoids into your AI model hoping it springs to life"! The analogy with the Higgs is that researchers were for a long time simply proposing to build bigger and bigger accelerators until the Higgs fell out.

I'm not a physicist but I'm hoping that there was a stronger theoretical framework surrounding the Higgs then "let's keep crashing stuff into each other harder and harder till what we want comes out of it". Likewise, I'm not a Cyc-style semantic AI researcher (or an AI researcher of any particular type), but I'm hoping that the field has more going for it than "let's keeping tossing factoids into our Semantic Graph until it springs to life".

I'm willing to think that a 70 year R&D time is worth it if we end up with commercially ready 1.0 equivalent Minds at the end <http://en.wikipedia.org/wiki/Mind_(The_Culture)>.

But at this point I don't think we're any closer to this then we were 20 or 30 years ago. It's a perpetual Research horizon at this point. To put it back into perspective with the Higgs, 15 years ago they were starting construction on the LHC.

AI researchers will lament the lack of funding in their field, etc. But I have yet to hear a compelling research direction the field would go if it were suddenly gifted the cost of an LHC or two to advance the field.</comment></comment></comment></comment></comment>


Killing Hollywood Will Require Learning Hollywood's Game - <AUTHOR> http://pandodaily.com/2012/01/20/killing-hollywood-will-require-learning-hollywoods-game/ <comment><USER2> Here is the recipe for killing Hollywood:

1\. The Hollywood Business Model

The Hollywood business model is based on 2 things:

1\. Control of distribution

2\. Financing of production

The Internet has solved #1. Any content can be distributed to any one in the world for an effective cost of $0.

The reason they are not dead yet is because no one has solved #2. They still control production of most content.

2\. It's like Kickstarter, but for movies

So, the solution is to attack film financing. Make it diffuse, and distributed. Create a platform for film makers to seek financing in small amounts from normal people. You could call it "slushpile.com" or something line that. A film maker posts a 60 second trailer and a budget. People invest small amounts in the film. When the budget is reached the film maker gets the money, and he makes the film.

You then distribute the film through the site, for a fee. Split the revenues 70 / 20 / 10. The film makers get 70%, the "producers" (the funders) get 20%, and the site gets 10%.

3\. A key first customer.

The obvious best choice is Kevin Smith. He understands the Internet, he makes entertaining films with small budgets, and he has an avid cult following. He's like the Ron Paul of film makers.

Its a schlep. You have to seduce movie stars. But, pulling it off would kill Hollywood, overnight.

<comment><USER3> Taking your argument as a premise, for cinema 2) is well in progress. Canon EOS SLR's, stuff to hang them on, and digital editing are knocking down a big part of equipment costs. (You still have lights and all that, but there are ways to keep that manageable.)

You're left with wages, permits, and stuff I won't try to guess (e.g. catering, etc., etc.).

High level professional abilities will continue to be a minority of interested parties. But, with cost of entry so lowered, the population to draw from will be much larger. And with the lower barrier to entry, people old and particularly young will be able to practice these skills and have the motivation of a distribution channel to fuel them on, without fight for a place and clamor to buy into such an entrenched regime.

Another big, undersung aspect of such a transition is to get the writers, and the artisans, to work for the new model. Really good writing does not come easy. But there is still plenty of talent, and compensation under the new model(s) should not have too much difficulty being competitive for these jobs (maybe I'm wrong, but based one what I hear/read).

Oh, the other 800 lb gorilla: Unions. Movie and TV production is very heavily unionized. If they want to strongarm their members and potential members from participating, this could present a significant problem. A question might be whether beginners/outsiders can build enough momentum if there is little or no support from seasoned professionals.

This is all off the top of my head. I may be wrong.

<comment><USER4> Go to film festivals; Sundance, Cannes, Venice, etc talk to young directors/producers making shorts. They know lots about how to run a production.

Hollywood is insanely inefficient. For $2m a shot you could throw away 49 out of every 50 films your young directors make for the price of a $100m Hollywood blockbuster.

Inflexible unions? -> Don't make movies in the US.

</comment></comment></comment><comment><USER5> I still don't understand why anyone would want to kill Hollywood. The American politicians allowed themselves to be bought. When Hollywood is dead someone else will take their place. If anything should die is Washington's corrupt political system. Hollywood (or anyone else with deep pockets) goes as far as Washington lets it.

Nowadays, the golden rule is, "He who has the gold makes the rules." Kill that instead.

<comment><USER6> You're absolutely correct. Wall Street makes Hollywood look like complete pikers in this respect.

</comment></comment><comment><USER7> Movie studios' sole focus is money. Money allows them to hire movie stars, to use the best equipment, to buy ad space and to rent movie theatres. In short, money (and how much they are prepared to spend) is what separates anyone with a video camera and an idea, and the major movie studios.

Indie filmmakers cannot compete on a level monetary footing. So they must disrupt and stay lean, not only in production but ALSO in marketing and distribution. This is where I believe a lot of indie film makers need to focus on: disruptive distribution.

As an example, I directed a movie and treated it as a lean startup from pre production. We are looking to disrupt traditional movie distribution by offering individuals and businesses something tangible and of intrinsic value when they buy our movie: to feature them on a billboard on Times Square. Check out the movie and strategy at: <http://bit.ly/n4XQG0>

</comment><comment><USER8> The core of big movie revenues is the hype, it's marketing that gets millions of people in theaters on the first weeks.

What if Youtube, Netflix, Apple and similar distributors try to provide the same film worldwide on the same day, with a lot of marketing before the event. When they all fund a part of an big budget Christopher Nolan movie, they all get their direct share and a lot of new registered customers.

<comment><USER9> Distribution is probably the easier part of the problem once you have a quality movie that was funded. Y Combinator could just partner with Youtube and release it worldwide. The hard part is funding the right movies and with as much as they need initially.

<comment><USER8> So let's bring it down: "We need high quality content".

We need content good enough to replace Hollywood.

It is the biggest Entertainment brand in the world, not an easy task.

<comment><USER10> Have you watched The Guild? Some of the best content I have seen in a long time. I think this is just getting started.

This reminds me of how people used to criticize digital cameras when they first came out. A decade later and film cameras are dead.

</comment></comment></comment></comment><comment><USER11> > But Hollywood shouldn't care (if the MPAA had a clue) because it offers > something YouTube can't: An experience that you will get in a car, drive to, > and pay $12 for.

The article lost me right here. Every year this is less and less true for people in my generation. It doesn't take long for even the blockbusters to show up for rental.

I'm not even sure what the article is trying to say. What is 'good'?

<comment><USER12> Given how inexpensive reasonably-good home theaters have become, how expensive theaters have become, and how one has no control over the theater experience (bad projection, too loud, talking, etc), this is only going to happen more.

I think Hollywood is doomed, even with draconian laws on their side. Good content has been made online, and it's just getting started. I agree with the GP that simplifying and democratizing the funding would help, but so will new film makers realizing good is absolutely not synonymous with expensive (and is often contradictory).

<comment><USER13> I'm totally in this camp - I prefer to watch something on my home theater system. More comfy seats, fills more of my field of vision, better schedule, better treats, watch in my jammies...

But my wife likes to go out to the movies. So we go out.

I expect that other forms of entertainment and other ways of producing content will coexist with the "legacy" model for some time.

</comment></comment></comment><comment><USER14> > _For the Valley to do that, it's going to have to get out of the mindset > that eyeballs equal quality._

It's not about quality. It is about building a monster revenue (and profit!) stream.

To quote from the dead trees: "No one in this world, so far as I know_and I have searched the records for years, and employed agents to help me_has ever lost money by underestimating the intelligence of the great masses of the plain people." HL Mencken

To quote from Hollywood itself: "Show me the money!"

</comment><comment><USER15> At least when I watch a movie in the cinema, I don't have 'contextual' ads popping up on the screen. Do we really want a 'YouTube future'?</comment>


This Is How Google Will Collapse - <AUTHOR> https://hackernoon.com/how-google-collapsed-b6ffa82198ee <comment><USER2> The article reads like it was written several years ago, despite the "October 14th 2019" date. It turns out it previously had a "Apr 24, 2017" date: [https://web.archive.org/web/20190418231249/https://medium.co...](https://web.archive.org/web/20190418231249/https://medium.com/forwardtick/how- google-collapsed-b6ffa82198ee)

(Disclosure: I work for Google, speaking only for myself)

<comment><USER3> It seems to have been updated, it has explicit references to events in 2019.

<comment><USER2> You're right, it's from a mix of time periods.

What stuck out to me and got me looking for timing information, though, was that it doesn't feel well integrated. There are ways to update old articles so that they are fully current, but this one is mostly taking an old article and adding more examples without thinking about how this affects the overall argument.

</comment></comment></comment><comment><USER4> I think this article underestimates how diversified Google has become.

Dismissing YouTube as unprofitable seems laughable, big media companies are probably kicking themselves for not trying a similar concept earlier. That's the kind of business where an eventual single digit profit margin will make you tremendously wealthy.

Google Maps is another example of an ad driver that's not easily replaced by a competitor. Only giants like Apple and Microsoft can compete on that product.

G Suite has made major inroads in the lucrative enterprise productivity space.

Google is also slowly building a devices business, and all you have to do is take a peek at Apple to know how successful that can be.

Google has the #1 web browser with growing market share to alarming Internet Explorer levels with its search engine and tools set as the defaults. Comparisons to Microsoft's fall from grace assume history will be repeated, but unlike IE6, nobody's making a faster/noticeably better to the end user browser than Chrome.

As far as the search ads itself, I don't know that the article makes a compelling case that users simply don't use search engines or the general Internet anymore. The current trend of ad blocking is that they are getting less and less effective. I'm sure Amazon and Facebook have taken a slice of that advertising pie but it seems unrealistic to expect them to take the whole thing.

Not only that but Google's ad platform allows website owners to place ads directly on sites, so an external link on Facebook can take a user right back into Google's revenue space.

<comment><USER5> I don't think that we read the same article. In particular, if over 85% of Google's revenue is from ads, then there's no way that the rest of the business can carry Google, nor that any particular single department could survive on its own. Youtube has never been profitable, and their acquisition by Google is likely what saved them from running out of cash.

If there comes a day beyond online advertising as we know it, then Google will collapse; Google cannot compete effectively outside the Web.

You are almost right, but didn't look high enough. Alphabet, the big holding company at the top, can survive Google's collapse, and Alphabet is diversified.

<comment><USER4> I guess I didn't really address the advertising very well.

I would suspect the advertising _itself_ has been diversified as well, but I can't say I can prove it.

That's why I think any sort of "collapse" would be so slow that it could be mitigated by other growing segments.

</comment></comment></comment><comment><USER6> I'm not sure anyone has really stopped clicking "I Agree" as he author claims. Seems more wishful thinking than reality.

</comment><comment><USER7> A company like google should be publicly owned. What they provide as a service shouldn't have to make a profit.

</comment><comment><USER8> There have been numerous posts on HN showing why Google will collapse: information search on Google just isn't very good any more--results for information search (not talking about product search) are dominated by shopping results, blogspam, membership required/pay sites...

Someone will build a better mousetrap.</comment>