Story of a passionate programmer

I would like to tell you a story. My personal dev story of how I’ve become a programmer.

I was born in 1986 in Warsaw (Poland). When I was around 10 years old I got my first computer, Commodore 64. Oh! What a machine it was. Keyboard with CPU inside, tape recorder two joysticks and few tapes loaded with games (do you remember?:)).

Rewriting phase

But there was also something else. A book. User manual with a short BASIC tutorial. It was completely in German which was a bit of a problem because i didn’t know that language then. Actually I didn’t know much then, I was 10 馃檪 But it didn’t stop me from rewriting code from the book and聽 looking what’s going to happen. That’s how my first “Hello world” appeared on the screen.

When I was about 12 my Mom signed me up for my first computer classes. They were held in the tallest building in Poland – Palace of Culture and Science. Once a week for 1,5 hour I was learning about simple web design (basics of html) and a bit of graphics (corel draw).

PalaceOfCultureAndSciencePalace of Culture and Science

Pascal period

During that time I’ve switched from Commodore to PC (486DX4 100MHz, Win95). It was some change, you probably can imagine. Plus I had Quake 1 already installed on my new machine (sic!). No CD-ROM or sound card though.

After a year of web design for kids I thought it’s time for some serious sh.. stuff 馃槈
I’ve decided to join Pascal course. And it was a good decision. After a while I was hooked. Big time! I was attending this course for two years and learned a lot. Meanwhile I was putting my new knowledge to good use.

Who doesn’t like games, right? So let’s take a novice programmer who love games and think of the best project he can do? Got it? Yup, let’s make a game!

“Arfuria” was an ASCII-based dungeon crawl game. A bold project that I’ve never finished. But it was awesome! Pure professional, clean code. Everything in one file (only maps were in separate files). One procedure for one map with endless if..then statements. Pretty SOLID 馃檪

When my code file exceeded 5000 lines my compiler said “oh hell no!” and I quickly needed to learn what modules are.

So many nostalgic moments.

meMe and my machine

New kids on the block

When I was 14 I’ve started buying computer magazine called CD-Action (and I’m buying it ever since.. it’s 15 year now). At that time I was doing mostly Pascal, but I had on my mind that it’s about time for something new.

Back then CD-Action was publishing short programming courses (guys it was awesome, why you’ve stopped?). One of them was about C++. It was something new.. something powerful.. something exciting! So I got my DJGPP on and started doing a lot of stuff. I was making simple games, playing with graphics doing fractals, generally all kinds of things. It was also a paradigm shift for me, going from procedural Pascal to object-oriented C++.

djgppDJGPP

Simultaneously I finished my Pascal classes in Palace and I’ve switched to web programming. We were learning about the hottest web stack of that time – PHP/MySQL/Apache. I’ve used it to build various web apps and had my sites about Diablo and Tomb Raider up and running in no time.

Time to share!

When I was in middle school I’ve already had some knowledge on me and I wanted to share. I’ve decided to make an introduction to programming during computer science classes in my school. It went.. not quite well. I mean, as far as I remember my classmates weren’t interested at all. Probably my presentation skills were poor because what 14 year old kid is not interested in programming? 馃檪

It got better when I went to high school and started a computer science circle. We were doing C++ and PHP. We had a lot of fun because most of the people paid attention. Of course some guys joined just to play Counter-Strike (which by the way I’ve picked up there and played for 7 years).

High school was also the time when I earn my first money on programming.

So I’m in high school. I’m doing my C++ on Windows now. And it is painful. WinAPI where to write app that prints “Hello world” you need 150 lines of code and that monstrosity called MFC that I won’t even talk about. Luckly, this episode ends quickly. Next!

New hope

Place: Book store.
Purpose: Buy programming book which would inspire me.

I’m walking around the store browsing through the books. I got 20 dollars in my pocket, I can afford one. What would it be? Eventually red cover with big white letters draws my attention. Book title is “OpenGL for experts”. Damn! That’s something for me!

During the following weeks I’m doing mostly graphics programming, finally discovering what linear algebra is used for. I also stumble upon some online game programming tutorials and.. it is on. I’m deciding to build my own 3D game engine. 馃槑

Next couple of months are filled with math, understanding lot of difficult concepts and getting them to work in my freakin’ code. After hours and hours (and hours) of coding it finally works. Map is correctly rendered, textures are there, camera is working, you can move and look around with your mouse. Done! I’m going back to normal life.

geSourceLarge
Game engine in C++ 1

My romance with聽 graphics聽programming was passionate and breathtaking. I’ve learned a lot and enjoyed it. No regrets.

