On writing code, crappy or good

Omid Kamangar (Ako)
2 min readOct 13, 2015

--

Last night, I was reading this blog post by Scott Hanselman, and I remembered my own journey into the programming world.

I started programming when I was accepted as a Software Engineering student at university. I had no experience with computers at all, let alone programming!

The first semester, I had the course “Basic Programming” and I failed. I was one of the 9 guys/girls among 65 students who failed. Since 9 students were not enough to have a class, I couldn’t take the course next semester. But instead of waiting, I acted on my own. I bought the book “C How to Program” by Deitel & Deitel and started to learn programming on my own.

I worked through all the examples and exercises and learned how to write crappy code.

I didn’t stop there. I began to define small projects for myself and then do them. For example, I wrote an fdisk clone, a phone book application and a terminal emulator which had like 43 commands and was more than 5,000 lines of code (crappy code indeed)!

You have no idea how crappy those projects were. But I didn’t stop, and did more and more crappy projects. But each project I did, was less crappier.

So, the point of the whole story?

If you are a novice programmer: Don’t be shy. Write code. It is with writing crappy code that you can get to writing good code. Nobody has ever been able to write good code from the start. Everyone has been in the same skill level you are. Everyone has had a start. And the good news is, the world is much different now. Open Source is dominating the whole programming world. There is Github, StackOverflow and so many other great resources. You can ask for help and you will get help. When I started my journey, all I had was a book, Visual C++ 6.0 and a (very) slow PC. I had no access to the internet!

If you are a mid-level programmer: Most probably you have enough experience to find your way. But again, there is a long journey ahead of you. Don’t stop and again, don’t be shy. Write code!
(I put myself in this category).

If you are an experienced programmer who writes good code: Please be helpful and supportive. Never blame novice guys for their crappy code. You were a novice one day, remember? And for the guys who think they are very good and mock the novice guys, I have to say this: there is someone better than you. Someone who writes better code than you and if he/she sees your code, what he/she will see is crappy code. So be cool, and helpful.

When I am coding, I write both crappy code and good code and honestly, I write more crappy code than I write good code. But the point is, I am trying to improve everyday. It’s a long journey, and I enjoy the journey.

Embrace the Open Source culture and help others, regardless of your skill level, because there is always someone who can get help from you.

--

--