recommend a server side technology for gwt (beginner) [closed] - gwt

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am developing a gwt project and am looking for an appropriate server side technology.
it should support be open source and support user login (and not using openID...) with password recovery etc
it seems that the de-facto standard would be spring + hibernate. however, I am unfamiliar with neither of them and understand that the learning curve (especially for spring) is very high. gwt was quite easy to learn using GOOG's excellent online tutorials but the spring equivalent seem to impose lots of configuration files and deeper understanding of its internals.
so I am looking for a simpler server side technology to deploy my gwt app. I am definitely prepared to learn a new framework if necessary but not something that would take me 2 months just to understand the fundamentals...
any ideas...?

Spring Roo should get you started with a GWT app in no time. It even has scaffoling (like Rails) for easily generating code for views and models. Here is a good video that introduces Roo and here is a guide for the mandentory 10 minutes application that Rails pioneered years ago.
Also a cool thing about Roo is that it gets you started quickly while still doing everything correctly (i.e. integrate with Spring security, Hibernate, Maven, ...).
Edit: You could also try Vaadin (tutorial here) although I am unsure if that may be to simplistic for your needs.

You could have a look at Google AppEngine + GWT. It provides you a full development environment:
http://code.google.com/webtoolkit/doc/latest/tutorial/appengine.html
This post also provides some information on how to get started with Google Plugin for Eclipse, which supports GWT, Google AppEngine, etc.

I second using Google App Engine, especially the Java version as it integrates so easily with GWT. I am using it in this way right now. App Engine has well written and complete docs, similar to those of GWT.
A simple way to integrate the build processes is to (1) use the GWT code generator to generate the standard project tree and ant build process and then (2) read this article on integrating GAE/Java with GWT:
https://developers.google.com/web-toolkit/doc/latest/tutorial/appengine

Related

GWT vs GXT which is better? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
We are trying to port existing thick client to thin client. We are looking at the different technologies, We are trying out different options. We tried GXT as well as GWT in our sample excercises. Which one do you think we should go ahead with? Are there any other better frameworks?
It's several years I work with GWT (but not GXT). I'm using free version of SmartGWT which is a framework based on a google web toolkit (like GXT).
I personally think if you want (& you have enough reasons) to use GWT, then its a wise choice to use a framework above it such as GXT or SmartGWT or others. This frameworks provide a lot of abilities & ready widgets which make development progress so easy & fun, but they have also their own disadvantages, such as increasing your client side js code size, incompatibility with some browsers, execution overhead which may increase response time a little & so on.
Anyway, beside all weaknesses, I believe that it worth to use them & so I suggest you to USE a GWT-based framework, but before choosing one, take care about these notes:
development community, their activeness & speed of adapting with new releases of JDK, GWT & specially new versions of browsers & availability of samples, resources & discussion forums
the variety of provided widgets & ease of coding for developing new softwares
the ability to customize widgets
the ability to integrating with the other technologies & widgets from other similar frameworks
supported development IDEs
& finally the license & pricing
The decision of framework depends on your requirement.
The factors that may influence to selection of framework may vary based on how large product you are going to develop.
Factores mainly include,
The time for learning.
Supporting libraries/plugins.
Fearures Supported.
Development time.
Support forums.
As I have done some research with GWT and GXT as well.
Time to learn GWT is more.
GXT has more number of widgets.
see this .for performance of GWT vs GXT.
For a commercial and large product deveploment the decision to choose GWT,GXT depands on requirements.
There are lots of other frameworks.
vaadin
dwr
ZK
Apache Click
Apache Wicket
Apache Tapestry 5
Ariba Web
There are many web frameworks available apart from gwt and gxt. There is Vaadin, Dart and many more.
GWT is the foundation of gxt and vaadin. Which technology you want to use depends on your application requirements.
GWT is great in terms of performance but not so good with looks
GXT and Vaadin which are built on GWT provide more rich features, more widgets, good in terms of UI and lags in performance.

