lunes, 17 de diciembre de 2018

NASM

NASM(The Netwide Assembler)

Es un  ensamblador libre  x80x86 y x86-64 diseñado para tener potabilidad, modularidad, es potable para cualquier sistema operativo y de fácil uso, debido a que esta diseñado para ser simple de usar.

Ejemplo de código ensamblador para obtener los números primos de un rango especifico

%include "asm_io.inc"
segment .data
Message db "Halle primos hasta: ", 0

segment .bss
Limit resd 1 ; halle primos hasta este l´ımite
Guess resd 1 ; la conjetura actual para el primo

segment .text
 global _asm_main
 _asm_main:
 enter 0,0 ; rutina de inicio
 pusha

 mov eax, Message
 call print_string
 call read_int ; scanf("%u", & limit );
 mov [Limit], eax

 mov eax, 2 ; printf("2\n");
 call print_int
 call print_nl
 mov eax, 3 ; printf("3\n");
 call print_int
 call print_nl

 mov dword [Guess], 5 ; Guess = 5;
 while_limit: ; while ( Guess <= Limit )
 mov eax,[Guess]
 cmp eax, [Limit]
 jnbe end_while_limit ; use jnbe ya que los n´umeros son sin signo

 mov ebx, 3 ; ebx is factor = 3;
 while_factor:
 mov eax,ebx
 mul eax ; edx:eax = eax*eax
 jo end_while_factor ; Si la respuesta no cabe en eax
 cmp eax, [Guess]
 jnb end_while_factor ; if !(factor*factor < guess)
 mov eax,[Guess]
 mov edx,0
 div ebx ; edx = edx:eax % ebx
 cmp edx, 0
 je end_while_factor ; if !(guess % factor != 0)

 add ebx,2 ; factor += 2;
 jmp while_factor
 end_while_factor:
 je end_if ; if !(guess % factor != 0)
 mov eax,[Guess] ; printf("%u\n")

 call print_int
 call print_nl
 end_if:
 add dword [Guess], 2 ; guess += 2
 jmp while_limit
 end_while_limit:

 popa
 mov eax, 0 ; retorna a C
 leave
 ret

Para compilar en windows haga uso de los siguientes comandos:
nasm -f prime.asm  
gcc -o prime prime.obj driver.c asm_io.obj 
prime.exe

El primer comando generara el archivo objeto en formato .obj para windows en caso de ser linux use -coff
El segundo comando enlaza los objetos para generar un ejecutable, note que antes de ejecutar el comando debe ya contar con el archivo drivers.c y asm_io.obj, los cuales se obtienen de los links mencionados en las referencias.


referencias:
https://es.wikipedia.org/wiki/Netwide_Assembler
Libro Lenguaje Ensamblador para PC
Paul A. Carter
18 de octubre de 2006
Recursos en Internet mencionados en el libro
Pagina del autor http://www.drpaulcarter.com/
Pagina de NASM en SourceForge http://sourceforge.net/projects/nasm/
DJGPP http://www.delorie.com/djgpp
Ensamblador con Linux http://www.linuxassembly.org/
The Art of Assembly http://webster.cs.ucr.edu/
USENET comp.lang.asm.x86
Documentación de Intel http://developer.intel.com/design/Pentium4/documentation.htm

Gas(GNU) Assembler


El gas, o GNU Assembler, es el ensamblador del proyecto GNU. Es el back end por defecto del GNU Compiler Collection y es usado para compilar Linux y otros sistemas operativos como el sistema operativo GNU
El gas puede ejecutar como también generar ensamblados para un número diferente de arquitecturas. Inicialmente utilizaba únicamente la sintaxis de AT&T en lugar de la sintaxis de Intel usada en muchos otros ensambladores, sin embargo, las últimas versiones soportan dicha sintaxis.

Ejemplo calculadora de dos números(suma, resta, multiplicación y división).

