[NTLK] Restarting Newton development?!

j thej at shaw.ca
Tue Aug 7 16:25:33 EDT 2018

I completely agree with you on everything that the NewTon should NOT be :-)

I’m going to start my reply with my take on Hardware.
I see two sides to this:
1) A NewTon framework that runs on existing OSes (Mac/Win/Linux). That gives us all existing hardware they run on.
2) ARM based credit-card sized boards.

The best example of number 2 is the ROCKPro64 from http://pine64.org <http://pine64.org/> 
For cost and capability this simply can not be beat!! A very high performance MessagePad-like system can be assembled from parts available from their store.

ROCKPro64 (6 Core, 64bit, TONS of expandability, tiny)
	2GB  $60
	4GB  $80
7” LCD touch panel
BlueTooth/Wifi_AC module
eMMC Module (solid state hard drive. Size of your fingernail)
	16GB   $16
	32GB   $26
	64GB   $36
5A Power supply
There are other parts available too such as a 5MP camera module.
With these parts, one could have a Modern MessagePad for $141 to $181.

Making our own hardware would be *** CRAZY *** with the availability of inexpensive products like these.


As I have stated in my earlier emails, I’m all for Document-centric computing. I feel we can not truly use our computing devices as “tools” unless they can allow end-users to “construct” their software.

Every “document” should be usable as a book, an app, a simulation, a data flow, a realtime dashboard, a project schedule, etc.

I’ve been outlining what I feel are my needs/wants for a “modern” computing device (the irony is I had to go back to the 90’s to find it!!!)

Object/Component based
-it has to be deeply modular so that end-users can compose their own software/document solutions
-High code reuse keeps the system small 

Direct Manipulation UI
-The enabling interface for above item

-Needs TCP/IP, Ethernet (Wired & Wireless)
-Can operate as a client or a server
-Peer-2-Peer & Client-Server Document sharing
-Whole systems can be “Federated” to appear as one unified “server”
-can be a compute node on the network

Powerful Document Model
-Documents can be shared over any network (with access permissions)
-Can be composed of many different types of objects (constructable)
-Simultaneous editing by many people

Global Meta Data (not sure if that is the best description)
-Leverage the object store like a Graph database. 
-Search results can have data views, in context, to the data that was searched
-Anything in the system can be searched in context to where it was found
(eg. searching a person that sent a message
		-show all messages from Person
		-show all documents Shared with Person
		-show all messages Exchanged with Person for current Document
		-show all Meetings with Person

Put an average user in front of a document-centric system and they would soon become lost.
But put that same person in front of a web page and they are just fine.
THE WEB IS DOCUMENT-CENTRIC !!  It just can’t allow the viewer to edit anything.
It has been (poorly) argued that users would not be able to learn the doc-centric model due to current knowledge and habits.
It’s as simple as telling that end-user, “Its like using a word processor to compose a web page with various tools”
They would understand instantly. Training done!

Every NewTon document would be “like" a Web page BUT NOT using web technologies. This makes sharing information and functionality MUCH easier than the web. It’s simply a NewTon document ! Add some data, drag and drop some functional objects, share it and BAM you have a custom distributed solution for your team.

An excellent example (simplified?) of this is FizzyGum  http://fizzygum.org <http://fizzygum.org/> 
It is web based and Open Source too !!! (MIT licence)

I’m sure that the existing NewtonOS microkernel is deeply entangled with the hardware so it may not feasible to move to modern hardware (maybe I’m wrong but it WILL need to be expanded to 64-bit).

One option is to run the NewTon on top of an existing 64 bit kernel.
The Genode project might be a feasible option.

"The Genode OS Framework is a tool kit for building highly secure special-purpose operating systems. It scales from embedded systems with as little as 4 MB of memory to highly dynamic general-purpose workloads.”
https://genode.org/about/index <https://genode.org/about/index>

My 2 cents ;-)


