skysight-inc/HackerNews huggingface dataset:
I think other sites are interfacing with whocalled.us through the HTML. I see it listed on sites like Spokeo where it shows comments, and I don't think they're using the API. Plus the site code is old, and people tend to dislike it when you mess with how their site works.

So I made whocalld.us as a place to write a new interface from scratch that uses the same database. That is where I added fulltext indexing for search. Previously the search box on whocalled.us used Google Site Search. But I want to remove Google services, so rather than add fulltext search to whocalled.us, I pointed it to whocalld.us for now.

I figured if I could rewrite the site to be better, then people would allow me to replace whocalled.us with that one.

I thought maybe that's why Googlebot detected whocalled.us as spam, if it saw duplicate text on whocalld.us. But I tried things like denying Googlebot access to whocalld.us with robots.txt, and setting noindex in meta tags, but nothing helped. If that were the issue then a person could see I own both sites during the reconsideration request, and either remove the "Pure Spam" penalty or provide some clue as to how I should fix it. Besides, if that was enough to get my site removed, then what's stopping malicious people from doing the same to other sites?

Either way, I should have the freedom to fork my own website to recode it if I want without having to worry about the Google police. I don't build websites for Google, so if this is how things work, I'll have to find a way to thrive on the web without Google's help. We did it before, and we can do it again.

The other domain, whocalld.us, is also deleted as "Pure Spam" too.
Strap it onto a quadcopter and you have a portable solution to map every room you could imagine.
Thoughts on Working Without Suffering
Learn Swift Now
I think bdcravens means that to install Go from source on, say, a new Linux box, we will have to download a binary version of Go first, even though we probably already have gcc.

What happens if this catches on, and PyPy replaces CPython, and other languages do the same?

Hassles for those who prefer to install from source, and potentially a lot of duplication of effort writing compiler backends in every language.
I use SA on my own domains and I feel it is as efficient as Google's own spam detection. Although no spam mails slipped through in months, a few legit got caught due to their incompetence in html-emails.

As for ClamAV, their database is updated frequently.
It's probably not as good as commercial vendors such as Symantec, NOD32 and so on (can't compare because I haven't used them for years), but I feel it offers some protection.
This was done in a pretty spectacular way by Luis Herman a little while back:

http://www.itsnicethat.com/articles/luis-hernan-digital-ethe...
I make $17/hr in a NOC position with no benefits, no pto, sick days, etc and I may not have a position next month because bureaucracy.

These CCA positions look pretty nice right now.
In the source code /examples folder most of the languages have a bi-directional example called "greeter"
Ideally you need something in the middle of "Rewrite this whole damn thing from scratch" and "don't touch a thing more than you need to, never change any architecture, just make it work and the tests pass."

You need to understand the existing architecture and idioms and traits. And you need to understand the business domain. Then you need to decide when it makes sense to refactor a sub-system first to make the change easier (and support future such changes, which requires you to make a _guess_ as to how likely future such changes are), or to resolve existing lingering problems while making your change easier. And when it doesn't. And you hardly ever, ever, need to rewrite the whole thing (but not never, just hardly ever).

Personally, I think this is what the art of crafting good code _is_, and something that needs to be the goal of everyone writing software, not something you can say you Just Don't Do because It's Not Your Style.
> Do you rewind through all your history and rebuild and retest every commit in a branch every time you rebase?

Yes.
Yes it's covered in any Haskell book - what use would a language book be without covering IO? How far back in the book it comes, relative to other languages, is the telling piece. LYAH has it as Chapter 9, after algebraic data types, higher order functions, functors, and recursion... I note that in the one week introduction I did for my MSc at the University of Oxford, they didn't cover it, considering it to be too much to fit in to the week.

Having taken the rite of passage that is writing my own monad tutorial, I would agree, the concept is both easy and intuitive. Getting it in to your head, however, takes considerably more work than in any other language I've used.
Building projects are a terrible example of predictability. They are ultimately highly agile due to dependencies on inherently unpredictable factors such as weather, 3rd party suppliers, industrial disputes, archeological discoveries, legal disputes and so on.

