When does React re-render? Explaining rerenders and how to optimize performance - <AUTHOR> https://felixgerschau.com/react-rerender-components <comment><USER2> "React is known for providing a fast user experience by only updating the parts of the UI that have changed."

This is wrong. Naive React code is rarely fast in relative terms. This is because the whole design of React is _not_ based on updating on the parts of the UI that have changed, but on re-rendering _everything_.

The whole concept of React, if you go back to the original "rethinking best practices" intro, was that Facebook wanted to bring the server-side practice of re-rendering the whole page for any change onto the client. This had the obvious advantage that, combined with normalised state flowing downward through the component tree, you would never end up with stale bits of UI, as everything would all always be kept up to date.

However, tearing down and re-creating the whole DOM for every single render was prohibitively expensive, so the virtual DOM was born. But, and this seems to get lost in a lot of discussions of React, VDOM wasn't some magical leap forward in UI rendering performance. It was a performance technique to make React's paradigm possible. Possible, but not inherently fast, because there is still a cost to re-rendering every component for every event. Any React developer who's had to add React.memo to half their components, and add visualisation to lists of just a few hundred items should know this.

Having written several substantial apps with both React and some of its competitor frameworks, I'm always amazed to see React-only developers continue to labor under the delusion than it is the fastest framework out there. It is not. Its paradigm is a beautiful one to develop with in most ways, but there is a significant price to pay in terms of performance.

<comment><USER3> I agree with most of what you say, but your conclusion:

> Its paradigm is a beautiful one to develop with in most ways, but there is a > significant price to pay in terms of performance.

I've worked with React on-and-off since around 2013. I can count on one hand the number of times that out-of-the-box idiomatic React code has incurred a _significant price_ in terms of performance. The majority of my React apps just work, they just render fast enough by default. One time I've had to optimize it was when I had a React app that displayed a page of items from the database without any pagination: once it got to a few hundred items, it would indeed render very slowly. My optimization here was actually _not_ to start memoizing or implement componentShouldUpdate -- it was to implement pagination and search in the app, because the UX was more important than rendering speed, and solving the UX solved the render speed.

I don't understand what kind of apps people are building with React that incur these significant rendering performance costs? I could understand it if you're building a realtime cryptocurrency exchange dashboard but I don't think most people are doing that?

<comment><USER4> IMO pagination is garbage UX, any sane GUI tookit can render more then 100 items on screen. Imagine you text editor or spreeadsheet viewer would have a limit of 100 rows. Sane GUIs don't create all this rows widgets from the start but use smarter techniques. From what I seen this technique is called now "windowing" but I knew it before by the name of "render item recycling"

<comment><USER5> > any sane GUI tookit can render more then 100 items on screen

Sure, but it's uncommon that I _want_ more than 100 items on a screen in a webapp. Infinite scroll is not an antipattern, but it is something that people should be a little bit cautious of.

Users like context and clear anchors -- I like to be able to hit a back/forward button and know where I'll end up. I also like pages to load quickly and not make a ton of background requests on mobile connections, so if I can have an initial page load under a few megabytes at max, and can wait for the user to request data before loading it -- that's sometimes an attractive proposition.

Multiple search engines used to experiment with infinite scrolling and virtual rows, and as far as I know, most of the big ones went back to pagination, and I think it's because sometimes pagination is genuinely better UX, particularly when you're scrolling through a long list of blog posts or search results. Of course you _can_ put thousands of elements in the DOM, and you can implement virtual scrolling if you need tens of thousands or millions. But the DOM tree is ultimately meant to be a human-traversable interface, and a <ul> element with several thousand <li>s beneath it is arguably not very traversable.

There are no hard rules here and there are a lot of caveats to what I'm about to say -- but I now bias towards avoiding DOM trees that are so big that I couldn't stick the current tree in a text editor and mostly consume its content textually, and that includes on dynamic web apps. The current state I'm displaying to the user should be small enough that the user can wrap their head around it.

The fact that React is so slow that you basically _need_ to at least occasionally think about how you're rendering state is a separate conversation.

<comment><USER6> > it's uncommon that I want more than 100 items

I believe the discussion is _GUI_ items, not what you might consider data items. Look at this current Hacker News page. Each comment, depending on how fine-grained you're counting, looks to have about 5-6 or more GUI components. In your browser viewport you may see a dozen comments. GUI components add up quickly. These are also only the components _in view_. React, however, is rendering the entire page. Easily hundreds of React components.

<comment><USER5> But depending on how they're styled and what animations you're using, React can easily handle rendering out 1000 DOM nodes.

To be clear, I don't want to act like it's not a real concern, I've been in situations where the number of DOM elements I was rendering out with React ended up being a performance concern. It's a real thing. Heck, I've been in situations where React's insistence on computing the virtual DOM was a performance problem. One of the downsides of component-based architecture is that it's very easy to get into situations where you're completely pointlessly duplicating effort parsing data multiple times and passing it around between components and mapping it to new lists of data. It's a major weakness for systems like React that encourage you to loosely couple all of your components, even components that are inherently very related to each other.

But I think people are underestimating what that component/DOM limit is, even for browsers like IE 11.

If you have 100 items on screen, and it's causing the browser to slow down, you'd better be doing something at least somewhat complicated with those elements. You'd better be sticking some SVG charts in there or something. Otherwise I'm going to (perhaps uncharitably) accuse you of overcomplicating your DOM and inserting a bunch of nodes that don't need to exist.

If someone wants to try and implement HN in React, they shouldn't be using 5-6 separate React components for a single comment, that's... I don't know how to parse that kind of architecture. I don't want to be dismissive about it, and different people have different approaches to programming -- but I feel pretty strongly that kind of granularity is over-engineering.

<comment><USER4> Not OC but from my experience because you have some nested DIVs and spans and some other node elements for each data item when you first load your data you get a big hang/freeze because the browsers are still slow at creating this elements, this is a browser issue I think, because most of the time you want to have a big list of similar items there should not be such a giant work of creating and computing similar DOM elements but I assume because of how complex css engine is you get this giant freeze.

<comment><USER5> Eh... you really _shouldn 't_ get a big hang/freeze if you're just talking about inserting 1000 nodes into the DOM. It's not going to be fast enough that you can do it at 60fps, but that's not the point of the DOM -- 60fps insertion is not something we care about.

I mean, yes, some of this is dependent on CSS. If you're doing complex rendering, or doing something strange with your fonts. I'm not going to make absolute claims about performance in every case, and different people have different interactions and requirements they're dealing with. There's caveats.

However, if someone comes to me and says, "I put 1000 DOM nodes into the browser and my page froze", I might not immediately make strong claims about the application, but I am going to immediately start looking around the codebase suspiciously to see if they're doing something strange or abnormal.

The current HN page you're on right now has ~2500 DOM nodes. Does it freeze for you when you load the page?

People complain a lot about DOM insertion, but while DOM insertion does sometimes cause problems, I've found it's more often that the problems happened before the insertion. At the point where DOM insertion actually becomes a problem, I suspect we're usually no longer talking about lists of 1000 simple table elements, or just putting 100 search results on a single page.

<comment><USER4> I am not sure what I did wrong, maybe if I had set some min/max height/width on soem elements it would have improved the performance, or maybe if i changed some flex-box property so regular layout or maybe if I changed some css rule on some parent somewhere it would have worked better.

I am sure I can make a list with just text and not css I can insert 1000 text nodes in it, the issue is if you have something mroe complex like a grid with thumbnails and titles, and a small description under, and some css effect for hover, and a few buttons when you hover over those items etc. In a sane GUI this 1000 widgets are not created at all, only the visible ones are created and when you scroll the data under the Widget is swapped, this is great because you don't have to focus on performance or use pagination and then pretend pagination is better UX.

Just to clarify I agree that there should not be many DOM nodes in a page, the browser or framework widget should be smart and transparently recycle the existing DOM elements, I imagine there would be some new List and Grid widgets that are more advanced but that could be used by everyone with his favorite framework.

<comment><USER5> > In a sane GUI this 1000 widgets are not created at all, only the visible > ones are created

As a side note, this gets a little bit at an issue I feel pretty passionate about, which is that HTML is not a language for laying out interfaces, it is a user-facing interface itself. HTML isn't for programmers, it's for users.

The sane GUI you're talking about is essentially virtual rows, they're just baked into many native toolkits. A native interface doesn't insert everything because it doesn't have to, its interface is purely visual. If there are accessibility controls, they happen through a separate interface. If there are keyboard controls, they're based on the widget, not based purely on the content.

This is not a universal opinion, you will find people who disagree with me on this. But I think the web is fundamentally different than that. The web at least attempts to force your text interface and visual interface to be the same.

I'm not sure if it was to you or someone else that I mentioned that many apps (even native ones) are really just interactive documents when you think about their data separate from their styling. In my mind, the innovation of the web is that it acknowledges that, and it forces your interface to be a pure XML- like tree. And then you can put some styling on top of that with CSS if you want to. There are a few exceptions to that, but for the most part, HTML doesn't really let you hide a ton of information.

So imagine if you were building an app in GTK, and GTK said, "okay, first give me a pure-text representation of your interface that I can pipe to a terminal. And then I will allow you to position boxes on the screen, but _only_ from the text that you told me I can pipe to the terminal."

That's a very different paradigm than how most other application frameworks work, and I think that the DOM's insistence of not having a lot of opaque data-bindings where possible makes a lot more sense when viewed through that lens. That lens also helps explain why some devs (myself included) got very annoyed about Google messing with that paradigm because they had their own 'cute' idea for web components.

The downside of this paradigm is that the tools you're talking about like data-bound lists aren't natively built into the DOM. You end up needing to use 3rd-party Javascript libraries for them. But for the most part, due to Javascript's popularity, those libraries are easy to find. Although due to Javascript's popularity, sometimes they are of dubious quality. :)

