Ask HN: A Platform for Public Debate? - <AUTHOR>

Most debates these days are carried out on Twitter, but the platform is ill-suited to the task, and its character limit encourages brevity rather than rigor. Is there a platform for public debate that offers the immediacy of Twitter without any limits on content? Buzz comes to mind, but it is saddled by its connection to GMail. If not, is this an opportunity to build a dedicated platform for public debate? <comment><USER2> There has been very little progress on forums since twitter and facebook grabbed the spotlight. Forums with moderation, up/down voting, usage limits (suspends you if you post too much too fast), reputations etc.. would be a start.

Most importantly you'd want to start off with top notch members and the tech gimmicks would help you keep them.

I only know of one "modern" forum, <http://vanillaforums.org/> where there are some add ons which let you do some of these things. Reddit source may also suit the task, but voting on "threads" would have to be de-emphasized and it's probably harder to add/remove voting, usage limits etc.. Same for HN source.

There is this debate forum <http://www.volconvo.com/forums/> that covers political, religious topics. It's old vBulletin so it's nothing you haven't seen if you've seen internet arguments. Everything depends on the quality of members and moderators.

Not much you can do with that which hasn't been done since usenet.

As far as update streams, like twitter but with more characters, more activity than old school forum format, I'm not sure it would improve the debate. Quora's approach of sending updates about activity around your answers could increase activity without making a mess.

</comment><comment><USER3> Thoughtful content moderation is the key to a successful platform for public debate, and very difficult to achieve.

<comment><AUTHOR> I was thinking more along the lines of Buzz. Something that could be used to post the contents of your bowel movements, if you so choose, but also something that is conducive to debate with the kind of immediacy that blogs don't offer. A public conversation between two people, for example, debating about the goodness of payday loans, in a format that was specifically built for that.</comment></comment>


Linux Mint 12 LXDE RC is out and available for download - <AUTHOR> http://www.linuxstall.com/linux-mint-12-lxde-rc-is-out-and-available-for-download/

<comment><USER2> Blogspam.

Go to one of these instead:

<http://blog.linuxmint.com/?p=1930>

<http://www.linuxmint.com/rel_lisa_lxde.php>

</comment><comment><USER3> I've just booted the live ISO in VirtualBox, and the default desktop is clean, slick, and fast. I've got an Ubuntu 11.10 VM on this machine as well, which took much longer to boot and is all around less responsive. Linux Mint GNOME3 is a step in the right direction IMHO, my is still heavy to run on my four year old Dell XPS. Because GNOME3 uses the GPU directly, my poor old mobile series nvidia gets extremely hot and slow to respond when using GNOME3. I'm currently running ArchLinux+awesome on my laptop, but I might switch to Mint12 LXDE since I'd rather have something non-rolling release on my laptop since I never use it, and LXDE might be something nice to try.

<comment><USER3> On a related note to my GNOME3 point (From the Fedora 17 Alpha release notes) [<http://fedoraproject.org/wiki/Fedora_17_Alpha_release_notes>]

"The Miracle includes GNOME 3.4 and KDE 4.8. There is also a rendering improvement to let more users, even those with older hardware, enjoy the GNOME shell goodness"

I really hope that this GNOME 3.4 improvement is an upstream improvement, and if it isn't, that Fedora submits a patch upstream so that other distributions can benefit from this. Linux Mint GNOME would be an option for my laptop if it wasn't for the GPU limitations.

</comment></comment><comment><USER4> Recommended especially if you run propietary ATI drivers. Also, stock Linux Mint (Gnome) really doesn't fit multiple screens. The top bar and menu are fixed to the main screen, even if you place it below the extra screen. Really a PITA to use on multiple screens, way over-engineered IMO as it's the trend in both Gnome and KDE world lately.

<comment><USER5> _> Really a PITA to use on multiple screens, way over-engineered IMO as it's the trend in both Gnome and KDE world lately._

Yes, this new generation of window managers seems to suck with my three monitors. Looks like I'll be sticking with XFCE for the time being (considered KDE, but looks like someone decided to make the whole thing really ugly since the last time I used it).

<comment><USER6> > considered KDE, but looks like someone decided to make the whole thing > really ugly since the last time I used it

Poor theming is the last reason you should use another DE. KDE makes it very easy to retheme.

</comment></comment></comment><comment><USER7> I had Ubuntu 10.04 gnome on my EEE pc 901 (Celeron, 1G ram, 16 G flash disk), I just installed this on it, it's definitely peppier, also Flash is smoother on youtube. It's a keeper.

</comment><comment><USER8> Linux/LDXE is almost weightless on this six year-old Dell laptop.</comment>


Why you should quit Facebook too - <AUTHOR> http://artermisianrumblings.blogspot.com/2012/09/why-you-should-quit-facebook-too.html

<comment><USER2> Moderation, how does it work?

On a side note, Spotify's Facebook only policy makes me rage like nothing else. I would kill for a normal username that I could use to open up my playlists on other people's computers running spotify. If you don't know, usernames on Spotify are a sequence of numbers that you'll never remember. There are pages of forum and support posts about it and Spotify doesn't care.

<comment><USER3> I have a friend that has spotify without facebook and she wanted to share music on the social sidebar with me.

I had to type spotify:user:Usernamehere in the search bar to be able to find her. She also didn't have a numerical username.

So you don't technically need a facebook account to share music with a friend.

</comment></comment><comment><USER4> Everyone tries this for a month because they feel the need for productivity, tells everyone for the first week they quit, eventually comes back.

<comment><USER5> It's been a year since I deleted all my photos, removed all friends, changed my name and iirc swapped in a throw-away email address on fb. Haven't missed it a bit. Was doing some fb integration for work and logged-in to test out a few things. Seeing the timeline layout for the first time made me miss facebook even less.

</comment></comment><comment><USER6> I love these posts that purport to tell people what to do. Not as bad as the ones who aim to tell you what you are thinking, but almost.

<comment><AUTHOR> just sharing an experience.

</comment></comment><comment><USER7> I'm taking a partial break from Facebook. I consider it a tool for broadcasting information to a network of people who know me, and I ignore everything else (especially the part where I could spend hours each day consuming all of the information that my friends broadcast). That way I can get some eyes on my personal projects and give others a chance to passively keep up with my life. (I would miss this aspect if I were to leave Facebook entirely -- I don't feel like emailing a group of people everytime something important happens.)

Occasionally I break my rules and skim the news feed, but since I'm not on the service all that often, most updates just seem mundane, so I zero-in on the bigger things like life events and stuff that people might not always email me personally about (but that I wish they would). It's nice to feel a little connected still, without letting it become a huge time-waster.

</comment><comment><USER8> I installed Nanny for Google Chrome and leave it enabled during the work day, blocking Facebook, HN, Amazon.com, and my other vices. It helped me to break the "Facebook habit" that we're all familiar with. Sure, I check in every once in a while, but not as habitually as I once did.

</comment><comment><USER9> Sounds more like a list of reasons to quit Hacker News to me. I refresh that way more often than Facebook.

I consume Facebook with an RSS reader. It is quick, efficient, filters out the crap, and ensures you don't miss anything without constant refreshing.

<comment><USER10> Can you go into more detail on how you use an RSS reader to consume Facebook? I've seen that you can subscribe to individual pages, is that what you're doing?

<comment><USER9> I'm subscribed to something that includes feeds/friends_status.php. Maybe googling for that will help.

