Twitter employee deactivates Trump account - <AUTHOR> http://www.bbc.co.uk/news/world-us-canada-41854482 <comment><USER2> This article shines light on the power bestowed upon Twitter employees. They can randomly deactivate one's account, and unless you're the president, you might not have any recourse.

Particularly worrisome is the general left leaning political and social affiliation of such employees. We are an era of systemic censorship of right leaning speech by popular internet platforms.

I'm personally center left, but in no way do I condone the actions of the new breed of leftists, from SJWs claiming "free speech as torture" to wanting "safe spaces" everywhere

<comment><USER3> I'll give a very personal account. I was in the past harassed on Twitter. I received death threats and users were giving out my phone number and address to other Twitter users via DM.

I filed an official complaint, and Twitter's response was this is not harassment, we won't do anything. I am pretty sure because of my political views the Twitter support representative decided they didn't like me. The hypocrisy, bias, and subjective filtering is rampant in silicon valley. It also unfortunately is a thing here on HN as well. To this day I still get downvoted not for the content of my comments, but because solely people "recognize" me.

<comment><USER4> There was a series of articles a few years ago about closet GOP supporters in the tech industry fearing being "outed" for the damage it would cause to their careers. In your experience do you feel that this concern is justified?

(I think there was at least one startup CEO who declared that if he found out that anyone at his company had voted for Trump, that he would fire him/her)

<comment><USER3> Absolutely. I've been lucky enough to be self-employed for a bit, but if you walk into any bay area startup nearly everybody will be a vitriol against Trump and conservatives very publicly. It is not even subtle. I'm the kind of person who actually enjoys a debate, and my lack of PC offends some. If I were an employee, probably would be problematic.

<comment><USER5> Reason is that the political debate is no longer right vs left in the US. Trump and his posse have proven to be compulsive liars.

