37 Signals profiled in Slate.com - <AUTHOR> http://www.slate.com/id/2248881/

<comment><USER2> _When they tell you that failing in business isn't all it's cracked up to be, you might wonder why they needed to point that out—after all, who thinks failing is something to be proud of? Welcome to Silicon Valley._

Nonsense. Nobody in Silicon Valley thinks failing in business is something to be proud of. People here tend to think that _trying_ to start a business is something to be proud of, and that failing isn't (usually) something to be ashamed of. That's completely different.

</comment><comment><USER3> You mean "37signals".

<comment><AUTHOR> I don't give much of a rat's ass for StUdLy CapS and other typesetting affectations.

Is 37{" S" / "s" }ignals populated with smart guys who have stuff I want to listen to?

Absolutely!

Do I care to contort myself to follow their affectations?

No.

<comment><USER4> I find Wikipedia's policy on typesetting of trademarks pretty sensible, and mostly use something like it in my own writing: [http://en.wikipedia.org/wiki/Wikipedia:Manual_of_Style_(trad...](http://en.wikipedia.org/wiki/Wikipedia:Manual_of_Style_\(trademarks\))

<comment><AUTHOR> > Trademarks in CamelCase are a judgment call.

OK, I guess that I agree with Wikipedia on this one!</comment></comment></comment></comment>


Ask HN: Why do you really hate ads? - <AUTHOR> <comment><USER2> Number 1 reason for myself is the associated thousands of scripts/calls/cookies that slow sites down to the point of being unusable.

Number 2 reason is how appropriate they are in the context of the media. I can understand having ads to fund a site, but full page ads with miniature close buttons on mobile and even worse, the App Store auto directs just destroy the journey.

Number 3 reason is the crap I get shown. YouTube insists on showing me war simulation games or trading apps. I care for neither. I also wonder how people with PTSD cope with the casual 'war as recreation' ad's that can spring up when watching something like a woodworking TY channel.

</comment><comment><USER3> Slow DSL. I pay a lot for 2mbps internet and frontier won't upgrade. I can upgrade with ublock plus.

If adtech companies leaned on Washington to get better internet in the field, I would support them. But they don't.

