Suggested Language for Web-Based Intranet/Database - database

Hate to ask a question this borderline generic, but I'm looking to build a web based program that combines our company intranet with a forms-based database. I would be looking at Oracle's database product except that this definitely needs to be web based.
I'm currently investigating using Alfresco (java-based) as a repository, and some PHP engine for the front end. Does anyone know of PHP issues when the task at hand becomes too involved (I'm an amateur, mind you), compared to Python, for example? I would eventually like to be able to scale this project upward, even if I hired someone else to do it.
Pre-built modules would definitely help with the workload. I know Drupal has many, but I've never perused compilations of modules for other languages. I think the availability of modules may be the most important factor!

Alfresco is great for managing content (e.g. documents or static html pages) in a collaborative manner. It has excellent tie-ins to the desktop with WebDav integration. Drupal is better for more dynamic web content and more flexible web pages. Not quite sure what you mean by forms-based content.
With Drupal's CCK module (now mostly built into Drupal 7) and Views - you can create forms (as content types) for people to fill out and then present the results as either lists, tables, grids of nodes or almost any other filterable, list presentation you can think of using Views.
Every page in Drupal is really just a form that collects content to present in a particular way (e.g. the standard page is a Title field and a Body field), but a user profile is just another type of content form with a different set of fields.

Alfresco is currently getting better at Web Content Management (WCM). They recently rewrote the WCM feature set completely, and provide a Quick Start sample to, well, get you started quickly. Alfresco would provide you with a collaborative editing platform, with workflows, ACLs and extensive remoting capabilities (huge, extensible REST API, WebDAV, CMIS). You'll have configurable forms based content creation, plus a platform for your intranet.
The front end for Alfresco WCM would be than written using CMIS to retrieve content from Alfresco, APIs are available for Java, Python and PHP.

Related

What tools should I use to develop a device neutral web application?

I am a computer science student in my senior year at my local university. I recently was hired on as an intern to create a mobile web application. The mobile web application is very simple; it needs to interface with a data base to both give a full data base view for an administrator and for end users to fill out a simple survey. I have never done anything in web development before, so I did a little research and the tools that kept coming up where html, css, java script, and php. However, I also ran into other tools with different applications, like AJAX with Jquery, HTML5, and micrsofts asp.net. I have a basic understanding of html and css, but I haven't committed to a development platform yet. I wanted some advice on which one to choose, based on the following criteria:
1) I want to develop a website that is device neutral. So I want it to work well on both desktops and mobile devices.
2) No one knows the future, but I would like to use the development platform that is likely to become or remain the standard in the future.
3) It needs to be available as a part of a standard server platform for a typical web host
4) It needs to be able to dynamically generate web content and interface with an SQL data base.
I would really appreciate some advice, input, ect. I don't know if I will pursue a career in web development, but sense I already have to learn at least one development platform, I figure I might as well learn the right one.
Thank you for any advice and input.
If you don't have a web developer background and don't want to spend time learning it thoroughly, I would recommend using Google's GWT. It provides you with all the tools to implement your application purely in Java, without caring too much about the front end. As the whole thing's in Java, all the SQL handling can be done there, with the results sent to the front end.
Then, you can add built-in elements (flexible tables, panels, buttons, images, etc.) to the app, again, using Java only. You can get some CSS templates from the web and apply the styles without any HTML knowledge at all.
Once ready, you can compile the whole thing into JavaScript, with several permutations of the code compatible with most of the modern browsers. Then all you have to do is to deploy these generated JavaScript and HTML files onto your HTTP server and enjoy :) You can also touch the HTML directly if you have something that can't be applied through GWT but in the case of a simple webapp this won't be the case...

How to populate a content driven hybrid mobile app?

I'm trying to develop a hybrid app which will deliver a range of simple teaching material to the user. I am planning on using Telerik App Builder in conjunction with Cordoba 3 to create the app. What I cannot decide is how best to package the actual content into the application. I'd like to achieve a separation of the content from the code, and just combine the two when building the delivery packages. (The content is being prepared by a subject matter expert.)
Is there a way I can use Cordova or Telerik AppBuilder to pre-populate a SQLite database as part of the app install process? Or am going about this in completely the wrong way? I have been researching this in the Telerik documentation but without success so far. If someone could point me towards a suitable example or even the correct places in the Telerik or Cordova docs I'd be very grateful!
I recently ran a techie webinar on the topic. The main idea is that you need a centralized system to host this content and this system needs to expose some kind of a service layer that will feed content to your app. To me this seems like a very growing market opportunity, but feels kinda the same as the web 1.0 days where all of us were trying to figure out how to feed cotnent to websites and everybody was building their own CMS in a way.
Telerik Backend Services provides an editing interface, so it can fit some requirements, but it's not a publishing system, plus you may not want to pay developer licenses to your back-end users or provide them with access. The premise of the webinar I am talking about was that we discussed how to integrate with another telerik product - Sitefinity to do this job for you instead. The first 20-25 minutes are an overview of the platfrom, so if you have seen it already, you can certainly jump to ~;0:25 to see the rest
http://www.sitefinity.com/campaigns/webinars/build-content-driven-mobile-apps
Now certainly it doesn't have to be Sitefinity or CMS for that matter, Sitefinity provides a bunch of App Builder related features that are handy, but you technically have a few options:
- Build your own applicaiton and back-end.
- Use any type of CMS or platform that will give your SMEs the back-end interface to publish and the service layer to expose to the app. In the webinar I also go through some neat tricks such as using push notifications upon publishing.
This way you get a clear separation of content and code - you can even get a separation of content structure and code, which is an idea i talk about in greater detail.
I hope this helps!
Svetla

how to add multiple languages to an English website

