Skip to content

Instantly share code, notes, and snippets.

@zenithtekla
Last active August 20, 2016 23:58
Show Gist options
  • Save zenithtekla/344d5d0f3f1a5d1e40a0b77fc4479741 to your computer and use it in GitHub Desktop.
Save zenithtekla/344d5d0f3f1a5d1e40a0b77fc4479741 to your computer and use it in GitHub Desktop.
back-end development

To be fair, PHP does have a composer/compiler called composer.PHAR and it does incorporate PEAR somehow but it is difficult to manipulate/tweak it to inject task runner, build script (like Grunt/Gulp/Webpack be invoked in Javascript webdev env). It is difficult because lack of knowledge of core PHP and hard to do without touching core PHP/ PHP fundamentals incorporated in the PHAR file.

I have some practice with NodeJS (MEAN stack) and currently looking at Meteor. Both have the capability to perform desktop and mobile web development.

  • For NodeJS, there are atom-shell and node-webkit allow packing of Chromimum lite so the webApp can run as a desktop application, high portability and with data encapsulation layers: mongoose (for MongoDB) and sequelize (for MySQL, Postgre, SQLite)
  • Meteor has built-in function to package a desktop version of the webapp. Like Ionic-Cordova, Redux, both NodeJS and Meteor are able to have the apps deployable on mobile platforms. But learning some Java with Android studio would be beneficial still.

To shift from PHP, I'm planning to build API that allows access through URI and render data back to provide display (using PHP, HTML or any templating technique). The good thing about doing API backend is that you can write it in whatever language you feel like.

esp_server29:3033/api/sales_order (the sales_order related data can be provided using Node)

esp_server29:3033/api/accounts (the accounts related data can be provided using Java-tomcat, framework with Spring, layered with Hibernate or anything to the mix)

esp_server29:3033/api/customers (the customers related data can be provided using C# with Entity framework)

esp_server29:3033/api/products (the products related data can be provided using Python, could be tweaked using Django)

But all-in-all, to keep it low complexity, a simple CRUD api for each case suffices enough.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment