Thursday, September 11, 2008

Development of my Coding Life

Everything started in 1991 when I got my first Commodore (so called Chip in our country) with Basic installed by default. First I started to play some games (as I was a child) and then went on with installing applications and start making my owns using Basic. After a year or so I started disassembling programs and got in touch with the Assembler language. I wrote a few little program using this language.

In 1993 we (my family) got our first real pc, a 486 with 110mhz proc. Now I got introduced to the filesystem logic and to the keyboard without commands on any key :) not to mention DOS and Win 3.x, The first language that I learned on this pc was Borland Pascal and then started to combine Pascal with ASM.

Around 1994-1995 I wrote my first virus using ASM which turned of your pc every hour :) and if you moved your mouse it searched for other .com files to infect. Then I wrote a little patch to command.com to request a password when loading so you weren't able to boot the pc even if you reset the BIOS pass unless you booted from floppy. Around this year I wrote a little Flash like application in Pascal in text mode (so called CRT mode) and you were able to make (by drawing) little intros for you programs that got played back when program launched. I started to read some books on Sound cards (as we got one :)) and on video cards and build my own voice login system that recognized the password you spoke to it and developed the XMS memory rutin in ASM for Pascal so now we (me and my friends) were able to use XMS within our programs.

In 1995 Windows 95 got introduced in our country too (it was a big day) so we compressed the whole hdd so we had enough space to install it and then started learning some Visual Basic (back to Basic again :)). This was the time when I started experimenting with C too. The only problem with C was that there wasn't much regarding internet by then in our country so compilers and editors could be gathered only by friends and because our people are pretty possessive you weren't able to get much help from them, anyways I managed to write a little program including ASM too which was able to bring a text program like Norton Commander to graphical mode e.g. VGA.

In 1996-1997 I got my first personal PC so I was able to work all day long :) I worked on with Pascal (as I liked it much) and learned some OOP too, did some windows like programs that were able to control multiple windows with active contents, combined launching buttons with wav files so these buttons talked to you :) and helped you what to do. At my father's company we got our first phone modem so I was able to have some access to internet too (eee what an internet it was back then :)). It was this time when I got in first contact with Linux, so I installed it right away and started learning every command, when I realized that with tab+tab you can show all the available commands I even wrote them out to a note so I could try them out one by one :) It was a great day when I launched X and got the first screensaver with the bugs running on your screen :) I played a lot with Linux but back then it was pretty useless from users point of view so I got back to windows but never give up on Linux.

In late 1997 I started using disassemblers/debuggers and cracked my first program called RAV Antivirus, it was limited to be able to run only from one original floppy so you weren't able to run it if copied but with little effort (a day or so) I was able to remove this limit and use the program :) From this point on I started to crack more and more programs as it was a fun to realize how things work that others wrote and get into their heads to trick them :) BUT never released any cracked program to the public as I knew how hard is to write a good program so I prize those programmers. My mother wrote a fax to this company and they wanted to talk to me right away but I was in school back then so it wasn't much future for me as the school was the first.

NOTE: I learned everything by my own as in the school as was taking a whole different classes (as my parents wanted me to be in the Tourism business) and I was one of the best ice hockey player in our team we even went to world championship and I was the best left wing player on one of the games so I learned all the programming besides all these as I loved it.

In 1998 I got my own internet connection at home so now I was online 24/24 7/7 and got introduced to HTML, build my first page and started hacking other pages :) Late this year I switched totally to Linux and started learning other languages like Bash, CGI, Perl and continued some of my C knowledge too. In this year I got my first job too at a local company as programmer, I wrote different applications in Delphi, using Access DBs and things like that but unfortunately my boss didn't care much for their workers so I left after three months.

In 1999 I got another job by another local company and worked some more with Visual Basic, but then I got cached by PHP :) and web developing so I started writing web pages using PHP, MySQL and Linux as under linux all these went just so well so from this point on I never looked back to Windows anymore :) at least not for work.

In 2000 after I didn't see any possibilities at the current company to move forward I build up my own company with one of my friends and we started developing web pages for all the local and near by companies. At the start everything went pretty well, it wasn't easy as we had to do everything almost from nothing, but we managed to get our own place, get some pcs and we even got profit after a year or so. I build a lot of pages back then as I was the programmer and my friend the manager (getting all the jobs) and I even got used to linux server setups/managements with emails/webmails, telnet, ftp, ssh and even iptables (when it got introduced to Redhat and we were able to install on our own servers). Within this time I learned a lot regarding HTML, Javascript, PHP, MySQL even some more CGI, Perl and not to mention the design part (as I was the designer too) so I learned a lot using Photo Impact, PhotoShop, Macromedia Flash, Actionscript. Unfortunately with time as more money we got as more problem we had with each other so we split up, I sold my part to him and went my own way. I will never forget this day as when my father saw the papers with the incomes he said to me - Son, I never thought you can make money by just sitting in the front of a computer and hitting those little keys. - so I was proud even if I had to sell my part.

In 2003 I got in touch with a company from oversees and continued my work as web developer even learning more about PHP and friends. After a year they invited me to a 3 months internship at the Carnegie Institution of Washington (CIW) where I learned more about OOP using PHP, XML, MySQL, Java and Networking. After I got back I continued my work developed more and more pages include some for CIW.

Around 2005 I started a little company all by myself, set up my own SVN server and started getting other projects from other parts too. Around this time I set up a second server for my media db too, connected with the TV, set up an universal remote controller using LIRC and brought to life my own media center.

In 2006 when I got my first (and last) iPod I wasn't happy with the original firmware so I switched to Rockbox and relized that Rockbox is a great system but it didn't have the right look so I did some coding using C, made some patches and designed some great rockbox themes, bootloader and released them to the community.

In 2007-2008 I'm still developing web pages. I learned a lot about PHP and MySQL optimization, Javascript, AJAX, CSS, created some web applications and so on but I just miss the days when I was able to just simply write a "hello word" application using only hex codes without any encoder so lately I decided to do some disassembling/debugging to see what has changed since the 1998s and I was able to get back to my form easily and do some hacking :)

Now lets see where life will take me in the following years.

Labels:

0 Comments:

Post a Comment

Links to this post:

Create a Link

Home