The Liar's Walk: Detecting Deception with Gait and Gesture - <AUTHOR> https://arxiv.org/abs/1912.06874 <comment><USER2> >However, in the deceptive condition, the confederate is wearing the same hoodie with the hood pulled up while wearing sunglasses.

Yikes. Anyone getting a feeling of some racial bias in this experimental setup?

[https://www.dailytarheel.com/article/2018/04/diversity-0426](https://www.dailytarheel.com/article/2018/04/diversity-0426)

>As of fall 2017, UNC-Chapel Hill had a 7.8 percent enrollment rate for Black students, one of the lowest in the state, while just over 22 percent of residents in North Carolina are Black.

Not to mention, there doesn't seem to have been any _control_ in this experiment. What a bunch of nonsense. These students were told to act sketchy, and predictably probably hammed it up to please the experimenters (see: they stuck their hands in their pockets, looked around a lot, etc).

<comment><USER3> You are entirely right.

I am scared that our "AI" (really ML) future will be ML trained from bad data and it's pre-crime-fun for anyone that just acts a bit weird or tries to not stand out too much.

I hope there are enough people like you in the institutions where it matters to be all "hey, wait a fuckin SECOND here".

<comment><USER4> Yeah, like people with high functioning autism spectrum disorder who need to mask themselves. Or people with anxiety disorders who may just freak out internally about looking nervous. Lots of examples.

<comment><USER5> I have autism (previously diagnosed with anxiety disorder), so I thought I'd fit this one, and indeed I do. I wear hoodies (pref. ski sweaters) practically throughout half the year. They help prevent rain and cold on my head, and allow me to reduce external senses. Ski sweaters allow me to protect my hands from cold and dirt.

I also wear glasses which color with the sun (not like dark sunglasses) but work normal inside. When I go outside, I hardly notice the difference with regards to light. I'm not sure what the effect is on blue light filters etc.

I wasn't aware of a racial bias regarding hoodies (I'm what Americans call Caucasian white, but European).

</comment></comment></comment></comment><comment><USER6> This seems sorta unethical, like this could very easily be biased against one group by training data. Then if this were rolled out to a Target, they could use this to profile people and just point to the "algorithm". Oh, the computer says you look "shady", you can't shop here...

<comment><USER7> Phrenology in the Cyberpunk Age

<comment><USER8> Phrenology ideas were junk but that doesn't mean that looking at people you learn nothing. For example, the brain size is 0.3-0.4 correlated to IQ.

<comment><USER9> And since IQ is an almost meaningless measure, so is brain size!

<comment><USER10> Meaningless to whom? Do we have a better intelligence metric these days? ... or is this satire?

<comment><USER9> The fact that we don't have a good metric of intelligence doesn't make iq a useful measure of intelligence.

IQ is only useful in determining pathologies, at the lower end, where any test is usually helpful. For anything else, it's almost entirely snake oil.

If you want to know whether someone is good at something, the best way to test that is to do a test for that particular thing. A test for general inteligence, based on the assumption that general intelligence aptitude is normally distributed in the population, is just not good for anything, and is unlikely to be a reflection of reality, it's pure scientism (instead of science).

</comment></comment></comment></comment></comment></comment><comment><USER11> Lying/deceiving about what?

Also: what does "we recorded many participants performing tasks involving deceptive walking" mean? Does this AI detect those who perform deceptive walking, or people who are actually deceptive walking?

<comment><USER12> They had participants carry a folder between two points, one contained papers and one contained money that they were told to conceal and hand off to a person wearing a hoodie and sunglasses. They compared the way the participant walked.

<comment><USER2> You missed the key part of the experiment: They basically completely changed the experimental setup between the two runs: The confederate changed how they were dressed, the item was on the floor instead of on the table, and, most importantly: they told the participant to hide what they were doing and otherwise act sketchy!

So yeah! No surprise! They told the participant to act sketchy, and they did! What did the participant do? They put their hands in their pocket and looked around a bunch more than normally. Why? Because they were basically told to! That's not "deceptive walking".

Where is the control for picking up the papers off the floor, or the money off the table? How do we know it's not just that people will walk differently when they are about to crouch down? Maybe that would be an interesting paper by itself, but instead the authors think that this type of research is capable of identifying _" deception"_ with 93% accuracy? Absurd!

There is so much wrong with the experiment, that you could write a rebuttal of almost every decision they made.

<comment><USER13> You're not kidding. "In this procedure, the deceptive walk is induced by the _experimenter during the briefing_ , the type of object, and the appearance of the confederate"

This is not deceptive walking, this is honest walking. They are honestly trying to broadcast the signal that they were told to broadcast.

