What are the right materials for a desktop developer to become web developer? - language-agnostic

I'm a .NET guy desktop developer, and I love that. I don't really love web development because we lost precious time to debug CSS, javascript, and compatibility stuff instead of creating value.
But I think it's because I had not taken time to learn about good web development practices, so now because I want to become the best developer that I can, I'd like to learn about my weakness.
Can you give me some advices/links/patterns/frameworks to become a good web developer ? (I am a .NET guy so I accept everything that will permit me to develop better websites in .NET).
Thanks !
Precision
I have done a lot of ASP.NET webform in the past, but this is not enough to create great web site without loosing time on compatibility/css/javascript issue.

You could take a shortcut and use ASP.NET, which provides a number of controls to make web development easier - and you'll be familiar using them.
Unfortunately, they aren't really that great (imo) and do not teach you good practices with the web.
I suggest you look into ASP MVC, which is now in beta. This will teach you how to write websites whilst allowing you to use libraries you are familiar with .NET
With general web development, look into websites like W3schools which will teach you the basics.
Remember to seperate presentation from markup with CSS and make sure you are using javascript to add value to a page, but make sure your page is still usable without it.
You will always lose time with CSS compatability issues, all I can say is with practice you learn what pitfalls to avoid so it gets a little easier.
As for javascript development, it has improved considerably in the past few years with frameworks which in theory are cross-browser. Maybe try looking into JQuery which syncs well with ASP MVC and has intellisense in visual studio

