Skip to main content

Learning a new programming language (again)

I guess I have to learn a new programming language again. This time, it's C#. The reason I have to learn a new language is that we are starting a new software house company. Our first order uses C# as the programming language and .NET as the framework.

Last night I spent a couple hours reading Eric Gunnerson's "A Programmer's Introduction to C#." It's a perfect book for me. It treats the readers as programmers. That is, it skips the introduction on computers and stuff. I knew that already. I taught C++ before (until last semester - this semester I have to many things to do so that I have to delegate this to somebody else) and used Java a few years ago (10 years ago?). The transition from C++ & Java to C# shouldn't be a drastic one. So, I can say that I know C# now. :) I just have to get a compiler to test some of the ideas and get my hands dirty.

I told (and will tell) my students that they have to master more than one programming language. It's just a fact of life. As for me, I lost count the number of programming languages I have learned (and forgotten).

Comments

Anonymous said…
Many issues in Java and C# are solved nicely in Scala, http://scala.epfl.ch/
ayu wening said…
sorry,, this comment is out of topic actually.

I visit ur blog regularly. It's nice to find a person like u in the virtual world.

ehem, I take ur course (advanced security) next semester. See u in the real world then. Can't wait ;-)
vontho saragih said…
I used to try to understand a programming language, even I was not study in programming school such Informatic Engineering. Now, I am studying in a school that have no deal with programming but I still have an intention to try to understand a programming language. (I just know a little about HTML and that's not even a programming language, right?) My question, from where should I start if I wanted to learn programming language?
C# is a nice programming language, that's true, but it will be better if Microsoft update the .NET more frequently (more release is the word for it i think). For example, in .NET Framework 1.1, they missed a key data for DEL key, which makes it quite difficult to grab the event if somebody press the DEL button. They just add them in 2.0. Nice :D

@Vontho: Any programming language is good, but i think it will be better if you learn a programming language which is based on your need. If you never touched it before, Pascal is one of the simplest one. Grab the logic first and then, you can start switching to other languages, as the main logic will quite the same (except for Object-Oriented Programming). If you would like to start using OOP, Java or C# will be quite interesting
Anonymous said…
pPak Budi,

It's nice to see that you finally have interest on C#. C# is indeed a very easy language to learn especially for someone who has such caliber as you. However one thing that you might need to address is the .NET Library which in my opinion is little bit need more attention that the C# language
Anonymous said…
Sorry forgot to mention. If you have time, I suggest reading Professional .NET Framework 2.0 by Joe Duffy

Popular posts from this blog

Himbauan Kepada Hacker & Cracker Indonesia & Malaysia

Kepada Hacker & Cracker Indonesia & Malaysia, Saya mengharapkan anda tidak melakukan penyerangan atau/dan pengrusakan situs-situs Indonesia dan Malaysia. Saya mengerti bahwa akhir-akhir ini beberapa masalah di dunia nyata membuat kita kesal dan marah. Namun kekesalan tersebut sebaiknya tidak dilimpahkan ke dunia maya (cyberspace). Semestinya sebelum melakukan aksi yang berdampak negatif, kita bisa melakukan langkah-langkah positif seperti melakukan dialog (melalui email, mailing list, bulletin board, blog, dan media elektronik lainnya). Kita harus ingat bahwa kita hidup bertetangga dan bersaudara. Yang namanya hidup bertetangga pasti mengalami perbedaan pendapat. Mari kita belajar bertetangga dengan baik. Saya berharap agar kita yang hidup di dunia maya mencontohkan bagaimana kita menyelesaikan permasalahan dengan kepala dingin dan hati yang lapang, sehingga para pemimpin kita di dunia nyata dapat mencontoh penyelesaian damai. Mudah-mudahan mereka dapat lebih arif dan bijaksana

More bad news with Malaysia - Indonesia

I've got more emails and news about bad news between Indonesia and Malaysia. To be exact, there was a news about RELA (not sure what that is) that goes out after Indonesians in Malaysia. There were incidents where they hit Indonesians, rob, and do horrible things. I cannot even write this is my blog. I am so sad and frustrated. What's going on with Malaysia (and Malaysians)? What did we - Indonesian(s) - do to deserve this? I thought there should be less boundary between Indonesia and Malaysia. But ... What's going on there, bro & sis? You know, more Indonesians now feel that they are offended by Malaysians. I can tell you that this bad feeling is increasing. This is a bad publicity towards Malaysia. People are now creating various calling names, such as "Malingsia" (it's a short of "maling" [thief] "siah" [you, Sundanese]), and worse.

Say NO to APJII!

Prolog At the end of 1997, I went back to Indonesia from my studies and work in Canada. The .ID domain management in Indonesia at that time was in a confusing state. Nobody wanted to manage it. Universitas Indonesia (UI) - the original maintainer - was in a fight with APJII (the Association of Indonesian ISP). In the end, IANA gave me a mandate to manage the .ID domain. Since then, I manage the .ID domain with open management. There are problems, but mostly minors. Until recently, when APJII (again) is trying to take over the .ID domain management from my team. Here's a short info to give you a head start. Short summary APJII (the association of ISP in Indonesia) is trying to takeover the .ID domain management in Indonesia. They have tried and will try everything to take over. Long description I've been managing the .ID domain since the end of 1997. At that time, nobody wanted to run the domain management. First of all, a brief description of how we run things. To run the .ID d