Super Dev Mode general question

625 views
Skip to first unread message

sanny...@gmail.com

unread,
Jul 9, 2012, 9:24:19 AM7/9/12
to google-we...@googlegroups.com
Hello, 

I recently found this topic about Super Dev Mode appearing in GWT 2.5.
I am happy that new way of debugging is coming to the GWT development process.
But I am not happy that there are plans to discard current DevMode in the future. At least, each official mentioning of SuperDevMode means that it will replace current DevMode.

If this is true, then I am not happy at all.

Debugging in the IDE of choice was always top feature of GWT for me. Ability to freely navigate code, use typesafe autocompletion in evaluate expression boxes, drop stack frame feature and all other hundreds of java-specific little features is great joy. Forcing developers to discard all this and be tied to browser is at least major regress.

I could not find any discussion on this topic, if there's any, PLEASE direct me to the page where it all was discussed and decision was made, i want to see the arguments. I found only "browser plugins are instable" topic. But people, concept is already working satisfactory for several years and I don't want to lose it in future because it is not 100% perfect and crashes sometimes. 

Telling "source code maps are being implemented in browsers at the moment" and at the same time arguing that SuperDevMode will make us browser-independent seems like lame joke. At least, not all browsers will. But even if all major browsers (Chrome, FF, Safari, IE) will, source maps is only part of the picture. The debugging in all browsers has its own interface, keymaps etc, and, as I wrote above it never compares to the IDE/Native java debugging. In other words, it does not compare!

TLDR: questions:
1) Is it true that SuperDevMode will replace DevMode
2) If yes, then for the sake of God, why such regress?

Alex.

Thomas Broyer

unread,
Jul 9, 2012, 10:51:30 AM7/9/12
to google-we...@googlegroups.com
Who knows?
More seriously, you can be assured DevMode will stay for quite some time.
 
2) If yes, then for the sake of God, why such regress?

Browser plugins are a nightmare to maintain.
The plugin for Chrome is known to be buggy and unstable.
Every 6 weeks, the plugin for Firefox has to be updated (we could choose to only support Firefox ESR, but I doubt you'd be happy; I wouldn't be).
I've heard there had been issues with the Safari plugin on OS X at some point, due to a browser upgrade.
The only stable plugin for now is the one for IE, and even that one required some work to make it compatible with IE9 and the newer versions of Windows.
Generally, browser vendors don't help us maintain plugins.

Due to this fact, no new plugin is being developed, so debugging in Opera, or Safari on Windows, won't ever be possible (OK, that's rhetoric anyway, as nobody minds ;-) ).

But now we also have to support mobile development: iOS, Chrome for Android, Firefox Mobile, Windows 8, etc. and those browsers don't even allow us to use plugins!
And that's where SuperDevMode shines with its plugin-free approach: it brings DevMode to any single browser out there, at the expense of using the browser's own dev tools.

So, what the future is?
Honestly, to me, the future is in wire protocols for JS debuggers. Opera has had one for long, Chrome too. Mozilla is building one. I can't tell for IE but at least you can debug a local IE instance so it's better than nothing, and we can have hopes that DevMode as we know it will be supported for quite a long time (compared to other browsers).
With such protocols, your IDE could connect to your browser and use SourceMaps to give you (almost) the same debugging experience as if you were running your code "natively" (technically, I believe it could also be made so; based on an experiment I made a few years back to bring DevMode to Adobe AIR through the Flash debugger). This, to me, is the way forward. It would however require a tremendous amount of work, so it's not going to happen any time soon. http://code.google.com/p/chromedevtools/ could help here I guess, but it's still a very tiny part of what's needed to bring the same level of debugging as with the current DevMode.

10 years after the Internet Bubble, web dev is only starting to make its revolution towards "professionalization" (MVC was seen as a thing of the past until Backbone et al. revived it). GWT is ahead of its time here with leveraging Java dev tools, but web dev is still for the most part the same as 10 years ago. console.log replaced window.alert, but it hasn't really changed.

I believe, DevMode (as we know it) will fade away, either replaced by SuperDevMode or something based on it (better integrated in the IDE), or rewritten atop wire debugging protocols instead of plugins. It will take time though, and in the mean time DevMode won't change, and SuperDevMode helps us support new browsers at virtually no cost.

