Hacker Newsnew | comments | show | ask | jobs | submit | silvio's comments login

This will work really well. Some leaves use this same mechanism to 'self-clean', which means that now we will have the ability to add the 'lotus effect' to man-made objects.

https://www.youtube.com/watch?v=VHcd_4ftsNY

-----


New York as a Microchip layout was the main theme of the intro of 'Hackers'. Check out around 0:40

https://www.youtube.com/watch?v=9c4KG_8iTZM

-----


Wow perfect reference.

Btw just in case you didn't know, you can link to specific times in youtube videos, e.g. https://www.youtube.com/watch?v=9c4KG_8iTZM&t=55s

-----


That intro was responsible for introducing me to Orbital as well: http://en.wikipedia.org/wiki/Orbital_(band)

-----


Koyaanisqatsi and Tron both did it in '82. I'm sure there are probably other, earlier examples, too.

-----


Yeah, it's a metaphor that gets explored a bit from time to time.

https://www.youtube.com/watch?v=eJuy7LTBJk0

https://www.youtube.com/watch?v=UDB9g7l5srA

-----


Because Europe didn't know about America until 1492.

-----


Or more accurately, as that wikipedia page mentions, March 1493- when Columbus got back.

-----


With more research along these lines, we may have a day when a programming job interview will consist on interacting with some codebase for 10 minutes, and the model will spit out our normalized scores on syntax comprehension, algorithmic thinking, library familiarity, etc.

-----


I wonder if when we get that far the computer is able to write the code for us anyways and programmers will be redundancies. Its just a matter of if, not when. Understanding human cognition well enough to evaluate it is a good indicator that the singularity is near.

-----


That was the hype surrounding Fortran when it came out in 1959: it would eliminate the need for programmers, because you could just punch the formulas and it would translate them into a program automatically. And in a sense it did, and its successors did to an even greater extent. Today you have "nonprogrammers" who can build, in a day, in OpenOffice Calc, computations that would have taken weeks to get written by programmers in the 1950s (when they could have been done at all.)

It's partly a matter of giving the objectives to the computer at progressively higher levels, and partly a matter of improving user interfaces so that you can tell what the thing is doing and what it's going to do.

-----


Computers already write code for us, they just need to be told what we want them to write. The question is if we can design a programming environment where the computer can understand 'natural' human specifications and compile that, instead of needing to have a trained human compile the natural specifications into source code, which the computer can compile into a program.

-----


A large chunk of the job of developing software is getting the stakeholders to understand the problem they want the software to solve. The rest of it is just typing which is the trivial part.

-----


Yeah, right. And all the technical books on design patterns, functional programming, algorithms, etc. are out there just to teach programmers how to type faster ...

-----


Sure we could. This is just like Siri, you tell it what you want, she asks for clarifications, a conversation you have with the computer until...bam, you get what you want.

I would think we could do much of this already if we tried, but there are a lot of things on my list to do until I get to that.

-----


Your optimism on this seems unfounded in my opinion.

When there are no domain restrictions, computers have not proven very capable of comprehension. Look even at the comparatively simple domain of handwriting recognition.

More importantly, you entirely miss the problem that many times the human doesn't know exactly what he wants until he sees it.

As a software engineer, I have no fear my job will be replaced by computers talking to product managers.

-----


That's why the program should be expressed as a conversation! We don't know what we want so we should start vague, get feedback, provide clarifications, and so on. The conversation with the computer must be a two-way thing!

-----


That's brilliant. Not in terms of some AI working out what a silver haired old grandmother meant but in terms of talking to clients - they could imagine talking to a computer and I am just providing that feedback.

Daily or weekly, feedback nice and quick

-----


The thing is, we probably don't need hard AI yet to do some of this. Yes, it must be a dialogue system, but we have those today. We already saw the movement in this direction with Hugo Liu's concept.net work, but for some reason no one has followed up yet. We are getting to the point with speech rec/understanding technology that someone is bound to try again soon.

-----


