Ask HN: What ads network are you using? - <AUTHOR> Every ads network looks so shady or obsolete, I can't find one that I like.
I've tried
- Google Adsense
- Exoclick (Really modern, well done, but I earn 50% less then with Adsense..)
- Clicksor, I was just accepted, But have no idea if it's good, the UI seems so old and not user-friendly..
What do you use ? Do you recommand a solution ? <comment><USER2> Assume you're looking for web/mobile web app? I have a similar issue with being declined by Adsense for a non-content (app type) site. I'm not earning huge amounts, but over the last 3 months I've been using the following display networks, all are CPM based (not CPC) and not content/contextual driven:

\- Amazon CPM. Pretty good, guaranteed CPM, with an average but consistent fill rate. Mostly remarketing of Amazon basket/viewing with a few good quality advertisers as well. They don't have great payment terms though (2 months+), limited ad sizes and limited payment options (I'm based in UK, and they offer USD check by mail payments only).

\- Sovrn (mobile/desktop). Been great so far, but haven't been through a payment cycle yet.

\- Facebook Audience Network (mobile only). Very variable fill rate and CPM. Ads are generally for mobile app install.

\- Adversal (mobile/desktop). Not great quality ads and low CPM, but 100% fill so only use as remnant ads.

I only use these networks for 300x250 on desktop/tablets and 320x50 mobile banners at the moment, but Sovrn and Facebook also offer Native ads, which I might change over to in the near future (higher CPM than banners).

All of the above except Adversal support passbacks, so you can waterfall ads to help with the low fill rates. I use DFP for Small Business to handle this, but it could easily be setup manually after testing each network.

Others:

\- Airpush (mobile web). I used to get pretty good CPM for mobile web ads, but stopped using them as was getting some very poor/nefarious ads (click hijacking and malware). They may have sorted out the issues now.

\- BuySellAds. Need to do a bit more work to improve my sites ad placements, so haven't used them yet. I believe it's a bit more hands on than an ad network, but would look at these.

<comment><AUTHOR> Thank you for your feedback !

</comment></comment><comment><USER3> I've seen Clicksor recommended in advertising circles as a source of cheap traffic. However that doesn't rule out good earnings for high quality publishers. No experience with them myself, but contextual ad networks have been among the highest converting traffic sources for me in the past. I'd say it's worth a shot.

Just curious, why don't you like AdSense? I've heard that it's pretty hard to beat on the publisher side.

<comment><USER3> Oh also, you might want to see if anyone is consistently showing their ads on your placements through the networks. You can reach out to them to see if they're interested in a direct buy. It could turn out great if the advertiser has truly found a match for your audience and the only problem is getting more clicks. By cutting out the noise (a.k.a. all of the other advertisers who don't know the true value of your traffic) you'll increase your effective EPC, so you'd be able to demand more for a week/month long placement than you currently get from networks while keeping the advertiser profitable as well.

</comment></comment><comment><USER4> MopPub, AdMob - on overall they give more money than PPC networks on the web. Downside - the mobile is squirming with cheating/clickfrauding publishers, if you get banned or suspended it is "guilty until proven innocent"

</comment><comment><USER5> Have you thought about either selling ads directly to businesses, or selling your own products? You'll get a bigger slice of the pie that way.

<comment><USER6> We do this with Facebook ads for SMBs. It works.</comment></comment>


ASK HN: What do you do to make your users feel safe on your site? - <AUTHOR>

I have a closed beta service and we just released a prototype to get user feedback.On our site we allow users to use their gmail/hotmail/yahoo accounts to authenticate themselves. As far as implementation is concerned we take all the precaution to make this login safe. We use SSL, do not record any passwords or users etc.. in short we are legit. However, users still seem to be hesitant to provide their password and username to a small service like ours. Market penetration of OpenID and tools like ClickPass is so limited that those words on our site don't do any good either.<p>How can I make users trust my site? <comment><USER2> As for contacts and the address book: \+ <http://code.google.com/apis/contacts/>

\+ <http://developer.yahoo.com/addressbook/>

\+ <http://msdn.microsoft.com/en-us/library/bb463989.aspx>