[https://www.nytimes.com/interactive/2017/06/23/opinion/trump...](https://www.nytimes.com/interactive/2017/06/23/opinion/trumps- lies.html)

This means there is little left to debate.

<comment><USER4> ? The "appropriate" size and role of the federal government is still a very worthwhile and earnest point of debate, and that is a classic left/right issue.

<comment><USER6> Sorry but nobody is for small government. Nobody is for a balanced budget. It is a farce.

We all have two piles: a. Things we want the government to do b. Things we don't

If you're for a balanced budget, you'll oppose current tax cut plans and demand government cut spending. The problem is of course where do we cut spending? Find me a dollar of "waste" and I'll show you someone who benefits from it. Can we please stop pretending?

<comment><USER7> > Find me a dollar of "waste" and I'll show you someone who benefits from it.

I expect others who've also worked on Government projects would find that as preposterous as I do.

</comment></comment></comment></comment></comment></comment></comment></comment><comment><USER8> In addition to creating what is likely to be an epic shitstorm for Twitter ops/sec/PR employees and leadership, the net result of this will just be further fuel for those who see tech giants as censors of political speech, as well as embolden those who wish to further regulate these companies. A pretty stupid move if you ask me.

</comment><comment><USER9> So any customer support employee has the right to disable accounts without any checks? That would be worrisome.

For context, I used to work for Google's Search Quality Evaluation team, which was in charge of removing spam from search results. No junior user could remove anything without several other people approving it, and senior colleagues were extremely diligent and meticulous. It would have been unthinkable for anybody to remove a website for personal reasons (as in this case), as seems to be the case here.

</comment><comment><USER10> Well, it turns out twitter isn't a good way for president of the united states to communicate with the world. Who would have thought :)

</comment><comment><USER11> It is odd that Twitter doesn't have protected accounts that can't be accessed by customer support without supervisor approval, to prevent this kind of thing from happening.

</comment><comment><USER12> The real funny thing is that this will clog up the news cycle for the next 36 hours or so, unless more than a dozen people die all at once or something.

People actually care about this. Holy cow.

</comment><comment><USER13> Quick question: did the unnamed Twitter employee violate the Computer Fraud and Abuse Act?

<comment><USER14> I doubt it, insofar as employees of Twitter are expected to have authority and access to these tools. That isn't to say that they didn't violate the employee code of conduct.

</comment></comment><comment><USER15> I am surprised at how many cynical people think that asking for Trump to be removed from Twitter has anything to do with censorship or violation of first amendment rights.

Twitter is a private business and its content is controlled by the company itself. If Twitter comes to the point when they would delete Trump's account, that would be the equivalent of kicking him out of your house. It is your house, your rules.

Right wingers tend to conveniently bend the borderline between public and private whenever it benefits them.

<comment><USER16> > It is your house, your rules.

Spot on. The first amendment prohibits _government_ from limiting speech. It does not require private parties to allow arbitrary speech, let alone to broadcast it. One could argue that social media should be regulated as public utilities, subject to rules (but still not first amendment) about what speech must or must not be allowed. I happen to disagree, but even if I agreed it hasn't happened yet and even if it happened it would still be commerce clause rather than first amendment.

> Right wingers tend to conveniently bend the borderline between public and > private whenever it benefits them.

So much this. Conservatives and libertarians _constantly_ complain about environmental or financial regulation, but when it comes to "too big to fail" bailouts or stealing taxpayer money to provide free infrastructure (of all kinds) for big business they're mostly silent. Sure, there are always a few who speak up, but "not all libertarians" in economics is a lot like "not all men" in gender relations. It's an excuse, a mere fig leaf of concern that doesn't really conceal a generally neo-feudalist agenda.

P.S. I see some of the snowflakes are taking advantage of the "censorship" options here on HN to downvote, thus essentially proving my point.

</comment></comment><comment><USER17> Twitter will soon be subjected to regulations that mandate transparency to their decisions, data, and algos.

</comment><comment><USER18> $10 of my personal cash to the next Twitter employee to deactivate Trump's account.

<comment><USER19> Now that's FU money, because they'll need it. "Great resume. So, you were at Twitter. And you got fired for what exactly...?

<comment><USER20> He/she was not fired for fucking up the trump's account. It was his/her last day in twitter.

<comment><USER21> This is the sort of thing that can change that. Any holiday pay or extras that may have been owed to this employee might disappear, they could also have been fired immediately if twitter wanted to send a message and acted fast enough.

<comment><USER22> No matter how much they might be angry about it, they're not going to withhold money they legally owe to the employee. And besides, the check has already been printed at that point, and may have already been in the employee's hands, since many places legally require any back pay or unused vacation to be paid out on the final day and no later. Employers who try to screw with that typically only do so because they don't have lawyers or HR departments, and quickly learn why those are useful things for an employer to have.

</comment></comment></comment></comment></comment><comment><USER23> I frequently come across tweets by neo-nazis promoting their hateful ideas. We can't let this go on in the name of free speech.

<comment><USER24> We might have to. Fringe groups like neo-nazis thrive on suppression. Censoring them may serve to validate their narrative of fighting for a cause despite oppression. It also shows them people are taking them seriously.

<comment><USER25> Censorship, and especially from a private company, doesn't sound like the solution. If they are breaking some law bring them to justice. It's not Twitter's job to decide who gets to say what, is it?</comment></comment></comment>


Show HN: Backgroundifier, a Mac app that converts art into desktop backgrounds - <AUTHOR> http://backgroundifier.archagon.net <comment><AUTHOR> Blog post: [http://beta- blog.archagon.net/2015/09/29/backgroundifier/](http://beta- blog.archagon.net/2015/09/29/backgroundifier/)

Backgroundifier is a Mac OSX droplet-style app that converts image files of any size into pretty desktop backgrounds. Any image will work, but fine art and illustration looks the best. (You can see examples of the output on the app homepage.) There's a command line mode in addition to the GUI: if you go into the Backgroundifier.app bundle, you can either call into the Backgroundifier executable directly from Terminal (with the caveat that you can only save to and read from your ~/Pictures directory — sandboxing, sorry!), or alternatively extract the un-sandboxed command line utility from the Resources directory. On my laptop, I've even set up an Automator script that watches my primary pictures directory, automatically converts any new additions via shell script, and outputs the results to the directory I use for my desktop backgrounds. (I can share it if you like!)

The app costs a buck, but most of it is open source. (I decided to exclude the UI nib file from the repo, at least for the time being.) It's written in Swift 2. You can find the repo here: [https://github.com/archagon/backgroundifier- public](https://github.com/archagon/backgroundifier-public). Unfortunately, it's just a little bit out of date, but all the image conversion stuff should work fine.

I collect a lot of online art and illustration that goes into a big "inspiration" folder. Sadly, I can never find the time to sit down and look through all the images I've collected, which kind of beats the point. My desktop background always seemed like a great place to exhibit these images — OSX lets you randomly cycle through images in a directory every x minutes, and the "desktop peek" shortcut/gesture is perfect for the occasional appreciative glance — but my images were all in different aspect ratios, and neither scaling nor centering ended up looking good.

A little while ago on HN I ran into tomkinstinch's app Artful ([https://news.ycombinator.com/item?id=8723120](https://news.ycombinator.com/item?id=8723120)), which turns your desktop background into a constant stream of fine art. I loved how Artful solved the aspect ratio problem, but the fit wasn't quite right for me. For one, I wanted to convert my own custom images instead of pulling art from an online source. I also preferred to keep my Mac functioning as simply and as close to the defaults as possible. I didn't love the idea of having to keep an app open in order to change my desktop background, especially when the OS already had background cycling built-in. The idea of a more Unix-y approach to the problem really appealed to me; I wanted a simple app that would take input and produce output, which would allow me to do things like automatically convert folders and pull from custom RSS feeds if I so wished.

The time seemed right to distract myself with a side project, so I asked tomkinstinch for permission to use his idea and made it happen shortly thereafter!

<comment><USER2> > most of it is open source.

None of it is open source. From your repo:

> not licensed for reuse

Simply making the source available does not make it open source. Open source has a specific definition; to continue to use it in the manner that your project does is disingenuous.

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

[http://opensource.com/resources/what-open- source](http://opensource.com/resources/what-open-source)

This is a wonderful project though. Thanks for sharing!

<comment><AUTHOR> Sorry, I meant that that particular nib file (an AppKit UI asset) was not licensed for reuse; the rest of the code is, or will be. The nib is not included in the repo; I mention it in the description to explain why the project is missing a file, and also to ensure that people don't clone my app outright and sell it. (Not that anybody would want to do this with a small project like this, but I hope to follow this pattern with my later, bigger commercial projects.) I'm going to add a real LICENSE file in the next commit, probably new BSD, and I've edited the description to clarify this. That would still be under the purview of "open source", right?</comment></comment></comment>


Self-Protecting Projects - <AUTHOR> https://amihaiemil.com/2020/01/17/self-protecting-projects.html <comment><USER2> I find it strange that senior developers would laugh at the idea of using quality control gates in a CI/CD pipeline. I know a lot of people don't bother with these things, but most seniors I've worked with would at least aspire to (or say they aspire to) using such techniques.

But I guess that's the difference between a senior who knows lots of syntax, and a senior that that knows how to deliver quality.

<comment><USER3> Senior here, 20 years experience, started out with C++ projects where the only quality gate was the build server failing and currently working on a project where commits fail because of lint rules including things like imports being alphabetized.

IME the best approach is a "balanced" one. Let devs push their branches from local to the repo without passing tests or lint rules. (e.g. git push --no- verify). Try and keep your tests _fast_ so devs _want_ to run them locally. (Carrot, not stick). But prevent a merge request from being merged to your trunk branch until everything is green.

Personally I find "linters" horrible. They're like someone with OCD leaning over your shoulder while you code. I think VS Code actually runs a LOT slower when the linter is integrated, which can do more harm than good. How crazy is it that TypeScript can do all its advanced type checking faster than the linter?

<comment><USER4> In my experience, any project with excessive automation and such rules quickly turns into a game of "find how to pass the checks" and you spend the majority of the time fighting the bureaucracy rather than doing useful work.

<comment><USER2> If your devs don't care about the quality of code they deliver, they'll find a way to deliver whatever crap they've built - even if it takes longer to find a workaround than just write some good code.

CI/CD should not be used to force developers to do things they don't want to do, but to automate some easily repeatable tasks they would still do anyway.

</comment></comment></comment></comment><comment><USER5> Wherever I worked, these kind of checks did always more harm than good. You force a bunch of tools on your developers which they hate, only to have your whole codebase littered with "disable linter X" comments. In a good review process the developers can negotiate the conventions by themselves, which leads to acceptance among the team.

<comment><AUTHOR> In one of the teams I best worked with, payment was done per closed task. There were no salaries. Just bounties per closed tasks.

If you didn't respect the Quality Gates, your branch wouldn't be merged => you wouldn't be paid.

It was one of the best experiences in my work life so far. Clear rules, no chaos, no meetings, no negotiation. Just tasks and money :)

<comment><USER6> I can think of a few ways of how this could backfire / be gamed or abused, but all in all, seeing how everything else is just as susceptible to abuse and gaming, it still sounds awesome to me.

<comment><USER7> This sounds identical to the agency I was reading about.They pay devs for closed tasks. I.e.: a class needs to written that does x. The reward is $100.A senior dev will do it half an hour, while a junior will spend a few hours,which bases work-reward process self balancing based on experience.The owner of the shop had some very detailed blog posts on this,which attracted tons of discussions.Shame I can't recall the guy's name..

<comment><AUTHOR> I think you're talking about [https://www.yegor256.com/](https://www.yegor256.com/)

It was fun work back in the day of Teamed.io. But nowadays, with Zerocracy, it's turned a bit too strange even for my taste, after having worked about 2 years with Teamed.

<comment><USER7> Yes, that's the one! Will need to get on his blog at some point, he's got some unorthodox,yet interesting ideas.

</comment></comment></comment></comment></comment></comment><comment><USER8> Nice article - one nitpick is that I absolutely do /not/ make the checks mandatory as part of the build process. Rather there are some "opinionated" checks that are run when code is pushed for review (which can be skipped), and then strong checks run as the first step in the CI/CD pipelines. This means that the tools stay out of the way when developing and running locally, but still enforce standards where required. This leads to fewer developers disabling or @ignore-ing rules to test things locally and then forgetting to remove them.

This article also reminds me of a talk I saw from Neal Ford about architectural fitness functions: the idea being that if there is an architectural pattern that should be followed then the best place to put it is in an automated step as part of your CI/CD. I thought it was interesting to take the concept normally limited to linters and apply it to a more abstract principle

<comment><USER9> I agree. Curiously, the authors of the Go language disagree.

<comment><USER10> I think it depends on the check. Some checks are better enforced strictly in an automated fashion. Style rules are a good example: they make no performance difference, lead to bikeshedding, and are pretty much arbitrary. Other checks should be made automatically but not strictly enforced. EG you might want to require all C casts to have a comment describing why it's safe. That can be a good linter warning, and linters tend to have codes that can be added in comments to suppress the warning. So the linter warning can make code review easier, but shouldn't necessarily fail the build.

<comment><USER9> Go fails the build, when you have an unused variable.

</comment></comment></comment></comment><comment><USER11> Great, so now I have 100,000 duplicate bug reports to sort through because I forgot a null check and the logger automatically created an issue each time that error occurred (with different timestamps, causing duplicate detection to fail).

<comment><AUTHOR> The duplication Issue can be solved in many ways.

First one that comes to mind is, the Issue Tracker should have a limit on the number of tickets a certain User can open.

If the Issue Tracker doesn't have that, then the company can have a firewall rule to only allow a certain number of calls per day to the API.

I'm sure there are dozens of other possible scenarios :)

<comment><USER12> So not only do you fill the issue tracker with ten thousand duplicate issues, but now you are blind to issues numbered #10000 or higher.

</comment></comment></comment><comment><USER12> This sounds nice on the surface, good intent. But it smacks of inexperience and is the same mechanism that ends up pushing the kinds of dumb conventions that insist on golang's Trailing Comma. What is the expected outcome of your rule, and how do you expect additional, incremental bureaucracy to drive that outcome? Any time you push rules, you must expect that people will default to simply obeying the rule without questioning _why_ the rule exists in the first place. This is just a natural cost-minimizing function of human beings. As a former console operator of a decades-old mainframe, let me warn you that this is how informal "operator manuals" end up spanning many three-ring binders filled with nonsensical, sometimes contradictory trivia, and how you end up with people going through the motions like some kind of ritual whose origins are lost in the mists of time.

If you're going to do something like this, I suggest that these kinds of "code quality gateways" aren't as absolute as OP recommends. Be smart about it: You could probably measure how "sloppy" a developer is (relative to some mean of their own output and _not_ compared to the team or really anyone else). Simply bringing it to a developer's attention (programmatically) will do far more for your project's code quality than trying to dumbly enforce some list of code conventions about whitespace or whatever. Also, this is a kind of tool that should absolutely be scoped strictly on the level of the individual developer, with no possibility of having externally-visible reports generated from it, and _absolutely not_ exposed to management. You don't want to give management too many knobs to turn, _especially_ knobs like this.

</comment><comment><USER13> >Writing about this now, I got an idea: we should have some sort of plugin for Log4J or slf4J: a plugin that would automatically open tickets on Github or other trackers, when the .error(...) method is called

Great idea in theory. It will not fly in practice. If you tell to any enterprise company that your (or their) software is automatically doing this behind the scenes, the project will be shot down.

I mean, getting crash metrics is one thing, but opening automated issues from _enterprise_ software is a completely different manner.

<comment><USER14> I like the approach Visual Studio App Center (and probably others) takes of aggregating crash reports so you can easily figure out which issues are impacting the most users and prioritize.

</comment></comment><comment><USER15> Author, I'm a sucker for spelling. (edit: removed).

Good blog post. When I was programming Java, I also used Checkstyle. It's a long-running and reliable project.

<comment><AUTHOR> Thanks for the comment. I am a sucker for spelling indeed. I usually spend about 1h after publishing each post, to fix typos (I never notice them until it's published, no matter how hard I try).

<comment><USER2> I find when I write, the free [http://hemingwayapp.com](http://hemingwayapp.com) website is really useful for fixing basic spelling, punctuation and grammar errors.

<comment><AUTHOR> Thank you. I know about these apps, especially Grammarly. I just don't like the idea that all I write goes to a server somewhere :)

I also noticed Grammarly sticking its nose in places it shouldn't have. Like private repos on Github.

<comment><USER16> Why not use a local spell checker instead?

<comment><AUTHOR> The ones that IDE provide? Those are rather primitive, don't you think?

<comment><USER16> They would still catch all the incorrect spellings, they just wouldn't catch the incorrect grammar. The grammar of the post is fine, though, so that wouldn't matter too much.

You could even just copy and paste it into a word processor, if you also want to catch grammar issues.

</comment></comment></comment></comment></comment></comment></comment><comment><USER17> Weird. Everybody that I know seems to be using ESLint in some way or another, which has rules for whatever you can think of.</comment>


U.S. Mass Surveillance Has No Record of Thwarting Large Terror Attacks - <AUTHOR> https://theintercept.com/2015/11/17/u-s-mass-surveillance-has-no-record-of-thwarting-large-terror-attacks-regardless-of-snowden-leaks/ <comment><USER2> I think it's very clear to everyone not tuning into to the mass-media narrative that the true goal of all the governments and agencies involved is not "preventing the next terror threat" but a power-play for the control of information.

Not only is there no pertinent evidence to demonstrate that surveillance has ever paid off; There is much more so, _extremely pertinent_ evidence that demonstrates the past 30 years of foreign policy have directly contributed to past and current day terrorist threats: Financing the Taliban and Bin-laden to fight the soviets in the 80's, invading and destabilizing Iraq, financing Syrian rebels (in part ISIS supporters and/or sympthathizers) while destabilizing Syria, etc, etc..- Yet somehow none of this is part of the main- stream narrative and a couple months later Obama will be asking congress for more funds to fight Assad and the NSA will be asking for broader surveillance powers.

I'm very sorry for the people that have lost their family members and loved ones in the course of these things but the answer is not and cannot be "more drone strikes" and "everyone forfeit your privacy".

<comment><USER3> 30 years is a pretty short time horizon to look at. Western meddling as a driver of chaos and authoritarianism in the Middle East stretches back at least a century or two.

If Europeans hadn't drawn completely arbitrary national borders all over the region after the fall of the Ottoman Empire, if Palestine had been left to its Arab inhabitants instead of displacing them in favor of European Jews, if the British and Americans hadn't put so much emphasis on securing the Suez Canal via support for friendly dictatorships nearby, if the US hadn't toppled the Iranian democracy under Mosaddegh in 1953 to reinstall the Shah, if Western European, Russian, and American guns hadn't been handed out on all sides like candy, etc., the region would certainly be far different from now.

But it's impossible to guess exactly what the effects of some counterfactual foreign policy over the past century would be.

<comment><USER4> Arbitrary borders doesn't explain it all. Africa has just as many arbitrary borders and lots of wars and insurrection happened and continue to happen, but except for north Africa, sub-Saharan Africa doesn't suffer the same kind of chaos and terrorism except for where isil AQ, etc have operatives. So, Africa seems to indicate that terrorism requires a foreign religious aspect in order to take root.

<comment><USER5> Arbitrary borders + tribal politics describes pretty much all of it. I mean, we talk about Syria, Afghanistan and Iraq like they are countries, but they're really more like negative space.

Africa absolutely suffers the same kind of chaos and terrorism -- we just don't hear about it because it's less densely populated and the people there have darker skin. But Boko Haram is still a huge problem in Nigeria and Islamic fundamentalism in Somalia is a way bigger problem than you would think given the total lack of news coverage (the US launches almost as many drone strikes on eastern Africa as it does in the middle east).

Much of sub-saharan Africa is still under de-facto apartheid. Wealthy (often white) land owners are in bed with corrupt government officials who, while black, are more than happy to continue the status quo as long as they get paid. It's very hard to have a cohesive ideology behind your insurgency when there are for-profit death squads operating in the area. But you're right; there is also no great unifying force for the people in the area like there is in the middle east and north Africa.

<comment><USER4> Bokoharam and alshahab are extensions of the problems in north Africa, they are not indigenous to subsaharan Africa. You don't see the dame problems in Mozambique or Angola or Botswana. These places have had their problems but they don't export them and don't fancy taking the rest of the world down with them.

</comment></comment></comment></comment></comment><comment><USER6> That is because "Preventing terrorist attacks" is used only to SELL the program to the populace. Its real goal is to make it so that the status-quo is not disturbed.

These programs will be used and are being used to monitor and arrest domestic radicals, support foreign espionage for American economic interests, etc much more than any terrorist prevention:

In order of priority:

1) Target "Occupy wallstreet", G20 protests, Greenpeace etc

2) Target foreign govts & corporations for economic gain

3) Target Radicals in foreign countries that oppose US interests (some of these could very well be terrorists also)