<comment><USER4> I understand, HTML is a document but it has this disadvantages and IMO if we want to use HTML everywhere we need some default Widgets for List and Table, don't change anything about current HTML but similar on how we have a Video or Canvas element we might want something for this uses cases and not force each developer re-invent the wheel. If is not built=int he browser I would like some sane JS implementation (framework independent and without any dependencies on 100 left-pads),

This thing where each developer re=invents same thing over and over and each implementation is broken in some way it bothers me, like the search input in Youtube has a dropdown with some suggestion, that dropdown popup can get stuck open until you reload the page, so even Google engineers are not capable of implementing a 100% working simple Widget.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER3> The React premature optimization train is leaving platform 1, all aboard for how to save 30 CPU cycles in your super complicated single page web app!

Memoizing a leaf component probably isn't worth doing unless it has some incredibly complex logic in it.

Just like memoizing a single reduce operation probably isn't worth it either.

The React community is the absolute worst offender for premature optimization.

Measure first, then optimize.

<comment><USER7> So true. This reminds me of one of my favorite tidbits from another vdom framework's documentation, in which using the equivalent of shouldComponentUpdate is generally considered to be an antipattern. Whereas in React, it seems idiomatic to just memoize and throw in shouldComponentUpdate wherever you can as much as you can.