Some time later I had a run with DirectX. I was doing 2D for the most, creating small games like Pong and Pacman. However this phase was quite brief and not so exciting any more.

Wait for it..

In 2003 I read an article about new programming language which was supposed to be an upgraded C++. Even the name was similar – C#. I kind of like it from the beginning. Object-oriented with clean, simple syntax and garbage collector. Powerful combination.

I was amazed by whole .NET platform, especially by it’s web framework – ASP.NET. Creating full featured website with drag and drop and few lines of code. I thought it’s brilliant (I don’t think so any more).

Money, money, money

Place: Parking lot, inside the car
Characters: Mr. Bogusz, Mr. X

B: What do you need me for?
X: I have a job for you.
B: What kind of job?
X: There is a problem, I need you to get rid of it.
B: Payment?
X: As usual. Cash after it’s done.

I might have changed some details, but in fact we were in the car on parking lot discussing details of my first commercial project, website for fire department unit. I’ve decided to do it and I signed a contract for 1,500 PLN (360 $). It was a lot of money for me then.

To build this site I used my new, shiny toys – .NET, C# and ASP.NET WebForms. As it wasn’t hard project I succeeded without bigger problems and shiped my code to “production” for the first time.

I still remember the smell of that money, first serious money that i’ve earned doing what I love. That felt great.

Fire department
Actual fire department that I built site for

Proper education

As you can imagine I picked IT related subject as my major. I chose Informatics and Econometrics at Warsaw University of Life Sciences. My time in college was truly awesome and I have so many unforgettable memories that it’s hard to count them all. Yeah.. but let’s get back to business.

After classes I was freelancing, doing mostly websites. Several projects not worth mentioning and one worth it. I have built quite large online newspaper with full featured CMS. I was a student. I was cheap. I did it for 3,000 PLN (720 $). My clients were lucky as hell 馃槈

Going social

In the meantime I started attending .NET meetups where various people were doing tech sessions on .NET related topics. I always liked the idea of sharing knowledge and I want to be a part of it. I thought it would be cool to have this kind of group at our university. So I created one! I gathered people, created group website, contacted Microsoft to sponsor us and led first few meetings. That’s how Silver .NET Group was founded (btw. now I think it’s a bit lame name:P). After 9 years not only that the group still exists but it’s doing great.

Silver .NET Group
Website of Silver .NET Group

What shell we do with a drunken sailor?

Lot’s of ‘first times’ in my story. There will be one more. My first full-time job.

Place: University hallway.
When: 3rd year of studies
Characters: Bogusz, Piotr

P: Hey man. I work at this IT company and we need more developers. Join us.
B: Meh. Full-time job? I don’t know, I’m lazy.
P: Well, so what would you like to do?
B: Hmm.. I want to sail around the Caribbean.
P: Do it then.
B: I can’t afford it.
P: Join our company and you’ll be able to afford it in a month.

Caribbean
Caribbean

I joined the company. But I didn’t sail around the Caribbean. Damn!
I worked there for a year. Full-time during summer break and half-time during academic year. It was a small company (5-6 people), but experience that I gained there was crucial.

Just chill bro

After a year of working and studying I was soooo tired (commute was killing me, 1,5 hours from home to office) and I decided to join magnificent student exchange program that is Erasmus. 馃榾

I’ve spend 6 great months in Greece (Thessaloniki) mostly travelling and parting. In the meantime I was freelancing building social network services. When facebook hype has started everyone thought that building similar service is a brilliant idea (joke’s on them).

Shisha
Greek chill out

Back to reality

When I came back to Poland I wrote master thesis, finished studies and joined a startup as a .NET developer.

Since then I have changed my job few times, always trying to find new challenges.
I still have a lot of crazy dev related stories to share. And I will, but maybe a bit later 馃檪

And that’s about it. That’s my dev story!

1 http://www.marekknows.com/images/forum/geSourceLarge.jpg