4) Actual terrorists

So if we keep using the wrong metric to measure success then obviously "Mass surveillance" has failed.

The Director of the CIA wasted no time blaming Snowden for the Paris attacks [1] - dismissing all concerns as "hand-wringing". I am now waiting for the "Our current spying is not enough, we need even more spying powers" congress actions to surface. Cynically exploiting the fear and concern after an attack is the real game here - the "efficacy" of the measures proposed is irrelevant, as no one will be able to hold them accountable.

[1] - [http://www.nytimes.com/2015/11/17/us/after-paris-attacks- cia...](http://www.nytimes.com/2015/11/17/us/after-paris-attacks-cia-director- rekindles-debate-over-surveillance.html)

<comment><USER7> In Wake of Paris, FCC Seeks Power to Monitor, Shutter Websites

"Citing possible links between terror-related websites and online communications and Friday's attacks on Paris, FCC Chairman Tom Wheeler suggested Tuesday Congress give the agency more authority to use 'big data' to monitor and act on potential threats."

[http://www.insidesources.com/in-wake-of-paris-fcc-seeks- powe...](http://www.insidesources.com/in-wake-of-paris-fcc-seeks-power-to- monitor-shutter-websites/)

This will be pushed into the narrative & they will have their way.

</comment></comment><comment><USER8> I don't like surveillance, but at the same time, I wonder: How much of this lack of record can be attributed to parallel construction, where law enforcement uses the surveillance results to "luckily" know where to look, and "by chance" figure out how to foil the terrorists?

I can imagine that the intelligence agencies may not be thrilled about broadcasting their capabilities.

My nightmare scenario is that surveillance actually is helping, but the extent is a closely guarded secret, which means that we'll never get rid of it, and we'll never know why, or have a chance to, as a society, have a conversation about the tradeoff between surveillance and counterterrorism.

</comment><comment><USER9> What the article left out..

Guess what the limiting factor of effective surveillance of Islamic terrorists is?

And I state that the CIA and NSA have known this since the early 1970s...

Ready? Its the amount of trained foreign language people that the CIA, NSA, and FBI have that happen to be skilled in largely Arabic based languages.

Now for the wrinkle how do we get those numbers increased?

Guess? The exact opposite of what republican law makers want to do that is have a fully functioning immigration system.

NSA could tomorrow sweep all communication world-wide but without concrete steps to increase foreign language people to translate any of it is such a HUGE BONDOGGLE that defies description..

<comment><USER10> That is part of a far bigger problem than just requiring a large bilingual workforce:

[http://as2914.net/](http://as2914.net/) (map of BGP networks)

^ comparing this to finding needles in haystacks is a a severe understatement.

The scale of internet is mind-boggling. The amount of data flowing through it is massive. Considering most of that which is relevant is wrapped in HTTPS and even the best financed SIGINT agency will have a tough time doing mass surveillance dragnet with any cost-effective results.

Add foreign languages into the mix and it's even more expensive.

</comment></comment><comment><USER11> Not to defend mass surveillance, but why would there be any public record of this? Wouldn't you expect most major thwarted attacks to be kept classified?

<comment><USER12> If they had, they would be very tempted to publicize it as that would get them a bigger budget next year.

<comment><USER13> Revealing what they stopped would also possibly reveal the methods used to stop it. And they're not exactly hurting in the budget department.

</comment></comment></comment><comment><USER14> Can anything twart "Large Terror Attacks"? Is there really a socioeconomical measure that can twart a determined attacker?

<comment><USER15> A phrase, "Show me a 10ft tall fence and I'll show you an 11ft tall ladder." comes to mind.

There will always be a cat and mouse game, it seems the trick is to not play the game in the first place.

<comment><USER16> No, the trick is to play the game, not perfectly, but well enough that the other side decides not to play. If you don't play and they do...

<comment><USER15> Why give them a reason to play? "An eye for an eye and a tooth for a tooth makes us all blind and toothless." also then comes to mind.

<comment><USER17> I don't know the right answer as to how to defend against terrorism, etc. But this argument makes no sense. "They" (whoever they are) don't need a reason to play, they already have one. Choosing "not to play" is just allowing whoever they are to do whatever they want.

</comment></comment></comment></comment></comment><comment><USER18> (I'm going to repeat a comment that got buried in another discussion:)

The government and businesses have built a state of surveillance far beyond anything dreamt of a couple of decades ago, with massive continuing investment.

Yet the tool of surveillance was unable to stop this attack. Now they want more surveillance, but maybe it's the wrong tool for this job.

Surveillance seems to have reached that place on the technology adoption curve where people get a little over-enthusiastic and blindly think it solves every problem, and they haven't yet realized it's a tool which, like all tools, is good for for things but not for others.

(That ignores the massive cost to individuals and to our societies of surveillance.)

</comment><comment><USER19> And, reminder, France authorized a sweeping mass surveillance bill back in May. It, too, doesn't seem to have stopped anything.

<comment><USER13> If a government passes something, it doesn't just magically become fully operational, regardless of what type of program it is. It takes a little more than a couple months.

<comment><USER7> you know what's a coincidence though: [http://www.bloomberg.com/news/articles/2015-11-17/hours- befo...](http://www.bloomberg.com/news/articles/2015-11-17/hours-before-the- terror-attacks-paris-practiced-for-a-mass-shooting)

drills as mass attacks are happening - be it 9/11 , Sandy Hook, London Bombing or others

\+ factor in: [http://www.theguardian.com/world/2015/nov/17/serbian- police-...](http://www.theguardian.com/world/2015/nov/17/serbian-police- arrest-man-with-syrian-passport-matching-paris-attackers)

The passport of a "suicide bomber" escaped the bomb blast and landed into the hands of autorities (conviniently) -- but now Serbian police have proven it to be a fraudulent passport...so how did it get there?

</comment></comment></comment><comment><USER20> What large terror attacks have hit the USA since mass surveillance began?

<comment><USER21> Compare to: what large tigers have attacked me since mass surveillance began?

<comment><USER13> There's a mass surveillance program intended to stop tigers from attacking you?

<comment><USER21> Systems designed to prevent black swan events need to be evaluated against a higher standard than "there haven't been any since we started". That's not success, it's exactly what we would have expected anyways.

<comment><USER13> We would have expected no large scale terrorist attacks in the US from 2001 until now? Absolutely no one expected that.

Is it a black swan event if it was attempted 8 years earlier (WTC 1993, 6 dead, 1000 injured)?

</comment></comment></comment></comment></comment><comment><USER22> Like most of you, I think mass surveillance is a fairly big problem.

Even so, how do we KNOW that there haven't been any major terrorist attacks thwarted? If I were the government, I would keep my thwarting as secret as possible (up until the point where the public turns against me enough to start trying to shut me down).

</comment><comment><USER23> How can you show this?

<comment><USER13> They can't. They seem to be claiming to have proved a negative.

</comment></comment><comment><USER24> "the reason there haven't been any large-scale terror attacks by ISIS in the U.S. is not because they were averted by the intelligence community, but because — with the possible exception of one that was foiled by local police — none were actually planned."

So what would happen if more attacks were planned? (Brilliant habit, reading HN right before going to bed.)

</comment><comment><USER25> Perfect. Timing.

This is the article that should also be on the front on the NYT and Washington Post, the Times and the Independent.

Every major newspaper should be fulfilling its fourth estate responsibilities.</comment>


Golang UK Conference Schedule - <AUTHOR> http://www.golanguk.com/schedule/

<comment><USER2> The British Gopher is simply cute!

</comment><comment><USER3> Matt Heath should totally be on the main track.

</comment><comment><USER4> Cool! Will signup, btw:

Anyone knows a source of information about next conferences around UK / London for technology?

<comment><USER5> For Go (the meetup), we will always create the events here: [http://www.meetup.com/Go-London-User-Group/](http://www.meetup.com/Go-London- User-Group/)

For the conferences... you can expect a Golang conf next year :) But I don't really see any centralised place. I usually keep up to date about them with my twitter feed.</comment></comment>


Zuckerberg, Will.i.Am and Chris Bosh Star in Infomercial About Learning to Code - <AUTHOR> http://betabeat.com/2013/02/mark-zuckerberg-jack-dorsey-will-i-am-chris-bosh-code-org/

<comment><USER2> More discussion here: <http://news.ycombinator.com/item?id=5285627>

</comment><comment><USER3> Learn how to code... so you can be Zuckerberg's slave and help him make his next billion :P

And Chris Bosh... I don't think the Miami Heat want you to abuse your hands and get carpel tunnel syndrome from coding.

</comment><comment><USER4> I wish someone would create a promotional video like this for entrepreneurship. Entrepreneurs are the heroes with real super powers, and we need more of them.

<comment><USER5> Agreed. Entrepreneurship isn't (well, can't be) taught in schools.

</comment></comment><comment><USER6> What, no Gates or Dorsey?

<comment><USER7> Gates and Dorsey are in the full version.

<comment><USER6> I figured this was just Betabeat's slightly-altered headline to differentiate from the earlier story on this topic.

<comment><USER7> Sorry, missed the sarcasm.</comment></comment></comment></comment>


django-yarr – open source self-hosted Django RSS Reader - <AUTHOR> https://github.com/radiac/django-yarr

<comment><USER2> Also:

\- [https://bitbucket.org/tghw/django- feedreader](https://bitbucket.org/tghw/django-feedreader)

\- [https://github.com/ahernp/django- feedreader](https://github.com/ahernp/django-feedreader)

Now I need some time to test them all and pick one as my private self-hosted feed reader.

<comment><AUTHOR> Author of django-yarr here; I'd also found the feedreader on bitbucket, as well as [http://code.google.com/p/django- reader/](http://code.google.com/p/django-reader/) \- I wanted to go in a slightly different direction, and neither of them had had much activity recently.

I'd be interested to hear if you have any feedback for yarr - I'll be working on it this week to try to add in the main missing features (managing feeds, timezone stuff etc), and if people think it's missing an important feature I'll do my best to add it.

<comment><USER2> If I try django-yarr I'll give you feedback (GitHub issues). I didn't feel like starting one of these myself, but I can use/contribute to an existing project.

Thanks for sharing!

</comment></comment></comment><comment><USER3> Do the keyboard controls not work in the example or are they not the same as Google Reader? Was trying to use j/k to switch between articles.

I quite like your design by the way. No wasted space showing a list of subscriptions, no social crap, and ~99% of the page dedicated to showing the actual content of your subscriptions instead of flashy UI.

<comment><AUTHOR> I had only implemented n/p so far because that's all I used, but I've added j/k now. I'm aiming to match Google Reader's core functionality (except the social side), so I've made a note of its keyboard shortcuts, and will add more over time or as they're requested.

Thanks for your comments regarding the design! I'm going to try to keep it as minimal as possible mostly because that's how I like it, but also so that it can be drop into existing site designs without too much hassle.

<comment><USER3> The j/k shortcuts work great now, thanks!

Only other comment I have regarding styling is there doesn't seem to be any highlighting of read vs unread items like Google Reader which shows the title of unread items in blue and read titles in black.

</comment></comment></comment><comment><USER4> Also the name of JavaScriptCore's regular expression implementation, as Yet Another Regexp Runtime: [http://trac.webkit.org/browser/trunk/Source/JavaScriptCore/y...](http://trac.webkit.org/browser/trunk/Source/JavaScriptCore/yarr)

<comment><AUTHOR> Thanks for pointing that out - I'd noticed a few clashes after I'd started developing it, so its full name is django-yarr; I've changed the title to avoid any confusion.

</comment></comment><comment><USER5> Newsblur is also written in Django - [https://github.com/samuelclay/NewsBlur](https://github.com/samuelclay/NewsBlur)</comment>


Show HN: Find unused Swift code - <AUTHOR> https://peripheryapp.com <comment><USER2> We offer something similar to Peripheryapp, we give app improvement service. Possible to phone chat to discuss working together?</comment>


UML in Practice - <AUTHOR> http://www.neverworkintheory.org/?p=542 <comment><USER2> Is the formalism of UML actually useful?

I don't think I've ever done a collaborative software project without scribbling some boxes representing system components on a piece of paper. Sequence diagrams are also quite useful (instead of showing who has a reference to whom, you're showing flow of control).

But, once the understanding has been passed on, the documents get scrunched up and chucked in the bin. No-one worries about representing the minutae of inheritance on them. I certainly don't see the point of showing them to a customer.

<comment><USER3> I'm with you on the proper lifetime of diagrams. They should be preserved only until someone else needs the whiteboard.

Even so, I happily took a little time years ago to learn UML basics, because I needed _some_ notation for my whiteboard sketching, and having a common one seemed better than just everybody making up their own. (Even given that the one that _I_ made up would of course be superior.)

I've never regretted it. It's sort of like blueprint symbols. I never do more than sketch out a couple of rooms. But I'd still rather use the standard symbol for a door or a window or a toilet then to screw around coming up with my own, and then hope others can figure it out.

If anybody wants a quick UML intro, I strongly recommend Martin Fowler's book: <[http://martinfowler.com/books/uml.html>](http://martinfowler.com/books/uml.html>).

</comment></comment><comment><USER4> In practice, and I mean at mega-corps with government contracts that require UML diagrams for everything I've seen this as a common pattern:

1) An EA is hired who gins up a stack of UML diagrams which are sent for review and acceptance by the customer.

2) The system is then actually designed and built regardless of (and often despite) the accepted UML diagrams.

3) The built system is then documented in a new stack of UML diagrams by the EA which are then delivered to the customer as if the first stack didn't exist.

The problem in the industry with UML is not #3, UML can be a great way of describing a complex system, the problem is #1, UML is a terrible way at blueprinting how a working system will look like in the end.

<comment><USER5> UML is just a notation. It is great for blueprinting software (except that graphics create problems, and UML is graphical), it makes no difference if they exist or not.

The problem is that people are terrible for blueprinting sotfware that does not yet exist. Whatever notation you choose, the problem will still be there.

<comment><USER4> > The problem is that people are terrible for blueprinting sotfware that does > not yet exist.

I agree, in addition the people who usually are doing the blueprinting usually don't really know much about the nuts and bolts of actually building software (or haven't built any in a very long time).

</comment></comment></comment><comment><USER6> In school, UML seemed like a great idea. It wasn't very fun, but it was useful, and if you had a simple class project, UMLs certainly made things simpler if you were even okay at them.

When I got my first job, however, there were no UML diagrams. I was saddened to see this. I don't remember if I was surprised, but I was so sure that I would been useful to have a detailed UMI diagram available for studying the codebase.

So, as I got acclimated to the codebase, I took it upon myself to start putting together a UML for our existing product, so that training new people would be easier. After spending several days doing this, my opinion or UML changed dramatically for a couple of reasons:

1) Pretty much all of the UML tools out there are not a pleasure to use. Drawing UML diagrams was still infinitely better than using the various programs I tried. But drawing them on anything but a whiteboard wasn't scalable to the size of the project.

2) Once I had the basic classes drawn out, and realized how diverse the kinds of classes we had were, it became apparent that this just wasn't going to happen. A basic flowchart of the application would be equally valuable. The specificity of UML wasn't worthwhile, having a class with 10+ subclasses was a mess.

3) What I did have was hard to see. This goes back to the first point--the tools are not good. When you labored over all the clicking and dragging, you pulled together this monster of a graph that you can only see a small portion of at a time in a given screen. It was easy to get lost. Printing wasn't useful.

Ultimately, I only ended up using UMLs when we were thinking about how we were going to build out new features, or redesign stuff. It was a .NET shop building a Silverlight app, so serialization and strict static typing was critical. A decent JSON api would have made life easy, but since the back end and the front end were essentially all the same thing, class diagrams were very useful. So for the 2 or 3 times that we had to develop or redo class serialization while I was there, it came in handy only for working on small 2-5 class models.

That brings us to the next point: do class diagrams have a place in an increasingly dynamically typed world? Functional programming in javascript. Frameworks that have their own detailed class system, or which aren't even class oriented.

UML has essentially become analogous to cursive. You learn about it early on, and its important to have a notion of how to read it. But ultimately, since we don't use it every day, we basically never use it.

<comment><USER7> Have you tried Umlet [http://www.umlet.com/](http://www.umlet.com/) ?

<comment><USER6> Thats actually what I had settled on using, and I think its a fine tool. But even umlet doesn't make writing and viewing large UML diagrams...pleasurable? In the sense that we have tools like vim, word, excel, and chrome that are very polished and allow you to get to work quickly and accurately. Even with umlet, i find myself worrying about the interface too much.

I suspect its more of a problem with the fundamental design of UML though. I think if there was like, a UML-lite spec or something. To me, i feel like UML is to what I want to use as XML is to JSON (or csv for that matter), if that makes any sense.

</comment></comment></comment><comment><USER8> I've never found UML useful for diagraming an entire application. However, I don't know if this is a fault in UML or a problem with the application architecture. Applications tend to get large and disjointed. They solve multiple problem sets and consist of several different layers. When we try to take a complex system and put it into a UML diagram things get really hairy fast.

UML is more useful when it is used for diagramming the components of systems. This practice also promotes the practice of identifying and decoupling system components. When complex problems or unfamiliar patterns emerge, UML is indispensable.

Still the biggest issues I've observed with UML adoption are: 1) A lack of tools developers want to use. 2) As developers become familiar with the codebase (you know, by writing it...) they begin to think it's self explanatory tedious documentation efforts like UML are unnecessary.

</comment><comment><USER9> Ten years ago I spent a semester essentially learning UML and it's components. We got a lot of practice designing classes and using the CASE tools to generate code from them.

Since I graduated I've only ever run into a shop that uses UML once. They paid for Enterprise Architect and I was impressed at how useful the idea of UML is for documenting and architecting software.

I feel the big trend has moved towards spending effort around requirements definition and clarification thanks to Agile. By the time that's done it feels to me that creating UML artifacts is doing double-work when you could be coding instead. There's also inconsistent tooling and its associated monetary expenses.

</comment><comment><USER10> UML slices code oddly.

You can't fit a big system on a piece of paper. So, let's say you have a big graphics system. One of your base classes is Widget. It is almost certainly worthless to show every class that derives from Widget on one page, even if you could. What you are really interested in is how subsystem interact when in various states. For example, you might have a map window that uses a small collection of items derived from Widget, some strategy pattern type things (to project to Mercator or whatever), and so on. The only useful graphic is a sheet that shows how all of these components interact. But, maps are complex, so you are probably pulling in and using 100+ classes. Most of which are not relevant. So it takes a human, and a lot of thought, to figure out how to slice through the code to produce a useful UML diagram for the area of interest.

And then the diagrams are static. You have a bunch of other stacks of paper to try to show how things happen in time. Typically there are several scenerios - each scenerio is going to involve a different subset of classes.

Its combinatorial explosion. No one can do this. Its far more work than writing and debugging the code itself. The code IS the documentation, for better and worse (and yes, sometimes it's worse).

So, like most people, I do whiteboard sketches of high level design. If I am particularly pressed, I'll sit down with pen and paper, sketch 2-4 competing UML diagrams, then hand write in different transactions/events - showing how data flows, and so on.

But capturing an entire source tree? Impossible, unless you just want the spaghetti diagrams that are not displayable on any monitor, and that are completely useless at telling a story.

<comment><USER11> I agree, the whole picture obscures the whole picture.

But having the whole picture without looking at it is useful. In doxygen, for example, you can capture an entire source tree, but then only zoom in to areas that you're interested in. You get the flexibility of seeing any portion of the whole that helps you understand.

Generating something like that before code, though, is a waste of time. Unless it's a government contract, and then it's profit.

</comment></comment><comment><USER12> I work on corporate level custom webapps. The main two areas where you have to be careful to design things correctly and to be able to convey your ideas to end users (in clear, unambiguous terms) are - in my experience, at least:

\- Database design

\- (Web) Interface design

Oddly enough, UML provides zero support for either. So it's always DBA stuff on one side and mockups/wireframing/prototype on the other. Especially to discuss user-front things (i.e. how the application will look and how you will work with it) UML is completely useless.

These are our primary concerns, and UML does not help at all. Use cases are too abstract, and the rest is of little value for the users.

So despite my attempts at learning it, I was never able to get any real value out of it.

<comment><USER12> Also, have a look at this to better explain my problems in using UML for practical purposes: [https://files.ifi.uzh.ch/rerg/amadeus/publications/papers/IW...](https://files.ifi.uzh.ch/rerg/amadeus/publications/papers/IWSSD-10.pdf)

</comment></comment><comment><USER13> I spoke at Code Generation 2010 in Cambridge about 'roll your own' code generation solutions and some examples of how I'd used them to reform an existing software development process.

While most people there were UML junkies, and the UML designing 'Object Group' were also in attendance, I still used the phrase _UML hell_ during my talk which garnered significant cheers from the audience.

My conclusion was that there are often all sorts of useful, formal models just lying around and UML isn't necessarily the best thing to rely upon. Three useful and IMHO often overlooked examples of 'free' formal models are: software dependency trees in package managers, directory structures, and database definitions.

</comment><comment><USER14> Trends come and go. Even the strongest software engineering trends seem to last about 10 years.

More than 10 years ago, I worked on a tool called ArgoUML. Years later, check out what I was surprised to find on YouTube: [http://www.youtube.com/results?search_query=argouml](http://www.youtube.com/results?search_query=argouml)

Tons of fairly recent videos of how to use ArgoUML. Mostly in Spanish, Portuguese, or Vietnamese.

</comment><comment><USER15> Graphical modelling is an incredibly powerful tool, and it saddens me that UML is not valued more by hackers. I suspect one of the reasons it's not used, is that people simply don't need it most of the time. When I started in software I was apathetic about UML, in fact I thought the whole thing was a bit silly. I used the occasional class diagram to communicate an idea, but I could never see the point of modelling. Most of the time I know what needs coding and have a good intuition for how to implement it; but with experience, that has changed.

Only twice in my life have I had anything close to a religious epiphany: 1) the first time I tried psychedelics, and 2) the time I finally 'got' UML: I was faced with an enormously complex software project that was far beyond my level of experience and skill set, and I didn't have the faintest clue where to start... it was the sort of project that makes you feel slightly terrified and incompetent. After several false starts, I realised I needed to try a different approach, so out of desperation I dug up an old college textbook on systems analysis and tried to design the entire system on paper away from the computer. I started with a use case diagram, then numerous class diagrams, then sequence diagrams, then activity diagrams. In a matter of hours, I'd nailed the ENTIRE project, without straining my brain the slightest. I was ecstatic! It felt like I'd just acquired a superhuman power or a secret black art -- I'd transcended the capabilities of mere mortals, into the realm of gods! In that moment, I saw the essence of UML, and it was power! As nerdy as it sounds, it was certainly one of the most profound and memorable experience I've had -- taking something I knew moderately well (UML), and seeing an aspect of it that I could never have anticipated, and using it to solve a problem that was completely beyond me.

Saying all that, I should qualify that I'm not a UML fundamentalist, nor do I think everything should be modelled. People often criticise over-abstraction and "architecture astronauts", and rightfully so. There is an inherent danger to modelling, but if you're an experienced coder (and more importantly the person who's going to be implementing the designs, so as to stay grounded and realistic) then there's immense power in abstracting away the code and the limitations that come with "thinking in code". Under the right conditions, modelling enables you to see the essence of the problem and derive a well- structured solution. That, at least, is my opinion.

...and on the topic of Agile doing away with the need for modelling: the whole point of modelling is to enable fast iterations. It's amazing how fast ideas can develop with just a whiteboard and some thinking space. Why waste time coding?

<comment><USER15> I should also add that I think a lot of the criticisms of UML itself are fair.

I'm talking exclusively about using it as a problem solving tool before the implementation stage. I do wish there were better alternatives for graphically tracking and documenting large code-bases... or even generating UML diagrams for that matter.

<comment><USER4> One of the problems is that there's an awful lot in the way of "Architecture Astronauts" who sit down for a few days and build (in UML) a brilliant and complex system design that has no grounding in reality.

I remember vaguely one argument with an EA who had built a very nice looking system blueprint in UML, who didn't understand that several of the ways various components needed to interact either required very large amounts of computing power or an algorithm that didn't exist. "But I carefully looked at that in the sequence diagrams here and here!"

In the usual best case, when the implementation starts to diverge away from the UML (as it usually does), it becomes nightmarish to keep the UML synched to the codebase. It's usually just easier to wait for the code to freeze, then go in and document what's there...which of course is not really the point of UML.

</comment></comment></comment><comment><USER16> The idea of UML makes sense - why not have a common graphical language for the things programmers want to describe to each other all the time?

Sometimes I think the implementation is just wrong - because programmers are obviously voting with their fit.

A modern replacement for UML, anyone ;-) ?

<comment><USER17> Someone in the thread above suggested the same. This needs doing.

</comment></comment><comment><USER18> I use the hosted version of websequencediagrams.com for sequence diagrams and that works out very well. I know that sequence diagrams are a very small part of UML but I find that they have an extraordinary effect on clarifying a system's design without too much effort.

</comment><comment><USER19> Actually, I really like UML; I especially like swimlanes. Of course it doesn't make sense for every design but I find that 12 months later, a map to what I was thinking during the original design is invaluable.

</comment><comment><USER20> was hoping for an article on user mode linux

<comment><USER21> That UML is used about as often these days as UML notation, given the availability of virtualization solutions like KVM. Its time has come and gone.

</comment></comment><comment><USER22> How do you document a web application?</comment>


Twitter is going to die - <AUTHOR> http://www.ideasonideas.com/2008/12/twitter-is-going-to-die/

<comment><USER2> Twitter isn't going to die. The argument that Twitter is like high school is valid. What's not valid is saying that high school doesn't matter or isn't how the world works.

Twitter is like high school because the real world is like high school. Web 2.0 is DEFINITELY like high school. Even if we wish it weren't so.

<comment><USER3> _the real world is like high school_

I'm interested to hear your argument on this, mostly because I've found the real world to be nothing like high school. When it comes to "Web 2.0" startups right now, sure, today's "hotness" might be nothing tomorrow, but the companies that rely on sheer high school-like popularity will fail sooner or later, just like those types of people eventually failed following high school.

In cases of direct correlation, I at least see it working both ways. Yes, there will be edge cases; certain people seem to be able to make a living online without actually providing anything of real worth, but this is hardly confined to the Web; tabloids have been doing it for decades.

<comment><USER2> Popularity matters, self-promotion matters, etc. It matters a ton. That's how distribution happens. As a startup, that's the most important thing out there. We get stuck in 'if you build it they will come' mode when we build our startups, but it's just not true.

Spend a few minutes looking at quantcast/compete/alexa's top 1000 and it's clear that the web is high school. From my high horse, it's filled with non- enjoyable, valueless, spammy, low-brow cruft. But my high horse doesn't mean a damn -- the only thing that matters is $$$ =)

</comment></comment></comment><comment><USER4> "Twitter is high-school"

Author needs to open their minds just a little more and they'll realize.

"Practically all social networking sites/things is high-school."

</comment><comment><USER5> Because publicly predicting the deaths of things (Perl, Python, Facebook, MySpace, digg, reddit, Apple) based on one or two people's opinions _always_ works out.

</comment><comment><USER6> Interesting how the author completely dodged around twitters lack of revenue problem. As of right now, twitter is having no trouble keeping afloat and will possibly have a revenue model in a couple years. When twitter makes money it won't "die" for quite some time, if twitter fails to make money, it will carry along like it always has, propelled by its first mover status and the hype it's created throughout all the years. I say this while setting the "its like high school" and "everyone just collects followers" arguments aside. Those seem to be hyperbole reasons to justify an argument that has no tangible bearing on twitters actual situation and status as a company and as a service.

<comment><USER7> Or - this is just a thought here - he just doesn't care?

Is he responsible for ensuring Twitter has a financial future? No. Are you? No.

He's more interested in the social interaction aspect of the site, if he _wanted_ to talk about revenue I'm sure he would have.

<comment><USER6> I doubt it, given how weak his argument that twitter is going to die based on perceived reasons like "its like high school" and "people just collect followers" make me wonder if this guy really knows what he's talking about or is he just going for a shock title. I just think if we're writing articles called "twitter is going to die" and giving reasons to support that based on the social interaction aspects of the site (like you stated), then better reasons should be stated. Contrary to his argument, i'm sure twitter is not like "high school" to millions of users, and people are not just "making" or "collecting" friends but rather tapping into their interests and networks to stay updated on things in real time. I've seen similar arguments made for myspace, but twitter is a fundamentally different type of social site, so the "collecting followers" argument dosn't hold up as well here.

<comment><AUTHOR> I rarely know what I'm talking about. Thanks for the insights. ;-)

</comment></comment></comment></comment><comment><USER8> _So, it doesn't matter that someone says really interesting things, it just matters that you're friends with the prom-queen._

Noo.... what matters on Twitter is that the prom-queen is friends with _you_.

</comment><comment><USER9> I don't know. The people I follow on Twitter don't seem to use it in the "high school" way, and neither do I - I don't automatically follow someone just because they follow me. I might, if they're saying interesting or fun stuff; I'm not saying I only tweet nuggets of wisdom myself, but I do aim for some degree of quality.

I don't follow "influencial" people for the sake of it, I have my doubts that really helps. On the other hand, I've met some really cool people and also clients through it, which helped a lot, especially as I moved to Vienna knowing virtually nobody.

I have however found that I do need to keep my follow list in check, or the stream of information is overwhelming.

</comment><comment><USER10> Sounds more like a maturity problem, probably reminiscent of what email had decades ago.

I'd love some client-side filtering & prioritization of my twitter data. While it doesn't have the same archival needs of email, I definitely care more about my infrequently-twitting friends than the dozens of them coming off the more famous tweeters.

As for high school, that's what you get when any social system starts to stagnate.

</comment><comment><USER11> Checkout stocktwits.com . I use the application regularly and have nothing but good things about the app.

</comment><comment><USER12> Yaw, software VC is reeling a bit... But do you honestly think that the investors that Twitter has won't throw a few million at it to keep it running given that it's growth curve is so outstanding? Dead in 6 months is a near- ridiculous prediction.

<comment><AUTHOR> I'm not implying that the company will be out of business in 6 months. My suggestion is that given it's rate of acceleration, mass fatigue with it will start to set in amongst many and soon.

Perhaps the title should have read: We're going to have to change how we use Twitter. Then of course, that seems a little dull, doesn't it? :-)

<comment><USER13> _mass fatigue with it will start to set in amongst many and soon_

What, you mean like it did with email and the telephone? ;)