In general, we don't need Hard AI for much anything, and usually don't want it. Any specific problem you want solved will require some specific solution method or algorithm rather than the whole and entire "make a computer hold an adequate water-cooler conversation" thing.

-----


I think it's less worthwhile to argue this than to try to build it.

-----


That's kind of how TeX and METAFONT have worked since the 1970s. But maybe you have something else in mind.

-----


The problem is that most people are simply incapable of giving correct specifications.

In a lecture about this topic (how to create specifications that can be turned into formal correct code) we were given the following simple example of an incorrect specification:

"Everybody loves my baby. But baby loves nobody, but me."

If you formalize this, you can simply conclude that the person that says that is equal to the baby - which clearly is not, what you intended.

And this is a very, very simple specification. Specifications of real software are magnitudes more complicated.

-----


That is why the computer must hold a two way conversation with the programmer. How often do we just type out a program from our head to the computer anyways? Most of us write the program, debug it, change it because the result wasn't right, or we didn't really understand what we wanted, or someone else decided the requirements changed, or whatever...

-----


These predictions always fail to account for C++.

That is, having computers write code depends on the code being in a form about which computers can formally reason. If you can't prove anything about your code because the language is that bad, good luck getting a computer to write code.

/explain_the_joke.jpg

-----


has there been any work on this? it seems relatively straightforward to score a git branch in certain time scales

EDIT should have RTFA before commenting, gaze tracking stuff is very cool

-----


It does sound representative of the bulk of the daily work.

-----


Space is for all practical purposes a vacuum, thus the only cooling effect would be by radiation, given that the body wouldn't be in contact with anything around it, as opposed to what happens on the ground where it is surrounded by air or water in the sea. In these conditions, the change in temperature takes a long time.

As stated in the linked article:

"If we put a thermometer in darkest space, with absolutely nothing around, it would first have to cool off. This might take a very very long time. Once it cooled off, it would read 2.7 Kelvin."

So, the vacuum really is the main concern. You'd be long dead before you start getting cold.

-----


Indeed. A living human probably generates more heat from the normal bodily processes than can be radiated away in space. For this reason spacesuits are equipped with coolers, not (AFAIK) heaters.

-----


Thanks guys! I didn't even think about there being nothing around to transfer heat away the body. I would have figured that the fact that water boils and then freezes in space would mean (humans being mostly water) that a person would expire rather quickly unprotected.

-----