.def ___main; .scl 2; .type 32; .endef
.section .rdata,"dr"
LC2:
.ascii "Ingrese numero uno\0"
LC3:
.ascii "%f\0"
LC4:
.ascii "Ingrese numero dos \0"
LC5:
.ascii "cls\0"
.align 4
LC6:
.ascii "1.- Para sumar los dos numeros \0"
.align 4
LC7:
.ascii "2.- Para restar los dos numeros \0"
.align 4
LC8:
.ascii "3.- Para multiplicar los dos numeros \0"
.align 4
LC9:
.ascii "4.- Para dividir los dos numeros \0"
LC10:
.ascii "5.- salir\0"
LC11:
.ascii "%d\0"
LC12:
.ascii "La suma es: %f\0"
LC13:
.ascii "La resta es: %f\0"
LC14:
.ascii "La multiplicacion  es: %f\0"
LC15:
.ascii "La division es: %f\0"
LC16:
.ascii "Opcion no valida \0"
.text
.globl _main
.def _main; .scl 2; .type 32; .endef
_main:
pushl %ebp
movl %esp, %ebp
andl $-16, %esp
subl $48, %esp
call ___main
movl $0x00000000, %eax
movl %eax, 36(%esp)
movl $0x00000000, %eax
movl %eax, 32(%esp)
movl $0, 28(%esp)
movl $0, %eax
movl $0, %edx
movl %eax, 40(%esp)
movl %edx, 44(%esp)
movl $LC2, (%esp)
call _puts
leal 36(%esp), %eax
movl %eax, 4(%esp)
movl $LC3, (%esp)
call _scanf
movl $LC4, (%esp)
call _puts
leal 32(%esp), %eax
movl %eax, 4(%esp)
movl $LC3, (%esp)
call _scanf
L10:
movl $LC5, (%esp)
call _system
movl $LC6, (%esp)
call _puts
movl $LC7, (%esp)
call _puts
movl $LC8, (%esp)
call _puts
movl $LC9, (%esp)
call _puts
movl $LC10, (%esp)
call _puts
leal 28(%esp), %eax
movl %eax, 4(%esp)
movl $LC11, (%esp)
call _scanf
movl 28(%esp), %eax
cmpl $5, %eax
ja L2
movl L8(,%eax,4), %eax
jmp *%eax
.section .rdata,"dr"
.align 4
L8:
.long L2
.long L3
.long L4
.long L5
.long L6
.long L7
.text
L3:
movl 32(%esp), %edx
movl 36(%esp), %eax
movl %edx, 4(%esp)
movl %eax, (%esp)
call _suma
fstpl 40(%esp)
movl 40(%esp), %eax
movl 44(%esp), %edx
movl %eax, 4(%esp)
movl %edx, 8(%esp)
movl $LC12, (%esp)
call _printf
call _getch
jmp L9
L4:
movl 32(%esp), %edx
movl 36(%esp), %eax
movl %edx, 4(%esp)
movl %eax, (%esp)
call _resta
fstpl 40(%esp)
movl 40(%esp), %eax
movl 44(%esp), %edx
movl %eax, 4(%esp)
movl %edx, 8(%esp)
movl $LC13, (%esp)
call _printf
call _getch
jmp L9
L5:
movl 32(%esp), %edx
movl 36(%esp), %eax
movl %edx, 4(%esp)
movl %eax, (%esp)
call _multiplicacion
fstpl 40(%esp)
movl 40(%esp), %eax
movl 44(%esp), %edx
movl %eax, 4(%esp)
movl %edx, 8(%esp)
movl $LC14, (%esp)
call _printf
call _getch
jmp L9
L6:
movl 32(%esp), %edx
movl 36(%esp), %eax
movl %edx, 4(%esp)
movl %eax, (%esp)
call _division
fstpl 40(%esp)
movl 40(%esp), %eax
movl 44(%esp), %edx
movl %eax, 4(%esp)
movl %edx, 8(%esp)
movl $LC15, (%esp)
call _printf
call _getch
jmp L9
L7:
movl $1, (%esp)
call _exit
L2:
movl $LC16, (%esp)
call _puts
L9:
movl 28(%esp), %eax
cmpl $5, %eax
jne L10
movl $0, %eax
leave
ret
.globl _suma
.def _suma; .scl 2; .type 32; .endef
_suma:
pushl %ebp
movl %esp, %ebp
flds 8(%ebp)
fadds 12(%ebp)
popl %ebp
ret
.globl _resta
.def _resta; .scl 2; .type 32; .endef
_resta:
pushl %ebp
movl %esp, %ebp
flds 8(%ebp)
fsubs 12(%ebp)
popl %ebp
ret
.globl _multiplicacion
.def _multiplicacion; .scl 2; .type 32; .endef
_multiplicacion:
pushl %ebp
movl %esp, %ebp
flds 8(%ebp)
fmuls 12(%ebp)
popl %ebp
ret
.globl _division
.def _division; .scl 2; .type 32; .endef
_division:
pushl %ebp
movl %esp, %ebp
flds 8(%ebp)
fdivs 12(%ebp)
popl %ebp
ret
.def _puts; .scl 2; .type 32; .endef
.def _scanf; .scl 2; .type 32; .endef
.def _system; .scl 2; .type 32; .endef
.def _printf; .scl 2; .type 32; .endef
.def _getch; .scl 2; .type 32; .endef
.def _exit; .scl 2; .type 32; .endef




