Morfik
Encyclopedia
Morfik Technology Pty Ltd., an Australia
n company, is the developer of Morfik, a set of visual designers, compilers and a Framework combined in an Integrated development environment (IDE)
aimed at developing Ajax
applications in a high-level language such as Java
, C#, BASIC
or Object Pascal
. Morfik includes visual design tools for Web interfaces, database structure, and queries. It supports the classic client–server model, however like all Ajax applications, the client-side code runs within a browser
. The Morfik development tool converts the forms that the user draws into DHTML, compiles the client-logic into JavaScript
, and builds the application and database server engines to house the server-side code.
, Tasmania
by Aram Mirkazemi and Shahram Besharati. The company later (2009) moved to Sydney
, New South Wales
, before being acquired by Altium Limited in November 2010.
's Gmail
that could function offline.
Two months later, the SD Times
wrote "Morfik IDE Simplifies AJAX Development" and the first version of the Morfik was released for public evaluation and testing. This was followed by the opening in February 2006, of a website called Morfik Labs which was designed to showcase Ajax applications that were created using Morfik.
March, 2006, marked the first time Morfik was presented at a conference presenation, when Paul Ruizendaal, Managing Director of Janus Software presented a review of Morfik at Software Development GigaCon, Poland.
A month later, Morfik Chess was made available on Morfik Labs. Although a few other browser-based Chess games had already been released (the most notable by Douglas Bagnall), Morfik's was the first that allowed both single and multi-player modes. Further, the single-player mode utilized one of the first Javascript-powered chess engines that could calculate moves beyond 3-ply.
In May, 2006, Google released Google Web Toolkit. Due to the significant similarity to Morfik's JavaScript Synthesis Technology, significant media and blogsphere discussion commenced as commentators debated the possible relationships and partnerships between Morfik and Google. GWT's manager, Bret Taylor offered a direct response to the technology issue, by saying that GWT did not use any Morfik technology. The debate extended to patent rights and potential lawsuits (for example, Newswire and ZDNet). Initially, various critics including PathFinder questioned whether any actual patent applications had been filed, but these criticism were laid to rest when at least one of Morfik's patent applications was made publicly available by the USPTO itself.
In August, 2006, A review of Morfik in the context of developing web applications solely in C# appeared in a the magazine DEV.
In September, 2006, Brazilian IT executive Mauricio Longo joined Morfik as Evangelist and Product Mananger.
The first Professional License for Morfik was by acquired by Greenpeace International in October, 2006, and two months later, Altium deployed the first commercial application built with Morfik. It was a mashup
with Salesforce.com applications which permitted a hierarchical view of all projects managed through Salesforce.com.
In March 2007, v1.0 was officially released and its name was changed to "Morfik 07"). See also here
In November 2008, v2.0 was officially released with an entirely redesigned interface.
In August 2009, Morfik released AppsBuilder 2.1 which, though numbered as a simple point update, contained a significant number of new features such as the ability to visually create Widgets (user created controls). This was followed in close succession by the release of version 2.2 which established the new Package and Widget features previously introduced in 2.1 as the basis on which to build controls for independent distribution.
In May 2010 Morfik 3.0 went into beta testing introducing a change in the way application and websites are designed in order to provide direct support for Search Engine Optimization and facilitate the process of designing the navigational organization of the application. Morfik 3 also further extends the Package features introduced in version 2.1, allowing for the creation of more complex widgets.
In September 2010, Altium announced its intention to purchase Morfik.
In November 2010 Altium Limited completed the acquisition of Morfik Technologies. In the same month Altium altered the licensing model for all versions of the Morfik Web development tools making them free.
In December 2010 native connectivity to PostgreSQL is made available to Morfik users as a freely downloadable package. This add-on package also provides connectivity to MySQL and MS SQL server databases.
fashion, including support for visual styles and themes. It combines in an integrated development environment an interface designer, a report designer, a query and table designer and coding facilities. The tool supports three different language syntaxes: C#, Basic and Object Pascal
and creates applications for deployment on Windows and Linux
systems.
While interface design is done visually in Morfik, Web application developers can write code to handle events and create the interactivity and business logic. Code written in the three supported language syntaxes is compiled directly to JavaScript, HTML, CSS and images for the in-browser portion of the application and to and intermediate Object Pascal form for the server side which is then compiled into binary form through the use of the FreePascal compiler. Regardless of the language syntax of choice, all code is based on the usage of the Morfik Framework which is a large library of classes and functions designed specifically for the creation of Web based applications.
The tight integration of the development environment and the compilers with the Morfik Framework makes the creation of Web Services a simple task. Web services, in fact, are used throughout the Morfik Framework, for accomplishing several tasks without any developer coding.
The Morfik development environment offers integrated source level debugging for both the in-browser and server side codes as well as facilities to monitor communications between the browser and the web server, and the web server and the database. It is also possible to inspect the compiler generated JavaScript code while tracing through browser.
Morfik integrates all the components required to build a web-based application into a single package, including a Firebird
database and an Apache
web server.
, and output either JavaScript or Object Pascal depending on whether the target of each module was for the browser or server side of a Morfik Application, respectively. The server side code is then compiled again, using the Free Pascal
compiler to generate the final binary for the chosen target platform.
The first commercially released version of Morfik also supported an implementation of the Java
language syntax called MorfikJ. Support for this language syntax was dropped with the release of Morfik 2.0 and its users moved to the C# syntax due to its close proximity to that of MorfikJ.
Another reason for which Morfik has been criticized is that it aimed at software developers not web developers: Some say that Morfik's emphasis on coding in an object-oriented language such as Object Pascal or C# instead of directly coding in JavaScript significantly under-utilizes the skills and knowledge of existing web developers, the vast majority of whom are far more skilled in CSS, HTML and JavaScript than in Java. Morfik however, chose to focus on the traditional desktop and client/server software developer.
A third area of criticism was its unorthodox method of deployment for web applications: Creating web applications in a manner that is akin to win32 applications, (for example, if deploying onto a Windows-based server, the web application is output as a .exe file. This makes it hard for many businesses to use their existing web hosting packages to host a Morfik-created web application.
In addition to these applications, several others have been made available on the Web, such as:
SDTimes,
The Interbase & Firebird Developer Magazine, FYRACLE,
AustralianIT,
Dev: La rivista che ti insegna a programmare and
Toolbox
as well as on notable web sites including
Slashdot (1, 2, 3),
ComputerWorld,
Read/WriteWeb (1, 2),
Jason Kottke,
Ajaxian, and
Pathfinder (1, 2, 3).
Australia
Australia , officially the Commonwealth of Australia, is a country in the Southern Hemisphere comprising the mainland of the Australian continent, the island of Tasmania, and numerous smaller islands in the Indian and Pacific Oceans. It is the world's sixth-largest country by total area...
n company, is the developer of Morfik, a set of visual designers, compilers and a Framework combined in an Integrated development environment (IDE)
Integrated development environment
An integrated development environment is a software application that provides comprehensive facilities to computer programmers for software development...
aimed at developing Ajax
Ajax (programming)
Ajax is a group of interrelated web development methods used on the client-side to create asynchronous web applications...
applications in a high-level language such as Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
, C#, BASIC
BASIC
BASIC is a family of general-purpose, high-level programming languages whose design philosophy emphasizes ease of use - the name is an acronym from Beginner's All-purpose Symbolic Instruction Code....
or Object Pascal
Object Pascal
Object Pascal refers to a branch of object-oriented derivatives of Pascal, mostly known as the primary programming language of Embarcadero Delphi.-Early history at Apple:...
. Morfik includes visual design tools for Web interfaces, database structure, and queries. It supports the classic client–server model, however like all Ajax applications, the client-side code runs within a browser
Web browser
A web browser is a software application for retrieving, presenting, and traversing information resources on the World Wide Web. An information resource is identified by a Uniform Resource Identifier and may be a web page, image, video, or other piece of content...
. The Morfik development tool converts the forms that the user draws into DHTML, compiles the client-logic into JavaScript
JavaScript
JavaScript is a prototype-based scripting language that is dynamic, weakly typed and has first-class functions. It is a multi-paradigm language, supporting object-oriented, imperative, and functional programming styles....
, and builds the application and database server engines to house the server-side code.
Company history
Morfik Technology was a privately-funded company that was founded in 2000 in HobartHobart
Hobart is the state capital and most populous city of the Australian island state of Tasmania. Founded in 1804 as a penal colony,Hobart is Australia's second oldest capital city after Sydney. In 2009, the city had a greater area population of approximately 212,019. A resident of Hobart is known as...
, Tasmania
Tasmania
Tasmania is an Australian island and state. It is south of the continent, separated by Bass Strait. The state includes the island of Tasmania—the 26th largest island in the world—and the surrounding islands. The state has a population of 507,626 , of whom almost half reside in the greater Hobart...
by Aram Mirkazemi and Shahram Besharati. The company later (2009) moved to Sydney
Sydney
Sydney is the most populous city in Australia and the state capital of New South Wales. Sydney is located on Australia's south-east coast of the Tasman Sea. As of June 2010, the greater metropolitan area had an approximate population of 4.6 million people...
, New South Wales
New South Wales
New South Wales is a state of :Australia, located in the east of the country. It is bordered by Queensland, Victoria and South Australia to the north, south and west respectively. To the east, the state is bordered by the Tasman Sea, which forms part of the Pacific Ocean. New South Wales...
, before being acquired by Altium Limited in November 2010.
Timeline
In September 2005, it demonstrated a pre-beta version of its flagship product, Morfik at the Web 2.0 Conference. Morfik was a major sponsor of this conference . Rumors spread just prior to the conference that Robert Scoble, Microsoft's lead evangelist, thought that Microsoft should buy Morfik, however, this was quickly laid to rest by Scoble himself. At the conference, Morfik showed how web applications could be designed for both online as well as offline use, via its 'Unplugged' vision, by demonstrating an 'unplugged' version of GoogleGoogle
Google Inc. is an American multinational public corporation invested in Internet search, cloud computing, and advertising technologies. Google hosts and develops a number of Internet-based services and products, and generates profit primarily from advertising through its AdWords program...
's Gmail
Gmail
Gmail is a free, advertising-supported email service provided by Google. Users may access Gmail as secure webmail, as well via POP3 or IMAP protocols. Gmail was launched as an invitation-only beta release on April 1, 2004 and it became available to the general public on February 7, 2007, though...
that could function offline.
Two months later, the SD Times
SD Times
Software Development Times, better known as SD Times, is a magazine published by BZ Media, in both a print version and an on-line electronic edition. It has been published since 2000. Since 2003, it has published an annual award list, the "SD Times 100", which honors the top 100 leaders and...
wrote "Morfik IDE Simplifies AJAX Development" and the first version of the Morfik was released for public evaluation and testing. This was followed by the opening in February 2006, of a website called Morfik Labs which was designed to showcase Ajax applications that were created using Morfik.
March, 2006, marked the first time Morfik was presented at a conference presenation, when Paul Ruizendaal, Managing Director of Janus Software presented a review of Morfik at Software Development GigaCon, Poland.
A month later, Morfik Chess was made available on Morfik Labs. Although a few other browser-based Chess games had already been released (the most notable by Douglas Bagnall), Morfik's was the first that allowed both single and multi-player modes. Further, the single-player mode utilized one of the first Javascript-powered chess engines that could calculate moves beyond 3-ply.
In May, 2006, Google released Google Web Toolkit. Due to the significant similarity to Morfik's JavaScript Synthesis Technology, significant media and blogsphere discussion commenced as commentators debated the possible relationships and partnerships between Morfik and Google. GWT's manager, Bret Taylor offered a direct response to the technology issue, by saying that GWT did not use any Morfik technology. The debate extended to patent rights and potential lawsuits (for example, Newswire and ZDNet). Initially, various critics including PathFinder questioned whether any actual patent applications had been filed, but these criticism were laid to rest when at least one of Morfik's patent applications was made publicly available by the USPTO itself.
In August, 2006, A review of Morfik in the context of developing web applications solely in C# appeared in a the magazine DEV.
In September, 2006, Brazilian IT executive Mauricio Longo joined Morfik as Evangelist and Product Mananger.
The first Professional License for Morfik was by acquired by Greenpeace International in October, 2006, and two months later, Altium deployed the first commercial application built with Morfik. It was a mashup
Mashup (web application hybrid)
In Web development, a mashup is a Web page or application that uses and combines data, presentation or functionality from two or more sources to create new services...
with Salesforce.com applications which permitted a hierarchical view of all projects managed through Salesforce.com.
In March 2007, v1.0 was officially released and its name was changed to "Morfik 07"). See also here
In November 2008, v2.0 was officially released with an entirely redesigned interface.
In August 2009, Morfik released AppsBuilder 2.1 which, though numbered as a simple point update, contained a significant number of new features such as the ability to visually create Widgets (user created controls). This was followed in close succession by the release of version 2.2 which established the new Package and Widget features previously introduced in 2.1 as the basis on which to build controls for independent distribution.
In May 2010 Morfik 3.0 went into beta testing introducing a change in the way application and websites are designed in order to provide direct support for Search Engine Optimization and facilitate the process of designing the navigational organization of the application. Morfik 3 also further extends the Package features introduced in version 2.1, allowing for the creation of more complex widgets.
In September 2010, Altium announced its intention to purchase Morfik.
In November 2010 Altium Limited completed the acquisition of Morfik Technologies. In the same month Altium altered the licensing model for all versions of the Morfik Web development tools making them free.
In December 2010 native connectivity to PostgreSQL is made available to Morfik users as a freely downloadable package. This add-on package also provides connectivity to MySQL and MS SQL server databases.
Features
Morfik is a visual development tool which lets developers create Ajax-based Web application in a true WYSIWYGWYSIWYG
WYSIWYG is an acronym for What You See Is What You Get. The term is used in computing to describe a system in which content displayed onscreen during editing appears in a form closely corresponding to its appearance when printed or displayed as a finished product...
fashion, including support for visual styles and themes. It combines in an integrated development environment an interface designer, a report designer, a query and table designer and coding facilities. The tool supports three different language syntaxes: C#, Basic and Object Pascal
Object Pascal
Object Pascal refers to a branch of object-oriented derivatives of Pascal, mostly known as the primary programming language of Embarcadero Delphi.-Early history at Apple:...
and creates applications for deployment on Windows and Linux
Linux
Linux is a Unix-like computer operating system assembled under the model of free and open source software development and distribution. The defining component of any Linux system is the Linux kernel, an operating system kernel first released October 5, 1991 by Linus Torvalds...
systems.
While interface design is done visually in Morfik, Web application developers can write code to handle events and create the interactivity and business logic. Code written in the three supported language syntaxes is compiled directly to JavaScript, HTML, CSS and images for the in-browser portion of the application and to and intermediate Object Pascal form for the server side which is then compiled into binary form through the use of the FreePascal compiler. Regardless of the language syntax of choice, all code is based on the usage of the Morfik Framework which is a large library of classes and functions designed specifically for the creation of Web based applications.
The tight integration of the development environment and the compilers with the Morfik Framework makes the creation of Web Services a simple task. Web services, in fact, are used throughout the Morfik Framework, for accomplishing several tasks without any developer coding.
The Morfik development environment offers integrated source level debugging for both the in-browser and server side codes as well as facilities to monitor communications between the browser and the web server, and the web server and the database. It is also possible to inspect the compiler generated JavaScript code while tracing through browser.
Morfik integrates all the components required to build a web-based application into a single package, including a Firebird
Firebird (database server)
Firebird is an open source SQL relational database management system that runs on Linux, Windows, and a variety of Unix. The database forked from Borland's open source edition of InterBase in 2000, but since Firebird 1.5 the code has been largely rewritten ....
database and an Apache
Apache HTTP Server
The Apache HTTP Server, commonly referred to as Apache , is web server software notable for playing a key role in the initial growth of the World Wide Web. In 2009 it became the first web server software to surpass the 100 million website milestone...
web server.
Innovations
Morfik introduced several innovations into the process of creating Web applications among which the following are most significant:- JavaScript Synthesis Technology (JST): Morfik's compiler technology that compiles code written in dialects of high-level languages such as Pascal, Basic, Java or C# into HTML and JavaScript, for the purpose of running applications written in those languages natively within a Web Browser. This automatically generated JavaScript can be complemented with custom in-line JavaScript or by linking-in external handwritten JavaScript code libraries. Morfik has applied for a series of patents regarding this technology. GoogleGoogleGoogle Inc. is an American multinational public corporation invested in Internet search, cloud computing, and advertising technologies. Google hosts and develops a number of Internet-based services and products, and generates profit primarily from advertising through its AdWords program...
later employed a similar technology in its Google Web ToolkitGoogle Web ToolkitGoogle Web Toolkit is an open source set of tools that allows web developers to create and maintain complex JavaScript front-end applications in Java. Other than a few native libraries, everything is Java source that can be built on any supported platform with the included GWT Ant build files...
(GWT) product. - Elastic Page Design: (also patent-pending ) enables developers to design complex web interfaces that allow parts of the web page to dynamically adjust their size to suit their content at run-time (fluid layout), whilst maintaining all design-time constraints (fixed layout).
- Unplugged Applications: first showcased at the Web 2.0 Conference in 2005, with an unplugged version of Gmail, Google's AJAX-based mail client. Intended to show that with Morfik AppsBuilder you could create web applications that functioned both online as well as offline.
- High-level source Debugging: Debug errors in browser and server side code from within IDE. Either debug at the high-level source code level or at the automatically generated JavaScript code-level. Add breakpoint to pause execution, and view current variable values via mouse hovers. Track all SQL, XML(SOAP packages), JSON and HTTP activity.
Compilers
Morfik has done extensive work in the area of compilers. This includes developing compilers for the purpose of developing web applications, that receive code in one of the following language syntaxes: C#, Basic and Object PascalObject Pascal
Object Pascal refers to a branch of object-oriented derivatives of Pascal, mostly known as the primary programming language of Embarcadero Delphi.-Early history at Apple:...
, and output either JavaScript or Object Pascal depending on whether the target of each module was for the browser or server side of a Morfik Application, respectively. The server side code is then compiled again, using the Free Pascal
Free Pascal
Free Pascal Compiler is a free Pascal and Object Pascal compiler.In addition to its own Object Pascal dialect, Free Pascal supports, to varying degrees, the dialects of several other compilers, including those of Turbo Pascal, Delphi, and some historical Macintosh compilers...
compiler to generate the final binary for the chosen target platform.
The first commercially released version of Morfik also supported an implementation of the Java
Java (programming language)
Java is a programming language originally developed by James Gosling at Sun Microsystems and released in 1995 as a core component of Sun Microsystems' Java platform. The language derives much of its syntax from C and C++ but has a simpler object model and fewer low-level facilities...
language syntax called MorfikJ. Support for this language syntax was dropped with the release of Morfik 2.0 and its users moved to the C# syntax due to its close proximity to that of MorfikJ.
Criticisms
Morfik received quite a bit of criticism for not allowing developers to access CSS stylesheets for the sites they are creating and for not producing an application which could have clean and meaningful URLs. Morfik uses a totally visual approach to styles and stylesheets which tends to be frowned upon by Web developers for being non-standard. In subsequent releases the question of creating clean URLs was addressed in the product.Another reason for which Morfik has been criticized is that it aimed at software developers not web developers: Some say that Morfik's emphasis on coding in an object-oriented language such as Object Pascal or C# instead of directly coding in JavaScript significantly under-utilizes the skills and knowledge of existing web developers, the vast majority of whom are far more skilled in CSS, HTML and JavaScript than in Java. Morfik however, chose to focus on the traditional desktop and client/server software developer.
A third area of criticism was its unorthodox method of deployment for web applications: Creating web applications in a manner that is akin to win32 applications, (for example, if deploying onto a Windows-based server, the web application is output as a .exe file. This makes it hard for many businesses to use their existing web hosting packages to host a Morfik-created web application.
Applications gallery
In addition to Morfik's own web site www.morfik.com, the company has a set of showcase applications, built with Morfik, which are used in conjunction with the web site. These applications include: discussion forums, issue tracker and online videos web site that closely resembles the YouTube web site.In addition to these applications, several others have been made available on the Web, such as:
- Morfik Chess: Allows users to play each other online or play against a chess engine. This is the first known instance of a chess engine that resides in the browser that is capable of more than 3-ply. This received notable attention from the blogosphere by ZDNet,Ajaxian, and Pathfinder.
- Desktop Gmail
- Google Maps Mashup
- Salesforce.com synchronization
In the media
Morfik has featured in a diverse range of media includingSDTimes,
The Interbase & Firebird Developer Magazine, FYRACLE,
AustralianIT,
Dev: La rivista che ti insegna a programmare and
Toolbox
as well as on notable web sites including
Slashdot (1, 2, 3),
ComputerWorld,
Read/WriteWeb (1, 2),
Jason Kottke,
Ajaxian, and
Pathfinder (1, 2, 3).