Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - César Krall

Páginas: 1 ... 60 61 62 63 64 [65] 66 67 68
1281
Hola Brandon, respecto a cómo ponerte en contacto con nosotros, a través de los foros ya lo estás haciendo. También puedes usar el correo electrónico contacto@aprenderaprogramar.com si lo prefieres. Y también puedes acceder a la página www.aprenderaprogramar.com y arriba a la derecha pulsar en el link "Contacto" y enviar un formulario de contacto.

Respecto a los cursos que se ofrecen tutorizados on-line y los costos, puedes acceder a la página www.aprenderaprogramar.com, pulsar sobre el link del menú "Cursos" y ahí buscar "Cursos tutorizados on-line". También puedes acceder directamente usando esta URL: https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=64&Itemid=87

Para cualquier aclaración que necesites estamos para ayudarte en lo que sea posible. Saludos.

1282
En fin... no es la primera vez que comentamos que el desarrollo web no es una ciencia exacta. Saludos.

1283
Cuando lo tengas solucionado dinos cuál era el problema... gracias María.

1284
Hola María, es posible que haya un problema de incompatibilidad entre la extensión y la versión de Joomla que estás utilizando. Que sea por excesivo peso es improbable. Asegúrate de que se indique que la extensión es compatible con tu versión de Joomla. Si aún así te da problemas, prueba a usar una versión anterior de la extensión, pues puede ser también incompatibilidad con la versión de php de tu servidor...

1285
Coincido contigo Juanito, gran programa, lo único que hace falta es tiempo para sacarle partido.

1286
Gracias a tí, veo que estás siendo constante y eso es un valor... intentaremos seguir echando una mano en lo que podamos.

1287
Hola María, plantillas hay de muchos tipos:

a) Creadas por empresas que se dedican a crear plantillas

b) Creadas mediante programas para creación de plantillas como el artisteer

c) Creadas por cualquiera que sepa hacer plantillas (lo cual no es una tontería, hacen falta conocimientos)

d) Creadas modificando plantillas creadas de cualquiera de las maneras anteriores

e) Incorporadas en el propio Joomla

f) Etc. etc. etc.

El mundo de las plantillas es relativamente complejo, por tanto saber en qué tipo de plantilla se puede clasificar la plantilla de una web o blog... necesita de un poco de "vista" o experiencia, y a veces ni aún así.

Es verdad que en muchos casos puedes encontrar pistas a través del código que te permitan identificar si se ha usado una plantilla descargada desde alguna página, pero en otros casos no.

Te pongo un ejemplo, si entras en la web pequess.es, que es una web hecha con Joomla, en el código fuente encuentras cosas como /templates/gk_mystore/favicon.ico, mod_news_pro_gk4/interface/css/style.css, <div id="gk-wrapper" class="main">... etc. y estos detalles dan pistas.

Ahora te vas a google y escribes "template gk mystore joomla" y ahí buscando entre lo que te sale puedes llegar a esta página http://joombloger.com/2010/06/gk-mystore-gavickpro-may-2010-joomla-template/ y ahí investigando puedes llegar a este enlace http://demo.gavick.com/joomla15/may2010/ y si resulta que es una plantilla gratuita y que no la han modificado, quizás te la puedas descargar...

Pero en otros casos te puedes pasar horas buscando y no vas a encontrar nada.

Sobre el uso de css de una página que te guste para adaptarlos a una página tuya, efectivamente se pueden utilizar cosas... de cualquier manera en general esto implica manipular código y manipular código a determinados niveles solo es recomendable para gente con conocimientos avanzados.

Hay ciertos cambios que se pueden hacer fácilmente pero otros que pueden llevar mucho trabajo, depende. Y algunos cambios mal hechos pueden llevar a que una página web deje de funcionar correctamente. Saludos.

