¿Cómo puedo decidir si debo rodar mi propio software o usar un CMS empaquetado (y los complementos apropiados)?


11

Soy un ingeniero de software con poca experiencia web actualmente en el proceso de querer usar realmente mi servidor web y mi nombre de dominio para algo que no sea un vertedero de archivos a los que necesito dar acceso a otras personas. Mi plan es implementar de alguna manera un sitio web / blog personal / profesional, ya sea utilizando productos estándar de FOSS, software personalizado o componentes estándar con módulos / complementos personalizados.

Mis requisitos son:

  1. HTML semántico (bien formado, uso apropiado de atributos, microformatos cuando sea apropiado, uso de CSS para estilo y HTML para marcado)
  2. Validación de HTML y CSS (XHTML, HTML4, HTML5, todos aceptables, siempre y cuando se valide de fábrica)
  3. Soporte para un blog.
  4. Soporte para editar y administrar mi currículum en formato HTML, así como administrar archivos cargados en formatos PDF, ODT y DOC que pongo a disposición para descargar
  5. Escrito en un idioma que conozco y que mi host admite: PHP prefiere, ya que es más fácil para mi host y también estoy familiarizado con él
  6. Fácil de obtener o escribir un tema para
  7. Soporte para páginas estáticas que cambian con poca frecuencia (sobre mí), páginas estáticas que cambian a veces (listas de proyectos), páginas dinámicas (blog, comentarios) y formularios (contácteme)
  8. Juega muy bien con otras herramientas en el mismo entorno: uso Trac en el mismo host para la gestión de proyectos y podría implementar otro software, como una implementación personal de MediaWiki
  9. Fácil de integrar con otras redes sociales (Twitter? Facebook? Pandora?): No es obligatorio, pero sería bueno
  10. Generación y mantenimiento del mapa del sitio y / o robots.txt

Mis preguntas:

  • ¿Qué solución FOSS, si la hubiera, sería apropiada para mí? He jugado con Drupal y WordPress en el pasado: WordPress me pareció una herramienta sólida, pero en ese momento estaba muy centrada en el blog (entiendo que ha cambiado más recientemente para que sea más parecido a CMS).
  • ¿Qué soluciones gratuitas (pero no de código abierto) podrían ser apropiadas para mí? Preferiría tener acceso completo a la fuente, pero no es un requisito.
  • Si voy a rodar el mío, ¿por dónde debo comenzar? Preferiría no usar la mía propia: mi experiencia en ingeniería de software me dice que mis requisitos deben ser comunes y que debería poder encontrar algunas soluciones existentes que pueda combinar para que esto funcione.

Gracias.


¿Has probado Jquery? <ducks>
Tim Post

@Tim Post: Quiero votar tu comentario únicamente por el factor jajaja, pero temo que eso envíe una impresión equivocada;)
Zhaph - Ben Duguid

Fuera de tema: no se trata de webmastering; ¿Por qué los votos?

@Kinopiko está de acuerdo con la mayoría de las publicaciones que marcó, pero para mí esta es sobre el tema.
JasonBirch

@TimPost Su comentario de "patos" es lo que me impidió marcar un comentario ofensivo. ;-P
NDEIGU

Respuestas:


6