</comment></comment></comment><comment><USER11> If you keep your friend list small (< 70) then it's not too addictive since there's not that much content (unless you're a stalker) and it's actually a meaningful way to communicate.

</comment><comment><USER12> You should not force yourself to quit X/Y/Z, rather, you might want to choose a balanced approach: limit the use of such sites to 5-15 minutes a day, a have best of both worlds.

<comment><USER13> Yes. Like telling an alcoholic to stick to one drink a day ...

</comment></comment><comment><USER14> Try rhapsody - its similar to spotify but works without facebook.</comment>


Ask HN: Copying already existing product and making it better - <AUTHOR> hi,<p>I was wondering if any of you have successfully copied* already existing product and created its better version and, as a result, ended up with a successful startup.<p>* I am talking about the situation when you are using some tool and thinking to yourself: 'well, it's working, but there are at least 10 things that can be improved, maybe I will create the better version of it?' <comment><USER2> There's no such thing as originality in many cases. Everything is based off of something else. Many video games and books have similar plotlines. I had to do research for CRM systems for a nonprofit and there's like over 100 of them. I'm sure they are all different in some way shape or form, but I don't know enough about CRM's to say anything here.

There's a really good writeup of a european company called "Rocket" that does exactly this, it was mentioned in hackernews somewhere before

[https://www.wired.co.uk/article/inside-the-clone- factory](https://www.wired.co.uk/article/inside-the-clone-factory)

I have an app idea I wish to pursue that doesn't yet exist, but its the merger between 2 common pieces of software in the market. Building it would be a huge time saver in things I struggle everyday, I imagine others would feel so as well. I couldn't find anything in any alternatives I've tried and tested.

<comment><USER3> Don't let the patent trolls read this comment. Whilst I agree that everything is borrowed and inspired from something else, there can still be blatant rip offs. If you're going to steal like this, _at least_ change it a little bit so it's not a direct copy.

<comment><USER2> Everything about this app I want to build is going to be completely unique on the UX/UI interface, I had 15 pages of hand drawn sketches dedicated in just wireframing the UX. I lack some backend knowledge and some frontend technology as well, so its a long work in progress.

I think, whenever we think of elevator pitches, people always say "Its Whatsapp with security(telegram)". Or its "Facebook for professionals (linkedin)". Its "Youtube for media professionals (vimeo)". Or its "Adobe Illustrator merged with Adobe Photoshop (Affinity Designer)". Or "Slack with VoIP and gaming (Discord)". Or "A chrome browser for Developers(Blisk)". Or "Pinterest for media professionals (Dribbble)". Everything derives from something else, but I agree with you everything needs to be unique.

But at the end of the day everything is a CRUD app anyhow

</comment></comment></comment><comment><USER4> You've literally described Steve Jobs' entire career. Finding the key tweaks that turn a good product into a great product is a very effective business strategy, but actually pulling it off is an art.

</comment><comment><USER5> That's my bread-and-butter. I take a good SaaS and strip it down so it's simpler for people to use (and for me to build). Then I sell it for significantly less than my competitor. Simple & cheap is "better" for some people.

The trick is to find a good niche, so you can build a bunch of semi-related SaaS apps and cross market them. I've found developer related SaaS (web browser testing, PDF generation, log analysis, cron notifications, etc) are highly saturated.

To be fair, none of my products qualify as "startups". But building a lifestyle business has a lot of perks (no stress).

<comment><USER6> Hey, I'm interested in this. Can you please reach out to me via my email later in my profile?

</comment></comment><comment><USER7> Everything is a remix. The problem is, blindly copying just the features of a product is most likely not going to work. You need to understand the whole business and figure out what to copy and what to improve. In other words: you need to understand the customer.

Something to read:

\- "Copycats: How Smart Companies Use Imitation to Gain a Strategic Edge"

\- [https://www.ribbonfarm.com/2010/08/03/down-with- innovation-u...](https://www.ribbonfarm.com/2010/08/03/down-with-innovation- up-with-imitation/)

<comment><AUTHOR> thanks! I will definitely read this!

</comment></comment><comment><USER8> Don't forget that while you work on your copy, their product is probably also advancing - by the time you're finished, you will have more to do - plus your own improvements.

</comment><comment><USER9> Gitlab vs github?

<comment><USER10> Just to piggyback off of this comment, IMO sometimes the original offers significant advantages that the copies can't attain

Example: I want to love Gitlab but no matter the additional offerings they provide, I am totally sold on the UX of Github. Stumble along a new project? Instantly see what language(s) it is written in. Why isn't this a feature of Gitlab when this is so basic? Wonder if it's a copyright issue

<comment><USER11> As far as I have heard you can't copyright UX (but don't quote me).

I think the issue is something else: GitLab thinks more features is what will give them competitive advantage over Github in the long term, not clean UX.

<comment><USER12> Well I'm pretty sure you can copyright UX. Didn't someone get sued from copying Apple's swipe to unlock feature?

</comment></comment></comment></comment><comment><USER13> Whereas no one would openly admit to copying a product and naming that company publicly - it could be said that many products were birthed from different perceptions of a solution from a given problem space. Which, by virtue of convergent evolution though common customer requirements/user stories and focus groups, along with a standardisation of UX practices, end up with a largely overlapping feature base.

<comment><USER14> I think it happens a lot with forks or seeds of similar projects like you mention,

      Sugar crm > vtiger crm
      m0n0wall > pfsense/freenas

I do think some products rely on copying the entire ui/ux a little too heavily. Although with standardization like you mention as well may become less of an issue</comment></comment>


A Look into NASA's Coding Philosophy - <AUTHOR> https://mystudentvoices.com/a-look-into-nasas-coding-philosophy-b747957c7f8a <comment><USER2> This article is very much at odds with my 15-year (1988-2000, 2001-2004) experience writing software at NASA (albeit at JPL, which is to say the unmanned space program, but still NASA). In my experience there was just as much politics, marketing hype, and general bullshit as I've seen in the commercial world. It was actually pretty amazing to me some times that things worked at all, let alone that they worked as well as they did. I think the real secret at NASA is not that they are better at writing code, but that they write it slowly (development cycles are measured in years) and they test the living shit out of it. Then, once it's working, they don't change it except under extreme pressure. But while it's being developed it's just as much of a sausage factory as anything else.

<comment><USER3> As I wrote when this showed up on proggit,

Not to put too fine a point on it, but I would be very skeptical about using NASA as a good example for much of anything, but especially software development.

My bonifides: I'm 49; have spent roughly 25 years as a systems programmer, systems administrator, and general bit wrangler; and I worked for 8 years at the Marshall Space Flight Center, specifically the NASA Enterprise Application Competency Center.^1 (And yes, that's a thing. Started as IFMP (Integrated(?) Financial Management(?) Program), and was IEMP (Integrated(?) Enterprise Management(?) Program) when I started.) If you're a NASA employee, you might recognize STaRs (I worked on the rewrite, post Perl 1 and Monster.com), NPROP/Equipment, or DSPL/Disposal. And IdMAX, which I noped out of shortly after moving to the project.^2

NASA itself is a massively disfunctional organization, in my experience, and a failure to "cut through the bullshit" is a major reason why. For software development specifically, while I didn't do anything with "man-rated" development or the other important bits, I have strong doubts that they are any better than other avionics, automotive, or other embedded development organizations.

There was no mentoring. People tried, it didn't go over well, usually with the mentees.

You have to trust each other's potential, because there is no damn chance of getting any two projects to agree on anything. What goes on in that other silo is their business, not yours.

I did say, "I don't understand." A lot. Frequently pronounced "WTF?"

The list of "unreliable sources of knowledge" looks rather like a checklist of how things got done.

^1 NEACC is also the acronym for the North-East Alabama Community College, which I find ironic for no good reason.

^2 Unfortunately, I don't have a picture of me looking arrogant. Sorry.

<comment><USER2> > NASA itself is a massively disfunctional organization, in my experience, and > a failure to "cut through the bullshit" is a major reason why.

I completely agree with this, though I think it's important to note two things. First, despite the dysfunction, they do, more often than not, make things that work under extremely challenging conditions. And second, a lot of the dysfunction is not their fault, but is a consequence of the fact that they are a government agency and hence ultimately answerable to Congress. Not only that, but they are a government agency created to fight a (cold) war that ended almost thirty years ago so they have been rudderless for a long time. The fact that they've done _anything_ other than suck up taxpayer dollars is a testament to the incredible skill, both technical and political, of many of the people in the agency. Notwithstanding my vocal criticism of the organization, I have tremendous respect for many of the people who work there.

</comment></comment></comment><comment><USER4> Here's a paper[1] for a space conference in Montreal written a few years ago on DO-178 standards and applying the FAA's certification process to space systems development (DO-178 sets the bar for "testing the shit" out of software, I've seen projects held up for years because it's like approaching a limit f(n) -> L (where f(n) is the software development cycle and L is getting a non-bought DER to sign off on it) proving your system to its requirements).

[1] [http://articles.adsabs.harvard.edu/cgi-bin/nph- iarticle_quer...](http://articles.adsabs.harvard.edu/cgi-bin/nph- iarticle_query?2013ESASP.715E..63D&data_type=PDF_HIGH&whole_paper=YES&type=PRINTER&filetype=.pdf)

<comment><USER5> DO-178B was one of best things to happen in software assurance. It was a non- prescriptive method of certification that forced precise requirements, design, and code with reviews of each and tracability between them. The high cost of certification and certification failure led to a booming ecosystem of supporting tools (esp static analysis or runtimes) and pre-made components (esp RTOS's & middleware). Some companies even specialized in handling the administrative overhead. The result was that certified systems usually had very, high quality. Meanwhile, there were people arguing on HN and other places about whether a certification could ever be useful for software.

Anyone reading the above paper should skip to the summary to get a high-level view of the overhead and resulting benefits. The author of the paper agrees with me that the certification is beneficial. The gist is you keep things simple, think about everything in lifecycle, test everything in lifecycle, throw every analysis tool you can at the design or code, esp take your time to develop the thing, and document all of this in a way where any aspect is easy to verify by a 3rd party. That's how high-assurance systems are done. They usually work, too. Some work for a long, long, long time. :)

<comment><USER6> Applied very narrowly to the right problem, maybe.

But I have also seen DO-178B to lead to a completely non-maintainable mess. That mess helps trace each statement to a requirement, but leads to code that is unreadable to anyone used to normal code.

It is not that "no extra code" and exactly meeting requirements is a bad model in itself. However writing code in a way that makes it convenient to _prove_ the above encourages unnatural coding styles and programmatic contortions. YMMV however.

<comment><USER4> This happens a lot. IMO, the best method to mitigate this is to design and write your code base to the system requirements rather than try to perfect the low level requirements before writing any code.

You can then reverse-engineer the low level requirements from source, deriving your verbiage from the system requirements and logic from the actual code. This way your low-level/unit testing is precise and verifiable while also ensuring strong traceability up and down the chain.

If there ends up being low level requirements/code that don't trace up to the system for some reason, then either there's been a disconnect between design and execution or, if not, you make the case for a derived requirement.

<comment><USER7> I agree that the left hand side of the Vee has to be seen as a two way street. As we develop the code we gain experience and insights which enable us to elaborate and refine our requirements. The requirements then act both to guide the development of the system and also to document the lessons that have been learned during development. The output of early requirements elaboration phases are then draft, rather than final, requirements sets.

The key, for me, is the tooling that we have around maintaining requirements and the traces between them and the code. I think that it should be possible to navigate traces and update (low level) requirements and test specifications without leaving the text editor. If it takes 5 minutes to open DOORS and to find the relevant requirement, then you aren't likely to keep it as up to date as you should. The same is true if the requirements are stored on a spreadsheet in a document management system.

Some ALM/IDE tools may enable you to manage things in a better way. From what I have seen, mbeddr is a really interesting experiment along these lines. I also suspect that Visual Studio and Eclipse have some pretty powerful features in this regard.

In my side project (and purely for my own 'entertainment') I am experimenting with ways of embedding low level requirements into comments in the code (the build extracts them and can update DOORS or some other tool), as well as a generic trace system that allows different classes of traceable item to be defined and indexed. The build can enforce requirements coverage in the same way that it enforces test coverage, and because the text and metadata of requirements is easily accessible to the build, we can use NLP tools to enforce the use of restricted natural language or DSLs in the requirements text. The ultimate goal being to use machine learning to learn the correlation between requirements changes and code changes so that a change in one can help generate advice and guidance on what needs to change in the other.

</comment></comment></comment></comment></comment><comment><USER8> The article severely misrepresents Amdahl's law, in particular in the sentence:

> Though you took half of your entire program, and optimized it to be four > times faster, the overall system is only 1.6x faster.

This application of Amdahl's law doesn't tell you anything about what happens when you take half of the program; it tells you what happens when you take half of the _execution time_. If you only get a 1.6x speedup, it means you optimized the _wrong part_ of the program!

Suppose 20% of the program is responsible for 80% of the execution time. If you speed up _this bit_ four times, you end up with a 2.5x speedup (and not a 1.18x speedup as the article tries to imply).

<comment><USER9> Basically this. The article makes it sound like "optimizing half the program" means "optimizing half of the codebase", not "optimizing a part of the codebase that consumes 50% of the execution time."

This quote is especially misleading:

> Amdahl's Law is telling us that to significantly improve the speed of a > system, we'll have to improve a very large fraction of it.

No, it's telling us we'll have to improve _the part of it which is responsible for a very large fraction of the execution time_. Often this is only a tiny amount of the overall codebase.

</comment></comment><comment><USER10> I always found this article(1) about writing code for NASA fascinating. I'm sure a lot has changed in the 20 years since it was written, but it's such a stark contrast to what I'm used to.

(1) [https://www.fastcompany.com/28121/they-write-right- stuff](https://www.fastcompany.com/28121/they-write-right-stuff)

<comment><USER3> 20 years ago:

* 420,000 LOC

* 260 people

* $35,000,000 / year

<comment><USER10> There's something to be said about doing more with less.

</comment></comment></comment><comment><USER11> Software is not Modern or Ancient. Software is either Good (i.e. it works as it is supposed to do AND it is easily maintainable and modifiable) or Bad. NASA clearly needs Good software, and indeed the article never mentions arbitrary deadlines.

</comment><comment><USER12> I'd like to see how this compares to, SpaceX for example

<comment><USER13> When it comes to physical components SpaceX has a habit of selecting an off the shelf component and asking the vendor if they can get a modified version that includes some changes that make it capable of living in their application.

That's great for reducing cost (or increasing quality or buying time, they're all related) but in the long term it often leads to spaghetti.

Considering the time pressure they're perpetually under and how Elon is known to run his organizations I would suspect their software products are no different.

<comment><USER14> On that note, what language(s) are SpaceX, Tesla built on?

Job postings I see a mix of C# and golang. I cannot believe either a Model X or a rocket is rockin C#...

<comment><USER15> Probably not on the rocket itself, but C# is a very common language for ancillary testing tools in the industrial automation world. I wouldn't be surprised if a lot of their test infrastructure is written in C#.

<comment><USER7> Pity. I've been using Python a _lot_ for test infrastructure and it fits really well.</comment></comment></comment></comment></comment>


Ask HN: Can the `lang="en"` attribute interfere with the text content in Chrome? - <AUTHOR> We had a wired situation and I would love to get some input from others if they encountered something similar.
We released a React application two weeks ago and had some great feedback on the project. Several newspapers wrote about it, we also had some online coverage, many visitors and also users who signed up.
The wired thing was, that about 1.5 weeks later a journalist wrote about the project and he complained in his article that our language was really bad. He pointed out two sentences. In one the German word "schnapp" (means grab) was exchanged for "Schnaps" (which is booze) and another one where "Gründen" was changed to "gehören".
I did some review of the source file and we never had these words in our git history of the file. He told us that he is using Chrome (no version mentioned). The only thing out of the ordinary was that we had in our  markup the lang attribute set to English `<html lang="en">`. After changing only that one attribute to German he reported to us one day later that the issue was fixed.
So the only thing I can think of is some Chrome translation or auto correct feature or plugin changing the text from German to German.
Did anyone ever encounter something like this? <comment><USER2> Yes, If text is lang is EN and browser is DE, translate is fired. You can disable this.

"When Google recognizes that the contents of a page are not in the language that the user is likely to want to read, Google often provides a link to a translation in the search results. In general, this gives you the chance to provide your unique and compelling content to a much larger group of users. However, there may be situations where this is not desired. This meta tag tells Google that you don't want us to provide a translation for this page."

<meta name="google" content="notranslate">

[https://support.google.com/webmasters/answer/79812](https://support.google.com/webmasters/answer/79812)

<comment><AUTHOR> The text itself was DE. The lang attribute was set to EN. I don't know what language defaults his browser has. I assume DE. I thought Chrome was smarter then relying on this one attribute for translation…

</comment></comment><comment><USER3> I suppose it's this, [https://www.howtogeek.com/407924/how-to-turn- translation-on-...](https://www.howtogeek.com/407924/how-to-turn-translation- on-or-off-in-chrome/) he has a German Google Chrome, your page said it was English, he has set it to automatically translate from English to German at some point in the past and forgot about it, or his company does it and never told him.

<comment><AUTHOR> I tried to replicate this scenario on Browserstack but that didn't work. The content of the page is in German. The Chrome built in translation showed the language as unknown. Also most of the text seemed right he only pointed out these two words.</comment></comment>


Ask HN: Why is the citizenlab spy story not available anymore on the nytimes? - <AUTHOR> I read this story last week [0], now went back to look for it and it was gone. I did some googling but couldn't figure out what happened to it. Anyone knows?
p.s. of course the wayback machine has it[1], my question is why it's not hosted at the origin anymore
0: https://news.ycombinator.com/item?id=19006477 1: https://web.archive.org/web/20190204130938/https://www.nytimes.com/aponline/2019/01/25/us/ap-cybersecurity-undercover-operatives.html <comment><USER2> It's probably a licensing issue, and NY Times can't share AP articles for more than a week or something.

They link to this story directly on AP site in a followup story ([https://www.nytimes.com/2019/01/28/world/black-cube-nso- citi...](https://www.nytimes.com/2019/01/28/world/black-cube-nso-citizen-lab- intelligence.html) links to [https://apnews.com/9f31fa2aa72946c694555a5074fc9f42](https://apnews.com/9f31fa2aa72946c694555a5074fc9f42))

</comment><comment><USER3> info management i think. the political outfall is probably not a good taste for NYtimes. this is still around though:

[https://www.cbc.ca/news/technology/citizen-lab-toronto- under...](https://www.cbc.ca/news/technology/citizen-lab-toronto-undercover- israeli-software-1.4994068)

<comment><USER4> What is "info management"?</comment></comment>


Ask HN: Effectiveness of "Who is Hiring" thread? - <AUTHOR> I've posted a few times and had at least two hires come out of that, but am not a regular poster. Does anyone have any numbers/comments on the type and number of candidates found through this thread? <comment><USER2> I hired one person at my last job from that thread, but also got about 40 bad responses. This was from one posting in one month. The job was specifically for a senior UI engineer, but most responses were junior or intern-level candidates in other areas (back-end, ML, etc.). Many were persistent in telling me how good of candidates they are, sending me multiple e-mails a week even after explaining to them that they're not what we're hiring for right now. One randomly accused us of ageism when we rejected him after the recruiter phone screen.

Further, I'm just an engineer and don't know our specific salary bands. Unfortunately there's a trend lately of downvoting every post that doesn't have a salary.

The signal to noise ratio was way too low for me. I definitely wouldn't post there again.

</comment><comment><USER3> I just talked to an engineer today who said he saw our thread on HN and applied. I'd say more than 50% of the engineers we talk to say they heard about us from HN.</comment>


Invaders game in 512 bytes - <AUTHOR> https://github.com/nanochess/Invaders <comment><USER2> The programmer took great care about register allocation.

On this topic, the Saturn CPU of the HP-48 handheld calculator of the 90's had quite a lot of registers (9 of them 64-bit, plus a number of others and a hardware return stack) yet a 4-bit wide bus.

The whole CPU was optimized for BCD (binary coded decimal) computation and registers were structured into "fields" varying length. Thus you could program relatively advanced algorithms without having to swap registers with memory or stack all the time like on e.g. the Z80.

This allowed to write quite advanced things. For example I wrote ASM code that compiles to a 18kb binary where you can walk into a complex dungeon rendered in perspective with shading, with writings on walls, monsters, you can find objects, pick them, throw them, climb stairs, fall in pits.

See [http://amphi-gouri.org/hp48/dm48/](http://amphi-gouri.org/hp48/dm48/) for details.

<comment><USER3> Sadly, the source code is unreadable without the emulator.

<comment><USER2> Not yet fully complete, but all the source code for run-time is there: [https://github.com/fidergo-stephane- gourichon/dm48](https://github.com/fidergo-stephane-gourichon/dm48)

</comment></comment></comment><comment><USER4> One thing that you'll notice stands out if you look at this code and compare it to what a compiler might generate is the very efficient use of registers; indeed, a compiler that can do this level of optimisation/code generation would be a "holy grail", but there's been little effort towards that since traditional code generation and optimisation is "good enough" for most purposes. However, as this example shows, the actual limit is still very far away.

<comment><USER5> Do you know of any work being done in this area? I'm not that familiar with compiler design but this sounds fascinating.

<comment><USER6> It's not quite true that no work is done in this area. [https://en.wikipedia.org/wiki/Superoptimization](https://en.wikipedia.org/wiki/Superoptimization) is an active area of research, where we try to find the optimal code sequence (for various values of "optimal" which could include small size, but more usually highest performance) using various techniques including exhaustive search, annealing and logic programming.

(To be fair superoptimizing a 512 byte game is far beyond what could be done today)

</comment></comment></comment><comment><USER7> The author is an amazing code optimizer and obfuscator, and was winner of IOCCC many times. Look what he did in js1k 2010: A js chess in 1023 Bytes: [https://js1k.com/2010-first/demo/750](https://js1k.com/2010-first/demo/750)

His website has much more cool stuff: [http://nanochess.org/index.html](http://nanochess.org/index.html)

</comment><comment><USER8> The first program I sold (aged 15) was a version of Space Invaders that ran in the 512 bytes available on the minimal Acorn Atom microcomputer back at the beginning of 1981.

Not as impressive as this though!

<comment><USER9> Given no Internet back then, at least as impressive I'd say.

<comment><USER10> I wouldn't be so sure. There were other sources of information like computer magazines, newsletters and clubs.

Most computers back then also came with very detailed manuals, so you could go far without the need of external documentation.

The Internet brings a lot of distractions as well you didn't have to deal with back then.

<comment><USER9> This is true, but speaking only for myself, I got a lot less done then, and it was really hard to get information. I managed to get data and manuals on my Spectravideo 728 only after most of my friends had already switched to Amigas and Ataris :-)

The BBS scene then improved the availability of information for those who could afford modems and minutes!

</comment></comment></comment></comment><comment><USER11> Question; it's been 20 years since I've done assembler, but I want to understand in what sense is this "512 bytes"?

\- The downloaded COM file is almost 64k

\- The source code appears to be about 4k

Is 512 bytes the memory footprint? Assembled but not linked code? Something else?

<comment><USER12> _in what sense is this "512 bytes"?...The source code appears to be about 4k_

The source .asm file is about 4k, most of which consists of comments.

The rest is assembly language code with things like:

            mov ah,al

That assembly language which is 17 bytes including the preceding spaces gets assembled into machine language which is substantially lower. I'm much more familiar with 6510 assembly than I am 8086 assembly but I believe mov ah,al is one byte for the mnemonic and two bytes for the registers for a total of 3 bytes. So the actual machine code is far smaller than the assembly source code.

<comment><USER3> > I believe mov ah,al is one byte for the mnemonic and two bytes for the > registers for a total of 3 bytes.

Two bytes in the 8086 mode:

         88C4   mov ah,al

And inside, ah and al are encoded with the 3 bits each, spending just 6 bits for "from which register to which register."

</comment></comment></comment><comment><USER13> Very nice! I remember also writing my own many years ago under similar restrictions (it was uploaded to BitBucket in 2016 but existed for much longer): [https://bitbucket.org/danielbarry/saxoperatingsystem/src/mas...](https://bitbucket.org/danielbarry/saxoperatingsystem/src/master/PROGRAMS/SPCE/SPCE.ASM)

</comment><comment><USER14> For perspective, Atari 2600 had ROM cartridges starting at 2KB, and the machine itself had 128 bytes RAM. Considering that this game looks better than Atari 2600 Space Invaders, it seems like a pretty good job.

<comment><USER15> Well to be fair to the 2600 - the ibm bios brings a fair few kilobytes of code to the fight.

<comment><USER16> In this case, the BIOS'es contribution is fairly light:

\- video mode change (int 10h, ah=0)

\- RTC clock read (int 1ah, ah=0)

\- keyboard read (int 16h, ah=0 and ah=1)

I am not familiar with Atari 2600 programming, but on the devices of that class:

video mode change would be at most few outb's, or omitted altogether if multiple video modes are not supported

"RTC clock" would be a loop waiting for VSYNC, likely less then a dozen operators

keyboard/joystick will be a simple "inb" at the core. It may, however, require debouncing, making it the most complex ops.

So in total, this game is amazingly light on the IBM BIOS services. In my estimation, porting it to BIOS-less 8080 system will only increase the size by 100 bytes at most.

<comment><USER17> The fun part of the 2600 is that it doesn't have any real graphics hardware. You produce the graphics scanline by scanline racing the beam. That's the main reason the graphics look the way they do, there's no memory for a frame buffer or even a single scanline unless you dedicate it yourself.

EDIT: Here's the wikipedia article on the topic, [https://en.wikipedia.org/wiki/Television_Interface_Adaptor](https://en.wikipedia.org/wiki/Television_Interface_Adaptor)

<comment><USER18> This is how you put an object on the screen on the Atari 2600 (VCS):

1) Horizontal positioning is done by sync. You have to write a value to a latch register in the exact moment, the beam crosses the desireed location. So the code has to engage in a delay loop of sorts. However, a CPU clock is 3 pixels long and a minimal delay loop is 5 CPU cycles, providing just a resolution of 15 pixels for this. Therefore, you have to work out a correction factor (+7 … -7 pixels) and write this to another register and trigger this by yet another write to a register.

2) Vertical positioning is done by counting raster lines (you have to do this anyway, since you have to trigger the vertical blanking and raster retrace on your own) and, if it's the right one, writing a non-null byte value to the sprite register in question. Of course, you have to clear it again for those lines where it ought not to show.

There are just two sprites and three single-pixel objects. So some repositioning on the fly and additional trickery is required to put something like Space Invaders on the screen. (There are also background graphics, consisting of 40 fat pixels, of which you can set up half of them, the other half either repeated or mirrored. Howewer, these fat pixels are 4 times a normal pixel wide and all of the same color and not much of use for displaying game characters.)

The TIA just produces a single raster line as set up over and over, resulting in a pattern of vertical stripes, which you'll have to interleave cleverly by your vertical display logic (called a kernel) manipulating the shape and color of things in order to display a meaningful image. However, as you're doing so, the beam is racing on…

</comment></comment></comment></comment></comment><comment><USER19> I'd love a screenshot or video or gif or something. I'm on mobile at the moment and I can't try this out. And I totally understand that it would have to be a camera pointed at a monitor. That's fine.

<comment><USER20> From the readme:

A small video of the game running over emulation:

      https://www.youtube.com/watch?v=pC976eejfms

<comment><USER19> Wow, that's embarrassing that I missed that. Thank you.

I may have missed it since the README is a plain text file and Github didn't make that url a link. That's still on me, though.

FWIW, I'll stick it here in a way that's actually a link.

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

<comment><USER21> Interesting

</comment></comment></comment></comment><comment><USER22> what? no hadoop? or spring?

<comment><USER23> wait, those aren't really memes.

<comment><USER22> no, these are not memes. they are real. ask any CS graduate to write this game. my guess it will be at least 5 GB of libraries and a dozen of microservices.

<comment><USER23> I thought you meant it facetiously, since the hadoop train passed away five years ago.</comment></comment></comment></comment>


Ask HN: Linux: Controlling files spans on a HDD/SDD - <AUTHOR> I'm reading a paper on LSM (log structured merge files) and related LDS files. The paper makes the point that while applications may logically append only to a file with the desire for contiguous append-writes, the file system and/or need to make new files for overflow in fact may cause the HDD/SDD to incur random or at least non-sequential writes in or across those files. Consequently some throughput is lost.<p>Question: under Linux is it possible to reserve a block of the hard-disk such that the application can definitely append only write in that block? Oracle, for example, may do this. This scheme by-passes some of the typical filesystem APIs and allows applications to better control where the writes go. <comment><USER2> _Question: under Linux is it possible to reserve a block of the hard-disk such that the application can definitely append only write in that block?_

My understanding is if you're developing a filesystem or working with persistent memory, assuming this kind of control may be necessary; otherwise you're probably just confused.

That being said, it may well be that only appending helps the filesystem (eg. ext4) to keep the file contiguous. So if that's your angle, you probably want to learn more about your filesystem of choice.

-

[https://en.wikipedia.org/wiki/Extent_(file_systems)](https://en.wikipedia.org/wiki/Extent_\(file_systems\))

[https://en.wikipedia.org/wiki/Allocate-on- flush](https://en.wikipedia.org/wiki/Allocate-on-flush)

[https://unix.stackexchange.com/questions/349769/linux-dax- di...](https://unix.stackexchange.com/questions/349769/linux-dax-direct- access-details)</comment>


'Nerd Judge' Questions Evidence in KickassTorrents Case - <AUTHOR> https://torrentfreak.com/nerd-judge-questions-evidence-in-kickasstorrents-case-170129/ <comment><USER2> Does anyone have the full transcript? Doesn't look like the article links to it.</comment>


Data Brokers Are Now Selling Your Car's Location For $10 Online - <AUTHOR> http://www.forbes.com/sites/adamtanner/2013/07/10/data-broker-offers-new-service-showing-where-they-have-spotted-your-car/

<comment><USER3> This is nothing compared to what cops are putting together, gathering data from all their tag reader cameras including ones monitoring popular roads and ones attached to police cars. And aggregating it at regional "fusion centers".

[http://cironline.org/reports/license-plate-readers-let- polic...](http://cironline.org/reports/license-plate-readers-let-police- collect-millions-records-drivers-4883)

<comment><AUTHOR> That's a great/terrifying link.

I'd love to know the justification the city of San Leandro use to explain why they're keeping photographic records of cars, owners, and their families - <USER2> just how uptight the police/city-officials would be if I took photos of them and their families in their driveways at the rate of "1000s every eight hours"…

<comment><USER4> Devil's advocate: Why would they need justification to at least keep records of where your licence plate has been in public? What expectation of privacy do you have?

<comment><AUTHOR> As elsewhere, the expectation of "just another face in the crowd" pseudo- privacy.

When we (as a society, by which I mean my grandparents parents) agreed to have "unique identifiers" prominently displayed on vehicles we own, the reasoning behind that decision was based on a different reality.

This is _very much_ scope-creep - without anyone affected being asked whether it's OK.

If there was a proposal to have police all stop 1000 people per shift to check and record their ID, people and civil liberty groups would be up in arms (perhaps literally).

Is this _very_ much different? Shouldn't we at least have had a discussion about it before rolling it out without letting anybody know what was going on?

<comment><USER4> Does "just another face in the crowd" pseudo-privacy have any legal precedent?

</comment></comment></comment></comment></comment><comment><USER5> "Of five cars that I looked up, three cars turned up nothing, but I found data on the other two.

"One car had a single sighting: it was parked on Manhattan's Upper West Side at 12:40 in the morning last December."

This squares with my use of databases sold to lawyers, doing look-ups on myself and close family members. The databases are much less impressive in their power than salesmen suggest. I'm not worried about this. I won't be worried about this, and eventually when most cars are self-driving and many cars are paid for by the use and ridden by many different passengers, license plate recognition will be less informative than ever.

To be sure, aggregating a whole lot of data can add up in its impact. MIT has developed a tool with which you can analyze all of your own Gmail metadata

[https://immersion.media.mit.edu/](https://immersion.media.mit.edu/)

(I learned about this from a submission to HN from ColinWright, which alas received little discussion here), and I found out from that tool that my use of email is more business-related than I realized: all of the top seven "collaborators" (that program's term) that I have are actual work colleagues, as well as personal friends. A megabyte here, a megabyte there, and pretty soon all the data turn into information. But really the victims here often enough will be the chump clients who pay for license plate record searches and don't find out anything worthwhile.

<comment><USER6> _eventually when most cars are self-driving and many cars are paid for by the use and ridden by many different passengers, license plate recognition will be less informative than ever_

Except that then they'll have credit cards matched to continuous GPS data.

<comment><USER7> Time to find a bitcoin car-share.

</comment></comment></comment><comment><USER8> Is this the same company that owns all the speeding and red light cameras? If so, what a brilliant way to further monetize their monopoly. "Public safety", indeed.

(One thing I like about riding a bicycle is that you are mostly anonymous, and nobody is going to show up with a picture of you running a red light a couple months later. Of course, once these companies start doing facial recognition based on pictures of you tagged by your friends on social networks...)

<comment><USER9> Two years ago in my E & M lab, one of my profs was showing off on of his research projects into materials with negative permeability and negative permittivity… it started to make me think about if people could have clothes(or objects) and spray a lining of these type of materials on them, it could render them "invisible" to traditional optics… Isn't the military doing research like this too? I know they work close with academia as well…

<comment><USER10> There has been license plate blocking technology for sale for quite some time now, which is definitely more low-tech than James Bond style license plate changers.

[http://www.phantomplate.com/photoblocker.html](http://www.phantomplate.com/photoblocker.html)

<comment><USER11> Mythbusters had worse luck than the local media at your link:

[http://dsc.discovery.com/tv-shows/mythbusters/mythbusters- da...](http://dsc.discovery.com/tv-shows/mythbusters/mythbusters-database/way- to-beat-police-speed-cameras.htm)

</comment></comment></comment></comment><comment><USER12> It's too bad current vehicle codes forbid you from obscuring your plate at all at any time, this makes it illegal to hide your identity from would be data collectors, which makes protecting yourself very difficult. I suppose you could just go without plates like Steve Jobs did and pay the fix-it tickets you end up getting.

Personally, I tend to forget to pay my registration for a solid 6 months before I finally get pulled over for it every year, and it costs me about $35 extra, so if this becomes pervasive, it might be worth considering losing the plates. I'm willing to bet that some officers would even be slightly sympathetic if you explained your reasoning, not that they wouldn't still give you a ticket, but maybe.

<comment><USER13> But there has never been any expectation of privacy when in public. Especially when it comes to something regulated like driving a car. Should there be some change in the law now forbidding collecting licence plate data because it is easier to do en-masse?

<comment><USER14> That's the question, isn't it? LE uses facial recognition to scan crowds. Now cars are tracked, not using GPS, an observing officer, or a member of the public (who may need to report a crime), but by snarfing video of all the license plates with a geolocated camera, timestamping and OCRing them, and storing the resulting information.

The next thing that pops into my head is the fingerprint. Not because it's "easy" to get, but you also have no reasonable expectation of privacy with them.

Imagine the embarrassment when "no two fingerprints are alike" is finally disproven as some poor bastard is arrested and charged with a crime committed by another person solely on the basis of his thumbprint.

<comment><AUTHOR> It doesn't seem to embarrass prosecutors too much when they jail someone for five months based on "conclusive DNA evidence" \- even though the suspect was in hospital with a blood alcohol reading on 0.4 from two hours before the crime to 12 hours afterwards. And who'd been take to hospital by the same ambulance crew that attended the crime later on and moved the victim… You can see where this is going right? - "The paramedics physically moved both Anderson and Kumra, resulting in the inadvertent DNA transfer…"

How on earth can someone end up in jail for five months under those circumstances?

(Note too, the other suspect jailed for seven months - for, several months before the killing, posting a photo of the future-victim's house to Instagram…)

[http://wrongfulconvictionsblog.org/2013/06/28/how- innocent-m...](http://wrongfulconvictionsblog.org/2013/06/28/how-innocent- mans-dna-was-found-at-killing-scene/)

</comment></comment></comment></comment><comment><USER15> Forget the cars. How long before people accept discounts on Google glass (or similar) in exchange for continuously running face recognition software and streaming the information back to some company providing a similar service where you can look up people instead of cars?

"User #129334, we have detected a person of interest in your field of view. A client would like Enhanced Position Information (TM) on this individual. Nod if you agree to keep him in sight for the next hour and receive a month of free cable!"

For a long time we've enjoyed the goods arising from the fact that technology can rarely be stopped. I have a feeling we'll see some awful things in the coming decade... It unsettles me greatly that I have this newfound fear or technology, but I really do.

</comment><comment><USER16> It's a done deal: everywhere your car with a license plate goes is and will be tracked, and stored forever.

It's already happening, it is already cheap, and there's no way to stop it short of a _massive_ swell of public support for enacting laws to limit it -- in the USA, that seems very unlikely.

What I think is important to extrapolate from this stuff is that everything we can do with license plate recognition now will soon be doable with facial recognition.

Tracking everywhere your car has been and storing the record forever is one thing. It's very hard to imagine that tracking everywhere your _face_ has been isn't the next step.

</comment><comment><USER17> So who is actually going around photographing the cars? Do they have regular employees, fixed cameras, or do people just turn in photographs for small change?

<comment><USER18> Repo men.

There is at least one company that works with repo men - they put ANPR cameras on the repo men's dashboards, it records every plate that comes into view and uploads it in near real-time to a central databases along with gps info. Any repo man who subscribes to the service can put out an alert for a plate, once that plate of interest shows up in the central database they get a text message telling then when and where it was scanned. When I first heard about these guys a few years ago they already had a very large number of repomen participating in the service.

I am not surprised to hear that the companies have expanded their market beyond repomen, that is the nature of databases - once you've got the data centralized all kinds of ideas come up for how to exploit it.

<comment><USER19> And all of this is legal? Does this mean anyone can put up a camera on his dashboard, roof and capture these info?

<comment><USER18> Yes, in the US, the current state of the law is that anything done in public is fair game for anyone - there is no expectation of privacy when in public.

However, this point of law was determined back in the late 60's or early 70's, back when the concept of an indexed database of millions of permanent records of essentially everybody in public was barely even the stuff of science fiction, much less everyday fact. I think we are long overdue for a revaluation of the legal situation given the drastic change in circumstances of the last 40 years.

</comment></comment></comment></comment><comment><USER20> Life begins to suck more every day, soon everyone will know everything about all of us. I wonder what an open source life will be like.

<comment><USER21> Agree about the sucking part. But IMO the problem is not that everyone will know everything about everyone. That would be weird (utopian?) but kind of fair.

The fear is about the rich and privileged knowing everything about the poor and underprivileged (using databases that are expensive, protected by IP laws, and/or require clearance), and opaqueness the other way around. Information as a means of control.</comment></comment>


UBiome(YC S14) tests for hypothetical health conditions - <AUTHOR> http://ubiome.com/microbiome-testing <comment><AUTHOR> uBiome (YCS14) unveils its new CLIA and CAP certified medical test. They claim it tests for a variety of conditions, including 'leaky gut syndrome.' Wikipedia describes leaky gut as 'a hypothetical, medically unrecognized condition.' How is it possible to have CLIA and CAP certification for this? I haven't seen any peer reviewed data from them period. Can anybody point me to a paper?</comment>


Ask HN: How should I pick a cloud provider (AWS, Google, Azure)? - <AUTHOR>

When a startup is choosing which cloud platform to build on, what are the most important things to consider? Cost? Features? Support? What are the strengths of each cloud provider? <comment><USER4> If your startup doesn't have an assumed hit-rate in the hundreds-of-thousands (or you are not in some computationally-intensive industry), ask yourself why you need to build on the so-called "cloud"? (which is meant for "scaling").

If you don't need the scale, don't build for it. It is like part of the last 10% of the 20% incremental changes you need. Focus on the 80% for now.

Buy yourself like 5 DO (or some VPS) servers, spin up your Docker (other easy- devops tool) containers and push your code.

Then focus on the really hard part, marketing/sales.

Note. I've also heard that AWS is quite expensive (comparatively speaking).

</comment><comment> 100m-question Rackspace is cheaper and offers great customer support. The only pros is there's a lot less software tools compared to AWS but the basic things like orchestration and autoscale is almost comparable.

<comment><USER5> Is it really cheaper if you consider reserved instances on aws?

</comment></comment><comment><USER6> Are you funded? Are you part of an accelerator that gives you access to extremely large chunks of free cloud credits? How compute heavy is your workload?

At this time, you will always be paying up for cloud services. That being said, you are paying for something, not just fluff, that many people - <USER2> included - find quite valuable.

Dedicated hardware is great, I can get a xeon 12 core E5v2 with 32 gb of ram and a guaranteed 300 mbps bandwidth for ~$100 / month - which the bandwidth alone would cost many multiples of that on AWS. However, what if a hard drive goes bad? Or a PSU blows? Or something else which knocks that server offline? How quickly can you get another one up and running?

With AWS/azure/google infrastructure, you'll have built your application to be fault tolerant of the underlying hardware and a new instance can be automatically spun up. You also can scale instantly - with dedicated hardware it'll be a minimum of hours (if your lucky) to days to get more servers online. If you get an expected wave of traffic - from a favorable blog post for example - on any of the mentioned cloud providers your app can automatically scale and provision servers without you clicking a button.

The other important cost to consider is time - what is your developers time worth? Instead of fiddling with the database server, you can pay amazon a premium and just use RDS. Instead of setting up a distributed queue so different components of your app can communicate, you can just use SQS.

However at the end of the day the answers to all these questions are going to be unique for everyone and different situations call for different solutions. If you needs lots of compute power and need it to be as cheap as possible - using dedicated hardware will be your best bet, unless you can architect a solution with spot instances.

As far as AWS vs. azure vs. google is concerned, I've used all three and AWS provides the best service at the most competitive price. Azure is probably better if you're using windows servers. Google's cloud offering offering is underwhelming - and is quite expensive for what you get.

If you are still very small - digital ocean is a fantastic option and can save you a lot of money until you need the reliability from a higher quality provider.

<comment><USER5> The other big issue people usually don't mention or consider when discussing dedicated hardware is that not only will it take longer to add capacity, but it is also a risk every time you add servers you risk the entire network that server is being added too. Unlike a cloud environment, adding servers to a dedicated environment is not necessarily going to be as well practiced - <USER3> errors are more likely... These types of errors are pretty bad too e.g. All servers offline kind of bad. We had this happen two very bad days followed and now I can only recommend aws with reserved instances and multiple regions.

</comment></comment><comment><USER7> I just want to note that of the three providers you mention, they're really not providing equivalent services (GCE is definitely much different than EC2, so does Azure and AWS ecosystem). So depending on your stacks, it _should_ be an obvious choices (I can't say, because I don't know what you are doing).

Now, between Digital Ocean, Linode, Softlayer etc. (which are doing more of the same things), things got a bit muddier.

</comment><comment><USER8> I think the biggest thing is just to avoid Paralysis Analysis.

If you're already committed to a specific technology, it may be best to continue down that path. As an example, if you're building .Net Applications it may be advantageous to move to Azure.

However, it you're looking to move fast and pivot when necessary you may want to look at AWS or Rackspace. I think those providers are pretty reliable and offer a lot of options.

</comment><comment><USER9> As for choosing a provider, remember the cloud is more about horizontal and dynamic scaling. If your application has a predictable or consistent load the cloud is likely not be the best nor the cheapest solution. We had a client move off the cloud because they were mature and their growth was mostly predictable and usually followed a 3-6 month sales cycle that would mean there was plenty of time to allocate hardware to scale when needed.

I have used AWS and Azure professionally, only played with Google. Right now AWS is the most mature, stable and well documented. We have only had 2 clients come off AWS out of about 25ish we put there. We have had 4 out of the 5 leave Azure. That speaks volumes to me, one is maybe we suck at Azure, but I really feel it is more that Azure just hasn't matured far enough along.

I am sure plenty of people have had good experiences in Azure and Google, but to me it requires more time and resources to manage and resolve issues because both are less mature. AWS takes a little time to understand but it just works, and if you follow their recommendations you will rarely have any major issues. It isn't that things don't fail in AWS, because they do, but if you follow the basic design principles you won't have major issues from them. While in theory this is true with Google and Azure I just haven't seen them be as stable or mature, but I am sure that will change. Personally if I was re-evaluating today, I would look harder at Google since I haven't used it in production yet, but Azure wouldn't even be in the conversation right now.

As for what to consider, AWS can get expensive so you have to manage it properly and closely. Setup weekly cost reporting so you can see how you are trending and properly use a CDN where possible to reduce bandwidth charges etc. Also, properly select your storage in EC2 to make sure you aren't paying for unused space needlessly, same with CPU. AWS has some tools to help show you where you might be wasting dollars which helps too. All this really applies to all cloud environments too, not just AWS.

Features AWS wins hands down, but remember if you build your product depending on their services you have created a solution that is not extremely mobile without some code changes. Specifically this mostly happens with services like DynamoDB, SQS, not necessarily EC2 or RDS.

Support, AWS has rocked every time I have had to use them. Azure was also responsive but honestly seemed just as lost as we were sometimes, which didn't inspire confidence for me.

</comment><comment><USER10> From my experience AWS can be more expensive, but it is a joy to use. Once you get it down everything just syncs together perfectly and it is extremely easy to scale when the time comes.

<comment><USER11> With reserved instances I'm not even sure it is more money. It is more money if you just spin up on-demands all of the time.

</comment></comment><comment><USER12> AWS seems to have their security down. I haven't heard of a single major incident from them.

Meanwhile Linode, RamNode, etc.</comment>


Infinite Scalability with Amazon Web Services? - <AUTHOR>

From a startup junkie, but a non-hacker:<p>Is it possible to build a truly scalable application with all of the Amazon's Web Services?  What would be the biggest problem?  Is it a technical problem, in that Amazon's services just don't cover everything or is it more that we don't have perfect foresight into where the bottle necks will be? <comment><USER2> I've heard this question a lot when people ask me about what Yahoo are going to be offering in the cloud.

A lot of people don't understand the difference between Amazon's and Google/Microsoft's approach to cloud offerings.

Amazon seem to be providing a lot of infrastructure pieces, from virtulization to storage and CDN to RDMS. However how you connect those pieces or which you use it's pretty much up to you.

Google on the other (and Microsoft judging by the current descriptions of Azure) have provided a platform which guides developers towards good practices with constraints but is more limited in the possible applications. That said they won't make your application performs, they'll just make sure it fits in their scalable architecture.

So the short answer is yes. You can build a truly scalable application on any or all of these cloud services if you know how. If you know how, though, you can probably do it without them.

</comment><comment><USER3> Scalability isn't inherent to Amazon's architecture. It depends of your app. A poorly written app won't scale.

<comment><USER4> Not only that - but certain classes of problem won't scale (linearly).

If you wanted to produce a site that outputs static, immutable, invariant, fixed content... then yeah, probably would scale (approaching) infinity.

<comment><AUTHOR> Ok, that makes sense to me I was always wondering if it was a perfect foresight problem, which it seems to be rather than a lack of services from Amazon. However, is it possible to get to the point of scalability where it is just a hardware issue rather than a restructuring of code issue? Or are the code methods one would implement to allow such scalability overkill in the early stages?

</comment></comment></comment><comment><USER5> There are various levels of Scalabilty, AWS being one of them in a chain.

Hosting > AWS > CDN's like Akamai > building out your data center similar to google.

AWS is a good start, and if you start doing 100's of Gbps of traffic you should probably start looking for other options.

As the other HN commenters have mentioned, you have to architect you application with scalability baked in. Some applications aren't good candidates for scalable applications such as many 1-1 live streams.

</comment><comment><USER6> Right now, I'd say that the biggest limit to scalability with AWS is the lack of load balancing. They've said that this will be coming in the future; but it's not here yet.

<comment><USER7> You can do software load balancing, but you'd eventually be bottlenecked by the 1 Gbps per instance limit. You could use round-robin DNS for multiple load-balancer instances, but that feels a little kludgy.

Lack of geographical distribution and impossibility of decent HA might kick in before you had to worry about load balancing gigabits of traffic, though.

<comment><USER8> Just an idea, if the 1 Gbps limit is a problem for your load balancer, you could just start serving static files through a CDN, therefore freeing up quite a bit of bandwidth for dynamically generated stuff.

It's a good problem to have, though!</comment></comment></comment>


Ask HN: Do Zuckerberg, Page, Musk, etc, etc post here in HN? - <AUTHOR> Has any of those successful founders posted here, using fake name or not?  If not, why don't we invite them to sign up and start a thread? <comment><USER2> Mark might have. I'm pretty sure neither Elon Musk nor Larry Page has.

<comment><AUTHOR> I have never seen a successful (rich) founder posting here. Is there a reason for that? Is it that once they become rich, they have to shut up? What about before they got rich? There is no trace of any activities of these people on the Internet/any forums. Or is it because a successful founder tends not to spend any time on internet/forums?

<comment><USER3> Depends on your threshold for "rich", but the #1 in the list of HN posters (<https://news.ycombinator.com/leaders>), tptacek, sold his startup for >$10m.

<comment><USER4> I am extremely small potatoes compared to some of the people who occasionally post here. Jason Fried, for instance, posts on stories about 37s.

If we're talking the Larry Page scale, well, Marc Andreessen posts here often enough to have noticed Maciej Ceglowski's Co-Prosperity Cloud; he saw a comment I left about a $50 follow-on investment and matched it.

<comment><USER3> True, you are no Bill Gates, or even Marc Andreessen. I think you would still qualify as a successful founder who posts here, though.

How successful? Depends on your perspective. I thought I had relatives who I would classify as "extremely successful" and "rich", and they sold their companies for... high 5 figures. :) I must admit, my vision gets a bit blurry when it comes to distinguishing between numbers with 8+ figures...

</comment></comment></comment></comment></comment><comment><USER5> I am not sure how much better their advice would be than that of the HN'ers who have enjoyed success as founders but with thinner wallets. Brin etc. experiences from ramen to $50 million are roughly equivalent to that of others, and for anyone pushing toward $10 billion from $1 billion, there are probably better ways to pick their brains than in an HN comment thread.

While it would be entertaining to see them posting here, a Reddit AMA is probably a better forum.

<comment><USER6> Reddit AMA is completely saturated. In order to read the good stuff you have to go through so much noise.

</comment></comment><comment><USER7> Its not about rich or poor. Its about focus and need.

Early in the product/company building stage you need to be doing lot of development (assuming you are a tech co-founder), but as company grow, most likely your profile is going to grow as well and now you are not developing anymore (or at least not so often). And hence there is much lesser need to be on dev/hacker network. Now they have team of devs, and I am they are here, contributing.</comment>


Google Compute Engine reporting issues - <AUTHOR> https://status.cloud.google.com/?nonce=13373 <comment><USER2> Yup. We (discordapp) had to manually spin up our own stuff to route around the issue. Not great communication from Google on this one, status page update took ~20 minutes.

</comment><comment><USER3> Link to the incident page, there should be an update in 15 minutes from Google.

[https://status.cloud.google.com/incident/compute/16020?_ga=1...](https://status.cloud.google.com/incident/compute/16020?_ga=1.58060066.984772889.1476214930)

</comment><comment><USER4> We're seeing this issue for our sites behind the L7 load balancer, this is also causing the site for the stackdriver monitoring to be down: [https://app.google.stackdriver.com](https://app.google.stackdriver.com)

</comment><comment><USER5> This is a bad one. All load balancers are down for us. And it's a multi zone failure.

<comment><USER4> Yeah, the rate of multi zone failures is concerning. Was planning on moving our primary API behind the GCP load balancer but will have to reevaluate that.

</comment></comment><comment><USER6> Seems to be effecting HTTP(s) load balancers too:

[https://status.discordapp.com/](https://status.discordapp.com/)

<comment><AUTHOR> Yes, it's their Layer 7 load balancer product that is failing massively.

<comment><USER6> It's quite scary how much of the internet is affected when issues like these happen.

</comment></comment></comment><comment><USER4> This issue is resolved for us now.

</comment><comment><USER7> I guess that explains five Pokémon Go went down</comment>


Ask HN: Plain English ToS - Is This Legal? - <AUTHOR>

Dear HN,
My website is now getting enough traffic that my lawyer encouraged me to draft Terms of Service. I'm loathe to make one of those legalese laden nonsense pages, so I tried to point out the dangers and restrictions of using TrailBehind.com in plain English.
Does this document provide me any legal cover from the types of dangers it intends to protect against? Like a guy getting lost because my map data was wrong?
http://www.andrewljohnson.com/article/Plain%20English%20Terms%20of%20Service <comment><USER2> No. You should never write your own license - the same applies here. You will get it wrong (simply by not being a lawyer :)) and it wont cover what it is supposed to.

Get a proper ToS drafted and then do what Creative Commons does with their licenses: do a page with just a few lines detailing in plain terms what it means (REALLY simple, what you wrote is far too complicated - the main off put for a ToS document is the wall of text) with a link to the actual legal document.

</comment><comment><USER3> The target audience of T&C legalese is not your users, it's their lawyers if it ever comes to that. Create proper, lawyer-friendly version and _then_ make a non-binding user-friendly summary in plain English if you feel like it.

</comment><comment><USER4> If you have a lawyer, why are you asking for legal advice from a bunch of amateurs?

Discuss your concerns with your lawyer, and pay him to draft a TOS document. Ask him to use the reader-friendliest language that protects your interests.

<comment><AUTHOR> I sent these to my lawyer for review as well.

Unfortunately, his advice costs hundreds of dollars an hour, and yours is free.

<comment><USER4> ...and in each case, you get what you pay for.

Listen, I speak from experience: a few thousand bucks in legal fees could have literally saved me millions. Don't skimp where the legal profession is concerned.

</comment></comment></comment><comment><USER5> Haha. I like it. Looks good to me, though I'm not a lawyer. Only thing I could think of adding would be a sentence that explicitly says something like "you assume all responsibility for your use of the site and any information you get from it."

</comment><comment><USER6> Direct link to save time: [http://www.andrewljohnson.com/article/Plain%20English%20Term...](http://www.andrewljohnson.com/article/Plain%20English%20Terms%20of%20Service)

</comment><comment><USER7> i think you could summarize it better. maybe... "disclaimer: never use trailbehind for any reason"</comment>


Candid Camera - <AUTHOR> http://www.avc.com/a_vc/2010/03/candid-camera.html

<comment><USER2> I used to be pretty paranoid about posting things online. I thought that my privacy was valuable, and so I didn't put anything up.

However, a few years ago I realized that there was a _ton_ of stuff about me online. Photos on facebook, an article in a school newspaper, all sorts of directories and listings. I had an online identity, whether I wanted one or not. Moreover, I knew it would expand exponentially with time.

So, I decided the only solution was to put my own stuff up. I started blogging, Facebooking, and posting on places like HN. I now control the conversation by making sure that most of the stuff about me is from me. That way, I'm in the driver's seat.

We are all public personalities now. Yes, it's somewhat distasteful and a PITA. Life in the fishbowl can be stressful. However, the only alternative is to completely withdraw from the world, and that's not really an option.

</comment><comment><USER3> _He went on to say that they were so focused on revenues in the early days of Zynga that they did some things he didn't like. He then mentioned the Zwinky toolbar and said he installed it on his machine and couldn't get it off. And then went on to say that he told his developer to take that lead gen offer down._

That really isn't the impression I get from watching the mentioned clip: [http://techcrunch.com/2009/11/06/zynga-scamville-mark- pinkus...](http://techcrunch.com/2009/11/06/zynga-scamville-mark-pinkus- faceboo/)

<comment><USER4> that's my point. that clip misses the context of what mark was saying and why. if you watch the entire video you'll see it an entirely different light

<comment><USER5> I watched the full video. He says "I did every horrible thing in the book". He's admitting to bad behavior. Where's the context missing from that? The guy let his ethics slip in his hunger to succeed.

</comment></comment></comment><comment><USER6> The alternative is just to be good. Then you have nothing to hide, and nothing to worry about.

In the case of Zynga, hocking malware to your users is not good. They indeed had something to worry about.

<comment><USER7> I believe that one of the points that he were trying to make was that you have to be aware that even if you are "good", you as a public speaker might (and probably will) be taken out of context.

It might happen in a 30 second Youtube clip on Techcrunch or in a published interview, either way it's still vital to try to be prepared when it happens.</comment></comment>


Ask HN: What are the next major steps for AI after deep learning? - <AUTHOR> <comment><USER2> Deep understanding</comment>


Unilever acquires Dollar Shave Club, terms not disclosed - <AUTHOR> http://www.businesswire.com/news/home/20160719006720/en/Unilever-Acquires-Dollar-Shave-Club <comment><USER2> Wow, I had no idea they were doing close to $200m a year - congrats to them.</comment>


'Trojan horse' drug treated British patients with six different forms of cancer - <AUTHOR> https://www.thelondoneconomic.com/lifestyle/revolutionary-trojan-horse-drug-has-successfully-treated-british-patients-with-six-different-forms-of-cancer/07/02/ <comment><USER2> I'm hoping here that HN isn't going to be _too_ taken in by a good PR strategy from the biotechs who are supporting the clinical trials here (Seattle Genetics and Genmab - see here: [https://www.clinicaltrials.gov/ct2/show/NCT03485209](https://www.clinicaltrials.gov/ct2/show/NCT03485209))

I mean, it's interesting data, and any step forwards in treating cancers (especially solid tumours) is great... but this isn't especially novel. Toxin- bearing antibodies like this have been worked on now for years; indeed, there are examples which have successfully made it all the way through large phase III trials and onto the market, which takes many years.

e.g. [https://www.medicines.org.uk/emc/product/2859](https://www.medicines.org.uk/emc/product/2859) and [https://www.medicines.org.uk/emc/product/9537/smpc](https://www.medicines.org.uk/emc/product/9537/smpc)

<comment><USER3> Not novel isn't the same thing as not news. As a tech site, we read lots of articles about new JavaScript libraries reimplementing techniques discovered in the 60s.

Can we not have one breathless article about an incremental improvement in cancer drugs without everyone in the know scoffing about how it is not revolutionary?

<comment><USER4> > Can we not have one breathless article about an incremental improvement in > cancer drugs without everyone in the know scoffing about how it is not > revolutionary?

this will probably happen about the same time that the headlines stop presenting incremental things as revolutionary..

</comment></comment></comment><comment><USER5> _The price has not yet been set. This will be worked out based on the success of the drug, the number of cancers it treats and what individual markets can bear._

Why is it not based on the cost of the treatment?

<comment><USER6> From [https://en.m.wikipedia.org/wiki/Prescription_costs](https://en.m.wikipedia.org/wiki/Prescription_costs)

"A study has placed the amount spent on drug marketing at 2-19 times that on drug research"

<comment><USER7> Wow drug research must be really cheap! To judge by the cretinous late-night ads for junk medicine. They can't have cost much to throw together...

<comment><USER8> I've always assumed the vast amount of marketing is the armies of incredibly high paid door to door salesmen who always seem to be visiting your doctor with some new pitch to reward them for prescribing their pet drug.

</comment></comment></comment></comment><comment><USER9> Its an interesting article.. I have questions!

This antibody binds to 'tissue factor' which are present at high levels on the surface of many cancer cells. Are these tissue factor present in significant proportions on other types of cell? (Reading later it suggests that side effects can include nose bleeds which I wonder if that means that nasal tissue also contains this)

The figures that they show; obviously it is a small cohort anyway and these people were otherwise considered untreatable but do we know what percentage of (eg) ovarian cancer would otherwise find that their tumors were either shrinking or had stopped growing? It would be important to compare that against the 14% they saw..

The mechanism of action is good, I am not able to say if it is novel (the name they use for the technique relates to an incident ~4000 years ago); do we have leads on other particular circumstances which may be useful to do this? (eg prostate cancer was not affected.. presumably because it has no tissue factor on its surface? could it identifiable by any other means?)

<comment><USER10> > This antibody binds to 'tissue factor' which are present at high levels on > the surface of many cancer cells. Are these tissue factor present in > significant proportions on other types of cell?

Tissue factor is expressed on the surface of the cells adjacent to blood vessels, so it's all over the body.

Tissue factor's normal role is to trigger blood coagulation - it reacts with factors in the blood to trigger a coagulation cascade. There is a waterproof layer of endothelial cells between the adjacent TF-bearing cells and the blood itself, so this only happens when a blood vessel is breached by mechanical damage, letting blood come into contact with TF - the resulting coagulation seals the breach. It's a cool system! Although a bit complicated:

[https://diapharma.com/coagulation/](https://diapharma.com/coagulation/)

I had no idea there was a connection between coagulation and cancer, but apparently there is - specifically, it's involved in metastasis:

[https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3151023/](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC3151023/)

</comment></comment><comment><USER11> The title ("'Trojan horse' drug treated British patients with six different forms of cancer") mislead me into imaging a cocktail of cancer cells as a treatment.

<comment><USER12> I thought they had 6 different cancers and thought that's Super unlucky.

</comment></comment><comment><USER13> It's interesting that they mention specifically cervical cancer and head/neck cancers as some of the more successfully treated tumors, given that HPV is now thought to be a frequent cause of both.

</comment><comment><USER14> 7 February 2019 Lancet paper on Tisotumab vedotin trial here : [https://www.thelancet.com/journals/lanonc/article/PIIS1470-2...](https://www.thelancet.com/journals/lanonc/article/PIIS1470-2045\(18\)30859-3/fulltext) (entitled: "Tisotumab vedotin in patients with advanced or metastatic solid tumours (InnovaTV 201): a first-in-human, multicentre, phase 1–2 trial")

 _Tisotumab vedotin is a first-in-human antibody–drug conjugate that is directed against tissue factor expressed on the cell surface of tumour cells to deliver a clinically validated toxic payload to tumours. [...] Tisotumab vedotin is comprised of a fully human monoclonal antibody specific for tissue factor conjugated to the microtubule-disrupting agent monomethyl auristatin E (MMAE) via a protease-cleavable valine-citrulline linker. .... The study was funded by Danish and US biotech companies Genmab and Seattle Genetics_

This Lancet paper references this 2014 Cancer Research paper: [https://www.ncbi.nlm.nih.gov/pubmed/24371232?dopt=Abstract](https://www.ncbi.nlm.nih.gov/pubmed/24371232?dopt=Abstract) ([http://cancerres.aacrjournals.org/content/74/4/1214.long](http://cancerres.aacrjournals.org/content/74/4/1214.long)) : "An Antibody–Drug Conjugate That Targets Tissue Factor Exhibits Potent Therapeutic Activity against a Broad Range of Solid Tumors"

Seattle Genetics page on Tisotumab Vedotin : [http://www.seattlegenetics.com/pipeline/tisotumab- vedotin](http://www.seattlegenetics.com/pipeline/tisotumab-vedotin)

 _Our [antibody-drug conjugate] technology combines the specificity of monoclonal antibodies, innovative linker systems, and the cell killing power of potent cytotoxic agents to treat cancer._

Interestingly, Seattle Genetics stock is down 12% on Friday: [https://finance.yahoo.com/quote/SGEN](https://finance.yahoo.com/quote/SGEN) ("cuz earnings"). Genmab was up 0.69% : [https://finance.yahoo.com/quote/GEN.CO](https://finance.yahoo.com/quote/GEN.CO)

</comment><comment><USER15> Let's stop using the word "cancer" and split it in technical terms: [https://www.lesswrong.com/posts/hwi8JQjspnMWyWs4g/resist- the...](https://www.lesswrong.com/posts/hwi8JQjspnMWyWs4g/resist-the-happy- death-spiral)

</comment><comment><USER16> I have no frame of reference, is 25% ish success rate a good thing?

<comment><USER17> Success rates in cancer are usually broken down by type of response (complete, partial, no growth, no response) and stage. It would have been helpful for the article to say what stage was being treated and compare the response rates in that stage to the best available treatment. For some cancers, 80-100% rate of complete response is currently achievable. Some are at 0%.

</comment></comment><comment><USER18> The site seems deliberately designed to break safari when using a built in iOS content blockers. It's like it reloads itself until the ads have loaded, making it impossible to scroll. Does anyone else see this? Is this a thing now?

<comment><USER19> Seemingly. It doesn't hurt their SEO (like ajaxing in the content would) and "forces" people to turn off blockers. Or clear out.

This sort of dickery just means we'll see a rise in NoScript users, or that functionality becoming baked in.

<comment><USER20> Way too many advertising strategies are dangerously short sighted. That's what led to the proliferation of ad blockers in the first place.</comment></comment></comment>


Ask HN: Any experience on giving up on professional Software Developer career? - <AUTHOR> I've heard lot of stories about people switching careers to software development but I didn't find too much stories where someone did opposite. I don't take into count switching to the management roles. Last few months I started to realize that writing code in bad environments, where the budget and requirements from non-technical people are deciding everything, is killing my creativity and my home projects are suffering because when I come home I feel exhausted, tired and unmotivated.
I have also other skills which are enough to find completely another type of job. In that case software development will be a real hobby and I would be able to do things that I like and love.
Everything is nice and shiny when you think about that, but the reality is pretty much different and is not easy to do such thing. I would like to hear some other opinions and experiences. <comment><USER2> Opinions? Go ahead and give it a shot.

To me it sounds more like you've had shitty jobs rather than you want to get out of dev.

</comment><comment><USER3> My problem is very hard to replace the money and as sole earner with a family I just can't switch.</comment>