The difference with software is that if you have done it before you should have automated it. The great majority of programming is therefore design work. There is an answer here which is reversing the problem and simply timeboxing based on expected ROI and there is certainly no need for task estimation as a component of fixed price bidding, particularly where that has a lousy historical track record and wastes client money.

(I'm well aware that on many very large projects this is not the case and they are run like an old-fashioned production line with humans performing well-defined tasks - but this only illustrates the huge inefficiencies, lousy processes, and general ignorance of software development practises as standard in SI's.)

But aside from all that, how do you account for http://en.wikipedia.org/wiki/Planning_fallacy ?

I'd also be interested in how you apply cost estimation to debugging and other BAU tasks.
This is sort of tangential, but I think anyone opening a specialty food store in Berlin could do quite well. Particularly in terms of foreign beers. I'm aware of precisely one place in the entire city (Berlin Bier Shop) that stocks any Belgian beer at all.
Now do it with my piece of shit Shaw router.
Valentines day was yesterday for me. You wouldn't see me spending my time responding here if it were today!
Thanks for replying directly. I have; I've used Gerrit and Phabricator (which also does inline comment draft keeping) a lot, and I've clicked around Rietveld. I just never have seen much use for the comment draft feature; keeping comments in draft is not what I naturally do. I can see where others might like that, so it could be a nice to have (though you can also use your browser to keep draft comments).

I think GitHub and to a lesser extent Phabricator have enormous UI/UX upsides over Gerrit and Rietveld, which perpetually look like internal tools that never underwent proper UX review. What's more important is that GitHub has done so much for open source software and has achieved such critical mass that a decision to not use it now starts to also shut you off from a population of developers for whom the activation energy is too high.
And uh, WTF is he going to be doing at Apple? He has great taste in music but unless Apple is starting up a radio network how can he have nearly the impact there that he is having right now at Radio 1?
The ironic thing, of course, is that the original goal of 'agile', by the people who invented it, was precisely to avoid middleman gumming up the works. Precisely.

We are all (including many of the people who popularized the term) aware that it hasn't always worked out that way. But that's still the goal.
The JVM is optimized for long-running processes as it takes time for the JIT to kick in. Other than the memory footprint your code gets quite a performance boost; I'm always surprised how much of a difference it makes before and after.

You wouldn't want to boot a JVM process per connection but rather implement the listening socket yourself and dispatch connections within that same process with all of the required services already initialized. A WebSocket server is no different.
If you can't demonstrate prior track record on a similar project and are relying on price alone to win then you should qualify out in any case.
The Portland scene is great, head North for a a wine/beer/cider/coffee/gin/wiskey adventure.
Reminds me of another project visualizing wifi signals:
> This project explores the invisible terrain of WiFi networks in urban spaces by light painting signal strength in long-exposure photographs.
> A four-metre long measuring rod with 80 points of light reveals cross-sections through WiFi networks using a photographic technique called light-painting.

* More Info: nearfield.org/2011/02/wifi-light-painting
* Video: https://vimeo.com/20412632
* Thread on Hacker News: https://news.ycombinator.com/item?id=2270878
I'd assume RSSI
Yeah, I edited it out because after I took a breath I figured you didn't mean it that way. =) Hugs all around.