What should I learn to become a good web developer? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I'm coding in PHP since a long time. And since a few days I've been looking for a job in web development.
Apparently they're looking for people who either knows ZEND or Symfony. I don't know either one (although I did work a bit on CodeIgniter).
And I really wanted to get into node.js these days.
So I'm asking you guys, what should I privilege to get a job? I have a feeling Node.js is going to become something really important and demanded, so I'd better get into it before others do...
What do you think? Are there other things out there I should learn? I really don't want to get into RoR since I do PHP.
I know this is a highly contested topic, but node.js is more of a buzzword than anything and it will not be a skill established companies are looking for. Many people have realized that javascript is far too nuanced to efficiently write large-scale applications, and that doesn't change once it's server-side. If you want job prospects, learn a statically-typed, managed language like Java or C#. These are not trendy, and for that reason a lot of people will tell me I'm wrong.
Agree, Node.js and jQuery are going to be the big winners here; for client side development anyway. Also, ensure you're well versed in CSS (especially CSS3) and are familiar with HTML(5) and how all of these work together to make beautiful web apps.
As far as server side development goes, you're really free to choose whatever, after all, it's rare the client ever sees the actual code that makes a WebService run. If you can make a reliable WebService in PHP, sure. C#? Why not? RoR? Java? Python? The more you know, the more marketable you are, and you get exposed to a lot more code. Personally, just because I'm forced into the big business world, C# is what I use almost exclusively, but only because I use it everyday.
If you get super adventurous, go for some understanding of SQL as well. And network setup etc. But that could be out of the scope of a web developer.
I would agree with the Node.js suggestion but would also learn the jQuery and jQuery mobile libraries for JavaScript.
They offer a huge amount of functions to ease web development along with support for HTML5 functionality. The other nice thing about this is you can write mobile web apps using jQuery mobile and support all platforms (iOS, Android, WP) with one app. It won't be native but it can still be a great looking app with a huge amount of functionality.
EDIT: Definitely agree with everything Breland says and in addition I'd like to emphasize that SQLite on the client-side would be something good to learn. It's a really nice feature where you can create a client-side database if you want to persist data that is a too big for a cookie or you can go with a real database.
Unfortunately AFAIK it's only supported on webkit browsers right now (Safari, Chrome, Android, iOS) but it could be good to learn how to use this and also an ORM like persistencejs which is a jQuery plugin that creates an ORM for SQLite and can work on the client or server-side.
These days, a "Web Developer" means something else than what it used to 3 or 4 years ago. That skill set is further split into disciplines now, mainly front-end and back-end. The path you go with will likely be based on what you've been comfortable doing as a PHP developer.
If you've been building PHP apps the "traditional" way and controlling all aspects of your MVC apps through PHP then learning modern PHP frameworks that make that approach easier would be an easy next step.
If you've been building PHP backends that expose business logic through an API or service layer, you can stick to the backend track and learn to do the same in Ruby on Rails (using something like rails-api) or Node.js if you wish. If you go the node.js route, picking up CoffeeScript will make writing your JavaScript a little more comfortable but it's another syntax you'll have to learn.
If you've done both 1 and 2 above and you like client side development, learn modern Javascript web development. Don't worry too much about which framework to side with yet, just learn the modern way of building large JS apps. A book I recommend for that is JavaScript Web Applications by Alex McCaw (http://shop.oreilly.com/product/0636920018421.do). It did wonders to help me shed my dislike of JavaScript which came from working with the language many moons ago.
My advice would be to learn both sides of the fence and master one or two frameworks on each side. That will make you what's now called a "full stack" developer, which is just a term used to identify those who are effective at client and backend dev thereby making them highly desirable in the marketplace.
Good luck.

GWT Platform, GWT-Ext and SmartGWT [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
Currently we are using GWT Platform with MVP architecture for our UI development.
I could see that we always get an advantage of using SmartGWT or GWT-Ext over GWT Platform because there are many built in components which are hard to write in regular GWT widgets.
I have following questions now to proceed.
1. Can we install GWT-Ext or Smart GWT over regular GWT P project and work? i.e Existing screen functionalities will remain with GWT regular widgets. But new development will be used with either Smart GWT or GWT-Ext. Will there be any conflict or issues in doing this?
2. With Smart GWT or GWT-Ext, can we still follow the same MVP framework like in GWT-Platform or we have a different mechanism for server side calls?
3. We wanted to use free licensing products. So SmartGWT and GWT-Ext are free softwares if I understand. Am I correct?
4. Now with both Smart GWT and GWT-Ext coming into picture, which one should I start using it considering, I will get more good components, faster development, good documentation help and good future for the technology. Now it is very difficult to make a choice of what to use? Please suggest.
In case if you feel, there is something else which is the best compared to these and free, you can suggest that as well.
Thanks in advance.
I will conclude as below with many links, comments on my question. SmartGWT is preferable over GWT-Ext when compared to available widget libraries. Also, GWT-Ext support is not much whereas
SmartGWT has enough support even now. SmartGWT is free to use. Also, we can start using SmartGWT on top of our existing GWT Platform application for our further development. With your above comments, I got to know that its not a good practice to mix GWT and SmartGWT widgets. But we can always start using all SmartGWT widgets for our new UI work. i.e You will have screen both from GWT widgets and SmartGWT widgets(Newer screens). Please confirm if my understanding is correct.
Now I have my last question which is very important - All current server calls are GWT Platform RPC calls - using GWT MVP framework. Service layer is built using GUIC framework. I would like to migrate to SmartGWT with minimal efforts. i.e
Existing GWT Platform screens are kept as it is with GWT - RPC calls to GUICE servlet framework
New development will be done using SmartGWT widgets, but would like to have Restful WS calls to GUICE framework. Even though SmartGWT provides data binding mechanism for better server calls, I may not be interested as we have an intention to convert all client server calls to Restful webservices with JSON. Do we have any issues in this approach where SmartGWT is used for better UI development, but with server calls being implemented using Restful Web services (JSON data format). Can somebody help me on how we can implement this behavior? I want GWT client and service to be independent(Technology independent) and hence would like to go for Restful Webservice approach for client-server communication. If we have any SmartGWT sample with restful webservice call it would be really great.

joomla developing question [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Can someone give me some insight on a scenario like this.
Say a company has en existing Joomla site, not complete but just has all the modules, plug-ins, and components installed that they believe they will need.
If someone new where to come in and given the general idea of what the site needs to do, and by accomplishing this they need to make sure all plug-ins share data between each other update information between each other when ever one module is updated. As well as fixing and modifying the template to take shape and form of how they envision the site to be interacted with.
Would jumping into this project be more trouble than its worth? Would creating something from the ground up using custom developed pages rather than using Joomla as a back-end/front-end be too much of a hassle.
Also given that the existing installation has 301 tables to sot through.
Joomla is more than just a CMS, it is also a pretty solid "Development Framework". Modifying existing software will be faster rather than developing from scratch, especially if it is that big.
Read more about Software Development Process, it will help you with your evaluation. As far as I remember development cost is 2x less $ than maintenance in first 5 years.
Starting from the ground up can be not such a good idea for a large project. Working with another framework will result in "reinventing the wheel" and introduce new problems and will require more time for user acceptance.
I know too little to point you in the right direction... 1st of all Joomla is terrific choice, object oriented, it is extensive and very powerful. MVC architecture is huge plus. Plug-in system is easy and extensive. Modules are easy and customizable.
I suggest using Zend Framework if you want to "reinvent the wheel". ZF is exceptional choice but your cost will be MUCH higher. You will have all similar functionality and features like in Joomla: OO, MVC, singletons, layouts, placeholders, modules (components), plug-ins, etc... Comparing ZF to Joomla's "Development Framework" is like comparing Ferrari to Honda Civic.
Long story short: I would try to stick with Joomla and create my library extending Joomla's classes... this will help automating a lot of things (reduce code, etc...). If I was to give a quote to the client I would try to see what they want/their experiences with existing project (check with their IT department, etc). If experience was horrible from day 1 and it was because of software and not hosting/db/hardware/network/etc then I would give 2 quotes: 1st for recreating in Joomla, 2nd for recreating in Zend... and explain strength/weaknesses of both. If software behaved 'OK', with minor to medium problems/bugs/errors I would reuse existing project.
Hope this helps...

Plugin dependency best practices [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
We have an application supporting plugins via interfaces. On the other side plugins contain lots of logic and code in themselves. Plugins have dependencies (project and dll references) to application libraries beside the interfaces that application exposes.
Application core libraries have lots of reusable components that can be used in plugins. But if any of these components change in anyway, both the plugins and application are affected, as both have dependencies.
Is it acceptable to have plugins containing dependencies on the system, that plugins extend? What are the best practices on this issue?
Please share your thoughts and experiences.
Take a look a Mono.Addins, even if you are not developing in C#, it will give you some great ideas.
The simple solution is to define a version system for the plugins and the core, so the core can read which version of itself the plugin needs. That way is easy to prevent the load of a plugin which was meant to be used with a previous version of the core.
I think there are two answers to your question, depending on the level we're talking about:
yes, it's fine to have a dependency of the plugin on the plugin host. The host is coordinating the use/execution of the plugin, but there is no reason for the host not to provide functionality to help the plugin do that. Extending that a little further, the host's dependencies may or may not be fair game for the plugin to use (this goes into the territory of "it depends...").
no, the plugins should not depend directly on code that the host could provide, except those objects that the plugin directly passes in. This is more a distrust on global state than a fear of circular dependencies.
I think it is totally fine to have you plug-ins referencing off of your core. Now you’re talking about project and dll references, so you must be using c#, vb or c++, these solutions all should be fine to use.
I typically have two projects, to get around the circular dependency.
Project Base, Interfaces, Exceptions
Logic/Configuration/Plug-in Loader
There are three ways I typically load plug-in
Out of a directory using loops and the filesystem watcher (slow but effective)
Use your own configuration section in .net using named types (recommended and fastest)
Load them from a database (good for scalability)