Hacker Newsnew | past | comments | ask | show | jobs | submit | trothoun's commentslogin

If you think QA is ever complete, then it is clear you have never worked on a QA team. You can always come up with new ideas on how to break things.


I quite agree that one can always come up with new tests. But the pertinent question is whether in this case Nests's QA would have anticipated, yet not tested for, this particular error condition. I believe that on balance the answer is yes, probably they did. A question which follows then is, assuming I am right, what is a reasonable amount of blame for failing to test prior to release?


If this really was his personal decision, then he would have written the press release, and the chairwoman would have issued a press release expressing support.


that's if they were aware he was leaving. occured to you he might just have sent and email, published a blog post and left? ;-)


This is going to come back to bite us when the political winds start blowing the other way. I'm disappointed in how short sighted our community has proven itself.


No it won't. That doesn't even make any sense.


Maybe it doesn't make sense for there to be one "other way" for the winds to blow. But I think it's a fair point, that not standing up for free speech, could come back to bite us when one day our speech is an unpopular one and the internet hordes are screaming for our heads.

Of course there are the old debates about whether money is speech, and lots of people around here that don't think this speech deserves to be protected.

If you want a future as any sort of public figure, I guess you'd best not take any stand at all on any issue. At least that will work until the crowd decides that inaction is just as distasteful as taking an action they disagree with.


... and what does it mean for our organizations that we select for leadership only from those who have never held a now-controversial opinion?


That they are led by either: above-average forward thinkers who always form opinions on the "correct side of history", liars who cover the tracks of having incorrect opinions, spineless people who never take stands on issues, or thoughtless people who can't be bothered to form opinions on issues. Well, at least the first one is a positive attribute.


To be fair, it's occurred to me that part of the issue is that Brendan will not retract his support or change his mind on this issue. So, you can take a position now, and retract it later, for less blowback. You may still be judged for ever taking it, or if your apology isn't "sincere enough", etc.


Which political winds would those be?


Short sighted? You think that being pro-gay marriage is being on the wrong side of history?


Umm... there was some collaboration. But characterizing it as "free" seems rather optimistic. Even the present reduced degree of collaboration represents, I think, a much closer tie to between the two countries space programs than ever existed during the cold war.

http://www.nasa.gov/50th/50th_magazine/coldWarCoOp.html


And even scientists can really only be be deeply familiar with the experimental basis for a few narrow fields of study. For all the rest, they too have to take it on faith.


I used my clamshell feature phone to login to my home pc via ssh. Granted, the typing experience was pretty painful, but it did work. People seem to forget that 'app stores' have been around a lot longer than the iphone. It's just that the earlier versions of app stores, carrier decks, were managed by carriers who cared a lot more about preventing apps from interfering with their business than they did about providing their customers with good, useful apps. And they ran on operating systems that were customized or custom written by carriers who saw them primarily as a marketing tool useful for pushing their more expensive services.

http://www.midpssh.org/


>People seem to forget that 'app stores' have been around a lot longer than the iphone

And they rightly forget them -- they were awful, over-expensive crap. $10 for some BS casual game, $30 for a TODO app etc. And don't get me started on the Java ME crap.


I think that more importantly they were either run by carriers or crippled by carriers.

iPhone changed the whole carrier/manufacturer/customer dynamic for the better (this is coming from a diehard BlackBerry user).


Demos like this are cool, but they make me think that we'll never see a non-toy visual programming tool. Even a fairly simple bit of logic quickly becomes an incomprehensible soup of interconnections.

edit: Thinking about it a bit more, whats lacking in all the examples of visual programming I've seen is a clean way to build abstractions. It would take a while to learn to efficently read and style visual code just like it does with text based code. That I think i could get used to. The thing that I find alarming is the prospect of manipulating an ever growing graph.


Hold on a sec, I stare at graphs like this all day! If you work in visual effects your whole world is nodes and connections - and that is not a complicated graph ;) For someone whos not used to programming a big wall of text is going to look messy and incomprehensible too.

Just like there are best practices with code there are best practices with how you organise this kind of graph. you can usually save a subnetwork into a single node that has a clear input and output. ie, double clicking on a node will take you to another network with a clearly defined purpose. Im obviously better at these graphs than I am a programmer, but it seems to me that doing it this way actually encourages encapsulation and abstraction.

Theres also some good stuff about these graphs that I think coders can miss out on. With a graph you can use the idea of space to organise things. Our brains have a natural ability to remember where things are in space. Its like organising things on your desk, I have a pencil here , my notepad here, books in the drawer, it feels very naturall to have things laid out in space, you remember where you put them. With a graph I know that all the stuff in the top right does one task, im outputting data out the bottom etc..

It works really well when you have clear input and output. Again Im not the best programmer but I think after using these graphs for years I instantly got what people are talking about when they are promoting functional programming. I think these networks have a place where you are creating operations to do on existing things.


Can you communicate in graphs? Can they be used to express metaphors or abstractions? You've just written a wall of text in your post that someone who doesn't understand English will find messy and incomprehensible.

Visual formats are great at some things, especially in expressing concrete concepts that are perceptible. They are just not great at abstraction, which forms the basis for most of our non-trivial programming tasks.

Functional programming is quite interesting because it is not based on our linguistic capabilities, but rather a very different form of mathematical abstraction. Incidentally, many people find OO easier to grock because it leverages our intrinsic language skills.