La pregunta de comprar contra construir es eterna. Diría que WordPress y Drupal cumplen con sus criterios. Tengo más experiencia con WordPress, así que lo haría en WordPress. Para abordar sus requisitos:

  1. HTML semántico (bien formado, uso apropiado de atributos, microformatos cuando sea apropiado, uso de CSS para estilo y HTML para marcado)

    , la mayoría de los temas para WordPress usan xhtml por defecto sin problemas. Marcado relacionado con los microformatos que probablemente tendrá que hacer a mano en una vista html, aunque puede haber complementos que lo faciliten.

  2. Validación de HTML y CSS (XHTML, HTML4, HTML5, todos aceptables, siempre y cuando se valide de fábrica)

    , la mayoría de los temas para WordPress se validan o están muy cerca de validarse sin muchos problemas. Hay una gran documentación para temas.

  3. Soporte para un blog.

    Si absolutamente.

  4. Soporte para editar y administrar mi currículum en formato HTML, así como administrar archivos cargados en formatos PDF, ODT y DOC que pongo a disposición para descargar

    , solo haga que el currículum sea una página estática y administre los archivos cargados utilizando la herramienta de administración de medios nativa en WordPress.

  5. Escrito en un idioma que conozco y que mi host admite: PHP prefiere, ya que es más fácil para mi host y también estoy familiarizado con él

    , WordPress = PHP + MySQL + Apache funciona mejor paramod_rewrite

  6. Fácil de obtener o escribir un tema para

    , vea Desarrollo de temas

  7. Soporte para páginas estáticas que cambian con poca frecuencia (sobre mí), páginas estáticas que cambian a veces (listas de proyectos), páginas dinámicas (blog, comentarios) y formularios (contácteme)

    Sí, las páginas se administran en WordPress en la parte Páginas de la interfaz. Los formularios de contacto funcionan bien con complementos como Contact Form 7

  8. Juega muy bien con otras herramientas en el mismo entorno: uso Trac en el mismo host para la gestión de proyectos y podría implementar otro software, como una implementación personal de MediaWiki

    , aunque es posible que deba agregar algunas reglas de reescritura para que no todo apunte a WordPress. Ejecuto WordPress en un subdirectorio y lo dejo manejar todo por lo general. Es posible que deba agregar un especificador para que WordPress ignore un vástago de directorio MediaWiki.

  9. Fácil de integrar con otras redes sociales (Twitter? Facebook? Pandora?): No es obligatorio, pero sería bueno

    , a través de complementos. De manera predeterminada, también puede incluir fuentes RSS en las barras laterales de WordPress.

  10. Generación y mantenimiento del mapa del sitio y / o robots.txt

    , Google Sitemap Generator .


Para el número 4: ya tengo formatos PDF, ODT y DOC de mi currículum. Solo necesito algo que me permita cargar fácilmente mis archivos y vincularlos en páginas. Además, para el registro, el enlace al generador de sitemaps de Google es incorrecto: señala el formulario de contacto 7.
Thomas Owens el

1
Oh, claro, WordPress hace bien la gestión de archivos. También arreglé mis enlaces desordenados.
artlung

Genial, gracias. Permítanme editar mi publicación original para reflejar lo que realmente quiero decir (lo releí y es un poco confuso, parece que quiero convertir mi hoja de vida HTML / página web en PDF / ODT / DOC).
Thomas Owens

Actualicé mi respuesta para reflejar el cambio en la pregunta
artlung

2

He usado Wordpress para configurar una serie de sitios, cada uno con diferentes necesidades, y creo que Wordpress también satisfaría tus necesidades:

  • http://chaos.trader.name/ - Principalmente un sitio de información orientado a la página, con algunos blogs.
  • http://ludus.unicornsrest.org/ - Principalmente un blog, pero con una estructura de página profundamente anidada. Escribí un complemento para crear enlaces a páginas dentro de las publicaciones mientras me permitía reorganizar las páginas.
  • http://driia.com/ - El sitio de negocios de mi esposa, tanto blog como sitio de ventas. Escribí complementos que permiten agrupar automáticamente las publicaciones en páginas basadas en categorías y etiquetas, y reconocer que las publicaciones con una etiqueta específica representan joyas o piezas de arte que están a la venta. Los precios de venta se almacenan como metadatos en las publicaciones.
  • http://barkingmad.org/ - Sitio de publicidad para un grupo de entretenimiento sin fines de lucro.

La cantidad y calidad de los temas y complementos disponibles para Wordpress es sorprendente, pero la licencia GPL significa que todo lo que no satisfaga completamente sus necesidades puede mejorarse como mejor le parezca.


1

No creo que vaya a encontrar ningún proyecto de FOSS que haga lo que quiere que haga OTB. WordPress es sólido, pero tendrías que trabajar un poco para generar lo que quieres. Drupal podría ser más dolor de cabeza de lo que parece al principio. Sé que a la gente le encanta, y sé que lo he intentado, pero prefiero no preocuparme por tener que mantener tantos trucos entre actualizaciones de versiones.

Francamente, iría con WordPress si estuviera en su lugar, y complementos de compilación personalizados para lo que necesita, si aún no encuentra algunos de FOSS.

La advertencia es que desde que Matt Mullenweg (CEO de Automattic, la compañía detrás de WordPress) comenzó a atraer a Richard Stallman a todos, él cree y defiende que todos y cada uno de los temas (código de tema, no imágenes / CSS) y complementos (código de complemento) es GPL en virtud de ser un trabajo derivado de WordPress en su vista (lo que personalmente encuentro distorsionado). Así que eres bueno si lo haces por ti mismo, pero si tienes una "distribución", como dar los complementos a 2 personas, puedes estar legalmente obligado a OS tú mismo, que es algo que puedes o no querer hacer .