I think Twitter will have a lot of staying power. The magic of Twitter is that it remains _very_ simple relative to, say, Facebook. There is a very bare- bones set of social-networking relationships: Basically, you can follow, and you can be followed. And following doesn't _necessarily_ carry the social subtext of, say, your Facebook friend list, perhaps because it comes with far fewer consequences, ramifications, and options.

I find it interesting that my (now nearly middle-aged) generation has finally discovered Facebook en masse... and that the number one use case seems to be "keeping in touch with your classmates from high school and college". Facebook was originally designed for students, and that design permeates its DNA to the point that even people who've been out of school for twenty years revert back to Student Mode when they use it: It becomes an ongoing class reunion. But I don't think Twitter will work out quite the same. I think Twitter is more like the phone: In the hands of teens, it's a gossip tool. In the hands of corporate consultants, it's a business tool. In the hands of moms, it's a parenting tool. It's sufficiently abstract that people can find their own uses for it.

I mean, take me. I just don't understand what this fuss is about, anymore than a corporate Blackberry user understands the culture of middle-school text messaging. I don't use Twitter as a high-schoolish gossiping tool and I never have. I don't follow that many people, and I don't see a high volume of tweets. I don't tweet much myself, and I have very few followers. I don't talk to personal friends on Twitter. (Most of them are not there yet; As I said, a lot of them are only just starting to digest Facebook. They'll need another two or three years to discover Twitter.) I still don't understand what these #hashtags really do for you or where you go to see them. I'm the most boring, out-of-touch Twitter user in the world. _But I still love it._ So I don't think Twitter is going anywhere soon. Fads will come and fads will go, but the desire to communicate goes on.

<comment><USER14> I disagree with this blog article, and your response is dead on.

</comment></comment></comment></comment><comment><USER15> its not</comment>


'Apple Glass' Rumored to Start at $499, Support Prescription Lenses, and More - <AUTHOR> https://www.macrumors.com/2020/05/19/apple-glasses-price-prescription-lenses-rumors/ <comment><USER2> Will people call the users glassholes or was that only when the product wasn't made by Apple?

<comment><USER3> iGlass. Like eyeglass(es). :)

