Interesting. Can someone elaborate about this?
843 karma · joined July 27, 2011
Interesting. Can someone elaborate about this?
Progress is not like a liquid, that increases continually with research. Progress is an unknown function, composed of huge number of discrete "discoveries". Each discovery is hidden behind research of variable level of difficulty. Each discovery, may or may not enable more discoveries. The reality may have either a finite or infinite amount of discoveries waiting to be made. We don't know for sure. This universe could have a finite amount of discoveries. But it is possible that we may find a way to travel to infinite other universes, and these may have infinite discoveries waiting to be made.
The shape of the technical progress function, depends on these unknown factors. So it is wrong to assume that it is an exponential. Although an exponential seems like a good approximation around the local point in which we currently are. The population have been growing, and the economy have been growing. These two factors have enabled an increased amount of resources dedicated to research. The more research being done, increases the probability of discovering the available discoveries that exist at the current technological level. The speed of progress depends on the amount of research, and the number of latent discoveries hidden in our reality.
We are approximating the point, in which we can build artificial general intelligence. This will be a machine similar to a human mind, but capable of dramatically faster reasoning. Its internal dialogue will be millions of times faster than a human mind. Because it will move at electrical speeds, instead of biological speeds. Also it will have practically perfect and unlimited memory (compared to human capabilities). And will have almost instantaneous capability to resolve mathematical calculations of reasonable level. With these improvements, it can be expected that it will be much more effective at making discoveries than a human. Additionally these machines will be industrially replicable. So it will be possible to put a large amount of them at work on problems. It is reasonable to expect that these machines will resolve the chain of discoveries available to be made faster than humans.
These artificial machines will maximize discoveries, from the chain of discoveries available. What this is going to mean, depends on the actual unknown amount discoveries available in this universe. If things like nanotechnology, molecular machines, biological machines, etc, are actually possible, these intelligent machines are well equipped to discover them dramatically faster than we humans. If there is new physic available to be discovered, these machines have much better chance than humans at discovering it.
Will machine superintelligence actually create a singularity? maybe, or maybe not. Depends on the amount of discoveries to be made, contained in this universe, and their level of difficulty. It could be the case that our universe is running out of hidden discoveries. So any prediction on the shape of the curve of progress, is pure speculation. For example, we could have already run out of exploitable significant discoveries in physics. Or we could be on the verge of discovering faster-than-light/instantaneous communications, and lots of other things.
In my opinion the invention of artificial general intelligence, and superintelligence is imminent. A matter of years. I base this on introspective observation of the thinking process of my mind. And in comparison of it with the operation of artificial neural networks. They show similarities. The thinking process of the mind is entirely reproducible with deep learning networks, assembled in the right structure. An interesting topic is, who is doing this research. Obviously, the big tech corporations are working on it. But are states organizations also working on it? Who is doing the biggest investment? Who has the best odds of inventing it? What will happen when someone gets it? Are they going to immediately announce it?
Another example: Feeding a neural network with millions of product reviews, and expect it to be capable to understand and write product reviews is hopelessly laughable. Not even with petabytes of data.
I started working on this, because I think that not enough focus is being put on AGI, or research is not creative enough. At least not that is being published. I am optimist with my work, and soon I will reveal more. But even if I don't reach my goals, I think that it is just a matter of persistence. At any moment, someone will solve the problem of AGI.
I somewhat disagree with the author. I don't think that deep learning systems of the future are going to generate "programs", composed of programming primitives. In my speculative view, the key for general intelligence is not very far from our current knowledge. Deep learning, as currently we have, is a good enough basic tool. There are no magic improvements to the current deep learning algorithms, hidden around the corner. Rather what I think will enable general intelligence, is assembling systems of deep learning networks in the right setup. Some of the structure of these systems will be similar to traditional programs. But the models they generate will not resemble computer programs. They will be more like data graphs.
I expect within 10 years there will be computer agents capable of communicating in simplified, but functional languages. Full human language capability will come after that. And within 20 years I expect artificial general intelligence to exist. At least in a basic form. That is my personal view. I am currently working on this.
The other day I saw a crazy guy with a mechanical contraption that, according to the guy, moved by burning wood! The guy was demoing it at the town. He filled it with wood, and then had to start the fire. The crazy machine got so hot that nobody could get near it. The thing barely moved a few meters and then Kabooooom!! it exploded in a black cloud. What sane person may ever believe that one of these contraptions could be useful?
Am I right? Are you right? we don't know. Research is the only way to know.
In reality, programming has been stuck in the text approach for many years. Perhaps some people take that as evidence that there is no more progress to be made. Another factor that may be undermining research in programming, is the AI boom. Perhaps some think that AI will displace programmers in a not too distant time.
I agree with you that programs are data. And would benefit from a more specialized representation. I have been researching the aspect of program logic. For example, one thing that I think is terrible in programming, is deep nesting levels. That makes it complex to follow programs. I have been exploring ways to improve that. In my opinion graphical visualizations can provide ways to improve that.
xoL is a graphic based programming language. It represents programming concepts with graphics instead of text. It is product of a long, painstaking design effort, to get an optimal graphical presentation of programs. A good description of it is available in this blog post: http://lignixz.github.io/blog/posts/17/xoL_graphics_based_pr...
A partially working prototype from a previous version is available online. The newer current design has fundamental improvements over that previous prototype. The way some program elements work was redesigned. The control method was also redesigned. It is now aimed primarily at touch based controls. Here is the prototype for the previous version: https://github.com/lignixz/xra9 . The prototype is not optimized for performance so excuse that. It is functional to some extent, if you can figure how to use it. You can add and modify programming elements.
Would welcome any opinions/feedback. Also interested in finding partners/investors/sponsors that may be interested in this project.
With so huge positives. I don't understand why not more research is put into work-from home.
I have a newer design with substantial improvements. If only I had funding to focus on this.
There is already a second version design, 2x better looking, not revealed yet. I also have some additional ideas that may improve the language further.
In Angular 2 there are multiple data bindings syntaxs: There is one way up, one way down, or 2 ways. In Riotjs, there is only one, and you can use it with the Flux architecture or similar for a simpler, easier to reason about, and proven architecture. In my opinion Angular 2 is over enginered, with a lot of stuff that you can easily do without it. See React. And by not having over enginered stuff, you benefit of a simpler architecture that is easier to learn, and simpler to use. I have found that simplicity makes many people more productive. And React and Riotjs both are simpler than angular 2.
It has one way data binding, like React, that is simpler to reason than 2-way in Angular. Riotjs is the framework that I recommend.
There were moments that I would be idle, pondering how it was possible to pack so much brilliant design on a thing. I would then be also tremendously impressed by other games of the time, notably Zelda and Super Mario Bros 3. That I would become a big fan of Japanese game design for life. Investigating and following the individual game creators. Since then, I slowly noticed that the Japanese, and some Asians, have a unique sensibility that gives their games a peculiar flavor. Many people -mainly westerns- don't resonate with this peculiar uniqueness, that rarely exist in western games. And that is ok, just interesting. It is like they can achieve a laser focus on a particular set of simple, essential human emotions. It can be found on how they draw things, the stories that write, etc. That particularly inspires some people.
For many people, Nintendo games of the time were so dramatically better designed, compared to the standards of the time, that they were like gold compared to the others dirt. That was an important factor, possibly the biggest, in the creation of the generation Nintendo. It is very interesting to know what were the conditions and events, that allowed Nintendo the company, to come up with these absolutely brilliant products at the time. That allowed it to achieve legendary status among so many people.
As an interesting note to this, my personal take on the matter is not to reinvent programming, that is too hard. But to reinforce it with a graphical user interface. A programming GUI will simplify programming in a similar way that an icon based file manager simplifies file manipulation. The main benefit is to free users from having to memorize textual command patterns. I haven't done a good job of explaining my vision of it, but here it is anyway: https://nzonbi.github.io/xoL/
AlphaGo was a combination of neural networks with a tree search algorithm. I think that very interesting things could be achieved, combining neural networks with basic knowledge representation systems -symbolic AI-. These techniques are highly discredited for under-delivering in the past. But I think that it is a good moment to revisit some of these past techniques, and combine them with the more recent techniques of neural networks. It could be an interesting base to attach neural networks. And then submerge the AI on a basic simulated world. Something like minecraft, perhaps, as Microsoft announced that is going to do. I think that giving the neural networks some basic structure to depend on, can help to achieve results more easily.
In any case, I hope that high profile AI events like AlphaGo victory continue happening, to help to further increase AI research.
In the same line, breaking things into components is best achieved, in my opinion, using web components. The syntax is a little muddy, due to all the html legacy cruft. But I find it better than the alternatives, for example react components. With web components, the great thing is that any styles and javascript functionality is scoped to the component. That allows for better separation of concerns in separated components. This is specially useful when you have components with functional styles: animations, transitions, etc.
After componetization is solved by web components, the problems with html in html boils down to mostly two things: generating multiple elements from some data, or setting data in elements based on some other data. For these things I prefer the syntax style of data binding and "repeaters". My favorite is polymer(https://www.polymer-project.org/1.0/). Example:
<el-container id="listbox">
<el-list-items itemsdata="{{model.itemlist}}"></el-list-items>
</el-container>
And the concern of repeating multiple elements is trapped in a component. In the example above, in <el-list-items>. In general, when using this technique, data binding must not be abused, or the view becomes a mess.There is no prescribed script about what our evolutionary value should be. We will be whatever we ourselves make of us. Unless something unexpected happens -more advanced aliens intervening with our specie for example- Our human instinct is to grow, explore, discover, compete, share as much as we can. AI should be seen as a tool to our goals. Not as an end by itself. There is of course the possibility that we may loose control to the AI. That is not our desired goal, but it could happen. In that case our future will not be our decision. We will be at the mercy of whatever the AI choose for us. That will depend on what kind of AI we built, and how the rampant AI chooses to modify itself. But we will strive to reach our human goals. Because that is the human nature.
Once this have been achieved, it is downhill from there. The singularity. In my opinion, we must start to consider how this tremendous breakthrough will affect the human race. Our lives, economy, culture, etc. Awesome things we will be witnessing in the coming times. It would be great if it were possible to make public, the progress made researching specifically AGI. I wonder how big of an effort is currently being done. This would be possibly the biggest discovery ever for humanity. It deserves a fantastic effort.
Moving data between components in Polymer, can be done with data binding. The bad thing is that it could get messy for complex applications. Is not terribly bad, but it could be better. What Polymer needs is a better way to move data between components. If that problem is solved, Polymer would be an excellent alternative to create any kind of apps.
Programs looks cooler than text, and are easier to work with (once you learn it). Project current status is prototype under construction.
XoL is a programming language where code elements are designed icons. This makes code flow and meaning easier to read than text. I have put a lot of work to optimize the design as best as possible. The design shown in the page is an earlier version. The current design has been improved greatly. I don't want to reveal it until it is actually working. I find programs in xoL are beautiful and engaging to look at. And are easier to understand than text. The user interface is designed aiming to make writing and editing programs, easier than editing text.
The actual language has been designed specially to work well with the icon design. One key point is that xoL is statically typed. The type system aims for simplicity -it is very easy to use-. The types are represented with icons. This helps to make easier to understand the meaning of programs.
You can talk to me if interested in the project.
There is currently a cool trend on the PC market, in which companies are trying innovative form factors. The hybrid laptop-tablets are becoming popular. There are great devices on the market. MS surface 3, lenovo yoga and miix, asus convertibles, acer R7 and switch, are good examples. But the way I see it, these devices are saddened by the ugly and not cool qwerty keyboards. I wonder why those companies that have the resources, and are eager to differentiate on the market, haven't tried any alternative to the old qwerty. The world needs more creativity. For example, what does stop Microsoft, from offering a choice of alternative keyboard implementations as surface covers? In my opinion this is a big missed opportunity, and I hope these companies realize it someday. In the meantime, I may soon come up with a homemade alternative keyboard for my personal use.
For those that the qwerty keyboard works, they should continue using it. But for those that don't, which I suspect are the majority, could use alternatives. There is an interesting opportunity in the market for those that realize it.