Honestamente, no me importa publicar nada de lo que escribo. De hecho, probablemente lo haría de todos modos, si puedo hacer algo medio decente y es útil para otros. Sin embargo, solo tengo curiosidad por WordPress: ¿son las versiones más nuevas realmente adecuadas para algo más que bloguear? Además, aparte del sitio web principal de WordPress, ¿hay otros repositorios o índices de complementos, módulos y temas?
Thomas Owens

Realmente son mucho menos sobre los blogs ahora. Básicamente, también tiene páginas, y puede ir con una página de inicio estática, y solo páginas, sin publicaciones. Realmente es tu decisión. Wordpress.org es básicamente el lugar donde encontrará todo lo que respecta a los complementos. Temas ... son más o menos recorridos por la web. Personalmente, creo que Thesis of diythemes.com es muy útil para una fácil configuración / personalización, pero la web está literalmente llena de temas. Y los repositorios de wordpress.org. Tenga cuidado con la descarga de temas y complementos desde cualquier lugar. Algunos son malware, otros solo dicen "webspam".
intlect

1

Depende de lo que quieras hacer y sal de él:

  1. Aprenda una pila de tecnología
    . Escribí la mayor parte del código que impulsa mi sitio personal como un ejercicio de aprendizaje para ponerme al día con los últimos cambios en la tecnología en la que estaba trabajando, y los he cambiado a medida que cambiaba mi enfoque, originalmente un sitio ASP clásico. , luego se trasladó a ASP.NET 1.1, luego a 2.0, y ahora se ejecuta en ASP.NET MVC 2.0 después de una actualización reciente de ASP.NET MVC 1.0
  2. Simplemente ejecute su sitio
    Tanto en el trabajo, como para un par de sitios de la iglesia que ejecuto en mi tiempo libre, he usado software empaquetado; en el trabajo estamos hablando de CMS "empresariales" (MOSS, Tridion), para los sitios de la iglesia es FOSS ( N2 CMS ): porque ofrecían características superiores a las que estaba preparado para escribir.

Si su profesión es crear sitios web, entonces hay un argumento para usar la tecnología que está "vendiendo", si es algo más, le recomiendo que dedique su tiempo al contenido en lugar de a la tecnología.


Respondiendo al comentario

Entonces recomendaría elegir uno del estante: no puedo ofrecer una gran recomendación en la esfera de PHP, ya que esa no es mi especialidad, me temo. Si puede hacer frente a algunos C # N2 CMS es muy flexible, pero no tiene la gran base de complementos / temas de algo como WordPress, que por lo que parece probablemente se adaptará bastante bien a sus necesidades ...


Mi negocio no son sitios web, eso es seguro. Mi enfoque principal profesional es típicamente en el lado más suave de la ingeniería de software: ingeniería de requisitos, gestión de procesos y proyectos, diseño y arquitectura. Sin embargo, estoy un poco familiarizado con algunas pilas de tecnología web (principalmente porque he realizado desarrollo web de back-end, nada orientado hacia el frente). Y honestamente, preferiría mantenerlo simple para un sitio personal y enfatizar el contenido.
Thomas Owens

1

Construyo CMS de nivel empresarial para vivir ... y personalmente ODIO los sistemas estándar como Joomla, Wordpress y Drupal. Aquí están mis razones:

1) Los lugares en los que he trabajado han tenido estos (tipo de) paquetes explotados varias veces porque no fuimos lo suficientemente rápidos para actualizarlos ... y en algunos casos, las actualizaciones pueden ser semanales. Una vez que sea pirateado, se preguntará seriamente por qué alguna vez tomó esa ruta ... apesta.

2) Las plantillas de Wordpress son enloquecedoras. Uno tendrá un área de administración con todas las funciones, mientras que el siguiente no tiene ninguno y espera que hackees el código. ¿Dónde buscar? AHHHHH !!! He desplegado muchos de ellos, pero siempre me duele. En mi opinión, Wordpress es un sistema de blog ... úsalo para lo que está destinado a hacer.