<comment><USER4> how about paying for content: I am working on this: [http://minutesworth.launchrock.com](http://minutesworth.launchrock.com), currently have a chrome extension that keeps track of time you spent on a website. currently in the works is pub payouts.

</comment></comment><comment><USER5> 1\. Running someone's random JavaScript code exposes me to malware, even on reputable sites (who have no control over the content of the ads they get from their ad network).

2\. Tracking me across the internet violates my privacy (and feels creepy).

3\. Ads that play video or audio are excessively intrusive. If the ads take up more of the user's attention than the web site, the web site isn't worth visiting.

</comment><comment><USER6> in most of the cases they are not relevant...

</comment><comment><USER7> They are an assault on my visual field. I'd just rather not see them. And I don't like what they stand for. I'm aware that a lot of thought goes into their design, though often it doesn't seem like it. I guess all they have to be is eyecatching, which is what makes them particularly annoying.

Yes I know Nike exists already, thanks very much. I'll choose my alcohol when it's in front of me, thanks very much. I'll search for products when I actually need something, thanks very much. No, your attractive models will not make me buy your products, thanks very much.</comment>


Only in SF: Someone built a graveyard for defunct startups in Dolores Park - <AUTHOR> http://www.sfgate.com/bayarea/article/startup-graveyard-dolores-park-san-francisco-sf-12323910.php <comment><USER2> I must say I found this very very clever -- I worked for one of said startups and at the end, a tombstone is kinda how it feels.

</comment><comment><USER3> It's a bit ironic given that it's been illegal to bury _people_ in SF for over 100 years.</comment>


Ask HN: Is Elixir/Erlang getting trendy because of the rise of bots and chat? - <AUTHOR> Recently I got interested in Elixir. I wonder if the Elixir hype is just a fad or something that is here to stay and worth to learn. <comment><USER2> Elixir is trendy because its powerful concurrency model, a lot of experts think that Elixir is the best fit for future multi-core software arquitecture.

</comment><comment><USER3> It's not a fad, it's a movement:

[https://twitter.com/pmarreck/status/650430959951593472](https://twitter.com/pmarreck/status/650430959951593472)

</comment><comment><USER4> Not because of the bots (clearly, as Elixir is hyping for longer than chatbots kickback) but it could still be a fad. Only time knows. Why no learn a fad tho?</comment>


The Importance of Sitemaps - <AUTHOR> http://www.codinghorror.com/blog/archives/001174.html

<comment><USER2> Sept 16th: one day after public launch 10%

October 11th: less than one month after public launch 50%

Ermmm surely one day after public launch, most traffic was coming from blogs, news sites, and other "launch hype", which explains the low % from websites. I don't think you can conclude anything else from those figures.

</comment><comment><USER3> Sitemaps only help the googlebot understand the link structure and contents of your site. It doesn't actually do any of the crawling or directly help indexing. It indirectly helps by telling the bot more about your site.

Atleast this is from all that I've ever read about SEO and indexing, but always curious to hear from experts.

<comment><USER4> I don't think he said anything about SEO really. He just wants a search for "How do I foo a bar" to find the "How do I foo a bar" question on his site. Since there are no links to that question, the only way for Google to find it is via a site map. Totally reasonable.</comment></comment>


Ask HN: Where can I find a list of data repositories/api's? - <AUTHOR>

I currently make data visualizations at a Mega Corp, but would like to start building some on my free time, and wanted to browse data sources to see what's possible. <comment><USER2> It's like asking "can I find a list of cat pictures on the internet?"

Use google. There are tons of datasets and APIs of _all_ kinds.

<comment><AUTHOR> Well yeah, I have done that, and I'm sure there is a great site that has the best cat pictures. Better than what google can find. :) Thanks for your help</comment></comment>


'Free-mium,' self-funded models set to gain traction  - <AUTHOR> http://news.cnet.com/8301-13846_3-10127788-62.html <comment> puzzle-out Free-mium is a very precocious model. It is very difficult to get the balance right in service terms, namely how do you decide what to put in the premium service and not in the free one. The free-mium model has never taken traction in other industries, as normally for something to be commercially viable, the free service should be good enough for people to pay for it. Think of Shakespeare's theatre - people were prepared to pay for even the crappest places in the audience because the product itself was good. I think tiered, subscription based business models will be the most likely development, especially in a recession when the main barrier to going down the subscription path - that a competitor could come along and offer the same service for free - is becoming less relevant given the VCs are becoming less willing to subsidise such practices.

<comment><USER2> Pricing is always a challenge, freemium just introduces a "free trial" tier that can be temporary or permanent.

Other industries have variations: e.g. semiconductor companies give away complex datasheets and simulation models to give prospective users an idea of what the part can do. Especially when you are offering a distinct or new experience you need to give you prospects some way to appreciate what they can accomplish with your offering.

</comment></comment><comment><USER3> Its interesting that Rosenberg focuses on the self-funded model only for what he calls "ecosystem" startups. I disagree that the issue is risk in that way that he describes -- i.e. that Facebook or Apple could theoretically crush these companies quickly. Instead, I think the issue is more that the platform itself is unstable. Particularly with a limited platform like Facebook, nobody really knows if these apps will be profitable in 5 years, and even then, what the growth of an "app within an app" will be. Since VC's are generally interested in the big payouts, it always seemed to me like funding Facebook app companies was largely outside the VC domain.

That said, I generally agree with the big picture about self-funding -- its pretty much in line with what PG said in the recent essay about VCs in this recession.

</comment><comment><USER4> Freemium model seems very fragile unless you achieve enough visitors to sell directly the ads.

Otherwise you really have to get a lot of visitors to make decent money.

</comment><comment><USER5> I wonder how many people actually use the "free" side of the freemium model in practice. I know I signed up for a ton of apps but never actually used them.</comment>


Ex-Tesla worker escalates battle by blowing whistle to SEC - <AUTHOR> https://www.autonews.com/article/20180711/OEM/180719910/ex-tesla-worker-escalates-battle-by-blowing-whistle-to-sec <comment><USER2> A better title would mention this is an Ex-Tesla worker currently being sued by Tesla...

I'm not saying there is no story to be read, in fact I plan to look in depth a bit later, but the current title is somewhat misleading

<comment><USER3> More importantly it should mention that he was caught red handed stealing company secrets and sending them to others. This one is a bit better coverage of it: [https://arstechnica.com/tech-policy/2018/07/tesla- whistleblo...](https://arstechnica.com/tech-policy/2018/07/tesla- whistleblower-tells-sec-of-alleged-wrongdoing-at-gigafactory/)

<comment><USER4> > More importantly it should mention that he was caught red handed stealing > company secrets and sending them to others

That is a roundabout way of describing a whistleblower. He didn't give information to competitors, he gave it to journalists and the SEC.

<comment><USER5> Which journalists? If he did, they don't seem to be in a hurry to print what he gave them.

<comment><USER4> I'm not sure if there is a list, but he definitely gave info to Business Insider and that is apparently what set Elon off:

[http://www.businessinsider.com/tesla-whistleblower-martin- tr...](http://www.businessinsider.com/tesla-whistleblower-martin-tripp-elon- musk-waging-war-on-him-over-leaks-2018-6)

This is the piece they used his info for:

[http://www.businessinsider.com/tesla-model-3-scrap-waste- hig...](http://www.businessinsider.com/tesla-model-3-scrap-waste-high- gigafactory-2018-5)

<comment><USER6> Why would anyone leak to BI? I is already hard to trust anything on that website.

</comment></comment></comment></comment></comment></comment><comment><USER7> The media reports on this story are quite conflicting... Not sure who to believe. Is this guy an innocent whistleblower who's being targeted by Tesla or someone with an agenda against Tesla trying to sabotage the company?

<comment><USER8> That's why we have courts. It's not our job to decide he said she said cases like this in the public square where we simply cannot have access to the necessary data. Not saying courts are perfect, but at least they have the ability to get the necessary data.

<comment><USER9> It's just a shame someone has to do crowdfunding to afford a fair trial.

</comment></comment></comment><comment><USER10> As a Monday morning quarterback of Tesla, I'm really curious to see how this turns out. On the one hand, I see whistle blowers as heroes and if they have information about dangerously using unsafe batteries, then that's great.

On the other hand, if the early allegations are true that the employee was altering code and logging in under usernames other than their own to do so, that sure doesn't feel like whistleblowing.

<comment><USER11> The civil complaint doesn't say anything about logging under other usernames, just that his data-scraper-exporter was running on other people's machines:

[https://arstechnica.com/tech-policy/2018/06/tesla-sues- emplo...](https://arstechnica.com/tech-policy/2018/06/tesla-sues-employee- alleged-to-have-stolen-gigabytes-of-data/)

> _His hacking software was operating on three separate computer systems of > other individuals at Tesla so that the data would be exported even after he > left the company and so that those individuals would be falsely implicated > as guilty parties._

I guess it's possible that Tripp did indeed add some code that explicitly tried to frame actual employees. But the fact that his code ran on other people's computers, without any other specific evidence (which may be forthcoming, of course) does not necessarily entail that he intended to frame people.

<comment><USER12> How did he have permissions to run unauthorized software on other computers - let alone his coworkers' workstations? Where is the OpSec?

<comment><USER13> In just about any office I can see it being pretty trivial to walk over to a co-worker's PC and insert a USB drive and run a program. It would take seconds, and unless all employees lock their PCs 100% of the time even if they walk away for a few seconds, there isn't much in the way of "opsec" that can stop it (just things like cameras that can find the guilty party after the fact).

Things like disabling USB ports or requiring passwords to be entered constantly for everything would most likely impact the business enough that it would be more harmful than any single instance of stolen IP, and even then they only reduce the likely hood of an attack like this, they don't stop it.

</comment></comment></comment></comment><comment><USER14> > Tripp's allegations were summarized in a statement from Meissner Associates, > a New York-based law firm that represented a former Monsanto Co. employee > who was awarded $22 million in August 2016 for tipping off the SEC to > improper accounting.

 _much later down the winding language of the article_

> Meissner said he won't be representing Tripp in the federal lawsuit in > Nevada. Tripp "is in the process of interviewing attorneys," he said in a > phone interview Wednesday. "It's not easy to find counsel. There's almost a > cult of Tesla."

Why not present these facts together in one paragraph? Because people don't read all the way through, and it helps feed rumours.

Just another article hitting the HN front page with a sensationalist title and breathless writing.

</comment><comment><USER15> Tesla should have an internal whistleblower program. Elon Musk should run it himself with a dedicated email address that strips "From" information to anonymize the sender.

Really, any CEO of a large company should do this but he's the kind of person that would actually care to hear about problems rather than ignore them.

</comment><comment><USER16> "a cult of Tesla"

Nope, not possible. I mean it would be ridiculous if a large number of people displayed unthinking loyalty to a money-making venture just because it projected an image that catered to their prejudices, wouldn't it?

<comment><USER17> > Nope, not possible. I mean it would be ridiculous if a large number of > people displayed unthinking loyalty to a money-making venture just because > it projected an image that catered to their prejudices, wouldn't it?

basically ICOs

<comment><USER16> I'm pretty sure some of the people involved in IOTA are going to wind up living in a commune and wearing identical tracksuits.

I do find it interesting how personally invested many people on this site are in the success of Elon Musks ventures.

I mean it's OK to be a fan; but when you start rejecting evidence of mistakes or even malfeasance and attack other people for showing signs of critical thinking on the topic. That gets to be a problem.

<comment><USER17> so 99% of ICO isn't a scam or never deliver? are you involved or invested in crypto or ico?

<comment><USER16> Your reading comprehension is as evolved as your attitude.

</comment></comment></comment></comment></comment><comment><USER17> should i withdraw whatever money I have left in my stock brokerage or

go all in on nearly expiry puts

<comment><USER12> Please have a discussion with a financial adviser or other qualified fiduciary.

[https://www.investopedia.com/terms/f/fiduciary.asp](https://www.investopedia.com/terms/f/fiduciary.asp)

<comment><USER17> how will that help me?</comment></comment></comment>


Draft – A Physical Notebook That Syncs To The Cloud. - <AUTHOR> http://www.kickstarter.com/projects/marshallhaas/draft-a-physical-notebook-that-syncs-to-the-cloud

<comment><USER2> Awesome idea. I tried the Evernote/Moleskin notebook ([http://evernote.com/getting_started/moleskine/](http://evernote.com/getting_started/moleskine/)) for 3 months. Wanted to like it but couldn't - photographing my pages was a pain. Wanted to like Penultimate (by Evernote) as well - but writing on an ipad was way to far from paper.

Certainly some issues with this - going without your notes during processing. not getting back notebook. etc. - but nothing major.

Wonder how a service would do that made the rounds and scanned notebooks at your office or house.

</comment><comment><AUTHOR> I really like the idea of this. I wonder if they will let you pick the frequency of new notebooks. I don't think I would use an entire notebook in a month but maybe with this I would.</comment>


Ask HN: A way to manage a music library - <AUTHOR> I've been having issues with iTunes losing certain singles or entire albums lately, or even messing with my organizational structure. Luckily I have backups and sometimes can even go through my purchase emails to find download links that are still alive. There has to be a better way. <comment><USER2> Don't depend on online services, other than for metadata lookup. I have a Logitech Squeezebox and run Logitech Media Server on a DIY Windows 10 fileserver. I also use MP3Tag extensively to clean up my media files. Looking at getting a Synology device and possibly switching over to that at some point. (But still running LMS for my Squeezebox at home.)

</comment><comment><USER3> I use beets ([https://beets.io/](https://beets.io/)) for managing my mp3 library. If you can think of something it it can probably do it, and if not you're just a couple lines of python away.</comment>


Google Chrome may soon get audio indicators to show you noisy tabs - <AUTHOR> http://thenextweb.com/google/2013/02/25/google-chrome-may-soon-get-audio-indicators-to-show-you-noisy-tabs-keep-them-open-when-memory-runs-out/ <comment><USER2> I wrote the MuteTab Chrome extension (<http://www.mutetab.com/>) and have been following the development of this feature in Chrome's bug tracker.

The reason this feature hasn't existed is that Chrome (like all browsers other than IE) would use just a single instance of Flash for all tabs so the browser could not control the volumes independently nor tell which Flash instances were playing sound or might ever play sound. You can read this explanation from Chrome devs here: [http://www.reddit.com/r/IAmA/comments/gdyun/iama_we_are_thre...](http://www.reddit.com/r/IAmA/comments/gdyun/iama_we_are_three_members_of_the_google_chrome/c1mvh7c)

My understanding (just from reading comments in the bug tracker) is that Google was able to get Adobe to cooperate with them and add some hooks so they could keep track of the sounds for each Flash plug-in separately.

I was able to try this feature out in today's Canary build and it worked for me on the two sites I tried it on: youtubedoubler.com and homestarrunner.com.

The URL chrome://media-internals is also interesting in that it will show an entry for each plug-in instance browser-wide. Hopefully they will have a UI element similar to this or like MuteTab so that a person can find the tab making sound when they have a huge number of tabs open in multiple windows and cannot see all of the audio indicators.

<comment><USER3> This is one of the benefits of our work to sandbox Flash. In order to support the sandbox we had to broker out all IO and system access by porting to PPAPI. So, this means that everything goes through Chrome's stack and we can control it much like web content content. Unfortunately, this doesn't work for NPAPI plugins since they don't go through Chrome's stack.

</comment></comment><comment><USER4> This is more exciting than half of the features in HTML5.

<comment><USER5> Only if it works reliably though. I wonder whether they can make it work with plugins.

Maybe you'd have to get a hook with some platform specific OS API that tells you when sound is playing (does this even exist though)? You could then match this to user interactions within the browser - did the user click inside my browser window when the event started? Then it's probably happening within that tab and I'm gonna show him that animation. False positives wouldn't be very harmful here, so you could let that slip.

<comment><USER6> Safari won't run any flash animation until you actually have the tab active and is pretty reliable. I'll be happy if they do that.

<comment><USER7> I've never run Safari and I find this interesting. So if the tab is say, torn apart and put on a second monitor (which is visible), but you're working on another tab, does it literally pause the animation halfway?

<comment><USER8> I'm pretty sure it's just starting the animation.

<comment><USER9> Can confirm this. It was a good feature when using youtube. I usually search for something then shift+click about 4-5 links and watch them one by one. In chrome you have to go into each on of those tabs and pause the video to avoid a clusterf*ck of different sounds. With safari it seems to do it automatically.

<comment><USER10> The "Stop Autoplay for Youtube" Extension helps with that: [https://chrome.google.com/webstore/detail/stop-autoplay- for-...](https://chrome.google.com/webstore/detail/stop-autoplay-for- youtube/lgdfnbpkmkkdhgidgcpdkgpdlfjcgnnh?hl=en-GB)

</comment></comment></comment></comment></comment></comment></comment><comment><USER11> Firefox bug for this:

<https://bugzilla.mozilla.org/show_bug.cgi?id=486262>

<comment><USER12> I would also love a simple indicator of which tabs are 'busy' consuming cycles or generating garbage, so I know which tabs to kill first to get back to acceptable performance. (Perhaps even just a rough indicator of how many setTimeout()s are originating from a page would be enough.)

<comment><USER3> Use the Chrome Task Manager. You can get to it via the Tools menu, or a keyboard shortcut (shift+esc on Windows).

<comment><USER12> s/love/love in Firefox/

...as I meant to imply by replying under an FF issue.

But speaking of Chrome, I'd prefer the activity indicator in the tabs themselves... mapping the Task Manager names to my many tabs distinguishable only by not-necessarily-unique favicons is a pain.

</comment></comment></comment></comment><comment><USER13> If you are excited with this feature, you should probably try "click to play" for plugins.

<comment> k-mcgrady The main use I have for the new Chrome feature wouldn't be to find out where audio was playing that I hadn't started, it would be to find out which tab was playing audio if I had lots of YouTube tabs open and I couldn't remember which one I had played.

</comment></comment><comment><USER14> Finally, a way to know what stupid portfolios have automatic music so I can close them without even looking and thus jot being tempted to hire people that do that.

<comment><USER15> that's why you need to hire me ! i dont.

</comment></comment><comment><USER16> I hear a lot of people complaining about that very often. I can't remember the last time I had sound in my browser without my knowledge. Maybe it's because most people don't use adblocker?

I have no clue.

</comment><comment><USER17> Isn't the fact that we're all so excited by this hampered by the fact that it sucks that Chrome automatically starts youtube videos when you open the tab and that's the only reason we need this.

<comment><USER2> Use Chrome's "click to play" feature or extensions such as Flashblock or "Stop Autoplay" if this is your problem. This feature is more useful generally.

<comment><USER18> Links to extensions that stop autoplay:

for Chrome – extension "Stop Autoplay for YouTube" [https://chrome.google.com/webstore/detail/stop-autoplay- for-...](https://chrome.google.com/webstore/detail/stop-autoplay-for- youtube/lgdfnbpkmkkdhgidgcpdkgpdlfjcgnnh?hl=en-GB)

for Firefox – user script "YouTube Auto Buffer & Auto HD & Remove Ads" <http://userscripts.org/scripts/show/49366>

<comment><USER19> Youtube Center is probably miles ahead of both of those.

</comment></comment></comment></comment><comment><USER20> So I wanted to put together some rudimentary search abilities to our application and I installed solr and all that. I wanted to use dynamic queries and found a way to get dynamic queries working. All thanks to Google. This perhaps took less than a day.

However, the search results were not what I was expecting. Searching 'fname + lname' would return all records with the lname field. No amount of Googling helped and I'm still stuck. I started googling by using phrases such as 'dynamic query not returning results in solr'. When the results didn't solve my problem I got more specific. 'Dynamic query solr with relative boosts not returning results'. No luck. I am learning all about Solr, the schema, eDisMax query processor and all the other good stuff but am not finding any resolutions. Also this process is very exhausting.

I have found this kind of learning to be not stick in memory. Meaning - nothing sits in memory. So tomorrow if an interviewer asks anything about Solr setup - I'll have no answers, or if I have to setup Solr again - I'll have to follow the Google route or follow a manual. Not sure if this is effective but I'd be comfortable having stuff in my memory rather than depend on Google for a majority of my tasks.

</comment><comment><USER21> BBC Programme pages with embedded iPlayer change the title of the page to contain a ▶ (play symbol) when the content is playing.

E.g. <http://www.bbc.co.uk/programmes/b01qrn4y>

Perhaps this is common but I hadn't seen it until recently.

EDIT: wanted to add that this means you can see that the page is 'playing', but it doesn't work if you pin the tab in Chrome.

</comment><comment><USER22> Great news. An indicator for CPU usage would be great too.

<comment><USER23> I would love that too. Blows my mind sometimes how much CPU some pages or sites use. One of my kids plays Moshi Monsters, and that seems to challenge the CPU more than even Far cry 3. Which to me is absurd. I suppose that would be something to do with MM not using the GPU?

So yeah, a CPU indicator in the tab could be handy.

<comment><USER24> Moshi Monsters must use some very realistic monster fur rendering if it's heavier than Far cry 3 ;)

<comment><USER23> Dunno mate. But I do wish I could hunt and skin the little buggers, like in FC3!!!

</comment></comment></comment></comment><comment><USER25> I am excited about this feature. Its really useful when you have tabs that autoplay some sound and you are hunting around to close that tab. Also, if you use grooveshark or some other music service and its in the browser.

</comment><comment><USER26> Firefox alternative I personally prefer: [https://addons.mozilla.org/en- US/firefox/addon/suspend-backg...](https://addons.mozilla.org/en- US/firefox/addon/suspend-background-tabs/)

</comment><comment><USER27> Thank you google! I was just thinking about this problem the other day and was even contemplating trying to build something myself but then realized I probably just shouldn't have so many tabs open.

</comment><comment><USER28> Good idea but:

How about visual indicators of CPU-burning tabs, especially when in the background?

How about a ctrl-C that kills all JavaScript executing in the foreground page (or something)? In my experience Chrome is good for three infinite loops or similar bugs before it needs to be restarted (manually process killed in Windows) while Firefox is pretty much dead after one. Isn't Chrome the "one thread per tab" browser? Why is it so hard to kill JavaScript when debugging?

<comment><USER29> The CPU feature already exists. Check out the Chrome Task Manager: [http://googlechrometutorial.com/google-chrome-other- settings...](http://googlechrometutorial.com/google-chrome-other- settings/Google-chrome-task-manager.html)

</comment></comment><comment><USER30> I found a chrome extension a few months ago that does a lot of this. It's called MuteTab and bills itself as 'browser-wide granular sound management for chrome'. It's not perfect with flash, but makes a huge difference. <http://www.mutetab.com/>

EDIT: here's the github - <https://github.com/PhilGrayson/MuteTabs>

<comment><USER2> That is not the github. That project is "MuteTabs" which is different than MuteTab.

</comment></comment><comment><USER31> If you're curious about the HTML5 version of YouTube, you can opt-in at <https://youtube.com/html5>

<comment><USER32> Definitely worth checking out. Unfortunately, HTML5 YouTube players seem to start playing automatically, so I can't just open links to YouTube videos in background tabs.

I look forward to a setting (or simply changing the default for non-active windows) to disable autoplay.

<comment><USER31> The Flash version of YouTube auto-plays for me, so it's about the same.

</comment></comment></comment><comment><USER33> >>This change would presumably also be very useful for instantly recognizing which tab is annoyingly blaring sound when you have countless tabs open.

Fantastic, I've wanted this feature for years; and counting browser tabs is easy. FYI, This isn't my feed, just some public one I found. <https://cosm.com/feeds/63631>

</comment><comment> jv- I like the idea but hope that they do not use the current implementation. A moving "favicon" will add visual clutter.

</comment><comment><USER34> Another example of this can be seen in the Web Speech API (<http://www.google.com/intl/en/chrome/demos/speech.html>). You will need Chrome Canary in order to test.

I'm currently building a voice-to-text transcriber using the Web Speech API.

</comment><comment><USER35> Sounds can be annoying, but the top problem for me in Chrome are still accidental clicks on close button when there's lot of tabs open. A simple option to hide the close buttons on all inactive tabs would save a day, but I guess it's not "challenging" enough feature for Google engineers...

<comment><USER2> This isn't what you asked for, but you can unclose a tab by pressing Ctrl- Shift-T

<comment><USER36> Or in the new tab window in the bottom right there is "Recently Closed" where you can unclose tabs and groups of tabs.

</comment></comment></comment><comment><USER37> Multiple people have pointed out that Chrome has click-to-play for plugins. Great! But now that new HTML5 features (<video>/<audio>/Web Audio API) are widely available and ripe for abuse, will we have any options for disabling autoplay for those?

</comment><comment><USER38> Happy to see this. I frequently keep a ton of tabs open and hate being startled by a random one making noise through an ad. In Fact, about a year ago I wrote a sticky note to myself to make this as an extension for a side project. Never did get around to it...

</comment><comment><USER39> It's working in Canary for me, even in NaCL Flash (I wonder how many layers of abstraction implementing _that_ had to break through) - it can tell you when music's playing and stopped. I'm not sure how far of a leap an EQ display is, though.

</comment><comment><USER40> Great, yet another feature that should be being implemented by the OS VENDOR, intead being implemented in a non-standardized manner by an APP DEVELOPER.

See kids, this is what happens when your OS vendors decide that its more important to add shiny to their products than it is to fix deep architectural problems. In this case, that problem is that the AUDIO API's do not already have a native way to add this indicator, anywhere in the OS ..

IF there were a real Digital Audio Mixer implemented in your average Consumer OS, then we'd have per-app audio controls natively being included in such a Mixer interface .. however, the OS vendors have decided its more fun to make shiny things than actually .. you know .. provide valuable OS services.

Color me grumpy. It sucks that the Google Chrome team are having to implement this..

<comment><USER24> What do you mean? A browser knows which of its tabs are doing what, the OS has no idea of the concept of tabs in one browser.

<comment><USER40> Every audio stream in the OS should be backed up with an OS-based Mixer control, is my point. We had it in BeOS and now it seems .. its finally possible in Win7 .. but yeah .. these aren't the only OS's around to run Chrome on ..

<comment><USER24> So if you have 50 tabs open, the OS should expose 50 audio sliders somewhere??? How will you know which one is for which tab? Also, isn't it better to be able to CLOSE that tab rather than letting it continue play audio and just mute it?

<comment><USER40> If you have one channel in the system audio mixer for every channel that the system is playing then yes: you can just see what channel is active and mute it. Like on any old mixing desk.

</comment></comment></comment></comment></comment><comment><USER41> I wonder if this has anything to do with the Google version of Flash (called "Pepper") that Chrome now includes -- if that will be used as a special hook or something. Or if there's another way to do it.

<comment><USER3> For Flash it does. Since Pepper plugins use our system/IO stack we can handle them much the same way we do normal web content.

</comment></comment><comment><USER42> While I'll be glad for the audio indicators why not just mute every tab by default? Any user interaction on a page would unmute that tab.

Can I also get a bandwidth/data transfer rate indicator per tab too?

<comment><USER43> I often listen to Grooveshark or Youtube on an invisible tab.

</comment></comment><comment><USER44> Sweet. It would be better if we can mute it by a single click.

</comment><comment><USER45> If this works reliably, what a feature! I've been wondering for years why browsers didn't show you what tabs were making noise, I'm glad it's a reality now.

</comment><comment><USER46> <http://www.mutetab.com/> is a chrome extension that solves this problem but in a different manner.

</comment><comment><USER47> Firefox lazy-load is still better. Also, Ubuntu's future integration with audio-menu also (why wasn't it done on browser-level?).

</comment><comment><USER48> I always wondered why they don't integrate Play/pause in tab if you are on YouTube page - since Google is owner of both.

</comment><comment><USER49> Even better would be a play/pause button... or is that not feasible? I'm not so familiar with browser development.

<comment><USER50> Perhaps a mute/unmute would be more feasible.

<comment><USER51> Or a per-tab volume control. Volume control for HTML5 videos, games, etc. has always seemed to me like something that belongs in the browser chrome, not inside the tab itself.

(Really, this is another way to say, "I'm a lazy HTML5 developer and I think having to create a 'sound-effects preferences' view on every project I do is a bit silly, if the browser could just be handling it for me." ;)

<comment><USER52> PulseAudio, I already get that for free :) The default KMix app in KDE presents app volume sliders as well as the Master audio slider in the tasktray icon. One of my absolute favorite linux features, especially since I pass through my Xbox and I can control it too.

<comment><USER51> Oh, Windows does it too--but that's per _app_ , not per _tab._ Apparently quite a few people like to listen to music on youtube while playing my game with the volume off :)

</comment></comment></comment></comment></comment><comment><USER53> Fantastic news.

Trying to figure out which page is making noise, was most of the reason for installing an ad blocker.

</comment><comment><USER54> This is pretty great, but I'm dismayed that it's even needed because someone somewhere started the trend of triggering audio without the user's interaction.

"CONGRATULATIONS, YOU'RE A WINNER!"

Congratulations, you're a jackass. You do NOT interrupt Black Sabbath.

</comment><comment><USER55> Bell in window 0

</comment><comment><USER56> wonder how it is implemented. How can chrome possibly know if a flash or silver-light is playing a sound ?

</comment><comment><USER57> That is an incredibly useful feature.</comment>


Powerful antibiotic discovered using machine learning for first time - <AUTHOR> https://www.theguardian.com/society/2020/feb/20/antibiotic-that-kills-drug-resistant-bacteria-discovered-through-ai <comment><USER2> Not details on whether this _only_ kills bacteria.

There are many chemicals discovered over the years that kill bacteria, but have the downside of damaging/killing many other things (eg the patient).

<comment><USER3> Sounds like the main data sources were previous drug trials and possibly the kind of lists of similar compounds that drug companies generate and patent when they hope one of them might turn out to treat a particular disease well. So with some luck they have taken one that already has a few lab tests under its belt (like halicin).

</comment></comment><comment><USER4> We are just making better bacteria- we need to quit giving people antibiotics for the sniffles. Its just insane the number of people that think they NEED to have a pill for a viral cold. Your poor doctor has to put up with these requests all day.

Really cool work, I worry that long term we are going to need to find better ways to control Antibiotic abuse.</comment>


Ask HN: Why does AWS Lambda have a time limit? - <AUTHOR> Is the time limit something that we could potentially see removed in the future? <comment><USER2> Managing infrastructure that runs millions of programs in Turing-complete languages is a lot easier when execution time is known to be X, rather than potentially being infinite.

It also transfers a lot of complexity and responsibility for Lambda from AWS engineers onto the users of Lambda.

This setup makes sense to me, and I don't see a need for it to change.

If you have really long-running processes, a different AWS service like Elastic Beanstalk (or your own self-hosted Lambda-like service) is a better fit.

<comment><USER3> It's certainly a creative answer to the Halting Problem!

<comment><USER2> Parse.com did the same thing, as did all of those old-school PHP hosts, so it's been a common solution for at least the 22 years I've been using hosting services -- maybe longer.</comment></comment></comment>


Ask HN: Is there any lanuage which satisfies my need? - <AUTHOR> I have the following requirements 1. I need to work with complex data, so I need easy data transformation constructs (map, filter, lambdas etc.) 2. I need strongly statically typed language, as in my experience they are easier to debug, read and maintain 3. Binary compilation
I have worked with Go, Python, Scala and Kotlin, and seems now all of them fail somewhere.
Scala and Kotlin don't compile to Binary and my team doesn't want to maintain JVM dependency
Python is dynamically typed
Is C++ or any other language viable? <comment><USER2> Have you tried Typed Racket [https://docs.racket-lang.org/ts- guide/quick.html](https://docs.racket-lang.org/ts-guide/quick.html) ?

It's JIT-compiled, but it's doesn't use the JVM. And you can create an executable of your program if you wish.

It's generally faster than Python but not as fast as C. YMMV. [https://benchmarksgame- team.pages.debian.net/benchmarksgame/...](https://benchmarksgame- team.pages.debian.net/benchmarksgame/fastest/racket.html) The comparison use the (Untyped) Racket instead of Typed Racket. Typed Racket usually has a longer compilation time but a faster run time, because it has more optimizations. YMMV.

</comment><comment><USER3> If the reason for static typing is debugging, then what matter is ease of debugging, not static typing. If the reason for binary compilation is speed and/or easy deployment, then what you need is speed and/or easy deployment not binary compilation. They smell like XY problems. [1] To the degree they are XY Problems, Erlang is worth looking into. Pattern matching against variable input is what it does with decades of real world business critical deployment at vast scale. It doesn't look like other languages because it isn't. Good luck.

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

<comment><AUTHOR> I am aware with XY Problem. You are right about binary compilation for easy deployment (Though I believe Java is faster than Go, so the speed is not reason).

But static typed provide a plethora of other advantages. Erlang is one of the languages I had always in my checklist but never got into.

</comment></comment><comment><USER4> There's oodles of languages like that. I recommend Nim.

<comment><AUTHOR> How is tooling and STL maturity of Nim?

</comment></comment><comment><USER5> Try Rust

<comment><AUTHOR> Rust looks promising. I will try to see how good is tooling and dependency management</comment></comment>


React from zero: a simple tutorial for React - <AUTHOR> https://github.com/kay-is/react-from-zero <comment><USER2> For others who are probably going to skip this because it sounds like a getting started tutorial - it's not.

I've only skimmed it but it starts by building up the components React works with from scratch without any JSX / React helpers at all. Much better way to get an intuition of what's going on under the hood.

</comment><comment><USER3> I started going through this but got stuck on Lesson 4. I copied this file [0] as is and tried running it locally using live-server but I get an error.

Uncaught SyntaxError: /Inline Babel script: Adjacent JSX elements must be wrapped in an enclosing tag. Did you want a JSX fragment <>...</>? (36:4)

[0] [https://raw.githubusercontent.com/kay-is/react-from- zero/mas...](https://raw.githubusercontent.com/kay-is/react-from- zero/master/04-components.html)

<comment><USER4> Ah, and your _true_ React lesson has begun...

</comment></comment><comment><USER5> Somebody, please, publish a tutorial something like "Create simple web applications with Vanilla JS", or "How to build frontend-only apps using only native HTML5 APIs".

I can't believe people are still interested about this horrible, overhyped framework.

<comment><USER2> AKA: how to end up with your very own framework, that's not as good as this other "horrible, overhyped" framework and you have to do absolutely everything yourself because nothing works with it.

React fills a need and it's features are bourne of real world necessity. Even if you don't care for it, it's interesting because the lion's share of libraries are built to work with it these days and it's backed by a company that will keep it going. It might not be the best way to fill a specific need, but it's a good general tool.

</comment></comment><comment><USER6> It's interesting how I posted this multiple times over, no one cared and just when Dan stared the repo, it gets on HN front-page.

Anyway.

I started this a few years ago to show people how simple React really is and that you can use it in directly in the browser :)

Hope this helps many people.

Btw. I am a remote software consultant for hire.

[http://kay.is](http://kay.is)

and I have a Patreon.

[https://www.patreon.com/kayis](https://www.patreon.com/kayis)

Didn't know what goals I should put there, but maybe more tutorials in that style, for Angular, Vue etc.?

<comment><USER7> Who's Dan?

I think dad that there's no commitment to create some beginners' guide using jQuery and only just React, as the "go-to" solution for projects.

<comment><USER6> Dan Abramov is a React core developer from Facebook.

</comment></comment></comment><comment><USER8> That should be the default approach for tutorials on react, including the official web site.

Webpack, babel and create-react-app should be demonstrated as a conclusion, not as an introduction.

<comment><USER6> Yes, this was the idea.

Had the impression most people who didn't want to use React hated the tooling.

I was impressed that even Babel itself wouls run via script-tag :D

<comment><USER9> That is exactly correct, the tooling seemed like such a huge thing to sign onto just to find out if i liked a thing.

<comment><USER10> Which is why the React "getting started" docs pages were just revamped to emphasis that you can absolutely use it without any tooling:

[https://reactjs.org/docs/getting- started.html](https://reactjs.org/docs/getting-started.html)

<comment><USER8> It just mentions you can. The doc should do only that: without tooling.

It's a react tutorial, not a webpack/babel tutorial.

I'd even say you should start with a toto list exercice with only react.createElement, and only move to JSX later.

Using CodePen do show you full-gear examples is dishonest IMO.

<comment><USER10> Honestly, there's lots of different ways you can teach and approach learning React, in the same way there's lots of ways to teach and approach programming.

Is it better to teach with something resembling a "real app" setup, so the user can start doing something "meaningful" right away? Or is it better to strip away all abstractions and start from the bare bottom, so that the user understands exactly what's going on under the hood?

Both are valid approaches, and a lot of times it depends on both the individual's learning style and what their background is.

</comment></comment></comment></comment></comment></comment><comment><USER11> "Everything runs in the browser without a manual pre-compilation."

This a million times over. I know webpack isn't hard but it can be daunting to a newcomer.

<comment><USER6> Often devs new to a project don't need to setup the tooling anyway. They just need to build components and not to configure Webpack and Babel.

</comment></comment><comment><USER12> I'm fascinated by how much React Tutorials exist over the internet, and how one can replace another five minutes after it get published.

It feels like the community it still struggling with this framework , while it has existed for many many years... Very interesting.

<comment><USER6> Has nothing to do with React.

I'm blogging for over a year now, and the most views get the articles about basic JS stuff.

There are simply more people starting coding world wide than senior devs.

<comment><USER12> > Has nothing to do with React.

Then we might not speak of the same React. Angular and Vue have very rich documentation which makes tutorial unnecessary.

React doesn't have that, so it's very likely "has to do" with React.

<comment><USER13> vue and angular have plenty of tutorials. react is much more popular (at the moment), which is why one would notice material for it more often.

</comment></comment></comment></comment><comment><USER14> Appreciate the tutorials, thanks. I understand that the core concern of them is to demonstrate React, but it wouldn't hurt to use valid HTML. None of your pages have a html, head or body tag. Speaking as someone involved with accessibility I'd hate to think we were assuming that devs just know this stuff - how can we expect people to learn web accessibility guidelines or how to use ARIA when tutorials don't even come with the most basic valid HTML structures?

<comment><USER6> As far as I know, html head and body are optional per spec.

<comment><USER15> Yep, this is valid HTML according to the spec, and _should_ have no affect on accessibility. It might not be "valid" according to the W3C validators, but neither are many perfectly normal practices like proper custom elements (hyphen in tag name) and wrapping links around container elements. The era where validators were worth following has passed — we're now in the era where you need to learn to look at the spec for the laws of the land.

For a beginner React tutorial, I'm happy to see the React parts given emphasis, and the other parts don't matter simplified. Omitting those tags reduces noise, and is a good subtle way for people to discover that they are in fact optional.

</comment></comment></comment><comment><USER16> Should we expect a written summary for the lessons?

<comment><USER6> I don't know, do you expect a written summary of them?

I thought about turning the whole thing into an ebook once. Maybe a few extra lessons with stuff like HoCs/RPs, more lifecycle methods and some principles?

</comment></comment><comment><USER17> Jeez. Why does anyone do this to themselves? All the work by the javascript guy and then all the work by the server to produce simple HTML/CSS output.

I am positive someone will come here and make a claim of large, dynamic sites and reddit's favorite nonsense phrase about DRY but I am also positive more people learn React because online articles tell them to than a real need for them.

If one would spend all this time learning HTML/CSS/Javascript fundamentals, and how to properly use them, they would have the same questions I have after 14 years of doing this, for companies large and small, as to why anyone bothers with this, Angular, and all the others. It just makes no sense at all.

<comment><USER18> If you've been in the industry for 14 years, know JS and CSS inside out, and still don't understand why anyone wants to use React... I think you're the one missing some understanding, not the people who choose to actually learn the framework in question.

<comment><USER19> I disagree, everything is much simpler without React. I'm actually working on writing a tutorial for creating structured code for dynamic content with vanilla JS. With Ecmascript 6, a lot of advanced concepts has become much simpler and easier to read.

<comment><USER20> > everything is much simpler without React

What's "everything"? Writing a mostly static webpage with a few moving bits? Yeah, sure. Building and maintaining a complex SPA on a team of 4+ developers? I'll take React any day.

</comment></comment></comment></comment><comment><USER21> For the life of me, I can't understand why React is as popular as it is. A web application is simply HTML, CSS and Javascript. Why do people want to make it so damn complicated?

I was around when browser based apps started to take over the enterprise software world. One of the big selling points was its simplicity compared to native desktop development languages like (horrors!) Visual Basic. Anyone could open up Notepad and create a simple HTML page with some form elements and a submit button.

Now, I realize that browsers' capabilities have advanced enormously in the intervening years, but it's still just HTML, CSS and Javascript, once the transpilers and the zillion other build tools get done with it. And I would argue that someone who really knows HTML, CSS and Javascript at a deep level can write it directly and maintain it a lot more efficiently than with a bunch of third-party frameworks and an overly-complex build process.

<comment><USER22> When people tried to write big enough applications with JavaScript, they found out, that it was a mess. JavaScript is a terrible language, so another languages were born (including modern JavaScript which isn't that bad). DOM is a very low level and very verbose API, so various approaches were taken to simplify development, e.g. jQuery, Angular, React. Hello world apps might be easy to do without frameworks, but once you're making complex pages with dozens of inputs, asynchronous loading, etc, lack of frameworks is likely to turn your code to a mess. Or, if you're brilliant developer, you might invent your own little incomplete buggy framework.

It's similar to WinAPI. Sure, you can write C with WinAPI and it's enough for simple applications. But in practice people use better languages and frameworks.

Simple JavaScript has its place, of course. If I'm making text-only website and I want to introduce just a little bit of interactivity, like image gallery, using anything but a few lines of JavaScript is overkill.

<comment><USER21> _> When people tried to write big enough applications with JavaScript, they found out, that it was a mess. _

I have written huge, complex, graphics-intensive applications with Javascript, and that was not my experience at all. So maybe it's not the language, but the person using it that is responsible for the mess.

 _> It's similar to WinAPI. Sure, you can write C with WinAPI and it's enough for simple applications._

That is a very far-fetched comparison, in my view.

<comment><USER13> > So maybe it's not the language, but the person using it

oh. it would seem this is more about you feeling impressed with yourself, rather than making substantive arguments.

<comment><USER21> _> oh. it would seem this is more about you feeling impressed with yourself, rather than making substantive arguments._

That is my argument. It's simple logic. If I can get good results without React, I've proven that React is not necessary to get good results.

<comment><USER13> that seems like a trivially true statement, if not an outright tautology.</comment></comment></comment></comment></comment></comment>


Opening the Kimono to 200 People and Baring It All - <AUTHOR> http://www.fourhourworkweek.com/blog/2011/04/12/opening-the-kimono/

<comment><USER2> He's selling experience or byproducts of his work.

With early signup this week at $7k (cheapest) and for 200 pax, a 40% signup this week will give him 560k for a weekend of delivery of several years of experience and byproducts.

It's interesting. How many of us have byproducts or experience we can sell at a premium in single session events like this? Why aren't we doing more of this? Anyone have experience doing it?

Also another tidbit, he had an advance of <$100k for his first book, and $2+M for his second.

</comment><comment><USER3> Oh, fabulous. An opportunity to pay ten thousand dollars to hear Tim Ferriss talking about how awesome he thinks he is.</comment>


How is CipherCloud doing homomorphic encryption? - <AUTHOR> http://crypto.stackexchange.com/questions/3645/how-is-ciphercloud-doing-homomorphic-encryption

<comment><USER2> For people just now tuning in:

CipherCloud claims to be doing some really fancy encryption where they transparently encrypt data as it's pushed to the cloud. You're on a corporate LAN, when you visit Trello you see perfectly normal cards, you can edit them, search them, etc. But if a Trello admin snoops on the database, everything is encrypted with a key Trello doesn't know. In other words, your browser sees plaintext, the server sees client-side encrypted text, and all this works even though neither your browser nor the server has any support for this, all through the magic of one of CipherText's magic boxes sitting on your LAN. Magic, right?

A little too _much_ magic. When you think about it logically, there's no good way to have encryption like that, _and_ for the search feature (for example) to work! And if you dig through CipherCloud's presentations, documentation, marketing copy, and talk to them at tradeshows, the same thing becomes clear: They've mangled the encryption algorithm so badly that it is literally no better than XORing the data.

CipherCloud claims that every bit of documentation, every screenshot they've posted on their website, _and_ the things they've said at tradeshows - all of that - is wrong, and that the product they actually are selling somehow does magic things in some method completely unrelated to the way they have claimed the product works up until now. And in addition they used DMCA takedowns to prevent people referencing those totally-not-accurate screenshots on their website.

...sounds legit to me!

TL;DR: Run away. Screaming.

<comment><USER3> I was aware of this (and I think majority of their customers are aware of it). However, majority of companies which use CipherCloud just need to be compliant - in other words that cloud provider (administrator, support etc.) cannot read their data during normal course of operation (answering support questions, etc.).

Lets take an example of HIPAA - the idea of HIPAA is that company managing records needs to track who can see medical data and to detect when unauthorized employees or employees without legitimate cause looks health related records. So my understanding is that if a cloud provider starts decrypting data encrypted via CipherCloud, then that is already criminal act.

<comment><USER4> ROT13 would provide the same function, though.

</comment></comment></comment><comment><USER5> Ciphercloud have an image of an email inbox here ([http://www.ciphercloud.com/DesktopModules/LiveContent/Handle...](http://www.ciphercloud.com/DesktopModules/LiveContent/Handlers/GetImage.ashx?mid=588&eid=1&Type=View&PortalId=0)) or maybe here (<http://www.ciphercloud.com/gmail-encryption-ciphercloud.aspx>)

Looking at that list I see 2 emails from Google Alerts, with "google alert" in the subject header. I open the image in Gimp and cut n paste one header over the other header. They're identical.

Further down the list we see 4 emails with the subject header starting 'fwd'. We see that the start of the cipher text is identical for those three. Two of those emails have the same subject header, and we see their ciphertext headers are identical.

Ciphercloud claims that this is not the product they're selling.

</comment><comment><USER6> "In fact, CipherCloud has patent pending mechanisms to defeat frequency- analysis attacks."

There are two rules of crypto:

1) There are 6 people on the planet smart enough to invent new crypto schemes.

2) You're not one of them.

Anyone that claims "patent-pending mechanisms" for new crypto should be treated with _extreme_ skepticism unless they have an exceptionally well- established history of cryptographic research.

</comment><comment><USER7> Looks like CipherCloud's basis for trying to get this question taken down was the screenshots. Looked like classic fair use to me, but I'd rather see the answers up and public, even without the explicit illustrations.

(Context: <https://news.ycombinator.com/item?id=5579538> )

</comment><comment><USER8> Man, I had an idea to do something like but with more of a privacy angle as a browser plugin (i.e all your social network data would be 'encrypted' and only visible to people you designate ). Now I realize it could have worked if I applied 'the formula': marginally useful product + corporate targeting + large sales team.

<comment><USER9> Since when do you need (even a marginally) useful product for enterprise grade software?

</comment></comment><comment><USER10> Anyone in PR please take note the DMCA tactic drew way more negative public perception of CipherCloud then if they had just been quite or god forbid actually responded to the post.

<comment><USER11> It still amazes me that some companies have, apparently, never heard of the Streisand Effect [1]. This was arguably forgivable in a pre-Internet time, but now?

On the other hand, I suppose this might work as a signal - a company that does not understand the Streisand Effect probably doesn't understand a lot of other things. And if said company deals in cryptography? As another comment said, run away.

[1] <https://en.wikipedia.org/wiki/Streisand_effect>

<comment><USER12> There are comments like this every time a company does something dumb, tries to hide it, then it blows up in a big way. I absolutely agree with the sentiment, but I actually do wonder what the true probability of the Streisand Effect actually happening is.

Surely their are plenty of shady happenings like this that never get up voted enough on reddit, HN, etc, so the Streisand Effect never happens?</comment></comment></comment>


Ask HN: Getting into OS X/iOS development as a Rubyist: learn macruby first? - <AUTHOR>

I want to get into OS X/iOS development. I'm a rubyist.
Learning MacRuby would be easier for me, but I think I would inevitably transition to Objective-C as I reach its limitations (maybe some advanced stuff, libs, and iOS development).
But, Objective-C/Cocoa from scratch would be much harder for me to get into.
Is there any benefit in learning MacRuby first as a way of conditioning my brain into how Apple development works, or should I dive straight into Objective-C/Cocoa?
This is the learning path I have envisioned:
- Learn MacRuby (books, screencasts, ...) - Learn Objective-C - Learn Cocoa - Learn Cocoa Touch
Is MacRuby a good stepping stone or should I skip it? <comment><USER2> For iOS, MacRuby is unfortunately not an option, as it would require garbage collection. However, for writing OS X software, MacRuby works great (we just shipped an app with it in the App Store - <http://briquetteapp.com> \- and it has definitely been a joy to work with).

Unfortunately, it doesn't really make the learning curve any less intense. While Objective-C's syntax and style are somewhat difficult, the real challenge to Mac/iOS programming is having a working knowledge of the Cocoa API. MacRuby simply acts as a bridge between Ruby and Cocoa, meaning you need to know exactly the same amount about API methods no matter the programming language you choose.

Reading the currently available MacRuby book is a great idea - <http://ofps.oreilly.com/titles/9781449380373/>. If you find yourself confused by the concepts, you should try learning Objective-C and Cocoa first (I learned with [http://www.amazon.com/Cocoa-Programming-Mac- OS-3rd/dp/032150...](http://www.amazon.com/Cocoa-Programming-Mac- OS-3rd/dp/0321503619/ref=sr_1_1?ie=UTF8&qid=1306096811&sr=8-1)). It is certainly possible to dive in with MacRuby! Just remember that it's not 1.0 yet, and could present technical difficulties in unexpected ways. Otherwise, it's super fun!

<comment><AUTHOR> Thanks for your response! Briquette looks great :)

All things considered, it seems like MacRuby might make it's way onto iOS in the future (<http://iflipbits.com/post/1101983568/macruby-soon-on-ios>, although that's 8 months old, so I'm not really counting on it for now).

Yes, I figured that out after researching enough about obj-c, cocoa, and macruby. That's why I wondered if learning MacRuby first would ease me into the process by taking away a layer of difficulty (obj-c). Then after I get the hang of it, I could transition to objective-c, maybe through one of PeepCode's screencasts, "Objective-C for Rubyists".

<comment><USER2> It's definitely possible to start with MacRuby. It just requires a little more overhead to translate Cocoa documentation into methods that work with MacRuby (not to mention the occasional one that doesn't work right...).

As a Rubyist, there's definitely some differences (named parameters, for instance), but you get the hang of it pretty quick. As a Cocoa developer, debugging with MacRuby has issues, as Xcode doesn't always know about the right symbols since it's not compiled (but this is getting better!).

Use the MacRuby book, and learn to love Xcode's documentation, and you should be good to go. If you do have issues, email the macruby-devel mailing list or visit #macruby - the community is super friendly and happy to help!

re iOS: I'm really hoping. With MacRuby shipping by default with Lion, iOS 5 will hopefully follow suit this summer.

<comment><AUTHOR> With what you know, would you recommend I skip MacRuby and jump straight into obj-c/cocoa?

<comment><USER2> I would. MacRuby adds to the experience once you already know what you're doing. As an introduction to Cocoa, it adds a lot of difficulty too.

</comment></comment></comment></comment></comment><comment><USER3> I didn't bother using MacRuby as a stepping stone to Objective-C. Instead I learned C first. I had no experience with compiled languages so I figured it would be my best bet and I definitely think it helped a lot.

It's a little hard to get past Objective-C's syntax at first but after it all begins to click it's not so bad. I think learning the Cocoa API would prove the more difficult step in your learning path.

</comment><comment><USER4> If your objective is to write Mac OS X/iOS apps, move directly to Objective C.

As others have mentioned, there is no MacRuby for iOS, and the MacRuby for Mac OS X is fantastic, but a lot less capable than Objective C, still.

No slam to MacRuby though, as I suspect they'll be a tier 1 Mac development platform in the next 5 years.

</comment><comment><USER5> I don't think you have much of an alternative if you want to make good software for iOS. As for programming for OS X, cocoa has bindings for ruby, so that shouldn't be a problem. <https://secure.wikimedia.org/wikipedia/en/wiki/RubyCocoa>

<comment><AUTHOR> Indeed. Even though I know I'll eventually transition to Objective-C, I was wondering if learning MacRuby first would tender down the learning curve by easing me into how Apple development works by leveraging my existing knowledge.

What do you think?

<comment><USER5> I would just go for objective-c. MacRuby is in version 0.1 and might be more of a headache to figure out and circumvent bugs and holes then just learning objective-c. It's not a very difficult language and easy enough if you have tried C or Java before. You'll also need to handle memory (allocation and deallocation), but you could try to rely on GC, but not for iOS. Lynda.com has a video tutorial on objective-c and also tutorials on iOS programming.

<comment><USER6> MacRuby was version 0.1 about 3 years ago. A lot happened since, and we expect the next release to be our 1.0 RC. For Cocoa development, it's very stable, we haven't received any critical bug report since at least 3 releases.

<comment><USER5> Ah. I read 0.10 and thought 0.1. It's a logical mistake to make since 0.1 is a number and is the same as 0.10, I know a lot of other people count releases the same way, but skipping 0.10 might be a bit helpful, or keeping to a strict 0-9 policy. I saw Linus got tired of the 2.6.39 counting and just skipped ahead to 3.0.</comment></comment></comment></comment></comment>


Swift Crypto - <AUTHOR> https://swift.org/blog/crypto/ <comment><USER2> This is one of the first fruits born of the three-fold Swift 6 initiative [0]: 1) Accelerate growth of the Swift software ecosystem (cross platform tooling and libraries) , 2) Create a fantastic development experience (build times and debugging), 3) Invest in user-empowering language directions (language APIs and memory ownership model, etc).

This hits almost all of those, and while it isn't the highest priority for lots of Swift users today, Swift Crypto will hopefully create a way for there to be lots of future users of Swift on other platforms. I'm really happy that the Core Team seems to have really taken those 3 efforts seriously.

[0] - [https://forums.swift.org/t/on-the-road-to- swift-6/32862](https://forums.swift.org/t/on-the-road-to-swift-6/32862)

</comment><comment><USER3> Why was BoringSSL chosen as the backend? According to Google,

> Although BoringSSL is an open source project, it is not intended for general > use, as OpenSSL is. We don't recommend that third parties depend upon it. > Doing so is likely to be frustrating because there are no guarantees of API > or ABI stability.

[https://boringssl.googlesource.com/boringssl/](https://boringssl.googlesource.com/boringssl/)

<comment><USER4> Which is why, they're vendoring a copy of BoringSSL. The readme on their git repo[1] clearly states this.

[1]: [https://github.com/apple/swift-crypto](https://github.com/apple/swift- crypto)

<comment><USER3> That allows them to avoid the problem, but why introduce the problem in the first place? Why not use something that is intended to be used as a crypto library?

<comment><USER4> They had an existing API to comply with[1]. NaCl's API doesn't cover everything they need. Their choices were down to 1. Use OpenSSL (or a fork of it, which BoringSSL is) 2. Roll their own crypto. They chose #1 on all other platforms and stayed with #2 on the platforms they control (I might be mistaken here, perhaps they wrap some OpenSSL derivative on their own platforms too). And that in my opinion is a reasonable choice, given the constraints.

[1]: [https://developer.apple.com/documentation/cryptokit](https://developer.apple.com/documentation/cryptokit)

</comment></comment></comment></comment><comment><USER5> > On Apple platforms, Swift Crypto defers directly to CryptoKit, while on all > other platforms it uses a brand-new implementation built on top of the > BoringSSL library.

Oh great, more pointless differences. Just pick one and stick to it. If you trust the BoringSSL version then use it everywhere. If you don't, well, why are you using it on the other platforms?

I could understand it if it was very platform-specific (async networking, GUI controls, whatever). But come on, BSSL already exists everywhere, you're not saving yourself any porting work.

<comment><USER6> From most of the way down the page…

 _Given that we had do to this extra work, what advantage is gained from having two backends, instead of consolidating onto a single backend for both CryptoKit and Swift Crypto? The primary advantage is verification. With two independent implementations of the CryptoKit API, we are able to test the implementations against each other as well as their own test suites. This improves reliability and compatibility for both implementations, reducing the changes of regression and making it easy to identify errors by comparing the output of the two implementations._

<comment><USER7> This seems weird to me.

Creating a working implementation of an algorithm like Chacha20 is really not that hard if you're comfortable with bit twiddling. It's much harder to create an implementation that works and doesn't have hidden problems, like being vulnerable to timing attacks. So they've made it slightly easier to do the easier part of crypto (get a correct result), while increasing their attack surface and the amount of effort that it takes to do the hard part of crypto (getting a result securely).

<comment><USER8> It seems like it'd be easy enough to test whether or not something was vulnerable to timing attacks.

But maybe there's other vulnerabilities to be considered too and hard to have a suite which reliably tests for them all.

</comment></comment></comment></comment><comment><USER9> How is the state of developing Swift application on Windows? Last I checked it was using Linux on Windows to compile Swift code.

With Linux and Windows support, Swift can become viable for cross platform development.

<comment><USER10> From what I've seen, Windows APIs are in C++, and Swift doesn't really offer any C++ interop. You'd have to wrap everything in C functions first.

Plus, Windows isn't an officially supported platform for the Swift compiler.

I wouldn't hold my breath.

<comment><USER11> Most core Windows APIs are C APIs, the only stuff that requires C++ AFAIK are things like ATL and MFC which are just (very thick) wrappers..

<comment><USER12> This ignores all the new UWP API's which are the basis for modern Windows applications and will work on all future versions of windows. C++ is the preferred language here:

[https://docs.microsoft.com/en-us/windows/uwp/cpp-and- winrt-a...](https://docs.microsoft.com/en-us/windows/uwp/cpp-and-winrt- apis/intro-to-using-cpp-with-winrt)

</comment></comment></comment></comment><comment><USER13> This, combined with Apple claiming that the Afterburner card for Mac Pro is a programmable ASIC, is pretty interesting news.

> The new Mac Pro debuts Afterburner, featuring a programmable ASIC capable of > decoding up to 6.3 billion pixels per second > [https://www.apple.com/newsroom/2019/06/apple-unveils- > powerfu...](https://www.apple.com/newsroom/2019/06/apple-unveils-powerful- > all-new-mac-pro-and-groundbreaking-pro-display-xdr/)

<comment><USER14> Afterburner isn't user-programmable.

They use it for accelerating their codecs only.

<comment><USER15> I believe there's an SDK for it. It may not be publicly available (yet?), but third party codecs are going to be able to take advantage of it.

From what I understand (like a graphics card) the user defined software is loaded on at runtime (like a shader). Theoretically any software like this could be loaded.

<comment><USER10> Apple has never mentioned any SDK for programming the FPGA, AFAIK. Source?

<comment> yoz-y Craig Federighi mentioned in one interview (with Gruber I think) that the card can be reprogrammed. IIRC there were hints that they could be user programmable in the future, but of course nothing was neither confirmed nor denied.

<comment><USER16> I think this is missing in context. ( To me at least ). The card can be reprogrammed by _Apple_. And Apple could offer additional functions or features with it. I take that as something similar to current Afterburner function as in H.265 / 266 Video Encode or Decoding.

</comment></comment></comment></comment></comment></comment><comment><USER17> The first example shows AES.GCM.seal(...) and then states:

> This code avoids some of the numerous pitfalls that you can encounter when > constructing encryption schemes yourself. For example, it ensures that you > use a randomly selected nonce, and that you authenticate your ciphertext.

The AES-GCM nonce is only 96 bits, which _might_ be enough in many contexts, but is still a little short for comfort when selecting nonces randomly: [https://www.imperialviolet.org/2017/05/14/aesgcmsiv.html](https://www.imperialviolet.org/2017/05/14/aesgcmsiv.html)

It's surprising that the blog post just declared success without bringing this up at all.

(It looks like AES.GCM.seal does let you specify the nonce, though, in cases where you can maintain a counter yourself.)

<comment><USER18> This gives you a collision after 2^48 messages (via the birthday problem). Each message can be up to 2^36 - 256 bytes long.

This is less of a problem when each message also generates a random key, but still annoying to contend with.

XChaCha20-Poly1305 lets you generate 2^96 messages before having to worry about rekeying. [https://libsodium.gitbook.io/doc/secret- key_cryptography/aea...](https://libsodium.gitbook.io/doc/secret- key_cryptography/aead)

<comment><USER19> 2^48 is an absurdly large number.

That's enough that you can generate 1000 messages a second for several millenia.

<comment><USER17> Yeah, 2^48 is huge, but that gets you a collision probability of ~40%.

You'd want a probability more like 1-in-a-million (or 1-in-a-billion). That's 2^39 (or 2^34), which is 1000 messages a second for 17 years (or 7 months).

Again, probably still safe for many use cases. But you do have to think about it for a second. XChaCha20's 192-bit nonce capacity lets you totally ignore that factor, which is a nice property for generic crypto recommendations.

</comment></comment></comment></comment><comment><USER20> >This will allow Swift developers, regardless of the platform on which they deploy their applications, to access these APIs for a common set of cryptographic operations.

How often is swift used on a non-Apple platform? Also why?

<comment><USER21> There's some momentum for Swift on servers. It has at least the potential for C-like performance, although the last time I tried it wasn't quite there yet. Might also be useful for having a second stack that works on the client as well as the server.

Then, there's a big push for Swift+Tensorflow and other ML. The hope here appears to be the ability to implement "automatic differentiation" (or was it "integration"?). I don't remember enough math to fully understand, let alone try to explain that. But I can attest that even without being implemented, it has the power to get ML people salivating.

<comment><USER22> An example for zOS as a server: [https://www.kitura.io/](https://www.kitura.io/)

<comment><USER23> Kimura is cool, but not sure what its future is: [https://www.theregister.co.uk/2019/12/17/swift_ibm_pulls_bac...](https://www.theregister.co.uk/2019/12/17/swift_ibm_pulls_back_open_source_priorities/)

<comment><USER23> Whoops. Autocorrect typo. "Kitura." (I have "Kimura" in my dictionary).

</comment></comment></comment></comment></comment><comment><USER24> Oh great! I spent half an hour the other day figuring out how to do MD5 on Swift without CommonCrypto or Xcode.

The best answer was perfect swift libraries, which linked to OpenSSL but damn it was hard to figure out.

It is still too painful to write Swift outside of the blessed Apple world. This is a step, but still a long way to go.

</comment><comment><USER16> We are fast approaching Swift 6, and most of the Apps by Apple are still strictly Objective-C ( Not saying it is a bad thing ). Even the new Apply Pay App is Objective-C.

Where is Swift heading? If Apple isn't dogfooding it themselves.

<comment><USER25> More apps have been adopting Swift with each OS release. On iOS specifically, the number of system binaries using Swift more than doubled between iOS 12 and iOS 13.

[https://www.cultofmac.com/655444/swift-code-usage- ios-13/](https://www.cultofmac.com/655444/swift-code-usage-ios-13/)

</comment></comment><comment><USER26> So I wonder if in a future Swift for Windows, will Windows.Security.Cryptography be made use of, or only Apple gets special treatment.

<comment><USER25> Since the goal is to reimplement CryptoKit.framework, I'd guess that whoever works on the Windows port (probably Saleem, let's be honest) would have to decide the right course of action.

</comment></comment><comment><USER27> I want something like this for python or C.

<comment><USER28> Cryptography is the goto libary for Python crypto

[https://cryptography.io/](https://cryptography.io/)

</comment></comment><comment><USER29> Without knowing the .org, I thought this was going to be about SWIFT, [https://www.swift.com](https://www.swift.com) , the electronic funds transfer service, working on some sort of blockchain or cryptocurrency related announcement.</comment>


Why Intel bought McAfee - <AUTHOR> http://arstechnica.com/business/news/2010/08/why-intel-bought-mcafee.ars <comment><USER2> For anyone looking for the decoder ring here: vPro is the Intel code word for hardware products that support hardware virtualization, TXT (crypto-signed executable memory security), and out-of-band management via the Intel AMT management engine doohickey.

A "vPro" application for McAfee might, for instance, be to embed the AV engine in a slim hypervisor layer, invisible to the OS, and to have it report status to a mothership using the AMT engine.

People have been talking about Intel baking McAfee into hardware without realizing that they have better options than that.

<comment><USER3> _A "vPro" application for McAfee might, for instance, be to embed the AV engine in a slim hypervisor layer, invisible to the OS, and to have it report status to a mothership using the AMT engine._

Nice. A vendor controller hypervisor with full access to the system and supposedly no way for the user to alter or inspect the code it runs...

What could possibly go wrong.

<comment><USER4> Actually, my first thought was "Man, that would be a great spot for a virus." If other code can get in there, why not?

<comment><USER2> Which sums up approximately 5 consecutive years of Black Hat Vegas and DC presentations on rootkits.

</comment></comment></comment></comment><comment><USER5> Yes, it's clear that Intel wants to make security a top priority. However, this article still doesn't explain why acquiring McAfee in particular makes any sense, especially at a cost of $7.7 billion.

Yes, it does say that the "McAfee purchase gives Intel an instant foothold on countless PCs," but these are not the PCs that Intel is after. These PCs already have Intel chips on them. Intel presumably wants security as a headlining feature for their next generation chips to entice users to upgrade.

In addition, Intel can gain an even wider-reaching foothold into your PC by bundling a driver and distributing it through Windows Updates, as it does already with its integrated video solutions. They presumably wouldn't need to pay Microsoft $7.7 billion for the priviledge of making Windows more secure.

Aside from the foothold in your PC, then, what is left of the "long-term, strategic buy"? There might be some patents and some talented developers, but for a company that already spends $5 billion on R&D every year, it's hard to understand why Intel couldn't come up with an in-house solution.

No, the real reason why Intel bought McAfee is probably much more pedestrian: Intel is simply sitting around with too much cash earning too little return.

<comment><USER2> (1) McAfee is a cash register that can be valued at some multiple of the next N years earnings.

(2) Intel has a huge and underutilized repertoire of security infrastructure technology that it can't, as a hardware vendor, fully exploit right now.

(3) McAfee has a huge installed base across the Fortune 1000.

(4) McAfee and Intel were already collaborating on integrating AV with hypervisors and remote management.

From a strategy perspective, this seems pretty straightforward. Intel is vertically integrating. ISVs weren't taking advantage of Intel's existing security investment, probably in part because the industry was structurally resistant to that happening. Rather than waiting and hoping for the stars to align, Intel is taking control of its own destiny.

<comment><USER5> I agree that there is a strategy here. However, every strategy needs to be evaluated relative to the cost, and from my point of view, the price that Intel is paying to execute this strategy is too high.

If we look at MFE's peak earnings from FY2009, it's $173m. So a $7.7b price tag is just under 45x. In other words, it'll take 45 years of FY2009 earnings to merely regain the initial investment. Now let's be more generous and give Intel a low discount rate of 5% and assume that those earnings grow compounded 10% each year. It will still take 25 years for Intel to make back that investment.

Of course, the investment gets better if there are synergies that will provide additional boost to Intel's earnings, but what are they? I don't really buy (2) since Intel has shown that they are capable of getting their software onto your computer when they want to (see their integrated video drivers that download through Windows Update).

But even if they couldn't, they could have just continued collaborating with McAfee without buying them. That's essentially the exact same thing as what's happening now, minus the big transfer of wealth from Intel shareholders to McAfee shareholders.

I suppose that I'm just not convinced that Intel couldn't have rolled their own solution for less than $7bln. Even if they really needed to buy McAfee, a 60% premium over the market price is pretty steep, and it's hard for me to see how that adds more value to Intel shareholders than a 7% special dividend or buyback. So far, I haven't seen an argument that's made me think, "Oh yes, that IS something I'd pay $7 billion for."

<comment><USER2> Drivers and antivirus are not comparable footholds on desktop computers. Enterprises don't buy premium drivers. They don't select vendors based on driver brands. And, as Intel seems to have found, they don't pay premium prices for desktop chipsets based on remote access drivers.

McAfee's gross revenues for the last 12 months total over 2 _billion_ dollars; that's many many hundreds of millions of dollars worth of enterprises specifically selecting McAfee software as part of their standard build and as part of the mechanism by which they track and secure their computers.

Is MFE worth the premium? I have no idea. But the "synergy" here is not very fuzzy. Intel has a clear path towards both integrating and bundling MFE's value propositions into their own hardware, and to generating lock-in both based on MFE's brand (which may command north of 40% of the enterprise market) and on a combined AV/hardware security offering that won't be available from any other mainstream vendor.

I don't want to sound like a booster for this acquisition. I'm not. I'm just saying that it's nowhere near as crazy as some people (particularly the "what's Intel going to do, implement AV in ASIC?" crowd) seem to think it is. This is a straightforward vertical integration play, along an axis in the industry (enterprise desktop security) that is natural for Intel to be exploring given their last decade's worth of investment.

</comment></comment></comment></comment><comment><USER6> Intel CEO: I need an antivirus. Can you buy me something?

Some time later, his assistant: DONE! We just bought you McAfee.

Intel CEO: Cool! What version?

Assistant: Hmm, version?

</comment><comment><USER7> This line in the article makes me a little weary of Intel: "He then told an anecdote about how he was watching Intel CEO Paul Otellini being interviewed by Charlie Rose, and Otellini told Rose, "I've given our company a charter to make [security] job one." Rattner laughed and told us that this statement seemed to come from out of the blue, and it took him and other Intel execs by surprise. But from that day forward, Rattner was focused on security."

I wonder how many other projects at Intel got started this way.

</comment><comment><USER8> I like this explanation better:

Intel CEO: "We need antivirus, can someone buy me McAfee?" Few hours later: "Done." "Great, which version?" "Version ... ?"

(From <http://twitter.com/paulmutton/status/21646042097>)

<comment><USER9> Not sure why you're being downvoted. I laughed!

</comment></comment><comment><USER10> sounds like a bet that corporations and consumers will return to buying PCs in the very near future since they have delayed their purchases because of the recession.</comment>


Tell HN: Threads fast - <AUTHOR>

I just rewrote the code that generates the threads page to be faster.  It used to be slow the first time you called it after a restart because it had to load lot of items into memory.  Now items aren't loaded till the moment they're needed.  This also makes it possible to show an unlimited number of threads. <comment><USER2> Very nice. Slow threads were annoying me due to the proxy at work -- if a page took too long to respond, it would just randomly show some other page from news.yc that happened to be in the cache. (Yes, really. Now I know who else reads HN at work, and what topcolors they have chosen. ;)

This was a problem, because it seems that after I wrote a post, I immediately realized there was some error, and I needed to fix it. The page that loads after you "add commment" was also affected by the cache bug, so I couldn't get an edit link there. I would have to try "threads" a number of times, and eventually, if I was lucky, I would get the edit link. Then I could fix my post. Frustrating. (And not really HN's fault, FWIW.)

I haven't tried this through the proxy yet, but it seems massively faster from home, which should make the work proxy happier. Thanks!

<comment><USER3> i'm curious - which proxy software does that?

<comment><USER2> No idea. It's probably very expensive, though.

(The goal of our IT department is to spend the most money implementing the worst possible solutions. If it doesn't cost $5,000,000 per user per year, we're not interested. Example: I have to type 3 passwords to connect to the VPN!)

<comment><USER3> Ha! Maybe I should try bidding for their work - sounds like a nice client to have ;o)

</comment></comment></comment></comment><comment><USER4> Threads aren't really fast. The fact that you have a shared VM space allows you to avoid the cost of swapping page tables (and flushing any logically- addressed cache) but you still have to store and restore the entire architectural state, which can easily take a few hundred cycles on systems with lots of registers. Co-routines are much faster, since they allow the compiler to optimize away handling of state which it knows isn't important.

... oh wait, wrong type of threads.

<comment><USER2> Incidentally, the only usable Perl threads are implemented on top of coroutines:

<http://search.cpan.org/~mlehmann/Coro-5.22/Coro.pm>

Just don't read the rant about why call/cc is useless.

</comment></comment><comment><USER5> I had stopped using _threads_ because I felt bad about the load I was imposing, frequently running until a timeout failure. Now it is indistinguishable from instantaneous.

<comment><USER6> > _I felt bad about the load I was imposing_

This is how you know you've got loyal users.

<comment><USER7> As a user of adwords I always feel bad clicking on an sponsored link in Google knowing I'm not going to buy anything.

<comment><USER8> Yet it's amazing how there is another end of the spectrum where people are hired to cost their competitors. Just the other day, I learned that apparently "Mesothelioma" is one of the more expensive AdWords that easily goes around $40!

</comment></comment></comment></comment><comment><USER9> Yes. Threads fast. Thank you.

</comment><comment><USER10> As my mathematician partner always say, it's not unlimited, but rather a very very large amount. I've learned to stop saying unlimited or infinite around him, unless I can prove it theoretically, else he'll go into this shpeel about the finite number of atoms in the universe.

<comment><USER2> Unlimited means that the system imposes no limit on the number of threads to be displayed -- each page uses a constant amount of resources, so there is no limit to how far back in your history you can go.

That is my reading, anyway.

<comment><USER10> I agree, I'm sure that's how he meant it. However, I was just trying to be humorous, this being hacker news I thought it was applicable. Clearly nobody else appreciated it.

<comment><USER2> You're thinking of Slashdot.

</comment></comment></comment></comment><comment><USER11> Excellent, any chance the 'saved' page can get a little improvement also? At the moment it often just times out for me.

<comment><AUTHOR> That's next on my list.

<comment><AUTHOR> Should work reasonably well now.

<comment><USER12> It timed out the first time, then loaded fast the next time.

</comment></comment></comment></comment><comment><USER13> HUGE difference for me, thanks!

Actually, everything seems faster, not just /threads

</comment><comment><USER14> Thank you, much appreciated!

</comment><comment><USER15> Awesome :) Looking much better from here. Thanks

</comment><comment><USER16> Oh thank you, it was so slow, but its now zippy as can be!

</comment><comment><USER17> Crazy lightning fast! Much appreciated.

</comment><comment><USER18> Thank you Paul!</comment>


Australia's leading newspapers black out front pages to protest restrictions - <AUTHOR> https://www.washingtonpost.com/world/2019/10/21/australias-leading-newspapers-black-out-front-pages-protest-governmental-media-restrictions/ <comment><USER2> I nodded in agreement while reading the article with one major exception: I don't like the idea of changing defamation law to be more journalist-friendly. Yes to more government transparency; a big no to making it even easier for the media to get away with libel.

</comment><comment><USER3> Not far from where I once lived was a park, along two of its sides ran two busy roads which intersected at right angles and at this intersection is a set of traffic lights. The park was isolated from both roads by a high six-foot- plus fence made from grey concrete Besser blocks so every time a motorist had to stop at the lights he/she only had to look sideways to view this large swathe of concrete fencing. As anyone would know, this is the ideal place for graffiti to appear and this was no exception.

Anyway, for some 10 to 15 years, a large message remained scrawled and unaltered on the wall right near the lights—no one could miss seeing it. It read:

 _" The Australian people are bloody-minded sheep!"_

For years as I passed it, I was always amazed at and wondered why no one had ever bothered to paint over the offensive graffiti until I eventually figured out why—which was that everyone knew or suspected that the message was true—and that the sign had remained there unaltered as a perverse reminder of the fact. Unfortunately, the park has given away to housing development so all that's now gone (and I also regret never having taken a photo of the graffiti).

This is not the place to delve deeply into the machinations of Australian society or draw parallels with 'bloody-minded sheep' except to say that largely Australians are deeply conservative by nature, intellectually shallow and very risk-averse people. They rarely riot in the streets—the last time of any note was during the anti Vietnam War demos in the late 1960s—their interest in politics only goes as deep as their hip pockets and most would prefer to gel-out at the beach, sporting fixtures or watch TV, or nowadays be numbed-out or dumbed-down by Facebook/social media.

Thus, when it comes to matters of security, all the Government has to do is to mention words like 'threat', 'terror' or security etc. and it can pass overly authoritarian laws in a moment without any debate or opposition—right, the opposition Labor Party is even more draconian about the introduction of such laws so they fly through parliament like a shot. The police and security services are onto a winner and have been so for decades.

The few of us who can actually see what's happening and are worried are so vastly outnumbered we haven't a snowball's chance of changing anything.

Frankly, it's a pretty terrible (and pathetic—even embarrassing) situation and I don't ever see it being resolved until well after the Australian 'Sheep' have realized it's too late for them to escape the boiling water.</comment>