Presenting ajlopezNo Comments
After years of visiting Southworks facilities as a vendor, the company gaves me this blog. Now I have another blog to write my crazy things!
So, this is my personal presentation, written in Anglish (Angel’s English) ;-). It’s composed of comments about my interests and idiosyncrasies, so I hope other southies could understand me better. I’m usually so concentrated in my duties (my twitter, you know… ;-), that I miss many opportunities to keep in touch with southy bunch.
I fell in love with software development during my teenage years. Thirty years ago, I started programming, with COBOL and IBM/360 assembly language. Oh, those days! Anything was new to me. And, after three decades, I still have that attitude. It was (and it is) a wonderful world to explore. I should write about those early years in another post. I’ve worked with CP/M, mini computers, Pick System, first DOSes, BTOS emulating Pick emulating DOS, Windows without overlapping Windows and only four colors… ;-). I wrote programs using many languages, from C to Smalltalk to many assembler flavors, from Pascal to APL to Forth to Lisp to dBase to VB to … and so on.
I’m interested in programming languages and software architecture. My interest in programming languages is motivated from my interest in language, logic and mathematics. There are so many interesting way to express ideas and algorithms. Software architecture is a wide field, but I like it because it pushes me to raise levels of abstraction. After experiencing so many technologies, platforms and tools, I grasp a sense of abstraction: the way to separate the important things from the technicalities. It’s a rewarding activity, something that regards me mathematic activity.
I had my nickname, Angel “Java” Lopez, since the mid nineties: I became a Java evangelist, and even wrote a book about the Java programming language. In this XXI century, I received .NET as refreshing air. Java and .NET are mature technologies, that give us the power to write better and powerful software. Now, we can write software, without fighting againts technology weird limitations.
Years ago, I read Isaac Asimov’s tale: Profession. Since then, I struggled to don’t fall in specialization, and concentrate doing new things, creating software, and exploring new topics, every week of my life. I don’t like to be “the expert on TechX 1.7″. Yes, I like to be a “generalist”. This strategy is not free of hassles, but I can live with them. Having a general view, knowing many topics, gives me the power to understand better what happens in my profession, and life in general.
I’m a compulsive blogger. For me, writing is a way to clear my thoughts. I like to write down ideas, not only think about them. And write software implementing ideas, not only talk about them. One year ago, I started to write one post every day. It was one of my clever decisions in this century. This year I improved my writting skills, and gained insights on my own thoughts, opinions and knowledge.
I love mathematics. If I could choose, I would pick mathematics as the only activity in my life. But I guess I would generate few advances, if any at all, in the most beatiful branch of human knowledge. For me, a mathematician is a human being in the way to become a semi-god/godness. History of mathematics is a fascinating topic, too. I can spend hours reading and thinking on mathematics: algebra, topology, group theory, category theory, number theory, are my preferred topics.
I usually give a lesson on software development, each day from monday to saturday. I teach PHP, .NET, Java, software architecture, frameworks, and recently, I added Scrum to my porfolio. Teaching is not my favorite task, but I think it’s the way I can reach more people, and make a difference. I would prefer to write software all day and night, but nobody is using it… snif…
I’m interested in the game of go, since early eighties, when I met the game at Universidad de Buenos Aires. In my opinion, is the best mind game ever invented. But I have professional interest in it: it’s the hard problem in game programming and artificial intelligence.
I’m a fan of code generation from a model. My pet open source project is AjGenesis. You’ll find more info in the links at the end of this post. For years, we forget to raise the level of abstraction, and, after all advances in technologies and platforms, we are still using programming language in the same way we used them thirty years ago. It’s time to address complexity of making software with the help of software itself.
Artificial intelligence is a topic that struck a chord in my brain and heart, even before software development. I predict these coming years will be full of synergy between AI, grid computing, robotics and web n.0. I’m working on cross over between AI and code generation. Automatic code generation is a kind of expert system. The field could be improved using AI.
I was selected as Microsoft MVP since 2002. There is something wrong in the selection process, and the title was renewed this year. I guess I suffered the same bug that made Martin Salias an MVP…
Reading is one my favorites activities. I could spend hours, literally, reading about the topics I mention. But, after reading, I dedicate time to think and write what I discovered in readings.
After writing so many posts, writing software projects, and collecting information, I guess the best way to understand me, is visiting my personal site, blogs, relevant posts, and projects (OK, it could be a overwhelming list, take whatever you think is interesting, or forget the full list). In “Pierre Menard, Author of the Quixote“, Borges enumerates Menard’s works, a way to show Menard increasing mental illness. Well, this is my own list, take your own conclusion… ;-):
http://delicious.com/ajlopez My Delicious Tag Cloud
http://twitter.com/ajlopez You must follow me if you want to understand my brain-damaged behaviour
http://ajlopez.popego.com I’m testing this autoblog
http://friendfeed.com/ajlopez Consolidated me
Codethinked: what is your strategy for becoming a better developer
Programmer competency matrix
Grid Computing programming
AjGenesis Studio: an IDE for AjGenesis
Lessons learnt from an agile year
Un programador pragmático
Agents in a grid
Code generation as a service
Aprendiendo de Jason Bourne
Articifial Intelligence Posts (Spanish)
AjGo- hacia un programa que juegue al go
AjGenesis my code generation project
AjGenesis Posts (English)
AjGenesis Posts (Spanish)
AjMessages Fabriq-like implementation
AjBasic Basic interpreted, base of AjGenesis template language
AjSharp Other interpreter, based in the same core of AjBasic
AjFunc Functional language interpreter
AjLogo Logo language interpreter
AjTalk Smalltalk interpreter
AjAgents Agents, with asynch message communication
AjLisp Lisp language interpreter
AjGo Computer Go program
Coming soon: AjProlog, AjCloud
My best post ever: El arte de Angel Java Lopez, un prólogo de Gervasio Montenegro
Me pisó el 60
El efecto Coto
Si no está escrito, no existe
Don’t be a canuto (Spanish)
Don’t be a canuto (English translation and comment, by Ignacio Baumann Fonay)
A post a day keeps the doctor away (Spanish)
A post a day keeps the doctor away (English)
A post a day keeps the doctor away 2008 (Spanish)
The game of Go by Borges
Mathematics in my site
Mathematics in my personal blog
Teoría de Galois
La forma de trabajo de Andre Wiles
Siete mil años de matemáticas
Recordando a Beppo Levi
Recordando a Mischa Cotlar
Mathematics in my delicious
Philosophy in my personal blog
Al pan, pan y al hecho, hecho
Grandes preguntas en filosofía
De donde venimos, adonde vamos
Oye Mike, ¿cuál es el sentido de la vida?
Estrellas desde la balsa
Un plin plin en el viento
Para triunfar en filosofía
En difícil es más “cool”
Las cosas y la esencia
La última pregunta
Philosophy in my delicious
Philosophy of Science
Conceptos, modelos, mecanismos y ciencia
Sobre el psicoanálisis
Los elefantes, la tortuga y el modelo
La filosofía y la ciencia
Ciencia es más que leyes
La actitud científica en la vida cotidiana
Bunge y el psicoanálisis: Macaneo I, Macaneo II, Macaneo III
El limón adelgaza
A short explanation of Anglish in my presentation at RAF 2008.