A continuación para compilarlo usar:
gcc -o calculadora -m32 calcauladora.s

Generara un ejecutable windows .exe y a continuación ingresar dos números y proceder con las operaciones.



Referencias:
https://es.wikipedia.org/wiki/GNU_Assembler
GAS Manual



jueves, 13 de septiembre de 2018

Desarrollo Agil


El desarrollo Ágil es una relativamente una nueva tendencia en los procesos y procedimientos  de desarrollo de software, nacida en estados unidos en el año 2001 establecida por distinguidos y expertos desarrolladores de software, veteranos que tienen empresas propias de consultoría y desarrollo como Wingman Software, trains, coaches and consults worldwide, y prestan sus servicios a gigantes como google y facebook.

La tendencia agile se origino a partir de las experiencias propias vividas por los desarrolladores, que se percataron de una variada serie de áreas de oportunidad en los procesos tradicionales de desarrollo de software, es así como crearon un manifiesto, principios y proceso ágiles, el cual esta reforzado con diferentes técnicas(TDD,Units,automatización) y metodologías como xp y scrum. 

Si quieres conocer a los firmantes y autores del manifiesto ágil consulta autores del manifiesto ágil 

Manifiesto por el Desarrollo Ágil de Software

Estamos descubriendo formas mejores de desarrollar
software tanto por nuestra propia experiencia como
ayudando a terceros. A través de este trabajo hemos
aprendido a valorar:

Individuos e interacciones sobre procesos y herramientas
Software funcionando sobre documentación extensiva
Colaboración con el cliente sobre negociación contractual
Respuesta ante el cambio sobre seguir un plan

Esto es, aunque valoramos los elementos de la derecha,
valoramos más los de la izquierda.
Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham
Martin Fowler
James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern
Brian Marick
Robert C. Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave Thomas

© 2001, los autores mencionados
mediante esta nota se autoriza la copia y
distribución de esta declaración a través de
cualquier medio pero sólo de forma íntegra.

Principios del Manifiesto Ágil


Seguimos estos principios:Nuestra mayor prioridad es satisfacer al cliente
mediante la entrega temprana y continua de software
con valor.
Aceptamos que los requisitos cambien, incluso en etapas
tardías del desarrollo. Los procesos Ágiles aprovechan
el cambio para proporcionar ventaja competitiva al
cliente.
Entregamos software funcional frecuentemente, entre dos
semanas y dos meses, con preferencia al periodo de
tiempo más corto posible.
Los responsables de negocio y los desarrolladores
trabajamos juntos de forma cotidiana durante todo
el proyecto.
Los proyectos se desarrollan en torno a individuos
motivados. Hay que darles el entorno y el apoyo que
necesitan, y confiarles la ejecución del trabajo.
El método más eficiente y efectivo de comunicar
información al equipo de desarrollo y entre sus
miembros es la conversación cara a cara.
El software funcionando es la medida principal de
progreso.
Los procesos Ágiles promueven el desarrollo
sostenible. Los promotores, desarrolladores y usuarios
debemos ser capaces de mantener un ritmo constante
de forma indefinida.
La atención continua a la excelencia técnica y al
buen diseño mejora la Agilidad.
La simplicidad, o el arte de maximizar la cantidad de
trabajo no realizado, es esencial.
Las mejores arquitecturas, requisitos y diseños
emergen de equipos auto-organizados.
A intervalos regulares el equipo reflexiona sobre
cómo ser más efectivo para a continuación ajustar y
perfeccionar su comportamiento en consecuencia.


En la practica ¿Porque dar mas valor a los elementos de la izquierda que a los de la derecha? 


Individuos e interacciones sobre procesos y herramientas



¿Cuantas veces? descubres mejores formas de hacer desarrollo y cuando las compartes escuchas las siguientes frases: 
"Debes apegarte al proceso", "Así se hacen las cosas aquí", "El director ya dijo", "El dueño no va a aceptar"  ,"Pues esta muy interesante y todo pero esto tiene que salir hoy".

Siempre es diferente un proceso de desarrollo de software que un procesos de manufactura de un producto finaal


