¿Escasez de oportunidades o fuerzas de ventas no preparadas?

Hola Colegas!!

Les comparto un artículo que encontré en linkedin muy interesante….

¿Escasez de oportunidades o fuerzas de ventas no preparadas?

8 de feb. de 2016

Preguntarse porqué cuesta tanto vender es una interrogante que parece tener muchas posibles razones, sin embargo, un alto porcentaje de las que se creen pueden ser las razones, quizás estén relacionadas con: la competencia, el mercado, precio, condiciones país, entre otros. Pero ¿será más bien que lo que a veces parece ser más obvio sea lo que nos es más difícil de analizar?

¿Cuántas veces nos detenemos a pensar qué habilidades y herramientas tiene nuestra fuerza de ventas para entonces enfrentarnos con mucho más potencial a las razones antes mencionadas?

Entre más me relaciono como “cliente” ante diferentes tipos de empresas de productos y servicios; más me cuestiono como es que los equipos de ventas son tan débiles y poco preparados.

Vender no es sencillo, indudablemente es una profesión y como tal requiere preparación, capacitación, metodología, herramientas y claro está; una buena dosis de interés por el servicio.

Pero ¿será que seguimos pensando que vender es solo ponerse frente a la persona y hablarle de las características del servicio o producto? ¿Y que después de esto tendremos entonces un nuevo cliente leal a nuestra marca?

Vender es más que eso. Se empieza a cerrar un negocio desde el primer contacto que tenemos con nuestros potenciales clientes, desde el aprender a escucharle más de lo que le hablamos, hacer las preguntas que nos den información que al final vamos a traducir en valor para ellos mismos, conocer su necesidad real y más allá de eso, ayudarlo a construir una solución que le genere el estado emocional deseado a partir de satisfacer el reto planteado.

¿Y de quién es la responsabilidad?

Como todo en la vida nada es absoluto, pero sin lugar a dudas las empresas (y las personas que es por quien están compuestas las mismas), tienen la responsabilidad y el reto de desarrollar equipos de ventas de alto desempeño, equipos de ventas capaces de gestionar la relación con sus potenciales clientes de inicio a fin. Es entonces cuando hablamos de un equipo de ventas que ha considerado lo que a mi juicio son los 4 pilares fundamentales de un departamento comercial exitoso:

  • Estructura del equipo de ventas
  • Procedimientos propios de la dinámica comercial
  • Herramientas que apoyen la gestión de ventas
  • Metodología de ventas

Pero cualquiera de los anteriores como un componente aislado no funciona, pero tampoco 3 ó 2 de ellos juntos, sin contar con los demás. La responsabilidad entonces recae en la empresa y en el líder. Es tarea del líder comercial poner a disposición de su equipo una unidad que contemple todos las piezas del rompecabezas y es responsabilidad de la empresa formar líderes con dichas habilidades y capacidades.

Por eso, cada vez que usted (como cliente) se enfrente a una mala experiencia de ventas; deténgase y piense: ¿Y en mi empresa? ¿Lo hacemos diferente? ¿Cuándo atiendo a mis clientes lo hago con todas las herramientas para poder ser el vendedor – consultor que ellos necesitan? ¿O será acaso que la mayoría de nosotros somos parte de un todo que se ha acostumbrado a pensar que “la calle está muy dura” y entonces es más sencillo pensar que el problema está afuera y no adentro?

Lo más fácil es pensar que es un problema de escasez de oportunidades pero le invito más bien a cuestionarse si será un problema de las fuerzas de ventas, que recae en la capacidad de sus líderes para desarrollar equipos diferenciados, capaces de construir soluciones que satisfagan los verdaderos retos que ya tienen sus clientes.

Adriana Fernández, Gestora de procesos de coaching comercial aplicado a todo tipo de empresas, facilitando el proceso de implementación y re estructuración de departamentos de ventas.

 

 

 

 

Controlador PHP

Configuración PHP

PHP es uno de los lenguajes de scripting más populares para la creación de páginas web dinámicas. La mayoría de los sitios y aplicaciones web se basan en scripts PHP. Es por este motivo que los administradores de sitios web deberían entender de forma sumamente clara cómo pueden controlar la ejecución de scripts PHP.

La forma en la que se ejecutan los scripts PHP para un determinado sitio web se define de forma completa mediante dos aspectos: el controlador PHP y la configuración PHP para el sitio. A continuación se describe cómo configurar estos parámetros para un determinado sitio web en el panel de control.

Controlador PHP