<comment><USER4> iSight?</comment></comment></comment>


Rust Survey 2019 Results - <AUTHOR> https://blog.rust-lang.org/2020/04/17/Rust-survey-2019.html <comment><USER2> Last year Rust was a language I badly wanted to learn. I've had many false starts learning a lower level or "systems" language, which I felt would round off my toolbelt quite well. A lot of principles of CS you don't get exposed to when writing web servers and UIs.

The problem I had was basically the IDE integration in VSCode. RLS was okay but unreliable. And if it only works most of the time, it may as well not work at all. Especially when it only sometimes gave me code completion and type checking (A lot of "unknown" would fill my code).

Then Steve pointed out Rust Analyzer in a previous thread and I was off to the races. Rust Analyzer has gotten _so good_. Having a VSCode setup that gives me immediate feedback for my mistakes and code discovery makes a huge difference (to me at least). Maybe a bit of feedback is that I wish Rust Analyzer hadn't been so hard to discover. Though maybe that's just because it was new.

That, combined with my nightly march through The Rust Book has me well beyond, "I wish I could learn a systems language but !@#$ C and C++ are just so complicated and unforgiving" and into "wow, it's no-longer a matter of _if_ but a matter of how much I want to hone my understanding." Rust is a beautiful language that way. It guides me away from rookie mistakes that would leave me disenchanted after hours of debugging something dumb. (It's hard to be unrelentingly dedicated to learning something new now that I have young kids. When I was a teen it was easy)

I don't want to come off as a Rust fanboy. I have yet to implement much of anything (though hopefully by next year I'll have a Game Boy emulator to show you all). But I want to give thanks and proselytize a little because it has been such an empowering experience.