I came across a neat explanation of why we don't freeze immediately: our skin's pretty good at keeping the wet parts of us inside! When I had been curious about this a few years ago, this was the thing that convinced me of it. After all, in order for the water in us to freeze, the higher energy water molecules need to go somewhere, right? (Of course, it's possible very small gas bubbles will dissolve into your blood, and that will quickly expire a person, but as noted elsewhere in this thread the pressure drop from atmo to vacuum is less than that normally experienced by divers.)

Also, I have covered a vacuum flange with my hand. Heckuva hickie, but otherwise harmless. Smarts a bit with a dash of bruising, but the skin holds up remarkably well.

-----


There's an awful scene in the film 'Mission to Mars' where Tim Robbins removes his helmet in space, and his head instantly freezes. No, no, no!

-----


"A stupid person is a person who caused losses to another person or to a group of persons while himself deriving no gain and even possibly incurring losses."

http://www.ecotopia.com/webpress/stupidity/

-----


but who decides what is a "loss" and what is a "gain"?

as an individual, you may be able to tell the balance on your death bed, finally and irrevocably.

as a society, the show always goes on.

-----


San Jose :: Build FPGA design tools at Altera

Altera is one of the leading designers of FPGA devices in the world. I'm an engineer in the software team, developing mostly embedded design and instrumentation tools for FPGAs.

We are looking for software developers experienced or with a strong desire to learn about Computer Architecture, FPGA design, Digital Logic, Embedded Systems, and more, while at the same time developing engineering design tools in high level languages. To give you an idea of what we do, these are some of the projects that involved me at Altera:

  * Designed and implemented a high performance on-chip network that's used
    in thousands of routers, base stations, and switches around the world.
  * Created a hardware/software instrumentation framework in a mix of Java, C++, C, 
    and Verilog. This is the foundation for all the debuggers at Altera.
  * Modified the GCC toolchain to add support for Altera's processors, like our
    NiosII soft processor.
  * Implemented a GDB Server from scratch in Java.
  * Defined and implemented the pieces of an ARM CoreSight debug subsystem.
  * Implemented infrastructure used in a C-to-Gates compiler.
  * Spent hours hacking away with the tools and many of the available
    development boards.
If the above sound interesting to you, then Altera might be the place that you've been looking for. Send me an email to sbrugada at altera.com telling me why you think this would be a good match. You should attach your resume too.

-----


The mechanism described in the article, that slime mold uses slime to mark an area as it is exploring it to avoid exploring it again on a later pass, eerily reminds me of graph traversal algorithms.

-----


http://news.ycombinator.com/item?id=3970427 Using A Slime-Mold To Calculate Minimum Spanning Trees

-----


This article researches robots that explore unknown graphs and can place pebbles to distinguish nodes: "The Power of a Pebble: Exploring and Mapping Directed Graphs (1998)" by Michael A. Bender , Antonio Fernandez , Dana Ron , Amit Sahai , Salil Vadhan http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.19.2...

-----


San Jose, Santa Cruz :: Build FPGA design tools at Altera

Altera is one of the leading designers of FPGA devices in the world. I'm an engineer in the software team, developing mostly embedded design and instrumentation tools for FPGAs. We are looking for software developers experienced or with a strong desire to learn about Computer Architecture, FPGA design, Digital Logic, Embedded Systems, and more, while at the same time developing engineering design tools in high level languages.

To give you an idea of what we do, these are some of the projects that involved me at Altera:

  * Designed and implemented a high performance on-chip network that's used
    in thousands of routers, base stations, and switches around the world.
  * Created a hardware/software instrumentation framework in a mix of Java, C++, C, 
    and Verilog. This is the foundation for all the debuggers at Altera.
  * Modified the GCC toolchain to add support for Altera's processors, like our
    NiosII soft processor.
  * Implemented a GDB Server from scratch in Java.
  * Defined and implemented the pieces of an ARM CoreSight debug subsystem.
  * Implemented infrastructure used in a C-to-Gates compiler.
  * Spent hours hacking away with the tools and many of the available
    development boards.
If the above sound interesting to you, then Altera might be the place that you've been looking for. Send me an email to sbrugada at altera.com telling me why you think this would be a good match. You should attach your resume too.

-----


San Jose, Santa Cruz :: Build FPGA design tools at Altera

Altera is one of the leading designers of FPGA devices in the world. I'm an engineer in the software team, developing mostly embedded design and instrumentation tools for FPGAs.

We are looking for software developers experienced or with a strong desire to learn about Computer Architecture, FPGA design, Digital Logic, Embedded Systems, and more, while at the same time developing engineering design tools in high level languages.

To give you an idea of what we do, these are some of the projects that involved me at Altera :

  * Designed and implemented a high performance on-chip network that's used
    in thousands of routers, base stations, and switches around the world.
  * Created a hardware/software instrumentation framework in a mix of Java, C++, C, 
    and Verilog. This is the foundation for all the debuggers at Altera.
  * Modified the GCC toolchain to add support for Altera's processors, like our
    NiosII soft processor.
  * Implemented a GDB Server from scratch in Java.
  * Defined and implemented the pieces of an ARM CoreSight debug subsystem.
  * Implemented infrastructure used in a C-to-Gates compiler.
  * Spent hours hacking away with the tools and many of the available
    development boards.
If the above sound interesting to you, then Altera might be the place that you've been looking for. Send me an email to sbrugada at altera.com telling me why you think this would be a good match. You should attach your resume too.

-----

More

Applications are open for YC Winter 2016

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact

Search: