So I got my first job recently as junior web-developer.
My company creates small/medium sites for wide variety of customers: autobusiness companies, weddign agencies, some sauna websites, etcetc, hope you get my point. They don't do big serious stuff like bank systems or really big systems, it's mostly small/medium-sized websites for startups/medium sized business. My main skills are PHP/MySQL, I also know HTML and a bit of CSS/JS/AJAX. I know that good web-developer must know some backend language (like PHP/Ruby/Python) AND HTML+CSS+JS+AJAX+JQuery combo.
However, I was always wondering. In my company we have web-designer. In other serious organisations I often see the same stuff: web-developers who create business-logic and web-designers, who create design. As far as I know, after designers paint design of website they give it to developers either in PSD or sliced way, and developers put it together with logic, but design is NOT created by developers. Such separation seems very good for full-time job, but I am concerned with question how do freelance web-developers do websites? Do most of them just pay freelance designers to create design for them? Or do some people do both?
Reason why I ask - I plan to start some freelancing in my free time after I get good at web-development. But I don't want to create websites with great business-logic but poor design. Neither I want to let someone else create a design for me. I like web-development very much and I am doing quite good, I like design aswell, even though I am a bit lost how to study it and get better at it. But I am scared that going in both directions won't let me become expert, it seems like two totally different jobs and getting really good in both seems very hard. But I really want to do both. What should I do? Thank you!
So I got my first job recently as junior web-developer.
closed as off topic by thorsten müller, Robert Harvey♦, GlenH7♦, Walter, Tim Post♦ Nov 30 '12 at 13:44
Questions on Software Engineering Stack Exchange are expected to relate to software engineering within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here. If this question can be reworded to fit the rules in the help center, please edit the question.
I started back in the late 90s and have done a bunch of "Lone Gunman" projects right up to last year. When it came to design, I just did the best I could. As time went by I got better and better at it. I've had many compliments regarding the sites I've built from scratch, design and development. It didn't come easy, but eventually you get a sense of what is needed for a particular project. Also, expect to be crushed from time to time. :(
Either you have a "design bone" or you don't. You'll soon find out which.
If you have some skill, it's easy to get inspiration from other great looking sites. Look at the way they use (but not overuse) color. Try to stay within your abilities. Learn how to use fonts, and which fonts work together and which don't.
Overall, consistency is king. Horrible sites are usually horrible because they are a mish-mash of too many conflicting ideas.
However, if you try and fail... then it's time to hire a good designer.
Quick answer: yes, you learn to do both.
I'm one that 'started' way back when doing good ol' C programming, with a little bit of self-taught HTML (hey, it was the 90s), then started with 'back end' programming. Eventually, I gained enough experience along the way where now seeing people doing text on images, loads of text on pages, poor quality images, etc., etc. drive me crazy. I've gotten a few compliments myself on some basic designs, though I'm still obviously not a professional at web design. A couple of pointers:
No matter what, do your own website - even if it is just customizing Wordpress templates. Tinkering with a personal site is a great bit of experience. Make it your own little playground.
Expect your first 'designs' (or even the designs you continue to create) to suck. A lot. The thing about being around the web is that you've been exposed to a lot of really neat sites that makes the ones that you create look horrible. This is good - it's a sign that you might actually have taste. Eventually you'll learn the tech and tips and tricks to make your product start to look pretty decent to you.
Ira Glass (the NPR guy) had a great take on this problem:
“Nobody tells this to people who are beginners, I wish someone told me. All of us who do creative work, we get into it because we have good taste. But there is this gap. For the first couple years you make stuff, it’s just not that good. It’s trying to be good, it has potential, but it’s not. But your taste, the thing that got you into the game, is still killer. And your taste is why your work disappoints you. A lot of people never get past this phase, they quit. Most people I know who do interesting, creative work went through years of this. We know our work doesn’t have this special thing that we want it to have. We all go through this. And if you are just starting out or you are still in this phase, you gotta know its normal and the most important thing you can do is do a lot of work. Put yourself on a deadline so that every week you will finish one story. It is only by going through a volume of work that you will close that gap, and your work will be as good as your ambitions. And I took longer to figure out how to do this than anyone I’ve ever met. It’s gonna take awhile. It’s normal to take awhile. You’ve just gotta fight your way through.”
The same actually applies for programming in some aspects - sometimes it's just not very good, the hardest part is to keep opening the editor day after day - just keep at it in the hopes that your talent (and experience) will eventually match your taste.
You have to determine if you are good at web design. If you are not, and it sounds like you may not be, then you will need to hire a separate designer for your freelance work.
You will want to keep this in mind when bidding.
Additionally, design can be learned, to a certain extent, and you should see what you can learn from the designers you hire or designers at work. You don't have to create things in Photoshop either, you can make them straight in HTML if that works for you.
I've been practicing design and learning how to use digital design tools myself in my spare time. I haven't been doing it with the idea that my design skills will match my development skills (at least not in the short term), but just so that I can grow as a person. I wouldn't recommend taking on a design task yourself, either bring a full-time designer along to supplement your skills or look at some of the alternatives.
There are templates available for purchase from various websites.
You can also go to freelance sites and hire a subcontrator.
There are a lot of small "rent a suite" office buildings targetted toward freelancers. I was able to find a web designer to work with when I rented an office. (Even better we were able to work on projects together that neither of us could have handled individually).
Finally, there are sites like 99Designs that let you create a design project, set a price, wait for the results to come in and choose the best one (or let your client do the choosing).
I would argue that this approach should be used with many of the decisions regarding a small business. Yes you COULD manage your accounting yourself, or you can pay an accountant to do it for you. Remember the time you spend doing things that aren't part of your core skills end up costing more than the savings of paying someone else to do them.