I'm angry, bitter and resentful towards my cofounder. How to fix? - <AUTHOR>

I feel like I've made this startup my life, have sacrificed a lot and am willing to sacrifice anything else for it. However, for my cofounder, this is just a part of his life for him. He has other priorities (family, social life, leisure time, maintaining a healthy lifestyle, etc) that are of equal or if not more importance than this startup.
I suspect I work than him (maybe 4 - 6 more hours/day) and I feel like I constantly have to push/drag him to move faster. In addition, this startup is funded by friends and family - MY friends and family. I'm almost worried he has no qualms if we failed and wasted all their money, since he doesn't even know them.
I'm building up so much anger, resentment and bitterness I have no doubt it is unhealthy. I have had several talks with him in which I was very honest, which helped temporarily, but didn't last.
Assuming I still want him to be my cofounder, how can I improve the situation? I'm open to the suggestion that this is actually my problem and that I should change something about myself instead of trying to change him. Should I relax and let go? Spend more time socializing myself instead of constantly working? I'm just worried I won't be able to stop caring and will constantly want to go back to work.
Any suggestions welcome, thank you. <comment><USER3> I can't help you based on experience, but family, social life, leisure time, maintaining a healthy lifestyle, etc. sound like valid reasons. Of course, with good time management, you can have all that and be productive.

If your startup is split 50/50, then you should each be putting in the same amount of work. This is hard to measure in time because some people are a lot more productive than others, and hard to measure in output if you two are focusing on different problems (e.g. software development vs marketing).

Also, no one likes to be constantly nagged at, it makes them feel as if they're being treated as a child. You could be pushing him away without knowing it.

I suggest spending more time socializing, maybe go have fun with your cofounder, and keep your mind off the startup while you're socializing (unless the event is geared towards discussion about the startup). Also try working in the same location rather separately, or working together while at the same location. This could help motivate him.

</comment><comment><USER4> In business you have to make some tough decisions, and nice as being in a startup that you believe in is, your frustration and most of your anger is because you are angry at yourself for either not knowing what to do, or being scared about losing everything, or scared about facing up to someone taking advantage of you.

Here's what I would do in your shoes. The aim is to get his attention as you don't appear to have it when you talk directly to him.

Stop including him in your work, stop including him in important communications with your investors. Ignore his phone calls when you are either too busy to answer them or just not in the mood. If you don't like doing that, answer the phone and say "can I call you back later I'm just in the middle of something". don't call back. Same with emails and facetime et al.

If he does not start to even get slightly concerned about that, you know he's not playing ball... next step protect your position because he's already shafting you:

Start to conduct your work as if you were working alone, and start to set up structures to jump ship to a new set-up without him. Even if you don't use this nuclear option, you'll start to feel much better knowing that you are one step ahead and have it in place.

At no point must you ever mention that you are doing this to anyone at all, not even your investors. If you move you are going to be abandoning the joint project, but the work you put in does not have to disappear. Make sure you can pick-up where you left off (dropbox everything important) and if it comes to it, you can offer your investors the same equity for nothing in the new venture.

Once you realise that most business is a game of chess, and that it can be dog-eat-dog when big money is at stake, then you should not feel bad about these actions.

The problem is that if you let it get personal (which clearly is starting to happen) you already lose. Just make sure you always do what is best for the project and for you, and at least then you can hold your head up, even when it feels wrong. Sometimes you have to be a little bit ruthless to keep your sanity.

One last point, I'm not paranoid about working with people, but I have had a couple of bad experiences that have taught me not to put up with bad behaviour.

</comment><comment><USER5> I have been in a very similar situation. Looking back, I wish I had first and foremost stopped putting myself over the edge. Constant overwork and unnecessary sacrifices have deprived me of the ability to properly deal with the problems including the one of undercommitted cofounders.

I wish I could offer you a perfect solution, but I doubt one exists. If your cofounder doesn't care it just means you have a wrong cofounder. But you sound overly stressed and I can tell you it impacts decision making in a really bad way. So if there _is_ any solution, to find it you'll have to get out of the "sacrifice" mode yourself first.

</comment><comment><USER6> I think one of the most difficult aspects of being a founder is attempting to find balance with your life. There is a fine line between driving passion for an idea and 'living' life. Entroyneur's comment here is valuable hindsight - <USER2> think many of us put ourselves 'over the edge' because we are so passionate about our projects. I suspect that you have expectations of yourselves and one another that have yet to be discussed. My recommendation would be to sit down and develop a clear understanding of what you 'expect' from him, what you feel you can/are contributing and define how that looks.

I would also encourage you to communicate more with him. Conversations that begin with "I am really frustrated because..." will help you vent your anger constructively without pointing a finger. It may be that you didn't communicate exactly what your expectations were. "I need to know that you are willing to ...." is a good way to let him know what you expect.

Try to define what his needs are and how much time he is willing to dedicate - does it match yours? Put it on paper so that it is visual. Develop a contract of sorts that you both are accountable for.

In the meantime - step back and take a long deep breath. You are not going to 'change' him. Perhaps he has a better understanding of balance than you do at the moment. Understand that this is a trap that many of us fall into when we get excited and passionate. Patience is one of the most difficult lessons that I ..continue.. to learn being a founder.

</comment><comment><USER7> In the long run, your approach to business is unhealthy. Trust me, it won't end with your co-founder. You'll end up resenting the employee who wants to go home to see their family or the employee who stops at 50 hours a week because that's their limit.

I suggest a bit of a step back. Reevaluate your life and try and slow things down. Don't let your business become what defines you. Business is business, its not your life. Don't get them confused.

</comment><comment><USER8> Work in the same physical space. Setup a nice place where you can both work together, if at all possible. That's probably the only way you're going to really sync up on effort. It builds empathy and camaraderie that remote work can't. It's worth whatever it costs.

Realize that there's probably no startup in the history of man where work was truly 50/50. I bet Brin/Page have their own little bitter grudges with each other about the amount of effort they put in at various times. I know that was the case for Gates/Allen _and_ Jobs/Woz. Some level of resentment may be unavoidable. If you can succeed in spite this you won't care. If you fail you'll blame it on this (but you'll probably be wrong).

It may be hard, but for the success of your company it's important that you learn to overcome things like this. If you have to do 75% of the work to be successful so what? You probably couldn't have done 100% of the work, so that 25% was necessary. Even if you gave up 50% equity it was still a good deal.

The most important thing is that you succeed -- not that everyone contributes the same amount of effort. Startups are all about facing reality as it is and this is part of reality.

</comment><comment><USER9> Make a list of his important and valuable contributions.

Consider this list and go from there. Specifically I suggest finding contributions of his that you consider valuable that excite him and make him happy. Push him to do more of those things.

</comment><comment><USER10> I think you need to sit down and make a list of each of your contributions, and how valuable they are, then attempt to have a serious conversation about how your start-up is going, and whether your partnership is the right one to take it forwards.

It might be you need a third person to bring balance between you, or it might be that things are going fine and you're being stressed out over very little.

Having said that, family is more important than money or material success to many people (including myself), so if you say to him "It's your family or this startup, your choice", be prepared for them to walk away.

</comment><comment><USER11> You can never change people, so your hope for a change is unrealistic and unfair to the both of you. Also if you've resorted to writing rants on a website something is broken, and my bet is that it's past repair.

I think it comes down to that you've realized and now resent that your co- founder hasn't put as much into this and you resent this. There are two ways to deal with this: Either realign the shares/structure of this company to reflect this reality or have a divorce.

Pick one path or another -- come up with a proposal.

</comment><comment><USER12> Either find the way to boost up his motivation or tell him he's going to be working part time and his equity will be reduced accordingly (that's assuming, his part time work worth something).

      co-founder who give 100% of himself, gets 50%.
      co-founder who don't, does not.

Better off, if you think you drag on your own for a while, fire him.

The worst thing to your productivity (after social sites...), is a non productive person next to you.

      * s/him/her/

</comment><comment><USER13> Being through a similar situation. My advice would be shut shop, suck up the losses and start fresh. At the end, whatever you and learned in this process is the most valuable thing with you, and so it is with your co-founder.

If you have IP involved, either write if off or agree that both of you an use it without any liability on each other.

The longer this will go on the worse it will get, so just face the reality that this partnership is not working out and start taking corrective action. Good luck!

</comment><comment><USER14> You a word ("I work than him")

</comment><comment><USER15> kissy kissy!</comment>


Mitxela's Project Concepts - <AUTHOR> https://mitxela.com/projects/concepts <comment><AUTHOR> For more inspiration check out the rest of his page, especially his hardware[1] and software projects[2].

I'm not affiliated with him and recently discovered his channel on youtube[3]. But his homepage is just a sparkling land of great and funny things, I had to share it.

