KODLAMANIN EN TEMEL HALİ

Eray Zehir

TEKNOLOJİDE ZEHİR BİLGİLER

KODLAMANIN EN TEMEL HALİ

TEKNOLOJİDE ZEHİR BİLGİLER

Değişen teknoloji ile bilgisayarlar hayatımıza her geçen gün daha fazla dahil oluyor.

With changing technology, computers are becoming more and more a part of our lives every day.

Ve bu bilgisayarlar sayesinde yapamayacağımız çok az şey var.

And thanks to these computers, there are very few things we cannot do.

Ancak kodlar olmasaydı bu bilgisayarlar bizim için hiçbir şey anlam ifade etmezdi.

However, without codes, these computers would mean nothing to us.

Peki ya bu kod denilen şey nedir?

So what is this thing called code?

Kod, belirli bir programlama dilinde yazılan ve makine ile iletişime geçmemizi sağlayan talimatlar bir nevi genellikle İngilizce kökenli sözcüklerdir.

Code consists of instructions written in a specific programming language that enable us to communicate with machines, and these are generally words of English origin.

İnsanlarda olduğu gibi makinelerde de farklı konuşma dilleri vardır.

Just like in humans, machines also have different languages of communication.

Her biri farklı özellikler taşıyan yüzlerce programlama dili vardır.

There are hundreds of programming languages, each with different features.

Ve yazılımcı dediğimiz kişiler de bu dilleri anlayıp bu dillerle proje geliştirebilen kişilerdir.

And the people we call programmers are those who understand these languages and can develop projects with them.

Mesela şu an beni Spotify, Apple veya Google Podcast gibi uygulamalardan dinlerken

For example, right now while you're listening to me on applications like Spotify, Apple, or Google Podcast.

bu uygulamaların geliştiricileri tarafından yazılmış kodlar kullandığınız aygıtın,

the code written by the developers of these applications that you are using on your device,

haperlerini, mikroçipini kullanmayı sağlayan karmaşık programlar arka planda çalışır.

Complex programs that enable the use of their processors and microchips operate in the background.

Bu programları oluşturmak için yazılımcılar kullandığınız aygıtın neler yapması gerektiğini kod satırlarıyla makineye öğretir.

To create these programs, programmers teach the machine what the device you are using should do through lines of code.

Ve bunları sıraladıkça algoritmalar oluşur.

And as we list these, algorithms are formed.

Bu kod satırları kim zaman bini dahi aşmazken Google gibi dev platformlarda 2 milyarı dahi bulabilir.

While these lines of code may not exceed a thousand at times, they can find even two billion on giant platforms like Google.

Evet bu korkunç veriyi duyunca Google'ın bir araba garajında geliştirildiğine inanamayabilirsiniz.

Yes, you won't believe that this terrifying data was developed in a garage by Google.

Şimdi size başta bahsettiğim programlama dillerinden iki tanesi hakkında bilgiler vereceğim.

Now I will provide information about two of the programming languages I mentioned earlier.

Ama daha iyi anlayabilmeniz için önce web ile internet arasındaki bariz farkı yakalayalım.

But first, let's catch the obvious difference between the web and the internet so that you can understand better.

Evet internet ile web aslında birbirinden farklı şeylerdir.

Yes, the internet and the web are actually different things.

Web aslında internet kullanarak oluşturulmuş bir uygulamalıdır.

The web is actually an application created using the internet.

Nasıl yani?

What do you mean?

İnternet makineler arasında oluşan bir global ağdır.

The Internet is a global network formed between machines.

Bu bağlantılar bilgisayarlar arasında bilgi akışına olanak sağlar.

These connections allow for the flow of information between computers.

İnterneti fotoğraflar, mesajlar göndermek, video izlemek ve Chrome gibi tarayıcılardan web'e erişmek için kullanırsınız.

You use the internet to send photos, messages, watch videos, and access the web through browsers like Chrome.

Web, kod kullanılarak oluşturulmuş bir uygulamadır.