I am trying to add two additional languages to my website - Chinese, Japanese. User inputs could be in native language, in English or be mixed. E.g. search by product name. Likewise output can be all-English or be in mixed languages, depending on a user's preferences. I already have applicable translations so that is not a problem. It is a data intensive site. It uses web APIs to fetch JSON data objects, and uses angular and backbone, and jquery.
I will appreciate if you possibly refer me to some good books or pages that provide guidance for building multilingual sites. Are there any particular web standards that must be followed by websites and by browsers?
Googling yields a ton of links, but the discussion appears centered around specific packages such as wordpress, joomla, .net, drupal, etc. and appears more around automated translations. It still left me confused about the basics requirements of multilingual sites as I do not use any of these packages.
Thanks a lot.
ps: if you need to leave me a -1, np. But I would very much appreciate a comment as to why - so that it doesn't appear as if you just vented and offered me no opportunity for improvement.
Wells... when i need to build a bilingual website i just use a language selector menu and build the whole website in 2 languages (i think this way its more professional) cause usually translators doesnt 100% translate correctly and at the end you just get a bunch of stuff making no sense.
Maybe you could use Google Website Translator gadget for what you trying to do?? its paid service tho, you could use also the plugin for Wordpress http://wordpress.org/plugins/google-language-translator/
Or use the Google Ajax Language API https://code.google.com/p/jquery-translate/

JSPs for a simple Project Reporting Web App?

I'm about to start developing a simple reporting tool for tasks in international projects. In a nutshell: using the tool, a project is created, defining team members, tasks, and work packages. Team members will be asked to periodically submit reports on the work they've done (related to tasks and/or work packages). These reports will be stored and accessed trough the tool.
I'll use Google App Engine (client requirement) and its datastore (using JDO). But I want to ask you for advice on the frontend part: JSP looks pretty messy for non Java developers... any other idea???
Thanks!!!
Seems like at the moment it's either java or python. However, you may want to look at Grails. GSPs might looks a little less 'messy'. I'm suggesting Grails based on your description of the project, that I suspect will turn out anything but simple later on. You might end up being glad for the mix of constraints and flexibility that Grails will afford.
JSP doesn't need to be any messier than other similar HTML presentation frameworks, it really comes down to implementation. That being said, it is old Java technology which means it's not being kept up to date, and finding a good single source of documentation is difficult.
If you don't want to use JSP, there are other frameworks you can use, you just need to make sure they're compatible with Google App Engine.
The new kid on the block is the Play framework, and that's a Java MVC framework similar to Ruby on Rails. You can find a tutorial here: http://viralpatel.net/blogs/first-play-framework-gae-siena-application-tutorial-example/
If you're going to use Spring, check out this question: Alternatives to JSP for Spring MVC view layer
For a front end developer, if the code is separated correctly, you won't have to know anything about Java since there shouldn't be any Java mixed in with the HTML. If that's your only worry, then I would just go with JSP to keep things simple unless the team has experience with another technology.

Which is the easier CMS to integrate with CakePHP?

I was trying develop a website with Cakephp and Joomla... But lately I've been founding a lot of barriers that create difficulties implementing things that would have been a lot easier if I only developped using one of the components.
So, in your point of view (as someone with more experience than me), is it worth to integrate CakePhp with a CMS?
If yes, what do you think its the best and easier CMS to integrate with?
Or use Croogo (http://croogo.org/)
A CakePHP CMS. I like Croogo's implementation more than Wildflower and the admin UI looks a bit similar to Wordpress.
From my point of view i wouldn't try. I think there would be a lot of crossover functionality and a lot of conflict. Either use Cake and write a CMS and the other elements you want or pick a CMS and develop the other elements you want as add-ins/plugins.
Joomla, Drupal, Xaraya, Expression-engine etc are all extensible so pick the one that is the best fit and has the ability to be extended or maybe already has plugins you require.
Another option would be to use Joomla as the CMS and Cake for the other element you want, keep them as separate entities but skin then identically and make the navigation seamless. In this case about the only thing you would need to integrate would be state.
There are some out there already that are on Cake from the ground up. Wildflower for example
http://wf.klevo.sk/
I have a cakephp site that is running wordpress in it's public_html/blog folder and it is doing great.
They are basically two separate sites, with two separate backend but it is fairly easy to create a model for the wordpress database if you want to pull in any data (eg. posts, pages, comments) and use it in the cakephp site.
As far a integrating the two I don't think it is a good idea if it needs to be a seamless experience for the backend users, most frontend users won't notice the difference because you can use the same style sheet and images.
If you want any more about my experiences with the combination let me know!
Cakeui is a rip of Croogo. Infinitas CMS could be what you're looking for if you want a full blown application or check this site for a list of good CakePHP Cms
As the developer of Croogo, I will be biased and recommend you to check it out at http://croogo.org. It comes with a web based installer too and you should be up and running in minutes.
Another CakePHP based CMS is Infinitas which has more features (including shopping cart). Both are based on the latest version of the framework (1.3 at the moment) and are actively developed.
I wrote a lot of CMS type apps with Cake and was thinking along the same lines. I've tried Joomla, Drupal and Wordpress but still had a dirty feeling in my mouth that I was failing by using Cake just for the sake of it or vice versa.
The most important common denominator, in my experience, is the back-end. It is re-used most often, but gets the least input.
Now I have built my own CMS with CakePHP. The intention is to 'opensource' it, but it's not quite ready yet.
I don't think it is worth the headache trying to combine, then maintain Cake and a 3rd party CMS. Save your best modules and components and build your own. The blog tutorial will give you a good head start and you can cherrypick what you like from other sources, rewriting it to suit your ideals. The benefit is you will then know the CMS inside out and have it working just the way you want. You'll learn a lot along the way as well.

Resources