Cuando un visitante accede a un sitio basado en scripts PHP, el servidor web interpreta los scripts del sitio para así generar la página que se mostrará al visitante. El controlador PHP llama a las librerías PHP requeridas para esta interpretación. Usted puede escoger entre distintos controladores PHP: ISAPI (Windows), Apache module (Linux), FastCGI, CGI o PHP-FPM (Linux). La decisión acerca del controlador PHP a escoger debería depender de distintos factores, como por ejemplo consideraciones de seguridad, velocidad de ejecución de los scripts y consumo de memoria.

Ejecutar PHP como

Rendimiento

Uso de memoria

Seguridad

Módulo Apache(solo Linux)

Elevado

Se ejecuta como una parte del servidor web Apache.

Baja

Este controlador (también conocido como mod_php) es la opción menos segura, ya que todos los scripts PHP se ejecutan en nombre del usuarioapache. Esto significa que todos los archivos creados por los scripts PHPde cualquier suscriptor del plantendrán el mismo propietario (apache) y el mismo grupo de permisos. Así, las acciones de un usuario pueden afectar a otro usuario o a algunos archivos críticos del sistema.

Nota: puede evitar algunas incidencias de seguridad activando la opción safe_mode de PHP. Esta opción desactiva varias funciones de PHP que suponen un riesgo de seguridad potencial. Tenga en cuenta que esto puede hacer que algunas aplicaciones web no estén operativas. La opción safe_mode se considera obsoleta y está en desuso en PHP 5.3.

Extensión ISAPI (solo Windows, no soportado a partir de PHP 5.3)

Elevado

Se ejecuta como una parte del servidor web IIS.

Baja

La extensión ISAPI puede proporcionar aislamiento del sitio en el caso de que se habilite un grupo de aplicaciones IIS dedicado para las suscripciones. Este aislamiento significa que los sitios de los distintos clientes ejecutan sus scripts por separado. Así, si se produce algún error en un script PHP, este no afectará al funcionamiento de los demás scripts. Además, los scripts PHP se ejecutan en nombre de un usuario de sistema asociado con una cuenta de hosting.

Nota: el controlador de la extensión ISAPI no es soportado a partir de PHP 5.3.

Aplicación CGI

Bajo.
Crea un proceso nuevo para cada petición y lo cierra cuando la petición ya ha sido procesada.

Baja

El controlador CGI proporciona ejecución de scripts PHP en nombre de un usuario de sistema asociado con una cuenta de hosting. En Linux, este comportamiento solo es posible si el módulo suEXEC del servidor web Apache está activado (la opción predeterminada). De lo contrario, todos los scripts PHP se ejecutan en nombre del usuarioapache.

Le recomendamos usar el controlador CGI únicamente como fall-back.

Aplicación FastCGI

Alto (cercano al módulo Apache y a la extensión ISAPI).

Conserva los procesos en ejecución para gestionar otras peticiones entrantes.

Alta

El controlador FastCGI ejecuta los scripts PHP en nombre de un usuario de sistema asociado con una cuenta de hosting.

Aplicación PHP-FPM (solo para Linux)

Alta

Baja

PHP-FPM es una versión avanzada de FastCGI que ofrece muchos beneficios en el caso de utilizar aplicaciones web con una carga elevada.

El controlador PHP-FPM solo está disponible si fue instalado por el proveedor de hosting y si la opciónProcesar PHP mediante nginx está activada en la configuración del sitio web (Sitios web y dominios > seleccione un dominio >Configuración del servidor web).

Nota: el hecho de cambiar PHP del módulo Apache a la aplicación FastCGI puede ocasionar la interrupción de la operatividad de los scripts PHP existentes. Asimismo, el hecho de cambiar PHP-FPM seleccionando Procesar PHP mediante nginx en la configuración del servidor web del sitio web puede tener el mismo resultado.

Fuente de información:http://download1.parallels.com/Plesk/PP12/12.0/Doc/es-ES/online/plesk-customer-guide/index.htm?fileName=70742.htm

Eliminar la version de Query Strings en JavaScript y CSS StyleSheet – WordPress

Hola!.

Cuando analizamos nuestros sitios Web a través de herramientas como Website Grader / GTmetrix  para aumentar el desempeño ( performace) de nuestros Sitios Web, los resultados muchas veces tienden a obtener una calificación baja, esto es por la razón de unos de los aspectos que debemos ajustar en nuestro Tuning, son los llamados a nivel de JAVASCRIPT y CSS los cuales tienen argumentos de la versión que utiliza el WordPress / CSS /Plugings entre otros.

Por ejemplo nos encontramos a través de nuestro FireBug  o los resultados de la herramienta lo siguiente:

argumentos

¿Cómo limpiamos facilmente esto de nuestro WordPress.?

Paso 1: Nos vamos a nuestro panel admninistrativo de WordPress (BackEnd)

Paso 2: Buscamos la opción de Apariencia – > Editor – > y Buscamos al lado Derecho el titulo “Funciones de Tema” ( functions.php)

funciones_tema

Paso 3: Le damos click, nos vamos al final del código fuente, y antes de que cierre la etiqueta de php “?>”, colocamos el siguiente codigo:

function _remove_script_version( $arg ){
	$parts = explode( '?', $arg );
	return $parts[0];
}

add_filter( 'script_loader_src', '_remove_script_version', 15, 1 );
add_filter( 'style_loader_src', '_remove_script_version', 15, 1 );

Paso 4: Guardamos!, y nuestro resultado deberia ser sin los argumentos.

sin-argumentos

Buena Suerte!

 

 

Validar mi sitio Web

Hola Colegas!.

Comparto con ustedes una muy buena herramienta para validar el website que estamos construyendo y obtener una calificación general de desempeño, la herramienta valida los siguientes aspectos:4-variables-WebSite GraderPor último proporciona las recomendaciones y pasos a seguir o lo que debes a hacer para aumentar la calificación gneral del Sitio Web.

Recurso: https://website.grader.com

Suerte.

Validar Correos Electrónicos de nuestros usuarios y/o clientes.

Hola Colegas!

Muchas veces cuando desarrollamos sistemas de información entre las funcionalidades primordiales del sistema es levantar un formulario de inscripción “el famoso proceso de registro” y el correo electrónico se convierte en el primer canal de comunicación entre nuestro sistema y el cliente, es importantísimo validar si el dato “email” brindado por el cliente verdaderamente existe.

Supongamos que nuestro sistema es un sistema de CRM ( Customer Relationship Management) y usualmente lo usamos para enviar notificaciones a nuestros prospectos y/o clientes, promociones, entre otros. Previo a este proceso de gestión podríamos aplicar un procedimiento de “aseguramiento de calidad”, es decir, que antes de registrar a nuestro cliente, persona contacto y/o usuario; dentro del proceso de registrar los datos podríamos validar si verdaderamente el buzón existe, pues bien! aquí les comparto una excelente herramienta que pueden incorporar a sus sistemas para que su comunicación sea más efectiva y no se dé cuenta que el correo registrado no existe o está malo en un proceso POST, y si no más bien en paso previo para aumentar la efectividad de comunicación.

Herramienta: http://verify-email.org/

API:http://verify-email.org/using-api.html

Buena Suerte!.

Ejemplo de como enviar arreglo Multidimensional Para NuSOAP

Hola Colegas!

Gracias a la consulta de una de mis visitantes, les comparto el ejemplo de como enviar un vector ó arreglo multidimensional con nusoap y que nuestro servicio (webService) lo pueda procesar, es muy similar al ejemplo que compartí anteriormente, únicamente con pequeñas variaciones.

Le vamos a enviar lo siguiente ( arreglo multidimensional):

	
$personas = array();
$personas[1] =  array('cedula' => '123A', 'nombre' => 'Juan',	'FechaNacimiento'	=> 1965);
$personas[2] =  array('cedula' => '123B', 'nombre' => 'Marcos',	'FechaNacimiento' 	=> 1980);
$personas[3] =  array('cedula' => '123C', 'nombre' => 'Pedro',	'FechaNacimiento' 	=> 1990);
$personas[4] =  array('cedula' => '123D', 'nombre' => 'Ana',	'FechaNacimiento'	=> 1995);
$personas[5] =  array('cedula' => '123F', 'nombre' => 'Maria',	'FechaNacimiento'	=> 1972);


Del lado del server nuestro código seria el siguiente:

<?php

// incluimos la libreria ó toolkit nusoap que descargamos previamente
require_once('lib/nusoap.php');

$server = new nusoap_server();

$server->configureWSDL('Mi Web Service', 'urn:mi_ws1');