Stop using the password anti-pattern (<http://adactio.com/journal/1357>)

Facebook has a nice auth flow that <http://www.billmonk.com> uses. I'd suggest that.

Oh, and hire a visual designer. A strong visual design goes a lot farther than any copy or lock icons ever will.

</comment><comment><USER3> I rarely give my password out in that way, and only ever if it's a well-known service. It's foolish to do; that implies that it's foolish to require.

</comment><comment><USER4> Why not allow them to create an account without giving you that information? Then they can get into the app and see that it's legit.

Also, user testimonials might go a long way towards building some trust.

<comment><AUTHOR> actually current implementation is nothing but a simple videomail service. We want to really streamline the process and take away all unnecessary steps. Asking users to create an account just to send a videomail seems to be unnecessary.

</comment></comment><comment><USER5> Google lets users log into other sites with their Google Account, there's an API for that. So just use the service that's already available; then the users don't have to trust you.

ClickPass bottles this all up into one convenient service, so why not use that?

<comment><AUTHOR> Yes we tried that too. However, people just don't know ClickPass or even never heard about OpenID. It doesn't make them feel any safer

</comment></comment><comment><USER6> Only a fool would give away personal info like that.

Most social sites trick you into giving away that info when you sign up in order to spam everybody in your contact list.

I really don't know how Mint (financial) can get away with such sensitive banking information. Beats me.

<comment><USER7> yeah same here, I think it has to do with most people being completely gullible when it comes to the web. Which explains why you get hundreds of nigerian scam email per month

</comment></comment><comment><USER8> Put a little yellow lock icon somewhere on the screen. I used to know a sleezy internet marketer who swore that it makes people trust you.

</comment><comment><USER9> Use OAuth. Redirect user's to google or yahoo's site.

</comment><comment><USER10> We put a detailed explanation on our wiki in layman's terms about how we only store hashed versions of your passwords--so that even if our systems were compromised, your data would stay safe. If you stress transparency, then the users who care enough to go looking will find that reassurance.

<comment><USER5> But he's not storing hashed versions; he's taking their gmail password and using it to try to log in to gmail. Users _should_ worry about this, because it's a bad idea.

</comment></comment><comment><USER11> [http://www.thetruthaboutcars.com/the-psychology-of- cupholder...](http://www.thetruthaboutcars.com/the-psychology-of-cupholders/)

</comment><comment><USER12> There's nothing you could do that would make me give you my Google password.

</comment><comment><USER13> Use SSL for every page.

</comment><comment><USER14> Don't try to. Users shouldn't give out passwords like that to anyone.

</comment><comment><USER15> You can't. And don't use market penetration of OpenID or ClickPass as an excuse. It's the old chicken and egg problem.

"People don't use it yet, so I won't implement it!" "People aren't using it because no-one is implementing it!"

And like hell I am giving the passwords to any of my mail accounts or anything, TO ANYONE.

Just implement OpenID and ClickPass and use APIs and such.

<comment><USER12> It's not an excuse. If it's not one of your business goals to make OpenID successful, there's no reason you should expend any effort to help the projects out. Nothing obligates you to pioneer new technologies. The pioneers sometimes get eaten by bears.

<comment><USER15> And then you shouldn't expect people to give you their usernames and passwords either.

Because that, frankly, is just fucking retarded.</comment></comment></comment>


Who Was the Real St. Patrick? - <AUTHOR> https://www.spectator.co.uk/2019/03/who-was-the-real-st-patrick-an-evangelist-or-a-tax-dodger/ <comment><USER2> I'm Catholic, but my kids take classes once a week at a school run by an Evangelical church.

I was surprised last March that one of the teachers gave a talk to the kids about how St. Patrick was not a Catholic.

I had never before heard such a suggestion, but apparently it's a sore point with some Evangelicals.

In case it interests you, Jimmy Akin, a Catholic apologist, presents some evidence here that strongly suggests that Patrick was in communion with Rome: [http://jimmyakin.com/was-st-patrick-catholic](http://jimmyakin.com/was-st- patrick-catholic)

<comment><USER3> Well, to be fair, at that time there was no real contention between the Roman and Celtic churches, and I have not seen any evidence that they considered each other outside of one another's communions.

The idea of "Roman" Christianity had not taken hold until Gregory the Great, and especially his successor, Sabinius, who formally accepted the supremacy over all the bishops.

The conflict between the Celtic and Roman churches came later under Augustine of Canterbury, who required the Celtic churches to adopt the Roman rite, abandon their old Italic Bible translations, and adopt the Vulgate. That stirred up quite a kerfuffle.

</comment></comment><comment><USER4> If you want to read Patrick in his own words check out 'the Confessio': [https://www.confessio.ie/#](https://www.confessio.ie/#)

It's based on the different manuscript copies of the Confessio and the Epistola (or Letter) to Coroticus, both of which are acknowledged as being written by the man himself.

</comment><comment><USER5> There's always the famous joke about Erwin Schrödinger (who lived the last part of his life in Ireland) and the mathematician/revolutionary Éamon de Valera proving that there were two St. Patricks and no God.</comment>


Ask HN: price of latency - <AUTHOR> Hi guys,
how important it is, for a website which is kinda "Internet-banking", to be hosted near its users?
I'm asking this because hosting a webapp on my country (Brazil) vs Linode (which is by no way cheap) seems to be about 3x more expensive. <comment><USER2> It depends entirely on your competitors, the importance of speed to your users and the costs involved.

If your users are doing any click and trade type stuff or buying and selling products where prices fluctuate over the course of seconds then latency will be a very big issue for them.

If on the other hand users are just generally logging in, checking stuff, making payments etc. then latency becomes less of an issue.

As a general rule of thumb, make sure that your page shouldn't take more than a few seconds to load on a DSL connection. Any more than 5 seconds and you're going to get frustrated users. You can help by using CDNs to cache static content and making sure your pages are served compressed.</comment>


Stupid Programmer Tricks and Star Wars GIFs - <AUTHOR> http://rarlindseysmash.com/posts/stupid-programmer-tricks-and-star-wars-gifs <comment><USER2> I would suggest ffmpeg as an alternative -- it peels, it slices and it dices. It will definitely convert a range of a video file to gif while adding subtitles, and you won't have to frankenstein things together..

<comment><USER3> Totally agree, although the author's use of vlc definitely qualifies as a clever hack.

I want more hackers to realize how insanely easy it is to programmatically generate video with ffmpeg. Just write a program that dumps raw RGB frames to stdout! You can turn that into any video format conceivable, including gif.

Here's a little demo I wrote. Generates a video of the Mandelbrot set coming into focus:

[https://github.com/acg/generating-video- demo](https://github.com/acg/generating-video-demo)

Example gif:

[http://imgur.com/RiqEHJJ](http://imgur.com/RiqEHJJ)

<comment><USER4> Interesting! At work I hacked together a video writer that compiles still frames to a movie using OpenCV. But it is _slow_ \--ungodly slow. I'll have to check out ffmpeg!

<comment><USER3> Try this:

        ffmpeg -i frame%04d.png -vcodec mjpeg -sameq test.avi

<comment><USER5> If I wanted to strip the audio into a big wav or mp3 file, how would that be done?

<comment><USER6> Something like this probably works:

        ffmpeg -i myvideo.mkv -vn -acodec ogg myvid_sans_video.ogg

<comment><USER7> Or even just

        ffmpeg -i myvideo.mkv myaudio.mp3

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> THIS.

Remember when you first discovered programming? When you did all those little projects that were, honestly, fairly useless, but brought you the spine- tingling sensation of having power over your domain?

Remember how when you started programming professionally, and you quit those projects? Why did that need to happen?

Bravo Lindsey, never stop making cool things.

(YMMV. I'm assuming of course that you learned programming as a hobby--if you learned by taking a college course then _gasp_ you might have skipped the pointless-project phase __entirely __. I suggest you get on top of that.)

<comment><USER9> > Remember how when you started programming professionally, and you quit those > projects? Why did that need to happen?

It didn't, I now get to spend 8+ hours a day working on things that matter, things that get me paid, thinks that make my customers (and their customers) happy, things that I see people use daily on their phone on my way to my next assignment.

Just because I work for a boss - and no, not some cool startup in the Valley - doesn't mean I don't do cool projects anymore.

(My pointless project phase was amongst others a scraper for InvisionFree forums, they would charge hundreds of dollars to get a copy of the database of a <50.000 post forum - and ours was over half a million posts big)

</comment></comment><comment><USER10> Very, very cool. I love the approach, especially the interface that ties it all together! Nice trick to use subtitle files to grab the right bit of video automatically, too.

If anyone is thinking of doing something similar, or just wants to script some video in some way, I can _highly_ recommend AviSynth. It fits into the extremely flexible DirectShow pipeline and has earned a permanent place in my video editing toolchain (I use it as the frameserver for encoding DVDs).

Here's an example script (if you have AviSynth installed and create a file with these contents named hello.avs, you can open it in any media player you choose to see the results):

        BlankClip()
        Subtitle("Hello, world!")

</comment><comment><USER11> Take this approach and apply it with CSS, a web framework, and a DB and you can go quite far in the .com game. You'll run into problems if you get popular, but that's a good problem to have.

<comment><USER9> And yet, you won't - it mostly depends, I think, where your video comes from. gifsoup (iirc) will scrape a youtube video and turn it into a .gif. There's probably quite a few youtube-to-gif services out there, come to think of it.

It'll be a problem if you use the original star wars video in one way or another though. I think. Depends on whether it can be considered fair use or not.

</comment></comment><comment><AUTHOR> This is what I call a great hack.

<comment><USER12> Seconded!

<comment><USER13> yep. Brilliant hack.

</comment></comment></comment><comment><USER14> Assuming a random distribution of quotes from the twitter stream, and assuming there isn't any control on repeats, how long can we expect to be able to recreate the movies (well, the portions with dialog) in gif form?

<comment><USER15> That would be the Coupon collector's problem [1]. Roughly, you should expect to go through O(n log n) quotes before you have seen them all.

[1] [http://en.wikipedia.org/wiki/Coupon_collector's_problem](http://en.wikipedia.org/wiki/Coupon_collector's_problem)

<comment><USER14> Awesome link, thanks! I love learning when stuff like this has a name.

</comment></comment></comment><comment><USER16> Neat. For the hell of it, I wanted to see how the same could be done with ffmpeg, so here's what I got in ~20 minutes:

[https://gist.github.com/akx/7217852](https://gist.github.com/akx/7217852)

(You could add a `-vf ass=my_subtitle_file.ass` to the ffmpeg command line burn subtitles into the gif.)

<comment><USER17> Not being good at ffmpeg, if I were to run it on a file with subtitles in the file (The most recent episode of an Anime for example), would it burn the subtitles in?

<comment><USER16> Yes, it would. -vf are video filters, ie. they affect the output video stream.

EDIT: Misread your question, but yeah, I think you can make -vf ass read the ASS file from the (MKV, I assume?) file itself.

</comment></comment></comment><comment><USER18> The subtitles files you can find online are formatted with timestamps to allow the video player to sync the text with the video, so for this purpose it makes perfect sense. Maybe set top boxes could make use of subtitles to allow users to search for a certain point in a video.

</comment><comment><USER19> I did something similar ([http://markolson.github.io/storyboard/](http://markolson.github.io/storyboard/)) earlier this year using ffmpeg and ImageMagick to generate either GIFs around lines of dialog (like this project), or PDFs where each page is a frame of text or a new scene. Optimizing GIFs is _by far_ the least enjoyable part.

<comment><USER20> Damn you I was going to come post your storyboard. :(

</comment></comment><comment><USER21> The prevalence of the animated GIF is an eloquent statement about the current video encoding mess. While the typical small video clip today, encoded in a fancy new standard, is orders of magnitudes smaller that the JS+CSS+HTML site containing it, we use GIFs because nobody has any idea who is able to see the content is using a modern endoder.

</comment><comment><USER22> Was really informative to read. I am a novice in every programming aspect, as I am formally a product (or content) manager.

But using python as my tool for answering my bosses questions with data, I really enjoy reading posts like these, giving me ideas to learn and try new things.

Thanks a lot for that!

</comment><comment><USER23> This is awesome! I had no idea that you could programmatically do this (I still consider myself a novice even though I've been professionally coding for two years). Very, very cool!

Now I kinda want to try this.

</comment><comment><USER24> I wonder how hard it would be to introduce a cut detector, so that the (to me) annoying cinematic cuts that are sometimes at the beginning or end of a quote can be trimmed off. I think a simple heuristic of something like "If the frame cuts in the last half-second of the gif, trim off the extra frames" would work well, although I don't know how well a simple detector would work, nor how many quotes have a reaction shot that would get cut off unnecessarily.

</comment><comment><USER25> I also enjoy gifs. I have been creating gifs with VirtualDub so far.

I usually prefer writing scripts to do stuff but VirtualDub is one of the few tools I simply use because I enjoy the open source and hacker spirit behind it.

An interesting plugin I miss for VD is an color reduction algorithm which would help to create very small gifs.

On reddit and tumblr gifs are a growing trend and it might be worth to put some effort into gif creation.

<comment><USER26> If you're going to do serious video editing, it's well worth learning avisynth.

</comment></comment><comment><USER27> Wonder if this could be done for youtube, since it provides its subtitles via an api? [https://developers.google.com/youtube/2.0/developers_guide_p...](https://developers.google.com/youtube/2.0/developers_guide_protocol_captions#Retrieve_Caption_Track)

(and there are a plethora of yt-to-gif sites, so clearly frame capture works)

</comment><comment><USER28> TAAS - Tumblr as a Service.

</comment><comment><USER29> This is brilliant. Now, instead of using random quotes, please take the IMDB quotes and make anigifs of them :)

</comment><comment><USER30> Am the only one who puts animated GIFs in the same category as the blink and marquee tags? Absolutely hate when there is more than one of these attention- seeking horrors on the page.

I've had to stop reading github's blog since they started putting thousands of these abhorrences there and started making it looks like a Buzzfeed page.</comment>


Gilead's update on response to COVID-19 using Remdesivir - <AUTHOR> https://www.gilead.com/purpose/advancing-global-health/covid-19 <comment><USER2> If approved for treatment, I hope this is fairly priced, given that the CDC predicts 40M infections in the US.

Just to be clear, pricing ultimately comes down to insurance companies, middlemen taking a cut, and a government mandate that can pressure the ecosystem into acting in the public interest in times of a pandemic. So please make a reasonable profit to continue developing treatments, but DON'T get greedy, especially applies to insurance companies and middlemen whose entire role is financial engineering adding next to nothing in value

<comment><USER3> Or that some governments apply an eminent-domain like approach, and start manufacturing a generic version. This is not the time for Gilead, or any other company, to make a buck out of a world-wide emergency.

<comment><USER2> I'd rather have a sustainable Gilead, with a strong moral compass that prices things fairly, to invent the next antiviral.

But the middlemem and insurance companies add ZERO value - invent nothing, treat/cure no one. They're just a leech in the system, and they definitely shouldn't profit from a pandemic

<comment><USER3> Sure, that sounds nice, but corporations with a strong moral compass (and pharma ones, at that), are not exactly commonplace.</comment></comment></comment></comment>


Linux Sucks 2020 - <AUTHOR> https://lbry.tv/@Lunduke:e/LinuxSucks2020:b <comment><USER2> Guys, looking through the comments, I am afraid you are being way too serious. Bryan Lunduke has been giving Linux Sucks talks at LinuxFest NorthWest for many years; they are intended as humorous and good fun.

<comment><USER3> Didn't he promise a few years ago that he'd stop releasing this video?

<comment><USER4> He'll probably stop once we had a year of Linux on desktop.

</comment></comment></comment><comment><USER5> For others like me who were wondering what the site hosting this video is, it's apparently a peer-to-peer file host with some blockchain thrown in to make it a marketplace. You can read their "About" page here: [https://lbry.com/what](https://lbry.com/what)

(The about page was frustratingly hard to get to, I had to navigate through four pages before I got there.)

<comment><USER6> If you scroll down to the bottom of "modern" web sites the about link is in the footer.

<comment><USER7> Only if it's a good one, the bad ones will just load more content before you're able to click anything in the footer

</comment></comment></comment><comment><USER8> Brian makes me laugh everytime. Although the humorous critics that he do, almost point he raises there is an underlying truth on it. Linux Sucks not entirely, but some parts sucks so hard. I use Linux daily for almost ten years, and oh hell, it's pretty much better than Windows, but there is no way to deny the problems on it.

But Linux is getting better! <3

<comment><USER9> I think Linux is getting worse, but Windows and Mac OS are getting worse faster, so it feels like progress.

<comment><USER8> That is sad and wish it could be a joke. But there are days I think the same... today I cannot not even run zsnes without problems on most of distros (Arch/Ubuntu/Etc). Linux backward compatibility it's so terrible.

<comment><USER10> But this isn't just a Linux problem though. Backwards compatibility sucks on Windows and MacOS too. At least Windows _tries_ to give you some janky backwards compatibility options, with questionable results. MacOS just deprecates API's, drops support for older versions of MacOS and tells their users to go buy new stuff.

<comment><USER11> > But this isn't just a Linux problem though. Backwards compatibility sucks on > Windows and MacOS too.

It sucks a hell of a lot less than Linux's backwards compatibility. Hell, Linux has better compatibility _with Windows software_ than it does its own older software!

<comment><USER10> I've administered Windows networks. Windows backwards compatibility sucks and the fact most Windows legacy software runs better under Wine on a different OS is a testament to that. Almost none of the current OS's are good at backwards compatibility. It's not just a Linux problem. Hell Apple doesn't even try.

<comment><USER11> Yeah, Windows backwards compatibility has been getting worse, but consider the following:

You are given a binary for a GUI application, compiled in 2001. You drop the binary on your system and run it. If it is a Windows application, it has a much better chance of working fine on both Windows _and Linux_ than it does on Linux alone if it is a Linux application!

<comment><USER12> What about if you have the code?

<comment><USER11> Then you still have to get the development environment right, a task so simple it totally isn't a popular usecase for containers (/s), and fix any incompatibilities in the APIs since 2001 and now.

In other words: it's at least as big a pain in the ass as getting the old binary working.

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER13> This is the first Linux Sucks that I have seen and although it's humorous it doesn't seem like satire. The issues he humorously points out are real issues with the Linux desktop today.

I've been saying for a long time that one of the beauties of Linux is that anyone and everyone can do their own thing but that can also be a weakness. You have thousands of incredible talented developers doing their own thing. If you piss off some of the talent on your own projects they'll leave and do their own thing. That's beautiful in a way but it does weaken the Linux desktop as a whole.

A benevolent dictator / vision is counterintuitive to the OSS spirit but it's priceless IMO.

<comment><USER14> That's scary idea.

As a Linux user I am a refugee from Windows. Expat now. They have dictators there, they've got resources, they switch development tools one after another. But somehow they failed. I knew nothing else but I could not stand that anymore.

So I switched and found my promised land, my distribution, my community. That was 12 years ago. I believe each distribution, each application starts from someone with vision. People flock if they like it. Top down approach usually harms - pulse audio and systemd community split still unresolved.

> my view of history says that mistakes made by a leader (or made in a > leader's name) are amplified by the numbers who follow without question.

Frank Herbert on Dune

</comment></comment><comment><USER15> As much as i like lunduke usually, i find it a bit unreflected to just say "we are stupid for banning our founders" without acknowledging anything they might have done wrong. I do agree that the pitchforks approach to public disagreements should not be our (or anybodies) default. But "leave our founders alone" is not a policy I'd personally subscribe too either.

Also vaguely poking fun at therapy as if it was a punishment for something is just plain immature.

</comment><comment><USER16> One of his main complaints is "People who promote Linux, don't run Linux" and he specifically focuses on those who hold Linux-related talks at conferences on devices that don't run Linux on the desktop.

Can you look at [https://www.linuxfoundation.org/membership/members/](https://www.linuxfoundation.org/membership/members/) and easily point out those companies, that have a crucial business stake on Linux on the desktop? I can't.

Most people, who are paid to work on Linux and its surrounding ecosystem, are working for companies that are interested on Linux on servers / the cloud and I don't think that it is fair to criticize them for not joining the idealistic movement of bringing Linux onto more desktops.

<comment><USER17> When you see majority of consultants from the biggest Linux company (that also focuses on desktop Linux) using Macs for their work, you know that Linux on desktops won't happen anytime soon.

</comment></comment><comment><USER18> In my opinion, this list is much much better: [https://itvision.altervista.org/why.linux.is.not.ready.for.t...](https://itvision.altervista.org/why.linux.is.not.ready.for.the.desktop.current.html)

<comment><USER19> What a dose of reality for anyone yearning for Linux desktop to succeed. I use Linux at work and at home because of the configurability and security and because our servers run Linux but I absolutely do not enjoy tinkering around when things don't work. Although I can usually figure out a way or workaround, it's such a waste of time and life is short.

I wouldn't mind paying as much for a Linux distro that just works as I would for Windows 10, or even double. But one can only dream. I've filed and commented on quite a few bugs only to have them ignored. The paid support for Ubuntu has a minimal order size of 10, so it's not really an option especially since I don't know how well it works. I wonder how big the market is for a paid Linux distro that just works.

Given the general user-unfriendliness of Linux desktop, I can see why so many people use Macbooks who work on Linux. Maybe the servers they work on run Linux. Can't really call the individuals 'dumb' though, like what the video does. At most the Linux 'organization' on the whole comprising these individuals, if there's such a thing, is 'dumb'.

<comment><USER18> > I wouldn't mind paying as much for a Linux distro that just works as I would > for Windows 10, or even double. But one can only dream.

Well, noone would stop us from donating that money. I'd personally like a Patreon-like system, if people donate enough they'll get better service, they reach some threshold, someone could be hired. Though it probably has a lot of nuances and would take a few years minimum to have a somewhat working system.

I'd really like to see an experiment like that.

</comment></comment></comment><comment><USER20> About the systemd logo, the weird rewind symbol in brackets, I think it's meant to be the [ OK] that linux (used to) print on boot for every line.

Someone correct me if I'm wrong!

<comment><USER21> Exactly: [https://brand.systemd.io/](https://brand.systemd.io/)

Baffling how he didn't manage to find that on google.

</comment></comment><comment><USER22> Can you all please listen the thing fully before complaining ?

<comment><USER23> No thanks, its getting old, also not fun anymore, every year the same blabla, wanna 'waste' your time? At least do it with that :)

[https://web.mit.edu/~simsong/www/ugh.pdf](https://web.mit.edu/~simsong/www/ugh.pdf)

<comment><USER24> Unix haters handbook is fun stuff. If you're into unix, it deserves a read.

<comment><USER23> YES, absolutely!

</comment></comment></comment></comment><comment><USER25> "Arch users are vegans of the Linux world" \- excellent comparison :)

</comment><comment><USER26> I think was Churchill that said "Linux is the worst form of operating system, except for all the others."

<comment><USER9> ...in the alternative history timeline where Churchill was the communist and Stalin the tory.

<comment><USER27> Churchill as he was would fit right into Linux. It's a combination of love of the old, tried and true with desperate experimentation that would appeal to his nature.

Stalin? Victory at any cost with no thought to the means to reach that end? Hurd? Just saying.

</comment></comment></comment><comment><USER28> Linux devs running Macs is definitely a thing. There are so many pro opensource people running Macs and it just boggles my mind.

Just why?

</comment><comment><USER29> I'm unable to reply to 29athrowaway so I'll post this at the top level:

Regarding backward compatibility (discussed around 32:00 in the video), do solutions like AppImage and Flatpak work for the examples he shows (the three proprietary games that were ported to Linux)?

</comment><comment><USER30> Everything sucks, 2020 edition:

If you use any complex system enough, whether that's hardware based, software based, or people based, you'll eventually get come up against all the pain- points.

Especially if you're tired and / or under time constraints.

<comment><USER29> Sure, nothing is perfect. So what? That doesn't mean his points are invalid.

It's clear the guy isn't just some clueless Linux-hater.

</comment></comment><comment><USER31> I kind of like this guy, as in he is funny. But seeing the previous linux sucks videos as well, I must say that he most definitely don't have a too deep knowledge of linux - and it is kind of mean to call Linux people dumb who advocate for flatpak over appimage, especially that he don't really understand the problem at hand. (though imo nix is the only one solving the problem properly)

</comment><comment><USER3> Linux is not winning on mobile in any shape or form. All mobile vendors use a highly-customized Linux kernel which has nothing to do with mainline and aside from the kernel, there's not much to write home about. So, maybe Bryan could have been a little bit more honest from the get go.

<comment><USER32> > Linux is not winning on mobile in any shape or form. All mobile vendors use > a highly-customized Linux kernel which has nothing to do with mainline

That's not a "Linux on mobile" problem; it's a "Linux on anything embedded" problem, and steps are being taken to address it. You can run a close-to- mainline kernel already on some devices, it's just not the default. And work is ongoing to also port common non-mobile Linux userland setups to mobile, so that the same stack will eventually be useful for both. A lot of non-trivial work is involved.

<comment><USER3> This will always be hamstrung by the lack of stable APIs - the issue which Google is so fed up with, they are in a process of writing their own microkernel, zircon.

You might have noticed that Android phones are supported at most for three years - that's because HW vendors refuse to maintain their drivers compatibility with lots of different kernel versions - it's expensive and takes a lot of work.

Once you have stable kernel APIs - you can write a driver once and forget about it for eternity.

<comment><USER32> Not a problem if the drivers are written to be easy to forward port. But that's not the approach that embedded BSP's generally take.

<comment><USER3> Again you offer people to work/invest more just to comply with Linux for very dubious benefits if any. This is not how businesses operate.

</comment></comment></comment></comment></comment><comment><USER18> I already disagree with the first reason. Poor backwards compatibility is a good thing, it does not let tech debt to accumulate too much.

AppImage and containers are just for hiding that tech debt.

<comment><USER11> > Poor backwards compatibility is a good thing

I'm going to try and phrase this as nicely as I can: I fervently disagree and sincerely hope your opinion is shared only by the smallest minority possible.

The point of computers is to be a tool for people to make their lives better. Being able to run software is better than not being able to run it. The more things a computer can do, the better.

Also, AppImage is great.

<comment><USER18> > Being able to run software is better than not being able to run it. The more > things a computer can do, the better.

The more bugs you can encounter while using a piece of software is not a good thing. Security is increasingly important, running a lot of unmaintained software is a terrible thing for security. UI inconsistencies across software are not a good thing.

I __dread __the day I will encounter the Linux-equivalent of MS-DOS filenames not being allowed. I hope all such software dies before.

The Windows approach has a lot of downsides you probably don't notice if you're accustomed to using Windows.

<comment><USER11> > The more bugs you can encounter while using a piece of software is not a > good thing.

Then don't run any software, that's cleary the best solution to avoiding software bugs if you don't actually care about getting anything done.

> Security is increasingly important, running a lot of unmaintained software > is a terrible thing for security.

I disagree. Even if a thing is known to be vulnerable, there are ways to mitigate it. Besides, evergreen software just provides more opportunities for bugs as things are constantly reworked and added.

> The Windows approach has a lot of downsides you probably don't notice if > you're accustomed to using Windows.

I notice them, they just cause a lot less pain than not being able to use the software I want because it hasn't been curated by a third party for whatever particular distro I'm using.

<comment><USER18> > Then don't run any software, that's cleary the best solution to avoiding > software bugs if you don't actually care about getting anything done.

Or that everyone should run maintained software? I don't know why you're making it so black and white.

> I notice them, they just cause a lot less pain than not being able to use > the software I want because it hasn't been curated by a third party for > whatever particular distro I'm using.

I didn't find them any less painful than software not working. I've never been so angry about a computer than when using some unmaintained Windows' software.

<comment><USER11> > Or that everyone should run maintained software? I don't know why you're > making it so black and white.

Because sometimes the software you want to run isn't maintained anymore and all the alternatives are worse for your use case and there's nothing you can do about it. That's just how it is.

> I didn't find them any less painful than software not working. I've never > been so angry about a computer than when using some unmaintained Windows' > software.

Please explain how "software works with some issues" is somehow _more painful_ than "software doesn't work at all".

<comment><USER18> > Please explain how "software works with some issues" is somehow more painful > than "software doesn't work at all".

One is frustrating for a second, it just doesn't work, second is frustrating for a longer period of time. The total frustration is larger with the latter.

There usually is a better solution than buggy software, at least with consumer stuff. If someone writes a shitty GPU driver, it's probably a better idea to return the GPU than to fiddle it working. At least that's what I think, based on my experience.

<comment><USER11> > One is frustrating for a second, it just doesn't work, second is frustrating > for a longer period of time. The total frustration is larger with the > latter.

One could say that the former is frustrating for _infinity_ because it never works.

> There usually is a better solution than buggy software, at least with > consumer stuff. If someone writes a shitty GPU driver, it's probably a > better idea to return the GPU than to fiddle it working. At least that's > what I think, based on my experience.

Usually, sometimes, maybe. Other times the old software either worked better for your use case or is literally the only option. That's my experience.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER33> In regards to search interest, I have a feeling that specific distributions (specifically "Ubuntu") have replaced the use of "Linux" in Google searches.

</comment><comment><USER34> Click bait headline. Why is this kind of sensationalist title allowed on HN?

edit: I don't object to the content, but the headline.

<comment><USER35> No, no it's not. That is literally the talk he has done for many, many years.

<comment><USER34> I understand the video is worthwhile. What I object to is the title on the post. "The linux sucks website has a good video" would be a great title, for example. As it stands, it panders to those of us who like linux and those of us who don't like linux. The title appeals to the worst in us.

To be clear I do not object to the content, but I find the title to be divisive click bait.

<comment><USER35> That's the name of the talk. The humerous talk.

</comment></comment></comment></comment><comment><USER14> TLDR Linux sucks because people do not care much about OS anymore [0], default setup does not run old games, there is no Steve Jobs like dictator, it is sponsored.

[0] [https://trends.google.com/trends/explore?date=all&q=linux,ub...](https://trends.google.com/trends/explore?date=all&q=linux,ubuntu,android,ios,windows)

\-----

From my perspective these are reason Linux rocks

1\. Yay! With web I do not care as much about software, I am free to use Linux.

2\. Yay! Even for running old apps on Linux there is solution.

3\. Yay! I am not a serf, I can move to other distros. And there are a lot of them.

4\. Yay! It would be impossible to have such hardware support without sponsors and hired developers. You've done a great job, thank you.

There are a lot of Linux users - some hate Microsoft with passion, some curse Poettering, some crave world domination - you've got a place too!

There is so much _casual_ media attention now:

* Linux Gaming FINALLY Doesn't SUCK! Sep 22, 2018 (2 000 000 views) [1]

* Microsoft Should be VERY Afraid - Noob's Guide to Linux Gaming, Apr 9, 2019 (2 000 000 views) [2]

Steam games just work thanks to [https://www.protondb.com/](https://www.protondb.com/) (wine basically).

I was amazed that MX Linux intro has 120 000 views [3]

And finally, there was one technical question. Linux Filesystem Hierarchy Standard (FHS) is developers setup - evergreen /include, /lib. I can recompile all installed packages. I've compiled latest Firefox on Linux. I've compiled Firefox on Windows, it is quite different experience. I've compiled Firefox 3.6 on Linux a month ago, that's different experience too - patching source, requires old pango version. This setup suits me.

Would it be interesting to have make dependencies as they were in Firefox 3.6 days? Absolutely. Does it drug Linux back? No, this case is minor. Same with old binaries. Anyone who cares enough can find or create such distro.

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

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

[3] [https://www.youtube.com/watch?v=4XVHA4l4Zrc](https://www.youtube.com/watch?v=4XVHA4l4Zrc)

<comment><USER36> > 1\. Yay! With web I do not care as much about software, I am free to use > Linux.

This. Web and electron apps is the greatest thing that happened to "linux desktop". I know that they sucks and are slow, but without it I would not be able to use linux for work.

<comment><USER37> ^ very much agree; plus, given that the electron API is very straightforward: the electron devs can fix the underlying memory and speed issues in the underlying code without needing to demand much change from app builders

</comment></comment></comment><comment><USER38> Is there a version for literate people?

<comment><USER39> It's a yearly skit he does in front of a live audience and because of covid he did it in a video. In written form you might actually think he is serious.

</comment></comment><comment><USER40> Why not help make it better by sending some pull requests or patches ? One and half hour long rant. Not exactly hacker mindset.

<comment><USER41> It's a yearly thing of his that he spends like half an hour complaining about desktop experience and then twists it around and basically uses the same arguments to say that it's awesome.

Simplified example: way too many desktop environments, why do we need so many half-arsed ones?

Half an hour later: woo, we can choose which desktop experience fits our needs the best, who else can do that?

I've followed it for like two or three years and then got tired of the format.

<comment><USER42> I've seen a bunch of videos on Youtube where a Linux user is basically analyzing problems in the UI of common desktop environments for Linux and compares them to how the UX is on other OSs. Not sure if those youtubers are actually developers working on the patches because they also report when something they complained about gets fixed.

<comment><USER43> I've never quite understood the "Linux DEs and GUIs are inconsistent" complaint. I wouldn't want everything to be GTK because that's IMO not a great GUI toolkit.

<comment><USER44> I use a pretty default i3wm/i3bar/dmenu setup as my 'de'. The best things about it is its _not_ like the other GUIs.

It has no discoverability, and its small and "hard" to see. Which is great, because I know it backwards and would like to look at other things.

I don't know Krita, and it requires a lot of focus. Boy am I glad its not like my de.

</comment></comment></comment></comment></comment><comment><USER45> This video is sad to watch and could not wait for it to actually end.

1) Low popularity does not mean something sucks. Listen to the global top 10 playlist on Spotify and you will know what I am talking about: the worst, least creative music ever made happens to be the most popular and the greatest works of music in the history of humanity are much less popular.

2) There are many solutions for backwards compatibility, some of them are listed in this video (AppImage, Flatpak) and other ways of making software more self-contained. Now... WINE can sometimes be more backwards compatible than Windows.

3) "Linux foundation executive director presents from a Mac". Well, this has been observed in Microsoft talks too. In fact, there's one talk where the presenter cannot get Internet Explorer to do what he wants so he takes a moment to install Chrome.

4) "Linux people are dumb"... Are they? I would not say so.

<comment><USER46> I'm smhing so hard right now.</comment></comment>


Key-Value Stores: a practical overview - <AUTHOR> http://www.marc-seeger.de/assets/papers/Ultra_Large_Sites_SS09-Seeger_Key_Value_Stores.pdf

<comment><USER2> I've started using Redis for the majority of my projects, with one caveat. I still need full-text search, so I use Redis in combination with MySQL. Small and frequently accessed user data is all stored in Redis, while the large chunks of text are kept in MySQL. That way I kept the speed of Redis, and still get to use Sphinx.

<comment><USER3> You can use sphinx xmlpipe or xmlpipe2 datasource [<http://www.sphinxsearch.com/docs/current.html#xmlpipe2>] and get rid of the middle-man (MySQL).

<comment><USER2> Thanks for the link, that's an interesting possibility. I probably won't be getting rid of MySQL however, because it serves another purpose for me. I'm not comfortable having my entire dataset in memory, because I'm currently constrained in my server setup and I'm dealing with relatively large datasets per user.

</comment></comment></comment><comment><USER4> I was disappointed to not see Riak covered.

<comment><USER5> I really like riak but I would love to see a couple of things (which are coming after talking to the developers): select/put parts of a document instead of fetching to the client, updating, and sending the whole document back; writing map-reduce in something other than erlang (sue me, I am not an erlang expert yet); performing more operations server side on documents in situ.

I am playing with these ideas against a json object store, taking inspiration from riak, redis, and couchdb; based on node.js. It's vaporware ATM but if it pans out I'll open it up.</comment></comment>


Show HN: Crowdsourced salary prediction - <AUTHOR> http://salaryfairy.com

<comment><USER2> You need to offer a way for me to turn off my account. I logged in just to try it, found out it's not what I thought it was and am not that interested, and now want my account deleted and your access to my LinkedIn revoked.

Showing some peoples' profiles anonymously is not very anonymous at all. If you're the owner of a one man company then not showing your name is meaningless. You need to anonymize the actual companies too.

Don't get me wrong the site looks nice and you have done good work. But I want out, and you should offer a way out on day one.

<comment><AUTHOR> We will offer self account deletion shortly. Meanwhile, you can send us an email to request removal.

We will also introduce new ways to anonomize your company and education info. Thank you very much for your feedback.

</comment></comment><comment><USER3> It would be nice to see a sample so that I know what I'm getting into before I give you access to my LinkedIn.

<comment><USER4> Same thing I was thinking. Not too keen on providing all of my information without some sort of example(s).

<comment><USER5> Thank you both! You are definitely right, it is now the first thing on our list.

</comment></comment></comment><comment><USER6> It's a bit difficult to tell what the experience will be before you jump in, and it's not very fun when you do. Screenshots of the experience would help a lot.

Also: After seeing it, it's not going to work very well for HMF-level people since most people don't know what an HMF _looks like_.

It might be better to randomly swap extracted features them around with other people so that you can tell how you're measuring each feature. You might find some features deserve drastically higher weights to correct for people's subjective "feelings" about how much someone should make.

I like that it tells me how other people guess (after I submit my own guess), but it only tells me the mean (and it says average). When it had collected guesses for my salary, I watched for a few guesses to pile in and it seems to be taking the mean of them. I don't think this is a good idea, for example someone guessing _very_ low repeatedly will drag down everyone's score.

It might be useful to collect "what do I think this person makes" separately from "what do I think this person could be making".

<comment><USER7> What's an HMF?

<comment><USER6> Head Mother Fucker.

</comment></comment></comment><comment><USER8> How does SalaryFairy know what's correct? Just in general?

Someone with a statistics background might have a better idea, but I'm thinking might help to allow users to, in their profile (and have it be optional), enter their salary.

That way, you'll not only be able to show people what other people think they should be making, but you might be able to (once a certain threshold is met) show what people with similar experiences in a certain region _are_ making. And you'd be able to see how close the guesses are to the real thing and maybe figure out a margin of error.

It might also be nice to allow people to put in descriptions of what they did at their workplaces. Someone doing embedded development might get a significantly higher salary than someone doing .NET, even if they have a similar # of years of experience.

</comment><comment><USER9> Interesting, but I found it incredibly hard to come up with sensible estimates for profiles.

So much depends on their location -- do I assume they'll be staying where they are and try to estimate what salaries there should be like, or estimate based on my own location? -- and the sort of places they might like to work. If you're currently in a university or a small business you might be paid less than at a bank for the same work, but you might be choosing to work there for other reasons, so it's not that useful to point out that another employer would pay more.

I found my estimates were generally much lower than the averages from other users, perhaps because I currently work in a university myself.

Edit: and indeed, it turns out that the estimates I'm seeing for my own profile are about double my actual pay. Which isn't surprising, because that's about what I might expect in the private sector in the same location.

</comment><comment><USER10> So far the prediction average of 2 people is less than half of what I currently make (and less than half for the average salary for my role in that city)

You need a LOT of people to make this work... so far it seems like a nice idea but not sure it can work relying only 100% on "crowd-smarts"

<comment><USER11> My prediction average of 3 people is more than twice what I currently make.

The estimate I made for someone was 70kish before I went on to see my similar one. I wonder if that's just the safe number lots of guessers are settling on?

<comment><USER7> There's a major bias to guessing in the 70-90k range. People likely to earn far less or far more than that are being pushed toward the middle.

</comment></comment></comment><comment><USER12> This is pretty cool, but I do have one question:

How do you account for the fact that many of your users may not be familiar with the salary ranges in a specific area?

I understand the goal is to get a large amount of estimates for each user, to compensate for that, but my guess is that locations where larger amounts of users are located would have far better estimates. I just saw a couple of Vancouver (where I live) people, in positions I have trained and hired people in, but the estimated salary seems to be quite off considering that Vancouver salaries are noticeably lower than San Fran in reality.

Edit: It seems most of the profiles for me are Vancouver/Toronto/Ottawa, so I'm guessing that's their way of getting locals to estimate salaries.

<comment><AUTHOR> Thanks for your feedback. You are indeed seeing profiles only from Canada. You can change your settings to predict salaries from other countries. We will introduce filtering based on specific area in the future.

</comment></comment><comment><USER13> It'd be cool if you also showed the currency converted for where the person is located, maybe in brackets next to the dollar amount. I'm in the UK and I'm getting asked to predict in dollars the salary for someone else who is also in the UK.

<comment><AUTHOR> Converted local currencies are now displayed besides $ amount. Thanks again for the feedback.

</comment></comment><comment><USER14> I like the concept. Interesting how it's a game and provides salary analytics at the same time. I just added my profile but I will check again after a few people have predicted my salary to see the results.

I was bouncing around a few ideas that involved using the Linkedin API a few months ago. I have a few questions about Salary Fairy that may help me with my research...

Does Salary Fairy download a user's profile to the database? If so, I thought Linkedin required the user to grant permission to store the data in addition to just obtaining access when logging in. Is this still the case?

What technology stack are you using?

What type of hosting?

<comment><AUTHOR> Thanks! We added a privacy clause stating that we store LinkenIn data. We are using python/django on a linux server from DigitalOcean.

<comment><USER14> Thanks for the response.

I logged in today to find 3 predictions that were double my actual salary. Maybe if you include an option to add your real salary, the salary predictor bar only allows guesses within a specific range outside of the real salary. It might keep the predictions more realistic.

Also, I received an email confirmation from SalaryFairy. What is the purpose of this if I already logged in with Linkedin? Wouldn't my account already be verified if I have a Linkedin account?

</comment></comment></comment><comment><AUTHOR> Our site provides personalized salary predictions with wisdom of the crowds. We recently built a scoring feature where you get higher scores for good salary predictions. We would like to get your feedback.

<comment><USER15> Just connected my LinkedIn profile; how are you predicting salaries? Sharing my public profile with others and aggregating their salary estimates based on weighted criteria? I assume those with the closest estimates to actual salary have their estimates rated higher than others (based on your leaderboard here: [http://salaryfairy.com/fairy/score](http://salaryfairy.com/fairy/score))

<comment><AUTHOR> Yes. We display anonymous profiles to our users and aggregate their predictions. Predictions based on weighted criteria is coming soon.

<comment><USER15> Excellent work. Something to consider would be to constrain salary estimates to the same industry based on LinkedIn profile endorsements my profile contains.

For example, I'm an IT professional. When I clicked "Predict salaries", a profile for someone in the financial industry was displayed. I have no idea what they should be making.

<comment><AUTHOR> Thanks :) Scoring is one of the criteria we are looking into. We need to be careful not to bias predictions too much towards high scoring predictors. We are now filtering profiles by country. Once we get to a healthy user base, we will introduce more filtering options.

<comment><USER15> No problem! I've thought many times how to solve this problem, but all of the data is opaque :( Wish you guys well!

</comment></comment></comment></comment></comment></comment><comment><USER7> Salary is a weird number. For instance giving a startup founder who is an ex- Google engineer a prediction is awkward because she could maybe fetch a mid six figure salary if she wanted but she is probably is paying herself enough to get by or even nothing depending on the stage of a startup.

It's unclear whether I should be answering what salary does this person's skills merit? Or what salary do I think they are earning today?

I also wish I could refresh and/or edit my profile on salaryfairy.

</comment><comment><USER16> It would be cool if you got recruiters on board, so they can see the crowd estimated salary of an employee - so they can see what people who actually know about technology think someone is worth.

I don't really like recruiters, in my experience they tell you you're aiming too high, but don't know anything about the technologies.

So my feedback is to try and aim to get recruiters and employers to use this to find new candidates.

<comment><AUTHOR> Agreed! This is actually one of our goals: to create an opt-in program for our members to meet serious recruiters based on their salary prediction. We hope to give our members a fair starting point when talking to a recruiter. Thank you very much for the feedback.

</comment></comment><comment><USER17> It would be really interesting if profiles were not filtered by country but predictions were grouped by it. If I wanted to move abroad I could base my salary expectations on it.

This would also give more value to people from outside of the U.S. (there is only one other person from Singapore registered, so as it is I won't get many predictions).

<comment><AUTHOR> Thank you for your feedback. We will work on features for members who are curious about other locations.

</comment></comment><comment><USER18> How is this different than Glassdoor.com?

<comment><USER5> Glassdoor gives salary ranges based on title, company, etc. Our aim is to provide personalized salary predictions based on your education, experience and skillset.

</comment></comment><comment><USER19> Apart from salary, is any indication provided of the volume of matching jobs/locations?

<comment><AUTHOR> This is in our future plans.

</comment></comment><comment><USER20> It might be useful to show your estimated average salary, and your estimated average salary from people in your area. Most people probably don't have a good idea of what the going rates are outside of their geographic location.

</comment><comment> j-mac They should offer A/B testing on your profile to maximize you estimated salary.

</comment><comment><USER21> I think the best way for this to work is for you to pair it with a more professional algorithm (e.g. Payscale, Salary.com). I am not sure I would ever trust what a bunch of random unqualified people say my salary should be.

</comment><comment><USER22> Some quick UI ideas [http://i.imgur.com/7PDTIt9.jpg](http://i.imgur.com/7PDTIt9.jpg)

Maybe also keep the scroller for when you absolutely have to have a higher resolution...

<comment><USER5> thank you very much! it is definitely a great idea to show time spent at a job more clearly. also we will work on the scroller as you suggested.

</comment></comment><comment><USER23> Why don't you take a guess at mine? [http://salaryfairy.com/fairy/guess/420](http://salaryfairy.com/fairy/guess/420)

</comment><comment><USER24> This is a very interesting idea - so far with 7 predictions, the predicted # is more than $30k than what I currently make.

Goes to show how underpaid people can be.

</comment><comment><USER25> I find it extraordinary how many people are willing to give full access to their LinkedIn account and get so little in exchange.

</comment><comment><USER26> right off the bat, I'm not so comfortable about giving the site access to my LinkedIn account. No promise that it wont spam my account somehow or post things to my Linkedin feed.

<comment><AUTHOR> We don't request the necessary permission from LinkedIn to send a message on behalf of you. We have no intention to spam, but we will put that promise explicitly on the homepage. Thanks for the feedback.</comment></comment>


Ask HN: MixcloudAds, if we white-label it would you use it? - <AUTHOR>

Screencast: http://vimeo.com/9690050
Once we started running ads on the site, we very quickly realised the whole process of selling the ad, receiving the banner, invoicing the advertiser, receiving the money, trafficking the ad and reporting the progress back to the advertiser is very time consuming.
Therefore we set out to solve this problem by building a self-serve direct ad server – an entirely tech driven solution that enables any advertiser – large or small – to set up and serve an ad on Mixcloud within minutes. Sweet!
Since going Live 3 days ago, we are now selling a very significant % of our inventory through the new system, this could be a honeymoon period, could be a serious revenue source.
The good news is we built the system on Google AppEngine independent from our main code base, and with white-labeling in mind from day one. If we were to release this as a white-label product, would any of you actually use it? We would probably use PayPal Adaptive Payments and take a % of ad sales, so no win no fee kind of model.
Mat <comment><USER2> This sounds like something that would go high up on our evaluation list for the company I work for -- for us, there's a big space between our bread-and- butter high end advertisers and the remnant networks filled with advertisers that would like to make sub $5k buys but take as much or more effort than advertisers on the other side of that line.

That said, a pricing model as a % of revenue would probably be less attractive than a cost based on some function of resource utilization -- we don't necessarily need to give you incentives to figure out how to max our revenue; let us worry about optimizing our pricing and maximizing sales; you focus on providing us a kickass product.

Also, ideally we'd be able to traffic ads sold via self-serve into our existing inventory (i.e., not a separate unit or zone) AND avoid overselling impressions we don't have (e.g., we frequently "sell out" of certain geotargeted metro areas) -- so it'd probably be best if it worked in tandem with our ad serving software (currently Google Ad Manager/DFP).

</comment><comment><USER3> Presently, on the webpage of mixcloud, there's an ad that repeat itself horizontally (Like a tile). That's the new kind of bug you can have if people automatically upload a wrong sized image ;) But I like the idea and I'm sure you can fix that bug quite easily.

<comment><AUTHOR> yeah we only just spotted that one, fixing it now :) Always amazed by the new ways users find to break stuff. But that one we should have caught.

</comment></comment><comment><USER4> <http://isocket.com>

They've powered TechCrunch's ads since last May.

<http://www.crunchbase.com/company/isocket>

<comment><USER5> It looks like the majority of TC is being run through Google Ad Manager with lots of inventory going to them (notice all the google ads). I don't see iSocket's ad script anywhere on their page, maybe they interface to Google Ad Manager?

<comment><USER6> John here, Founder of isocket.

Part of the "open" approach we're taking is not forcing publishers to use our ad server if they don't want to. We have one, but some publishers (like TechCrunch) use our plugins with other ad servers like GAM.

So you won't see our tags on TechCrunch's page, but many of those ads were purchased through our system.

Cheers,

</comment></comment></comment><comment><USER7> Yes, possibly, depending what advertisers you attract and how much control they and I (the publisher) get about what ads get shown where, and what kind of inventory it can serve.

<comment><AUTHOR> We are finding most of the advertisers are users of mixcloud, and are buying ads to promote either their blogs or their own mixcloud profiles. The idea is the users of your site, buy ads on it, so community based.

Inventory is currently a single fixed 300wx250w image but thats just for our use case, and would need changing.</comment></comment>


Every programmer should read the source to abort() at some point in their life. - <AUTHOR> http://www.reddit.com/r/raldi/comments/iu0f7/every_programmer_should_read_the_source_code_t/

<comment><USER2> Reminded me of "5 ways to reboot a PC, none of them reliable" from a couple months ago.

<http://news.ycombinator.com/item?id=2607116>

Interesting how fundamentally simple tasks like aborting a process or rebooting the machine have very nontrivial (even kludgey) implementations.

</comment><comment><USER3> For comparison, here's FreeBSD's abort():

[http://svnweb.freebsd.org/base/head/lib/libc/stdlib/abort.c?...](http://svnweb.freebsd.org/base/head/lib/libc/stdlib/abort.c?view=markup)

And GNU glibc's abort():

[http://sourceware.org/git/?p=glibc.git;a=blob_plain;f=stdlib...](http://sourceware.org/git/?p=glibc.git;a=blob_plain;f=stdlib/abort.c)

<comment><USER4> And OSX's, which is rather similar to FreeBSD's but adds:

* Writing to NULL

* Writing to address 1 (unaligned write)

* Writing to text space (read-only machine code)

* Dividing by 0

* More violence than SIGABRT (SIGILL, SIGBUS)

[http://www.opensource.apple.com/source/Libc/Libc-262/stdlib/...](http://www.opensource.apple.com/source/Libc/Libc-262/stdlib/abort.c)

<comment><USER5> Since dereferencing a null pointer and dividing by 0 are undefined by C, is the compiler required to emit the code for them? In practice, does it?

<comment><USER6> In practice, <asterisk>(int <asterisk>)0 (how do I escape asterisks on HN?) and similar are popular idioms for "segfault here". Making them break is not an optimization any compiler maintainer would bother to make - it requires a special case and there don't seem to be any benefits to justify the effort.

<comment><USER7> See the series of articles starting with [http://blog.llvm.org/2011/05/what- every-c-programmer-should-...](http://blog.llvm.org/2011/05/what-every-c- programmer-should-know.html)

</comment></comment></comment></comment></comment><comment><USER8> Raymond Chen wrote a classic blog post on how process exits on WinXP. But if you're a developer, know that it's not the same for Win7.

[http://blogs.msdn.com/b/oldnewthing/archive/2007/05/03/23833...](http://blogs.msdn.com/b/oldnewthing/archive/2007/05/03/2383346.aspx)

<comment><USER9> Also see this: [http://blogs.msdn.com/b/oldnewthing/archive/2007/05/04/24020...](http://blogs.msdn.com/b/oldnewthing/archive/2007/05/04/2402028.aspx)

</comment></comment><comment><USER10> Plan 9's abort causes an access fault, causing the current process to enter the `Broken' state. The process can then be inspected by a debugger. Pretty elegant.

[http://plan9.bell- labs.com/sources/plan9/sys/src/libc/9sys/a...](http://plan9.bell- labs.com/sources/plan9/sys/src/libc/9sys/abort.c)

<comment><USER11> again, what's with the while()? even if it doesnt cause a segmentation fault, there's a chance it will evaluate to 0.

<comment><USER12> gcc, at least, optimises out the null deref for both:-

        *(int *)0;

and:-

        for(;;)
            *(int *)0;

So the first bit of code does nothing, and the second slips off into an infinite loop.

I suspect that treating expressions that demonstrably lack side effects (other than the intended segfault here of course) as statements is undefined, and hence these are getting optimised out (even with -O0).

Clearly with:-

        while(*(int *)0)

The expression is being evaluated and is therefore not elided, I guess the choice of while is to 'be cute' as others have suggested, and I guess the world is sane in plan 9 and 0 is readable so you can't get a situation where it escapes the loop. Perhaps there is a deeper reason here that I am missing, however.

<comment><AUTHOR> (int *)0 is not defined as a pointer to memory address 0x0 on architectures that support such an address.

0 cast as a pointer is defined by the spec to always be the NULL pointer, which on such architectures would have a value other than 0x0 and not point anywhere addressable.

</comment></comment></comment></comment><comment><USER13> Great article, picking apart low level code like this can be super informative - and you've explained it well.

</comment><comment><USER14> Link to abort.c source: <https://gist.github.com/1093410>

</comment><comment><USER15> I may be wrong, but I thought that in a multithreaded environment, doing i++ is not atomic and could result in garbled data. Instead you should use __sync_add_and_fetch. However, I have no idea if it should be used inside abort().

<comment><USER16> >I may be wrong, but I thought that in a multithreaded environment, doing i++ is not atomic and could result in garbled data. Instead you should use __sync_add_and_fetch. However, I have no idea if it should be used inside abort().

This is only true if the variable in question's memory is accessed by multiple threads at the same time, and there isn't any locking or synchronization method used to protect the memory.

In this case, even though it is a globally scoped variable, it's locked by the globally scoped mutex declared in the file. All increments are done in the locked sections, so there isn't any possibility of accessing the variable without having a lock.

It should be noted that there is a very minor race condition when abort() is called in two different threads sequentially, and every attempt up to line 89 doesn't work. The first call will get the lock, then go through to line 89, where it released the lock. The second thread will then get the lock, and go through the first section. When it hits the section line 89(if (been_there_done_that == 0)), that will resolve to false, because been_there_done_that is 1. It will then go on, leaving the first thread deadlocked at the LOCK attempt on line 91. This _shouldn't_ result in any missed functionality, but I actually wonder why they're releasing the lock in the first place. Raise() isn't thread safe anyway, because the signal is applied to all threads in the process. Plus, you're trying to suicide the program. It's a bad idea to even have the possibility of multiple threads trying to kill themselves at the same time.

<comment><AUTHOR> The lock must be released because the same thread might reenter abort() in the signal handler, and without a release in the parent abort(), the program would hang.

</comment></comment></comment><comment><USER17> Wow, abort() is much more polite than I assumed.

</comment><comment><USER18> Why only abort()? Entire Kernal code is beautiful <http://lxr.linux.no/>

</comment><comment><USER19> glibc's abort() is even more complex:

[http://sourceware.org/git/?p=glibc.git;a=blob;f=stdlib/abort...](http://sourceware.org/git/?p=glibc.git;a=blob;f=stdlib/abort.c;h=e9d0ab18fd7d05e3d7016d03794438ccd1e141d6;hb=HEAD)

<comment><USER20> Most of the code in glibc has been heavily Dreppered.

<comment><USER21> What does Dreppered mean?

<comment><USER20> Ulrich Drepper tends to write software that is easy for him to read (one would hope) -- but is _very_ difficult for anyone else to follow.

<comment><USER22> But you have to admit, his abort is pretty damn easy to read.

<comment><USER20> I admit it's heavily commented, and his usual tangle of preprocessor macros are blissfully absent.

But it contains hints of Drepperification, like the superfluous use of preincrement.

<comment><USER23> When I don't care about the result, I always write preinc/decrement too. Sure, it's superfluous on any non-braindead compiler (it should be able to see that you don't care about the result of a postincrement and elide the temporary), but it's just habit at this point. I fail to see how it reduces or changes readability though.

Sounds like you just have an axe to grind with Drepper.

<comment><USER20> I don't have anything personal against Drepper. I've never had any direct experience with him of any kind.

I thoroughly enjoyed his article about memory. He is obviously an extremely intelligent and knowledgeable guy.

I am afraid that he is too clever by half though, insofar as good code is clean and readable first, and clever second. Every time I've had an opportunity to interact with the glibc codebase I'm dismayed that such an important, core piece of software has been written so cleverly that it essentially can only be maintained by one guy.

<comment><USER23> That's unfortunate; I'll have to look at some glibc code sometime. Could be fun... or, as you point out, dismaying :-/

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER24> musl's abort() is quite elegant: [http://git.etalabs.net/cgi- bin/gitweb.cgi?p=musl;a=blob;f=sr...](http://git.etalabs.net/cgi- bin/gitweb.cgi?p=musl;a=blob;f=src/exit/abort.c)

<comment><USER23> And also not very robust. Sure, it'll halt execution -- of that one thread, anyway -- but if the program has a SIGABRT handler installed that doesn't exit, abort() will fail to do its job. It'd be nice to try just a _little_ harder to kill the program.

</comment></comment><comment><USER25> I liked the way they commented there.Reading the code with comments was like reading an comic book "Still here? We are screwed!" :-)

</comment><comment><USER11> Why is the outer while(1) loop needed? Seems redundant to me.

<comment><AUTHOR> The link specifically asks that question -- there are some good guesses in the comments.

<comment><USER11> the one in line 87. It looks like it might be added later because it's not even indented, but clearly it doesn't serve any purpose and it doesn't make it more readable (you can tell the function never returns from the second while(1) loop).

<comment><USER26> > it's not even indented

It's an issue of mixed tab-space indentation, with tabs being displayed at 4 spaces instead of the 8 spaces they were intended to be.

</comment></comment></comment></comment><comment><USER27> Every programmer should implement an operating system and compiler. I did. Now get off my lawn.

<comment><USER19> ACK</comment></comment>


Giistr.io – Easily contribute to your favourite OSS projects - <AUTHOR> https://giistr.io <comment><USER2> I am one of the creator of the project and i wrote a medium article to explain why and how we built it : [https://medium.com/@alex_picprod/giistr-io-easily- contribute...](https://medium.com/@alex_picprod/giistr-io-easily-contribute- to-your-favourite-oss-projects-ce06811f3356#.8a9k4nwgp)</comment>


Twitter will eat your URLs: save your lost users with smart 404 pages - <AUTHOR> http://joshdutter-wick.com/blog/2010/08/28/twill-eat-your-urls/

<comment><USER2> Your site seems to be down...

<comment><USER3> was about to post same. down too not 500 or 404</comment></comment>


Reflection time: What is it, how do you measure it, and how can it be improved? - <AUTHOR> http://owen.cymru/reflection-time/ <comment><USER2> I love the concept, I am not so sure if I like the term.

<comment><AUTHOR> I was hoping there would already be a term for it, but I think reflection time works quite well when you think of it as the amount of time it takes to see changes reflected.

But reflection time on it's own sounds like a cringey post-stint review.</comment></comment>


Ask HN: text editor based on Chrome - <AUTHOR>

I really like the Chrome browser, and it seems that little modification would be needed to create a text editor using its codebase. Next-gen Emacs! So, why it isn't as simple as I'm thinking? <comment><USER2> Have you seen bespin? Obviously not directly for chrome but I think that is the direction of the next generation code/text editor.</comment>


Brewing beer with Raspberry Pi - <AUTHOR> http://www.element14.com/community/groups/raspberry-pi/blog/2012/09/19/brewing-beer-with-raspberry-pi

<comment><USER2> As both a hacker and a brewer this is extremely interesting. Building a temperature controller fermentation chamber is something I want to do at some point.

</comment><comment><USER3> I did something similar, but with just a webcam and a laptop, and instead of beer it was mead. Basically, I pointed the webcam at the air lock, which produced a bubble every 15-30 seconds (depending on the fermentation process). I wrote a small Python program using PIL which processed webcam frames and detected sudden changes in the image (a bubble). Each time a bubble was detected, it would write an entry to a database (date, time_delta_from_last_bubble).

This was really cool when I went out of town because I could login and see the delta between bubbles gradually increasing, and once I saw it sitting at 40-50 seconds between bubbles for a day or so, I bottled it.

<comment><USER4> Nice! :) Although I have to interject: Air-lock activity is not always a great indicator of the fermentation process. You can have active fermentation without bubbling, so it's always Best Practice to instead take Gravity Readings. When the brew has produced consistent measurements for 3 days, it's safe to say your fermentation period is over and the beer has reached it's Terminal Gravity.

<comment><USER3> Absolutely, I agree with you 100%. This was a quick hack I had to do because of short notice trip. I wanted to be able to detect the amount of gas being released, but I had no time :(.

</comment></comment></comment><comment><USER5> This seems much more complicated than is necessary. It costs ~$200 for a 7 ft^3 chest freezer and ~$50 for a fridge thermostat with the required temperature setpoints.

<comment><USER6> People don't do these things for the practicality of them.

<comment><USER7> Totaly true, I'm thinking he could then look at expanding it into a beer- cooled PC setup. Practical would be a heating system that used hot water you heated up via a water cooled PC/running pipes via the cooling grid of the home freezer. That would be practical and yet has not been done but I think you will agree the beer-cooled PC does stands a better chance, just because it involves geeks and beer and I'll drink to that.

</comment></comment></comment><comment><USER8> I love all the various uses for a raspi. Our goal at the office is to build a raspi based kegbot - we will open source it once we are done (if we get around to finishing it!)

</comment><comment><USER4> That's awesome! I wanted to add: There is a brewer/dev who has created an as- of-yet-conceptual project called "BrewPi", with a goal of producing an all-in- one amalgamation of Raspberry Pi and useful brewing tools.

[http://www.homebrewtalk.com/f51/interest-check-brewpi- raspbe...](http://www.homebrewtalk.com/f51/interest-check-brewpi-raspberry-pi- fermentation-controller-data-logger-332705/)

</comment><comment><USER9> This is great. I just setup my Pi with XBMC and now I'm realizing the possibilities are endless. You can't beat brewing beer and watching movies!

</comment><comment><USER10> Raspberry Pi: Knocking the "king" Budweiser off its throne. Coming in 2013.

<comment><USER11> The only thing keeping Budweiser on its throne are uninformed consumers and noncompetitive practices.

<comment><USER12> And a consistent brewing process like nobody else in the world. And a taste that, while not satisfying to a heavy beer drinker, is palatable to almost everyone.

<comment><USER11> Taste is not limited to "heavy drinkers". But water is also incredibly consistent and palatable to almost everyone.</comment></comment></comment></comment>


Webhooks Level Up - <AUTHOR> https://github.com/blog/1778-webhooks-level-up

<comment><USER2> Here's an example of the kinds of features Github's staff is working on that takes a significant amount of time and coordination, and it's why we don't see 100 new "who of your friends also starred this repo?" features each week.

<comment><USER3> "who of your friends also starred this repo?"

I hope you know that feature came out this week...

<comment><USER2> Yep. I was indirectly responding to a complaint from that thread in which the commenter wondered why Github wasn't announcing new UI features every day since the friend-starring feature was just "an afternoon's worth of work".

</comment></comment></comment><comment><USER4> How are people integrating their own webhooks into their apps? e.g. What is the backend for github or stripe's webhooks?

I'm surprised there's not a SaaS that handles the distribution, security, retries, and introspection for you...

<comment><USER5> What kinds of consumers, you mean? I've found them most useful for integration with new hosted services that haven't yet made it onto the external services list provided out-of-the-box by Github. For instance, when you want to try out (or develop) some new project tracker or hosted CI solution.

I'm a little surprised they still don't offer any auth configuration for webhooks the way they do for most external services, so you're stuck with basic auth on the post-receive URL.

<comment><USER6> There's some HMAC-SHA1 available but it's hidden in their REST API. I really don't understand why the option is not available via their web interface, especially since it is already supported in their backend.

</comment></comment></comment><comment><USER7> I'm stoked to see the webhooks get an overhaul. I was just about to use them for a project, and this'll be a great help.

I wish they'd do similarly for the services. Currently, editing multiple services across repos is a bit of a pain, due to the length of the list and how it jumps you to the top on any interactions. (Originally, I thought this announcement meant they'd revamped that as well)

Out of curiosity, is there a generally-accepted best practice for rate- limiting / authenticating webhook pushes? I'm planning to run a daemon that listens for them, and while the effect of somebody finding the URL and hammering it isn't likely to be catastrophic, I'd still like to rate limit it if I can. Alternately, are GitHub's webhook-sending IPs static enough to put in an IP set and add to my firewall?

<comment><USER8> You can always get an updated list from [http://developer.github.com/v3/meta/](http://developer.github.com/v3/meta/) but they're pretty static right now.

</comment></comment><comment><USER9> I wrote a tool to integrate GitHub pull requests with Jenkins builds called Leeroy: [https://github.com/litl/leeroy](https://github.com/litl/leeroy)

This new feature will make things so much easier to set up and debug, I'm thrilled. Before, you could not create a pull request hook without using the API, and this caused a lot of people confusion. We set up the hook automatically in Leeroy, but this will allow people to set it up manually if they want, and debug when it doesn't work.

<comment><USER10> Just to share an awesome GitHub feature that I learned about when doing a similar integration as you; your repository also tracks all Pull Request related commits. Really helpful when you're trying to build these sorts of tools in the future. If you set refspec to the following then you'll get automated builds for any commit activity related to all Pulls. Its saved me tons of time writing middleware to handle these things.

      +refs/pull/*:refs/remotes/origin/pr/*

The major Jenkins plugins have their respective build-on-new-commits, so you can automate these builds and just treat these like feature branches.'

</comment></comment><comment><USER11> The direct configuration will be pretty neat to try out. For those unfamiliar with webhooks: [http://developer.github.com/webhooks/](http://developer.github.com/webhooks/)

</comment><comment><USER12> digging through some of the events we can hook on to here: [http://developer.github.com/webhooks/#events](http://developer.github.com/webhooks/#events), i noticed the `gollum` event, which is triggered whenever a wiki page gets updated. i'm curious why its named that?

<comment><USER13> [https://github.com/gollum/gollum](https://github.com/gollum/gollum)

Named after the software that powers the wiki.

<comment><USER12> ah, got it. thanks!

</comment></comment></comment><comment><USER14> Can I use this to automatically push to (e.g.) Heroku upon pushing to Github?

<comment><USER15> You could, but you'd have to have some intermediate service to handle that process. One great choice is Travis CI[1] which is really a continuous integration service, but would let you do what you want. You can also just attach multiple URLs to a single git remote so you push to both GitHub and Heroku all the time.

However, I think running a test suite before deploying is a much safer option as it stops you from accidentally deploying something you haven't properly tested.

[1] [http://docs.travis-ci.com/user/deployment/heroku/](http://docs.travis- ci.com/user/deployment/heroku/)

<comment><USER8> We have a preview API in place for these types of deployment tasks. Lots of folks, travis/etc, seem to have piggy backed on top of successful builds too.

[http://developer.github.com/v3/repos/deployments/](http://developer.github.com/v3/repos/deployments/)

<comment> jon-wood Seeing that in the list of events to listen to was probably the thing I was most excited to see, I'm looking forward to seeing where that API goes!</comment></comment></comment></comment>


Where Trolls Reigned Free: A New History of Reddit - <AUTHOR> https://www.nytimes.com/2018/10/30/books/review/christine-lagorio-chafkin-we-are-the-nerds.html <comment><USER2> > Maybe the site is no longer so toxic, or maybe the toxic internet has made > me numb.

Or, maybe the site was never anywhere close to as "toxic" as you're describing and you're making mountains out of mole hills.

<comment><USER3> I left the site not because the whole site was toxic, but because it had gotten out of Reddit's control and they had no way to fix it. I got temp- banned for trying to be a freaking adult and make friends with someone who was harassing me. There is no oversight of the mods and it nowhere near a place for intelligent conversation in anything remotely political.

This article still seems unnecessarily harsh. Reddit didn't set out to be bad. Most of the moderators try to do a good job. The bad elements on the site are pervasive and can destroy a positive subreddit with a sideways glance. Let's not forget this is the place where a conspiracy theory was born that caused a pizza place to get labeled a pedophile ring causing a man to shoot up the place.

<comment><USER2> > but because it had gotten out of Reddit's control

For a long time Reddit's stance was to let subreddits be subreddits. If you wanted to heavily moderate your sub's content, fine. If you wanted near anarchy, also fine. Anything within the bounds of the site-wide rules (no doxxing, nothing illegal) was fair game, and if users didn't like it they didn't have to read the sub. If you found it to be a poor venue for political discourse you were probably posting on the wrong subs.

There's a worrying trend towards authoritarianism on the web. I wish we could get more popular momentum behind truly federated platforms.

</comment></comment></comment><comment><USER4> People in general, don't like free speech. They just want to be able to say whatever they'd like.

Clearly, some things cross the line but who do you let draw the line?

<comment><USER5> The company whos resources are being used.

<comment><USER2> What happens when a small number of companies control all meaningful online discourse?

<comment><USER5> Either the free market provides or regulation talk begins.

</comment></comment></comment></comment><comment><USER6> _> Even then, at a moment of techno-optimism we are unlikely to see again in our lifetimes, Reddit was a toxic swamp. It was the place you went, shrouded in anonymity, for pornography, hard-core racism, revenge porn, Nazi cheerleading, Jew-baiting, creepshots, fat-shaming, mindless anarchy and pictures of dead kids or of women who had been beaten._

What in the world is the author talking about? I went there to discuss local issues (r/stlouis), look at cool maps (r/MapPorn), find credit card deals (r/churning), and shit-talk sports (r/baseball and r/hockey).

I've been on reddit for almost 13 years. I keep seeing hot takes about what it supposedly is (or was), but they never match my experience.

You can find porn and nazis on the internet, yes, but it would be a profound mistake to describe the internet as a tool for finding porn and nazis. So it is with reddit, too.

<comment><USER7> On one hand, none of this kind of stuff was ever on the front page, and many users never went far beyond the front page. On the other hand, there was a substantial minority of users for whom that kind of content was the draw. And there was an uproar whenever any of this content was banned (which happened slowly, piece by piece, and continues into the present).

If you aren't aware of any of it, the Gawker story on violentacrez (still available online) is good picture of the nastiest side of the site. Its publication was (and remains) hugely controversial.

<comment><USER4> FatPeopleHate was on the front page all of the time. It got banned though.

<comment><USER3> I was going to say that as well. A lot of these groups had large followings and brigaded unsuspecting other subreddits for no other reasons than giggles.</comment></comment></comment></comment>


Reddit Thinks I'm a Spammer - <AUTHOR> http://blog.amir.rachum.com/post/30185348950/reddit-thinks-im-a-spammer <comment><USER2> The goal of reddit has always been to provide something good to read when you're bored. The policies are optimized for this use case.

The goal of reddit is emphatically not to provide a promotion vehicle for a given content producer.

In other words, if the reddit listings are dull, that's a major problem. If a particular site isn't making it through to a particular listing, well, if there's time someone might look into it. But it's just not a top priority.

And frankly, if you only participate in the site to promote your own content, I'm not so sure I'd call the spam filter wrong in this case.

</comment><comment><USER3> Reddit is absolutely right to put no weight on the "acceptance" of submitted stories, it's _easy_ to get stories "accepted" on sites like Reddit and HN - there are a ton of blog posts on the best times, the best keywords and how to correctly exploit the herd mentality. And that's not even taking into consideration fake accounts that can support a spammer for a long time.

You look pretty spammy here too by the way, exactly the same symptoms that makes reddit "think" you are spamming - only submitting and commenting on your own site.

Someone should automate violentacrez' guide and make a lookup service for social news sites. Reddit just recently busted major news sites spamming them, they will have missed a shitload of them and of course HN / digg / stumbleupon / etc certainly aren't immune either.

<comment><USER4> So the same person submitting his own site is NOT a spammer if he makes a number of throwaway comments?

I'm all for spam control, but that heuristic is _interesting_... it just says that you only want professional spammers who know also to make throwaway comments at a certain rate. The only unacceptable thing is an amateur spammer who links his own stuff without also posting other people's cat pictures and so on.

<comment><USER5> Of course someone who makes a bunch of throwaway comments on their own posts is a spammer. That doesn't make someone who does nothing but self promote in a more naive way less of a spammer.

Anyone who is seen as self-promoting is viewed with suspicion. /Especially/ if that is /all/ they do on Reddit or HN.

I personally think it is ok to post one's own blog, even if it has ads, if the content is interesting. But if that is all you do for a community...I don't know. Seems like bad form to me.

</comment></comment></comment><comment><USER6> He is complaining about being labelled a spammer on Reddit, writes a blog post with as much substance as a marshmallow and then posts it on HN?

This article should be flagged for spam here, this isn't a venting site for your Reddit frustrations.

</comment><comment><USER7> Interesting, unfortunate, but not as nefarious as outright censorship, which is what happened to me:

<http://arachnoid.com/psychology/reddit_psychology.html>

In short, a Reddit moderator took offense at my expressed position on the status of psychology as a science, and bluntly told me that I couldn't post my view on that specific topic, and if I did, I would be banned. He made it clear that I could post any viewpoint I wanted _except that specific viewpoint_.

Once I realized it was censorship, that I had done nothing wrong except to offend a specific moderator who felt justified in silencing me, I stopped posting to Reddit.

</comment><comment><USER8> I was a prolific reader of /r/programming, and even submitted good links that were quickly upvoted. Then the spam filer got me, and kept getting me, so I left.

Except there was no spam,... just a mod that decided to remove some submits that he thought were off-topic (they were not), and me making more than 1 or 2 submits every week.

Before posting to reddit, make sure that 1) you've upvoted/downvoted something, and 2) made some comments on other threads.

</comment><comment><USER9> The filter seems to try and measure self-interested intent, which correlates well with spam. However, they're not the same thing. In the content of fighting spam, if a user is providing things people are genuinely interested in, then their intent is irrelevant.</comment>


GLASS: Gemstone, Linux, Apache, Seaside, Smalltalk - <AUTHOR> http://seaside.gemstone.com/

<comment><USER2> GLASS, truly a name that connotes rock-solid system architecture.

<comment><USER3> Apparently no one told them that all development of new web programming paradigms and architectures ceased in 1999.

<comment><USER4> I suspect the Auctomatics (and their millions) would disagree with you here.</comment></comment></comment>