Lured by the promise land of a code base free of any problem I have decided to give a try to FindBugs on my freshly updated I-build.
Unfortunately FindBugs did not leave to the expectation since it failed with an NPE, which you would admit is rather ironic for such a tool...
Anyway, last time it worked for me (a few months back) my experience was in the end not really more useful than today's one since the tool returned a plethora of false positive hiding the real bugs it may have found. After talking to colleagues, we all came to the same conclusion, it could be useful if it had more reasonable defaults. Oh well...
Wednesday, February 25, 2009
Thursday, February 19, 2009
Thoughts on Bespin and Eclipse
I'm really stunned by the quite opposite reactions that the Mozilla and the Eclipse communities are having about Bespin.
On the one hand it is like Bespin is the best thing since sliced bread, ("hey look now I have a cool editor in my web browser") on the other a quite mixed reaction is coming ("why the heck would I want to ever do this", "where is my code completion, type hierarchy", etc.)
Honestly I'm not really surprised by this reaction from the eclipse community especially when you have been around long enough to remember the early days of CDT and the complaints it was receiving because it was not up to the task in comparison to JDT... or more recently on other fronts when you see bugs titled like "XYZ sucks", and the difference in participation on a new effort. Feels like our community is spoiled.
So where do I stand on Bespin? Well somewhere in the middle. I'm not impressed by the overall Bespin concept because it only solves one little part of the problem of creating an IDE: the snappy text editor and the collaboration. I like it, I like the fact that it is done with HTML5 canvas, the way the extensibility is working to invoke commands, etc. However when it comes down to running a full fledged IDE, I'm skeptical. Not about the abilities of the browser or canvas to scale (remember that a few years back Java was declared dead for rich client apps?), but simply because I know what it takes to have all the features that make you so productive in Eclipse. Most of them can't just work of one or two source files at least to give you assistance to the degree you are used to. We can probably get the information back from the server, but would it get back fast enough; we could have less precise operations, but are we ready to go with this?
All that said, I believe that there is a place where a Bespin based IDE (or the like) can be useful as a lightweight tool to do a quick task... (peer programming like scenarios, just need to fix a typo in the file, provide translation, etc.). But I don't think we are quite there yet, and there is a lot of cool problems to solve. For example the model as to where the resources being edited are coming from is unclear. One possibility is to assume that everything I need is already available on a remote server "on the cloud" (or my buddy's machine) then I can just edit this. Now, if my principal model is to work in a regular IDE and try to use my web IDE to just perform some mundane tasks, then the overhead of locating and opening the file would rather be low (Unless of course I can directly edit the code straight out of the code repository and put it back there on save (see lower)).
So what would I want to see / do / explore?
Caveat, this is just the fruit of my imagination as I have not been involved in the Mozilla/Eclipse meeting.
On the one hand it is like Bespin is the best thing since sliced bread, ("hey look now I have a cool editor in my web browser") on the other a quite mixed reaction is coming ("why the heck would I want to ever do this", "where is my code completion, type hierarchy", etc.)
Honestly I'm not really surprised by this reaction from the eclipse community especially when you have been around long enough to remember the early days of CDT and the complaints it was receiving because it was not up to the task in comparison to JDT... or more recently on other fronts when you see bugs titled like "XYZ sucks", and the difference in participation on a new effort. Feels like our community is spoiled.
So where do I stand on Bespin? Well somewhere in the middle. I'm not impressed by the overall Bespin concept because it only solves one little part of the problem of creating an IDE: the snappy text editor and the collaboration. I like it, I like the fact that it is done with HTML5 canvas, the way the extensibility is working to invoke commands, etc. However when it comes down to running a full fledged IDE, I'm skeptical. Not about the abilities of the browser or canvas to scale (remember that a few years back Java was declared dead for rich client apps?), but simply because I know what it takes to have all the features that make you so productive in Eclipse. Most of them can't just work of one or two source files at least to give you assistance to the degree you are used to. We can probably get the information back from the server, but would it get back fast enough; we could have less precise operations, but are we ready to go with this?
All that said, I believe that there is a place where a Bespin based IDE (or the like) can be useful as a lightweight tool to do a quick task... (peer programming like scenarios, just need to fix a typo in the file, provide translation, etc.). But I don't think we are quite there yet, and there is a lot of cool problems to solve. For example the model as to where the resources being edited are coming from is unclear. One possibility is to assume that everything I need is already available on a remote server "on the cloud" (or my buddy's machine) then I can just edit this. Now, if my principal model is to work in a regular IDE and try to use my web IDE to just perform some mundane tasks, then the overhead of locating and opening the file would rather be low (Unless of course I can directly edit the code straight out of the code repository and put it back there on save (see lower)).
So what would I want to see / do / explore?
- Explore with running a more complete headless Eclipse in the cloud.
- Following this, is offering an "upgrade" path from the browser to the local experience.
- Making the workspace cloud friendly.
- Explore DVCS as the underlying storage of a workspace.
- Could Bespin provide the web browser implementation of the eclipse app model (aka 20 things).
- Explore single sourcing (generative technique, model based, ...) of commands to make it easy to target both the we-based and client-based IDEs
- Finally and unrelated to all that is to see if we can have an SWT for HTML5 canvas.
Caveat, this is just the fruit of my imagination as I have not been involved in the Mozilla/Eclipse meeting.
Subscribe to:
Posts (Atom)