This week's giveaway is in the Android forum.
We're giving away four copies of Android Security Essentials Live Lessons and have Godfrey Nolan on-line!
See this thread for details.
The moose likes HTML, CSS and JavaScript and the fly likes front end programming more frustrating than java back end programming? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Android Security Essentials Live Lessons this week in the Android forum!
JavaRanch » Java Forums » Engineering » HTML, CSS and JavaScript
Bookmark "front end programming more frustrating than java back end programming?" Watch "front end programming more frustrating than java back end programming?" New topic
Author

front end programming more frustrating than java back end programming?

Hendra Kurniawan
Ranch Hand

Joined: Jan 31, 2011
Posts: 239
My first programming job was desktop apps using VB6. Ahh, how I miss those good old days where I only need to worry with the back-end code. The visual UI components are just dragged and dropped. Now, after several years doing java web apps, I find hand coding the web pages (using the html, css and javascript) is waaaay more time consuming than writing the server-side code (java based of course). Do all of you java web apps developers experience the same thing? or am I missing something here? thanks.
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 60782
    
  65

I find the front end coding a lot more fun and much more interesting than the backend. Everyone's experiences will differ according to their own tastes, experience, knowledge and aptitudes.


[Asking smart questions] [Bear's FrontMan] [About Bear] [Books by Bear]
Hendra Kurniawan
Ranch Hand

Joined: Jan 31, 2011
Posts: 239
do you spend more time in front end coding compared to back end coding? we're talking basic web page form design for business application, not promotional web app with the flashy animations, visual effect or sound effect. How do you code the page? normal html, css and javascript I assume? no hidden techniques or something like that? first, I haven't been able to find IDE to help writing javascript, you know, the one with autocomplete and indenting. eclipse works just fine with java codes, but not with html, css and javascript. And then there's the problem of placing the UI components, the textboxes, labels, grids (oh my god, this is the messiest). Datagrid is not available in native html. So I need third party grids. seeing them overlapping with other UI components (tweaking CSS), and then embedding dropdown or datepicker or a button inside them will add a whole extra of headache. Is that the way things are? there's just no way around it? I find the javascript code for a single webpage to edit/input order with only 12 fields and a datagrid with 10 columns is longer than the entire java code for order and item class along with their DML code put together.
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 60782
    
  65

Hendra Kurniawan wrote:do you spend more time in front end coding compared to back end coding? we're talking basic web page form design for business application,

Probably about 50/50 depending upon the nature of the app.

How do you code the page? normal html, css and javascript I assume?

Yes, and using jQuery for the JavaScript. Life is too short to write JavaScript without jQuery.

I haven't been able to find IDE to help writing javascript, you know, the one with autocomplete and indenting

I use IntelliJ which works with JavaScript just fine. I;m not sure if the free version has JavaScript support or not.

And then there's the problem of placing the UI components, the textboxes, labels, grids (oh my god, this is the messiest).

It's all pretty straightforward once you grok CSS. It's very different from what you may be used to with Java Swing. But it's just another technology to learn.

Datagrid is not available in native html.

So? Depending upon what you mean by data grid, there are libraries to for this, or you can build your own.

I find the javascript code for a single webpage to edit/input order with only 12 fields and a datagrid with 10 columns is longer than the entire java code for order and item class along with their DML code put together.

You're probably not writing very efficient JavaScript. I don't say that to be mean, but most people coming to JavaScript from Java try to write it like Java and that's not going to create very good code. JavaScript is a very different language than Java (despite the unfortunate naming choice) and if you try to make JavaScript into Java, the code will be bloated and inefficient.

Two things make JavaScript compact and easy: understanding JavaScript as a functional language, and using jQuery to manage the browser madness.
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 60782
    
  65

By the way, any new technology is frustrating when you first start learning it. I'm sure your Java skills didn't just magically appear overnight. As with any other technology, it will take a lot of coding and practice to get a good handle on the client-side technologies. You've taken an important first step already by realizing that the techs are very different from what you are used to.
Hendra Kurniawan
Ranch Hand

Joined: Jan 31, 2011
Posts: 239
yes, never realized about paragraphing before, sorry.
I also use jQuery. Pure javascript is just too much. do you happen to know any link or books that's useful especially for people already accustomed to java style coding who want to write efficient javascript code (using jQuery)?
as for datagrids, what's your choice? or do you create your own datagrid?
thanks
Bear Bibeault
Author and ninkuma
Marshal

Joined: Jan 10, 2002
Posts: 60782
    
  65

Hendra Kurniawan wrote:yes, never realized about paragraphing before, sorry.

No problem. Making your posts easier to read will help you get more and better answers.

I also use jQuery. Pure javascript is just too much.

In truth, it's not JavaScript that jQuery helps, but dealing with the browser APIs such as the DOM and the event models. jQuery leverages "pure JavaScript" to make it much easier to deal with those APIs and with their differences and bugs across browsers.

do you happen to know any link or books that's useful especially for people already accustomed to java style coding who want to write efficient javascript code (using jQuery)?

Well, of course I'm gonna recommend my own books!
  • jQuery in Action, 2nd Ed for jQuery
  • Secrets of the JavaScript Ninja for JavaScript (in early access -- will be published next month)

  • The chapters of section 2 of the latter book are specifically designed to teach JavaScript concepts that differ from those in Java.

    as for datagrids, what's your choice? or do you create your own datagrid?

    Yes. I don't necessarily recommend that for everyone -- but for me, it's easier to create my own that do exactly what I want rather than use a "one size fits all" package.

    It all depends upon your skill level and needs. If a 3rd-party tool does you want, no sense re-inventing the wheel. But when it doesn't do what you need, it's nice to have the skills to make your own.

    I use lots of 3rd-party tools, so really, it all depends.
    Hendra Kurniawan
    Ranch Hand

    Joined: Jan 31, 2011
    Posts: 239
    okay, I'll check on your new books. thanks
    William P O'Sullivan
    Ranch Hand

    Joined: Mar 28, 2012
    Posts: 860

    As an Enterprise Architect/Developer, I've always found in my experience that the front-end is the most time consuming.

    In my eCommerce life (A very popular online parts store), it was no problem implementing back-end databases, solr, clustering etc.

    When it came to the front-end because we are a public site, cross-browser compatibility always caused problems.
    What may look great on Firefox windows could (and did) totally suck on Safari Mac (9% of our visitors).
    Since every potential sale was treated like gold, we had to spend inane amounts of time making sure every pixel aligned correctly.

    Give me the back-end anytime (no pun intended) as there are great tools and frameworks available and I know exactly what's
    in use. When it comes to the front-end (I don't mind a bit of that either), we have no control over the client to a certain degree.


    WP
    Bear Bibeault
    Author and ninkuma
    Marshal

    Joined: Jan 10, 2002
    Posts: 60782
        
      65

    William P O'Sullivan wrote:When it came to the front-end because we are a public site, cross-browser compatibility always caused problems.
    What may look great on Firefox windows could (and did) totally suck on Safari Mac (9% of our visitors).

    That's exactly the problem that jQuery addresses.

    Since every potential sale was treated like gold, we had to spend inane amounts of time making sure every pixel aligned correctly.

    The biggest issue with cross-browser compatibility is Internet Explorer. Not only does Microsoft like to "go their own way" (a song in that) there are multiple versions of IE in the wild ranging from IE6 (and sometimes earlier) through the IE 10 beta. And with the manner that they apply patches, even people with supposedly the same version of IE can see wildly different behaviors.

    Although IE9 solves a lot of the cross-browser angst that plagued earlier versions, we cannot count on everyone upgrading. The other major browsers practically force users to upgrade to the most recent versions, or at least make it very easy to do so, so we can usually count on people who use Safari, or Chrome, or Firefox to be using a fairly up-to-date version. Not so with IE.

    In fact, I will be spending a good part of my weekend getting a site that works perfectly on IE9 to work on legacy IE. The problem isn't with the JavaScript (jQuery takes care of all that), but with the CSS. Microsoft didn't get serious about CSS until IE9.

    Microsoft has made noise about instituting auto-upgrades for IE, but nothing has happened yet. And that doesn't help those who have chosen to stick with XP, which can only run up to IE8.

    At least they are making a big effort to get people off IE6!

    Give me the back-end anytime (no pun intended) as there are great tools and frameworks available and I know exactly what's in use.

    I'd advise that there are equally great tools and frameworks for the client; you just need to learn about them.

    When it comes to the front-end (I don't mind a bit of that either), we have no control over the client to a certain degree.

    While it is true that there are numerous environments that need to be taken into account, it's a known issue with various solutions. Griping about it won't change the situation; as developers we just need to develop the skills to deal with it.

    There are different, but equally vexing, problems to be solved on the backend. It's why we have jobs.

    Or just stick to the backend, and hire competent front-end developers to take care of that aspect.
    Hendra Kurniawan
    Ranch Hand

    Joined: Jan 31, 2011
    Posts: 239
    Mr Bear, when will your book be available in Singapore? thanks
    Bear Bibeault
    Author and ninkuma
    Marshal

    Joined: Jan 10, 2002
    Posts: 60782
        
      65

    The MEAP (Manning Early Access Program) is available now at Secrets of the JavaScript Ninja. This will give you a preliminary ebook now, as well as a print copy and finalized ebook when it is published. The book is in proofing now, and we'll be having a book promotion for it here at CodeRanch later in the year (week of December 18th). You'll have to check with Manning to make sure that they ship to Singapore for the print copy.
     
    I agree. Here's the link: http://aspose.com/file-tools
     
    subject: front end programming more frustrating than java back end programming?
     
    Similar Threads
    For Mr. Cohen: Testing Java vs. testing .NET
    SWT on any other IDE?
    GUI : how popular is Swing for desktop apps ?
    Java to Java or Web Service
    How Much Is Java Really Being Used On The Web?