Showing posts with label Netbeans. Show all posts
Showing posts with label Netbeans. Show all posts

Wednesday, April 8, 2009

Seriously this time, the new language on App Engine: Java™


Today, Google has announce the availability of a new programming language for Google App Engine. Please welcome the Java runtime!


Realized that the chance to bring this kind of simplicity to Java developers was too good of an opportunity to pass up. When App Engine launched publicly, that Java language support was both the first and the most popular request filed in the Issue Tracker. I am thrilled to see that this enthusiasm extended beyond the Java language to all of the various programming languages that have been implemented on top of the Java virtual machine -- not to mention all of the popular web frameworks and libraries.
Also knew that Java developers are choosy:
  • They live by their powerful tools (Eclipse, Intellij, NetBeans, Ant, etc.).
  • They try to avoid lock-in and strive for re-use. Standards-based development (defacto or otherwise) is key.
  • They harness sophisticated libraries to perform language feats which are nearly magical (GWTGuice, CGLIB, AspectJ, etc...).
  • They even use alternate languages on the JVM, like Groovy, Scala, and JRuby.
Google wants to give developers something that they could be ecstatic about, but google knew that it would have to marry the simplicity of Google App Engine with the power and flexibility of the Java platform. Google also wanted to leverage the App Engine infrastructure -- and by extension Google's infrastructure -- as much as possible, without giving up compatibility with existing Java standards and tools.
And so that's what Google did. App Engine now supports the standards that make Java tooling great. (Google is also working on the tooling too, with Google Plugin for Eclipse). It provides the current App Engine API's and wraps them with standards where relevant, like the Java Servlet API, JDO and JPA, javax.cache, and javax.mail. It also provides a secure sandbox that's powerful enough to run your code safely on Google's servers, while being flexible enough for you to break abstractions at will.
There is a vast amount of Java code out there, much of it written without consideration of sandboxing, and we can't test it all. 
The google team has also been working on many other improvements to App Engine, which we're really excited to launch to you as well:
  • Access to firewalled data: grant policy-controlled access to your data behind the firewall.
  • Cron support: schedule tasks like report generation or DB clean-up at an interval of your choosing.
  • Database import: move GBs of data easily into your App Engine app. Matching export capabilities are coming soon, hopefully within a month.
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the United States and other countries.

Monday, January 26, 2009

A new PHP IDE rolls into town - NetBeans

Was shocked the other day to hear that someone was using a certain IDE for PHP development.  That IDE being Netbeans.  If you haven’t ever used NetBeans it is an IDE project child of SUN and use to just be for Java development.

Looks like on the latest version (6.5) you get a whole slew of extra languages to develop in!  Check out all the features of NetBeans 6.5 here.  Now NetBeans supports (for Dynamic Languages) PHP, Ruby, JavaScript, Groovy, and Python.  It also has support for many of the well know AJAX frameworks out there like my personal favorite jQuery.  Oh it also has great HTML support.

This IDE has the makings of something great, it’s free, it supports the syntax of many languages.  However is it better than the former PHP champ Zend IDE 5.5 (standalone)?  Let’s compare the two.

Supported Languages:  Zend has compatibility for PHP and HTML, and that is really it.  It handles JavaScript ok, at least it’s useful for finding out whether or not I screwed up some brackets while using jQuery.

NetBeans on the other hand can handle a whole slew of languages from Java to C++ to many web-development languages.   Netbeans +3.

Syntax Strictness:  NetBeans could be stricter on the way it handles the PHP syntax.  One thing I always really liked about Zend was when I tried typing a function name and I didn’t write the function yet or didn’t have it included into the file that the IDE gave me a bunch of shit about it.  This helps you make sure you don’t have to wait until you debug it to figure you might have spelt it wrong or didn’t include it.

On the flip side NetBeans will throw the penalty flag if your HTML tags are out of order (ex: ) something Zend doesn’t do. Tie: Zend +1 NetBeans +1.

FTP:  One of Zend’s main drawing points for me was it’s awesome FTP support.  You could set up a bunch of FTP accounts and be working off multiple servers, transferring files, the whole works.  It was incredibly sweet.

NetBeans has FTP support, but you set it up for that project, which works just fine.  However sometimes I would use Zend as a FTP program so I didn’t have to boot up FileZilla.   Zends was just more robust, Zend +1.

Code Completion:  Where would we be today without code completion?  Honestly it can save you so much time.  Zend would code complete everything everything automatically, it was simple and effective.  It didn’t get in the way because they did it right.

NetBeans will code complete automatically on variables, but normally nothing else unless you pull a ctrl+space (at least on linux).  I was really turned off by this when I started using it, but over the course of a week I realized how often I didn’t even need code completion.  You’d be surprised how often you just don’t even think about it and type it out.  I mean I know if I’m going to be typing mysql_fetch_array, I just type mysql and hit ctrl+space.  I think this is really a horse a piece, and shouldn’t put my own preference into play.  Tie NetBeans +1, Zend +1.

Debugging:  Before I started using Zend I was using NuSphere PHP on Windows, which is very good, but pricey.  Anyways, NuSphere’s debugging was awesome, Zends - well I never could get it to work at all from Linux.  It never really bugged me too much because I’m so use to not using a debugger to debug, I know that sounds weird but I can do it.

NetBeans got the debugger working under Linux no problem, probably because when I tried to debug it told me where to go to set it up.  Love it, I can debug just like I use to be able to do with the NuSphere IDE.  NetBeans +1.

I could go on for a while but, NeBeans is the winner pretty hands down, it does much more better than Zend.  Sure there’s a couple things here or there, but I had been using Zend for at least 6 months so some of that is a little personal bias.

There’s many neat extra features in NetBeans 6.5 but I’ll leave those to you to discover, just check it out.  You don’t have to download everything, you can just download the PHP part, so if your using Ubuntu Linux (like me) don’t use apt-get (or aptitude) to get it as they may still have and older version in the repository, and it doesn’t come how you want it - just php.

Happy coding.