bogusz
Blogger http://startupmyway.com , developer, founder http://groopmark.com entrepreneur, sailor, gitarist, beer geek, traveler.
  • Rafa艂 Pachnicki

    Interesting… I’m waiting for part 2

    • Great! I’m glad you enjoyed it 馃檪 What do you think, was it too short, too long or just fine?

  • Klodzina

    what a fun to read this! nice

  • Maciej M.

    Thats a good peace of work mate. GL & HF! Btw. I used to read only game revievs in CD-Action, maybe thats why i’m not a programmer today ;).

    • Yeah probably 馃榾 But it’s never too late to start coding mate 馃檪

  • Damian

    To moze po pl. 馃槈 Przyjemnie si臋 to czyta艂o. Powodzenia

    • Dzi臋ki za komentarz 馃檪 To daje mi powera, 偶eby siada膰 i pisa膰 dalej 馃檪

  • Sahee

    Podoba mi si臋, trzymaj 艂ape na fb =)

  • Cachorro

    very interesting history 馃檪
    I’m waiting for continued.

    Fajnie si臋 czyta, ale to kolejny angielskoj臋zyczny blog o programowaniu w sieci 馃槈
    Mo偶e troch臋 po naszemu?

    • Glad to hear that! 馃檪 Story will continue, for sure!

      Blog nie b臋dzie stricte o programowaniu. Bardziej o ca艂ej otoczce z tym zwi膮zanej. Mam mi臋dzy innymi pomys艂, 偶eby korzystaj膮c z do艣wiadcze艅 znajomych por贸wna膰 jak si臋 programuje czy prowadzi startup w r贸偶nych krajach. A do tego warto 偶eby ka偶dy m贸g艂 przeczyta膰. No i j臋zyk mo偶na po膰wiczy膰 馃槢

  • Grzesiek

    Nie藕le 馃槈 Ja pami臋tam C64 i to s艂ynne “cicho, bo si臋 wgrywa”.

    • Ale przed wgraniem trzeba by艂o podstroi膰 g艂owic臋 magnetofonu. Do dzi艣 mam ten malutki 艣rubokr臋cik 馃檪

      • szymon

        A pr贸bowali艣cie na 偶ywca zmienia膰 blackboxa z finalem?? albo wychodzi膰 z ramek lub powi臋ksza膰 duszki w assemblerze?? 馃檪

        • O kurde, do tego to nie dosze艂em 馃檪 A co mo偶na by艂o dzi臋ki temu osi膮gn膮膰?

          • szymon

            Generalnie assembler dawa艂 mo偶liwo艣ci oszukania i obej艣cia mo偶liwo艣ci technicznych 馃檪 W zasadzie efekt wykorzystywany w introsach 馃檪 艂ezka si臋 do tej pory kr臋ci na wspomnienie komodorki 馃檪

          • Oj kr臋ci si臋 艂ezka 馃檪 Ostatnio trafi艂em na gameplay gry, kt贸r膮 katowa艂em w tamtych czasach – Wonderboy https://www.youtube.com/watch?v=fIXOEj2tkPw

  • Jan Bajena

    Hej, tez chodzi艂em na zaj臋cia z programowania w pa艂acu:) Te stare sale, niewygodne krzes艂a i przestarza艂e narz臋dzia mia艂y sw贸j klimat 馃榾
    Do jakiego liceum chodzi艂es?

    • Nooo klimat to by艂. Ja to do Pa艂acu chodzi艂em z 7 lat 艂膮cznie na najr贸偶niejsze zaj臋cia. A do liceum na Jelonkach, Pawlikowskiej-Jasnorzewskiej. A Ty gdzie? Do kogo chodzi艂e艣 na Pascla, do Rafa艂a Milczewskiego? 馃檪

  • krzysiek

    Bogusz keep going!!

    ps. me and my machie photo is freakin awesome :D…what goes on the internet stays on the internet 馃槈

    Cartman

    Czekam na wi臋cej i do zobaczenia przy jakim艣 apa

    • Thanks! I took this photo from old family album and scan it 馃檪 I hope I won’t regret it 馃槢

  • geek42

    you are lucky, i was born in 1987(China), when i was a child, i also ask to bought a 6502 based machine, but my parents got huge debts at that time, so i got my own computer when college. well, i still self-taught programming from a 6502 based e-dictionary devices bought from my sernior school classmate. now i am a programmer works for 6 years 馃榾 (BTW, i graduated as a liberal art student. i have to learn those CS knewledges myself)

    • It had to be much more difficult for you. Congrats that you made it.

      • geek42

        Yes, i have made it, i even got remote working chance recently. but i am always worried about my CS knowleges, so i keep on learning

  • Justyna Przybylska

    To by艂y czasy! C 64, kasety i czarny-bia艂y monitor szczytem technologii;) Musz臋 przyzna膰, 偶e zobaczy膰, jak Twoje hobby przerodzi艂o si臋 w spos贸b na 偶ycie to interesuj膮ce do艣wiadczenie.

    • Dzi臋ki za mi艂e s艂owa. Druga cz臋艣膰 ju偶 niebawem 馃槈

  • Pingback: How much does a .NET developer make in Poland? – Startup My Way()