The web is an application created using code.

Web'de en yaygın kodlama dillerinden ikisini ele alalım.

Let's take a look at two of the most common programming languages on the web.

HTML ve CSS.

HTML and CSS.

Şimdi hayal edin.

Now imagine.

İnternette her şeyi birbirine bağlayan yollar olarak düşünün.

Think of the internet as pathways that connect everything to one another.

Ve şehirdeki binalarda web olsun.

And let there be web in the buildings of the city.

Bu binaların işlevleri birbirinden farklıdır.

The functions of these buildings are different from each other.

Ancak hepsi tuğlalardan oluşturulmuştur.

However, they are all made of bricks.

Yani kodlardan.

So from the codes.

Bir bağlantıya gittiğinizde aslında başka bir bilgisayar size internet yardımıyla bir HTML dosyası gönderir.

When you go to a link, another computer actually sends you an HTML file via the internet.

Bu dosya sizin girdiğiniz web adresini oluşturan kodları depolayıp gerekli bilgileri içerir.

This file contains the codes that make up the web address you entered and stores the necessary information.

HTML sayfa düzeni hakkında size bilgi verir.

It provides you with information about HTML page layout.

Neyin nerede olacağını anlatır.

It explains what will be where.

CSS ise web sayfanızın görsel sitelerini biçimlendirir.

CSS styles the visual elements of your web page.

HTML neyin gösterileceğini, CSS nasıl gösterileceğini tanımlar.

HTML defines what will be shown, while CSS defines how it will be shown.

Burada aslında bir noktaya daha dikkat çekmeliyiz.

We should actually draw attention to one more point here.

Başta dediğim gibi dünyada yüzlerce programlama dili bulunuyor.

As I said at the beginning, there are hundreds of programming languages in the world.

Peki neden?

Well, why?

HTML ve CSS arasındaki fark gibi her programlama dilinin ayrı özellikleri vardır.

Just like the difference between HTML and CSS, each programming language has its own distinct features.

Şimdi kodlamanın en temel haline gelelim.

Now let's get to the most basic form of coding.

Bilgisayarların anladığı en temel dil ikilik sistemdir.

The most basic language that computers understand is the binary system.

Yani 0-1 sistemi.

So, a 0-1 system.

Bu ikilik kodlar yalnızca 1 ve 0'lardan oluşur.

These binary codes consist only of 1s and 0s.

Bu dil bilgisayarların anlayacağı en kolay dildir.

This is the easiest language for computers to understand.

Ancak bir insanın bu dili anlaması hiç de mümkün değildir.

However, it is not possible for a person to understand this language at all.

Bu yüzden yazılımcılar kendi tercih ettikleri yazılım dillerini kullanırlar.

For this reason, programmers use the programming languages they prefer.

Ve yazdıkları bu kodlar gün sonunda her zaman makine tarafından ikilik kodlara dönüştürülür.

And the codes they write are always converted into binary code by the machine at the end of the day.

Programlama dilleri üzerinde soyutlama sistemi denilen bir kavram vardır.

There is a concept called an abstraction system over programming languages.

Soyutlama düzeyi ne kadar düşükse o dil makinenin ikilik sistemine daha yakın bir dildir.

The lower the level of abstraction, the closer that language is to the machine's binary system.

Ve makine bu dili diğer soyutlama düzeyi daha yüksek dillere göre daha çabuk ve kolay bir şekilde kendi ikilik koduna çevirir.

And the machine translates this language into its binary code more quickly and easily compared to other higher-level abstraction languages.

Yani bir kodlama dili insan için ne kadar zorsa makine için o kadar kolaydır.

So, a programming language is as difficult for a human as it is easy for a machine.

Şimdi bir piramit oluşturalım.

Now let's create a pyramid.

Bazı dilleri soyutlama düzeyine göre sıralayalım.

Let's rank some languages according to their level of abstraction.

C ve Assembly dilleri makine için çok daha kolaydır.

