So... have you ever ended up in a situation where you felt you need to redo things to fix them up properly? I do (and it's not only with that curtain where I sewed the ruffle tape on wrong way).
I started a bunch of months ago to frantically build something I know people will be interested in using, but I didn't have all the skills or tools I needed. Now that I come to think of it, I think I'm a bit like these people who suddenly show up and want to start their sewing career by doing a full-fashioned extravagant wedding dress. Just that my extravagant wedding dress happens to be a website.
So I made things and built them the way they came to my mind - often experimenting wildly since I didn't know how to do things the right way. I ended up with a good deal of possible solutions and little gadgets. Now I'm cleaning up things. I'm undoing the things that I learned how to do better and I'm redoing them in a consistent, simpler, better fashion.
One reason why I ended up where I am is that I listened to people saying "don't reinvent the wheel" - which means to use existing solutions instead of making your own. That's not bad advice, actually - if I had done everything I have working now from scratch, things would probably look much worse because I wouldn't have taken the opportunity to learn from the existing solutions. My problem with this was I couldn't really tell a good wheel from a bad wheel reliably initially. So I ended up using some really great freely available solutions and some not so good ones. Now I'm moving away from the bad ones, one at a time.
With some of these solutions, I used very little of the functionality they offer. And that is a huge problem when you want to make a site that works nicely on mobile devices: Things that are loaded but never used are wasteful. On a fast internet connection, you hardly notice any difference, but on a slow internet connection waiting for things to load quickly gets very annoying. That's why I'm working on reducing the number of libraries - usually by writing my own code that replicates just the functionality that I actually need for the site.
With a few weeks of using CSS (and learning things with the help of some great free tutorials) and redoing the front-end part of the site from scratch, I can't call myself a designer yet. Still, I think that the new design is going to be a great improvement over how things were. At least I now have something that I fully understand since I made it from scratch - previously I was using an existing CSS framework. I feel that knowing something in detail makes it much much easier to change and adapt.
I know that this is a healthy process. There's a part of me that wants to see quick results, but I think ripping and redoing things is more helpful in the long run.
What do you think: Is it more important to ask questions and do as your elders say or to experiment and discover your own way of doing things?