1288
Hola María, no voy a darte mejores opiniones que Enrique porque él es un gran experto, pero trato de darte algunas orientaciones.
En primer lugar, la elección de plantilla efectivamente tiene su importancia, pero no es la vida o la muerte, no es nada irreversible. Es decir, muchas veces cogemos una plantilla y después de llevar unos meses con ella la cambiamos y no pasa nada, así que no te preocupes tanto de elegir la plantilla perfecta desde el primer momento.
Sobre la instalación de JCalpro o cualquier tipo de módulo o extensión: simplemente busca una plantilla con las columnas y módulos laterales que de forma aproximada se asemejen a lo que tú quieres. Por ejemplo si ves esta página, ves que los módulos laterales están a la derecha. Pero en general las plantillas son flexibles, es decir, te permiten poner cosas arriba, abajo, a izquierda o a derecha o en el centro. Piensa que la plantilla es como un lienzo en blanco y tu vas colocando cosas encima de ella. Entonces si tú utilizas una extensión, ya la pondrás encima de una posición disponible, no te preocupes por eso.
Sobre la antiguedad o compatibilidad de la plantilla: si estás utilizando joomla 1.5.25 simplemente tienes que elegir plantillas que especifiquen que son compatibles con Joomla 1.5. Por ejemplo si entras en esta web http://www.demo.ahadesign.eu/, verás que en la parte de arriba hay una pestaña que pone Templates J 1.5 y otra pestaña que pone J 1.7. Lógicamente tendrás que ir a buscar según qué versión de joomla estés usando.

El aspecto de la plantilla no es mejor ni peor para Joomla 1.5 o para Joomla 1.7. Simplemente hay cientos de diseños para uno y otro tipo, y cada uno elige el que más le gusta.

Si no puedes subir extensiones o plantillas eso ya es otra cosa. Si es así, pon el mensaje de error que te aparece a ver si podemos echarte una mano.

Y finalmente un consejo: vete probando y mirando y después de unas cuantas pruebas elije una plantilla y sigue adelante, porque en mirar plantillas puedes emplear todo el tiempo que quieras: hay miles. Saludos.




1289
Hola Enryrigdane, trato de dar una respuesta a las cuestiones que planteas:

Sobre la entrega CU00148A

1. Partimos de la "tabla origen"
2. Buscamos las filas donde exista menor número de indiferencias (es decir, menor número de --). Estas filas son la C1 y la C4, en ambas solo existe una indiferenciea.
3. Como estamos en caso de empate (entre C1 y C4 hay empate, pues no hay una que tenga menos indiferencia que la otra), aplicamos el criterio para casos de empate: "En caso de empate, se divide por la fila que contiene menor número de indiferencias en la vertical de sus indiferencias."

Esta expresión es un poco complicada, pero vamos a tratar de ver cómo lo haríamos. La fila C1 tiene la indiferencia en la columna 4-6-7-12. ¿Cuántas indiferencias hay en la vertical de 4-6-7-12? La respuesta es que hay 2.

Ahora analizamos la fila C4: tien la indiferencia en la columna 1-2-3-8. ¿Cuántas indiferencias hay en la vertical de 1-2-3-8? La respuesta es que hay 2 también.

Vuelve a existir empate, por lo que aplicamos el criterio que en el curso numera como a.1.1) En caso de empate, se divide por la fila que el programador estime oportuna, atendiendo a su conocimiento del problema, y si no hay criterio a seguir siempre la opción “menor” o “sí”.

Es decir, elegimos una cualquiera, en general la más pequeña. Consideramos que el orden es C1, C2, C3, C4... de modo que entre C1 y C4, elegimos C1.



Sobre muchos ejemplos de tablas y que se puede hacer tedioso. Te voy a dar dos consejos que me parece te puedan servir. Tomarlos o no, depende de cada persona:

El primero: el esfuerzo y la constancia llevan a conseguir los objetivos. El objetivo lo marcamos cada uno. Si el tuyo es aprender a programar, con esfuerzo y constancia lo conseguirás.

El segundo es más práctico. Es verdad que los contenidos del curso son  bastante teóricos, pero son la base. ¿Cómo hacer para hacer más ameno el aprendizaje? La recomendación que te daría es: empieza el Curso de Visual Basic nivel I que tenemos en la web. Vete siguiéndolo, de forma que siempre veas los fundamentos (en el curso bases de la programación I) y luego la aplicación práctica (en el curso Visual Basic nivel I). Verás que muchos contenidos y ejercicios de aplicación del curso de visual basic se corresponden con contenidos y ejercicios planteados en el curso bases de la programación (P.ej. Variables en programación -- > Variables en Visual Basic). De esta manera, conjugas los fundamentos con la aplicación práctica.

Espero que lo expuesto te sirva de ayuda. Saludos.

1290
Gracias por el apunte Alex, como siempre...

1291
Voy a poner un ejemplo un poco bruto, pero que a lo mejor aclara algo. Supongamos que queremos demoler una construcción y nos planteamos qué método usar.

Supongamos que la construcción es un edificio de 4 plantas y nos planteamos usar explosivos. Ponemos varias cargas explosivas, volamos el edificio tomando las precauciones oportunas, y listo. Hemos sido eficientes.