Advices:
Best advice I can give to you: Just don`t get angry when you done something correct but it wont show as you wanted. Patience! :)
Links:
www.w3schools.com
Nettuts.com
Webappers.com
Digital Point - webmasters forum
Patterns:
My advice is to get more into MVC pattern and any enterprise pattern.
Frameworks:
Just see this link :) Framework Guide
For Javascript: JQuery,Prototype,Mootools,EXTJs
For CSS: 960 grid system is pretty good

Make sure you learn about the client/browser side as well.
Current best practice with all the different browsers around is to use a javascript library to make your web-application cross platform and cross-browser. An AJAX library like jQuery or Prototype to perform the interactive actions you wouldn't be able to do with standard HTML and CSS in the pre-AJAX era.

Related

Should I use Joomla or go purely HTML

I am currently building a project ecommerce website (for an assigmnet), and would like some tips from the experts around. Should I go for a frontend based on purely HTML,CSS and JS (say with a jquery framework) or should I include a CMS such as Joomla in order to be able to manage better the content ? I am not a very experienced web developer so there is quite a learning curve I have to go through in this.
Thanks
I suggest you use HTML, CSS, JS. They are the three major languages that make up most of the web. It allows a lot of flexibility.
I don't know if you have a domain name or plan to have one but…
There are many web hosting provider that propose built-in solution for e-commerce.
You talk about Joomla but there is also many other CMS that allow you do create e-commerce pages. A Wordpress module can do it with, for example, which I personally think as easier to use.
By the way, if you got enough time and motivation, I recommend you to search for documentation and to experiment the most you can on a custom-coded frontend.
I don't know what is your level in the HTML/CSS/JS languages, but you'll gain experience and that's always usefull.

Evaluating YUi and BackBone

I want to start a project and I am evaluating the architecture.
And now I am at point to decide the front end components.
I want to use HTML5 + Css3 + Javascript
On Javascript side I don't know what do you recommend. YUI or Backbone. I don't know how to evaluate what can be the best for me. The idea is to create a Browser web app and a Mobile app.
Do you recommend another framework for do that? Or some book, url or something that expose how to organize my front end?
This might be a bit late. But I will say this. I've looked through these so far:
Angular, Knockout, Backbone, YUI
And I read some other comments on Ember.
From what I've seen, Angular and Knockout take the same starting approach. They start out telling you how to interface with the front end. I do NOT like this. They give you a whole lot of rope to hang yourself with if you don't know how to design good architecture. Its completely up to you to build a proper MVC app with them.
From what I've seen of YUI, its EXTREMELY similar to Backbone, which is no surprise because YUI was INSPIRED by Backbone. I have spent a LOT of time looking at backbone and I'm very impressed with it. If you follow its principles and standards, it will encourage you to build a sound framework that won't leave you hanging later.
But I saw another commentor who actually actually moved from Backbone to YUI because he said YUI is more streamlined and all around better. I wouldn't be surprised if this is true. But I need to evaluate it further.
Many folks, including myself, agree that Ember, Knockback, and Angular are rather "heavy handed" in their approach. Like I said, they START with explaining how to interface with the HTML. Right out of the gate, they're wanting you to do things a certain way. This could be very problematic depending on your particular application.. OR it could make your particular application a piece of cake if it fits nicely in their approach!
My two cents!
Backbone is great for creating web apps, both for desktop and mobile. It's strongest point is that it's small and quite simple: you can actually read through the entire annotated source code. Backbone helps you structure your code in a maintainable way, which is the main benefit.
The downside of backbone is that it's not very beginner-friendly: setting up the collections, models and views can be quite challenging if you're not used to it. It also doesn't help you at all in rendering the views, which is a blessing and a curse: it's not as easy or helpful as a widget based framework, but it also doesn't get in your way, which is especially important when implementing the mobile app.
I would recommend you study the backbone todo-example ( http://documentcloud.github.com/backbone/#examples-todos ) to get an idea how the framework works.

RoR and web design (css)

I am starting server side programming with RoR. I am noticing that it's tightly coupled with css/html web design. (Maybe I am just perceiving it that way since this is my first time doing server side stuff).
I just want to know, are server side programmers usually well knowledgeable in css/html layout stuff? I understand the ruby part, but css is giving me a headache. Debugging with different browsers/testing/ a lot of trial and error and still buggy. Finally you get it to work with Firefox and I.E doesn't work anymore...
How do server-side programmers out there usually tackle the "looks"/UI? Do they get someone else to do the css stuff and worry mostly about the functionality?
Thanks.
I answered a similar question here.
Most of the times from something basic, like twitter-bootstrap is now fantastic to get something up and running quickly.
What happens next is up to you: either you have some interest and learn some design skills. Or you get in touch with a designer to do the designing for you. I seriously think you will need to have some HTML/CSS skills yourself, but that is not the same as designing.
It depends on the development shop your working for I suppose. Larger companies tend to have some people focus on the backend, and some on the front end to best suit peoples talents.
I would highly recommend becoming familiar with the front end UI as well for your own benefit though. Most small web development shops are seeking full stack developers that can manage all aspects of the web app from server configuration, backend logic, and UI. You'll be much more well rounded in solving your own challenges, and become a more valuable employee with a diverse skill set.
Since your using RoR I would recommend becoming familiar with SASS and Coffescript since they can save a lot of development time. Also sass provides excellent mixin features to help solve your CSS cross browser issues, which you can find several prepackaged ones in Thoughtbots bourbon gem. https://github.com/thoughtbot/bourbon
The question is impossible to answer.
Many server-side devs are well-versed in HTML, CSS, and JavaScript, at least up to the "Oh that's the IE7 off-by-one bounding rectangle absolute-div positioning bug" point.
However, I think some groups of server-side devs are generally more adept than others: server-side environments like RoR, PHP, and so on tend to push more HTML/CSS onto the devs than, say, Java.
For me, the trick has been to keep the HTML and CSS relatively clean (sass/scss helps a lot), not obsess about pixel-perfect cross-browser appearances, and have layouts that you don't have to mess with much. There are HTML/CSS frameworks that help in this regard.
Conversely, a lot of designers don't know enough JavaScript to be useful--I think it is important for site developers to know enough JavaScript to provide the necessary functionality. Here again, the frameworks tend to breed different levels of JavaScript awareness, although that's changed somewhat as more sites get more interactive.

What CMS/framework/... use to build simple webpage

I need to create a very simple webpage for my friend. But I'm a little bit out of the stream, I don't know what kind of technologies are best right now.
So here is my question - what CMS/framework/etc should I use to build such a webpage:
a webpage of
It will contain some simple informations, news page and few galleries. It is almost all that I need.
I may be forced to create few language versions of this page (probably 2 versions: polish and english).
CMS must be as simple as possible. My friend's internet skills are not so good ;)
It should allow me to create custom, good-looking page
I considered such tools as joomla, drupal or wordpress. Which one you think would be best for me? Or maybe some other?
Wordpress, without a shadow of a doubt. It supports internationalisation almost out of the box and is very easy to use - Drupal and Joomla require a lot more effort on the part of content creators to understand and work with. It's also extremely easy to customise and enjoys probably the best documentation of any of its peers.
You can also give websitebaker a try. It offers very good usability and easy template creation.

Guides for UI designers working in Google Web Toolkit

Can anyone point me to a useful guide for UI designers working in google web toolkit?
As per my comment to bhargava's answer, your designers should be learning UiBinder. The whole chapter about building user interfaces seems appropriate too (to get a better perspective), but UiBinder is what they will be mostly dealing with. Without using UiBinder in your project, you are stuck with Java and that's not something your designers are likely to know (and are probably not keen to :)).
I'd recommend building a simple example (but not too simple - maybe you should "strip" the official mail example) that uses UiBinder and show the designers exactly what you expect them to provide and what should be left as stubs. It all depends on the designers in question - whether all they know is HTML and CSS or maybe they have experience with Java, etc. Tailor the example to your needs - you probably won't "get it right" the first time, but with feedback from the designers (what's hard to understand, what they think should be the responsibility of the programmer, etc.), you should arrive at a good learning tool for future employees and a reference for current ones :)
Well if you're looking on how to use widgets and panels in gwt then i would recommend Roughian Examples
This website provides us the basic usage of the GWT widgets and panels and provides us with enough information just to get things started.