<comment><USER3> C complicated? It is a very small, simple language for a system programming one.

C++ complicated compared to Rust? They offer roughly the same features and both are complex languages if you want to understand what is really going on.

Rust is a very good language that competes with C++. The main feature it brings to the table isn't simplicity (Rust, like C++, isn't simple at all), but the borrow checker.

Please avoid making comparisons between languages if you don't know them (as you claim).

<comment><USER4> >C complicated? It is a very small, simple language

That's a bit misleading though. Yes, C is very small - but that doesn't mean it's magically easy to understand. It's size has a huge consequence; the language doesn't do much for you, so it's up to you to fill in the gaps, e.g. correctly manage memory

<comment><USER5> I find C much simpler to learn and to write simple things in.

If you learn C, you'll find that most used languages are compatible with C way of thinking. You can pick up C#, Java, Javascript, Python, PHP with ease as you kind of think in the same way.

While Rust, the language might not be terribly complicated, you have a totally different paradigm, the restriction on variables and the borrowing system makes it totally different than the languages people are used to, to the point that for beginners is totally unintuitive.

You can't just declare a variable, initialize it, pass it to a function and get a result back.

You can't have self references in a structure.

No, siree, as a beginner learning Rust you have to do a lot of complicated dancing around the borrow checker.

Comming from C like languages I find even functional languages like F# easier to pick up. Because they feel more intuitive. Unlike Rust you kind of feel what kind of code you need to write to get a workable result.

Right now I feel that the only advantage of Rust over other safe by default languages is speed. You can use low level constructs and unsafe features like raw pointers in C#, but the garbage collector for the safe code slows it down.

I don't think garbage collected languages can ever be as fast as Rust.

Reference counting like in Swift is another way to provide simplicity, but I see Swift is even slower than garbage collected languages.

So if your use case needs both performance and safety, Rust is your best bet.

It seems that from simplicity, performance, safety you can only pick two at once.

Microsoft Research is working on a language inspired by Rust. I'm curious if they can come up with something as safe but easier to use. I wouldn't bet on it. They aren't convinced of the outcome since they recommended to write or rewrite parts of their software in Rust instead of waiting for the new magical language.

A good thing from Microsoft evaluating Rust to use in their huge code base is they learned about a few weak points and are making recommendation to Rust team.

One side effect of Microsoft embracing Rust might be that other corporations like Google and Oracle might avoid it to distance themselves from Microsoft.

<comment><USER6> Google is using Rust on Fuchsia, but isn't keen in exposing it to userspace apps.