3) Puse cientos de sitios de Joomla (y Mambo) en un trabajo anterior. Incluso cuando llegas a saber lo que estás haciendo, buena suerte tratando de salir de ese tipo de "diseño de Joomla" ... especialmente si el tiempo no está de tu lado. Lo mismo ocurre con Wordpress ... puedes decir cuando estás en un sitio de Wordpress. No, gracias ... Me pagan para obtener el trabajo original.

4) Entrenamiento. Intente explicar la administración de Joomla o Drupal a alguien en 5 minutos o menos. El CMS que construí se puede enseñar a alguien con un párrafo de instrucciones escritas (o menos) porque lo construí para incluir solo las herramientas que cada sitio web específico necesita ... de lo contrario, el botón desaparece. Te reto a que intentes entrenar a alguien con menos de una guía telefónica, especialmente si no son técnicamente inteligentes.

5) Cumplimiento de normas ... es algo en lo que personalmente no voy a comprometerme. Controlo todo lo que produce mi CMS, y lo he construido de tal manera que se puede insertar una docena de líneas de código en cualquier plantilla compatible con HTML en cuestión de minutos para producir un código compatible cada vez. Wordpress está bien en esto, Joomla y Drupal no siempre lo son tanto.

6) Comercialización. Todos los CMS hacen lo mismo. Pero intente dirigirse a un cliente potencial y decir "Me gustaría cobrarle mucho para personalizar un producto comercial gratuito" en lugar de "Aquí hay un sistema que fue diseñado específicamente para sus necesidades" Si es un buen producto ganará ese negocio casi siempre. En su caso, esto no importa ... pero quién sabe, tal vez podría aprovechar la funcionalidad para proyectos futuros ... proyectos de pago ...

Por supuesto, hay inconvenientes. Construyes todo tú mismo, lo que lleva tiempo. Si lo está haciendo para múltiples sitios, la economía de escala reduce el impacto. No tiene un ejército de personas que encuentren vulnerabilidades ... nuevamente, tener múltiples implementaciones puede ayudar a que el código evolucione. Pero, si tiene el conocimiento para escribir código de calidad, es una gran solución.

Buena suerte.


0

Parece que, para su caso de uso, un CMS empaquetado es probablemente la mejor manera de hacerlo.

Han pasado algunos años desde la última vez que evalué PHP CMS, y en ese momento mi requisito principal era la extensibilidad limpia. En ese momento, Joomla era un fuerte contendiente, y Xaraya parecía intelectualmente interesante, aunque el ciclo de desarrollo parecía lento.

Si está interesado en probar algunas, el sitio opensourceCMS le permite probar sin tener que instalarse. La última vez que lo intenté parecía mucho menos publicitado, pero supongo que tienes que pagar las cuentas. Muchos de los CMS también tienen sus propios sitios de demostración (por ejemplo, Joomla Demo , Xaraya Demo )


0

Si tienes mucho tiempo y una picazón que no desaparece, sí, enrolla la tuya. De lo contrario, instale WordPress ("instalación famosa de 5 minutos ") y tómese 2 horas ... eso es todo lo que necesita para tener una muy buena idea.

Quería publicar un par de comentarios en respuesta a respuestas anteriores: definitivamente puede crear sitios web que son "páginas" con WP no solo blogs (y es muy bueno para crear sitios web con blogs integrados), y aceptar el comentario de @ intlect sobre los temas. Puede haber una gran diferencia en la calidad de algunos temas (también es un buen lugar para aprender / ver cómo funciona WP): me han mordido un par de veces y también actualizo WP para encontrar que el tema no es compatible con la versión más reciente (y luego descubres qué tan bueno es el soporte del desarrollador).


0

Por supuesto, hay una tercera opción, podría usar un CMS menos "pesado" como MODX, esto le permitiría la opción de no tener que reinventar la rueda de todas las cosas de cms estándar (administración de usuarios, administración de documentos, etc.) mientras ofreciéndole un entorno fácil y flexible para crear su propio código. He usado varios CMS y todos tienen su nicho, pero si quieres algo que sea fácil de desarrollar y lo suficientemente ligero como para que puedas entenderlo sin semanas de excavación (algunos de los sistemas CMS son bestias realmente poderosas ... algo que probablemente no necesite para un sitio web personal). Básicamente, MODX está diseñado específicamente para el tipo de cosas que desea hacer, le brinda un núcleo de características y luego agrega las suyas. Además, las personas comparten su código, por lo que encontrará fragmentos, módulos,


Me gustaría ver esto. ¿Puedes sugerir más cosas similares a MODX?
Thomas Owens
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.