I’m always facinated with the internet revolution and the technologies which are making that revolution happens, particularly the Java technologies.
![]()
- Me at Greenwich park last year!
My brief history: how I got myself into programming
Early in my teen back in my home country Lebanon, my elder brother brought a TRS-80 computer to the house. I think it was second-hand, and I suppose he bought it because somebody sold to him very cheaply. He simply never used it and it stood there in the room with its awkward screen silently. I knew it’s a computer, but “what does it do?” I wondered!
Fortunately, it had a manual. That manual was full of Basic code. Within the manual’s plastic cover there were four tapes. Though, I never knew how to use the tapes, I could type in few of the provided source codes and run them. One of those source codes drew something that looks like a canon that launches projectiles periodically. That was cool! I remember inviting some of my school friends to look at it. I got accustomed to the Basic language, and soon afterward started writing my own programs. These were kind of questions/answers, and depending on what you answer, the program chains to another questions (I used if-then-else, mostly). I played with that PC for few months, but then I got bored with it, put it away, and never saw it or touched it again.
So many years passed and never got interested with programming again. Even when I got into the University, I studied Pharmacy. After finishing my third year in pharmacy (the program was 5 years), one day and out of the bloom, I remembered my experience with TRS-80. Then and there I decided I want to become a programmer. It seems the seed has been planted in my head by that TRS-80! (OK to be honest, I hated Pharmacy!)
Currently: still in London
I hold a Master in Internet Engineering and I’m an expert in Java Technologies, Open Source, … among them are:
-
JEE technologies: JSP, JSTL, Servlets, JAX-WS, JAX-RS, JavaBeans, Multithreading, JDBC
-
Web technologies: JavaScript, Ajax, GWT, CSS, XML, XSLT, DHTML, DOM
-
Open source software including MVC frameworks (Spring-MVC, Apache Struts), Persistence frameworks (Apache iBatis), Object Relational Mappings (Hibernate), Web Services (POJO on Apache Axis), Presentation frameworks (Velocity), and the Build Tool (Ant)
-
E-commerce infrastructures, e.g., Elastic Path
- Development methodologies and design patterns: DSDM, AOSD, TDD, UML (Finite Machine, Use Case, Class Diagram, Flow Chart), MVC, Dependency Injection, Adapter, Observer, Singleton, Factory