Debido a esta diferencia, es mas importante la interacción entre todos los elementos que participan en el desarrollo del sistema, para tener una constante adaptación al cambio y generar mas calidad.

Software funcionando sobre documentación extensiva


La realidad es que nunca , de los nunca nadie jamas lee la documentación y mucho menos cuando es exagerada, y por asares del destino se encuentra des-actualizada, sin embargo por el miedo a la rotación de personal, las empresas se aseguran que se realice la documentación , aunque al momento de necesitar una modificación en el sistema decidan mejor re-hacer el sistema .

 La elaboración de la documentación es por cuenta del desarrollador, siempre es mas barato que el mismo la realice en jornadas laborales extensas, restando le tiempo y capacidad  para enfocarse en el desarrollo que es su actividad principal. 

Sin embargo por medio de técnicas TDD siempre la prueba automatizada es la documentación viviente y actualizada  de lo que hace el sistema, solo se debe hacer la documentación necesaria y de la forma mas simple posible.

Colaboración con el cliente sobre negociación contractual


¿Cuantas veces por medio de una simple pregunta te das cuenta de que el cliente no sabe ni lo que quiere?

¿Cuantas veces pasa que terminas a tiempo el sistema? pero no es lo que el cliente necesitaba. El cliente muy molesto te dice que no es lo que solicito y tu le respondes, esta en el contrato y tu lo firmaste, tener un cliente satisfecho es mas importante que  cumplir un contrato, y por medio de la colaboración con el cliente puede lograrse.Ademas esto no significa que no se elabore contrato.


Respuesta ante el cambio sobre seguir un plan


Es muy común en el desarrollo los cambios de ultima hora, y por eso se debe tener una actitud y capacidad de adaptación.


La dificultad de aplicarlas:

En la mayoría de las empresas es muy difícil implementar metodologías ágiles debido a que el desarrollo ágil es un proceso que inicia desde abajo en una jerarquía empresarial, es decir el equipo de trabajo (desarrolladores, scrum master, y product owner), deciden en base a los requerimientos priorizados, cuales serán los tiempos de entrega y que tanto se pueden comprometer a terminar un sistema. 

Estas estimaciones se le hacen conocer a gerentes, directores, clientes y a todos los interesados.Pero no lo aceptan, pues ellos se basan en indicadores(establecidos por ellos mismos, desconociendo N variables del requerimiento), por lo que de no haber una buena negociación es muy difícil llevarla a cabo. 

A pesar de que la tendencia agile lleva 17 años de aplicarse de forma exitosa y mostrando grandes resultados, muchas empresas siguen manejando las técnicas tradicionales(ISO,CMMI ) en cascada, o simplemente comprometiendo tiempos imposibles, porque el cliente así lo solicita o porque el gerente pide que se termine en un tiempo imposible y todo el equipo de trabajo no tenga mas remedio que tratar de conseguirlo, aunque siempre terminando el sistema con muy mala calidad, pues sabemos que la regla de la calidad es que a mayor producción, menor calidad, y una baja calidad en un sistema puede ser fatal en el futuro,pues con un mal diseño y arquitectura de tu software, tu sistema se puede volver in-mantenible o costar mucho esfuerzo continuar desarrollándolo.

En las tendencias ágiles es muy importante tener a tu equipo, auto-motivado, capacitado y confiar en el para el desarrollo del sistema, pero para muchas empresas es muy difícil de lograr.

Referencia:
"http://agilemanifesto.org/iso/es/principles.html"



domingo, 17 de junio de 2018




Yandex vs Google

Sabemos que en la actualidad uno de los gigantes de Internet es Google, donde por definición es una compañía cuya especialización son los productos y servicios relacionados con Internetsoftwaredispositivos electrónicos y otras tecnologías.




Pero desde siempre google ha tenido a su homologo Ruso de nombre Yandex donde para ambos su producto inicial y principal es su buscador.
En comparación estos son los servicios con los que cuentan:




Producto/ Servicio Google Yandex
Buscador x x
Mail x x
Desarrollo de auto inteligente x x
Servicio de transporte(Como uber) x
Traductor x x
Maps x x
Analitics x x
Almacenamiento x x
Videos x x
Explorador Web x x
Servicios Cloud x x
Red social x
hangout x
Pequeñas aplicaciones(calendar, keep, blog, etc) x
SO para dispositivo movil x