[https://fuchsia.googlesource.com/fuchsia/+/refs/heads/master...](https://fuchsia.googlesource.com/fuchsia/+/refs/heads/master/docs/project/policy/programming_languages.md)

</comment></comment></comment></comment></comment><comment><USER7> Networking in Rust has gotten _so much_ better this year.

My old server needed nested callbacks, wrapping everything in refcounting, loops via recursion, and Either for control flow. Still easier than C, but not pretty.

Now it's just `do_this().await.do_that().await` and I'm done! Huge congratulations on shipping that.

</comment><comment><USER8> I started learning and coding Rust full-time over the last couple of months. I expected a learning curve, but boy what a steep curve it was. Simple things are simple enough, but for experienced programmers porting your patterns (especially functional programming patterns) can be challenging and interesting at the same time.

For instance, I wanted to return a function (async) from a function. A seemingly simple task, but I couldn't figure it out and I had to ask on Stack Overflow. [https://stackoverflow.com/questions/61167939/return-an- async...](https://stackoverflow.com/questions/61167939/return-an-async- function-from-a-function-in-rust)

The answer is obvious only if you know a fair deal of Rust. Thanks to the Rust team's amazing momentum I am sure the compiler will improve over time, but for now I found passing functions and closures around a bit harder than I expected. Totally loving the language though.

<comment><USER9> The learning curve is misleading. You can achieve parity with a higher level language by copying and pasting solutions such as the one in your stack overflow post. Yet, unlike in other languages, an opportunity presents itself to learn far more about the underlying tooling used to create such a solution.

</comment></comment><comment><USER5> NPM rewrote one of their services in Rust. It took them one hour to rewrite it in Javascript , two days to rewrite it in Go and one week to rewrite it in Rust.

Even if we account 90% of that time to the lack of experience in Rust, it still feels like a massive productivity hit.

So unless you absolutely need to squeeze the most performance you can from the hardware it might not be the best choice.

[https://www.rust-lang.org/static/pdfs/Rust-npm- Whitepaper.pd...](https://www.rust-lang.org/static/pdfs/Rust-npm- Whitepaper.pdf)

<comment><USER10> It is kinda unfair to compare the time of writing a service in go and rust if your team already work with JavaScript.

Go was designed to be extremely simple (simplicistic, if you want to be ugly with terms) while rust was designed with very different goals in mind.

Moreover the mental model of JavaScript is much closer to the one of go than the one of Rust.

If you are learning rust and you are not from C/C++ or similar low level languages you are basically re-learning how computers works. Usually on go you don't really care of the difference between the stack and the heap, in rust you have to.

Said so, it is really true that rust has a steep learning curve, however once you get over it the productivity is at least as high as go especially in the long term.

For one off script of ~100 lines I would pick go as well.

</comment></comment><comment><USER11> About the docs.

They are better than most docs, but sometimes they have gaps in their sample apps.

The WASM book, for example, goes from "hello world" straight to "game of life".

It's certainly an interesting algorithim and probably hits a sweetspot because its computation heavy(?), but at least for me it was too much noise around actually learning Rust and WASM.

<comment><USER12> I'm so happy you mentioned this. I went through the same process and "noped" out. Now, I've stuck with Rust, but I laughed out loud at that leap.

<comment><AUTHOR> I am also happy you both mentioned this, because I've never heard anyone say this before! Good to know!

<comment><USER11> Yes, I'm a frontend dev. I know my todo list examples, haha.

</comment></comment></comment></comment><comment><AUTHOR> Please don't forget that the survey closed in December last year, so it's pretty close but may not reflect rust actually today. In particular the IDE landscape has been changing rapidly.

<comment><USER13> Hi Steve, I spotted a typo: "By are the most common" should be "far" instead of "are".

BTW the (3d!) pie charts are far less clear or informative than the nice simple bar charts, which could be used for everything here.

<comment><AUTHOR> Thanks!

I didn't write this post, but I'll pass it along.

</comment></comment></comment><comment><USER14> Having not used Rust at all, I'm impressed with its momentum. I know every language has their issues, but Rust seems to have a strong community, is well organized and seems to have good tools available: all things that make me believe that I would be able to use it effectively were I ever to work with it. I've been watching Gamozo on Twitch use it to build a hypervisor kernel and I really enjoy seeing how the language works for him.

</comment><comment> m-hilgendorf When people want better docs, do they mean better doc tooling or better doc writing? Because personally, I'm a huge fan of cargo-doc and its integration to the ecosystem. Just yesterday I found out about #![deny(missing_docs)] - which combined with executing code snippets in cargo test - enforces _really_ good documentation discipline and ensuring that everything is doc'd, and that docs don't become stale.

<comment><AUTHOR> I didn't tread the raw results, but I believe it's "more docs," not the tooling.

</comment></comment><comment><USER15> Ask HN: Do you recommend learning C++ first then Rust? My logic is that learning C++ and navigating its pitfalls would lead to a better understand of Rust and the underlying reason behind certain design decisions.

<comment><USER16> I think it will take years of working in c++ to fully appreciate the nightmarish many-tentacled footgun monster it can be.

At the end of it you might even develop Stockholm syndrome and be one of those posting "if you just restrict yourself to _these_ parts of the standard and run this 6 static analysers on your code then c++ is perfectly safe if you're not an idiot".

If you don't want to learn c++ for its own sake, that's time you could better spend learning a language that's not actively trying to harm you.

Source: coded c++ for 20 years, now writing rust as much as possible.

<comment><USER17> Why not D, then? Just curious. D is "a better C++," and it is a mature language.

<comment><USER16> I looked into D once or twice. Found learning materials severely lacking. Having to read up on the differences between 2 (3?) compilers and choose between them wasn't a great intro.

For the work I do GC is also a non-starter. I know it's got some level of no- gc now but the last time I looked it wasn't well-supported.

In short it seemed interesting but on-boarding felt hard. And with that the value proposition wasn't there or well-advertised: It's supposedly "better" in some ways such as faster compile times and better meta-programming and frankly that didn't seem worth the effort.

Rust by contrast does an excellent job of onboarding and making it easy to learn the language (at least at an introductory level). It also comes with a very straightforward value proposition: just as fast as c++ but whole classes of bugs simply aren't possible. Add in a little bit of ergonomics and functional flavour and I was hooked.

</comment></comment></comment></comment><comment><USER18> > As for platforms that users develop on - Linux and Windows continue to > dominate.

That seems like a _very_ odd way to characterize the results (55% Linux, 24% Windows, 23% mocOS). Why draw the line between the two platforms that are 1% apart instead of between the two that are 31% apart?

</comment><comment><USER19> I'll use this post to say "Thank you!" to developers of the IntelliJ IDEA Rust plugin.

For those who didn't try: this plugin works even in the Community Edition of IntelliJ IDEA.

</comment><comment><USER20> You need a standard web/networking framework. Built in to the standard library, like in Golang. That will speed up adoption. Rust's competitor is C++. C++'s biggest weakness is build tooling, which Rust is demonstrably better at with cargo. C++'s second biggest weakness is poor networking support. Rust isn't any better. That's driving away the JavaScript/RoR/hipster crowd which is the lifeblood of Rust's adoption.

<comment><USER21> If Rust's competitor is C++, you don't need to attract Rails developers, you need to attract C++ developers.

If anything, i would say that over the last year or so, too much effort has been put into making Rust a competitor for web development, what with async, and lots of attention paid to web frameworks. Meanwhile, C++ people i know mostly look at it and say "meh, no const generics, no placement new".

<comment><USER20> C++ programmers will not switch to Rust. Most of them are older than the maximum age where you can learn new things, let alone be willing (or allowed in their company) to do so.

Rust will be most popular with those who are 18 years old now and wanting to try native programming. When you compare the two, tabula rasa, it's just a no- brainer.

<comment><USER22> Please don't post flamebait to HN. Generational flamebait is among the dumbest and most wretched sort we see here.

[https://news.ycombinator.com/newsguidelines.html](https://news.ycombinator.com/newsguidelines.html)

<comment><USER20> I'm not trolling. I'm confused why this is so controversial since it's widely accepted folk wisdom (and confirmed by science). Learning gets harder as you age. Just bing it.

[https://www.independent.co.uk/life-style/learn-language- scie...](https://www.independent.co.uk/life-style/learn-language-scientists- second-education-best-age-a8330911.html)

It's nothing personal against anybody.

</comment></comment></comment></comment></comment><comment><USER23> Anyone else asks for REPL? I like to have a REPL.

<comment><AUTHOR> Sometimes folks do. There even was a limited one, long ago. It's just not simple.

<comment><USER17> Come on, even Haskell has one!

<comment><USER24> Haskell's an old language, pushing 30 years now... Rust is still a relatively young technology. There are lots of improvements that could be built but only a handful of people to build them.

</comment></comment></comment></comment><comment><USER25> "If you _summed_ the size of _all_ Rust projects you work in, how big would it be?" (emphasis mine)

Then: "The majority of Rust projects (43%) are 1,000-10,000 lines of code."

Am I reading this wrong somehow? I've been rereading it a couple of times, and feel like you can't draw that conclusion.

</comment><comment><USER26> Really interesting to see data science so prominent. Encouraging to see, from my personal perspective.

<comment><USER9> Rust offers complete control over asynchronous streams of data with uncompromising safety. I believe that this will make Rust a contender for the Golden standard in data engineering, which supports data science. The survey category may need to distinguish the two or data science will include it.

</comment></comment><comment><USER27> The industry chart need some love, the number of lines is twice the labels, making it quite misleading

</comment><comment><USER28> Regarding learning Rust, As a intermediate level developer. I find literature for learning, and working with Rust quite lacking.

On the other hand C++ has some huge array of books. All of the them being top notch.

<comment><USER29> Is the Rust book not enough? I found it to be pretty great.

<comment><USER28> It is good enough for introduction but not much more. What I meant to say is, there are no books that teaches you how to create programs using Rust. Patterns and stuff...

<comment><USER26> I am very curious about what you think about Rust in Action [https://www.manning.com/books/rust-in- action?a_aid=rust&a_bi...](https://www.manning.com/books/rust-in- action?a_aid=rust&a_bid=0367c58f&chan=hn). It wont describe higher level patterns, but does walk you through dozens of example programs. Projects include:

      - a CPU emulator
      - a fully functional NTP client
      - a skeleton grep implementation
      - how decimal numbers are represented in Rust
      - developing your own format for representing numbers
      - a memory scanner so you can learn how game cheaters cheat
      - handling UNIX signals
      - inspecting binary files for hidden patterns
      - an OS kernel + bootloader
      - an L-Systems implementation

<comment><USER28> Can only tell after reading the book.

</comment></comment></comment></comment></comment><comment><USER30> Surprised to see backend web apps as top use of rust by a large margin. I guess many take the common opportunity(web dev) to learn the language?

<comment><USER31> I think that its a reflection of where much of the market's jobs are: "backend web app" might as just well be replaced with "thing moving data around with RPCs" which is what so much of the value software provides in the economy is tied up, these days. Also, for startups who live-or-die by their cloud hosting costs, reducing CPU utilization by 2x and MEM utilization by 5x versus GC'd languages, the value proposition is real.

<comment><USER32> That's not how it works, since most startup run python / ruby / nodes code, the cost of your app is definitely not a big concern, especially since you can have performat code in any language, you don't need rust speed in 99.9% of the cases.

<comment><USER33> Sometimes performance matters. At my previous company we settled on a Rust solution for one component (ingesting analytics data) after cycling through python and node prototypes that were just too slow (we had 100+ GB of data to process, and the node.js app was taking 15 minutes to process one 500mb file).

And once the data processing code was in Rust, it made sense to have the endpoint that collected the data in Rust too. It would probably have been _possible_ to optimise the node/python versions. But it was _easier_ to write it in Rust that is designed for these high-performance scenarios.

An unexpected bonus was just how reliable our Rust code turned out to be. I'd definitely consider Rust for non-performance critical code on that basis.

</comment></comment></comment></comment><comment><USER34> The text in the last survey question (target platform) seems wrong (or the graphic is wrong).

</comment><comment><USER31> I was surprised to see the title "System Architect" was the second most-common job title among respondents. Use of that phrase is culturally taboo within Google. Are there regions in the world where its common to use that title? I see that the respondents were from all over the world in 14 languages.

<comment><USER20> So many weird job titles/euphemisms for programmers. Engineer, Architect, Developer, Scientist. How about none of them. You're a programmer. You're not building bridges.

<comment><USER10> Hummm I find this view very disturbing.

While it is true that some developer builds yet another e-commerce cart on JavaScript or PHP, some of is work in critical systems.

Systems that in one way or another allow our world to keep working.

What if DNS stop working? What if the service that get unemployment claims stop to work? What if the system that manages patients in a big hospital stop working? What if an avionics system in a big Boeing is done wrong? What if a database that keep track of citizenship corrupt data?

Those are problem just as serious as bridges falling down.

Some structural engineers build houses some other huge bridges. Some software engineers build carts for e-commerce, other fundamental systems of our world.

<comment><USER20> It doesn't mean the job is not important. It just means it's a different job from the other job titles which have existed for hundreds of years in the physical domain.

Programming is more like being a lawyer than engineering. But let's stop making analogies to other professions and just call it what it is: programming.

</comment></comment></comment></comment><comment><USER35> rust has an awful readability issue.

its syntax is too irregular and permissive. (too much ruby?) people tend to disagree, but syntax is very important. that is, in fact, why python has won the scientific community. we don't wanna be spending brain cycles deciphering syntax.

as a side note, we blamed java for being verbose for years. in retrospective, java was right. i have never seen a piece of java that i couldn't understand. i may not know why the code is doing what it's doing, but i always know what the code is doing.

java has stellar readability!

with rust, only time will tell. my gut feeling is that the readability will not help the language when programs get old.

<comment><USER36> Can you elaborate on what exactly you don't like about Rust's syntax? I'm always surprised when I hear this, because a lot of the things that get pointed out tend to have good reasons for the way they are.

<comment><USER37> But it doesn't _matter_. If the language is unreadable, even if every syntactic decision followed by necessity alone from a set of first principles, it wouldn't prove the language was readable. It would only prove the selected principles necessitate an unreadable language.

Compare [x for x, y in v] to v.iter().map(|&(x,y)| x).collect::<Vec<_>>(). There is a good reason for every bit of ugliness, but that does not change the fact that it _is_ ugly.

<comment><USER38> Readability is very often nothing else but habit - code which looks like code you've seen often enough looks well. Case in point: The first example is just gibberish to me and I needed the second one to decipher it.

Also, I would write the second example different:

      let r: Vec<_> = v.iter().map(|(x,_)| x).collect();

In my opinion that's superior in readability to both of your examples, but probably also only because I'm used to it.

<comment><USER37> Your r has a different type.

</comment></comment></comment></comment></comment><comment><USER39> Quick plug, my company released a lot of Rust code on Wednesday: [https://github.com/mobilecoinofficial/mobilecoin](https://github.com/mobilecoinofficial/mobilecoin)

The SGX and no_std support might be of particular interest to some of you.

<comment><USER9> Not the right place or time for this, but congrats on your release

<comment><USER39> Apologies, I was unable to delete my comment after I realized it wasn't appropriate here.</comment></comment></comment>


Latin America has a police brutality problem of its own - <AUTHOR> https://latinamericareports.com/latin-america-has-a-police-brutality-problem-of-its-own/4626/ <comment><USER2> Important read right now.</comment>


What Can We Expect from the Internet in 2020? - <AUTHOR> https://www.youtube.com/watch?v=x4S38hpgxuM <comment><USER2> Total Information Awareness.

</comment><comment><USER3> Will still have an internet in 2020?

<comment><USER4> The Trumper-net will be much better than our archaic free-form hippy internet of today. We will look back on the old one and simply say: Sad!

We'll all be much safer because President Trump will mandate no private encryption systems that don't give keys to the govt. Plus we'll be required by law to use SystemD. Finally, Microsoft will hire all the developers writing SystemD and it will provide a windows compatibility layer in linux.

</comment></comment><comment><USER5> So, in a nutshell: we're running into barriers put forth by physics. We've cracked the quantitative digital divide and now physics is a key barrier keeping us from have equal quality on a planetary scale. The speed of light remains a bottleneck.

<comment><USER6> We just need to find the right header file and update the constant of C to reflect our new needs</comment></comment>


Ask HN: Any other solo founders apply for YC 2018? - <AUTHOR> I know YC favors submissions that have between 2 and four founders.
Regardless of the outcome of my submission, I am moving to Mountain View CA at the end of May.
I'm interested in hearing about other solo founders.
P.S. I'm looking for a co-founder who is excited by the idea of building an IFTTT for user behavior. e.g., If a user views a product 5 times in 10 minutes, we'll notify your server of the event so you can react in near real-time. I'm a software engineer by trade and choice :)
E-mail me at mr burton (at.) gmail <comment><USER2> I submitted my application as a solo founder last night! It will definitively be harder but YC or no I'm pushing forward with my startup idea.

<comment><AUTHOR> What was your motivation for applying to YC?

The reason why I applied was due to the infrastructure they provide; advice, networking, the insight that that otherwise would take a lot longer to obtain.

Not to mention the YC family is a highly supportive group. That's worth its weight in gold alone.

</comment></comment><comment><USER3> I applied solo. Going to build it one way or the other. It would be faster with funding though, and with the amount of work that will take it would be nice to have help.</comment>


[Machine Learning] What metric to use when classifying random processes? - <AUTHOR> https://medium.com/@kwykedu/metrics-random-processes-in-classification-fd5bafa79505 <comment><AUTHOR> Hello all,

I just wrote a post where I go over the usual metrics for classification of deterministic targets then propose an alternative when the target is more of a stochastic nature. I would love to have your feedback about it !</comment>


The radical future of media beyond the Web (1997) - <AUTHOR> http://www.wired.com/1997/03/ff-push/ <comment><AUTHOR> I'm not sure if it's fascinating or not that Apple doesn't appear in this. They certainly didn't have much going on in this space - but they didn't even rate a mention.</comment>


Show HN: NanoNets, One Click Machine Learning API - <AUTHOR> http://www.nanonets.ai <comment><AUTHOR> We are building an easy to use ML API. Uploading sample data automatically creates a new model. It requires no parameter tuning and much less data (1/10th). We currently have two models active, Object Detection and Image Classification.

Please try out the API and suggest improvements. Also help us decide what models to build next.</comment>


Companies Respond to Al Franken about CarrierIQ - <AUTHOR> http://www.engadget.com/2011/12/17/senator-al-franken-asks-about-carrier-iq-the-companies-answer/ <comment><USER2> OT, I was surprised to learn the other day that Franken is one of the sponsors of PIPA, the Senate's counter-part to SOPA.

One of a few things I've noticed over the last year-plus that make it pretty clear that (even) Franken is a mixed bag and not entirely the/a "technologist's" friend.

Let me see... reference:

[http://www.techdirt.com/articles/20111203/00494716961/some-d...](http://www.techdirt.com/articles/20111203/00494716961/some- data-how-much-big-media-firms-are-donating-to-sopapipa-sponsors.shtml)

Over the years, I've learned to "idolize" very few people, and only with a lot of consideration. My immediate example aside, Franken's political/Senate career is simply too short to be the basis for such strong feeling.

Look at Obama. Many people "idolized" him (including, apparently, "a bunch of Norwegians") and are feeling a keen disappointment.

P.S. I wasn't too surprised, though. Continuing into his Senate career, Franken's had strong ties with the entertainment industry.

</comment><comment><USER3> It's absolutely awesome that he questioned them in such detail.

So far I've had mixed feelings about Franken's performance as the defender of electronic rights of citizens, but I have to admit, he picked up the ball here. (Or maybe someone smart on his staff. ;)

<comment><USER4> I think Al's heart is absolutely in the right place. He didn't have all of this mastered when he took office, but he's learning fast and he seems to be doing more things right than anyone else in the Senate that I can think of, on these issues and on various other issues pertaining to citizens' rights.</comment></comment>