Inception of Parsel
Foundation revolves around making portfolio websites simply and easily, and allowing maintenance and updates just as seamless. In the initial development phase (here forth referred to as IDP), a lot of thought went in to getting information into the system as quickly and simply as possible. There wasn’t an immediate solution on how to get the data out.
There was also the initial problem of how to empower ordinary people with no coding experience to easily and efficiently make personalized websites for themselves. For as long as Foundation has existed as an idea, the primary means of making your site was imagined to be a drag-and-drop interface similar to that of Drawter (before I knew Drawter existed). This interface would allow outputting grids as proprietary files that could be shared and ultimately used as the baseline for a component-based layout. This was a much more advanced feature that I had no idea how to implement, even as lately as 6 months ago. I put this on the backburner for later.
Parsel was originally incepted as an intermediate, but it was also a foundation. It would first-and-foremost be an engine that the user could use now to get information out of the system. However, it could also be the building blocks for a more advanced drag-and-drop interface, and that’s exactly what it is. Regardless of its ultimate function, ease-of-use, efficiency, and raw power will always be centerpieces of Foundation’s interfacing engine, and every step is laying more Foundation for better and smarter technology.
When starting to develop the original engine, there were a couple different options. The first was to adopt an existing templating engine. Twig , a templating language by the creator of Symfony, was already being used on the backend, so making it user-facing wouldn’t have been much of a problem. Industry-leading Smarty would also ensure that a lot of existing web designers and developers would start out with a fundamental understanding of how to use Foundation. The other option would be to take the Wordpress route and allow the user to access PHP functions to access information.
Neither of these solutions were satisfactory. The user experience and learning curve was similar to that of an actual programming language, and distribution with the Foundation backend would likely be an implementation and licensing nightmare in the future.
Around the same time as IDP, I attended a lecture by Jer Thorp, in which he talked about his roots as a programmer, and mentioned Apple’s early programming language for HyperCard, HyperTalk. Immediately inspired by how HyperTalk uses English grammar for syntax, I began to come up with initial ideas of how Foundation’s templating engine might manifest.
The engine became Parsel. In the next entry, I’ll talk a little bit more on Parsel’s early goals and syntax, and how it began to evolve from there.