But I really don't think it's a major thing, because there's no meaningful difference, in terms of performance, between "struct { int x; int y; } A" and "int Ax; int Ay;". I'm suspicious of claims that Go, as fundamentally a not that different language to a JVM language, is going to yield significant performance benefits. I'm not saying they aren't a nice convenience (value types are one of the things I love about C# when I'm writing code under MonoGame), I'm saying that I can't think of a reasonable way, barring bugs or short-sighted implementations, that they made for faster code.
For integration branches it is nice to have cleanly rebased changesets which are then merged with "--no-ff" option so it generates an explicit merge commit.
A really fine piece of flash SF. Thanks!
Scientists Create Contact Lens That Magnifies at Blink of an Eye
iTunes Radio, maybe? Or Beats Music? There's lots of options...
Opinions do vary a lot. I am iterating over history logs quite a lot and IMHO nothing beats clean repositories. Again IMO merge commits have no reason of existence whatsoever.
Well, I think that's sarcasm but I'm not sure. The fact is, yes, they did send an officer to my house within hours so it seems they did take the shopkeepers word and considered it some sort of priority. Perhaps they looked at the video showing a license plate, but I doubt that they looked over the payment records to verify that the person did in fact not pay.
I would say just start doing anything.

Deploying > Doing > Reading.

You don't have to do something super impressive to begin with. Just start with committing a line of code.
Great idea! I understand there are only seven options (hence the name) but I'd suggest adding a music playlist as an item. It's easy to describe and would cover multiple GUI elements: button groups (forward,back,start,pause), display list (what is in the playlist, what is currently playing) and interactivity (drag and drop to re-order).
It doesn't take much to boot up a community in a large company like Amazon or Facebook as long as it brings value. See the FXL, Haxl, and React work at Facebook. (I removed my comments on Amazon as it's hard to gauge what's ok to mention in public)
Pretty cool! Would be cool to add some sort of position sensor on, I guess GPS wouldn't be ideal though. Maybe hack a roomba to map signal strength in your house!

Anyways, reminds me of this: https://vimeo.com/20412632
Sommers is an absolute beast, does totally astounding work and is an asset to the community. But even when we say "performance-critical" most of us don't mean getting 3M req/sec from one box like she did w/Haywire (https://twitter.com/kellabyte/status/547063455048404992). In other words, pushing the hardware absolutely to its limits is another game (Sommers' game :) ) from simply getting a tricky part of your app performing at the level you need. And, confusingly, "high-performance" or "performance-critical" are terms you might use to describe either task.

For context, the person whose presentation triggered Kelly's comment, MIT scholar Neha Narula, was experimenting with an 80 core machine, and she replied "it's kind of amazing I could push Go that far," and "to be fair they weren't really optimizing for my use case :)" -- her whole presentation is on YouTube at https://www.youtube.com/watch?v=Mbg1COjhsJU (some wild stuff--she got improvements for >48-core machines pushed into the Go GC) and those replies I quoted are at https://twitter.com/neha/status/564569903219634176 .
Go gives you data structures with fewer pointers than Java, which helps cut down on GC pressure.

type point struct {
x int16
y int16
}
points := make([]point, 1e6)

The value points uses 4 MB of memory and contains one pointer, not a million.
>I mean, Go is (or was) in the loop whenever YouTube hit its MySQL clusters (vitess) and on on the server providing downloads of Chrome and so forth (dl.google.com).

Not as impressive as it sounds. Most of it is cached in memory anyway...
Agreed with setting the standard arbitrarily high. It depends on what problem you're trying to solve—just like deciding when to use any other tool. Context matters.

Where I work, we've been trying to build some super-fast systems and things like the GC and even calling interface methods matter. We open sourced some data structures that show just how optimized we're trying to get (https://github.com/Workiva/go-datastructures), but in hindsight, Go might not have been the right tool for the problem.
This is very cool - both Desmos itself and the Sierpinkski Valentine example! In case you're more familar with LaTeX, you can also create similar visualizations in LaTeX using the 'lindenmayersystems' libary and TikZ. Here's a quick example: https://www.overleaf.com/latex/examples/the-first-six-levels...
While you can certainly bribe, coerce or trick an upstream maintainer to accept a malicious patch, there's still a whole network of downstream maintainers that all want to have their say, and there's usually ample time for the community to form their own opinions about what's going on, even if that sometimes leads to a lot of silly polemics.

I don't know of any free operating system that forces updates, and even if Apple doesn't they still have excellent means to coerce users to accept those updates by withholding all their centralized services. Which is precisely what Sony already did with the PlayStation 3 update in 2010.

This is where the Affero GPL comes in. If the users of one service find the terms and conditions to be onerous, they can simply launch a replacement service using the same software on the same day, preferably without breaking a sweat.
Does the gig economy exploit workers?
The main problem is that there are many kinds of incompatible "data-structure streams". Using a scripting language doesn't solve the problem, it just standardises on one particular ad-hoc parser/serialiser combination (say, Python's pickle, for example).