// Parametros de entrada
$server->wsdl->addComplexType(  'datos_persona_entrada', 
                                'complexType', 
                                'struct', 
                                'all', 
                                '',
                                array('cedula'  		 	=> array('name' => 'cedula','type' => 'xsd:string'),
                                      'nombre'    			=> array('name' => 'nombre','type' => 'xsd:string'),
                                      'FechaNacimiento' 	=> array('name' => 'FechaNacimiento','type' => 'xsd:string'))
);
// Parametros de Salida
$server->wsdl->addComplexType(  'datos_persona_salida', 
                                'complexType', 
                                'struct', 
                                'all', 
                                '',
                                array('mensaje'   => array('name' => 'mensaje','type' => 'xsd:string'))
);


$server->register(	'calculo_edades', // nombre del metodo o funcion
					array('datos_persona_entrada' => 'tns:datos_persona_entrada'), // parametros de entrada
					array('return' => 'tns:datos_persona_salida'), // parametros de salida
					'urn:mi_ws1', // namespace
					'urn:hellowsdl2#calculo_edades', // soapaction debe ir asociado al nombre del metodo
					'rpc', // style
					'encoded', // use
					'La siguiente funcion recibe un arreglo multidimensional de personas y calcula las Edades respectivas segun la fecha de nacimiento indicada' // documentation,
					 //$encodingStyle
);


function calculo_edades($datos) {

	$msg = '';	
	// Recorro el arreglo de datos enviados
	foreach ($datos as $key => $value){
		
		$edad_actual = date('Y') - $value['FechaNacimiento'];
		$msg .= 'La edad de '. $value['nombre'] .' es:' . $edad_actual . ' años ==== <br />'; 
	}
	
	return array('mensaje' => $msg);
}

$HTTP_RAW_POST_DATA = isset($HTTP_RAW_POST_DATA) ? $HTTP_RAW_POST_DATA : '';
$server->service($HTTP_RAW_POST_DATA);
?>

Para consumir el servicio en PHP el código sería el siguiente:

<?php

	require_once('lib/nusoap.php');
	
	$personas = array();
	$personas[1] =  array('cedula' => '123A', 'nombre' => 'Juan',	'FechaNacimiento'	=> 1965);
	$personas[2] =  array('cedula' => '123B', 'nombre' => 'Marcos',	'FechaNacimiento' 	=> 1980);
	$personas[3] =  array('cedula' => '123C', 'nombre' => 'Pedro',	'FechaNacimiento' 	=> 1990);
	$personas[4] =  array('cedula' => '123D', 'nombre' => 'Ana',	'FechaNacimiento'	=> 1995);
	$personas[5] =  array('cedula' => '123F', 'nombre' => 'Maria',	'FechaNacimiento'	=> 1972);
	
	
	$cliente = new nusoap_client('http://www.mauricioalpizar.com/ejemplos/nusoap/ce_server.php');
	//print_r($cliente);
	
	$datos_persona_entrada = array( "datos_persona_entrada" => $personas);

	$resultado = $cliente->call('calculo_edades',$datos_persona_entrada);
	
    print_r($resultado);
	
?>

URL para probar el resultado del código anterior:

http://www.mauricioalpizar.com/ejemplos/nusoap/ce_cliente.php

WSDL del WebService: http://www.mauricioalpizar.com/ejemplos/nusoap/ce_server.php?WSDL

Buena Suerte!!!.


					
				
	

Marcos y Guías para la planificación y gestión de Proyectos.

Hola Coleg@s!
Les comparto algunos marcos y guías para la planificación y gestión de proyectos en forma general con links donde puedes obtener información adicional. Existen muchos otros para estos propósitos, los que mencionó aquí son una pequeña parte que puede ayudar a ampliar sus conocimientos.

ITIL ( international Technology Infraestructure Library ): Es un marco de trabajo que agrupa las mejores prácticas obtenidas consolidando una amplia experiencia a nivel mundial, para la entrega de servicios de tecnologías de información en las empresas.
URL: https://www.axelos.com/best-practice-solutions/itil/what-is-itil

TSP ( Team  Software Process): Definición de procesos y practicas para proyectos de desarrollo de software realizada por el Carnegie Mellon Software Engineering Institute (SEI), El SEI es el creador del CMM y CMMI, modelos de calidad de gran prestigio y aceptación en el mundo para organizaciones que desarrollan software, en cuyas practicas se basa el TSP.
URL: http://www.sei.cmu.edu/tsp/

ATAM ( Architecture Tradeoff Analysis Method): Es una técnica que permite analizar arquitecturas de software. Esta técnica se puede aplicar como mecanismo de análisis de una arquitectura previo a un diseño, o como mecanismo de diagnostico y evaluación de una arquitectura ya diseñada, Fue definida igualmente por el SEI.
URL: http://www.sei.cmu.edu/architecture/tools/evaluate/atam.cfm

RUP  ( Rational Unified Process): Definición de procesos y prácticas para desarrollo de software de IBM, que igualmente cuenta con amplia difusión y aceptación a nivel mundial.
URL: http://www.ibm.com/developerworks/rational/library/content/03July/1000/1251/1251_bestpractices_TP026B.pdf
Guía del PMBOK, PMI: Es un marco que contiene el estándar y que es reconocido a nivel global para la profesión de dirección de proyectos, contiene y describe normas, métodos y procesos establecidos a partir de buenas practicas reconocidas por profesionales que se han dedicado a la dirección de proyectos.
URL: https://americalatina.pmi.org/

Buena Suerte!.

Ampliar Conocimientos en Android, JavaScript y HTML

Hola Coleg@s.

Les comparto para los que no conocen a NextU, este es un sitio de elearning para ampliar los conocimientos en Android, JavaScript y HTML, y lo más interesante es que al final del curso recibes un certificado, yo personalmente me inscribí en el curso de Android, el curso inicia con un marco conceptual bastante bueno de JAVA, muy comprensible para los que no estan muy familiarizados con la programación, para lo que ya estan inmersos en este campo, pues refrescar conceptos no cae nada mal.

Otra aspecto interesante es que es brindando en lenguaje latino, por lo que puedes comprender y captar algunos aspectos con mayor claridad de los temas que el profesor brinda.

Les adjunto el link http://www.nextuniversity.com/ y  si  tienes las posibilidades económicas de aquirirlo, ni lo pienses!; Pues en este tipo de temas un certificado que le respalde es de suma importancia para su hoja de vida profesional.

Buena Suerte.

Encriptar mi código fuente de PHP.

Hola Colegas!.

Algún tiempo atrás por no decir años, construí/desarré un código en PHP, el software quedó bastante bien, y pues bien! mi cliente quedo satisfecho con la solución. Poco tiempo después me dice, Mau!, voy a vender el software pero necesito que mi código quede codificado/encriptado para que no lo copien, Ah pues bien! no sabía como hacer eso, tuve que investigar y me encontré una solucion llamada ioncube “Buenisima!” dicho sea de paso, trabajo con ella desde la version 4 ó 5, no recuerdo bien, pero ya van por la version PHP Encoder 8 que fue liberada el pasado Mayo; y tiene soporte en la codificación para software que se encuentre en versión de PHP 5.4, incluso  puedes encriptar el código desde el servicio Web que tienen ellos, basicamente el servicio lee tu código fuente, y lo encripta, la licencia no es gratuida tiene un costo base de $199 con soporte en varios arquitecturas ( Win32, FreeBSD, OS X, Linux (x86) 32/64 bit.

Pues bien! les comparto esta herramienta para que sepan que también se puede proteger el código desarrollado en PHP.:

URL: https://www.ioncube.com/

Buena suerte!.

Obtener la Mayor Fecha de un conjunto de datos en MySQL

Hola Colegas, comparto el siguiente código SQL en MySQL para un caso interesante que tuve que resolver para un proceso que me solicitaron en un requerimiento de software. El requerimiento era que el sistema debia enviar un recordatorio por correo electrónico a todos aquellos pacientes que su última visita médica fuese hace un año exacto. La fórmula basicamente vendría siendo HOY – 1 año y verificar que la fecha concidiera con la ultima visita del paciente.

En primera instancia realicé el SQL que me devolviera la lista de pacientes con su última visita médica.

SELECT
	fk_id_paciente,
	MAX(DATE_FORMAT(fecha_cita, '%Y-%m-%d')) AS ULTIMA_VISITA
FROM
	cita
WHERE
	1
GROUP BY
	fk_id_paciente;

Luego, realicé otro SQL que anidara el SQL anterior “como una tabla temporal” para poder realizar el calculo/formula de la fecha actual menos un año y verificara el resultado de mi primer SQL junto con el id del paciente. De manera que al unir los dos SQL obtuve el resultado que andaba buscando.

SELECT * FROM pacientes, 

	(
		SELECT MAX(DATE_FORMAT(fecha_cita,'%Y-%m-%d')) AS ULTIMA_VISITA,
					 fk_id_paciente 
					 FROM cita 
					 WHERE 
1    
		GROUP BY fk_id_paciente
) as TMP 

WHERE 
DATE_ADD(CURDATE(),INTERVAL -1 YEAR) = TMP.ULTIMA_VISITA 
AND TMP.fk_id_paciente = pacientes.id_pacientes;

Buena Suerte!