• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

front end programming more frustrating than java back end programming?

 
Ranch Hand
Posts: 239
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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.
 
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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.
 
Hendra Kurniawan
Ranch Hand
Posts: 239
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

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
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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
Posts: 239
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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
Sheriff
Posts: 67746
173
Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

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
    Posts: 239
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator
    okay, I'll check on your new books. thanks
     
    Ranch Hand
    Posts: 859
    IBM DB2 Chrome Java
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator
    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
    Sheriff
    Posts: 67746
    173
    Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
    • Likes 1
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator

    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
    Posts: 239
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator
    Mr Bear, when will your book be available in Singapore? thanks
     
    Bear Bibeault
    Sheriff
    Posts: 67746
    173
    Mac Mac OS X IntelliJ IDE jQuery TypeScript Java iOS
    • Mark post as helpful
    • send pies
      Number of slices to send:
      Optional 'thank-you' note:
    • Quote
    • Report post to moderator
    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.
     
    reply
      Bookmark Topic Watch Topic
    • New Topic