That's fine for personal use, or in a single project, but doesn't scale like "dumb" text does.
This is why spreadsheets were invented. The lack of automation in other areas is just low design maturity - Salesforce are partly there with the CRM.

A Wordpress integration module could certainly be inventive depending on what it was integrating with and what it was doing.
Why is there so much variation in strength from such a small change of position?
But really... stop using the merge button.
In fact, the second half of the article is about why it doesn't do that. Also, Python is not a compiled statically typed language, and doesn't have compile errors.
That is interesting also, but it is 1D only, the light stick's total illuminated length is signal strength. If they re-did that project using RGB LEDs and each LED colored from Red to Blue based on the signal strength at the LED then you would get a 2D plot, And of course if did as the author and photograph an LED at intervals in a 3D space you could do the 3D plotting.

The whole thing has my head buzzing with ideas. Imagine a drone which has a string of RGB LEDs hanging from it making such plot using GPS/6DOF IMU data to allow a computer to reconstruct the scene. Could be very cool indeed.
Shocking, more evidence confirming what we already have known for decades (at least since WWII), torture is one of the least effective methods for obtaining reliable information from suspects.

Sadly, I wish the debate about torture didn't focus as much on effectiveness instead of morality and legality (since it is neither moral nor legal).
The problem with Scala is that you don't just get ML -- you have to accept everything else that comes along -- so F# can be a more comfortable choice.
For a code review tool more powerful than GitHub's but with a much better UI than Gerrit, check out https://reviewable.io (disclosure: my project). It integrates smoothly with GitHub and doesn't require setting up your own host.
Thanks for your reply! An enjoyable exchange in the midst of what often feels like a bit of a very tiring flame war.

I am constantly on the lookout for languages that could be suitable for replacing (or greatly diminishing) the use of C/C++ in my work, and so far Rust is one of the front runners.

However, I am also very much aware of some of the troubles I would most likely face in convincing my colleagues, like language complexity and productivity, and I completely respect the decision that it may not be worth it, depending on a wide variety of factors.

I try to keep an open mind, and I look forward to reading more about the improvements to Nim you envision! Thanks again (and good night). :)
The .NET shell does this, but that's why it's not Unix, and it's not universal.

If programs passed data structures then either you're forcing a certain data structure model (i.e. it's not universal, because it's not compatible with anything else), or your data structures are so general (i.e. a block stream) that your applications are going to be parsing anyway... and that's going to be even nastier than if everything was stupid text steams in the first place.
I didn't mean to imply it was a choice of current government versus no government--my post was a limited response to the idea of the state being the most dangerous thing. I think it's tremendously important to constantly strive for better government.

As for solutions:

> Today, every email in your inbox, every text, every cell phone GPS coordinate, every draft in your drafts folder is plaintext in a big database.