</comment></comment></comment></comment><comment><AUTHOR> TLDR of this paper is here [https://twitter.com/jackclarkSF/status/1207474543368912896](https://twitter.com/jackclarkSF/status/1207474543368912896)

<comment><USER14> I think the 'Phrenology's back, baby' comment in the thread below captures it quite well. Aside from the ethical implications of designing a camera that automatically classifies people as suspicious based on their gait, what the paper appears to actually cover is that an ML process can accurately classify the movement differences between people walking towards a chair to pick up some papers on it and people walking towards a chair to pick up some money under it...

</comment></comment><comment><USER15> I'd certainly hate to be convicted of deceptive walking. The punishment is probably something like 5 hours of honest walking per day.

<comment><USER16> You can offset the deception classifier by 31.87% by putting in two bananas in front pockets of your jacket. Nobody knows why.

</comment></comment><comment><USER17> Figure 1. illustrates the results of an LSTM that's sexually attracted to tall muscular guys, accusing everyone else of being deceptive.

> _Deceivers put their hands in their pockets and look around more than the > participants in the natural condition._

Doesn't it depend on _context_? If I recall correctly, one of the main giveaways that lead to the identification of the Boston bombers was precisely their composure during the whole situation, which investigators deemed "off" in _that_ context and made them persons of interest.

> _Each participant was randomly assigned to walk either naturally or in a > deceptive manner, as described below._

So it's like training a "terrorist detection" system by asking your buddies to act "terroristy"? The experiments trains on people displaying behaviors they think convey deception, while deception really tries to convey deceitful behavior.

A better experiment would have been not telling the subjects about the nature of the experiment. Then create a situation where there's a real incentive for the subject to be deceitful. An example would be an experimenter explaining there's a payout for the experiment. The payout must be either monetary or something related. Like saying the study will be at some exotic location, all accomodations taken care of, for a month, and you can bring your significant other.

Then stopping on one answer in particular that disqualifies the subject from the pool of people eligible to that payout.

And then explaining that the experimenter will let this slide but their colleague will probably not; they then instruct the subject and coach them on what they need to avoid saying on several points and before they're done explaining, the "colleague" enters the room and starts going through the checklist.

Now you have incentive to be deceitful and a slightly less crappy experiment than asking people to be deceitful.

</comment><comment><USER18> "Faster. Slower. How We Walk Depends on Who We Walk With, and Where We Live — Men tend to walk differently with other men than with women. And Americans walk faster with children, whereas Ugandans move more leisurely."

[https://www.nytimes.com/2018/09/19/well/move/faster- slower-h...](https://www.nytimes.com/2018/09/19/well/move/faster-slower-how- we-walk-depends-on-who-we-walk-with-and-where-we-live.html)

Article is a summary of this paper ("Children are not like other loads: a cross-cultural perspective on the influence of burdens and companionship on human walking"):

[https://peerj.com/articles/5547/](https://peerj.com/articles/5547/)

</comment><comment><USER19> Congratulations, your AI model can differentiate people intentionally play- acting "deceptive" from people intentionally play-acting "non-deceptive"

After a few years of convtroversry about the low repeatability low-N psychology research published peer-reviewed journals, now we're sharing and upboting non-peer-reviewed non-published psychology papers?

</comment><comment><USER20> I can't believe something like this would be effective against say pickpockets: people for whom an illicit activity has become commonplace in their lives and become natural.

<comment><USER21> pickpockets do have extremely regular patterns however, I could definitely believe an AI identifying potential pickpocket groups.

</comment></comment><comment><USER22> Aka, kenematic phrenology. Cmon hn. We are better than this.

<comment><USER23> That's probably why the comments are highly critical and not supportive of this idea.

</comment></comment><comment><USER24> I grew up on boats and docks. I noticed as a kid that dogs on boats could differentiate people walking on a dock without seeing them. The dogs would become alert and start barking when they heard someone who wasn't normally there. I still wonder if they detect known gaits or the gait of someone who is not walking with a purpose.

<comment><USER25> They almost certainly used their sense of smell to detect unknown people as well.

<comment><USER24> I agree, but I was struck by how a dog and I would detect a person at the same time, hearing them walk along the dock. The dog could tell if the person should be there. I could not. Because the dog perked up at the same time as I heard the footsteps, I assumed it was the sound that the dog was using.

<comment><USER26> The other thing with dogs is that they are empathic and attuned to you. Sometimes they are reacting to what you are communicating to them, before you are even conscious of it.

</comment></comment></comment></comment><comment><USER27> Of course, they didn't go on to generate "deceptive walking" in the wild. They generate video or pictures as deceptive or non-deceptive and they are able to distinguish the generated stuff without labels once they'd trained a network with labeled data.

This might (or might not) serve to prove that these deceptive gestures do exist. The problem of even this is are that there may be a zillion cue characteristic of the subjects being given their directions.

But even if such gestures exist, it seems pretty given that this would be overwhelmed the complexity of images captured in the wild, where many other variable govern behavior.

</comment><comment><USER28> There's an anime called PsychoPass which explores this kind of tech applied widely in society. It's very well done.

</comment><comment><USER29> I am glad someone is finally tackling the problem of deceptive walking.

</comment><comment><USER30> Does it take into account anxiety as contributing to gait and posture?

<comment><USER31> I didn't see any distinction between types of "deception" in the paper which means it's classifying things like social anxiety and generally self-conscious behavior as deceptive. While strictly true it makes the algorithm useless for detecting security threats at this stage.

</comment></comment><comment><USER32> Made me think of the whole _labrador dogs cannot hide guilt_ thing, which is hugely anthropomorphic but it feels like it should be true: if they learned how to model positive and negative human emotion to communicate with us for their advantage, they probably learned shame as well.

Reddit is awash with videos of Labby dogs doing a really bad job of saying "I didn't do it" or of dobbing in the innocent puppy, or whatever.

</comment><comment><USER33> Can't wait for this to become the next polygraph: not admissible as evidence, but extremely useful for coercion and extracting false confessions!

</comment><comment><USER34> Aren't these kind of ideas applicable only until they are identified? Once this become common knowledge it will just adapt.

</comment><comment><USER35> Somebody needs to burn down the soft "sciences" and start over. As the other commentors pointed out this a mockery of empiricism and will do real harm when it gets parroted by law enforcement world-wide.

</comment><comment><USER36> Is this actually either under review or a forthcoming paper somewhere reputable?

</comment><comment><USER37> While I could point out several questionable aspects of their methodology, I'm even more troubled by the complete absence of the word 'ethics' from this paper.

Do the people working on these projects never reflect on the ridiculously broad scope of the capabilities they're claiming, the multitude of possibilities for false or inappropriate positives (eg people who are trying to conceal their emotional states, but for wholly valid reasons), the abuses that will be committed by over reliance on such technology and rationalized with spurious claims of objectivity, and the overall rush to make public spaces and the world at large into a giant prison camp where techno- utilitarians pass judgement on the rest of the human race?

Almost every paragraph I look at in this paper makes me roll my eyes. A small sample:

 _We recruited 88 participants (51 female, 30 male, 7 preferred not to say, age = 20.35) from a university campus._

Wow, fantastically diverse sample.

 _In the deceptive condition, the participant is supposed to conceal their activities from these "onlookers." The experimenter stresses that [an experimental prop] is a secret, and because of the amount of money involved, it is really important that the participant keeps anyone from noticing as he /she does these things [with the prop]. In the natural condition, the confederate is wearing a hoodie with the hood pulled down. However, in the deceptive condition, the confederate is wearing the same hoodie with the hood pulled up while wearing sunglasses. Because of this setting, the participant makes a deliberate attempt to conceal his/her activities, resulting in deceptive behavior_

 _We use these findings and consider the following set of gestures:{Hands In Pockets, Looking Around, Touching Face, Touching Shirt /Jackets, Touching Hair, Hands Folded, Looking at Phone}. We chose this set because it includes all the hand gestures observed in the walking videos of participants, and these gestures have been reported to be related to deception_

 _Figure 7. Gesture Features: We present the percentage of videos in which the gestures were observed for both deceptive and natural walks. We observe that deceivers put their hands in their pockets and look around more than participants in the natural condition._

So you got a recruited a bunch of college students and then told some of them to be super-covert while dealing with someone dressed up to look like a stereotype of a shady person, but somehow you imagine this will give an 'honestly deceptive' result that accurately reflects the behavior of deceptive people, rather than the awkward-embarrassed parody of deceptive behavior from someone who feels they're playing a silly game.

Besides all the ethical pitfalls, their research is bad. It's like trying to predict crime based on the observed behavior of people in a school drama class putting on a play about cops and robbers. This is why we have so much of a problem with junk forensic science.

</comment><comment><USER38> What exactly is "deceptive walking"? I've never heard this phrase before reading it in the abstract

<comment><USER39> It is probably defined by The ministry of the silly walks

</comment></comment><comment><USER40> Seems like the perfect kind of content for one of those 2 Minute Papers videos.

<comment><AUTHOR> see the twotter thread shared below.

</comment></comment><comment><USER41> I wonder what this AI would say about Kevin Spacey in The Usual Suspects...

<comment><USER42> Once he starts dragging his foot I assume he'd fall into the deceptive category

</comment></comment><comment> the-peter "Keyser Söze detected with 98% confidence"</comment>


Ask HN: What's the difference between "programmer" and "developer"? - <AUTHOR> And when to use which one? <comment><USER2> I've always viewed myself as a developer. I know how to very effectively and efficiently put pieces of already written code and libraries together to build new products. I say I'm not a programmer, because I feel that requires more lower down knowledge and implementation details.

From my experience, a programmer/engineer can build a very efficient reverse tree sort doodad, and it come out PERFECT awesome, but they rarely build entire products. Then a developer/architect comes along and takes that brick and sticks it alongside a bunch of other bricks to release a product.

<comment><USER3> I remember when I had just gotten back into programming and I was adding it to my resume. There is a lot of terminology that could be so different, or it could mean the same thing.

Developer Programmer Software Engineer Software Specialist Coder Webdev Dev

We can go by so many different names and I really feel that they all essentially mean the same thing. It could all be about keywords too. Take your LinkedIn profile and add all those keywords, and you will have LinkedIn emailing you that people looked at your profile. I think its all a matter of choice or the position that your company names you.

</comment></comment><comment><USER4> Back in the ancient times of the 90's there were no developers. You were either a programmer or a systems analyst. Programmers wrote the code and Systems Analysts gathered requirements and designed the overall system specs, over time those two jobs kind of merged into what a we call developer, giving the Programmer/Coder much more say into what an overall system will look like/behave than before and ultimately reducing the head count. At least I think that was the idea.

 __EDIT __: Another interesting point is that originally programmers were more specialized and dedicated to a single set of tools /languages while developers, when they first appeared, were more concerned with "developing" the ideas into a useful system and writing it in whatever language got the job done faster. Now today pretty much anyone with any skill set calls themselves developers but you see more old timers calling themselves programers.

</comment><comment><USER5> Some people think of a programmer as someone who can write code; and a developer as someone who can develop solutions.

The difference being that the developer is expected to be able to identify problems to be solved and the solutions to the problems, in addition to implementing them. The programmer is told what the problems and solutions are and only needs to be able to implement them.

However, not everyone makes any such distinction, and in the vernacular the terms are basically interchangeable. If someone uses one or the other term, don't assume they make that distinction; assume they're just talking about someone who can program. If you see one or the other in a job title or description, you will still want to speak with the hiring manager to understand the scope of responsibilities.

</comment><comment><USER6> Unless there is a "Senior" tag on the title, usually Programmer/Developer/Engineer/Hacker/Coder are pretty interchangeable across the industry.

That said, some companies do differentiate, so it pays to really read the descriptions.

</comment><comment><USER7> Company A calls the people who build sofyware programmers. Company B calls them developers. This is the difference.

</comment><comment><USER8> Plus coder, software engineer, dev. It's all the same really. Like film vs movie.</comment>


Simplistic programming is underrated - <AUTHOR> https://lemire.me/blog/2017/12/06/simplistic-programming-is-underrated/ <comment><USER2> I don't think it's underrated; it's that it's hard to write.

You almost go full-circle. You start off writing highly procedural code (with too much branching), join the GOF-all-the-things religion and eventually revert to highly procedural code (more specifically "algorithmic code" or "functional code").

As an example, many years ago I wrote a dependency resolver. It needed to find cycles (as we had some rules that could resolve those cycles) in order to make changes in the correct order. At the time I was a junior developer in that problem space. My solution consisted of an O(scary) algorithm; consisting of classes, patterns and all the good things that make your code "simple" and "understandable" (it was not). Customers eventually threw graphs with a few million edges at it and we needed a new solution. I have no idea how I happened upon Tarjan's Strongly Connected Components Algorithm but some hundreds of lines of code was replaced with dozens. Minutes turned into milliseconds.

Here's the thing about simplicity: even though the code was simple, even I (as the author) didn't understand it at the time - I trusted the guy with the PHD. Many years later I finally understand how it works. It is an incredible masterwork of simplicity but as it turns out something that is simple is not always understandable.

Simplicity probably has a simple definition in the dictionary, but in practice it can be quite complex to make something simple. So you can't just say "make your code simple" because it's really hard to do that.

<comment><USER3> I agree. There seems to be two interpretations of "simple" \- simple in being concise like that of a beautiful mathematical equation, or simple in being easy to follow and understand. I assume the latter is preferable when factoring in having other pairs of eyes reading/maintaining your code, especially since the latter does not always imply less efficient code

<comment><USER4> Actually, I think the interpretation of simplicity as ease is an awful thing in the context of programming and should be actively discouraged. Rich Hickey's talk "simple made easy" is the best explanation I've ever seen of this.

</comment></comment></comment><comment><USER5> There is a major problem with how programmers are judged.

Say you are given a seriously challenging and apparently problem; that is to say the naive approaches are all hideous train wrecks. You work on it long and hard, until you have a key insight that allows you to implement the simplest most elegant solution.

Now a naive observer will look at it, say well that's obvious, and then ask why you wasted a week to write 40 lines of code.

<comment><USER6> Anyone who thinks more lines of code equals better software should not be working in this industry. Hopefully the naive observer you're referring to would be someone with no background in software development

<comment><USER7> > someone with no background in software development

These people are often management, unfortunately.

</comment></comment></comment><comment><USER8> _Your apparent mental prowesses will fail to impress those who find it easy to do the same. I have met my share of college students and professors who excel at dropping the name of a few philosophers, at using words only 1% of the population knows about… but, at a certain level, it does nothing for them. People simply roll their eyes and move on…_

Solid life advice.

<comment><USER9> My pet peeve on HN is people writing comments like they're gonna be peer reviewed. Either the less common words that they use are obviously out of place like someone just discovered a thesaurus ( _conflated_ is my favourite example), or it's consistently formal and quasi-academic so I have to put extra effort into reading it. Either way it just makes the authour sound like a pretentions wanker.

<comment><USER10> Yep. "Orthogonal" is one of my favorites. Along with "order of magnitude".

<comment><USER11> "order of magnitude" is a pretty useful concept, to be fair.

<comment><USER12> But it's twice as long as saying "ten times."

"The server is an order of magnitude faster than our old one."

"The server is 10 times faster than our old one."

\--

More often heard: "The server is an order of magnitude more performant than our legacy server."

</comment></comment></comment></comment></comment><comment><USER13> First, you're not stupid/dumb/whatever.

This idea of simplistic programming obfuscates the reality that the enterprise of software programming is one of the most complex endeavors humans have undertook. We desire simplicity because the reality is terrifying: that programming is far too complex for us to manage. That we're not smart enough to keep up. If we keep on using simple tools this reality will only continue to get uglier.

When I first started programming it was all PEEK, POKE, GOTO 10. Life was simple. Single processor, some registers, main memory, and an incredibly slow disk drive. Mastery could be achieved with a book and a few weeks off in the summer.

Since then I've worked on Mozilla, Linux, Openstack... I've written interpreters and JIT compilers, graphics engines, REST APIs, databases, eventually consisted distributed programming systems... it has only exploded in complexity.

A modern computer is a microscopic distributed system. There are no less than four cores in most computers. Several hierarchies of caches. Multiple channels between cores, main memory, and other buses. There's a clock in there that's probably wrong and an application that is running and coordinating over the terribly slow network with other processes running on other computers... it's a bit much to take in.

And yet we manage to ship software constantly.

We can do that because of abstractions.

Some abstractions are harder to understand than others. Some are made up by other programmers and given strange names and come loaded with a bunch of jargon. Others borrow theirs from existing literature like, say, mathematics.

I think more programmers are becoming interested in functional programming techniques and are learning to get over the hump of learning them because they care deeply about reliability, correctness, and expressiveness and they still want to write quick, simple programs.

You can write 4M lines of carefully crafted C and hope you didn't miss a case or off-by-one error. And that you wrote the logic correctly.

Or you could write 30k lines of Haskell and know that only errors in the logic will be present at most. And with a little more effort you might even be able to encode your propositions in your types and cover your bases there too.

It might come with a lot of jargon and seemingly-impenetrable concepts but it's worth learning.

</comment><comment><USER14> Simple vs. non-simple isn't the best way to think about code.

Rather I would think about the requirements of the code. Who is going to be reading it? Maintaining it? Do advanced language features give some kind of advantage (runs faster?, less likely to have bugs?, more extensible?). Will new team members likely introduce bugs? Is spaghettti code better or worse than using less known patterns/language features?

Don't use advanced language features in production code for these reasons: (i) impress people or (ii) develop your CV.

Don't avoid using advanced language features just because someone wrote a blog post saying it's a bad thing to do.

In a nutshell: Think.

<comment><USER6> The whole idea of calling functional features advanced language features is a bit ridiculous I think. Yes, something like java only recently started supporting functional programming, but the paradigm has existed for a very long time.

<comment><USER14> For me it is how those functional features are used that one needs to be careful of. I like the idea of the code that you read and think "yep that's right", rather than - OK I need half a day and a whiteboard to understand this.

However the exact same piece of code might be wrong in one team, and right for another, depending on their experience and backgrounds.

</comment></comment></comment><comment><USER15> The blog post barely gets into the idea of what simplicity means in programming.

If you have any interest in the topic, I recommend Rich Hickey talk "Simplicity matters" [https://www.youtube.com/watch?v=rI8tNMsozo0](https://www.youtube.com/watch?v=rI8tNMsozo0)

My personal favorite is: Living with complexity 2010 by Don Norman (Author of Design of everyday things)

[https://www.amazon.ca/Living-Complexity-Donald- Norman/dp/026...](https://www.amazon.ca/Living-Complexity-Donald- Norman/dp/0262014866)

</comment><comment><USER16> I really liked this, because it resonates with my approach.

I think I first realized the basics of this some time in college. As a teenager around '96 I discovered IRC, and hung around chatrooms being, well, a teenager. I discovered smileys, & how 2 use abbrevs to pack more in < chars. Also 1337speek... Only a few years later did I realize that what was more impressive was being able to (just as quickly) form clear complete sentences.

Also related, Pascal's comment in a quickly-written letter to a friend: "I would have written a shorter letter, but I did not have the time."

Also related, Kernighan's quote on debugging: "Everyone knows that debugging is twice as hard as writing a program in the first place. So if you're as clever as you can be when you write it, how will you ever debug it?"

Ultimately, I must admit that I still try to show off in my work and presentation, but I have learned that a work that is beautiful by its simplicity and humility has way more staying power than a complicated and sophisticated one ;)

<comment><USER17> > Only a few years later did I realize that what was more impressive was being > able to (just as quickly) form clear complete sentences.

What's even more impressive still is knowing when to use which rather than locking yourself into a prescriptivist hole.

</comment></comment><comment><USER18> I agree that overcomplicating code is bad, but then again, what is "simplistic"?

Let's talk Python. To me, using comprehensions is way simpler than loops. Using

      for i, item in enumerate(my_list):
        # do some stuff with i and item

is way simpler than

      for i in range(len(my_list)):
        # do some stuff with i and my_list[i]

And still, I bet that most C/Java folks will look at these things with disdain.

Also, higher-order functions. They do sound strange, at first. And yet they're a great tool to combine simple pieces of code. I'm starting to think that "elegance" is just the ability to build complex interactions of simple elements. Think chess, or languages like Lisp and Smalltalk, or Euler's identity.

<comment><USER19> The first is Pythonic code. I'm guessing the author isn't talking about conventional code, but a more agnostic point of creating complexity for complexity sake, which, unfortunately, is a very common issue.

The other way can also be a problem. If you are manually writing out range(len(stuff)) in Python on all your loops, you are writing code that is complicated, overly verbose, difficult to understand, and error-prone.

<comment><USER20> Actually I don't think he was successfully making that agnostic point.

It's more like: don't gold plate it, and don't use abstractions that you learnt later.

Not gold plating things seems obvious. I think there's a TDD advocate who has an example of when he created a wiki that stored its data in a text file. Purely by accident. But it worked perfectly for his use case; he didn't actually need to fire up the latest distributed NoSql blah blah blah. And perhaps that's something worth considering.

Not using abstractions learnt later in life tho. I think that's a problem. It took me years of contorting my head to fit in some of the customary Haskell abstractions like monads and functors. Today I probably couldn't describe them accurately, but I'm sure I benefit from when I think in terms of them. For instance, it seems that the code is better if I write a method which accepts an object then does something, vs writing a method which might accept an object, then tests for null, and if not null it does something. (And similarly for looping constructions for instance. You write a more superficial level of code that knows about nulls or arrays and a deeper level of code which doesn't. Directly thinking "monad" literally helps me here.) It's simpler, but it's not at all more simplistic.

And so at this point, I want to distinguish between complex/complicated and simple/simplistic. Things which are complicated or simplistic are bad because they're simpler or more complex than they should be. Things which are complex or simple are inevitable and complaining about them is unproductive, like complaining about the weather.

</comment></comment></comment><comment><USER21> "Mr. William Faulkner got into the act by observing that you never crawl out on a limb. Said you had no courage, never been known to use a word that might send the reader to the dictionary."

"Poor Faulkner. Does he really think big emotions come from big words? He thinks I don't know the ten-dollar words. I know them all right. But there are older and simpler and better words, and those are the ones I use. Did you read his last book? It's all sauce-writing now, but he was good once. Before the sauce, or when he knew how to handle it."

[https://quoteinvestigator.com/2016/01/26/dictionary/](https://quoteinvestigator.com/2016/01/26/dictionary/)

</comment><comment><USER22> I've been thinking about this lately, too.

I strongly believe this, to the extent that I have a preference for code which is simple but incorrect over complicated but correct.

Obviously simple and correct is best, but if I can't get that (at least in the short-term) I would sacrifice correctness for simplicity.

You can often incrementally improve a simple solution, but it is very difficult to simplify a complicated solution.

<comment><USER12> [https://en.wikipedia.org/wiki/Worse_is_better](https://en.wikipedia.org/wiki/Worse_is_better)

</comment></comment><comment><USER23> Discarding previous knowledge where it is applicable and simpler is obviously unwarranted. Similarly to how we utilize Newtons laws within a lower energy and mass range, we should prefer the simpler equations where they make sense. However, I'm not sure that a for loop is actually simpler than map reduce as it depends on the context. Who is reading your code? How complex is the code inside the for loop? What kind of problem are you solving? The vocabulary associated with functional programming is better equipped to handle mathematical expressions than imperative code and in this case, simpler.

In essence; adding complexity for the sake of complexity or to come of as intelligent is bad...

</comment><comment><USER24> I've been working on a project lately that was designed by a really smart guy. It follows the OOP patterns and IoC and all of that. Trouble is you can introduce such complexity that maintenance from someone a few years later can get incredibly difficult. A lot of this code I'm working in has implicit dependencies that are really hard to trace w/o stepping through line by line. If the code was more explicit, maybe it would offend the ideologists, and maybe it wouldn't be as flexible as it is (debateable), but it sure as hell would be easier to maintain.

</comment><comment><USER25> "If I had more time, I would have written a shorter letter."

It sounds like the author is conflating sophistication with complexity. In my experience, "simplistic" programming leads to _greater_ complexity. It is the very sophistication and use of more advanced programming and structural patterns he rails against that in fact enables concise, maintainable code.

</comment><comment><USER26> Nice article. Code is written for the maintenance programmer to understand. Simple is better.

</comment><comment><USER27> I think the sentiment is also true for devops/infrastructure. I like to use the term "minimalistic" instead of simple, because I think some people associate simple with naive and slapshod.

<comment><USER12> I like minimalism too, but people associate that with laziness. You can't win!

</comment></comment><comment><USER28> Good thing I have zero interest in functional programming and other cyclical fads. I just concern myself with keeping my code understandable, maintainable (with the help of my teams) and tested.

</comment><comment><USER29> "Simplisticity" is in the eyes of the beholder. (Many serious programmers see the C++ template language as overly simplistic.)

</comment><comment><USER30> > I like the concept of "simplistic programming" by which I mean "programming > that is so simple that people will criticize you for it". At first, that > sounds strange… can we really get criticized for being "too simple"? Of > course, we do.

Oh man, this hits home.

I've attempted to be a voice of reason on this front so many times, I've practically given up on it. I've come to the conclusion that most programmers suffer from an intellectual Napoleon complex (which I've seen in academic Philosophy, as well). I've argued for the use of simple "for loops" in lieu of complex map-reduce logic, argued against overly-complex threading logic where threading wasn't necessary, argued against using Spark where the dataset was so tiny, it could be handled by my iPhone. All my suggestions often fall on deaf ears. The counter-argument tends to be some contrived edge-case which (by that point in the discussion), I'm simply too fatigued to argue against. I've lost this war of attrition many (many) times.

The irony is that most OSS code tends to be "so simple it's dumb" \-- why? Because simple code is easy to contribute to! I think if more professional programmers actually looked at _real_ code outside of their corporate Bitbucket, working as a programmer would be much more enjoyable.

<comment><USER31> Is map-reduce really less simple than a for-loop? I agree with your other examples, but I see these too things as totally equivalent (unless you're in a language that make a dog's dinner of this type of thing, like old C++).

<comment><USER30> I think so, consider[1]:

         var r = array.map(x => x*x).reduce((total, num) => total + num, 0);

vs its for-loop counterpart:

        var r = 0.0;
        for (var j = 0; j < array.length;j++){
            var x = array[j];
            r += x*x;
        }

Maybe I'm just not as smart as everyone else, but I only have to keep like two things in my mind when looking at the for loop (easy), whereas in the map- reduce case, I need to have a very "holistic" view of what's going on (hard).

[1] [https://stackoverflow.com/questions/17546450/for-array-is- it...](https://stackoverflow.com/questions/17546450/for-array-is-it-more- efficient-to-use-map-reduce-instead-of-foreach-in)

<comment><USER32> This is interesting to me because the map reduce has _way_ less cognitive load for me.

With map reduce I see the following:

\- We've got an array

\- We're going to loop through it and square everything

\- We're going to take that and add it all together

\- The result is r

When I read the for-loop counterpart:

\- We have a variable called r that we're initializing to 0

\- We're starting a loop with j as the index initialized to 0 iterating through an array

\- We've got a variable x on each iteration that is the current position in the array

\- We're adding the square of x to r

Maybe it's a personal quirk. for-loops make me feel stupid.

<comment><USER33> The main advantage that I've seen when writing and reading functional instead of procedural/imperative code, is that the intention is usually clear.

We have a list of numbers that we want to square and add up, instead of the more mechanical steps with the loop approach.

</comment></comment></comment></comment></comment><comment><USER34> Can these experts advocating "simplicity" offer a concrete way to measure it?

</comment><comment><USER35> I think we teach Newton's 3 laws because they are largely correct.

</comment><comment><USER36> Sorry for my little pedantic observation:

The author wants the word "simple" here, not "simplistic".

The reason I even bring it up is that simplistic means overly simple, and that's a real problem in software development in my experience.

Overly simple means you aren't actually dealing with significant issues the problem space. If anyone ends up using your simplistic software, they will have to solve the problems you ignore in a non-optimal way.

Simplistic -- overly simple -- is the flip-side to overly complex and can cause just as many problems since it pushed extra complications elsewhere.

What we'd like is software that is as simple as it can be, but no simpler.

<comment><USER37> I think he _does_ mean "simplistic." He means "so simple that people criticize you for it" which lines up with simplistic.

</comment></comment><comment><USER38> Kiss rules are good for lifestyle and everything!

</comment><comment><USER39> "If you can write a program using nothing but the simplest syntax, it is a net win."

In other words, write everything in Brainfuck FTW? Seriously?

<comment><USER40> That's not simple. It's a very minimalistic syntax, but it is definitely _not_ simple.</comment></comment>


Ask HN: Review my website (dog owners) - <AUTHOR>

http://mydogbarks.com
Website where you can upload the picture and the bark sound of your dog. Every dog has a public profile with some data.
I'm looking for feedback from dog owners regarding features that I could add to make it more interesting. <comment><USER2> Would be cool to allow people to assign a hot-key to a selection of barks, so they could create a soundboard of barks.

Other simple things would be "visualize this bark" where you have an audio waveform display of the bark (this has got to be easy to do programmatically) and possibly also a mechanism to categorize the barks by pitch or note. Then a user could find a dog with a deeper (or yippier) bark.

<comment><AUTHOR> Could you explain what you mean by a hot-key to select the barks? I think, regarding the barks, there's a huge setback. People don't have the sound of the bark and don't know how to record it. But you gave me an idea. I could have some types of barks predefined and people could choose the one that is most likely to be their dog's. What do you think?

</comment></comment><comment><USER3> Cool site. You need more content about the site and what it is (as mentioned already). Also the email link on the bottom right is broken. Perhaps you can expand the detail on the dog's profile - favorite treats, likes/dislikes etc. I think dog-owners would enjoy this information.

<comment><AUTHOR> You're right. The site lacks information and the dog profile lacks other info too. Thank you. The e-mail at the bottom of the page links to a php file that redirects to a "mailto:" link. I did it that way to prevent spam. Maybe I did it wrong but I don't know other way to protect me from spam .

</comment></comment><comment><USER4> You could add an "about us" page describing the point of this web app. What is the problem you're trying to solve? Or, is this a "just because" app you coded for fun?

Maybe change the copyright year to 2011. I'm pretty it's 2011 everywhere on the globe by now :-)

<comment><AUTHOR> I guess it is. Happy new year! About the "About us" you're right. People usually complain that they don't know what's the point of the website ;)</comment></comment>


A simple Makefile and UDP code - <AUTHOR> https://www.centennialsoftwaresolutions.com/blog/a-simple-makefile <comment><USER2> The content of the files isn't showing up (Safari), and I suspect it's to do with a series of errors like:

> Blocked a frame with origin > "[https://www.centennialsoftwaresolutions.com"](https://www.centennialsoftwaresolutions.com") > from accessing a frame with origin "[https://social- > blog.wix.com"](https://social-blog.wix.com"). The frame requesting access > set "document.domain" to "centennialsoftwaresolutions.com", but the frame > being accessed did not. Both must set "document.domain" to the same value to > allow access.

<comment><USER3> This is affecting me on Chrome for Android as well. Symptoms at least; I can't confirm the exact errors.

</comment></comment><comment><USER4> The page shows no content.. in the other hand, my ad-blocker just blocked 125 external requests...

"A Simple Makefile" .. not that simply exposed.

<comment><USER5> AND 20MB of stuff to download, for 100s of requests, in 40s, with a 140MB memory footprint. For what should be just text.</comment></comment>


Non-Disclosures, Non-Competes, No Way? - <AUTHOR> https://www.ctothink.com/episodes/2018-03-27-15.html <comment><AUTHOR> Should you sign non-compete or non-disclosure agreements? We discuss everything from saying "heck, no" to turning them into an initial business agreement test.</comment>


Monarch Butterflies Evolved to Eat Poison - <AUTHOR> https://www.nytimes.com/2019/10/02/science/monarch-butterflies-milkweed.html <comment><AUTHOR> The companion website put out for the study is also worth a read [1].

[1] [http://www.noahwhiteman.org/monarch- fly.html](http://www.noahwhiteman.org/monarch-fly.html)

<comment><USER2> Read the companion website, the authors cherry-picked their findings, good thing they link to another independent study:

[https://elifesciences.org/articles/48224](https://elifesciences.org/articles/48224)

"Surprisingly, we find that frequently observed adaptive substitutions at two sites, 111 and 122, are lethal when homozygous and adult heterozygotes exhibit dominant neural dysfunction. We identify a phylogenetically correlated substitution, A119S, that partially ameliorates the deleterious effects of substitutions at 111 and 122. Despite contributing little to cardiac glycoside-insensitivity in vitro, A119S, like substitutions at 111 and 122, substantially increases adult survivorship upon cardiac glycoside exposure."

Essentially the study found 2 mutations (substitutions at 111 and 122) give the treatment fruit fly(Drosophila ) an immunity to milkweed poison(cardiac glycosides), the mutation has a lethal side effect: it causes a neural dysfunction that kills the treatment fly(adult heterozygotes). A third mutation(A119S) is immediately needed to correct the side effect. If we are being honest an adaptive walk is essentially impossible for the Monarch. An honest critic refutes the Whiteman Laboratory & NYTimes assertion that an adaptive walk occurred.

<comment><USER3> Could you explain how the need for two mutations refutes the idea of an adaptive walk? The elife article just seems to suggest that walk may have been a more complex process.

<comment><USER4> Not two, but three mutations. The first & second induced mutations gives the fruit fly immunity to the poison but the mutations are also lethal, which means the fly could not survive long enough for the third needed mutation to occur in an adaptive walk. The third mutation is like a stabilizer of the first & second mutation, it does not give immunity. In the test all three mutations are needed simultaneously for the fly to have the immunity and survive, that is not an adaptive walk, that is incredible engineering. So essentially you can engineer a monarch butterfly, but an adaptive walk is impossible in this case. (Writing on the go, may edit later)

<comment><USER5> I'm not sure where you're getting that info. The linked source indicates the third mutation in question precedes the first two.

> In multiple lineages, the substitutions A119S and A119N preceded > substitutions to 111 and 122 (Hemiptera, Hymenoptera, Diptera). In > Drosophila, where we have the greatest phylogenetic resolution, A119S was > established before substitutions to sites 111 and 122 in the evolutionary > lineage leading to D. subobscura, which appears to be polymorphic with > respect to CG-insensitivity.

</comment></comment></comment></comment></comment><comment><USER6> I have been encouraging milkweed to grow in my yard for a couple of years now. There is a woodchuck that comes by and eats all the leaves off each plant with relish. So much for toxins.

<comment><USER7> Poison for one species, food for other.

</comment></comment><comment><USER8> For me, the most interesting bit of the article is the way the researchers found the downside of mutation 122 without the other two mutations. Why did the researchers decide to spin the flies in a centrifuge in the first place? Is that a standard procedure in studying fruit flies? But since normal fruit flies usually just walk away from the "carnival ride" as though nothing happened, what do scientists usually expect to gain from such a procedure?

<comment><USER8> So I asked on Biology SE and it turns out that the author of the article confused "centrifuging" with "vortexing": [https://biology.stackexchange.com/a/88111/1114](https://biology.stackexchange.com/a/88111/1114)

</comment></comment><comment><USER9> They didn't evolve fast enough, maybe.

In my area, I remember monarch season when I was young, when clouds of monarchs were everywhere.

I haven't seen a single one in about 20 years now.

</comment><comment><USER10> I spent the last few years building up an immunity to iocaine powder.

<comment><AUTHOR> Sadly, you can't pass on that immunity to your descendants, unless it causes a beneficial mutation in your reproductive organs. :-)</comment></comment>


Fell Off My Bike, and Vowed Never to Get Back On - <AUTHOR> http://www.nytimes.com/2010/11/30/health/nutrition/30best.html?_r=1

<comment><USER2> I agree with the comments of hugh3 here.

I also have to point out, though, the lack of substance in the original article. It reads like a High School essay. It's basically an anecdotal tale (I rode my bike...I fell down...my friend Jen was there...so was my husband...I remember a PE coach once saying....). Yes, there's a Dr. Lowenstein referenced, but is again just more anecdotal insight (such as those gained standing around the water cooler). In the end, nothing is really learned (except for quite a few tiny details about the writers life).

In summary: junior-level NYTimes reporter needs to submit a story, yet it's a slow news cycle. So, she leverages her bike mishap into a story, getting her friends names in the paper, and some free advertising for Dr. Loewenstein.

I'm sad for journalism, but that's another common story.

<comment><USER3> And don't forget that if it bleeds, it leads. That's yet another facet of modern journalism I hate.

</comment></comment><comment><USER4> I would think that the main factor distinguishing running injuries from cycling injuries is the nearly-dead factor.

It's very hard to die from a running injury, but any major cycling injury is probably just a little bit of bad luck away from being a broken neck.

<comment><USER5> It's largely perception.

Professional cyclists crash several times a year, often at far greater speeds than any normal cyclist would ever reach. A routine tumble will happen at in excess of 25mph. I can't remember the last professional to die in a road crash. Collarbones break because they're supposed to - unpleasant as it might seem, they're natural crumple zones.

There are certainly classes of accident that happen to commuters but not professionals, but they happen to runners just the same. If you get hit by a car, it doesn't matter a great deal whether you're running or cycling, the car carries most of the kinetic energy either way.

The risk of being put off by accidents is that cycling is far safer than not cycling. Study after study has shown that the cardiovascular benefits massively outweigh the risk of traumatic injury - cyclists live markedly longer than non-cyclists.

The cure-all for cycle safety is simply more cyclists. Most drivers aren't malicious towards cyclists, just inexperienced in maneuvering around them.

<comment><USER6> Hmm, interesting. I have been doored once on my daily bike commute in Cambridge, MA. I've slipped and fallen once. A few times a month I have to swerve or brake hard because someone didn't see me. And I'm fairly experienced at this point (about a year of cycling every day) -- when I started out, I was dodging cars and pedestrians once or twice a week.

I haven't had any major injuries myself, but a friend was doored recently and hospitalized. He had surgery twice and missed well over a week of work. Months later, he still can't ride.

My point is just that it certainly doesn't FEEL very safe. The claim of health benefits is certainly something I want to believe.

And I definitely agree that more cyclists on the road would be good. Drivers just don't look for cyclists -- practically ever. If there were better bike lanes and they were always full of cyclists, people would probably learn pretty quick.

</comment></comment></comment><comment><USER7> I've been in probably half a dozen cycling accidents since I started "seriously" biking (city-street commuting) which have ranged from clumsy falling (my fault) to getting door-ed and hit by cars. I've been there with the vowing-never-to-ride-again, but with the incidents involving cars, the outrage sometimes helps to motivate returning to the saddle, fueling cyclist- driver antagonism, as in "cars can't keep me off the road." It has also helped to remind me to treat every car door as a potential trap, and every car as a pseudo-malicious beast out to get me, and thus ride with more vigilance and care.

<comment><USER8> Neal Stephenson wrote something like that in Zodiac. The protagonist mentions his philosophy on riding his bike as the assumption that he is wearing a fluorescent vest, and there is a million dollar bounty on his head - if a car sees you and has to consciously make the decision to not kill you, you're already wrong.

<comment><USER3> Bike Ninjas are usually that way out of paranoia... you know the type: dark clothes. dark bike. no lights. no reflectors. sometimes riding against traffic like they used to teach us in kindergarten.

Most of them think that motorists really are out there to kill them, so they'd rather not be seen and rely on their own perceived "skill" to stay alive.

</comment></comment></comment><comment><USER3> I can't see the whole text, but I've been in a few pretty good crashes. Once (<http://is.gd/hZVO2> ) shattering a few teeth and my maxilla after being edged off the road by a motorist. More recently (<http://is.gd/hZWdH> ) I ran over a moving deer while traveling pretty quickly for a bicycle (~35 MPH before I saw the deer, no clue how slow I got by the time of impact). Both times, the bike helmet spared me quite a bit of damage.

Without submitting to The Paywall Of Doom, I have no idea what happened to this guy, but a good bike crash can be pretty scary.

<comment><USER7> People on HN are always complaining about the NYT paywall but I never see it, are you talking about the "sign up for an account"-wall? The site is still free right, the paywall is going up next year? As I recall, clearing your NYT cookies sometimes lets you through the account signup.

But, I agree, a good crash is definitely one of the scarier things I've experienced, and it sounds like you've had more than your share of "good" ones.

<comment><USER3> I have to use some kind of euphemism to describe them to convince myself I still like bike commuting. I'm still picking scaly pseudo-scar material from my elbow.

Of particular note: the first big crash was due in part to me being inexperienced, only back on the bike for a few months. I wasn't riding the way I should have been, and I was not prepared for the situation. The second crash happened because I spent too much time scanning the road for cars and road hazards, and not enough time noting my surroundings. A co-worker saw me hit the deer (he was a few cars back) and says he saw it in the field from the top of the hill, before it wandered into the deeper brush that it'd eventually jump out of right in front of me.

Taking some of the blame and acknowledging that both crashes were ultimately avoidable has helped keep me on the bike, and it's sharpened me up a bit while riding.

</comment></comment></comment><comment><USER9> When I was younger, I had aspirations of getting into the X-Games for freestyle bmx and dirt jumping. Those dreams ended when I broke my leg doing something very mundane.

I was grinding down a box with a decline which was about 3.5 feet off the ground. I had lost my balance, and instead of putting my right foot down on top of the box, I put my left foot down, 3.5 feet, onto the sloping decline. After recovering from my fall, I twisted my foot 180 degrees back into the "normal" position. Not thinking clearly at the time, I didn't even realize what had just happened. I got up, walked over to my bike and got back on, only to fall off within a few moments. At that moment, I felt my leg (which still was in my shin guard) and I felt it wobble/seasaw up and down in the middle. Right then, I knew something was wrong.

I broke my tibia, fibula and ankle all in one go. After surgery, I ended up with 2 pins in my ankle, a plate and 5 screws in my tibia and was on crutches for 4 months (these were removed a year after). To this day haven't ridden BMX, though I can ride mountain bikes and snowboard better than I had before. I cringe with agony anytime I see someone take a gnarly spill, remembering the pain I had once experienced.

</comment><comment><USER10> Fell off many times; lucky to never break anything yet.

It is surprising how little we do to remain safe on a bike - strap a block of styrofoam to your head, and you're good to go! Not even wrist guards. A football player wears more, they travel far slower on grass and hit lighter objects, and look what they wear.

Even so, no way am I going to wear more than spandex and a helmet - it would vastly impede my performance etc.

</comment><comment><USER11> Does anyone vow not to drive again, or be a passenger in motor vehicles after being hit, hitting another car or injuring or killing a pedestrian?

You'd think you'd hear of such since more people drive, and the bad crashes are worse.</comment>


I Know What You Think of Me - <AUTHOR> http://opinionator.blogs.nytimes.com/2013/06/15/i-know-what-you-think-of-me/ <comment><USER3> I had a talk with a friend recently who is newly single, and it was clear to me that Facebook was making her crazy. She kept asking me questions about what people that were friends with her and her ex thought of her, or were saying behind her back, or were posting about her in a way that she couldn't see.

It was an uphill battle, but I finally convinced her of the truth: nobody really talked about her or her ex that much at all. And what was said was trite and banal, "Oh, I'm sad they broke up..."

This was a bit of revelation for her.

I think people that obsess over what is said about them behind their backs should take that to heart. The truth is you probably spend a lot less time in people's thoughts than you think you do.

<comment><USER4> Just for fun, I'd like to throw in my opposite experience. A few years ago I was quite active on FB, you know, posting random thoughts and music videos and stuff like that. The stuff I posted was indeed random, just things I liked and wanted to share based on mood and ...well randomness. But unbeknownst to be, an acquaintance of mine, who was at the time engaged in a horribly soapy love triangle, got it into her head that I was speaking in code about her - <USER2> specifically that I was totally in love with her and wanted to make her nicely constructed love triangle into a quad-shape.

It didn't help that I really had been unlucky in love for months at that time, and I once confided to said threesome girl my situation over a coffee. I did express to her quite clearly who my "problem" person was, but for some reason (and I learned that only much later from a meetup with her boyfriend) she actually thought I was again speaking about her, in code. I was not. However, she convinced a lot of people.

Only after noticing that quite a few friends and acquaintances were turning their backs on me lately, and a few people coming out and saying strange things like " _hey, what 's up with you and X, you gotta let her go, man_" or even " _dude, I heard what you did and it 's not seriously not cool_" I gradually learned that this person was waging an epic info war around and about me, who supposedly couldn't stop hitting on her. Upon learning this, I broke off contact immediately, but to my amazement the damage was still unfolding.

I simply could not believe the amount of gossip and straight-up fantasy people engaged in with me playing some kind of role in what had become a huge reality soap opera. Honestly, I never thought I was that interesting. But that didn't matter, because the made-up stuff just kept coming. It was as if I had a very active doppelgänger walking and talking around somewhere. It was absolutely stunning, and more than a bit horrifying. There are a lot of things I still can't wrap my head around. What was she getting out of this? And all the time, we had a "hey, let's grab a beer and cheer you up"-kind of relationship that I thought was pretty good. Why would anyone do this? And why was everyone willing to not only listen but also willing to add to this story?

Now, years later, my circle of friends has shrunken immensely. There are a lot of people who won't talk to me anymore, and I never got to find out why exactly. I only know that the moment I start asking questions, the whole affair seems to get reactivated. One friend told me only recently (unprompted) that there are so many conflicting stories about me in circulation, it's hard to keep track of them all. And none of them is good.

Why me? I'm neither rich, nor good-looking, nor in any imaginable way socially interesting. Seriously, it's stunningly stupid, and I can't for the life of me understand what powers this process. But it happened. A home-made conspiracy story. Sometimes, people really _do_ talk behind your back - a lot.

<comment><USER5> This article was on the HN front page some time ago:

[http://chronicle.com/article/I-Will-Ruin- Him/136693/](http://chronicle.com/article/I-Will-Ruin-Him/136693/)

It sounds like your situation is similar, though perhaps less extreme.

<comment><USER4> Maybe, but I think this is fundamentally different. Threesome Girl did not have a real motive against me. In fact, we were still drinking buddies when I learned what she had been doing this whole time. There was no love interest, no need for revenge, nothing to gain from doing this. Yet, she did. And even more puzzling: a lot of people helped her, she always had a lot of social support. She was quite brilliant at that. Maybe - maybe getting that support and recognition _was_ the motive, but she already kinda _had_ that before.

<comment><USER6> There are people who just love to surround themselves with drama.

<comment><USER7> Exactly, I know some people in real-life, immediate family members, people I can't easily ignore even if I want to, who just loves to feed on drama.

I usually try to stay away from drama queens like my sanity depends on it, but when family members do it, not easy or (always right) to ignore them. I tried to explain, rationalize, reason with them and their drama ways; but it didn't help much.

I think drama loving people are kind of addicted to how it makes them feel.

<comment><USER6> I think your last sentence is probably the best rational explanation:

foment drama --> experience drama --> dopamine hit...

</comment></comment></comment></comment></comment></comment></comment><comment><USER8> This is a great article. Not good, great. It's a simple and objective look at a very difficult truth: It's so very easy (and, in the author's assessment -- which I agree with -- so very normal) to look at yourself as the exception, and to ignore or simply be ignorant of your own flaws, while eagerly pointing out those of others.

I keep learning more about myself (not the pleasant things, of course) because of this sort of introspection. I had absolutely none of it as a kid. I think few people do, but the more you manage -- and the later in life you manage it -- the harder it is to look back at yourself and not wince.

I'd say, and I think the author makes this point as well, at least in passing, one of the hardest things is forgiving yourself when you step back and realize how you've behaved (particularly after condemning others for the same actions). It's a lot easier to take someone else's actions and say "well, he/she didn't mean it" or "OK, that's just how people are" than to look at yourself, know that yes, you did mean it or intend to do it, and no, you don't really find it acceptable.

<comment><USER9> We judge others by their actions, ourselves by our intentions.

<comment><USER10> I tend not to do this, which is why I find myself at age 35 with practically no grudges held and very few people who I cannot tolerate or even appreciate. It also makes it easier to recognize whether something is reconcilable in business, with employees, etc. Accidents happen, people make mistakes. I often find that unless I truly believe something was done out of malice, I have very little problem getting over it quickly.

<comment><USER11> I'm also 35 and feel exactly the same way. This often gets me in trouble with my wife when she exclaims "how could x have done y!" and I proceed to stick my foot in mouth by saying "maybe they were thinking z".

<comment><USER12> Hmmmm, it sounds like she may want empathy and the ability to vent rather than any sort of solution or analysis. That's something that I've struggled with in the past but I think I'm getting better at.

<comment><USER13> Women (especially significant others) tend to want you to agree with _them_ , not with the person they're complaining about.

Don't give an objective analysis of the situation with an account of the other person's point of view, especially if your wife or girlfriend is in the midst of emotionally venting. It won't be appreciated.

Once she's cooled off and feels listened to and heard, _then_ you can start to reintroduce logical analysis and 'what was the other party thinking and why did they do what they did'. But not right away.

<comment> mkr-hn Goofball hypothesizing about people as grouped objects is always fun to read. Wait, no. It's the other thing. Terrible to read.

</comment></comment></comment></comment></comment></comment></comment><comment><USER14> Earlier this evening I received a text message from a someone I felt I was starting to have feelings for. Probably just infatuation, but possibly something more.

Another text soon followed; one that was very affectionate.

In the 3 minutes between replying and receiving the apologetic _'... I'm sorry that wasn't meant for you...'_ reply, I experienced a full range of emotions from elation to embarrassment — disappointment to denial.

It's a funny old life. I found this article at the top of hacker news 5 minutes later. Definitely struck a chord.

<comment><USER15> Or it was and they are backtracking, although maybe not best to think too much about that.

<comment><USER16> or maybe be honest! why not.

</comment></comment></comment><comment><USER17>
        I've often thought that the single most devastating
        cyberattack [would be] simply to simultaneously make
        every e-mail and text ever sent universally public.
        . . . . the fabric of society would instantly evaporate,
        every marriage, friendship and business partnership
        dissolved.

I don't think it would be quite _that_ bad. There are _some_ people who lie to everyone, but there are also some people who are decent and honest. Some relationships would weather that kind of storm just fine.

In fact, maybe this is the optimist in me, or maybe I'm projecting, but I think _most_ relationships would be just fine.

<comment><USER18> I would indeed be concerned if everyone around me really lived in a bed of lies _that_ deep.

I don't have many friends, but I have no reason at all to suspect that I wouldn't still have those friends should such a thing occur.

<comment><USER19> It would be a wonderful political hack though. Just thinking of a zero day email dump hack makes me smile. The political fallout alone... just imagine. Wow, I felt like I was channeling John Lennon there for a moment.

</comment></comment></comment><comment><USER20> I think the important question no-one seems to be asking is: what's up with the goats? No seriously, for what reason does a NYT contributor/essayist/cartoonist need goats on demand?

Also: I'm calling it now, "Uber for Goats" is the next big startup idea.

<comment><USER21> In Seattle, you can rent goats to help take care of pesky invasive vegetation like blackberry bushes. Blackberries sound like a good idea until they take over, and they're very difficult to remove. Goats will eat them, though, so you can rent a small herd of goats and in a few days, the brambles will be eaten back to a level where they can be dug up by the roots.

I have no idea whether this was the case in this particular situation.

<comment><USER22> This is actually very common. You can make an nice chunk of change in the area between KY and SC renting out your goats to destroy kudzu.

[http://www.youtube.com/watch?v=jIoRJG2yDoI](http://www.youtube.com/watch?v=jIoRJG2yDoI)

UK prof points out the obvious proposition, you keep a proper goat/kudzu ratio and it's MONEY TREE

</comment></comment></comment><comment><USER23> When I was younger my mother used to tell me that the family that plays together stays together, and that's a pattern I've found repeated more generally in life: I tend to look at my friendship in terms of what people do with me. What activities we engage in together.

Interpretation is all well and good, but if you don't really do anything together what are they interpreting? It's a relationship built on dreams and imagination. And what do they really stand to lose in thinking poorly of you?

I'm actually constantly amazed by how strong friendships are, and how much people seem to respect each other. It seems like most people are only weakly friends, and that more by necessity than anything else. What interests do you really share with people? It's hard to think of having a really serious disagreement with someone from the office - you sympathise with them even if they'd be bores were you to meet them under other conditions.

From my perspective the world seems full of friendships and relationships that people invest heavily in emotionally and yet seem terrifyingly fragile. (Pretty amazing that they don't fall apart more regularly.) Maybe people would be happier and more secure if they paid more attention to the things they enjoy and the people they enjoy them with than being bothered about what just... other people... think of them - I don't know.

For myself, I know that I'd be very worried if it turned out that someone, even someone close to me, regularly spent a significant amount of their time just thinking about me. I have my own life and interests, and expect others to have theirs too - being elevated to some ideal of perfection in someone's world is a little creepy.

</comment><comment><USER24> When I worked at a financial firm, we were regularly reminded not to write any emails that we wouldn't mind being printed on the front page of a newspaper. It's a tough habit to keep in mind, especially for non-work emails, but it's a good litmus test and it's helped me edit some emails before pressing 'send'.

<comment><USER25> Although it's clear what you meant, as you wrote the sentence, it has a somewhat more entertaining. You meant, "that we would mind being printed...". As written, it meshes nicely with my opinion of the financial sector. (/tongue-in-cheek)

</comment></comment><comment><USER26> > "I've often thought that the single most devastating cyberattack a > diabolical and anarchic mind could design would not be on the military or > financial sector but simply to simultaneously make every e-mail and text > ever sent universally public... the fabric of society would instantly > evaporate, every marriage, friendship and business partnership dissolved. > Civilization ... is held together by a fragile web of tactful phrasing, > polite omissions and white lies"

Dr. Doofenshmirtz agrees:

[https://www.youtube.com/watch?v=qvELB_lHsXQ#t=4m19s](https://www.youtube.com/watch?v=qvELB_lHsXQ#t=4m19s)

<comment><USER27> Hail to the whistleblowers, then?

</comment></comment><comment><USER28> Just wanted to remark

> the dreadful consequence of hitting "reply all" instead of "reply" or > "forward."

This is why I never write things down that I wouldn't want to end up being read by the subject. Ever. Regardless I'll always go over the To-, CC- and BCC-list three times, but negative (unconstructive) things should be said only by mediums that you can expect to be entirely private. E-mail might be read by others when the colleague would leave the company or something, the sysadmins may snoop it, or he might just be standing by when the recipient receives the message. Or the colleague might make a mistake in sending it.

Not that I talk about others that much behind their backs, or at least I hope I don't unconsciously do it too much, but still.

Edit:

> a staircase you could descend deep underground, in which you heard > recordings of all the things anyone had ever said about you, both good and > bad. The catch was, you had to pass through all the worst things people had > said before you could get to the highest compliments at the very bottom.

That sounds incredibly awesome. I'd force myself to descend all the way, and I think it'd be good. Make me realize how bad some things have been and what I can improve, but also make it a rewarding experience in the end that motivates to continue doing the good things and do more good things.

</comment><comment><USER29> If you want to have some fun, take a dance class, and then have someone videotape you dancing.

It's usually pretty horrifying.

<comment><USER30> I went once with a friend to a club and he said that I really stand out of the crowd as a geek. I said: impossible, prove it. He took out his phone and recorded 30 seconds of me dancing. It took me watching just two seconds from this movie to realize he was right.

I don't frequent dance floors much since then. Still haven't got over it.

</comment></comment><comment><USER31> What's interesting is that it seems like the less you care what people think about you, the more people like you. You become more genuinely you. This makes you unique and interesting.

Besides, people can see through someone trying too hard.

</comment><comment><USER32> I often struggle with the most basic question of them all: Who am I?

To me, how I live my life is the only way to answer that attempt at self- reflection. Yet, we are not what we do. That's the dodge that plagues me.

<comment><USER33> Each of us is two very different people - the one we know, and the one others know.

I've found that self-reflection only takes me so far because of how charitable we tend to be to ourselves. I'm trying to get to know the me that others know - the me composed of my actions and their perceived motives and outcomes. It's deeply discomforting how different that me is from the one I know.

Try this - record a few of your phone conversations (with the other persons permission) over a week and listen to them. I found that the person on the phone is pretty far from who I thought I am.

</comment></comment><comment><USER34> I worked at a high end law firm for a couple of years and there was a paralegal that was routinely abused by her boss. She got fed up after seeing an email thread and took it to the managing partner. The managing partner was a really great guy, and his solution was to let her print all of the offending attorney relevant email threads and distribute them to the entire office. It was righteous. It surprised the attorney, as she had her emails published and she was fired on the same day.

</comment><comment><USER35> The sensation that the author describes -- that uncomfortable feeling of realizing that you're being viewed as just as another person, not always in a positively light -- is similar to what I feel when I think about unlawful surveillance, including programs like PRISM.

</comment><comment><USER36> The author of this article, Tim Kreider, may be better known by some of us Internet folk as purveyor of the fine web-comic "The Pain": [http://thepaincomics.com/](http://thepaincomics.com/)

</comment><comment><USER37> I like to think I became pretty adept and being unconcerned about other's opinions and honest yet selective about voicing my own relatively early on.

Though I was quite happy internally and I do believe it was a net win socially, living that way isn't without its own problems.

As a result, I've had to learn to feign back the other way to some degree.

</comment><comment><USER38> Ahh - I love Tim Kreider. Find him hilarious, poignant, extremely witty, and intelligent. Mentioned elsewhere, but if it helps drive more people to his site, here it is: [http://thepaincomics.com/](http://thepaincomics.com/)

<comment><USER39> Never heard of him,

"The context is that I had rented a herd of goats for reasons that aren't relevant here and had sent out a mass e-mail with photographs of the goats attached to illustrate that a) I had goats, and b) it was good."

but he seems like an awesome guy :D

Thanks for the link.

</comment></comment><comment><USER40> I am painfully aware of how much energy I expend trying to prop myself up above others. Whether I am delicately explaining how I would have done it differently or just fidgeting with my clothes to make myself look better in that place's light, I end up feeling like I'm acting fake. Maybe I am.

Regardless, I think there's little we can do about it. Anytime I overcome the urge to make myself look better to the strangers around me, it is done through no small amount of conscious effort. It is so much easier to just give in to my genetic encoding and try to appear more fit than to make my existence easier.

<comment><USER41> Or in my case, I spend a lot of time in denial about how much I intend not do... do exactly what you're describing, but finding out after the fact (re- playing conversations with others, or listening to complaints from my family) that I, unbeknownst to my conscious mind, do exactly that.

</comment></comment><comment><USER42> If you work at a company that enforces 360 peer reviews you'll get to find out what everyone thinks of you whether you want to or not.

</comment><comment><USER43> This is basically what happened in the diplomacy world when the State Department cables were leaked.

</comment><comment><USER44> This brings to mind why people who are socially inept tend to fall behind further in interpersonal skill, unless they make concerted efforts to improve themselves. When you start developing the ability to read people, it's painful because you realize that most people passively dislike you.

It gets a little better when you realize that most of the low-level passive dislike is impersonal. Passive dislike of others (perceived as intruders, a "crowd", etc.) is the norm, and taking offense to human traits that evolved in times of scarcity and fear makes no sense. When you're socially inept and perceive others as unfairly exaggerating your faults, it feels like persecution. Reality is that people just exaggerate _everyone 's_ faults because it's how humans are.

Learning what people really are is painful and demoralizing if you're socially average or above, but it's devastating for people who are socially inept.

<comment><USER45> Passively dislike you, or just don't have any particular interest in you whatsoever? (Or is that exactly what you mean by "passive dislike"?)

<comment><USER44> Mostly "no particular interest", but passive dislike comes from an (understandable) fear of congestion.

All else being equal, you'd rather fewer people be where you are than many. You'd rather ride a half-empty plane than a full one. You'd rather your favorite restaurant be quiet and spacious than crowded and loud. Of course, everyone has specific people they'd prefer to be around... but we're mostly irritated by crowds and be around people we didn't select. That's just how we are. We're animals, and every animal exhibits heightened cognitive load when animals of the same species (conspecific individuals) are in range.

This is not worth getting angry about. It's just how the world seems to work. Even if the world isn't congested, it almost always feels that way... and to most people, you and I are part of the problem. When you drive, you're part of "traffic".

</comment></comment></comment><comment><USER46> I wonder if the author ever emails one of the two friends about the other. It's unfair if only one side of the private emails gets opened, but the other stays hidden. Also, given that presumably you're still friends after this incident, who cares? A single email is a ridiculously small facet of a person to base an opinion off of.

And if you weren't friends but just colleagues, who cares? You've just learned an important bit of information: your colleagues don't approve of your expenditures. This will help you plan your future. Take it and learn. More information is hardly ever bad.

<comment><USER47> I'm pretty sure you didn't actually read most of this article.</comment></comment>


Simplify-Then-Translate:Automatic Preprocessing for BlackBox Machine Translation - <AUTHOR> https://arxiv.org/abs/2005.11197 <comment><AUTHOR> Interesting approach concept. I have tried using google translate and other machine translation on subtitles. Currently voice to text in many languages is very accurate so we are able to get subtitles of the spoken language quite accurately but machine translation of those to other languages are bad. The translation breaks when it comes to idioms or colloquial speech. Converting to simpler speech before translating should solve the problem of translation. That is what most human subtitle translators do they don't translate the exact words but more of what the speaker is trying to convey. This concept when used with normal forum posts on the web would probably give better results than the current machine translations when we use google translate plugin.</comment>


Ask HN: How to become a Master in Django framework? - <AUTHOR>

Hi Hackers,<p>I have a very vital question that really hurts me. It's almost 3 weeks that I've started to learn Django. I have some backgrounds in PHP web developing (Spaghetti Style, not MVC), and a descent roots in Python since 2005. I mean I know proper things about Python, MVC, RegExes, DB, webservers, etc. Three weeks ago, I started to learn Django. I started by reading and implementing its tutorial and then read the "Django Book" and a few other books . Now here is the problem : 1- Most books don't cover the version 1.3, So I sticked to 1.3 formal documentation which is a huge source of info. Is it the right path that I've chosen ? 2- I feel I'm dumb in some stuff !! For instance as my learning procedure is "Learning by Doing", first I created a simple typical blog which was good. Then, I started to develop an e-Shop which needs the usres to register themselves. I found Django-Registration add-on (so to speak), and tried to embed it into my project. And SIGH, it's hell complicated. Lots of Signals should be sent to over-write and so on ... I think I'm a newbie in the islands of Wizards :( Any suggestion to overcome this problem ? Did you have the same experience with Django ? <comment><USER2> Learning by doing is a good approach. I recommend that you ignore all the plugins and add-ons for Django and just write your own code. You will often find that it solves your particular problem better, and writing your own code will give you the exercise you need to become competent. Start with small ideas and work up to bigger ideas.

<comment><AUTHOR> Thanks ... It seems a good way for now. Maybe I become more familiar with the back-end by this approach ..</comment></comment>


Mtiks - mobile app piracy solution and analytics - <AUTHOR> http://venturefizz.com/blog/first-look-mtiks

<comment><USER2> How does it detect that the app is pirated?</comment>


Down with meritocracy (2001) - <AUTHOR> http://www.theguardian.com/politics/2001/jun/29/comment

<comment><USER2> My opinions on this have evolved a lot over the past few years, to the point where my view matches the author's to a surprising (to me) degree. As someone who grew up white, middle class, and male, in America, it was very easy for me to believe that my intelligence (another front on which I was pretty lucky in the birth lottery) and my ambition were the entirety of what led to me having a pretty easy life, thus far.

But, over the past several years I've been involved in volunteering and activism in areas outside my comfort zone. In that time, I've met homeless folks who were bright and hard-working, but born into situations that prevented them from getting care for mental illness or from getting an education that would have helped lift them out of poverty. I've met people of color with university credentials that make my formal education look paltry, and who still struggle from paycheck to paycheck.

I don't have answers on how to solve the problem, but I do view it as a real problem. Maybe one of the biggest problems of our time. The stratification of haves and have-nots is becoming more severe over time. The most disheartening element of it is how little awareness there is among white, middle and upper class, people about how their position in the world is as much luck of birth as it is their hard work and intelligence. The tech industry is particularly oblivious.

<comment><USER3> Life is not fair. And that's a fact.

But (glass half full) life is more fair than it was 100 years ago. And it was more fair 100 years ago that it was 1000 years ago. And probably, it was more fair 1000 years ago that it was 8000 years ago.

We should all do our part to do the right thing. We should support systems that make sense. We should recognize that sometimes ability lies in surprising areas. But we are never going to see life be completely fair. Not in our time. Expecting differently I think will lead to despair, cynicism and disgust. I believe we should do what we can in our time, and recognize how far we have come since we first came down out of the trees....

<comment><AUTHOR> Of course. But how come the response to trying to get more women to participate in technical fields so much more defeatist on HN than some absurd, quasi-religious attempts such as cryonic re-animation?

<comment><USER3> Maybe some of the negativity comes from the idea that people should have to be included in an endeavor regardless of ability?

(Of course there are also no shortage of plain old misogynists and bigots.)

<comment><USER2> I think that built into that assumption is the belief that people of color or women or whatever or someone from a poor background who have the necessary abilities don't exist.

In other words, it's working backward from a faulty indicator: There are very few women in tech, which proves there are very few women who are capable of being good engineers. Likewise, there are several times more black men in prison per capita than white people, thus black men commit crimes at a rate much higher than white people. There is some evidence that people actually process information this way, even though it is a logical fallacy, or at the very least is operating on correlation as though it is causation.

In case anyone was wondering: Both of those examples are false, and are provably false, based on research from a variety of fields.

In short: The negativity probably stems from a misogyny and bigotry, without being aware of the misogyny or bigotry.

<comment><AUTHOR> > The negativity probably stems from a misogyny and bigotry, without being > aware of the misogyny or bigotry.

There's a name for that unconscious discrimination: sexism.</comment></comment></comment></comment></comment></comment>


The FCC's Plan to Unlock Your Set-Top Box Is About Competition, Not Copyright - <AUTHOR> https://www.eff.org/deeplinks/2016/04/new-rules-pay-tv-set-top-boxes-are-about-innovation-and-competition-not-copyright <comment><USER2> I don't know that this will work any better than CableCARD, that said, I'd consider it if it meant not having to scroll through all the networks that I never watch, or all the Spanish channels, etc... I mean, it would be easier to navigate without 2/3 of the channels in the list. Including those that I don't even have as part of my subscription.</comment>


Glyphosate (Roundup) Is (Still) Not a Carcinogen - <AUTHOR> https://www.croplife.com/crop-inputs/epa-glyphosate-is-not-a-carcinogen/ <comment><USER2> More accurately: EPA says that the main ingredient in Roundup is not a carcinogen. At least the recent court case in Britain against Roundup was not relying on glyphosate being a carcinogen. There are multiple ingredients. For example POEA (polyethoxylated tallow amine) that works as surfactant.

Even if there was an effect, it can't be very high, so I'm not very worried.</comment>


Ask HN: What should we do - <AUTHOR> We need some advice on our next step. We currently have a product that is in the App Store that we launched for user validation. The problem is, we now have that validation but the product isn't scalable. We outsourced the development so the backend isn't what it should be it crashes and has lots of bugs.
The reason we did this is because my cofounder and myself are design and marketing backgrounds. However it served its purpose as a Validation tool. We are now planning on doing a Burbn --> Instagram move. We will be using our feedback to build a better product and hit the market on larger scale.
My question is should we find a Technical CoFounder who can fix the issues on the product we have? Which we all know finding a quality CoFounder is hard. Where is the best place to find CoFounders? <comment><USER2> I am actually looking for a CTO position at an early startup. Hit me up by email: my HN username @gmail.com I'll send you more info. about myself and I would love to hear more about what you are trying to build.

</comment><comment><USER3> So question.. what determines "passed" vs "failed" user validation?

My question for that is you get so caught up in the excitement of a new product.. it is very easy to say "hey 10 people liked it, good product". How do you know the product is REALLY user validated?

<comment><AUTHOR> 20000 DAU 15% of the users open 100 times a day. This is higher than snapchats early stage data.

However we have recently been told by a big name investor he doesn't consider anything under 30k user validation. So I could be wrong.

My concern is that the product has bugs and backend isn't ready to support massive growth.

<comment><USER4> Load test your backend -- not the 'actual' production backend but a copy with the same characteristics. That is, call your backend functions in an order and manner that's consistent users' actual usage, with as many simultaneous requests as you can. There are many products that can do this, one free one is JMeter [1].

This will help you figure out if you can scale your way out of the problem (i.e. throw more servers at it), or if it's fundamentally broken beyond saving.

[1] [http://jmeter.apache.org/](http://jmeter.apache.org/)

<comment><AUTHOR> I'll do some more research on this thanks.

</comment></comment></comment></comment><comment><USER5> I'd say this all depends on the nature of your product. Having a technical cofounder is always helpful, but not _a priori_ necessary.

What are you making? I may be interested in joining as CTO.

<comment><AUTHOR> Mainstream Slack send me an email email@example.com

</comment></comment><comment><USER6> You may consider hiring a contractor too. Less commitment on your part than giving away part of the biz. Especially if you just need some performance tuning.

<comment><AUTHOR> This is something we are discussing as well. We are weighing all of our options but gotta move quickly. We think having a technical cofounder has its advantages for championing ideas, improvements and reassurance. Its hard to find talent that sees beyond the code that doesn't want to work on their own ideas by themselves.

We also think finding the right contractor is smart idea too because it will allow us to make the changes without equity like you said. Which than we can scale the product on our own to get the traction/funding we need to hire the right CTO.

We've really only had one investor question us on not having a CTO anyway.

</comment></comment><comment><USER7> > Where is the best place to find CoFounders?

I'd say you're there already!! :-) All the best.</comment>


A honeypot programmed in Micropython for the ESP8266 - <AUTHOR> https://github.com/gbafana25/esp8266_honeypot <comment><USER2> A way more interesting and more complete honeypot is [https://github.com/honeytrap/honeytrap](https://github.com/honeytrap/honeytrap). It combines a great list of services exposed to the internet and is very extendable. Currently development has a somewhat lower priority, but in the near future, it'll be ramped up.

<comment><USER3> I think the difference is that the Honeypot in the OP runs in an ESP8266; a small, single core chip that can be had for under $5.

<comment><USER4> While this is true, why not just get a raspberry pi zero or whatever?

<comment><AUTHOR> Developing on an ESP8266 is completely different than a RasPi Zero. If you want a challenge, and want to write code that can run in 80KB of RAM and have the code and all of its dependencies fit in 4MB of flash, then that's part of the reason why microcontrollers are popular (also because a lot of them are easy to get going with).

<comment><USER4> Great answer, thank you :)

</comment></comment></comment></comment></comment><comment><USER5> I've always been amazed by the power of these little ESP chips. I'm actually really curious to see what outside the box use cases the ESP 8266 and the ESP 32 will have in the future.

</comment><comment><USER6> Do the authors ever reveal if they detected any would-be hackers?

<comment><USER7> No.

This is an adorable project that assumes people who are familiar with nmap regularly scan whatever they can.

It's cute, but I'd expect it to be pretty dull to watch.

<comment><USER8> The only place that I've ever seen this kind of honeypot regularly pick anything up is on college campuses.

<comment><USER9> never heard of the mirai botnet i take it [https://en.wikipedia.org/wiki/Mirai_(malware)](https://en.wikipedia.org/wiki/Mirai_\(malware\))

</comment></comment></comment></comment><comment><USER10> if you can still edit the title would you please change it from _ALL CAPS_ to mostly lower case?

</comment><comment><USER11> That's a very unprofessional readme.

<comment><AUTHOR> I don't work on this full time, so it necessarily need to be professional. Although I think I might cut down on the emojis.

</comment></comment><comment><USER12> "The honeypot is set up to act as a telnet server owned by a fake bank."

Really?

<comment><AUTHOR> its just a joke/fun thing I decided to do.</comment></comment>