Conclusión
Yandex tiene casi los mismos servicios, sin embargo en usabilidad, idioma y robustez, google es mas completo. En cuestiones de precio,  yandex es mas barato, algo que se puede destacar es que ambos países tienen empresas lideres en el mercado, google abarcando todo el continente americano, y yandex todo europa, por lo que no es muy conocido en américa, tambien algo importante es que son el mismo concepto, pero desarrollado de forma diferente, lo que abre camino a la diversidad y motiva a la mejora e inspiración, dudo mucho que un día México mi país, pueda tener una empresa con la capacidad como yandex o google.

Saludos y gracias por pasarte a leer mi blog, si deseas pasarte a conocer yandex te dejo el link.





miércoles, 4 de abril de 2018

La Adicción al trabajo

La adicción al trabajo una dependencia respetable.


Les quiero hablar acerca de este libro que me encontré en un bazar, de una psicóloga clínica Inglesa  BARBARA KILLINGER que publico este libro en 1991.

Conteste este formulario para determinar si es adicto al trabajo
Este formulario no guarda datos, solo arroja el resultado sin guardar ningún dato.

¿Su trabajo es muy importante para usted?
Si
No
¿Le gustan que las cosas sean "perfectas"?
Si
No
¿Tiene tendencia a verlo todo blanco o negro, nunca gris?
Si
No
¿Es competitivo y por lo general está decidido a ganar?
Si
No
¿Es importante para usted tener razón?
Si
No
¿Es excesivamente crítico consigo mismo si comete un error?
Si
No
¿Siente temor a fracasar?
Si
No
¿Es inquieto, impulsivo y se aburre con facilidad?
Si
No
¿Trabaja demasiado y tiene una gran energía?
Si
No
¿Sufre de ataques periódicos de extrema fatiga?
Si
No
¿Se lleva la cartera a casa y trabaja por la noche o durante los fines de semana?
Si
No
¿Se siente inquieto o culpable si no tiene nada mas que hacer?
Si
No
¿Piensa usted que es una persona especial o diferente de los demás?
Si
No
¿Lee material relacionado con el trabajo cuando come solo?
Si
No
¿Confecciona una lista de las cosas que tiene que hacer o lleva un diario?
Si
No
¿Cada vez le resulta mas difícil tomarse unas vacaciones prolongadas?
Si
No
¿Con frecuencia se siente agobiado por la prisa o con una sensación de urgencia?
Si
No
¿Se mantiene en contacto con la oficina mientras está de vacaciones?
Si
No
¿"Trabaja" mientras juega y se enfada si no juega bien?
Si
No
¿Evita hacer planes para cuando esté jubilado?
Si
No
¿Es responsable en el trabajo pero no en las cuestiones personales?
Si
No
¿Trata de evitar el conflicto, en vez de tratar de resolverlo?
Si
No
¿Actúa de forma impulsiva sin tener en cuenta los efectos de ello sobre los demás?
Si
No
¿Tiene miedo al rechazo y a la crítica, y sin embargo juzga y critica?
Si
No
¿Cada vez recuerda menos lo que dicen los demás?
Si
No
¿Se enfada si las cosas no resultan como esperaba?
Si
No
¿Le molesta que lo interrumpan ya sea en el trabajo o el hogar?
Si
No
¿Crea situaciones de presión con plazos auto-impuestos?
Si
No
¿Se concentra en hechos futuros en vez de disfrutar del presente?
Si
No
¿Olvida o les da poca importancia a las reuniones o celebraciones familiares?
Si
No


El termino whorkaholic(adicto al trabajo) aun se utiliza de forma vaga, esta adicción comúnmente es  bien vista. Se suele decir o pensar que la persona que trabaja de mas lo hace porque es muy responsable.Pero lo cierto es que esta adicción arruina vidas, destruye familias y causa insatisfacción y desdicha.

La adicción al trabajo no significa trabajar muchas horas, hay quienes trabajan horas extras por necesidad, pues están pasando por una vida difícil en la economía, pero la mayoría de las veces estas personas logran encontrar un equilibrio en su vida.La adicción al trabajo trata de aquellos que gozan y buscan el poder y el control.