Dennis Haupt

unread,
Jul 9, 2012, 2:48:16 PM7/9/12
to google-we...@googlegroups.com
i don't know about eclipse, but intellij can remote-debug chrome and
firefox, including the evaluation of expressions.
it probably won't be long before they add support for source maps, too.
i wouldn't worry too much.
> --
> You received this message because you are subscribed to the Google
> Groups "Google Web Toolkit" group.
> To view this discussion on the web visit
> https://groups.google.com/d/msg/google-web-toolkit/-/sFfm9FdF0_cJ.
> To post to this group, send email to google-we...@googlegroups.com.
> To unsubscribe from this group, send email to
> google-web-tool...@googlegroups.com.
> For more options, visit this group at
> http://groups.google.com/group/google-web-toolkit?hl=en.


--



Clint Gilbert

unread,
Jul 9, 2012, 3:54:05 PM7/9/12
to google-we...@googlegroups.com
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I understand that browser plugins are problematic. I wouldn't want to
be responsible for building a new plugin for each week's Firefox
release. (Obviously, I'm joking.)

But debuggers in current Java IDEs are very robust and full-featured.
Every Javascript debugger in every browser that I've ever tried has
been inadequate in comparison.

Hopefully regular dev mode will live on for long enough for JS
debuggers to improve significantly, though I fear that will take a
long time.

Count me among those who will miss the useful features of the existing
dev mode when it goes away.
> -- You received this message because you are subscribed to the
> Google Groups "Google Web Toolkit" group. To view this discussion
> on the web visit
> https://groups.google.com/d/msg/google-web-toolkit/-/sFfm9FdF0_cJ.
> To post to this group, send email to
> google-we...@googlegroups.com. To unsubscribe from this
> group, send email to
> google-web-tool...@googlegroups.com. For more options,
> visit this group at
> http://groups.google.com/group/google-web-toolkit?hl=en.


-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk/7NtwACgkQ5IyIbnMUeTuSCACgolOD1RhUhJOoTfIvi6RQNBEo
kwQAn0+l73mQzJnMF8yw7eR9aoc+Fa/q
=QK5h
-----END PGP SIGNATURE-----

Daniel Kurka

unread,
Jul 9, 2012, 3:57:07 PM7/9/12
to google-we...@googlegroups.com
Ray mentioned on IO that they were talking somehow already (I am not 100% sure about the state), but there was something about direct support for that in intellij

Chris Lercher

unread,
Sep 21, 2012, 12:40:35 PM9/21/12
to google-we...@googlegroups.com
I want to add to that list, that running Dev Mode with a debugger can be used to fine-tune user interfaces extremely quickly: What I usually do is to put the unit which I need to optimize in a panel, and add a button that refreshes the panel with a new instance of the unit. This doesn't even take a tenth of a second, and it's possible to optimize and fine-tune in quick repetition.

Plain JavaScript developer often insist on the importance of seeing the effect of changes absolutely immediately. And I agree with that: If you want to make a UI perfect to the detail, you often end up doing hundreds of iterations. The quicker the iterations, the more willing you are to improve even the last tiny detail.

In addition to that, I agree with Alex, that having the debugger features of your IDE (the same IDE you use for developing the application) is indispensable.

- For me, it's absolutely ok if Dev Mode doesn't always support the latest version of each browser (as long as the browser allows to have multiple versions installed at the same time). Even dropping support for most browsers would be acceptable.
- It's awesome to have Super Dev Mode in addition to "standard" Dev Mode - I already love it although I haven't used it very much yet. But it should not replace "standard" dev mode.

Saeed Zarinfam

unread,
Dec 19, 2012, 3:35:02 PM12/19/12
to google-we...@googlegroups.com
Debugging GWT applications in IDE is one of the most important feature of GWT from the earliest version of it.
I agree with Chris that it is ok if Dev Mode doesn't always support the latest version of each browser or even dropping support for most browsers (for example only support Firefox or Chrome). But i believe that replacing super dev mode with dev mode reduce productivity.
Reply all
Reply to author
Forward
0 new messages