C and Assembly languages are much easier for the machine.

Piramidin en altındadır.

It is at the very bottom of the pyramid.

Yani kodlar çok daha hızlı bir şekilde işlenir.

So the codes are processed much faster.

C++ ve Swift dilleri piramidin ortasındadır.

C++ and Swift languages are in the middle of the pyramid.

Makine bu diller ile yazılan kodları çalıştırabilmek için diğerlerine göre nispeten daha fazla kaynak harcar.

The machine consumes relatively more resources compared to others to run the code written in these languages.

Ve piramidin en başında da SQL dilini yerleştirebiliriz.

And at the very top of the pyramid, we can place the SQL language.

Şunu unutmayın ki programlamada asıl amaç işleri daha kolay ve hızlı bir şekilde gerçekleştirebilmektir.

Remember that the main purpose of programming is to be able to perform tasks more easily and quickly.

API yani uygulama programlama arayüzünden bahsedelim.

Let's talk about the API, that is, the application programming interface.

Bu işlev ve prosedür grupları ile iki bilgisayar uygulamasını iletişime uygulayabiliriz.

With this function and procedure groups, we can apply communication to two computer applications.

Bir örnek verelim.

Let's give an example.

ATM'ye gittiğinizi varsayalım.

Let's assume you went to the ATM.

ATM'ler hesabınızdaki kalan tutarı tüm dünyadaki bankalara bağlı API'ler ile öğrenir.

ATMs learn the remaining balance in your account through APIs connected to banks all over the world.

İstanbul'dan para çektiğinizde ATM programı hemen Londra'daki bankanızla iletişime geçer.

When you withdraw money from an ATM in Istanbul, the ATM program immediately contacts your bank in London.

Çekilecek tutarı bakiyenizden düşer ve ATM şirketine parayı yatırır.

The amount to be withdrawn will be deducted from your balance and deposited to the ATM company.

Bunların hepsi API'ler ile oluşur.

All of these are created with APIs.

Son olarak da yapay zeka ve makine öğreniminden bahsedelim.

Lastly, let's talk about artificial intelligence and machine learning.

Makine öğrenmesi zor bir konu.

Machine learning is a difficult subject.

Ve bazı diller buna ihtiyaç duymaz.

And some languages do not require this.

Ama benim önerim şudur ki ilk kez programlama dili öğrenmeye başlayacaksınız.

But my suggestion is that you will start learning a programming language for the first time.

Mutlaka makine öğrenmesi içeren bir dil olsun ki sonraki dönemlerde kodlamadan soğumayın.

Make sure it's a language that includes machine learning so that you don't lose interest in coding in the future.

Makine öğrenmesi ve yapay zeka iki bilgisayar ana dalıdır.

Machine learning and artificial intelligence are two main fields of computer science.

İkisi de geniş ölçekli uygulamalarda kullanılır.

Both are used in large-scale applications.

Ve ikisi de bilgisayarların gelişip daha akıllı kararlar vermesine yardımcı olur.

And both help computers evolve and make smarter decisions.

Yapay zeka, makinelere zeka kazandırma bilimidir.

Artificial intelligence is the science of giving intelligence to machines.

Yapay zekayı daha da geliştirebilmek için makine öğrenimini temsil edin.

Represent machine learning to further enhance artificial intelligence.

Tekniği kullanılır.

The technique is used.

Makine öğrenimi programlar özellikle programlanmasına gerek kalmadan modeller belirler, tahminler yapar ve örneklerle öğrenir.

Machine learning programs identify models, make predictions, and learn from examples without the need for explicit programming.

Umarım verdiğim bu bilgilerle sizin için faydalı olabilmişimdir.

I hope I have been able to help you with the information I provided.

Beni dinlediğiniz için teşekkür ederim.

Thank you for listening to me.

Her zaman teknolojiyle kalın.

Always stay with technology.

Continue listening and achieve fluency faster with podcasts and the latest language learning research.