Welcome to the
Future Software Meet-Up!
What do we want?
We want software that is...
actually covers it all.
Today's software is so full of dumbness.
You will definitely notice the difference
when you see some of our new software... :-)
Getting rid of "installation"
Why does software have to be "installed"?
The process is too complicated. It's a waste of time.
Instead of "installing" software...
...we just move it.
Software should be movable from one machine to another.
With like one click.
And that includes program AND data.
Yes of course: Moving is copying.
Glad you figured that out.
Still, moving is a useful mental concept,
even though you actually copy and delete.
Let's never delete anything.
Our hard drives are so big.
Don't delete - just put it "in the attic".
Safe code execution
This is one of the fundamental things we need
for our new software generation.
Why ever run unsafe code again?
You don't need to.
Safe code: How?
Well. There are two ways.
Sandboxing, trust, and auditing.
OK, that is actually three.
At least one of these three is always available.
Thus you can be safe all the time.
Share your computing
When everyone codes or uses alone,
there is no synergy.
Let's open it up.
Show us what you're doing.
Whatever it is.
We can help you do it.
Privacy is outdated!
We only needed it because there were anti-drug laws.
Good riddance to those!
Universal intelligence is possible
Just believe in it.
There will be artificial intelligence.
A program that understands.
We can produce that program.
Actually: It is many programs.
A.I. changes everything
With the presence of an artificially intelligent program,
It's like being in a team instead of operating alone.
Is it possible?
Yes it is possible.
We create it step by step.
Step by step
It's a good approach.
Every step is useful.
Every day, our software gets better.
And learning stuff is not so difficult.
We can do it.
Suppose you have a piece of software X and a piece of data Y.
Can you run X on Y safely?
(The data might be malformed,
the program might be buggy
or not compatible with your machine,
it might run in a loop
or use too much memory...)
We need universal safe code execution.
That actually solves the "software problem".
What platform to use?
Basically, any programming language can be used.
Some just make it hellishly difficult
to do what we want to do.
So far, we have explored Lua and Java.
We can continue to support both.
Can you think of one of the "hellish" languages?
Why Lua and Java?
Both Lua and Java offer these two crucial features:
(Safe execution = GC + no pointer arithmetic)
"Source code" is good
Everything should be available as source code.
Sometimes source code is a must-have
(for security audits).
On all other occasions,
it's just good to know that sources of stuff are available.
It's good for extending, understanding, adapting ...
We need playgrounds to build our new software in.
And we have some.
Text2GUI is one.
TinyBrain is the other one.
Ultimately, Text2GUI is more flexible.
You can build any kind of application in Text2GUI:
GUI, functionality, everything.
Anything that can be done in Java
can be done in Text2GUI.
What's the scope of our operation?
The scope is everything.
Any software application you can imagine
is one we can produce.
Any example for machine learning
is one we can implement.
Just get started on whatever you're interested in.
We can redefine - or actually eliminate - the art of programming.
What can you do in this project?
Anything you like.
If what you do goes in the right direction
- towards simplicity, safety, intelligence - it is OK.
Use any language.
Implement anything you like.
Share it with us and be famous.
(It does help us at this point if you use Java. ^^)
Turn on. (=Talk to Stefan.)
A presentation brought to you by:
Future Software Meet-Up Slide Show
By Stefan Reich