Ahora supongamos que la construcción es una carpa que se monta como una tienda de campaña con unos clavos al suelo y vientos para sujección. El método de los explosivos, que es eficiente en determinados casos, ¿sería eficiente ahora? No, porque usar explosivos requiere tomar unas medidas de seguridad, requiere de especialistas en explosivos, tiene un alto coste conseguir el explosivo, etc. Entonces, ¿cómo haríamos con la carpa? Pues simplemente desclavamos los clavos e iríamos quitando poco a poco la cubierta, los hierros, etc. En este caso es más eficiente el "desmontaje manual".

Ahora finalmente nos planteamos, para el caso peor --> mejor explosivos, para el caso mejor --> mejor desmontaje manual. ¿Y para el caso medio? El caso medio serían edificaciones de 1 o 2 plantas. Este caso medio se resuelve de forma eficiente usando una máquina autopropulsada tipo pala de construcción con algún utensilio específico para demolición.

Con el quicksort lo que decimos es que es eficiente para el caso medio. El peor caso para el quicksort sería el de vector prácticamente ordenado.

1292
Hola, en relación a eficiencia caben distinguir varias cuestiones. En el caso de quicksort, se puede decir que "en el peor caso" no es un método eficiente. Sin embargo, para el caso "medio" es uno de los métodos más eficientes. Es decir, que si te dan un conjunto de vectores donde tengas 1000 vectores con números aleatorios y órdenes aleatorios, quicksort sí es eficiente en relación a otros métodos. Si te dan un vector concreto "el peor caso" puede que no sea tan eficiente como sería deseable.

1293
De momento que yo sepa no; supongo que más adelante se incluirá dentro de algún curso de tipo avanzado.

1294
Hola, lo primero de todo dar las gracias a Enryrigdane por sus palabras de elogio. No me considero un experto, pero sí trato de ser lo más didáctico posible (es una política general que mantenemos en aprenderaprogramar.com) porque cuando se está aprendiendo algo es frustrante solo encontrar explicaciones complicadas y farragosas. Por tanto agradezco a todos que de vez en cuando vayan valorando si las explicaciones son útiles. Y por otro lado, también se agradece que se diga cuándo no son útiles para tratar de hacer la explicación de otra manera.

En relación a lo que plantea chévere, las clasificaciones de algoritmos tratan de reflejar distintas estrategias para resolver un problema. Por ejemplo, supongamos que en vez de programadores fuéramos "demoledores" que nos dedicamos a demoler cosas. Entonces tendríamos que estudiar qué es lo que vamos a demoler (el programa) y aplicar una estrategia distinta según lo que queremos hacer. Por ejemplo, para demoler un muro podríamos plantearnos ir tirando trozos de muro con la pala de una máquina excavadora. Otra opción sería poner una carga explosiva y tratar de volarlo de una sola vez. Otra opción sería hacer un agujero en la base del muro, dejar los cimientos al descubierto y luego empujarlo hasta que cayera...
En programación también tenemos distintas estrategias. Lo que pasa con la clasificación de voraces, vuelta atrás, etc. es que es una clasificación un poco más avanzada y yo creo que en el curso no se entra en esto porque se trata de ir a lo más didáctico. Por tanto dentro de un curso básico yo me preocuparía de las cosas básicas. Ya habrá tiempo de complicarse con cosas avanzadas.

1295
Trato de responder a lo planteado.

La clasificación de problemas de programación se puede hacer de muchas maneras.

Una de ellas se basa en clasificar la estrategia algorítmica que se usa (voraz, divide y vencerás, vuelta atrás, etc.), otras distinguen soluciones recursivas e iterativas, etc.

La clasificación que se plantea en el curso (en problemas de resolución directa, problemas con resolución documentada, problemas con iteración para búsqueda de soluciones, problemas a plantear con una tabla de decisión o problemas con resolución intuida pero método paso a paso a determinar) no es tanto una clasificación exacta como una orientación para que la persona que se enfrenta a un problema trate de clasificarlo de forma orientativa.

En programación utilizamos todas esas formas de resolver problemas.

¿Cómo aprender a identificar bien a qué tipo de resolución pertenece cada problema?

Cito algo que es parte del curso: "nos basamos en una clasificación práctica (o de base subjetiva): lo que para algunos es resolución directa, para otros puede ser resolución documentada. Igualmente la resolución intuida para algunas personas puede ser resolución directa o documentada para otras... No se trata de acotar de qué tipo es un problema desde el punto de vista científico: el objetivo es que cada uno sepamos identificar los problemas, conocerlos, y saber establecer estrategias para su resolución."