I might be out of my depth and not truly understand what is meant by abstractions, but I think the answer is yes?

Lets look at the example on the website, theres a node called cube. Isnt that little node an abstraction of a whole lot of other things? A more advanced visual programming language would allow you to access and modify what a "cube" is. You would be able to double click on that and be taken to another graph. This graph would be about the construction of a cube and would take input of width and create triangles in space to represent a cube. you could double click on the triangle node and be taken deeper, this time a node that takes vectors and defines where the surface is between them and sends it to the renderer. We could have a seperate graph to define what a vector is and the data structures behind it.

All of this for a simple cube could be represented as a huge tangle of nodes and connections, but we can condense it down to a single node called cube that takes an input of width. Having networks and sub-networks allows you to choose what level of abstraction you work at. Each of these things at different levels can be represented by a graph.


Abstraction != encapsulation. The point is about the node, not its contents. What does the node mean as a metaphor? What is it's idea?

Language is a very powerful technology that nature evolved for us. We could not have this conversation with graphs or paintings...we need words! Many programming problems are also best solved with words, though you could definitely wire something up the old fashioned way.


Can't this same criticism be made about (word-based) programming languages? Programming languages communicate the what or the how pretty well, but not the why.


I never said anything about why. Even if you are just instructing, do you care to see a wordless video or read an instruction manual? Actually it's not even that...which one is easier to write? The descriptive power of language is great when issuing imperatives; it must have been very hard to organize before language was developed 50-100 kya.

You can still communicate spatial concepts better with pictures, and maybe a hybrid approach might work, structured edited languages are very popular as vpls, but think about code with interspersed diagrams.


Exactly. The node is just a lambda - no reason it can't be expressed in exactly the same way.


Lambdas are formal, not linguistic constructs.


I think you're making a distinction that doesn't exist: lambdas are a (written) language - the have symbols, morphemes, phrasing, syntax, semantics, pretty much all the elements to define a language. Just an incredibly small and concise one.


Lambdas have definitions, but they have no communicative meaning to human beings. They have to be bound to words to provide us with a humane way of using them.

The lambda calculus is great at describing computation formally, but says nothing at all about programmer ergonomics. What we really care about is the abstraction capability of "node" or "word", the implementation is encapsulated.


Then so much for graph based programming?

[1] http://www.slideshare.net/slidarko/gremlin-a-graphbased-prog...


You should definitely check out the work going on in Dynamo right now: https://github.com/DynamoDS/Dynamo We've put a huge amount of work into this problem.

Dynamo has the notion of a "custom node." This is essentially a lambda. It is represented by a "nested" set of nodes, making up the function body.

There's a bunch more stuff going on there - including compiling nodes to a domain specific, associative language called DesignScript.


VPLs are well known to be challenged by what Burnette et. al (the principle behind Forms/3) calls the scaling up problem.

The problem is that language is great at metaphor, which is the basis of abstraction. For better or worse, language is based on words, and we have specialized hardware (in our brain) optimized for it. Until we evolve communication in an abstraction-dense format that isn't based on words, I don't think we'll be able to scale VPLs.


"communication in an abstraction-dense format that isn't based on words"

Animated GIFs, perhaps. :)


I think a lot of people try to take a "one mental model fits all" approach to visual programming: and coding in general.

Sheet music, source code, mathematical equations, graphs, etc. are examples of tools we use make it easier to form mental models.

> It would take a while to learn to efficiently read and style visual code just like it does with text based code.

This is why domain specific VPLs work so well: because they allow people work within a mental model they are already familiar with.


I think to really get visual coding to work it would need to start from circuit design; Vin, Vout, ICs, logic gates etc.

That doesn't really get you towards end-users writing code but I'd find it pretty useful when trying to look at a complicated process.


Many circuit design tools have the ability to use either visual circuit diagrams or VHDL. Visual diagrams are useful in many cases, just like UML diagrams, but using only them would be pain in the ass.


I think this is why all of our recent presidents seem so similar once they are in office. They all have the same dirt on them. As with information revealed in the pentagon papers, I don't think we have much hope of decent governance until the cancer is excised.


Actually there is a good way out for them too, although quite unpopular among the politicians: honesty, integrity, taking the responsibility for their own wrong decisions.

Now that would be a world-shaking example!


Congress has all the power anyone could wish for. But, only now is Diane starting to catch on. Once she does, she and her committee can be as powerful as anyone could wish.


The CIA is sometimes referred to as "the President's private army." Presumably, this provides a counterweight to the Pentagon. But now we've reached a point where Americans need a counterweight to the both of them.


Yeah, I have to agree I tried looking up demographic information about Chongqing and Chengdu and while they do seem to be growing, I didn't see anything that could explain a growth of that magnitude. Maybe it's an artifact of some interpolation method he's using? The source data he linked to seems only to go to 2000, so I'm not sure where the data for 2005 - 2015 came from.


The 2005, 2010, and 2015 numbers are projections based on data from 2000:

http://sedac.ciesin.columbia.edu/data/set/gpw-v3-population-...

I should add a note about the Chongqing spike being incorrect to the about.


Germany is both a big importer and a big exporter of dairy products. I guess this indicates that there isn't any substantial cost associated with cross border trading of these products?


Within the EU, there is essentially zero cost for any cross border trading at all, you can move your stuff freely between countries, and money transfer is also essentially free, especially within the euro zone.


Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: