Hay muchas respuestas realmente buenas aquí. Si sigue las respuestas del Sr. Soileau y el Sr. Drake, le ofrecen información sólida que lo hará escribir código limpio y efectivo, si se toma el tiempo y lo sigue.
Como tantas personas han discutido la parte técnica del desarrollo web, compartiré algunas cosas que desearía haber sabido antes de comenzar como desarrollador web autodidacta. Me arrepiento un poco …
( Nota: supongo que planea hacer un trabajo independiente, por lo que es posible que todo esto no se aplique a usted si no va a trabajar para usted. Sin embargo, algo de esto se aplica a cualquier persona que trabaje en el ámbito creativo. )
TL; DR: Tendrá que tener un conocimiento práctico de muchos tipos diferentes de disciplinas, además de la programación web real.
Cuando tomé la decisión de utilizar mi experiencia previa en programación en el juego de desarrollo web, pensé que había cubierto la mayoría de mis apuestas al:
- Aprender HTML y CSS de una fuente confiable
- Obteniendo un buen conocimiento práctico de JavaScript
- Aprender un par de lenguajes de programación orientados a la web.
- Tomar un curso en Google AdWords
- Aprender White Hat SEO y familiarizarse con el cumplimiento del W3C
Sin embargo, aquí hay algunas cosas que descubrí y que pueden aplicarse a usted:
A) Tendrás que sacar tus viejos libros de gramática (o PDF):
Sería bueno que todos los clientes le dieran una copia que ya fue editada, corregida y presentada en forma .txt. Eso puede suceder, pero será un hecho bastante raro que, cuando lo haga, sabrás que estás tratando con un unicornio. Asegúrate de tomarles una foto.
En su mayor parte, usted será el que limpiará su copia y, a pesar del hecho de que puede no estar en su “descripción del trabajo”, lo hará porque sabe que todo lo que se cargue en ese servidor reflexiona sobre ti, hasta cierto punto.
Esta parte del trabajo realmente comenzó a aturdirme. Eventualmente, estipularía a los clientes que eran responsables de su propio texto y simplemente procesaría lo que me dieron. Sin embargo, no pude poner un montón de palabras mal escritas y texto mal puntuado en línea porque cuando intentaba obtener nuevos clientes, se daban cuenta de que el sitio web ( lo que necesita para obtener su SIGUIENTE cliente ) no es profesional y no es presentable para el público. El texto se convierte en su problema e incluso puede que tenga que lidiar con el cliente para que comprenda por qué necesitaba editarlo.
(Nota: tuve un cliente que insistió en mantener todos los errores ortográficos porque coincidían con sus folletos y tarjetas de presentación)
B) Aprenderá a amar y comprender el diseño, lo quiera o no:
Espero que tenga un título en arte y / o un conocimiento práctico de un programa de edición de gráficos (me gusta Paint.NET pero la mayoría de la gente prefiere Photoshop) y / o un amigo cercano o conocido que pueda colaborar con usted en el diseño.
Lo vas a necesitar.
Su cliente probablemente tendrá una idea de lo que quiere. A decir verdad, lo que quieren probablemente cambiará varias veces entre el momento en que comience el proyecto y se cargue (llegaré a este punto en el punto E de la lista)
Dependerá de su sentido del diseño frente a la usabilidad determinar si será la mejor opción. Debe tener, al menos, una comprensión rudimentaria de UX para crear el mejor diseño posible para su cliente. También necesitará estar al día con el estilo del momento. En este momento, el diseño plano parece ser el aspecto del día (¡creo que es increíble!)
También necesitará saber lo suficiente sobre ventas y psicología básica para convencer a su cliente de que acepte su evaluación de sus mejores opciones, confíe en su criterio y le permita hacer su trabajo con un mínimo de intromisión (lo discutiremos en E)
C) Es mejor que te sientas realmente cómodo siendo emprendedor porque estás a punto de practicar un poco:
Si está tratando de ganarse la vida con esto, en algún momento tendrá que lidiar con los impuestos. Sus clientes probablemente le pagarán con instrumentos de pago rastreables, por lo que querrá familiarizarse con sus requisitos fiscales y de estructura comercial básica. Tendrá que configurar cuentas y abordar diferentes tipos de papeleo. Necesitará un sistema para realizar un seguimiento de sus horas facturables (si tiene ese tipo de cliente), así como una forma de cobrar su dinero (podría ser un desafío) y qué hacer con él cuando lo reciba. .
Querrá firmar algún tipo de acuerdo contractual con su cliente. REALMENTE desea hacer esto porque algunos clientes no respetarán ningún tipo de límites, si no tiene un acuerdo formal para guiarlos . Te recomiendo que tomes el libro Cómo ser un Freelance de Rockstar, te ayudará a configurar lo básico para este tipo de cosas.
D) Te costará cuánto cobrar a un cliente. Algunos olerán sangre …
Esto te dará ataques cuando comiences. Al menos, tuve un problema con eso. Nunca estuve realmente seguro de cuánto podría cobrar y, al principio, me rebajaría para ganar un cliente y terminar trabajando por salarios de pobreza, cuando lo desglosas en las horas facturables.
Terminé haciendo un trabajo que me llevó un mes y más de 160 horas para completar por $ 400. Descubrí que la persona que hizo el sitio previamente había cobrado e hizo algo cerca de $ 5000 y todas sus páginas equivalían a ser JPEG centrados crudamente sin texto de búsqueda en absoluto.
Aprendí rápidamente que no ayudaba a nadie, ni a mí ni al cliente, al citar un precio que me dificultaba seguir motivado durante un proyecto, especialmente cuando comencé a encontrarme con los problemas inevitables que tendrá cuando esté haciendo una creatividad. trabajo para alguien más.
Sus primeros clientes probablemente se aprovecharán de su inexperiencia y le pagarán una miseria. Puede que ni siquiera signifiquen ningún daño y simplemente no tienen idea de cuánto trabajo le están pidiendo que haga. En algún momento, probablemente te harás la pregunta mágica: ¿Vale la pena?
E) Tienes que estar mentalmente preparado para cualquier cosa
Como dije anteriormente, necesitará ser un vendedor y un psicólogo para tratar con algunos de sus clientes.
Puede tener suerte y obtener un cliente que es:
- experto en tecnología
- tiene una idea clara de lo que quieren y tiene la capacidad de articularlo
- le entregará los materiales que necesita para completar el trabajo en forma limpia y lista para la presentación (imágenes, copia, información de contacto, contraseñas, etc.)
- te respetará como profesional independiente
- te PAGARÁ como un profesional
- no cambiará constantemente de opinión sobre lo que quieren y
- mantente fuera de tu camino hasta que termines el trabajo
Este cliente también es un unicornio. Debe fotografiar y publicar su imagen lo antes posible porque muchas personas no creen que existan.
Muchos de sus clientes lo llevarán al límite con sus demandas, intentarán convencerlo de que trabaje por salarios esclavos (o de forma gratuita porque su proyecto “está garantizado para ganar dinero en el futuro”), lo amenazará con demandas judiciales, y tantos otros escenarios que arruinarán tus días y noches durante las próximas semanas.
También puede ser necesario guiar a su cliente a través del proceso de lo que está haciendo, especialmente si no son expertos en tecnología.
El peor de estos es el cliente que es lo suficientemente experto en tecnología como para ser una molestia. Tenía un cliente que estaba familiarizado con lo que podría considerarse conocimiento avanzado de SEO de 1998. Hubiera estado bien si ese fuera el año, pero era 2008 y lo que ella tenía para ofrecer no haría nada para ayudarla a buscar en el ranking.
Además, solo estaba familiarizada con los viejos estándares de codificación, por lo que no tenía idea de qué era un “div”. Fue una batalla lograr que entendiera por qué necesitaba reemplazar sus mesas y, finalmente, tuve que dejarla ir. Lo que me lleva al siguiente y último punto …
F) NO EFECTIVO EL CHEQUE … ¡AÚN!
En algún momento, se encontrará con un cliente que encontrará que no puede tener una relación de trabajo. No importa lo que haga, simplemente no podrá hacerlo funcionar. Este es un cliente que necesita despedir y debe poder devolverles su depósito.
(Nota: ¡asegúrese de incluir eso en el contrato también!)
Mi primer cliente me dijo, en nuestra primera reunión, que había pasado por 10 desarrolladores web en el plazo de un año.
Eso debería haber levantado una bandera roja para mí de inmediato.
Sin embargo, le presté poca atención porque:
Ella era una emprendedora exitosa y hecha a sí misma (un cliente que PUEDE pagar)
Ella estaba ofreciendo, lo que pensé en ese momento, un buen dinero para el trabajo que quería completar (¡un cliente que ESTÁ DISPUESTO a pagar!)
Estaba claro que ella conocía el arte de construir y mantener una pequeña empresa exitosa (¡una mentora además de todo lo demás!)
Dentro de una semana, comenzaría a lamentar haber entablado una relación cliente-contratista con ella. Para cuando realmente comencé a sentir la necesidad de hacer lo que todos los demás habían hecho (¡CORRE LEJOS Y RÁPIDOS!), Ya había cobrado su cheque y no tenía los fondos disponibles para devolver su depósito.
Durante mi tiempo con ella, terminé:
- escribir un CMS completo desde cero (lo odiaba)
- rehizo todo el sitio 4 veces (a ella le encantaría un día, al siguiente juraría que estaba arruinando su negocio y todo tuvo que cambiar de inmediato)
- Tuve una discusión con ella después de que publiqué un texto revisado que escribió que decía que no escribió a pesar de que lo saqué de su unidad flash (ella era el tipo de persona que nunca se equivocaba en nada)
- más tarde, ella me culpó por arruinar su negocio sin ayuda (todo lo que hice fue lo que me pidió que hiciera, pero olvidó que me pidió que lo hiciera)
De alguna manera, el negocio que arruiné parece estar funcionando bien hoy, 6 años después.
Nunca volví a cometer ese error. No me importa lo difícil que esté por el dinero, o lo buena que cree que será la relación laboral, resista la tentación de gastar el depósito hasta que esté seguro de que usted y su cliente podrán llevarse bien. haga que el proyecto finalice con una nota positiva.
Oh una última cosa …
G) Tuve que aprender por las malas que debes documentar todo, y lo digo en serio
Ya se trate de comentarios en su código o comunicación entre usted y un cliente, debe haber un registro actualizado de todo lo que ha hecho y hecho, listo para acceder en todo momento.
Cuando se trata de código, nos engañamos creyendo que vamos a recordar cada truco que hacemos, pero después de haber escrito mil líneas de código, puede crear un dilema para usted cuando su código tiene errores y no lo hace. saber qué se supone que debe hacer qué a lo que sea.
Cuando se trata de la comunicación con el cliente, solo sepa que las personas tienden a cambiar de opinión muchísimo. Esto es especialmente cuando alguien está trabajando para ellos en algo que tal vez no entiendan totalmente. Debe ser capaz de señalar dónde usted y su cliente llegaron a un acuerdo para evitar atascarse en un conflicto tonto más tarde. Aprendí esto de la manera difícil cuando construí un sitio web para un cliente en el negocio de la confección después de un pequeño depósito, un apretón de manos y una idea (aparentemente) limitada de lo que realmente quería.
Mi mayor error fue continuar agregando características al proyecto cada vez que me llamaba con una solicitud. No le dejé claro que todas las nuevas funciones se agregaban a la factura total. Tenía la impresión de que el depósito lo pagaba todo. Estaba muy molesto cuando le presenté una factura por el resto cuando no esperaba que hubiera un saldo adeudado.
Además de eso, dado que no había registro de él solicitando las nuevas funciones, convenientemente “olvidó” que las había solicitado y me dijo que construí un sitio web que no solicitó y que no podía usar. Esto fue después de que varias personas ya habían comenzado a usar las mismas características que él no solicitó.
Perdí mucho tiempo en eso. También aprendí a mantener mejores registros.
Hoy, ya no diseño para otros. Al igual que Charlie Ryan, trabajo en proyectos independientes que puedo monetizar sin tener que trabajar con clientes uno a uno. No me arrepiento de toda la experiencia y fue un campamento de entrenamiento que me dio la experiencia del mundo real para trabajar en los proyectos que hago hoy.
Solo tenga en cuenta que estas son solo algunas de las cosas con las que tendrá que lidiar, si decide unirse al grupo cada vez mayor de desarrolladores independientes. ¿Estás listo?
¡Sumérgete de lleno!