And whose fault is that? The government didn't create SMTP, SMS, webmail, etc. You can't have privacy from the government without creating a culture of privacy. We have a culture where people share extremely intimate information with their thousand "closest friends" via Facebook, Twitter, etc. People are not going to trust the government less than their random acquaintances, and people aren't going to demand privacy from the government unless the culture shifts such that they value privacy in other aspects of their lives.
Very directional antenna, fast scanning servo gimble, oculus rift... hmmm.
The dark side of the press trivialiasing an issue, opening the Overton window...
Maybe my years (I'm over 40). I tend to ask for estimates I didn't create, and call bullshit when I have to. People believe me, because I back my claim up with a lot of experience and anecdote.

Also estimation and agile do work, if done with some forethought - I wrote about that here: https://www.wittenburg.co.uk/Entry.aspx?id=db2d81dc-c435-42c....
A naive application of Nyquist sampling theorem will say you have to sample at twice the frequency of whatever you're trying to reconstruct - so for 2.4Ghz you need to sample at at least every 6.25cm. The reason why you can't just use the base frequency is cause... well, for example, imagine you have the worst luck ever, and only ever sampled the nodes of the standing wave - it would just look like no signal.

In practice... I have no idea. RF is too much for me.
The problem is, most organizations start at the network rather than focusing on the application tier. In the development of applications, they should be designed to work safely within a very hostile environment. Far too often they are not.
Well, the question you imposed reminds me of myself going through this problem.
Advantages of doing multi-tasking: you learn new skills and gain high confidence. Disadvantage of learning multitasking: you have to master only one at a time and it requires lot of patience.

Einstein once quoted: To do multiple things,the only solution is to do one by one.

Practically:
1. Start meditation, do it five minutes morning and evening and steadily improve for doing 20 minutes at least.(reduces stress, improves focus and gain high confidence)

2. Pick one subject and make it a ritual of studying only for that period of time.

3. Be in a process than thinking about results, trust me it will automatically fall into the places.

4. Constraints are not your enemy ( you have only 20 mins to read, make that 20 mins work of art.)

5. Don't let your thoughts make you believe what you are doing is not right. Have faith on yourself, it is all thoughts game. Master over your thoughts.

~Cheers!
Also see: http://www.nearfield.org/2011/02/wifi-light-painting
> The choice of a pure functional language like Haskell to do lots of IO seems like a strange choice

Can you tell me what a program which does no I/O actually does?

I can tell you what it does in Haskell: nothing. Without IO, there would be no reason for a computation to ever run in Haskell (or in any other language, but Haskell will actually NOT run it). Every Haskell program does I/O.

I know when I first heard about functional programming and Haskell in particular, that ideas like purity, no side-effects and immutability seemed absurd. "But, but - the programs I write always do I/O and manage state!?" So do Haskell programs, they simply do it differently. If a program had no side effects it would have no purpose. Please do not assume that the tool used by an entire community is not well suited to building programs that have a purpose.
I know there's some debate over it, but I think it's important to teach the general concept of a Monad first, before attempting to teach IO.

Ask yourself: why does everyone write a Monad tutorial after they understand Monads? It's because they seem obvious in _retrospect_. The only tutorial I've seen that's anything like approaching a "works for everyone" tutorial is "You could have invented Monads".

As to your specific explanation, I think it falls down with IO ().
I'm curious if combining this with Google's Project Tango for accurate 3D pose estimation would be useful for doing a handheld 3D mapping of an area. Add an additional camera to the tablet, have it point at an array of these sensors, and use it to sweep out regions of space quickly.
That information can back up an innocent suspect’s story, or it can be used to nail a guilty one."

Except not that first part. That's the part prosecutors sweep under rugs.
fwiw I've seen kanban work extremely well but never scrum
Some additional GUI toolkits with which 7GUIs could be implemented:

- UIKit with AutoLayout (iOS, Mac OS)

- JS/HTML/CSS with Flexbox and/or React (web)

- XAML/WPF (Windows 8, Windows Phone, Xamarin.Forms)
My favorite are the comments like:

1:12pm line 33: Why are you doing this?
1:13pm line 33: I see, sorry, ignore my earlier comment.

A system that lets you draft comments and then send them out in a batch can avoid a bunch of noise. On the other hand, though, people who aren't expecting it can get stuck with draft comments they don't send out.
>It has? When?

A precise example: "the Stasi" in East Germany during the 80s.
Judging the ecosystem is fair in the same way that Java is lumped together with the reams of j2ee, spring, AbstractFactoryFactory sort of libraries that it yields.

For better or worse, switching to Haskell does entail asking yourself how hard it'll be for your team to become comfortable with things like http://learnyouahaskell.com/functors-applicative-functors-an...
Future me probably understands this...