[1] [https://mitxela.com/projects/hardware](https://mitxela.com/projects/hardware)

[2] [https://mitxela.com/projects/software](https://mitxela.com/projects/software)

[3] [https://www.youtube.com/channel/UCeEf90AEmmxaQs5BUkHqR3Q](https://www.youtube.com/channel/UCeEf90AEmmxaQs5BUkHqR3Q)</comment>


Learning new languages considered harmful? No. - <AUTHOR> http://www.enigmastation.com/?p=280

<comment><USER2> Good post. I agree with almost everything he says.

> For example, Scala is great, but I don't use it much because there're not > enough cases where its features are required

IMO with languages like Scala, JRuby, Clojure etc. that are built on a stable platform, its easy to switch to them. You don't necessarily need to use every feature, even a subset will make you more productive. The use case would be anywhere you use Java.

> I know Python, Ruby, Scala, and Groovy (...) but when I need to actually get > things done, I still get them done more efficiently in Java, as long as > "more efficiently" doesn't mean lines of code.

I totally agree with this. Recently I picked up Ruby and really like the language and would love to use it. However, I am very comfortable with Python (and its libs, docs, django etc.) and am not really as productive with Ruby. If I would have picked up Ruby first it would have probably been the other way round.</comment>


Origins of Python's "Functional" Features (2009) - <AUTHOR> http://python-history.blogspot.com/2009/04/origins-of-pythons-functional-features.html <comment><USER2> While it's far from a functional language, I find that it's possible to build functional style abstractions without too much headache. The iterator protocol is so well supported by the language and the standard libraries that using map, filter, itertools, generator expressions & comprehensions gets you a long way. You get the rest of the way by writing any specialized combinators you need and then imperative code to tie things together. You can build up a lazy pipeline of data transformations that works pretty well.

There are some gotchas where you need to explicitly copy (itertools.tee) iterators when you have multiple consumers, and be careful with mutable values, but it's manageable.

It would be nice to use curried functions as functools.partial gets verbose, but at that point you're far from Pythonic code.

<comment><USER3> The state of a generator is always a problem that trips me up the most when I try to do FP-Python. In general a function shouldn't care whether the input was a list, set or generator. While iterating over it (or yielding from it), we always mutate some internal state of the iterator.

One solution would be, I think, to always pass tee-d copies of iterators and never(!) any iterator like it is (because you don't know whether next() has side effects or not). The other solution would be to not ever do anything lazy. One could also always consume all iterators fully. That way any generator re-use would be apparent immediately.

Some function that moves a generator forward just one or two items (something with the semantics of findFirst, for example), can subtly introduce bugs.

<comment><USER4> Make your functions consumers. Don't pass tee'd iterators in, but tee after receiving if necessary.

I don't see how find_first would cause any more problems than filter or sum.

<comment><USER5> That is a very bad idea in general and will lead to enormous memory leaks when large tee'd iterators get out of sync with one another.

See here:

 _This itertool may require significant auxiliary storage (depending on how much temporary data needs to be stored). In general, if one iterator uses most or all of the data before another iterator starts, it is faster to use list() instead of tee()._

[https://docs.python.org/2/library/itertools.html#itertools.t...](https://docs.python.org/2/library/itertools.html#itertools.tee)

<comment><USER4> Eh? I discouraged tee'ing iterators, or at least I thought I did.

</comment></comment></comment></comment></comment><comment><USER6> I have started a few weeks ago an index of useful resources (docs and code) related to functional programming in Python:

[https://github.com/sfermigier/awesome-functional- python](https://github.com/sfermigier/awesome-functional-python)

I'm going to include this blog post as well.

Pull requests are welcome, BTW.

</comment><comment><USER7> I never understood his desire to remove 'reduce' from Python. I would love to hear a cogent reason as to why we should have to write a for-loop for everything 'reduce' like. In other languages, 'reduce' (akin to 'fold' for non-Python people) is one of the things you reach for daily.

<comment><USER8> It is still available as functools.reduce

An explicit loop is easier to read as a rule than the corresponding reduce() code. See [http://stackoverflow.com/questions/15995/useful-code- which-u...](http://stackoverflow.com/questions/15995/useful-code-which-uses- reduce-in-python)

<comment><USER9> "Easier to read" for some people, I think you mean

</comment></comment></comment><comment><USER10> I love the functional aspects of Python. It's nice to break the monotony of loops every once and while.

<comment><USER11> I dunno. I love the functional parts of Groovy. But with Python I generally only break out the functional stuff when it's a choice between one unreadable line of code with a comment or else six unreadable lines of code. (E.g. when parsing an API response with weird and arbitrary nesting.)

<comment><USER12> Which is supposed to be functional in that example?

<comment><USER11> The one line would be functional. Here is a good example:

list(filter(lambda x : ('widgets' in x), mixed_widgets))[0]['widgets']

I almost always go for more lines of readable code rather than less lines of unreadable code. But in cases like this, you can either write that as one line of garbage unreadable code or six lines of garbage unreadable code. So I'd rather just leave the overall codebase more dense to make it easier to understand the program flow, and then leave a comment explaining what that line is doing.

<comment><USER13> You could also use the list comprehension form of that:

        [x for x in mixed_widgets if 'widgets' in x][0]['widgets']

More readable? I dunno. More "Pythonic"? Definitely.

Related: I wish the list type in Python included an analogue to dict's ".get(key, default)" operation.

<comment><USER14> definitely more readable - it describes in basic english words what it's doing and it's basically the same as mathematical set notation. The main question to me is the performance implication though. Are generator expressions doing the iteration at C level like map and does that give performance parity then? What about branching - am I correctly assuming that filter is always faster than comprehensions or generator expressions with if-parts?

<comment><USER15> Must watch: [https://www.youtube.com/watch?v=OSGv2VnC0go](https://www.youtube.com/watch?v=OSGv2VnC0go)

I believe that the list comprehension will be faster than filter, but as always, any time you replace readable code with unreadable code for performance reasons, you damn well better time it.

<comment><USER16> ~4.5 times faster with comprehension.

        In [11]: timeit.timeit('''list(filter(lambda x : ('widgets' in x), mixed_widgets))[0]['widgets']''', '''nw={'abc': 'def'};w={'widgets':'s'};mixed_widgets=[nw]*100+[w]+[nw]*100''', number=100000)
        Out[11]: 2.6956532129988773

        In [12]: timeit.timeit('''[x for x in mixed_widgets if 'widgets' in x][0]['widgets']''', '''nw={'abc': 'def'};w={'widgets':'s'};mixed_widgets=[nw]*100+[w]+[nw]*100''', number=100000)
        Out[12]: 0.5911771030077944

But not generating the list at all is still going to be faster (with bigger gains for bigger data)

        In [13]: timeit.timeit('''next(x for x in mixed_widgets if 'widgets' in x)['widgets']''', '''nw={'abc': 'def'};w={'widgets':'s'};mixed_widgets=[nw]*100+[w]+[nw]*100''', number=100000)
        Out[13]: 0.3324074839911191

<comment><USER14> I guess my next question is then - why is anyone using filter/map instead of comprehensions or even generator expressions? Familiarity when coming from FP?

<comment><USER15> Well, for one I believe they pre-date comprehensions. Having them as functions is also occasionally useful for partial application, e.g.

      from functools import partial
      to_strings = partial(map, str)
      # vs
      def to_strings(seq):
          return (str(elem) for elem in seq)

<comment><USER14> I can see it together with partial, yes, that's when it can become a bit cleaner. Another reason why I use map is when I want to use multiprocessing or multithreading (with IO heavy functions). But on a fine grained level of code I find it really hurts readability compared to comprehensions.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER17> I have sometimes wondered why python used 'lambda' for anonymous functions rather than just... well literally anonymous function - normal function syntax without the name. Could have been something like

`def (x,y): x+y`

This makes it sound like that was just how it was implemented. Nothing fundamentally wrong with lambda i guess

<comment><USER18> I suspect this is because

        def f(x, y): x+y

is valid one-line syntax for a _regular_ function definition (that in this case computes `x+y` and returns `None` becaus Python does not have implicit returns). Maybe the parser could distinguish between them by saying that "if the function definition is all on one line _and_ the function is missing its name, it's a _lambda_ ":

        def f(x,y): return x+y
        g = def x,y: x+y
        assert f(3,4) == g(3,4)
        assert f != g

     That said I have no

Nothing gives me the willies in mathematical code like writing out Greek letters. I don't know why, it just does. The fact that the otherwise excellent Stan ([https://mc-stan.org](https://mc-stan.org)) only accepts ASCII variable names is depressing. I would love to be able to actually write `map(λ x: x+7, range(5))`. I think a big reason why people don't use `map`/`reduce`/etc. more is that writing anonymous functions is still verbose (`lambda` is just too long a word) and relatively hard to read compared to list comprehension. Better still a syntax like `x -> x+7` would be ideal, since I'm pretty sure `->` would be a unique syntax element.</comment></comment>


Sorting algorithm visualisation (nice) - <AUTHOR> http://sortvis.org/index.html

<comment><USER2> See also:

<http://news.ycombinator.com/item?id=1077521>

<http://news.ycombinator.com/item?id=750858>

<http://news.ycombinator.com/item?id=730346>

<http://news.ycombinator.com/item?id=716870>

<http://news.ycombinator.com/item?id=555971>

<http://news.ycombinator.com/item?id=555549>

<comment><USER3> Do you keep a master reference of topics and links? Or are you getting this list by searching. One of the above links has references by you to the bottom two as well...

<comment><USER2> I do a search, open all the items in new tabs, check briefly that they really are the same thing, then copy the links in. It's faster than it sounds, faster than you might think.

Also, every now and again I run into something I haven't seen before and which is of value. I use this, then, as a means of adding value by cross- referencing, but also of gaining value to me by a directed random search.

</comment></comment></comment><comment><USER4> I have a real static visualization. I should put some pictures online. My visualization does not rely on in-place algorithms: There's a square of pixels n x n, if two items are compared by the algorithm the corresponding pixel turns black, otherwise it stays white.

The traces of mergesort, quicksort and so on are quit distinctive.

<comment><USER5> Sounds neat, please share!

<comment><USER4> I will.

I could not find my old program, so I guess I will have to write a new one. Should be easy enough.

</comment></comment></comment><comment><USER6> I'd prefer to see these where each step in the algorithm was a fixed width that is the same across all of the images. As-is the step width is dependent on the number of steps. This fails to show the speed of convergence.

</comment><comment><USER7> This is excellent. In my opinion, this is the way algorithm information should be presented. No abundant scientific formulations. Python works well as a pseudo-code substitute and visualizations are clear and intuitive.

<comment><USER4> Depends on what you want to show.

If you are, say, analysing run-times, you wont get very far with this choice of presentation.

<comment><USER7> I'm just very pissed off for how such technical information gets represented. People either give you a long academic text with abbreviations and symbols, or they try to explain some very simple things... in Haskell. Or in Java for that matter. What you get is an overabundant chunk of information that contains more of the ritual language-specific circlejerk, than the info you're actually looking for.

This situation is all over the undergrad academia. For a math major, numerical method algorithms described in advanced notation is ok, as long as you are fluent in it. But when I take CS courses and see the same presentation, I get very confused. For god's sake, these people are going to spend more time on Novell manuals, than on the graph theory. I could have learnt all these algorithms, if I didn't need to chew through all that theoretical packaging and generalization. Instead I spend all my time to dig through precise definitions just to get one or two concepts, when I could have gotten them all, if representation was good enough.

I don't think that CS undergrads don't need precision offered by scientific approach. I think there comes a time when you feel the need for precision. But this time won't come when you only know quicksort in java. You have to gain a broad specter of examples before you can set off to learn about big O analysis. Because this kind of analysis is about comparison. Learning is ineffective when you compare one algorithm with a blurred idea of another.

I might sound like a confused student, but what I'm trying to say is that there should be one unified, simple and consistent source of algorithms in understandable languages. I have the large algorithm encyclopedia from Springer Verlag, and it polluted with all uncertainties of the modern CS studies. It shows us the perspective fields of study, but it's too abundant to explain simple ideas. Same thing is about Wikipedia. It tries to be both precise (because experts write articles) and simple (because people like me read them) - but this is like running in opposite directions simultaneously.

<comment><USER4> You may have to write that book yourself.

Somewhat related: I am quite fond of Chris Okasaki's "Purely Functional Data Structures" and "Concrete Math" by R. Graham, D. Knuth, and O. Patashnik.

But I have almost the exact opposite qualm about most books from what you air: I can't have enough precision. I agree that there can be too many technical details, but there can't be too much precision.

If CS undergrads can't take it, they deserve to suffer. There's always vocational training for people who want a focus on applications. Try to become e.g. a Fachinformatiker (<http://de.wikipedia.org/wiki/Fachinformatiker>).

P.S. I guess I am a bit too harsh. I agree with most of your points.

> I could have learnt all these algorithms, if I didn't need to chew through > all that theoretical packaging and generalization. Instead I spend all my > time to dig through precise definitions just to get one or two concepts, > when I could have gotten them all, if representation was good enough.

Precise definitions can help your understanding. I hope you will some day get a professor who uses them to good effect.

> Learning is ineffective when you compare one algorithm with a blurred idea > of another.

Isn't this a good argument to learn many algorithms with precision?

> I might sound like a confused student, but what I'm trying to say is that > there should be one unified, simple and consistent source of algorithms in > understandable languages.

Go, write one, please!

> I have the large algorithm encyclopedia from Springer Verlag, and it > polluted with all uncertainties of the modern CS studies.

Are you talking about "The Algorithm Design Manual" from Skiena? I co-worker brought it to the office recently. I can't bring myself to like it. It seems there are too many references and not enough meat. I have fonder memories of Sedgewick's "Algorithms". But that may be nostalgia. (Get the version in C or the original Pascal.)

Feel free to ask me about algorithms or data structures, my email address is in my profile. I enjoy talking about algorithms way too much for my own good.

</comment></comment></comment></comment><comment><USER8> Along the same lines, but real-time animated for different data characteristics:

<http://www.sorting-algorithms.com/>

</comment><comment><USER9> I just took a brief glance, but these just look like standard sorting networks.

<comment><USER4> It has nothing to do with sorting networks, as far as I can tell.</comment></comment>


Hoping Google's Lab Is a Rainmaker - <AUTHOR> http://www.nytimes.com/2015/02/16/business/google-aims-for-sky-but-investors-start-to-clamor-for-profits.html?ref=business <comment><USER2> After closing all of the big legacy industry research Labs, at the end of the Millennium, there seems to be some Kind of delayed second wave right now.

Is this really a discussion worth having? How is it different from the last one?</comment>


How 1,000,000 people can become your first 500 precious customers - <AUTHOR> http://www.secretgeek.net/sales_funnel.asp

<comment><USER2> So if your software was web based you could cut out the download step, the install step, the finding the website step, and probably the where to purchase step.

Quit building installable software.

</comment><comment><USER3> 50% of his statistics are made up.

</comment><comment><USER4> > 50% trust pay pal, but enter the wrong credit card details.

So you're saying that 50% of your potential customers are too careless to enter their own credit card details correctly?

<comment><USER5> He's probably demonstrating that you lose X% of people at each step. Simple conversion funnel math, with the effect that improving any step in the pipeline improves your overall yield (and the more steps there are, the more people you lose).

<comment><USER4> Yes, I know. I was just pointing out that he was reaching rather far for some of these steps. I would assume that anyone who has already made it past the filters of wanting the product and having a credit card in the first place is extremely unlikely to not only type the card number in wrong, but to let that defeat them in getting what they want, since they could just type it in correctly when it's declined.</comment></comment></comment>


World's Tallest Lego Tower?  - <AUTHOR> http://img.dailymail.co.uk/i/pix/2008/05_02/legoupPA0605_468x669.jpg <comment><USER2> There is a claim viewable via Google search that a subsequent tower was even taller.

<http://blog.wired.com/geekdad/2008/11/tallest-lego-to.html>

<comment><AUTHOR> Its interesting that because the towers are cable stay supported, the forces are almost strictly compression pushing down on the legos. So the limiting factor to possible height will be the compression strength of a lego, which seems pretty high.</comment></comment>


Twitpay Launches, Uses Amazon Payments - <AUTHOR> http://blog.twitpay.me/2009/03/03/welcome-to-twitpay/

<comment><USER2> AFAIK, Twitter doesn't offer a sensible API for twitter services to use, such as having the user create a unique key which gets sent to a service, which then uses this key as authentication. The user (and twitter) would then be able track all activity based on that key, let you disable that key, etc. As a result of this, every Twitter app that needs to access your account asks for your username and password.

And, now, your Twitter account can have money in it?

Besides the obvious question of "is this really useful?", which I presume the answer for a lot of people is: "Yes! You can _show off_ you paid someone... on TWITTER!!!!", it seems to me having funds tied to a Twitter account is a big mistake. Like Facebook, the default login is not secure, upping the ante for sniffing a cleartext password from just denting your social life to liquidating whatever funds you've put in your Twitpay account.

<comment><USER3> This bothers me about EC2 as well. Most efforts don't get how useful (and headache saving) delegation-of-rights functionality is. This should be part of everyone's toolbox by now...

<comment><USER2> Agreed. It's really quite shameful... I can't even name any services that do it right.

</comment></comment></comment><comment><USER4> Pretty cool stuff. I found it hard to set up, but it seems quite useful now that it is set up.

How bad are Amazon Payments fees? I can see this becoming more expensive that it's worth with .05 + some percentage on top.

<comment><USER5> Roughly equivalent to PayPal: <https://payments.amazon.com/sdui/sdui/about?nodeId=6022>

You don't have to settle up immediately, though. We see this being really useful for people who pay each other back and forth. Run a tab with your friends, and only settle up when one of you needs the cash.

And yes...the Amazon Payments setup is a little rough. We're giving them feedback to see if we can smooth it out a little.</comment></comment>


Browser tool that can modify css/html/js and refresh a page with changes intact? - <AUTHOR>

This would be useful as a web developer when I try to remove things one by one until I find what's causing an issue. <comment><USER2> You should check out some of the new and upcoming developer tools in chrome. Paul Irish has made some good videos about the tools available: [https://www.youtube.com/watch?v=FdsummsTeLo](https://www.youtube.com/watch?v=FdsummsTeLo)</comment>


We Buy Broken Gold - <AUTHOR> http://laphamsquarterly.org/swindle-fraud/we-buy-broken-gold <comment><USER2> Note these are the same people who sell you your diamond engagement ring. Every woman who insists on a ring like this is starting your marriage on a lie. I got dragged into a store like this and paid thousands of dollars to a racist asshole who told me how much smarter we were than those Christianss who come in to buy jewelry for Christmas. I'll probably never really forgive my wife for doing that (but she is wonderful in so many way, just a victim of that propaganda like so many others), and God help me if my daughter doesn't know better by the time she grows up.

<comment><USER3> I don't think it's complete nonsense - buying something useless and expensive is a very strong signal (like the peacocks tail). Buying something useful for the money instead is not the same thing at all.

So while the diamond thing was created through advertising, it persists because it has a real function. Maybe it could be replaced by something else, but that would probably be something just as useless to demonstrate commitment.

Still, if you can get by without the investment, good for you.

<comment><USER4> Some serious diamond astroturfing going on in here. I've never seen anything so obviously stupid defended so thoroughly on HN.

> Still, if you can get by without the investment, good for you.

I think you might be a little confused about the definition of 'investment'.

<comment><USER5> > Some serious diamond astroturfing going on in here.

Accusations of astroturfing aren't allowed on HN. See [https://news.ycombinator.com/item?id=9180466](https://news.ycombinator.com/item?id=9180466) and the links there for why.

If you believe you see evidence of astroturfing on HN, please email it to us instead: firstname.lastname@example.com.

</comment></comment></comment></comment><comment><USER6> This is one of the reasons why poor people stay poor, because they typically have a _wildly_ disproportionate value of their household's portfolio in jewelry or gold (+), often explicitly because of the ability to use it as savings or collateral. It happens to be an abominably bad vehicle for both.

\+ I'm trying to find the citation but I think the average value in the US for households in the lowest wealth quintile is > 25% of their assets.

<comment><USER7> Poor people stay poor because there are so many systems in place that squeeze them, from usurious payday/title loan shops to rent-to-own places; and the stuff poor people buy is never built to last. There's something to the Vimes theory of socioeconomic unfairness.

The people who run these systems have free reign to squeeze the poor because the poor have virtually no political power. (When was the last time you saw a politician throw a 50c/plate dinner?)

Assigning any part of poverty to poor people's inability to assess gold seems bafflingly detached from reality.

<comment><USER8> _Poor people stay poor because there are so many systems in place that squeeze them, from usurious payday /title loan shops to rent-to-own places;_

There are also utility deposits, auto insurance, etc. But, there are a tremendous amount of free resources available to poor people, from food stamps and food kitchens to clothing. It could be easier for someone with nothing to scrape together a few thousand bucks than someone in the middle class. If your food is subsidized, your income tax rate is low, and your lifestyle costs are low, e.g. not having to insure a home or expensive car, then you should be able to save quickly.

So, I'd assert that: Impulsive people, those severely uneducated in their economic alternatives, or those with little marketable skills stay poor because they continue to make bad decisions.

<comment><USER9> You're assuming that poverty doesn't cause impulsiveness, and that poor people don't face any costs that the middle classes don't.

Both of these assumptions are likely untrue. Poverty makes the cost of many things higher. Banking is non-trivially more expensive. Public transport often ends up more than the cost of a car, and that's assuming you can afford a season ticket. Those in poverty often cannot. Rental is over a lifetime normally more expensive than buying - and if you're in poverty, you can often expect rental to include large deposits which you often won't get back.

For the impulsive thing, see [http://yalepress.yale.edu/yupbooks/book.asp?isbn=97803001209...](http://yalepress.yale.edu/yupbooks/book.asp?isbn=9780300120905). Essentially if you're poor, there's a good chance that your marginal utility curve is upward, rather than downward sloping. Which rewards impulsive behavior in a way that is not the case for those who meet the normal standard of living in their society.

</comment></comment></comment></comment><comment><USER10> > Why would a wealthy diamond merchant in a three-thousand-dollar suit want to > cheat me out of a hundred bucks' worth of gold?

How else do you become wealthy and buy $3000 suits?

<comment><USER11> There are other methods, but regardless, it doesn't explain why keep doing it once you got that $3K suit. A relevant question for someone who got there using other methods, BTW. I think the answer is in the power of habits coupled with an unlimited and growing desire for money.

<comment><USER10> Like power, money is addictive. People who got their power or wealth through immoral means often don't stop once they have "enough".

<comment><USER12> There is no "enough", when you want everything.

</comment></comment></comment></comment><comment><USER13> Hmm. How does this description of a swindle jive with the amount of gold that is in Apple's 18 karat gold? [http://leancrew.com/all-this/2015/03/apple- gold/](http://leancrew.com/all-this/2015/03/apple-gold/)

""Now we multiply that by fourteen for fourteen karat and divide it by twenty- four for twenty-four karat, which is what it would be if it were 100 percent gold," you explain to the seller. "That gives us the price for your fourteen- karat gold. Multiply that by fifteen, for fifteen grams. Now, fourteen karat is 56 percent gold and 44 percent base metal, which burns off at the smelter, so we multiply that by 0.56.

…

The real key to this scam is that you've deducted for the impurity of fourteen karat not once but twice: first, when you calculated the per-gram price and again when you "deduct for the base metal."

<comment><USER14> Supposedly they're not using ceramic-matrix gold in the Edition, but rather a more traditional alloy.[1]

[1] [http://atomicdelights.com/blog/a-glimpse-at-how-the-apple- wa...](http://atomicdelights.com/blog/a-glimpse-at-how-the-apple-watch-is- made)

</comment></comment><comment><USER15> Kind of a tangent but I looked up one of the buyers in the story. Incredibly fascinating guy: [http://en.m.wikipedia.org/wiki/Armand_Hammer](http://en.m.wikipedia.org/wiki/Armand_Hammer)

<comment><USER16> Who also happens to be the great-grandfather of Armie Hammer, who played the Winklevoss twins in _The Social Network_.

</comment></comment><comment><USER17> I am not a fan of government oversite, but I wouldn't mind putting a few regulations on Precious metal dealers in the United States?

I would like to see some standards in weighing the metals, and maybe minimum amounts required per gram of metal?(tied to market values)

The fine for breaking the law would be just enough so the average shop would think twice about ripping off the public.

No, I wouldn't expect the FBI to run regular stings, but if shop owners knew they might have a federal agent on the other side of the counter they just might not be such horrid individuals?

I rember being swindled over some silver when I was younger, and really desperate. I still think about it whenever I pass a pawn shop, or gold buyer.

(actually, I think some states/counties already have some laws regarding weights & measures, but precious metal buyers never get caught? I know some larger recyclers are inspected, but these little places open 24 hrs/day get way with absolute thievery? Maybe they think every sale is stolen? Or, they just don't care?)

<comment><USER18> The prices are already out there for anyone that wants to look. $1150 spot, 28.35g per ounce = $40.56 per gram. Avg 2.5g for a woman's solitaire ring = $101.40 for pure gold.

14k Gold = (14/24) = $59.15 in gold. -25% for the store and the refiner and you are at $44.36 to buy that 14k gold band.

I just looked up that same ring on a wholesaler website and retail is $245.49 plus shipping to get it to the store.

That's how a ring you paid up to $250 for is "worth" $45 when you try to sell it for scrap. No one tried to screw anyone, it's just math.

<comment><USER19> > 28.35g per ounce

No, it's 31.10g per ounce. The price of gold is always quoted as _troy_ ounces[1]. You used the figure for the avoirdupois ounce which is used for anything that isn't a precious metal[2].

Though it doesn't really affect the argument you're making since 28.35g and 31.10g are pretty close, but how do you not know about troy ounces as a "former jeweler" (as it says in your profile)?

That's like a doctor saying body temperature is 105F or 40C.

[1] [http://en.wikipedia.org/wiki/Troy_ounce](http://en.wikipedia.org/wiki/Troy_ounce)

[2] [http://en.wikipedia.org/wiki/Avoirdupois](http://en.wikipedia.org/wiki/Avoirdupois)

<comment><USER18> I do know - but customers don't for the most part. So I just used standard and didn't worry about the pennies. It's a lot easier than trying to explain to them that there are two kinds of ounces.

<comment><USER19> > _but customers don 't for the most part. It's a lot easier than trying to > explain to them that there are two kinds of ounces_

It's that kind of stuff that makes people think that jewelers and gold buyers are crooked. Some customers--perhaps only a minority-- _do know_ the difference, and they will become suspicious and tell others.

Whenever a professional of any kind (car mechanic, doctor, tax preparer, vet) tells me something that is contrary to a known basic fact, then alarm bells go off in my head. I start thinking that this guy is either incompetent or trying to cheat or trick me in some way, and I will tell friends to watch out. Fortunately it doesn't happen all the time. I generally trust doctors for example.

In one of your other comments, you said, _There are a staggering number of honest jewelers and gold buyers out there. But stories about obviously crooked people are what makes everyone say "see, these guys are ALL crooks"._

Maybe the jewelers and gold buyers--like used car salesmen--have gotten the reputation they deserve.

<comment><USER18> And this is why I generally avoid these discussions. Someone will ALWAYS find a way to say you are wrong even when you are making an error in their favor. And for the very very few people that do know the difference, when you explain why you do it the way you do, and they will get more money for it, they tend to appreciate it. Not all, but most.

</comment></comment></comment></comment></comment></comment><comment><USER20> Reminds me of when Bank of America's "Financial Analysts" announced Bitcoin was worth $1300 [1]... almost immediately after China announced the ban on Chinese financial institutions using BTC [2].

[1] [http://www.forbes.com/sites/samanthasharf/2013/12/05/bitcoin...](http://www.forbes.com/sites/samanthasharf/2013/12/05/bitcoin- gets-valued-bank-of-america-puts-a-price-on-the-virtual-tender/)

[2] [http://www.bloomberg.com/news/articles/2013-12-05/china-s- pb...](http://www.bloomberg.com/news/articles/2013-12-05/china-s-pboc-bans- financial-companies-from-bitcoin-transactions)

</comment><comment><USER21> If you want an inexpensive, liquid, vehicle for investing in gold look at SPDR Gold Shares. [http://www.spdrgoldshares.com/usa/](http://www.spdrgoldshares.com/usa/)</comment>


Microsoft Rereleases Windows 10 October 2018 Update, Fixes Data Deletion Bug - <AUTHOR> https://www.theverge.com/2018/10/9/17957506/microsoft-windows-10-october-2018-update-data-deletion-fix <comment> java-man is it going to reset my file associations again?

<comment><USER2> unblock me, coward.</comment></comment>


No salary for Elon Musk but a $7bn payout if Tesla reaches $650bn valuation - <AUTHOR> http://www.telegraph.co.uk/business/2018/01/23/elon-musk-wont-take-salary-bonus-tesla-pursues-650bn-valuation/ <comment><USER2> The headline is incorrect. The Telegraph article says that Elon Musk's potential payout is $70 billion, not $7 billion.

The New York Times article ([https://www.nytimes.com/2018/01/23/business/dealbook/tesla-e...](https://www.nytimes.com/2018/01/23/business/dealbook/tesla- elon-musk-pay.html)) lists the potential payout at $55 billion.

Either way it's a lot of money, but if he can succeed, he will certainly have earned it.

</comment><comment><USER3> I like that milestone, roughly 10x of current market cap.

I believe Elon will succeed in lining everything up optimally for Tesla to succeed and outcompete others (even if they all copy his ecosystem design/plans - he's still ahead with mindshare and strategy and arguably execution).

I look forward to having a Tesla or two that I share with friends and family, a house with Tesla solar roof tiles, Tesla Powerwalls, etc.

<comment><USER4> I also like the milestone, but I don't think it's achievable. As the article mentions, it's on a similar order of magnitude to google and apple.

<comment><USER3> Elon and Tesla have been laying the foundation for exponential growth I believe they can achieve; along with SpaceX that will lead the way for mining asteroids etc will further be a profit layer others won't have that he can leverage in the future to his heart's content. Tie SpaceX's global satellite network and connectivity with vehicles ... there's a lot of synergy to what he's doing, a buzzword that should be used to describe the ecosystem Elon's creating.

Edit: Not to mention some other boring plans he has that will disrupt transportation even more than electric vehicles and reusable rockets will..</comment></comment></comment>


Doing more exercise won't help you burn more calories - <AUTHOR> https://www.newscientist.com/article/mg24132130-400-why-doing-more-exercise-wont-help-you-burn-more-calories/ <comment><USER2> True, the simple fact is you can't out run your mouth. Exercise is good for other health reasons not for weight loss. In fact if your severely overweight jumping on a treadmill will damage your joints.

Intermittent fasting, and eating diets like unethical vegetarian (meat sometimes) are great for weight loss.

If your going to eat junk, binge, get it out of your system. Try to limit this to rare and appropriate moments. Birthday parties, event dinners.

Don't feel bad you enjoy food, don't take it away, just don't eat junk regularly.

Do low impact cardio like swimming or biking, do low joint stress strength training (yoga or resistance weight training)

Relax, don't stress, sleep more, eat less ( when your body tells you to eat only not because of the clock).

Relearn thirst vs. hungry. Your probably not hungry, just thirsty most times.

</comment><comment><USER3> Except for metabolic adjustment where the body spends less calories by being more efficient with exercise or slower with low calorie diet and the notorious fact that people underestimate calorie ingestion it really is not as complicated as this article makes it sound.

It is _very_ difficult to cutivate a consistent healthy diet and exercise regimen indeed and except for very few physiological/mental reasons any recommendation that denies caloric deficit is garbage.

<comment><USER4> Right so really the headline is 'diet is more important than exercise when it comes to weight loss' which is no surprise to anyone

<comment><USER5> Maybe not in informed circles like HN, but that is very surely a surprise to a lot of people in the mainstream.

</comment></comment></comment><comment><USER6> I'm surprised this has been posted, never mind upvoted by anyone rational. Doing work consumes energy. End of discussion.

(There is an argument that it is easier to eat less than to exercise more, but that is a different debate. Ideally you do both.)

<comment><USER7> This is not how homeostasis works (at all). Metabolism is real and so is genetically determined caloric retention. Thin people don't necessarily eat less or exercise more, they sh*t more calories than fat people, who store more. It's not all this, but it is also not zero this. Regardless, it's absolutely not as simplistic as producing and consuming energy, it's a few billion years of evolved genetic diversity of retaining and eliminating calories for homeostasis.

<comment><USER8> I don't see how any of that relates to the comment you replied to. No matter how your metabolism works, exercising _will_ burn calories, and I think that's all the above comment was getting at.

Now that that's been said, would you happen to have a reference for

>Thin people don't necessarily eat less or exercise more, they sh*t more calories than fat people, who store more.

this? I would be interested in reading about the correlation.

<comment><USER9> The person you are responding to isn't necessarily wrong about metabolism being real. I wouldn't say fat people "store more", it's just that if you see thin people eating a ton (and not moving much) and being thin the odds are good that they have a very fast metabolism (by which I mean their base metabolic rate is significantly above the average, to the tune of 4k+ kcal per day). I know this because when I was in university we did at-rest calculations with a hood over the head (to calculate oxygen usage, which we used to calculate BMR). Notoriously thin people had outrageous BMRs like I mentioned, while most people were around the average. I don't know about people who are fat, as I didn't have them in my class.

</comment></comment></comment></comment><comment><USER4> Can't read the article so I have to assume it's misinterpreted results or a crappy study.

<comment><USER10> [https://outline.com/sSzxbx](https://outline.com/sSzxbx)

</comment></comment><comment><USER7> This is the sad truth about genetics. And it leads to self elevation of the genetically thin by equating thinness with self restraint and morality.

</comment><comment><USER11> I wonder if the full article brings up the fact that there are genetically- determined response levels to aerobic exercise. See Michael Mosley's "The Truth About Exercise" and the University of Bath study it refers to.

</comment><comment><USER12> What about the HN users who don't have a subscription to newscientist.com?

<comment><USER10> [https://outline.com/sSzxbx](https://outline.com/sSzxbx)

<comment><USER13> This only provides what is available for free?

</comment></comment></comment><comment><USER14> Exercise makes you hungry.

</comment><comment><USER15> Non paywall anywhere?

<comment><USER10> [https://outline.com/sSzxbx](https://outline.com/sSzxbx)

<comment><USER16> This outlined version appears to end at the same point as the paywalled version. Am I missing something?</comment></comment></comment>


The Dropcam Team - <AUTHOR> https://medium.com/@gduffy/the-dropcam-team-b9e81f44f259 <comment><USER2> Thanks for creating Dropcam - I still love the device even with the Nest "improvements."

I also worked at Nest (on the thermostat product) and couldn't echo your comments more strongly.

Tony Fadell is a terrible manager. There are so many public data points at this point: the perma 6 day work weeks, the "f __* being Googly " comment at the all hands, refusing to allow Nest employees to have the Google massage benefits because "they don't deserve it", and now, throwing a great team under the bus to hide his inability to manage. I have another twenty that I can't share because of confidentiality and I'm sure you do as well.

The fact that Alphabet/Google hasn't replaced him is a horribly disappointing statement about what they think is most important: profit, not employees, not culture. Or maybe not even profit after your comments. :(

Please do write the other story about your acquisition when you can - a lot of people here could learn a lot from it as a cautionary tale.

<comment><USER3> Holy moly - 6 days a week?

I can't fathom having to do that at a salaried job and staying for more than two weeks. Unless they were paying me an obscene amount of money, but even then, I'd probably be on the look out for something better.

<comment><USER4> Haha, you'd hate the game dev industry then.

<comment><USER3> Lol I'm always horrified when I read what it's like for them. I feel like almost every other kind of developer is well paid and appreciated, yet for some reason game devs seem to always be overworked, underpaid and underappreciated with no job security. Maybe it's because more people want to work in the game industry?

I'd rather have a well paying dev job with reasonable hours, and work on games in my own time.

<comment><USER5> Many more people want to work in the game industry. Very few people dream of creating CRUD apps some day.

Also, the pipeline and recruiting is set up for it. Places like Full Sail are set up right next door to major studios - you get your training, then you walk into the meat grinder.

<comment><USER3> That's sad. I feel like a lot of them would be better off getting a normal, well paying job as a non-gaming dev, then work on their own projects in their free time.

<comment><USER4> Good news is the industry prepares you pretty well(on the development side) for a career in embedded systems, or high performance compute.

But yeah, gamasutra does a survey each year and the career time in gamedev is usually around ~3 years.

</comment></comment></comment></comment></comment></comment></comment><comment><USER6> The cracks really are starting to show! Also, I've said it for years.. people don't quit jobs, they quit managers/leaders.

<comment><USER7> Thank you for this.

<comment><USER6> It's actually pretty crazy how much you realize this happens once someone says that.

</comment></comment></comment><comment><USER8> Wow, shots fired!

To be fair to Tony Fadell, as I understand it, he made the comments to his team and not the public, so he was probably speaking more from the hip than he would have if he was talking to a reporter.

In this case he was trying to assure his team that they shouldn't be worried about the departures, and one way to do so would be to try and spin it as a positive. On the other hand, wow, you just said this about people who you are trying to integrate into your team.

Anyone whose managed people knows how hard it is to keep your employee's happy, especially when things aren't going well. You are constantly fighting battles and just when you feel like you've reached your breaking point you get another burden put on your shoulders.

TL/DR Stress is an awful thing and it makes people react in ways that they normally wouldn't.

<comment><USER9> I have encountered this sort of sour grapes reaction to employee turnover a fair amount over the years. I have literally been told that no one who has ever left the company has been someone we needed or should have tried to retain.

Whenever a manager or executive tells the team that they didn't want the people who left anyway, it makes me think three things:

1\. They shouldn't have continued to employ people who they didn't value in the first place -- if you have identified someone who isn't working out, it should be dealt with (fairly and humanely) rather than waiting for attrition to do your job for you.

2\. This person probably says this about everyone who falls out of their favor.

3\. For all I know this is what they'll be saying about me in a month, so I may as well make other plans and be somewhere that values employees appropriately.

It's really damaging to team morale to make these kinds of blanket statements, and I don't respect or trust people who refuse to hold themselves to a higher standard than that.

<comment><USER10> Thanks for putting my thoughts on the paper for me. This should be on a list of things that only shitty managers say. (r/shittymanagerssay ?)

</comment></comment></comment><comment><USER11> Couple of things about the Medium article itself.

It is not obvious that "Reed Albergotti's recent article." is a link. No anchor tag styling css to know otherwise. On clicking the hidden link I see the following

" This link came from a private email sent to Greg Duffy and has already been used to view the full text of the article.

If you are a subscriber please log in. To create your own account, subscribe or email email@example.com.

Subscribe to The Information ... "

It will nice, if we can fix both problems, so your medium article reaches more target audience.

<comment><USER12> The link is underlined. But what you need to understand is that Medium is way too cool to underline text they way a normal website would [0], and instead does it using a gradient as a background image. Maybe you're blocking background images, or something like that?

[0] [https://medium.com/designing-medium/crafting-link- underlines...](https://medium.com/designing-medium/crafting-link-underlines- on-medium-7c03a9274f9#.f5w06hopd)

<comment><USER11> What? Yes, it is underlined in Safari but not in Chrome. I am checking what is different in Chrome. I don't have any fancy plugins/extensions in Chrome which blocks images other than adblock.

<comment><USER13> Underlined for me in Chrome.

</comment></comment></comment></comment><comment><USER14> What is happening with Google? Its strange that all their bets are resulting in these kind of childish situations. I understand unhappy employees leaking stuff but coming from the upper management like this is not good at all.

<comment><USER15> Who knows, but there's this vision of home automation that google has bought into and thinks it can sell. The logical place for your home automation 'master' is your thermostat. Everyone has one and having a nice one is well... nice and centralizing it as a sensor hub makes a lot of sense. Google saw Nest and knew it had a lot of potential, so they snapped it up. Now they're trying to sell us on this idea.

Personally, I'm just not seeing it. The idea of a centralized or master system is old fashioned. People will just buy automation as they need it. So I'll have an app on my phone for my Ring doorbell, another for my garage door, another for my security system, another for my lighting, etc. Google is betting that people won't want this and want an Apple-like experience of just having one vendor perform all their tasks, but people without SV salaries aren't going to casually drop Nest-like prices (total cost of the system with multiple smoke detectors is in the four digits) all at once and they might resent a high level of vendor lock-in. They'll just pick up random automation pieces at home depot for $99 each now and again and just install a new app as needed. Its not a terrible inconvenience and so what if my doorbell can't talk to my thermostat.

<comment><USER16> In this case, though, as I understand it (I live in NYC and am thus not the target market for these types of products besides maybe lightbulbs), Apple's solution, HomeKit, _does_ allow interaction between disparate products, and it's even the banner feature!

[https://www.apple.com/ios/homekit/](https://www.apple.com/ios/homekit/)

<comment><USER17> But your 'central controller' is your phone's proprietary software. And a wireless central hub isn't always ideal because that central hub (your phone) sometimes leaves the house.</comment></comment></comment></comment>


ObamaCare months behind testing IT data security - <AUTHOR> http://www.reuters.com/article/2013/08/06/us-usa-healthcare-security-idUSBRE9750YH20130806

<comment><USER2> first in a long line of failures. Say goodbye to medical care as we know it.</comment>


Ask HN: ISO a webdev with a tiny penchant for mayhem - <AUTHOR> I'm a writer and I'm working on a project to highlight some of the more "interesting" aspects of our technology utopia - everything from privacy to shortened attention spans.  My project will have an online component and I would like to find a webdev interested in building something a little bit subversive.  Nothing illegal, but certainly something that might get a bit of attention.  I'm in the Bay Area and I'd prefer to collaborate in person so please be local.  Ping me if interested - I'm open to both contracting or partnering. <comment><USER2> TL;DR

(But it's not clear what you actually want other than a dev.)</comment>


Ask HN: Best datastore to store high volume time series data - <AUTHOR>

Someone asked me what datastore I would use to store billions of sensor measurements (adding 50K+ per second). The data once stored won't change and a data point would be a simple timestamp and an integer. I couldn't come up with an answer. Any ideas? <comment><USER2> You havent provided enough information to answer this question. From what you've described, practically _anything_ would work. The missing pieces? How do you need to be able to query it? Or, what, put simply, what's the plan for the data?

Beyond that, my first thought was a sorted set in Redis. However log(n) seems like an expensive price to pay for inserts which'll mostly be a push (since scores will largely be sequential).

<comment><AUTHOR> The plan is to provide an overview of the trend in the data (plot it) per sensor (there are hundreds of them). Perhaps select a minimum and maximum over a certain time interval.

</comment></comment><comment><USER3> Use Round Robin Databases-- they're made for high volume timeseries data. They're fixed in size, so they won't grow after you create them. They also support automatic rollup, so you could save 1 datapoint per second for 10 minutes, then save the average of 15 datapoints for the past day, etc.

Caveats:

1) You can't change the schema once you create the file. Adding new fields means adding a new file or recreating your existing file

2) With heavy I/O you may need to put these files on a RAM disk, and then periodically flush the persistency.

<comment><AUTHOR> That sounds very interesting. I could only find RRDTool which seems like a combination of a RRD and a graphing tool. Further some vague references about RRD in PostgreSQL. Am I missing something?

<comment><USER3> RRDTool is what you're looking for. The graphing portion is because you probably want to display the data. "rrdtool dump" will export to XML. You can use the RRD files without using the graphing utility.

For an example, see the Cacti project.

</comment></comment></comment><comment><USER4> Look into graphite and statsd</comment>


Hex Invaders - <AUTHOR> http://www.hexinvaders.com <comment><USER2> I kept saying "RGB, RGB" and got to level 4 before I was bored. I'm also color blind, so I was thinking I'm gonna fail here, but it wasn't that bad, probably because I wasn't distinguishing shades and such

<comment><USER3> > I kept saying "RGB, RGB"

How does that help?

<comment><USER4> I also did this. Helps remember the order of the colours (red, green, blue) in the hexadecimal notation if it doesn't come naturally. FWIW, I've been using this notation in CSS for over 10 years and I still couldn't visualise most of the colours except the most obvious ones (e.g. FF0000). I wonder if it comes naturally to some people.

</comment></comment></comment><comment><USER5> For a moment I thought part of the tutorial was missing, but the "gameLegend.png" image shown at the end doesn't load so quickly due to being 1.8MB large; it can be optimised to 71kB.

</comment><comment><USER6> Arrgh, I'm not good under pressure. Got to level 7.

When I lost level 8 it said "You have completed Level 7" which is technically true, but probably not what was intended.

</comment><comment><USER7> Very fun! Made it to level 8 before my colorblindness got the better of me.

It's unusably slow under Safari (fine under Chrome); any idea why?

</comment><comment><USER8> I narrowly escaped death at level 9, and lost at level 10.

Could have completed level 10, maybe 11 with a little luck, without those lags (mostly due to all those things running on my computer atm, so basically it's mainly my fault) making the game ignore one click out of 3~4.

I'm a designer really used to RGB colors, btw. Nice & fun game, well polished!

</comment><comment><USER9> Hmmm. I was hoping for a game where you had to solve puzzles by writing assembler directly in hex (as many did in the 70s / 80s including me; I find z80 hex codes still easier to work with).

</comment><comment><USER10> The title music is awesome. I could listen to it all on its own. The in-game music is tedious and I had to mute it after 5 seconds. :(

</comment><comment><USER11> I got to level 9, the difficulty escalates pretty quickly. I'm a designer, I'm curious how the other members of my team do.

</comment><comment><USER12> Cool stuff :) Please disable text-selection on the page. playing with a trackpad is hard!

</comment><comment><USER13> I like it. I'm awfull at remembering hex colors, so this is fun and learning.

</comment><comment><USER14> I like it lots! Close shades of the same tint keep it challenging.

</comment><comment><USER15> A short and fun game =) Visually a bit busy, though.

<comment><USER16> What exactly do you mean? I didn't find anything on the screen too intense, overwhelming or unnecessary.</comment></comment>


German tank problem - <AUTHOR> http://en.wikipedia.org/wiki/German_tank_problem

<comment><USER2> The most interesting thing about this link is how often it comes up on hacker news.

<http://news.ycombinator.com/item?id=1421698> <http://news.ycombinator.com/item?id=670218></comment>


Ask HN: Project Management Book - stories from the trenches? - <AUTHOR>

I have been doing more project management recently. Though the projects are delivered on time and the scope creep is very limited I don't come out of those meetings feeling positive or satisfied. I want to read up on common mistakes, pitfalls, myths etc. and learn how to avoid them. Can you recommend books on Project Management. <comment><USER2> One must read for project managers is the Mythical Man month [1]. Great read.

[1] [http://en.wikipedia.org/wiki/The_Mythical_Man- Month](http://en.wikipedia.org/wiki/The_Mythical_Man-Month)</comment>


Programming Isn't Manual Labor, But It Still Sucks - <AUTHOR> http://mashable.com/2014/04/30/programming-sucks/?utm_cid=mash-com-fb-tech-link

<comment><USER2> Can we update the title to reflect that of the article: "Programming Isn't Manual Labor, But It Still Sucks"; or failing that, can we fix the spelling of Physical?

<comment><USER3> Yes. Done.

Submitters: please follow the HN guidelines and do not rewrite titles except when they are linkbait or misleading. Especially please do not editorialize in titles (i.e. put your own spin on them).

</comment></comment><comment><AUTHOR> This one of the best rant's about the horiffic, yet still lovable programming!</comment>


I am in the wrong business: A $3549 3 foot USB cable - <AUTHOR> http://www.locus-design.com/index.php/cynosure-usb-cable

<comment><USER2> "A fool and his money are soon parted." (Thomas Tusser, <http://en.wikipedia.org/wiki/Thomas_Tusser>)

</comment><comment><USER3> Dammit!

There's no --inner_details, or --soul switches on my version of cksum. How will I know if the files I transfer over this cable retained their essence or not?!</comment>


Data Brewery – Python Framework for Data Processing - <AUTHOR> http://databrewery.org/ <comment><USER2> I would be interested to know

\- if those projects can be easily used with pandas ...

\- and if some of their features are already in pandas ?

<comment><USER2> anyone ?

</comment></comment><comment><USER3> So is Cubes an interface for Bubbles? I'm having a hard time figuring out the connection between them.

<comment><USER4> Author here. They are very independent. In short: Cubes is OLAP framework for abstracting aggregate queries on top of a datastore, mostly through SQL. You define a so called multi-dimensional model – how the analysts see the world, and cubes knows how to project it to underlying data structures, preferably star or snowflake table schemas.

Bubbles was meant to be data integration library (also known as ETL) – get data from multiple sources, transform them and produce tables that are more suitable for further analysis or reporting.

<comment><USER5> Cubes sounds like what is often called "ROLAP" in the enterprisey analytics world.

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

<comment><USER6> I work in the BI space and Cubes is exactly ROLAP.

</comment></comment></comment></comment><comment><USER7> It's been a little while since I've seen this, is there still much active development? Github doesn't show many recent commits.

<comment><USER4> Author here. I admit, it has been more than a year since I made a significant contribution. It kind of correlates with change of my job – since I started to work with my current employer I didn't have almost any time to work on neither of Data Brewery projects directly. All I have is full notebook of new ideas and mailbox of unanswered feature requests and bug reports. It makes me sad, but honestly I don't know how to proceed.

I really enjoyed working on Data Brewery and I eventually will resume my work as there is a lot to do. It is just put aside on the back burner. In the meantime I might only hope that someone would volunteer to at least handle bug fixes. I'm open to grant access to the repositories.

Any suggestion how to prevent open-source project from dying is welcome.

<comment><USER6> I am interested to find out what volumes of data each of these solutions, Cubes and Bubbles, have been tested against?

I work with enterprise tools to create ETL and OLAP solutions daily and really like what I see here but I am concerned with the performance since it is all done using Python and performance is not Python's strength.

Do you have any more information regarding this?</comment></comment></comment>


The Runbooks Project - <AUTHOR> https://zwischenzugs.com/2020/06/25/the-runbooks-project/ <comment><USER2> HN discussion on previous post: [https://news.ycombinator.com/item?id=16458057](https://news.ycombinator.com/item?id=16458057)</comment>


Sanitycheck.io: July 2017 Revenue Launch Update - <AUTHOR> https://www.sanitycheck.io/blog/july-2017-launch-revenue?__s=gkvxqkphbhg1mhcgbsh7 <comment><AUTHOR> Nick built a nice product here.

I personally am not going to pay for it (sorry Nick!) as I just used it as an addon to looking at the data every few weeks, I am not making money with my sites, but I am happy that some people feel different and actually do pay. It's great to see the idea and product actually work.</comment>


How the Informal Economy Could Help Save the Rest of It - <AUTHOR> http://blogs.hbr.org/cs/2012/01/the_candy_man_in_america.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+harvardbusiness+%28HBR.org%29&utm_content=Google+Reader

<comment><USER2> This article certainly appeals to the "Yankee Ingenuity" in all of us, eh?

But one could substitute "copyright infringer" for "unlicensed peddler", and the gist of the argument remains intact. Heck, you could substitute "mild drug dealer" and the gist of the argument is still true. I live in Denver, Colorado, we've legalized "medical marijuana", and it's definitely a growth industry, same as the "unlicensed peddling" probably is.

So, if we allow "unlicensed peddlers" to succeed, and I'm actually all for it, where do we draw the line? With "unlicensed marijuana peddlers"? With "copyright infringers"? Do we just say the heck with it, and let all companies do whatever they want to their workers and their customers?

I mean, it seems fairly obvious that we need to regulate some industries (mining) which have an amazing history of abusing workers, and other industries which have an amazing and nauseating history of abusing customers. But where do we draw the line and say "This regulation is bizarre and counter- productive"?</comment>


Buildy, a real-time HTML5 building game - come build in our biggest world yet - <AUTHOR> http://playbuildy.com/world?id=50736d9452572c7481000000#x=61840&y=0&z=-289040&s=32 <comment><AUTHOR> Hey, this world started on the Something Awful forums, and we thought it'd be fun to continue it here. Feel free to contribute anywhere in the world.

It's still early for this project (alpha). Chrome and Firefox only for now. Please don't grief or ruin the fun!

Some tech details: canvas-based rendering engine, firebase for chat and presence, sockjs for realtime events, phantomjs + beanstalkd for rendering static tiles (for zooming way out), python on the server side, mysql where convenient and mongodb where convenient.

<comment><USER2> NB: We've only tested on recent Chrome and Firefox builds on OS X. Bug reports in other browsers are appreciated, but I can't promise we'll be able to act on them in the near future.

Also doesn't work very well on iOS.

<comment><USER3> Safari looks good so far

</comment></comment></comment><comment><USER4> Everything feels really polished. Congrats guys, this looks fantastic. :)

</comment><comment><USER2> If you want to get updates about Buildy, you can follow our blog:

<http://blog.playbuildy.com/>

</comment><comment><USER5> Awesome, did this just launch? People love this kind of thing, i'd be surprised if it wasn't successful.

Performance seems great for javascript/canvas. Though I would love to see a high performance native app. Good luck to you guys!

</comment><comment><USER6> This is cool. I would highly recommend you sheet your sprites because ATM you are loading in each graphic individually via an HTTP request, which is pretty inefficient.

</comment><comment><USER7> This is really nice! Looks like you're using Firebase for the realtime stuff?

<comment><USER8> See RoboTeddy's comment above.

 _Some tech details: canvas-based rendering engine, firebase for chat and presence, sockjs for realtime events, phantomjs + beanstalkd for rendering static tiles (for zooming way out), python on the server side, mysql where convenient and mongodb where convenient._

</comment></comment><comment><USER9> This reminds me of something... As someone who LOVED rollercoaster tycoon, please please please consider object/character movement, such as NPC's that move and do stuff. Like puke on the ground after roller coasters =) Also other players who are in control of a character (like Sims game) would be fun to highlight and watch interact with NPC's.

<comment><USER10> Yeah, while it's fun to scroll around and see what stories people are trying to tell through this medium, it'd be really cool to have some actors moving around in the world. Riders on the roller coasters (which seem to be among the most fun things to build in any building game; even when the tools don't make it easy to do so), people roaming around exploring (and occasionsally being chopped up by the chainsaw guy or eaten by the scary smoke monster thing, or turned into a newt when walking over a black magic altar, etc.) would make this absolutely magical to just watch and play with. Not to say it's not cool today, as it is, just that if the dinosaurs roared and flung cars, it'd be a mild form of ecstasy.

<comment><USER9> Exactly, it looks great as it is right now. Where's waldo like. But I'm a video guy and motion would make this world epic.

</comment></comment></comment><comment><USER11> I've seen a few HTML5 games for sometimes now but have only been impressed by two - first Subbania and now this one. And I must say Buildy tops them all. Good Job. The thing that I like most about it is that people don't use the canvas element as creatively as it can be but you did it. Such games must be developed more to popularize HTML5.

</comment><comment><USER12> Cool. I don't know how expensive it is to create a new world. If it's cheap, it'd be cool to offer unregistered accounts a way to play around in their own private, non-persistent sandbox before making the jump and registering.

</comment><comment><USER13> Reminds me of Paul Bakaus' Aves Gaming Engine (also canvas based and isometric view).

He was very active documenting his research on it's performance: [http://paulbakaus.com/2010/07/19/why-canvas-is-not-an- obviou...](http://paulbakaus.com/2010/07/19/why-canvas-is-not-an-obvious- choice-for-web-games/)

<comment><USER14> Which was sold to Zynga in 2010 btw: [http://techcrunch.com/2010/09/24/zynga- continues-internation...](http://techcrunch.com/2010/09/24/zynga-continues- international-expansion-buys-german-game-engine-developer-dextrose-ag/)

</comment></comment><comment><USER15> I know this is mean, but you know what's really fun... undoing what people are doing in real time... someone just planted a tree.. and then I moved that tree.. (tee hee hee) - sorry. maybe this type of moves shouldn't be allowed? - but I just had the best 10 minites of my week!!!

<comment><USER2> If you're in the world and someone is doing this to you, please say something in chat and we'll ban them.

</comment></comment><comment><USER16> The page loaded and the Paperboy theme immediately started playing in my head.

</comment><comment><USER15> OMG! Addicted already.

</comment><comment><USER17> Really awesome. Although I suspect some people might take advantage of the ability to delete/move anything they want. What would be the solution to this?

<comment><AUTHOR> We're gonna allow people to create invite-only worlds. In the mean-time, the entire history of the world is evented, so we can actually filter out events from a given user and it'll be like they never existed.

</comment></comment><comment><USER18> It'd be so awesome if the engine and code behind this world builder can be opensourced.

<comment><USER19> We may at least do a couple write-ups about some of the tech behind it.

</comment></comment><comment><USER20> This is really freakin' neat. The beginning of the future of the interwebz

</comment><comment><USER21> Looks great, needs rotation though!

<comment><USER22> That raises the barrier to object creation, as the objects appear to be just flippable 2D images.

</comment></comment><comment><USER8> Works such as this are very near to my heart. As a developer of collaborative games in emerging technologies including "HTML5" I want to articulate the intense delight I feel each instance I discover others pursuing this strange, new, often difficult, but ultimately vastly rewarding path to success. I found this particular exchange exceptional.

The developers (chatting in-game) were rather friendly and particularly forthcoming about their sound choices for their technology stack which I found to be refreshing. This kind of transparency, at least in this industry, is somewhat rare and is absolutely commendable.

If you indeed enjoyed the experience, as I suspect most did, please continue to support these developers and their work. It is through this process we, as a community, will continue to manifest works such as this.

Do not underestimate the power of getting the word out about these endeavours. A "like" on Facebook. A tweet. A blog post. It all adds up. And we really do appreciate such a priceless commodity.

</comment><comment><USER23> Thanks for another great example why 'HTML5' is not (yet) an alternative to Flash when it comes to vector performance and games.

<comment><USER8> Thanks for another great example of fear, uncertainty and doubt surrounding the undeniable ubiquity of HTML.

<http://alwaysbetonjs.com>

<comment><USER15> I told you to stop using IE6....</comment></comment></comment>


The Man Who Invented Stereo - <AUTHOR> http://motherboard.vice.com/read/the-man-who-invented-stereo

<comment><USER2> I got to see and listen to the first stereophonic sound broadcast on the George Gobel Show on October 21, 1958. I was six at the time.

The right channel and the picture were broadcast on the local NBC TV station, the left channel on an NBC Radio station.

My dad got everything set up for the broadcast: The TV on one side of the room, the radio receiver on the other. We tuned in and waited.

And then when George walked across the set, you could hear his voice move from one side to the other. It was so cool!

<comment><USER3> Interesting. I remember before stereo audio was available on TV in the UK, there would often be concerts and similar broadcast with video on BBC 1, where you muted the audio, and listened to simultaneous stereo audio on e.g. BBC Radio 3, which was a neat hack.

</comment></comment><comment><USER4> Interesting that he called it binaural recording, which is still a term today, but with slightly different connotations. That is, what I understand to be the common definition of binaural today is a recording done by a pair of microphones positioned like a person's ears with the goal of creating a fully 3D audio experience when listening through headphones. This is quite different from stereo meant to be listened to with a pair of stereo speakers. I wonder if what we today call binaural is really what Blumlein was envisioning.

<comment><USER5> Actually binaural is a special case of stereo [1]. Stereo means a recording with two microphones spaced apart. Binaural means a recording with two microphones spaced at the distance of a human head.

[1] [http://www.soundprofessionals.com/cgi- bin/gold/category.cgi?...](http://www.soundprofessionals.com/cgi- bin/gold/category.cgi?category=binauralcardioid)

<comment><USER6> > Binaural means a recording with two microphones spaced at the distance of a > human head.

I don't think that's enough. It's about the effect of the shape of the head and ears on the propagation of sound waves. For example, the definition of binaural in the page that you linked to says:

> the head and ear structure affect the way sound waves are picked up

<comment><USER7> Correct. I don't have one myself, but for high-end acoustic work people actually use dummy heads, sometimes with ballistic gel inside, to get a very good approximation of the sound that actually reaches the ears.

For less perfect results you could just set up measurement microphones in the right position and then convolve the result with a Head-Related Transfer Function.

Here's one: [https://www.neumann.com/?lang=en&id=current_microphones&cid=...](https://www.neumann.com/?lang=en&id=current_microphones&cid=ku100_description)

They cost about $10,000 unfortunately. I'd love to have one for film use but you don't really get the effect except when listening with headphones so it's a pointless.

Also, for film we _totally_ fake it and pan all the dialog into the center, on both stereo and surround mixes. Otherwise it would sound like the room was flipping around every time the camera cut back and forth between two actors during a dialog scene, which would get very disorienting for theatrical viewers. So when I build the audio for a dialog scene in post-production, I aim for an approximation of what you would hear if you were floating in the middle of the conversation just above people's heads. What you're hearing when you watch a movie bears little or no relation to the actual acoustics of wherever the scene was shot unless it was very quiet indeed, but is rather a composite of 10-20 different recordings.

<comment><USER8> > For less perfect results you could just set up measurement microphones in > the right position and then convolve the result with a Head-Related Transfer > Function.

This sounds interesting. Could you get to near-perfection by simply increasing the number of microphones used? Also, could using cheap microphones be compensated by using more of them?

<comment><USER9> >Could you get to near-perfection by simply increasing the number of microphones used?

No. Ears are (kind of) point sinks. Which is why dummy head stereo works so well on headphones - it's literally recording the sound that would usually go into your ears, as opposed to normal stereo, which records something that's usefully but rather distantly related to what goes into your ears.

Two microphones are enough for that.

A side point is that everyone has a slightly different HRTF, so it would be interesting to hear what you'd get with a neutral point sink recording convolved with _your_ HRTF.

>Also, could using cheap microphones be compensated by using more of them?

No again. Cheap microphones add non-linear distortions and have a limited and inaccurate frequency response. If you use more cheap microphones you just get more of the same.

</comment></comment></comment></comment></comment></comment><comment><USER10> It's interesting, perhaps stereo was meant at the time for creating a more "3D" sound experience, stereo today remains the standard for recording music. Even though some movies and songs attempt things like including surround sound given that the technology now exists, stereo is much more common and full surround soundtracks are rare.

I'm curious if any audio engineers can weigh in on why stereo is still often all that is used today.

<comment><USER7> Pro sound engineer, in both music (long ago) and film.

Two basic reasons: one is that lots of people listen to music on headphones, and two is that most people don't set up their speakers properly. Even stereo speakers are usually not set up properly, and even most musicians don't set their speakers up properly. _I_ don't set my speakers up properly at home. If you want them perfect you basically need to rearrange the entire room around that goal and my house isn't even quiet enough to make that effort worth it. Expecting people to set up a surround system just to listen to music? Forget it - as the lady said, ain't nobody got time for that.

In a movie theater, everything is placed pretty precisely and calibrated for a consistent level of loudness - although mroe and more these days, films tend to ignore established standards. Action movies are ludicrously loud and over- produced these days, for example, and directors like Michael Bay are notorious for demanding that playback levels be pushed into the red, resulting in genuine ear fatigue for many audiences.

At home, you _can_ get nice results with a good home theater but again it depends how much time and money you want to invest in making it good. I just watch movies via the TV speakers because I don't want 6 more boxes with wires trailing all over the place, and between living in a somewhat noisy neighborhood and having a bunch of pets, the distractions to a great-sounding system would just be that much more distracting, if you see what I mean.

On the other hand, if I'm watching a movie in the theater and someone starts whispering near me I have no problem with telling them to shut up or get the fuck out in 99.9%* of cases. Having done it, I can tell you it takes _weeks_ of painstaking work just to get an adequate competent soundtrack into shape, so the last thing I want to hear is some jackass 'explaining' it to his girlfriend like they're sitting in the living room.

* A very few movies benefit from vocal audience participation, and of course comedies are there to be laughed at.

<comment><USER11> One common error I come across a lot in home stereo installations is that people get the phase wrong on one of their speakers, even on very high end systems (or maybe especially there because those usually have their wires separated out).

</comment></comment></comment><comment><USER12> (shakes fist)

I'm deaf in one ear and stereo audio has only ever been an annoyance for me.

<comment><USER13> I'm fully hearing, but I never use a pair of headphones or earphones because I can't stand being unable to hear what's going on around me. So stereo is a similar annoyance to me. Fortunately some software lets you disable it.</comment></comment>


SpaceX's Falcon 1 rocket reaches orbit on 4th try Next stop, the moon (and more) - <AUTHOR> http://michaelgr.com/2008/09/30/spacex-falcon-1-rocket-reaches-orbit-on-4th-try/

<comment><USER2> This is beyond cool. I wonder how Team Cringley are doing: <http://www.teamcringely.org/wiki/index.php/Main_Page>

Last I heard they were abandoning the X Price. I still think they had a pretty cool idea though: Screw sending one (expensive - relatively) rocket, send 10 cheap ones (launched of a fighter jet - wonder if the payload capacity is big enough) and hope 1 makes it.

Fault tolerance at it's finest. Sort of the Google approach.

Anyways. Should have done aeronautics at school :-)</comment>


Single Computer DoS – Slow Loris Attack - <AUTHOR> https://www.deepdotweb.com/2017/01/19/single-computer-dos-slow-loris-attack/ <comment><USER2> > Hopefully, this attack will get more attention and more people will start > protecting their servers

I am surprised that article is from 2017. This is long patched in Apache in every major distribution and probably apache itself. As well as IIS patched this like 4 years ago.

It still works in a way or a nother but not with the mentioned code or exact method.</comment>


Turning the mathematics of vector calculus into simple pictures - <AUTHOR> https://www.technologyreview.com/s/614704/how-to-turn-the-complex-mathematics-of-vector-calculus-into-simple-pictures/ <comment><USER2> These methods were invented decades ago by Penrose (1971) [2], as a way of visualizing and improving on Einstein's summation convention [1]. Similar "string diagrams" were popularized for various categories by John Baez in "This Week's Finds" (TWF) [3], with extensive applications to QM by Coecke [4]. There are other modern examples all over the interweb [5] ...

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

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

[3] [http://math.ucr.edu/home/baez/week79.html](http://math.ucr.edu/home/baez/week79.html) _ff_

[4] [https://www.cs.ox.ac.uk/ss2014/programme/Bob.pdf](https://www.cs.ox.ac.uk/ss2014/programme/Bob.pdf)

[5] [https://graphicallinearalgebra.net/](https://graphicallinearalgebra.net/)

<comment><USER3> The conclusions section has a nice short history of some graphical notations, noting "graphical notations of tensor algebra have a history spanning over a century."

Equation 18 in their paper is in Penrose's original paper ("Applications of negative dimensional tensors"). Fun fact: if you take a planar graph, all of whose vertices are degree-3, then interpret them as triple- products/determinants/cross-products, then the absolute value of the resulting scalar is proportional to the number of proper 4-colorings of the regions complementary to the graph. A reiteration of this is in Bar-Natan's paper "Lie algebras and the four color theorem."

However, their contribution seems to be notation for dealing with 3-dimensional derivatives (gradient, curl, and divergence), which are special due to Hodge duality and the existence of a triple product. Equation 30 implying curl of gradient and divergence of curl both being zero is pretty nice.

I think the authors are correct that the specialization of the notation for 3D vector calculus had not been written up yet.

<comment><USER2> Yes, your fun fact is in Baez's TWF week 92 (1996):

[http://math.ucr.edu/home/baez/week92.html](http://math.ucr.edu/home/baez/week92.html)

and the core proposition goes back to Penrose.

<comment><USER3> I see I was rather oblique, but I brought up the fun fact because that equation is how Penrose proved it (to account for signs). By the way, the TWF article is citing the Bar-Natan paper.

</comment></comment></comment></comment><comment><USER4> I've seen a lot of people enamored with graphical notations like this one, but nobody ever using them for anything nontrivial. In general, people just use them to laboriously reproduce a few results from undergrad courses, nothing more.

If ordinary notation is like C, these graphical notations are like code golf languages, a neat gimmick that performs excellently at the few things you hardcoded it to do, and not much else.

<comment><USER5> A Nobel Price winner seems to disagree with you.

From the article:

> the American physicist Frank Wilcjek, who worked with Feynman in the 1980s, > once wrote: "The calculations that eventually got me a Nobel Prize in 2004 > would have been literally unthinkable without Feynman diagrams."

<comment><USER4> Diagrammatic intuition is good. I use Feynman diagrams every day. But nobody computes _with_ Feynman diagrams, they use them as an intuition aid to tell them _what_ to compute, and that computation is done using standard notation.

<comment><USER5> > ... and that computation is done using standard notation.

I really thought you would have ended that sentence with "Matlab" or "python", not "standard notation"

</comment></comment></comment></comment><comment><USER6> Ref of the original paper [https://arxiv.org/abs/1911.00892](https://arxiv.org/abs/1911.00892). The biggest issue for me is they don't have proper upper/lower indices. A lower index is a leg pointing down, while an upper index is a leg pointing up. \delta should be \delta_i^j. The upper/lower I like to think of as extra type information. You can pair covectors and vectors. The other issue is with the dot product of course, I would write a_i b^i.

<comment><USER3> They're sneaking the Euclidean metric tensor in everywhere, which means there's no distinction between upper and lower indices. I agree it's confusing, and I'd rather they kept tensor orientations intact.

The dot product is double contraction with the Euclidean metric; your notation is contraction of a vector and a dual vector.

</comment></comment><comment><USER7> Not enough pictures in this article

</comment><comment><USER8> This is all really confusing. Why not just represent divergence and curl for what they are? Sources/sinks, and circulations. As someone who had lots of courses in electromagnetics, I see no basis for physical reality in these diagrams.

<comment><USER9> While this is true, note that this special relationship between gradient, divergence, and curl only exists in 3D, due to the fact that 2 + 1 = 3, and the presence of the [hodge star]([https://en.wikipedia.org/wiki/Hodge_star_operator](https://en.wikipedia.org/wiki/Hodge_star_operator)) operator that allows us to convert "areas" into "normal vectors to areas". A curl is really a "infinitesimal area", which we then choose to interpret as "a normal vector".

This is captured by the [De Rham cohomology]([https://en.wikipedia.org/wiki/De_Rham_cohomology](https://en.wikipedia.org/wiki/De_Rham_cohomology)), whose calculations are sometimes simplified by using the [Penrose notation]([https://en.wikipedia.org/wiki/Penrose_graphical_notation](https://en.wikipedia.org/wiki/Penrose_graphical_notation)) as outlined above.

Having used the notation, I don't think it helps for vector calculus. And I 100% agree with you that we should teach the intuition for div, grad, and curl first, but I wanted to bring to the attention of anyone who's never seen the "fully general" form of these objects as to what it looks like.</comment></comment>


JSON 2 HTML - <AUTHOR>

http://nirmalpatel.com/json2html/
Inspired by http://news.ycombinator.com/item?id=239735 I decided to create something that made it easier for me to get JSON objects into HTML so that I could quickly move onto styling.
JSON 2 HTML (json2html.js) allows for easy conversion of JSON objects into semantically meaningful HTML. Arrays are converted to Ordered Lists (OL) and objects are converted to Unordered Lists (UL) where each List Item (LI) has a class equal to the key of the value in the object. Strings are checked for urls which are automatically converted into links. Booleans, numbers and null are converted to strings. The result is then stored in a placeholder div. CSS is used to format the output. <comment><USER2> <http://jsonml.org/> is similar.

What you have done helps when server response is json/xml(which can be converted to json).

JSON is very nifty format and programmer friendly. Last year I had done some tooling to read JavaBeans using asm convert to JSON. We has wrapper over service classes to return response either as XML string or JSON.

check out this too [http://blog.ketankhairnar.com/2007/06/json-utility-using- asm...](http://blog.ketankhairnar.com/2007/06/json-utility-using-asm-java- bytecode.html)</comment>


Show HN: Create a neo.mjs workspace and app with the 1-liner npx neo-app - <AUTHOR> https://github.com/neomjs/create-app/blob/master/README.md <comment><AUTHOR> Online demos of what you can build with your auto-generated app shell here:

[https://neomjs.github.io/pages/](https://neomjs.github.io/pages/)</comment>


The US Cities with the Biggest Housing Bubbles - <AUTHOR> https://wolfstreet.com/2017/09/26/the-us-cities-with-the-biggest-housing-bubbles-2/ <comment><AUTHOR> Executive summary:

In these cities, there has been moderate consumer price inflation but extraordinary asset price inflation. People who make money with assets (capital) came out ahead. People who make money with their labor got whacked. Not only did they not see the income gains that capital enjoyed, but they saw the fruits of their labor shrink when it comes to asset purchases such as a home. Every year, they can buy less and less in assets for the money they earn with their labor.</comment>