Cualquiera puede ser adicto al trabajo(Amas de casa, gerentes, directores, trabajadores) , un adicto al trabajo es una persona que gradualmente va perdiendo estabilidad emocional y se va convirtiendo en un adicto al control y al poder , en un intento compulsivo de lograr aprobación y éxito.La obsesión por el trabajo surge de su naturaleza perfeccionista y competitiva, el trabajo excesivo con el incremento de adrenalina que produce , atrapa al adicto y una necesidad compulsiva de aprobación lo impulsa a mantenerse ocupado , a ser productivo y a disfrutar de los elogios que recibe el trabajo duro en nuestra sociedad, el trabajo es la droga que lo libera del dolor de la ira , del resentimiento de la culpa y del miedo.Que luego es proyectada a los seres mas cercanos , todo lo que funciona mal es por culpa de otra persona , estar en lo correcto es extremadamente importante: Le permite controlar el miedo externo y contrarrestar el caos interno.Dado que carece de una psique equilibrada , su perspectiva respecto del verdadero significado del valor de la vida y del amor se ve distorsionada. Las defensas de la negación y de la deshonestidad  no le permiten reconocer que ha perdido la salud mental y espiritual.
Gradualmente, el narcisismo y la paranoia van creciendo y modificando su personalidad.

La adicción al trabajo puede ser igual dañina que el alcoholismo.

El trabajo es extremadamente adictivo , pero a diferencia de la drogadiccion cuenta con la aprobación de la sociedad.

La mayoría trabaja hasta que la enfermedad o una crisis en el trabajo o en la familia quiebra la negación y obliga al reconocimiento.

Al buscar la aprobación  de los demás, sacrificas tu vida personal, familiar, intima, y lo justificas con la razón, obligándote a pensar que lo haces por la familia, o porque tu labor es muy importante y no puede esperar mas, cuando en el fondo solo quieres sentir aprobación de los demás.

Empresas enteras se han convertido en semillero de esta adicción, alentándola entre sus ejecutivos y empleados.

Los orígenes de esta adicción pueden ser los siguientes:

Familias disfuncionales


  • Se enseña a los hijos que no está bien hablar de problemas.
  • La familia no cree que se deban expresar los sentimientos abiertamente
  • La comunicación entre los miembros de la familia es habitualmente indirecta y se realiza a través de una persona que actúa como mensajero de las otras dos.
  • Los hijos reciben el mensaje de que deben ser fuertes, buenos, correctos y perfectos 
  • Los padres esperan que los hijos los hagan sentir orgullosos
  • No seas egoísta es una advertencia común de los padres.
  • A los hijos se les enseña debes hacer lo que digo y no lo que hago.
  • Los hijos aprenden que jugar no es algo bueno
  • A los hijos se les prohíbe indagar mas allá 

Nuestra misma sociedad que ya es adicta al trabajo, pues adoctrina a que el trabajo es una virtud.

Que personalidad tiene el adicto al trabajo?


  • Perfeccionista
  • Arrogante
  • Ambicioso
  • Competitivo
  • Exigentes consigo mismos y con los demás
  • Faltos de empatía y compasión

Independientes y auto suficientes en apariencia, requieren la admiración de los demás y exigen obediencia, bajo esta fachada de confianza en si mismos existe inseguridad, originada en las luchas internas inconscientes por superar los miedos de la infancia ante la debilidad, la dependencia y la perdida de aprobación y afecto.

Hay tres tipos de adictos

El controlador: Es perfeccionista, rigido, casi no duerme  y constantemente humilla y desprestigia a los trabajadores, suele buscar la independencia, no trabaja en equipo y le gusta controlar cada movimiento. Este tipo de adictos suelen ocupar cargos de gerentes o directores o dueños de empresas o altos cargos de gobierno.
El narcisista controlador: Igual que el controlador, pero no siente empatía ni compasión por los demás y solo le importa el mismo.

Complaciente: Acepta cualquier cargo o asignación sin importar su salud, su familia, sus medios de esparcimiento, acepta todo con tal de buscar complacer, debido a que busca aceptación y reconocimiento,  acumulando la frustración hasta que afecta a su familia o a su salud.


Recomendaciones para superar la adicción al trabajo


Reconozca su propia adicción al trabajo
Reconozca su ira
Desarrolle una capacidad de escuchar afectiva
Sea autentico
Busque su espiritualidad
Busque ayuda profesional
Libérese del miedo al fracaso
Libérese de la tiranía del reloj, deje de buscar el perfeccionismo.
Póngase en contacto con su cuerpo
Escuche a su cuerpo
El juego debe ser diversión y el ocio una fuente de placer( No de competencia).
Aprenda a decir que no
Reparta su energía en varias actividades de diferentes índoles
Fije tiempos con su familia de forma regular
Salga de viaje en compañía
Establezca limites de horario.



Referencia:
  • Barbara Killinger
  • 1991
  • La adicción al trabajo una dependencia respetable
  • España.
  • Ediciones Paidós Ibérica , S.A