De lo que se trata, al fin y al cabo, es que antes de ponernos delante del ordenador a hacer algo hayamos reflexionado sobre lo que vamos a hacer.

Supongamos que el programador es un albañil al que se le plantea:

"Haz un edificio de una habitación con el techo plano" --> Lo puede hacer directamente (resolución directa)
"Haz un edificio con un techo a 4 aguas de estilo achinado" --> Quizás necesite ver alguna documentación para hacerlo bien (resolución documentada)
"Haz un edificio y vete dándole distintas formas al techo hasta que se obtenga una forma asimétrica que recuerde una estrella" --> Tendrá que ir repitiendo (resolución iterativa)
"Haz un edificio que si da el sol desde el sur, reduzca la luminosidad, si da el sol en vertical impida la entrada de luz, si da la luz de la luna permita el paso total de luz, si da..." --> Podría usar tablas para reflejar las posibilidades (resolución con tablas de decisión)
"Haz un edificio con techo de bóveda y deja escrito cómo lo hiciste" --> Quizás sepa lo que es el techo de bóveda y cómo hacerlo, pero no tenga del todo claro cómo construirlo paso a paso (resolución intuida pero método paso a paso a determinar)

En resumen: a medida que se vaya teniendo práctica como programador se irá sabiendo cómo abordar los problemas, no te preocupes ahora demasiado por esto. Lo que sí es importante es tener claro que antes de abordar un problema hay que reflexionar sobre él. Saludos.

1296
Cuestión planteada por Enryrigdane:

Hola Cesar por el momento agradecido y satisfecho por el curso, lo siguiente seria la cuestion de los problemas con resolucion intuida, directa,etc. En base a esto ¿cuales utilizariamos en programacion? ¿y como puedo aprender a identificar bien a que tipo de resolucion pertenece cada problema?
Saludos.

1297
Hola Enryrigdane, si te parece bien voy a abrir un nuevo hilo (tema) denominado "Cómo reconocer y abordar problemas en programación" y ahí te respondo, más que nada para no alargar este hilo que trataba sobre tablas de decisión.

En ese nuevo hilo te respondo la consulta.

1298
Lo primero, que te leas las orientaciones generales de la sección "Cómo empezar" de aprenderaprogramar.com. Aquí tienes el link: https://www.aprenderaprogramar.com/index.php?option=com_content&view=section&layout=blog&id=4&Itemid=18


Luego, el curso para empezar sería "Bases de la programación nivel I". Aquí tienes el link: https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=28&Itemid=59

No empieces sin haber leído algo sobre cuestiones generales, hay que saber dónde se mete uno antes de meterse.

1299
Me alegro que estés motivado para seguir avanzando. Uno de los problemas principales de muchos alumnos es que abandonan en cuanto aparece una pequeña dificultad. Te aparecerán con seguridad más dificultades, pero con un poco de esfuerzo y la ayuda que puedas conseguir podrás avanzar hasta donde te propongas. Ten en cuenta que las tablas de decisión resultan adecuadas por cuanto introducen muchos conceptos de lógica y toma de decisiones útiles para la programación, pero que tampoco son lo más importante dentro del curso. De hecho, dentro del curso hay partes que se pueden "saltar" sin que esto suponga que el curso no se pueda completar. Así que lo importante es completar el curso, no entender todos y cada uno de sus apartados o párrafos. Animo.

1300
Hola, si ya ha quedado claro el paso 1 (simplificación de "Llueve" y "Me llaman mis amigos") pásate a la entrega CU00113A y trata de entender la simplificación que se hace de la tabla.

En el anterior post estaba explicado, pero te repito un párrafo que me parece importante porque te da una buena clave: "El caso 1 implica que es un empleado altamente productivo, encargado y que ha cometido una infracción grave. El caso 3 implica que es un empleado altamente productivo, no es encargado, y que ha cometido una infracción grave. Ambos casos nos llevan a las mismas acciones. Esto significa que si un empleado es altamente productivo y ha cometido una infracción grave, da igual que sea encargado o no (es INDIFERENTE), lo cual nos permite unificar esas dos columnas y poner un guión en el apartado "Empleado encargado".

Si no te queda claro el paso 2 del post anterior, dime dónde se te presenta el problema y trato de aclararlo. Saludos.

Páginas: 1 ... 60 61 62 63 64 [65] 66 67 68

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".