> On Aug 7, 2018, at 11:21 AM, Sylvain Pilet <sylvain at pilet.net> wrote:
> Hi, everybody, 
> Salut à tous (in French after English)
> Your latest thoughts on this project are interesting. But I have a few things to say...
> We are here, on the NewtonTalk list, and I think everyone here wants a NewT Generation (NewTon new Generation) more than a new Smartphone or a new Tablet, am I wrong or not? 
> For me, one of the first things to define is whether this future OS will be compatible with NewtonOS2.x or not. 
> If so, will it work, or not, on the current Newton 2x00/eMate architecture?
> If not, then the targeted material must be defined. 
> On this subject, my opinion is that: if we want to develop a new OS in the spirit of Newton, should we not also develop (or select) also the hardware. So he too can be in the same spirit? Yes, I know, developing hardware is even harder than developing software. But what would be the interest to develop an OS compatible with everything, there are already many OS projects in progress around the world.
> But before going any further, and without wanting to hurt any of the developers who have come forward on this project. I think that the objective to be achieved is not well enough defined at the present time. In any case, for me, whatever the development environment, the important thing is the final objective. But what exactly is the final objective?
> If I understood correctly, and if I didn't miss a message. It seems to me that the objective is to make an Operating System different from all those that exist, like NewtonOS. Is that correct? If so, then let us ask the right questions, and most importantly, what problems we want to solve. 
> Do we want to develop a new OS that would compete with other OS, or a very different OS? I think you and I are choosing the second option, a very different OS. But what for? For me, the answer is: for a different use!
> That is what must be defined as a priority! What will it bring different in use, this OS? 
> For example, how will this OS use the Internet? If it is to have the same thing as on our Computers, Smartphones, Tablets, I do not see the interest of a new OS. If it's to watch videos on Youtube, Netflix, idem, no interest. If it is to not manage to read an article, on a site, because we find it more, because it is drowned in advertising, no interest also. If it's to load the system, with hundreds of APIs, pointing to Google and so on, there's no point there either in doing what already exists. Same for using java (client side) should we allow java (and load the system) I would say no, because it's a bit like Flash at one time, besides, java is practically an OS in an OS ! 
> For me, you have to be able to take advantage of the Internet, without having to suffer it, without having to be dependent on codes (add-on, scripts...) not developed for this new OS. For internet, it would be necessary that we can have permanently, the same result, as the reading mode of Safari. That's where I'd rather go anyway.
> In the immediate future, the priority should be to define: 
> What environment (hardware and software) do developers want to work on today and in the future for this project.
> In order for developers consult each other, to prepare the tools they will need.
> At the same time, we need a team that will define what this OS will be in the end, developers can of course participate in this reflection, it would be even better.
> About handwriting recognition. If the objective of this OS is not to propose the use of handwriting. Then we can't talk about Newton's legacy, and this project could very well be discussed on another list! Yes I know NewtonOS is not based solely on handwriting, but it is a bit the soul of Newton that would be removed, if this ability were not integrated. 
> To start thinking about what this new OS could be, we could for example start from the sentence Noah says in his interview with Pawel, which summarizes very well the difference between a Newton and all the other computers.
> "... because the Newton is really a content creation device, not a content consumption device. The emphasis is on computer manipulation and use, not video or game viewing. »
> This is a good start : what will this new OS be?
> Sylvain Pilet
> - - - -
> [French]
> Salut à tous,
> Vos dernières réflexions sur ce projet sont intéressantes. Mais j’aurais quelques petites choses à dire…
> Nous sommes ici, sur la liste NewtonTalk, et je pense, que tous ceux qui sont ici, ont plus envie d’un « NewT Generation » (pour NewTon new Generation), que d’un nouveau Smartphone ou une nouvelle Tablette, je me trompe ou pas ? 
> Pour moi l’une des premières chose à définir, est de savoir si ce future OS va être compatible NewtonOS2.x ou pas. 
> Si oui, fonctionnera t-il, ou pas, sur l’architecture actuelle des Newton 2x00/eMate ?
> Si non, alors il faut définir le matériel ciblé. 
> A ce propos, mon avis est que : si l’on veut développer un nouvel OS dans l’esprit des Newton, ne faudrait-il pas aussi développer (ou sélectionner) aussi le hardware. Pour qu’il soit, lui aussi, dans le même esprit ? Oui, je sais, développer du hardware est encore plus difficile que de développer du software. Mais quel serait l’intérêt de développer un OS compatible avec tout, il y a déjà beaucoup de projets d’OS encours de part le monde.
> Mais avant d’aller plus loin, et sans ne vouloir blesser aucun des développeurs qui se sont manifestés sur ce projet. Je pense que l’objectif à atteindre, n’est pas assez bien définit à l’heure actuelle. En tous cas, pour moi, peut importe l’environnement de développement, l’important c’est l’objectif final. Mais justement, c’est quoi l’objectif final ?
> Si j’ai bien compris, et si je n’ai pas raté un message. Il me semble que l’objectif est de faire un Système d’exploitation différent de tous ceux qui existent, à l’image de NewtonOS. C’est bien cela ? Si oui, alors posons-nous les bonnes questions, et le plus important, quels sont les problèmes auquel nous voulons apporter des solutions. 
> Voulons nous développer un nouvel OS qui serait concurrent des autres OS, ou bien, un OS très différent des autres ? Je pense, que vous et moi, choisissons la deuxième option, un OS très différent. Mais pour quoi faire ? Pour moi, la réponse est : pour une utilisation différente !
> C’est cela qu’il faut définir en priorité ! Qu’apportera t’il de différent dans l’utilisation, cet OS ? 
> Par exemple, comment cet OS, utilisera t-il Internet ? Si c’est pour avoir la même chose que sur nos Ordinateurs, Smartphones, Tablettes, je ne vois pas l’intérêt d’un nouvel OS. Si c’est pour regarder des vidéos sur Youtube, Netflix, idem, aucun intérêt. Si c’est pour ne pas arriver à lire un article, sur un site, car on le trouve plus, parce qu’il est noyé dans la pub, aucun intérêt également. Si c’est pour charger le système, avec des centaines d’API, qui pointe vers Google et consorts, aucun intérêt là aussi de faire ce qui existe déjà. Pareil pour l’utilisation de java (coté client) doit t’on autoriser java (et charger le système) je dirais non, car c’est un peu comme Flash à une époque, de plus, java est pratiquement un OS dans un OS ! 
> Pour moi, il faut pouvoir profiter d’internet, sans le subir, ne pas être obligé d’être dépendant de codes (add-on, scripts…) non développés pour ce nouvel OS. Pour internet, il faudrait que l’on puisse avoir en permanence, le même résultat, que le mode lecture de Safari. C’est ce vers quoi, je préférerais allez en tout cas.
> Dans l’immédiat il faudrait en priorité définir : 
> -sur quel environnement (hardware et software) les développeurs veulent-ils travailler aujourd’hui et dans l’avenir pour ce projet.
> Afin de les développeurs se concertent, pour préparer les outils qu’ils auront besoin.
> En même temps, il faudrait une équipe qui définira ce que sera au final cet OS, les développeurs peuvent bien entendu participer à cette réflexion, ce serait même mieux.
> Au sujet de la reconnaissance de l’écriture manuscrite. Si l’objectif de cet OS est de ne pas proposer l’utilisation de l’écriture manuscrite. Alors, on ne pourra pas parler d’héritage du Newton, et ce projet pourrait très bien être discuté sur une autre liste ! Oui je sais NewtonOS ne repose pas uniquement sur l’écriture manuscrite, mais c’est un peu l’âme des Newton que l’on retirerait, si cette capacité n’était pas intégrée. 
> Pour commencer à réfléchir à ce que pourrait être ce nouvel OS, on pourrait par exemple partir de la phrase que Noah dit dans son interview avec Pawel, qui résume très bien la différence entre un Newton et tous les autres ordinateurs.
> « … parce que le Newton, est vraiment un appareil de création de contenu, ce n’est pas un appareil de consommation de contenu. L'accent est mis sur la manipulation et l’utilisation de l'ordinateur, et non sur le visionnement de vidéos ou de jeux. »
> Voilà une bonne base départ : que sera ce nouvel OS ?
> Sylvain Pilet
> NPDS | Newton Personal Data Sharing 
> http://messagepad.no-ip.org:3680 (TRACKER)
> http://messagepad.no-ip.org
> http://message-pad.net
> https://www.facebook.com/message.pad.net
> https://twitter.com/MessagePad_net
> Le 7 août 2018 à 18:57, Steven Frank <stevenf at panic.com> a écrit :
>>> On Aug 6, 2018, at 10:35 PM, j <thej at shaw.ca> wrote:
>>> From your descriptions, number 3 sounds like the best place to start from.
>>> It would give the community an Apple-free version of the Newton where number 2 (backward compatibility) and number 4 (future enhancements & modernization) can be launched from.
>>> If I understand this correctly, it would also allow a clean NewtonScript implementation that runs on current OSes allowing NewtonScript development and training for this new Newton-like system.
>> I tend to agree, and for the same reasons.  This route doesn't lead to a 1:1 re-creation of a Newton, but I still think it could be very interesting research.  
>> It's a gargantuan project no matter where you start, so I tend to look for opportunities to divide-and-conquer.  And that's how I ended up looking around for isolated implementations of both a NewtonScript compiler and interpreter, ideally as simple, portable C/C++ command line tools.  That just seems like the natural starting point for anyone wanting to explore that route.
>> Walter's "Prota" interpreter sure seems like it would fit the bill for an interpreter, but I don't really have any way of experimenting with it without a compiler.
>> I'm not aware of a project that is just the compiler piece without a bunch of other stuff.  tntk appears to have been that project, but it crashes on 64-bit.  Matthias has his 64-bit hack version, but it would be nice to have a hack-free 64-bit compiler and interpreter.  I don't know if I'm smart enough to be the one who makes it, but if nothing else, I can try to familiarize myself with the source of those two projects in my spare time.
>> Steven
>> ----------------------------------------------------------------------
>> http://newtontalk.net/
>> http://twitter.com/newtontalk
> ----------------------------------------------------------------------
> http://newtontalk.net/
> http://twitter.com/newtontalk

More information about the NewtonTalk mailing list