[https://mithril.js.org/lifecycle-methods.html#avoid- prematur...](https://mithril.js.org/lifecycle-methods.html#avoid-premature- optimizations)

<comment><USER8> From the mithril docs you linked to:

"You should only use onbeforeupdate to skip diffing as a last resort. Avoid using it unless you have a noticeable performance issue."

From the React docs ([https://reactjs.org/docs/react- component.html#shouldcomponen...](https://reactjs.org/docs/react- component.html#shouldcomponentupdate)):

"Use shouldComponentUpdate() to let React know if a component's output is not affected by the current change in state or props. The default behavior is to re-render on every state change, and in the vast majority of cases you should rely on the default behavior. [...] This method only exists as a performance optimization."

Both framework developers are telling users the same thing.

<comment><USER7> That's a good point. There's something in the difference between the two communities then, where React's tends to be encouraging of memoized components and shouldComponentUpdate while mithril's tends to advise against those methods. The blog post behind this thread is a prime example.

<comment><USER9> > There's something in the difference between the two communities then, where > React's tends to be encouraging of memoized components and > shouldComponentUpdate

I haven't seen that.

> The blog post behind this thread is a prime example.

But it's...not at all an example of what you describe. The blog post explains how things work and how to optimize, it doesn't encourage optimizing without demonstrated need, and the "even better" optimization approach it suggests isn't using memoization or shouldComponentUpdate, but instead paying attention to the basic component structure.

</comment></comment></comment></comment></comment><comment><USER10> This is just crazy React devs have to think about this. No other framework makes you do this. Vue, Angular, Ember. The computer should be doing this for us. It knows the properties we define, where we access them. Let the computer do what it does best. It's generally not a huge issue with React DOM but in React Native the performance issues will the kill the app. Luckily we have Mobx which solves these issues.

<comment><USER11> You really don't have to think about it. This all falls into the category of performance hacking. React renders are cheap, DOM renders are expensive. Extraneous React renders are only a potential issue if you're doing something ugly in your components.

</comment></comment><comment><USER12> Question: Would vanilla js be faster than using react and when just using functions that handle hiding & showing divs by changing the css visibility value? I always assumed optimized react was somehow significantly reducing the browser rendering in the background but I'm unsure now when reading the comments.

<comment><USER13> > Would vanilla js be faster than using react and when just using functions > that handle hiding & showing divs by changing the css visibility value?

Yes.

> I always assumed optimized react was somehow significantly reducing the > browser rendering

Let's say you add a <div>. The least amount of rendering you can do, is the render associated with of that new <div>. If you code this manually, you can guarantee you only add the div, and not modify anything else. This is theoretically the best it can be, and so the best React can do as well, from the rendering standpoint.

From the work standpoint, React does many more things associated with stuff that make it work. From the vdom, to the scheduler— it's all overhead React pulls in so it can function. So in holistically in terms performance, adding that <div> yourself is always going to be faster than doing so through React— the less code to run the faster something is.

What React gives you is a framework to think about your application's architecture and execution. Adding a <div>, easy to do manually, no problem. Rendering a whole application, with thousands of possible states, moving parts, some data-fetching here, some animation there, all the while the user is clicking buttons in the middle of state updates— that's harder. At that point can you be sure you're hand-writing the optimal solution, taking into consideration not only _what_ you're rendering, but _when_ it's updating, _how_ the data is changing, and _where_ these mutations are taking place? That's what React gives you. And maybe it doesn't (always) do what's optimal for you, but it does at least provide order to all this complexity, so you can more easily figure it out.

</comment></comment><comment><USER14> An interesting video by the creator of MobX going into detail about React vs Mobx and specifically re-rendering, in a fascinating talk about "mutable observable state". Suggest anybody interested in the subject of "react re- rendering" to watch it: [https://www.youtube.com/watch?v=NBYbBbjZeX4](https://www.youtube.com/watch?v=NBYbBbjZeX4)

</comment><comment><USER15> > Rendering is a term that can be understood on different levels of > abstraction. Depending on the context, it has a slightly different meaning. > In any case, ultimately it describes the process of generating an image.

Could we clear up more the meaning of rendering and how it optimizes the performance mentioned in the article? Suppose the DOM has not changed, is the DOM repainted? How about in the case you type into a textbox which expands this container, causing adjacent elements to cascade into a new position?

Is this something similar to how mobile devices do not have to render content that is "not" displayed on the screen, as in the example of a large ListView so the mobile device does not have to immediate render any content that is expected to be off screen.

<comment><USER15> To be more specific, when ReactDOM.render() is called from a component -- is the argument that the entire screen does not have to be painted?

<comment><AUTHOR> By that I mean that there's a difference between calling React's render function and rendering something to the browser DOM (native renders).

React will try to reduce the number of renders to the real DOM as much as possible, so calling a component's render functions doesn't always imply a re- paint of the UI.

Expanding a text box wouldn't usually trigger a re-render because this is being handled by the browser and doesn't affect the state of the application (just like any CSS rules). Reordering elements on the other hand will trigger a re-render because the actual HTML element's position has to change.

So yes, the argument is that the entire screen doesn't have to be repainted. In the ideal case it only repaints the parts of the UI that need to change.

</comment></comment></comment><comment><USER16> > React is known for providing a fast user experience

No.</comment>


Mongo Aggregates and How to explain mongo aggregate queries - <AUTHOR> https://ranvir.xyz/blog/mongo-aggregates/ <comment><AUTHOR> Explaining your queries before deploying gives you a lot of advantage and help you provide better user experience by providing result faster. What process do you use so that your queries are well optimized?</comment>


Ask HN: Can any iOS Developers answer me this? - <AUTHOR>

As part of my iOS Development journey I want to create an app that will find users of the app within a specified radius of the current user. The best way I can describe this is like dating apps when you specify how far you want to search. How would I go about solving this - Has anyone got any great links or tutorials they could direct me to? Much appreciated. <comment><USER2> 1- geolocation must be enabled by the user.

2- you may forward the position of each users to a central server and perform the proximity matches there, and send back the list of close users. That means that IP connectivity is required (GSM or Wifi).

In any case, you get precise geolocation only when you have wifi networks visible, so you may as well require that the user enable wifi.

Once you have wifi enabled, it is possible to use it to scan close users directly, without using geolocation, by mere physical closeness.

You can also do that with bluetooth for closer distances.

So, how you would go about this would depend on what level of privacy and what kind of application you want to do that for.

<comment><AUTHOR> Thanks for the awesome reply. Gonna do some more googling now I know a little more what i'm looking for :)

</comment></comment><comment><USER3> Hi,

Here is a quick and easy way.Index all the user locations into a elastisearch instance and as soon as a user opens up the app , fire a near query on the elastisearch with users current location as input and get all the other users within a specified distance as json from the elasti instance.

This should help you [http://www.elasticsearch.org/guide/en/elasticsearch/referenc...](http://www.elasticsearch.org/guide/en/elasticsearch/referenc..).

The second option is to use mongodb for the same, but the first solution is much easier and faster to implement.

</comment><comment><USER4> You're looking for PostGIS or another GIS solution.

With PostGIS you can use ST_DWithin to find results in a certain radius from a longitude and latitude point which is retrieved from the cell phone in iOS.

</comment><comment><USER5> You need to post this question to Stackoverflow (www.stackoverflow.com).

<comment><AUTHOR> I would but the question is vague and has no code so will only be closed and downvoted.</comment></comment>


Enterprise Software Co Atlassian Files IPO on Sales of $320M,Net Income of $6.8M - <AUTHOR> http://techcrunch.com/2015/11/09/atlassian-ipo/ <comment><USER2> 'Atlassian, the company behind enterprise-focused social products like Slack competitor HipChat, JIRA, and Confluence'

I just can't get over how horrible this lead-in is. Is it trying to say that Slack is Atlassian's product, and HipChat is a competitor... what is even going on... Who edited this crap? Come on techcrunch, you can do better than this.

<comment><USER3> There is another angle here; that Slack is the standard and HipChat (which predates Slack by a bit) is the challenger.

</comment></comment><comment><USER4> 3% net margin on an established software company such as Atlassian? Sounds very low.

<comment><USER5> My thoughts exactly .. where the hell is all that cash going???</comment></comment>


Odesk raises minimum hourly rate to $3.00/hour - <AUTHOR> https://www.odesk.com/community/minimum_client

<comment><USER2> Its a shame they cant even set it to min-wage in the country they are hosted/based in.

<comment><USER3> Sounds like a great way to increase the unemployment rate on oDesk even more.</comment></comment>


10 years of entrepreneurship - <AUTHOR> http://startuplessonslearned.blogspot.com/2009/07/10-years-of-entrepreneurship.html <comment><USER2> I found the last paragraph to be especially thought-provoking.

He talks about the trap of talking about the work you plan to do at the expense of actually doing it, which is something I find is easy to fall into.

</comment><comment><USER3> Unfortunately, it is much more tempting and easier looking to jump on a trend in the hopes of becoming rich and famous than to put your head down and execute non-stop for years, especially without any hope in sight.

PS. How do you get to be on these BusinessWeek and Inc. Awesome Person of the Year lists anyway? Do you go hound them or is it just a side-effect of all the publicity your startup is getting?

</comment><comment><USER4> Good advice. It's easy to get caught up in a comparison with the achievements of others, and to say, "why can't I be like them, why couldn't I have seen that opportunity?" In doing so you make the whole thing competitive - in your mind. The truth is that you aren't them and you probably weren't motivated to try what they did at the time they did it. So why regret it now?

<comment><USER5> Agree. But let me just add that even if you bothered to try what they did, they could still fail and you could still succeed. Not because of why, but because you were less lucky than them.

</comment></comment><comment><USER6> Heh, it's also 10 years since I first got into entrepreneurship and realised that running a company was a) fun and b) a decent way to spend one's life. The journey since then has detoured through university, but I was always freelancing on the side. Now I'm running a company "for real" and loving it.

<comment><USER7> I would love to hear further detail about the balance between freelancing, college, and eventually running my own "real" company. That seems to be the path I'm headed towards.

<comment><USER6> It's just been a case of prioritising, really. Running several websites from student societies' to independent stuff (looking back, why on earth didn't I monetise any of it?) meant people knew I did websites, which led to being paid for doing one-off stuff. I then spent summers and holidays doing more complex jobs, including rentacoder type work. Worked for local startups and big corporations in summer vacations (sometimes freelancing in my spare time). Broke free of academia, did a bit more freelancing, then realised I had the freedom at last (no academic terms round the corner) to start up rather than do odd jobs for the rest of my life. You'll know when the time is right for that. Good luck! :)

</comment></comment></comment><comment><USER8> The advice I got from the article: making something valuable to your customers instead of doing something hot.

</comment><comment><USER9> I agree. Excellent final paragraph.</comment>


Yesterday I had this crazy idea: People pay me $15, I make them a web design - <AUTHOR> http://designfor15bucks.com/ <comment><USER2>
      You allow me to put a screenshot of the design
      on this page; ($5 extra if you don't)

You could reword that clause so your clients feel they're getting something valuable for their $5.

      Please note that I post all designs to my public
      portfolio and this website.  If you need the design
      to stay secret, it only costs $5 more

Or you could invert your pricing. So you start off as "designfor20bucks" and offer a $5 discount if you can add the image to your public portfolio and post it on the site. People generally feel better about getting a deal than getting hit with extra costs unexpectedly.

<comment><USER3> Really good advice here, problem is, it'd require changing of the domain name. :P

<comment><USER4> or two domains point to the same site, and have a $20 in the logo slashed out, replaced with $15.You're the creative one - make it work :)

<comment><USER5> This would make for a fun A/B test: "$15 + $5 extra" vs. "$20 - $5 discount".

You might collect some evidence that people like getting a deal more than getting hit with an extra cost.

<comment><USER6> to get a design for <$30, your not going to notice a huge difference in acquisition for the $5

<comment><USER7> Probably, yes, but hard results from testing FTW.

</comment></comment></comment></comment></comment></comment><comment><USER8> Hitchhiker: Think about it. You walk into a design store, you see designfor15bucks.com sittin' there, there's designfor14bucks.com right beside it. Which one are you gonna pick, man?

Ted: I would go for the 14.

Hitchhiker: Bingo, man, bingo. designfor14bucks.com. And we guarantee just as good a design as the designfor15bucks.com folk.

Ted: You guarantee it? That's - how do you do that?

Hitchhiker: If you're not happy with the first 14 bucks of design, we're gonna send you the extra dollar of design free. You see? That's it. That's our motto. That's where we're comin' from. That's from "A" to "B".

Ted: That's right. That's - that's good. That's good. Unless, of course, somebody comes up with designfor13bucks.com. Then you're in trouble, huh?

<comment><USER9> but on the web, there is no street on which to see sites next to each other.

I knew a jewellery company once which had two sites. One was all red and gold and stars and flashing things, the other was all purple and white and curvy things. The items on the purple posh looking one were 15% more expensive. Same products on each - heck, it was the same _database, product description and images_ on each site!

Point is, this is the internet, you can do that kind of thing.

<comment><USER10> Actually I think that street would be Google search results.

<comment><USER9> that's the obvious reply, but it fails for two reasons:

1) SERPs are not fixed; they vary from month to month, and even from day to day as new sites and pages appear and are added to the mix. This is akin to the houses on a street changing order frequently, and ruins the analogy

2) SERPs differ between terms - you and I might be adjacent for "cheap widgets" but for "budget widgets" the SERP might look entirely different. This is akin to shops having a million doors, each on different streets, and ruins the analogy.

<comment><USER8> PPC advertising on said search pages fixes the analogy. As do link directories and, erm, front pages of link sharing sites such as HN (if submitted within the proper timeframe)

</comment></comment></comment></comment></comment><comment><USER11> Assuming it takes you at least 1-2 hours per design (and even with mad photoshop skillz it's unlikely it'd be much shorter than that), you're probably better off getting an office job somewhere, or even maybe a burger- flipping job. Given all the additional expenses of running your own business, this is probably not a viable business model (i.e. you will lose money on the whole).

The only way this would be justified is if you use this as a source of clients to up-sell more expensive work to.

<comment><USER12> I'd rather do something I enjoy for slightly less money than get an office job or flip burgers.

<comment><USER13> You must have very cheap rent.

If you don't ask for money for what you do, then you are saying that what you do is worthless. You probably don't actually believe that, and the only reason to sell your work for less than the most basic labor is because you don't know how to get paid properly. But customers see your pricing and conclude that designers do not need to be paid even the normal minimum for other kinds of work.

If you keep working like this, you will find yourself unable to ever get a design job that pays well. Everyone who calls you will do so because you are cheap. When you go to visit clients who have money to spend, they will not want to hire you. Not because their is anything wrong with your design; but because they are not designers, and so they will try to estimate the quality of your work by the visibility of your financial success. If they notice nothing that suggests you can make money, then they will assume that you can't, and they will assume that the reason you can't is because your designs are no good, and hire someone else. Later, when you want to get married or have a family or just enjoy a better standard of living, but you can not afford to do so because you undervalued your work, you will realize that you designed yourself into poverty. It's true that some very rich/successful people dress or act like they don't care about money. This is because they have so much money that they don't have to care about what clients think. They have agents who take care of all that annoying business stuff for them. Agents only work for people whose work can be sold for high prices, because agents only get 15%, on average.

A lot of creative people fall into this trap, I have made this mistake on some occasions. It is a bad pattern, for you and also for your colleagues in the same profession. Also, it's insulting to people who work in offices or flip burgers. Maybe they would like to work at something creative, but when you price your work so low you are demonstrating that creativity is worthless, and that skill and hard work do not deserve a reward. Here's my advice: it's OK to do some work for free for your friends and family, but when you work for money your minimum should be 5 x the minimum for a 'boring' job. Some people will refuse to pay so much, and then you must refuse to work even if your bank account and your stomach are empty. Many will agree. You should use your price to drive bad clients away. Good clients will either pay or negotiate. If you do not make them work in negotiation, they will understand this to mean that you are not going to work on their commission, and hire someone else.

If you cannot make a living this way, then get a job flipping burgers. First you will learn some humility, second you will get free food every day, third you will have some more financial security and fourth you will be very tired when you go home every day. Now, do a few hours of design work every week too. Of course, it will be much more difficult now because you are exhausted by working in a hot kitchen before you draw a single line. Now you will start to understand the value of time, and charge accordingly.

<comment><USER14> > If you don't ask for money for what you do, then you are saying that what > you do is worthless.

"Um, what?" \--Every open source developer, ever.

<comment><USER15> most open source software are tools, not products.

<comment><USER16> So what about the Open Source Software that are products?

</comment></comment></comment></comment></comment></comment><comment><USER17> Instead of penalising the customer($5) for not listing their design, offer it as a discount for listing their site. So, base cost $20, but with listing only $15!

</comment><comment><USER18> This is Genius.

You should only do one a day, and if someone wants to jump the line they can big higher than $15!!!

I'm going to put the Launch conference www.launch.is/conference and ThisWeekIn.com up for $50 each right now. $100 is no risk... if you have one good idea in each design it would be worth it.

i love this idea!

</comment><comment><USER12> Not a bad idea if you can make the numbers work.

One variation would be to charge $15 per iteration. The first one might take you 2 hours, but each additional iteration might only take 15 minutes, in which case it becomes more economical.

<comment><USER19> Then you're possibly incentivized to do subpar work the first time around to ensure a second round. On the other hand, if you push that too far it will make for a bad reputation. Also, if there is enough new work coming in then it's probably better to spend the time with new clients (with the aim in mind to up-sell later).

</comment></comment><comment><USER20> Initial thoughts:

\- the linked images have blue borders around them, look ugly

\- you could put a couple of samples up if a design costs just $15 worth of your time

\- I hope you don't live in North America or Europe, otherwise, you're undercharging.

</comment><comment><USER21> Thats why i quit making colorful pictures for "blind" people with small pockets long time ago. Time (effort spend) to return (money) equation is terrible. Its shameful that todays perception on web design is PSD layered file. Web design is a process of communication of an idea/marketing concept to a consumer. Web design is UX thinking. Than: Web design is UI doing. Than: Web design is a illustration.

I don't see how the Client will perceive this low price PSD oriented service with less expectations. The price is so low that its not serious, it's a joke.

Advice:

Make some sassy layouts, put them online in portfolio section. Than put up your price per hour. Give a client full service, feedback, comments on their ideas, professional advice etc.

But: Value in web design is not in pictures. It is in successful conceptualization of your professional view on clients problems.

Years ago i stop offering cool pictures, and start learning more about technology in front-end (html.css.js), UX, marketing, communication with customer and now i perceive the web design process as a whole of many valuable parts.

If you are in desperate position, do some freelancing or get a routine job and invest in your self in your spare time:))

</comment><comment><USER22> I'm wondering, as I'm not making any money (devoting time to a startup idea) right now, if anyone would be interested in a similar service for the markup?

I'm really quite good and would charge $15/page. I can offer impressive turn around times and even CMS(WordPress) integration for an additional flat- fee($250?).

<comment><USER23> Yes, definitely. If you offer it, I'll take you up on it once he's open for design applications again.

<comment><USER22> Cool! I'll setup a page for the service now.

Edit: <http://staydecent.ca/markup>

<comment><USER24> Might want to check you spelling (intergration) and validate ("5 Errors, 1 warning(s)", [http://validator.w3.org/check?uri=http://staydecent.ca/marku...](http://validator.w3.org/check?uri=http://staydecent.ca/markup)) before claiming standards compliance.

<comment><USER22> Thanks for spell checking! As for the errors. Oh well. The main site structure is valid and works on the 3 major browsers I tested(Chrome,FF,IE8).

The first error is too beneficial to give up, and the rest are for a shitty form code (but this keeps my hosting cost at ~0/month which allows this stupidly cheap service).

But, you are right. And, I shall no longer advertise standards compliance. =D

</comment></comment></comment></comment></comment><comment><USER25> I just started a new blog and wanted a nice design for it. $15 is definitely a good price, if it's a decent design. (Note that I said 'decent' and not 'outstanding'. I know what design is really worth.)

But without some samples, it feels like I'm just throwing away $15.

<comment><USER26> For $15 you can test the waters. How much do you make in an hour? How long will it take you to design your own web site? In other words, is it worth the $15 gamble to see if someone can come up with something to blow you away?

<comment><USER25> No, I don't think it is. I could give random people $15 all year long and still not end up with a decent site.

Now, someone who has a history of decent-looking sites is a good gamble.

And it is a gamble, since he says it's non-refundable and no changes can be made.

<comment><USER27> Agreed -- it's a better idea to wait until he has posted some example $15 designs.

</comment></comment></comment></comment><comment><USER28> Somebody delivering the same service, but including HTML/CSS, could easily charge $150 and have more customers than they could possibly handle.

<comment><USER29> Somebody could offer it sans HTML/CSS, charge $150 and still stay busy IMO. My basic mate's rates fee for that sort of job is $1000-1500 for a PSD.

That said, $15-20 is comfortably in that "If it doesn't work out, who cares" bracket. The problem will be that for many people, time is far more crucial than the cost. If I need a turnaround of 3-4 days, and the queue is 7+ days, it won't matter if it's $15 or 15 cents.

<comment> anon-e-moose Really? Where do they get clients? I'll start tonight!

<comment><USER29> Have a good portfolio and gradually build up awareness. If you offer this service, link to a portfolio in your profile.

Don't compete on the same turf as elance types. I've used PSD2XHTML type services for $150-250 before and the main reasons I stopped was that the product wasn't really done to our house style and they couldn't hit deadlines. (Now I have staff that do these jobs for me.)

</comment></comment></comment></comment><comment><USER30> Just out of curiosity: why did you buy the designfor15bucks.com domain and STILL setup a gmail account for contact?

Related: <http://www.google.com/a>

<comment><USER31> Because Google Apps isn't free and gmail is?

<comment><USER32> There is a free version of Google Apps: <http://www.google.com/apps/intl/en/group/index.html>

<comment><USER33> There is. I used that for several years. However I don't anymore because if you work alone or small groups I strongly suggest to use a regular gmail/google account and forward your @domain.com email there instead of using the gmail/app.

Otherwise you will be always be running an outdated version of all gmail services and there is no real benefit really in having gmail handling your MX.

<comment><USER34> That requires you to maintain a mail server of your own and everything that comes with that. I prefer to have pagers go off at Google's HQ instead of mine when something happens.

What features are you using in Gmail that I'm not getting in Google Apps? I have priority inbox and all the latest Labs experiments. I haven't heard of anything I'm missing.

<comment><USER33> As I said, I closed down my google apps account a few months ago because things were missing or they arrived later compared to the regular gmail, so I don't know what you may be missing right now.

Also, if you have an android phone you cannot buy apps if you sign in only with your apps account, you must use a regular account. That is a PITA, believe me.

<comment><USER35> You don't have to use your apps account only, you can still use your regular one for buying Android apps etc.

<comment><USER33> Here is the scenario: you have google apps account that you use for all your stuff and you sync it with your android device to access email, contacts and such. This is account A. Then you realize the market won't work, so you sync the regular google account, account B.

Now, you have the hassle of having to deal with multiple account on your phone, but is not too bad. It comes bad when you discover that if reset your phone and sign in only with account A or only with account B or even in the wrong order (B, A), all the apps you bought are simply gone.

Yes, the market sucks that much.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER36> I bounced out immediately due to lack of Latest Design samples. I get the concept, like it, but gotta have examples.

<comment><USER37> I believe that's the reason this entire site exists. (Portfolio building).

<comment><USER36> It's a visual product so you got to prime the pump with visual samples to entice the first customer.

<comment><USER38> Unless he's selling his skills for $15...which basically primes the pump itself. According to his website, he's already got more customers than he can handle for a week. Come back in a week and he'll probably have 5-10 items in that portfolio.

</comment></comment></comment></comment><comment><USER39> You know... most of the comments in response have been negative. Some have said the $5 charge for keeping the design off the portfolio is phrased wrong. Some have said the price is too low. Some have criticized the site design, but you know what? In about an hour, this guy got more customers than he could even deal with.

He now has a collection of email addresses he can send an announcement to when he launches a "real" web design company. He has a bunch of examples he can show of real customers using his designs. He has the experience of actually having someone pay him for his work. Heck, he even got over 200 HN karma out of the deal.

How can this be a bad thing?

</comment><comment><USER40> I need a logo for my website, do you also make logos for $15?

<comment><USER41> You can get a 'horrible' logo for five bucks: <http://www.horriblelogos.com>

<comment><USER42> those logos are better than what I can do.

Perhaps I should start a site called really horrible logos. I will guarantee all logos will look like a 2 year old on something did them.

</comment></comment></comment><comment><USER43> Nice! Do you want to tell us something about your background? I'm thinking a lot of people will see this as absurd, but if you're not spending too long on each individual design, $10-15 and hour is great money for a student or hobbyist, especially since you're developing a marketable skill at the same time.

Also, the #1 recommendation here is gonna be to put something up under "latest designs", even if you haven't had any clients yet. The first customer is the hardest, and you can help that along by putting a few coins in the proverbial hat yourself. (Although I realize the site itself is an example of your design :)

</comment><comment><USER44> As psd file - so I would have to spend another few hundred $ to get a legal Photoshop to watch it?

<comment><USER45> Gimp will work

<comment><USER44> Sometimes. I actually posted it because I had exactly that problem in the past with an artist delivering me .psd's while I'm using The Gimp for everything.

</comment></comment></comment><comment><USER46> Uhm, how about you team up with one of the many PSD-to-HTML services and do it soup-to-nuts, or at least get referral compensation from said services?

</comment><comment><USER47> Great concept, love the branding, and love the marketing built into the concept. Not a lot of fluff on the page, just the necessities. And once you get busier and have a portfolio, you can start charging more, more, and more until you're getting a good return on your time.

Helluva business model, love the thought that went into it. If there's anyway I can help, let me know. Tweeting commencing right....meow!

</comment><comment><USER48> Is the "Hire my services now" button supposed to have a 2px blue border around it?

</comment><comment><USER49> I think you guys are looking at this all wrong. This isn't $15 for a complete and polished design. This is $15 for Marco's inspiration and thoughts being invested into my product! $15 is nothing to lose out on if it falls on its face, but imagine the benefit you could be missing had you not tried?

</comment><comment><USER50> It is crazy. I really think you should charge more.

</comment><comment><USER51> Right now it says "Latest designs: COMING SOON". Put up a template or something!

Also, charge $30.

If the sample designs are actually somewhat good, $30 is worth the gamble, maybe $40-50. I'd probably pay $30. But I'd need to see at least 2-3 references/samples/templates.

<comment><USER52> The thing is, the more he begins to charge then the less and less he'll be able to say "first design is final, if you don't like it then buy a second one." At this point in time, anyone buying from him is just throwing away $15 since he has no examples of previous work.

<comment><USER53> I hope this guy thought ahead and registered designfor30bucks.com and designfor60bucks.com.

</comment></comment></comment><comment><USER54> Relevant to my interests. I'll probably be giving it a go shortly. My buddy (who has taste) suggests toning down the front page, though.

While others say 'raise your prices' my suggestion is to keep them low, at least until you have more work than you want to handle. at $15, I might as well give you a shot. at $150? eh, I'm much less likely to blow that on something I have no idea if I will like or not.

Oh, also, if I like the design, it'd be pretty cool to slip you another $100 or something and get the html/css, I mean, if it's possible to get that sort of thing at that price.

</comment><comment><USER55> A couple weeks ago I built <http://www.hackeress.com> with the crowdspring / 99Designs clientèle in mind (who seems to be your audience).

You could expand your site and add a section for designers who specialize in the code-writing aspect of design. Just a thought.

EDIT: Fixed. I'm still working on the site's content; got busy over the holiday. But the design of the site is done, as are the custom 404 error pages. :)

<comment><USER56> Since you're probably using that website to get clients, you might want to verify that all the pages work. (The link you used works, clicking on any of the links gives me a 404.)

</comment></comment><comment><USER12> I just came across this site, which lets people sell their services for $5: <http://www.fiverr.com/>

<comment><USER57> I had never seen fiverr.com before. Interesting. I just tried them out, paid someone $5 to take a look at one of my sites and send me some feedback. I was honestly impressed with the comments.

</comment></comment><comment><USER58> Where are you located? $15 doesn't sound like a lot of money for what could take about an hour of work (simple 1 page design). Unless you live in a country where money goes farther, or you can do designs much faster than 1 hour? Will this be profitable?

EDIT: I see that you are in Brazil, and a quick Googling shows that web designers make $4-$8

</comment><comment><USER59> If you're doing the designs yourself you're doing yourself a great disservice by charging so little.

Often times most people assume they have an endless well of creativity in them but in actually its a feast and famine scenario. Assuming you want to do this full-time you will burn out eventually.

<comment><USER60> But he can stop at any time. He can even send back the money for unfinished jobs.

</comment></comment><comment><USER61> A PSD file does not a web design make.

<comment><USER62> $15 does not a web design make either. This is why it is so cheap.

</comment></comment><comment><USER63> Indeed, a crazy idea. Considering any decent design would take at least 3 hours of work, you'd be making $5/hour.

To make it worthwhile for you, you'd have to spend at most 1h per design, in which case it wouldn't be worth the $15 for the client, or a spot on your portfolio.

</comment><comment><USER64> I like. I'm sure you are at least three times as good as this alternative, but I have enjoyed using a few different (similar) $5 services from fiverr: <http://www.fiverr.com/>

</comment><comment><USER60> I wish I could do this for application prototypes. But from experience I know that prototypes can take much more time than $15 justifies. Or maybe I could just accept the ideas which interest me. Hmmmm....

</comment><comment><USER65> Just a thought, you can consider teaching design which allows you to meet customers and give back to the community. <http://skyara.com> shameless self plug :)

</comment><comment><USER66> I know you're not taking any more design requests at the moment - but could you put a reminder form on your site that emails when you are? By Monday I'll have forgotton all about you.

</comment><comment><USER67> I don't understand why so many replies assume that this was intended to be long-term, sustainable business model. It's a brilliant marketing exercise, nothing more, nothing less.

<comment><USER68> So true. Look at the comments here...has HN in a frenzy. I hate it, but it's brilliant. Seems like something Tim Ferriss would do.

</comment></comment><comment><USER69> He doesn't say anything about the design being unique. Odds are he'll make 50 templates at a loss and just reuse them.

Eventually, he turns a profit with an automated muse and everyone is happy.

</comment><comment><USER4> Closed already - dang it - was going to send in a request :(

</comment><comment><USER70> This looks great. I'd like to submit a few designs, so please re-accept submissions. As long as they're done within a week or two that's fine.

</comment><comment><USER71> Well, as you said, you had "this crazy idea" sounds crazy indeed!

Hope to see some designs in the lastest section ;)

</comment><comment><USER72> Love the Idea. I know for my few websites I have, I would be willing to spend the $15.00...

</comment><comment><USER73> Everyone watch as this fellow goes from zero to burn-out faster than any web designer ever.

</comment><comment><USER74> Good job, I think that it is a good way to earn some bucks while gathering experience.

</comment><comment><USER75> You could probably charge double, triple or quadruple and still get customers.

</comment><comment><USER76> HN, I will make your psd into html/css and even javascript for $200.

</comment><comment><USER77> Just ordered design and looking forward for the outcome in 2 days :)

</comment><comment><USER78> Great idea, good marketing. Hope this does well for you.

</comment><comment><USER79> After 18 hours, still no example designs.

</comment><comment><USER80> viral/discount/link juice - Offer a $5 discount for anyone who tweets/blogs your site

</comment><comment><USER81> How do you convert the PSD files into HTML & CSS? Does Photoshop have an option for it or what?

<comment><USER67> You learn HTML/CSS, fire up your favourite editor and start slicing.

</comment></comment><comment><USER82> I'd really like to see the quality of these designs. I sure they'll reflect the price.

</comment><comment><USER83> he's loaded some designs

</comment><comment><USER84> HN, yesterday I had this crazy idea: People pay me $100 and I build them a car.</comment>


The Story of ISPC: Intel SPMD Program Compiler - <AUTHOR> http://pharr.org/matt/blog/2018/04/30/ispc-all.html <comment><USER2> Really interesting perspective on Intel's culture. I don't know much about ipsc but it was an interesting read for the other stuff as well.

</comment><comment><USER3> I don't like adding low content comments, but I have to say this whole series is great so far. Im about 50% through.

</comment><comment><USER4> Fascinating read, even though I'm no compiler nerd. Explains some of the significance of vector extensions and support for them in surprisingly approachable language. And as others have mentioned, the glimpse of internal Intel politics is fascinating.

</comment><comment><USER5> Great articles. I only wish he had written about what actually happened during the performance competition that he built up.

</comment><comment><USER6> The price on the LRB cards is bonkers. Was there every a plan to bring the price down to the consumer PC market? I'm also curious why Pharr thought programming LRB via intrinsics was limited to so few, from my understanding it really isn't much different than any other intrinsic programming. I also didn't realize it is Pharr from "Physically Based Rendering" fame. Very cool!</comment>


Ask HN: Naïve startup idea? - <AUTHOR>

Several months ago I had the thought of building a video/screencast monetization platform where customers could have their own private label 'site' where they could easily upload videos or screencasts and sell either subscriptions or charge one-time fees for their products, sort of like a shopify for video content.  Recently, I have read posts here and there about making money selling screencasts and there's tekpub.com and railscasts.com, etc., and it's made me reconsider the idea.
I have found a couple similar offerings but they're not implemented as smoothly or user-friendly as I would like.
So what do you think?  Is there a big enough market of content producers that could make this a viable idea? <comment><USER2> The challenge content producers face is not so much on the technical side, but rather on finding an audience.

I'm sure you've seen this: <http://www.learnivore.com>

Something like that where I could upload my videos and have a (tag based or provider based) e-mail go out to an audience would be the real selling point.

With content publisher upgrades available for "featured video", or featured video within a tag. Something like that.

</comment><comment><USER3> Considering the small number of players in this market (zoomwebvideo.com, wistia.com, jitrinc.com, tikilive.org, veevu.com, etc.), you might actually find a market for this service. The competition is quite varied in focus (example: JITR likes subject matter experts, Wistia likes enterprises), so finding a niche in there and doing it great is, IMHO, worth doing.</comment>


Arstechnica defaced - <AUTHOR> http://arstechnica.com/

<comment><USER2> Just noticed. At least they left it with some nice music and no malware.

<comment><AUTHOR> Yeah I was just about to check it for my daily tech update, guess I'll have to wait a couple more hours :/

<comment><USER2> They've replaced the site now, but probably not fixed the underlying vulnerability. However since this looks to be done by a white-hat who just wanted to plug his rap video, I'm sure he's told them what it is. :)

<comment> X-Istence Yeah ... no. This was not done by a whitehat, Dual Core posted that he found out after the hack on FB.

See: [https://www.facebook.com/dualcoremusic/posts/101529796391238...](https://www.facebook.com/dualcoremusic/posts/10152979639123833)</comment></comment></comment></comment>


Tell HN: We're doing a free seminar about the 2015 Digital Goods VAT changes - <AUTHOR> https://www.eventbrite.com/e/app-developers-do-you-know-how-to-prepare-for-the-2015-digital-goods-vat-changes-tickets-13154211601

<comment><AUTHOR> Some info about the VAT changes can be found here - [http://oleb.net/blog/2014/07/eu-vat- changes-2015/](http://oleb.net/blog/2014/07/eu-vat-changes-2015/)</comment>


Mod_rails vs. mongrel vs. thin: a benchmark - <AUTHOR> http://izumi.plan99.net/blog/index.php/2008/03/31/benchmark-passenger-mod_rails-vs-mongrel-vs-thin/

<comment><USER2> I have to admit I'm intrigued, but at the same time I'm really wishing it was a proper mod_rack instead of a mod_rails. Rack, for those who don't know, is the Ruby equivalent to Python's WSGI. A number of other Ruby web frameworks are built on Rack, including Merb, Ramaze, Sinatra and Waves.

That said, I'm still pretty excited and the numbers are promising. Wonder how well it handles long-running requests (which is Thin's problem, currently)

</comment><comment><USER3> I am very interested to see the memory usage. With mod_perl, you pre-loaded a lot of your modules in the httpd.conf file, and Apache loads them once and shares them across all processes saving memory. With Rails that could give large memory savings, and memory is the major pain point of getting more than one or two Rails apps up and running on the same server as I understand it.

</comment><comment><USER4> Good stuff. I would've liked to see data for: Nginx + Mongrels, Ngninx/Apache + Evented Mongrels, Swiftiply + Evented Mongrels.

[http://brainspl.at/articles/2007/05/12/event-driven- mongrel-...](http://brainspl.at/articles/2007/05/12/event-driven-mongrel-and- swiftiply-proxy)

</comment><comment><USER2> also, fwiw, mod_rubinius is also underway (old-ish news, but highly relevant): [http://brainspl.at/articles/2008/02/12/what-do-you-want- to-s...](http://brainspl.at/articles/2008/02/12/what-do-you-want-to-see-in- mod_rubinius)

</comment><comment><USER5> What? A mod_rails? Really? Where will the madness end?</comment>


We've named every point on Earth in three words - <AUTHOR> http://what3words.com

<comment><USER2> See also [https://en.wikipedia.org/wiki/Geohash](https://en.wikipedia.org/wiki/Geohash)</comment>


Tell Your Boss Anything - <AUTHOR> https://www.tellyourbossanything.com/

<comment><USER2> Don't do this, unless your boss has specifically opted into a service like this.

First, if you need to use a service like this to get stuff across to your boss, this is my feedback to _you_ :

Fix yourself (specifically the issue you have bringing stuff up with your boss) _or_ (if they're the reason you feel like you can't talk to them about something) find a new boss. No amount of anonymous feedback is going to fix a poor relationship with your boss. And it's probably not going to fix the other stuff, either.

Anonymous feedback is terrible:

\- It's too easy for a manager to disregard or mentally down-vote as being from a bad apple or someone they don't see eye-to-eye with.

\- Without being able to put your feedback in context of who you are, where you're coming from, and what your relationship is with them, it could also make what you're saying a lot more hurtful than you mean it to be. For example, they might think it was from someone else. And maybe your feedback, coming from someone else they work more closely with, would really hit a nerve for some reason.

\- It also seems unthoughtful to deliver anonymous feedback to someone without giving them some way of addressing the feedback, perhaps giving you some feedback of their own, should they think the feedback was flawed in some way.

Instead, we need to be having real conversations. If those aren't working, maybe you're in the wrong place.

<comment><USER3> "No amount of anonymous feedback is going to fix a poor relationship with your boss"

If a relationship has become truly broken, it's unlikely our system is going to fix it. In that case, you might be right that the person should seek employment elsewhere.

But there are many scenarios by which the relationship can be improved by anonymous feedback. Keep in mind that a lot of the feedback managers tell us they get are based on feedback about systems, tools used, company policies and the like.

We've built (and are building) a follow-up mechanism to try and ensure good feedback doesn't go ignored and that the downvoting you speak of is actually transparent in the system.

If you try our service, you'll see that the feedback is in fact both ways. Managers can reply, ask follow-up questions, mark the issue as resolved and so on. Likewise, the employee can reply and do the same.

Not everyone wants to leave or feels they can leave (in this economy). They want a mechanism to try and fix something without fear of retribution. That's what we're trying to provide.

<comment><USER4> Giving feedback is always better in person I find, mainly because giving feedback in person (not to be mistaken with criticism) allows you to have a fluid conversation, your boss will also appreciate it more, you show you really care and you have the balls to go up to him. People get promoted that way. It's just more "relaxed" and your boss will take it more serious.

</comment></comment></comment><comment><USER5> It is a shame that so many people are unable to have conversations with their boss as adults, no matter how good/bad the feedback is.

Email is never a good way to have difficult conversations. Too many wires get crossed and meaning is extracted where there was no intent.

It would be nice if there were some guides on the page about how to have these conversations in person. 'Crucial Conversations' is a great starting place [http://www.amazon.co.uk/Crucial-Conversations-Tools- Talking-...](http://www.amazon.co.uk/Crucial-Conversations-Tools-Talking- Stakes/dp/0071401946)

<comment><USER6> Speaking as someone who's had his "tone" addressed in emails, and the survivor of many a blunt conversation with my boss, the best way to get a point across is to just state the facts. Don't be pompous, don't feign ignorance, or try to blame others, just spit it out, and have whatever you need to tell them written or typed out on a piece of paper. The last thing is to be respectful. Even if you don't respect them, they ARE in a position above you, and that DOES mean something, not only to them, but to others as well. Keep it civil, state the facts, and never apologize (unless you're the one who messed up. If that is the case, do so sincerely and politely).

<comment><USER5> Yup, respect, empathy and congruence.

Be respectful, understand that it might be hard to hear your feedback and try and word it in the most direct way possible.

I think i might be missing another thing, but I forget. Those three things will get you far though.

Not sure that I agree with them being in a position 'above' you though. You are both adults. They might have more responsibility than you, but that does not mean that they are 'above' you. I treat every single person in the company I work for as an equal, from the junior consultants to the MD and chairman of the board. I also expect them to treat me the same.

</comment></comment></comment><comment><USER7> 360 feedback is good. But if you want to use this to remain anonymous, then this excerpt from their "Promises" section doesn't instill the greatest level of confidence:

"If you do not use insults, verbal abuse or foul language, we will do everything in our power to keep your identity hidden. In other words, don't be mean and we'll have your back."

<comment><USER3> Can you help us improve the clarity of this part of our promises? Obviously, we don't want our service to be used to present hateful, threatening or abusive messages and providing a user doesn't do any of those things, we will do everything in our power to prevent their identify from being revealed.

We welcome your feedback.

<comment><USER8> Simple: We will not reveal any details regarding your identity unless we are compelled to do so by law.

Once you decide to be the arbiter of what constitutes abuse or foul language, you're embarking on a trip down the rabbit hole.

<comment><USER3> Thanks a lot.

<comment><USER9> Is it necessary to associate feedback with the user's email address after you've confirmed their identity?

If you don't associate their information with the feedback, I think users would be a lot more confident in your promise of privacy. You can't reveal what you don't have.

</comment></comment></comment></comment></comment><comment><USER10> I worked on something similar but more generic - <http://www.complainator.com/>

The idea is that for example you like service provider (gym, dentist), you want to keep coming back, but you want to let them know about something that's bugging you - noisy music, messy office, toilets etc. I got feedback from some people where their issues were resolved.

When it comes to bosses ... I just can't imagine it working unless you have 10 or more people on the team. You can't discuss particular situations because your identity would be revealed. But that's me, I wish you good luck

<comment><USER3> Looks like you are in BC. Our team is on Vancouver Island! We're doing everything we can to keep the feedback inside Tell Your Boss Anything civil.

You're absolutely right that the degree of anonymity is increased with more people on a team.

<comment><USER11> It's weird to address the issue of anonymity, by starting out with "I KNOW WHERE YOU LIVE".

<comment><USER3> Ha, Touche. A simple quick glance at the complaintanator website shows the top items to be BC based. Location inference. Less weird.

</comment></comment></comment></comment><comment><USER12> While the design seems fairly nice, the idea is nothing new.

Rypple, founded in 2008, started out with an anonymous feedback application built for the enterprise (albeit, I don't think the messaging was quite as forward as it is for this service, I think it required the manager opting in). Rypple eventually pivoted into a performance management cum next-gen performance review app, but the anonymous feedback feature is still a component. It was acquired by Salesforce.com last year.

I love the idea of anonymous feedback, it's one of the aspects of Rypple that initially attracted me to work at the company (I used to work at Rypple).

However, I'm not even sure Rypple was the first mover in the corporate anonymous feedback space, there's been quite a few similar services over the years. I think an app with just this feature, given how there's been consolidation in the HCM industry and providers now often offer a full suite of HR/performance management tools nowadays, is unlikely to achieve major success. That said, there's still a ton of small startups in the space that have similar ideas to Happiily.

<comment><USER3> We're not laying claim to being first. Anonymous Feedback is nothing new. 'Anonymous' suggestion boxes been around for a long time.

By the sounds of it, you're aware of our enterprise product (i.e. has to be activated by a manager or leadership team) product called happiily which is also our company name. Part of our motivation in building this new product was to provide smaller companies and teams a product to collect feedback quickly.

As well, we wanted to build a product that could provide value without first being activated by a manager. That's really the crux of the experiment here at Tell Your Boss Anything.

And yes, there are lots of startups seeking to improve the way people work. And that's a good thing.

</comment></comment><comment><USER13> I thought about developing a piece of software for businesses to use in-house for employees to ask questions, anonymously. In the end, however, I decided that even though you would be "anonymous," there's a lot of guessing of who is actually asking the questions (especially new hires, people who ask a lot of questions, etc).

<comment><USER3> The point you raise is a good one and it's also what wizawuza mentions. Anonymity is increased the larger the crowd size. One way we're seeing Tell Your Boss Anything used is for all feedback to be directed to the CEO instead of to an individual manager.

</comment></comment><comment><USER14> I tried it out, the boss have to pay to read the message. Kind of smart way to get some income but from the bosses' point of view, having to pay money to get a bitter message will just make the day for them...

<comment><USER3> To be clear, the first person that sends feedback to their boss, the boss sees that feedback and can reply to that for free.

Only when a 2nd person sends feedback to that same manager, does the rest of the feedback (from employee 2, 3, 4etc) get locked until the manager switches to a paying account.

</comment></comment><comment><USER15> Unless this becomes viral and ubiquitously popular, I imagine the average boss will perceive this bizarre mode of communication as being passive- aggressive/somewhat-creepy, and thus will instinctively have a dismissive attitude towards whatever feedback is sent through it. At the very least, he/she will spend a significant amount of time mentally sussing out clues to, "Who the hell sent this?"

<comment><USER3> What we're seeing (and what we hope continues) is managers proactively using the service as a place where employees can turn to provide feedback that they're not yet comfortable discussing in person.

</comment></comment><comment><USER16> What if you're the only person that reports to your boss?

<comment><USER17> What kind of answer do you expect to this question? Honestly, I'm curious.

<comment><USER18> I couldnt help LOL even though you might have asked the question sincerely.

</comment></comment></comment><comment><USER19> I could see HR throwing a fit if they ever found out that an employee used a non-approved third party service to voice an official complaint.

Interesting idea, but tread lightly. A better idea would be to implement this as enterprise SAAS. That way employees wouldn't have to worry about HR policy.

<comment><USER20> If the service was paid for by your employer you wouldn't be able to trust it to be anonymous.

</comment></comment><comment><USER21> This is a bad idea. Email is simply the a horribly ineffective way of communicating with your boss , especially for sensitive matters. Instead treat your boss to coffee/tea/beer and bring up whatever is bugging you. The worst thing you can do it to involve a third party.

<comment><USER3> We absolutely believe that the _best way_ to resolve an issue is to communicate face-to-face with your boss. The problem is that there are many reasons why someone doesn't feel comfortable in doing so. Thus, we've created this outlet as a starting place. Also, while this tool might not be for you, I don't think that invalidates the idea. Might others not share your confidence in addressing any issue with their boss?

One outcome we'd like to see from this tool is for conversations that begin anonymously to end in person. In other words, that we're helping initially build the trust to bring employee and manager together in person.

We have a feedback mechanism for both sides of the conversation to indicate whether - as a result of the conversation - the issue has been resolved, worsened or improved. We'd like to see a lot of "resolved."

<comment><USER5> As I mentioned in my previous comment, it would be great to give some advice on how best to give feedback and have conversations in person. Any plans for that sort of thing?

<comment><USER3> Yes, absolutely. Apologies: missed the previous comment. A guide is a good start and we'd like to possibly take it further to help guide the conversation productively. It's early days for us (just launched on Monday) so please check-in with us from time to time.

<comment><USER5> Excellent, glad to here it, thanks.

</comment></comment></comment></comment></comment><comment><USER22> If employees have to resort to anonymous feedback, something's broken. A good use for this website is for companies to monitor any traffic coming from this domain, and treat it as a red flag.

<comment><USER3> You're probably right about things being broken. The whole point of this site is to help fix them.

</comment></comment><comment><USER23> Nice try, my boss.

</comment><comment><USER24> Find a better job. The job market for tech people is booming.</comment>


Essential workers to get free college under new Whitmer plan - <AUTHOR> https://www.freep.com/story/news/education/2020/04/29/essential-workers-free-college-whitmer-coronavirus/3048260001/ <comment><USER2> Maybe it'd be better to just pay them a fair wage and let them go to the public library if they want to learn.

College shouldn't be a magical gateway to a fair wage, it should be where you go to study a specific subject.

<comment><USER3> In this world, the degree is necessary for many better paid jobs. Essential workers jobs are jobs those people will be happy to leave for another. I agree they should be paid more for risk they take and to compensate for them needing to isolate themselves from older relatives.

Besides, on your own, you will get demotivated and lonely fast, you will have no idea what is worth learning and what is not worth learning alone in that library.

<comment><USER2> > In this world, the degree is necessary for many better paid jobs.

Yes hence my suggestion that change

> on your own, you will get demotivated and lonely fast, you will have no idea > what is worth learning and what is not worth learning alone in that library.

I have been my most productive absent external requirements, maybe you struggle with motivation but that's anecdotal.

And libraries have librarians who can aid you in setting up a self study regimen.

Many of them have an expertise in another area from their ba/bs.

</comment></comment></comment><comment><USER4> More proof that the so-called crisis is actually just a communist power consolidation.</comment>


Dyson Is the Apple of Appliances - <AUTHOR> https://www.nytimes.com/2017/04/02/technology/dyson-british-consumer-electronics-company.html <comment><USER2> Previously:

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


Ask HN: Feedback on my JavaScript library? Suggestions for improvements? - <AUTHOR> http://jtypes.com/

<comment><USER3> OK just a couple of points from a very personal perspective.

You would appear to have done a lot of work to solve a perceived problem; but it is not a problem that I recognise. I have some understanding of scope in JavaScript and I am content with the way objects are organised within the language - well more than content I love it.

On the tone of your web page. It might be a mistake. Implying some sort of superiority for developers who hanker for such keywords as virtual, abstract, override or private is hardly going to endear your project to folks that probably have quite a lot of experience using JavaScript. Sure the terms abound in (generally) compiled languages and jolly useful they are too - <USER2> their place.

However good luck with your project.</comment>


Hak5 Packet Squirrel – a pocket sized man-in-the-middle - <AUTHOR> https://www.hak5.org/gear/packet-squirrel <comment><AUTHOR> There's also a short YouTube video trailer about its functions: [https://www.youtube.com/watch?v=R0xEnIXCl2g](https://www.youtube.com/watch?v=R0xEnIXCl2g)</comment>


Google Translator Tookit - supports 47 languages - <AUTHOR> http://translate.google.com/toolkit

<comment><AUTHOR> Google blog post about it here: [http://googleblog.blogspot.com/2009/06/translating-worlds- in...](http://googleblog.blogspot.com/2009/06/translating-worlds-information- with.html)

</comment><comment><AUTHOR> I just dumped in a text file of error messages from a translation table and had my Spanish speaking wife double check it - works well.</comment>


Ask HN: Best advice for Non-Programmers - <AUTHOR> For those who have never programmed before, what is the one thing you wish they knew before starting out learning programming ? <comment><USER2> Doesn't this question apply to everyone, because at one point everyone was a "non-programmer"?

I think the most important thing to remember as someone developing their own internal models, is not to get caught up in agonising over tooling vs actually making things.

Lot's of new programmers ask questions like what language should I LEARN, instead of asking things like how do I build X.</comment>


Ask HN: What are the best tools to implement Pirate Metrics? - <AUTHOR>

My website (and service) is finally built, and I'm readying to let my subscribers know about it. Before that, I'd like to set up the metrics.<p>I hear Google Analytics or Totango are good. Is there anything I should be using before launch? <comment><USER2> Google Analytics works right out of the box, but is also powerful enough for more advanced set-ups. I consult on GA setups, so if you need any help just reach out (contact info in profile).

</comment><comment><USER3> Mixpanel and it's free! [https://mixpanel.com/](https://mixpanel.com/)

<comment><AUTHOR> I know this sounds silly, but once people are on my site, how can I modify it without disrupting the service? (it's all php/js/html)

<comment><USER3> Mixpanel should handle that. I would also look into using Optimizely if you plan on testing a lot.

<comment><AUTHOR> I meant, the actual code. Right now, I'm modifying the source directly because nobody is on the site. And I just refresh the page to see the changes.

I'm guessing I should put a copy of my code somewhere else , test there, and then upload the changes when I'm donE?

<comment><USER3> I see now. Yeah I am not sure about that one myself.</comment></comment></comment></comment></comment>


Apply HN: Webminal – Practise Linux from Your Windows Machine - <AUTHOR> www.webminal.org
We help new Linux users to practice and learn Linux without using any additional software's on their machine.
Non-adventurous Windows users want to switch to Linux without leaving their
comfort zone. They like to learn and most importantly practice Linux commands before deciding to install Virtual machine or real Linux distribution.
We served/helped more than 25,000 users to Learn Linux command-line,MySQL and
Sed, Awk using only their browsers.
For advanced users, we provide cloud-based platform for very small fee to master their administration skills. <comment><USER2> Hi there. You must extend your service beyond practising Linux CLI because Windows 10 got Ubuntu already built-in. There is no value proposition anymore. All hope is not lost though.

I see that you already offer learning other stuff like MySQL via browser. But it needs to have more varieties. Maybe something like practising editing Nginx config file via browser and seeing the result straight away.

<comment><AUTHOR> Thanks for the feedback. Yes, we are also wondering about "Bash on Ubuntu on Windows" news.

We have provide "Apache Vhosts" configuration via browser along with open- stack and others ([http://webminal.org/flexi/](http://webminal.org/flexi/)). We will include Nginx pretty soon. thanks again for valuable comments.</comment></comment>


Nasa photographs rectangular iceberg - <AUTHOR> https://www.bbc.co.uk/news/science-environment-45953252 <comment><USER2> Not that it's particularly interesting, but I also took a photo of a rectangular iceberg:

[https://imgur.com/a/XNWz0IO](https://imgur.com/a/XNWz0IO)

I bet with some cropping or from a different angle it could be made to look as rectangular as the one in the photo.

This was taken off the east coast of Greenland in a helicopter. It's kind of hard to get an idea of scale, but it's rather enormous. 20x bigger than the typical "big ice"

<comment><USER3> By the way, "cropping" as you used it could mean either of two things.

</comment></comment><comment><USER4> > It's difficult to tell exactly how big the iceberg is from the photo, but > experts said it was probably more than 1.6km (1 mile) across.

This is mind-blowing. I'm trying to picture the scale of that thing, and realized a small plane could probably safely land on top of it with much room to spare.

<comment><USER5> Not just a small plane. Even an Airbus A320 could handle a mile-long runway.

</comment></comment><comment><USER6> My God, it's full of stars!

</comment><comment><USER7> The people running our sim are getting lazy.

<comment><USER8> Well played.

</comment></comment><comment><USER9> I saw this the other day that may be even stranger than this rectangular iceberg, which is pretty weird too btw.

[https://www.express.co.uk/news/weird/1016610/weird-news- yout...](https://www.express.co.uk/news/weird/1016610/weird-news-youtube- alien-bunker-Antarctica-secret-military-base)

<comment><USER10> Before anyone clicks the bait:

> What is this TWO KILOMETRE long secret city unearthed by melting ice in > Antarctica? > A TWO kilometre long series of 22 sinister-looking structures > have been revealed by thawing ice in Antarctica - prompting claims the > installation is a World War 3 fall out shelter for the global elite or even > a landing pad for incoming aliens.

'Discovered' on Google Earth. My bet is on simple data processing artifacts.</comment></comment>


Unidentifiable wolf-like creature killed in Montana - <AUTHOR> https://www.washingtonpost.com/news/animalia/wp/2018/05/25/a-wolflike-creature-was-stalking-livestock-in-montana-authorities-have-no-idea-what-it-is/ <comment><USER2> Also interesting is the big cat theory in Australia [http://www.heraldsun.com.au/leader/outer-east/big-black- cat-...](http://www.heraldsun.com.au/leader/outer-east/big-black-cat-mystery- continues-as-kalista-couple-spot-a-pair-near-toolangi/news- story/4fd2a52cb00456819964a0e861c5dceb)

Driving down gippsland, where they are usually sighted, my friend and I saw a huge cat run across the car. I looked up the internet and came across these theories.

The next day I bought a dashcam for my car but never saw anything like this ever

</comment><comment><USER3> Ok, run a tissue extraction --> COI pcr --> sequence --> BLAST and get back to us. This would take like a day to solve.

</comment><comment><USER4> TL;DR dog and wolf interbred, offspring interbred further, which led to strange results? Doesn't seem particularly newsworthy.</comment>


Hacking statistics with R - <AUTHOR> http://www.r-exercises.com/2017/07/08/hacking-statistics-exercises-part-2/ <comment><USER2> >"Load this dataset and use the t.test() function to compute the confidence interval of the mean for both variables with a level of 95%. Does those random variables seems to follow distributions who have the same means?

We see that the confidence intervals doesn't overlap. This is an indication that the real value of the mean of the first variable is not in the same interval as the distribution mean of the second variable. As a consequence, we can safely suppose than both mean are different and that they don't have the same probability distribution."

The width of a confidence interval is an arbitrary choice, just because two fail to overlap doesn't tell you anything. You can see this very easily using R:

      x      = rnorm(1000)
      levels = seq(.5, .99, by = .01)
      ci     = matrix(nrow = length(levels), ncol = 2)

      for(i in 1:length(levels)){
    	  ci[i,] = t.test(x, conf.level = levels[i])$conf.int
      }

      plot(levels, apply(ci, 1, diff), xlab = "Conf Level", ylab = "Interval width")</comment>


Intel Xeon processors coming to a laptop near you - <AUTHOR> http://www.engadget.com/2015/08/08/intel-xeon-for-laptops/

<comment><USER2> About time, although I think they mean "Fall 2016"</comment>


L - the Little Language on Top of Tcl/Tk - <AUTHOR> http://www.bitmover.com/lm/L.html

<comment><USER2> Wow, someone noticed it :)

If you're in a mood to give feedback what we're looking for are suggestions that make it easier to review the code without making it really unpleasant to write the code.

Here's an example of where we're borderline too pedantic (the whole class_method(instance) instead of instance->method() )

class wtf { instance { public int x, y; }

            constructor wtf_new()
            {
                    self->x = self->y = 0;
            }

            public void wtf_incboth(wtf self)
            {
                    printf("%d,%d\n", ++self->x, ++self->y);
            }

}

void main(void) { wtf huh = wtf_new();

            wtf_incboth(huh);
            wtf_incboth(huh);
    }

<comment><AUTHOR> Maybe I'm missing something but why not just:

        struct wtf { int x, y; }

        inc_both( wtf& t ) { ++t->x; ++t->y; }

        main() {
            r := wtf(); // x, y by default 0, string when exists, empty
            inc_both( r );
            inc_both( r );
        }

If you want to keep it C-like, don't do all that public/private things, keep implicit creation of the struct etc.

        main() {
             r := wtf( 22, 33 ); // assigns to x and y
        }

Do you really need to hide variables or make real inheritance in a simple language? "Information hiding" is overvalued and actually rarely really needed on the single class level -- you have to care only about interfaces. Which are probably going to remain too clumsy as long as you use header files (in my humble opinion, I always liked Turbo Pascal (and Modula) modules, more recently Go also manages to avoid headers).

void for return type was needed in ANSI C only because omitting it would mean int in the code written in old K&R. You can make void as default when the return type is not specified and keep the code nicer. Ditto for no parameters. You'll get the slim appearance of K&R C code and the semantic would still be clear to everybody as nobody would assume he's reading K&R C. Or would he in your case, even with strings etc?

Btw C++ since recently has

        auto n = 1; // int
        auto s = "abc"; // char ptr

but IMHO Limbo idea is clearer and wouldn't introduce any problems (it's really easy to add the new operators for "declare and assign" and the semantic is obvious):

         n := 1;
         s := "abc";

And I thing I would also allow omitting ; before }.

<comment><USER2> On the class thing, I bowed to pressure to have some sort of classes. And I can see how we'll use them in our guis, each gui will be a class and we can safely combine them in an uber gui w/o name space conflicts.

Could have just as easily been modules (all this crud is built on top of tcl namespaces, it's just syntactic sugar to make things look nice).

We are not doing inheritance of any sort. L is not trying to be cool, it's trying to be useful and easy to review.

On that note, the

           n := 1;

is shorter than

          int n = 1;

but which one reviews faster? My opinion, which matters a lot in this tiny instance, is the second one reads faster, especially when you consider we flip from C to L to tcl to shell. We're optimizing for the reader, not for the writer. Much bigger win in our code-review heavy environment.

<comment><AUTHOR> > L is not trying to be cool, it's trying to be useful and easy to review.

I appreciate that, but your compiler checks the types anyway, so later n .= "abc" will be an error if I understand it, that's why you have them, so if the code you review compiles without error you certainly won't catch any new error when using eyes?

<comment><USER2> The types help enormously, but so does being slightly verbose.

Lots of "reviews" happen in diffs. Much like Linus reads patches and modifies the patches because he knows the source base, we read commit messages (which are a patch) and the first review frequently happens in email.

Which doesn't address your point, I realize. Let's try this. Given the choice between make life better for the writer (n := 1 is shorter) and the reader (int n = 1 is more explicit), we pick the reader _every_ time. We have multiple readers and we work in multiple languages. So while you are absolutely right, n := 1 is just fine, and it is type checked and it is "obvious", it will hiccup anyone coming from C (and is about to switch back to C after this review).

We review _everything_. And the review is just part of it, when a support call comes in we're in the source, looking at the code, trying to make the customer happy with an instant fix (which we do a lot). Every second that we have to spend swapping in tcl syntax is time where the customer is going "why am I paying for this when I could use git for free?". And a few second later they find out when get them a fix.

Time matters. Ease of reading yields shorter time on support and shorter time on reviews.

That's my take, and that's how it works here. That may not be true for you.

</comment></comment></comment></comment></comment><comment><AUTHOR> Interesting idea, still a bit "stiff" for my taste. I'd allow a few more "modern" tricks but still keep it mostly "C-like" (because it's obvious its main goal was to be immediately readable and editable without the surprises to the C programmers). For example,

      n := 1;
      s := "abc";

like in Go (and Limbo) as an allowed replacement for

      int n = 1;
      string s = "abc";

And then the same would function in the for loop:

       for ( i := 0; i < 10; i++ ) {
       }

(I'd also rather write:

      struct dirstats {
         int files, size, total_files, total_size;
      }

than in four rows member by member.)

</comment><comment><USER3> Might be a bit late for this, but it's a real bitch to google help for a programming language with a name like 'L'.

That's what I learned from 'R' anyways.

<comment><USER2> Yeah, I know. I'm horrible with names, I named a product BitKeeper and the company BitMover and people ask when the next version of BitMover is going to be released.

We're looking for a fantastic jack-of-all-trades marketing person, can you tell? We frigging need it, if I'm the best we've got we're screwed :)</comment></comment>


Show HN: Advertise for free. $0 CPM. $0 CPC - <AUTHOR> http://adtree.io <comment><USER2> I understood the value of LinkExchange in the geocities Era - everyone was online because you "had to be" but there were no clear monetization strategies. With page impressions as sole KPI it didn't hurt to get a few more by joining some ad-ring-system.

Nowadays the line between publishers (many impressions, put stuff online and monetize via ads) and advertisers (fewer impressions, everyone monetizing in some other way, no matter if they actually use online ads or not) seems quite clear cut. So not really seeing who would use this tbh.

Good luck with your project though!

</comment><comment><USER3> I'll give it a shot. but I'm just not sure what size of ads I'm supposed to upload. Also, when I go to upload it, it assumes I have the precise ad size.

</comment><comment><USER4> "Worlds First"? There was something like this back in the early 2000's. In- fact I think there is a whole bunch of them.

</comment><comment><USER5> Millennials had invented banner exchange network.

</comment><comment><USER6> Good luck, webrings need a comeback :)

Two minor quick landing page fixes:

\- you have a horizontal scrollbar

\- text selection is blocked which is very user hostile

</comment><comment><USER7> How is this supposed to work?

What decides how often my ad is shown?

Who pays the ad reviewers and the infrastructure?

<comment><AUTHOR> 1.You upload your ad and it's shown on other Adtree users' websites.

2\. Your ad is shown as often as possible on only relevant websites.

3\. Right now, I do. With enough users the network could be monetized by charging monthly to advertise (without having to place an ad on your own site).

<comment><USER8> Could you define "only relevant", please. I would not think of advertising mine on competitor vice-versa

</comment></comment></comment><comment><USER9> Just signed up but apparently you need a hundred visits per day to qualify. If I had that sort of traffic, I would just go with adsense ...

</comment><comment><USER10> Basically this is like link sharing I guess ?

<comment><AUTHOR> Yea you could think of it that way.

<comment><USER11> Reminds me of [https://en.wikipedia.org/wiki/LinkExchange](https://en.wikipedia.org/wiki/LinkExchange)

Could work really well. All the best

</comment></comment></comment><comment><USER12> What's old is new again :)</comment>


The One Method I've Used to Eliminate Bad Tech Hires - <AUTHOR> https://mattermark.com/the-one-method-ive-used-to-eliminate-bad-tech-hires/ <comment><USER2> This has been submitted and discussed several times in the past, but they are all old enough that discussions are closed.

If you want to read the previous discussions then simply click the "past" link and go for it - I'll not put the list here.

 _Added in edit: Reading some of those previous discussions has been ... (significant pause) ... interesting. There are some interesting differences of opinion ..._</comment>


The ever-winning lottery ticket: Mathematicians solve a dusty mystery - <AUTHOR> https://www.sciencedaily.com/releases/2019/09/190909104534.htm <comment><AUTHOR> question 2: how does science communication about math works?

the article is clearly a press release from the university were the result was found. it has a very catchy title, while the linked research is more dry. you can find many articles around "popularizing" this press release, yet the understanding of it seems limited, in particular:

* no explanation on how the infinite lottery works is found * if one reads the research article, the result is stated with respect to a specific set theoretic assumption and so it is not really (as it happens for some mathematical facts) an "absolute" result. one should say, assuming ramsey hypothesis, one can prove that no infinite lottery ticket exist (while the axiom of choice would imply that they do exits...)

</comment><comment><AUTHOR> question 1: how does this infinite lottery works?

not clear from this piece nor from the original article, which I was able to find on arxiv, and where the infinite lottery is never mentioned (the results is stated in terms of moern set theory):

[https://arxiv.org/pdf/1904.05824.pdf](https://arxiv.org/pdf/1904.05824.pdf)</comment>


Tesla Annual Shareholders' Meeting - <AUTHOR> https://www.youtube.com/watch?v=Va5i42D13cI <comment><USER2> He's still claiming that current model Teslas (with just a computer upgrade) will be autonomous-ready pending regulatory approval. I'm not sure if Elon keeps doubling down on this for shareholders or actually believes it.</comment>


YouTube and Instagram face Russian bans - <AUTHOR> http://www.bbc.com/news/technology-43058399 <comment><USER2> Noooo thats like half of the good funny content on Instagram!</comment>