¿Ahora Python?
Por qué migro PPIA desde TypeScript
El MVP que funcionó: PPIA v1.x en TypeScript
PPIA (Playwright Page Inspector with AI) empezó como un experimento. Un MVP desarrollado en TypeScript para generar tests E2E a partir de especificaciones Gherkin usando Claude MCP y GPT-4.
Estado actual (v1.5 TypeScript)
✅ Funcional como herramienta
✅ Product Owners escribiendo tests en Gherkin
✅ Integración en CI/CD con feedback en cada PR
Stack tecnológico v1.x:
TypeScript → Playwright → OpenAI API → Gherkin Parser
Funcionaba. Funcionaba muy bien.
Entonces... ¿por qué migrarlo?
El punto de inflexión: POM-PPIA demuestra el potencial de Python
Diciembre 2025. Mientras desarrollo PPIA v1.x en TypeScript, necesito una pieza específica: un generador automático de Page Object Models desde tests declarativos.
Decido experimentar con Python. Nace POM-PPIA 🐍
🔗 GitHub: https://github.com/joseguillermomoreu-gif/pom-ppia
Stack:
- Python 3.12+ con type hints estrictos (mypy)
- OpenAI GPT-4 para análisis inteligente
- Arquitectura Hexagonal desde el inicio
- CLI interactiva con Rich UI
Resultado: Funcionó tan bien que cambió mi perspectiva completamente.
Por qué Python: 5 razones arquitectónicas
1. Ecosistema IA/ML infinitamente superior
Python:
- LangChain: Framework para apps con LLMs (memory, chains, agents)
- Transformers: Modelos Hugging Face
- spaCy: NLP avanzado
TypeScript:
- OpenAI SDK básico, ecosistema inmaduro
Veredicto: Python gana por K.O.
2. Memoria conversacional nativa
from langchain.memory import ConversationBufferMemory
memory = ConversationBufferMemory()
# Primera consulta
response1 = chat.predict("Analiza la página de login")
memory.save_context({"input": "..."}, {"output": response1})
# Segunda consulta CON CONTEXTO ✅
response2 = chat.predict("Ahora genera el POM", memory=memory)
# GPT recuerda el análisis previo
3. Gestión de prompts como código
from langchain import PromptTemplate
base_analysis = PromptTemplate.from_template(
"""Analiza {component_type} en {url}.
Extrae: {extraction_criteria}
Formato: {output_format}
"""
)
Resultado: Prompts DRY, versionados, testeables.
4. Análisis iterativo con ML
Python permite ML + GPT + memoria conversacional en el mismo flujo, de forma natural y con librerías maduras.
5. GHERKIN PPIA: Solo posible en Python
El generador inverso (URL → Gherkin automático) requiere ML para detectar patrones, NLP para generar lenguaje natural, y análisis iterativo con memoria. En TypeScript, imposible. En Python, natural.
Nueva arquitectura: PPIA v2.0
Python Core (análisis, IA, memoria) + TypeScript Generator (generación de código Playwright) comunicados via API REST.
- Python maneja lo que hace mejor: IA, ML, NLP
- TypeScript maneja lo que hace mejor: generación de código Playwright
- Cada capa testeable independientemente
Conclusión: Arquitectura sobre religión
TypeScript me dio el MVP. Validé el concepto, llegué a producción.
Python me dará la herramienta definitiva: análisis iterativo real, ML integrado, GHERKIN PPIA.
La pregunta no es "¿TypeScript o Python?". Es "¿qué lenguaje me permite construir la mejor solución para este problema?"
Para PPIA, esa respuesta es Python.
🐍 POM-PPIA: https://github.com/joseguillermomoreu-gif/pom-ppia