Merhaba 👋 Ben Ertan, İstinye Üniversitesi Bilgisayar Mühendisliği 2.sınıf öğrencisiyim. Bu yazımda TalentGrid’de yaptığım stajımla ilgili ilk 1 aylık süreci sizinle paylaşmak istiyorum.

TalentGrid’e, bir startup’ta işlerin nasıl yürütüldüğüne dair fikir sahibi olmak ve bu profesyonel deneyimin kendimi geliştirmek için çok iyi bir fırsat olabileceğini düşünerek başvurdum. Hedeflerim doğrultusunda böyle bir imkan sağlanması, benim için oldukça verimli bir sürecin başlangıcı oldu.

Her şey nasıl başladı?

Yaklaşık 7 ay önce mobil programlamadan web programlamaya geçme kararı aldım ve 7 ay boyunca web teknolojilerine (HTML, CSS, JavaScript) çalıştım.
Daha önce programlama geçmişim olduğu için bu teknolojilere alışma sürecim çok zor olmadı diyebilirim. Bir yandan web teknolojilerine çalışırken bir yandan da okulumda öğretilen C ve C++ gibi görece daha zor programlama dillerine çalışıyordum.

Fakat bir gün okulda gördüğüm derslerin aslında…


Photo by Lars Kienle on Unsplash

İnternet, web’in belkemiği, web’i mümkün kılan teknik altyapıdır. İnternet, en temel haliyle, hepsi birbirleriyle iletişim kuran geniş bir bilgisayar ağıdır.

İnternetin tarihi biraz belirsiz. 1960'larda ABD Ordusu tarafından finanse edilen bir araştırma projesi olarak başladı ve daha sonra birçok devlet üniversitesinin ve özel şirketin desteğiyle 1980'lerde kamu altyapısına dönüştü. İnterneti destekleyen çeşitli teknolojiler zamanla gelişti, ancak çalışma şekli o kadar değişmedi: İnternet bilgisayarları birbirine bağlamanın ve ne olursa olsun, bağlantıda kalmanın bir yolunu bulan bir yoldur.

Aktif Öğrenme

Daha Derine Dalış

Basit bir network (ağ)

İki bilgisayar birbiriyle iletişim kurmaya çalıştığı zaman onları fiziksel olarak (genellikle Ethernet kablosuyla) veya kablosuz olarak (örneğin WiFi veya Bluetooth sistemleri ile) bağlamanız gerekir. …


Photo by Jefferson Santos on Unsplash

Bu yazıda, C ve C++ dillerinde kullanılan pointerları yani Türkçesiyle işaretçileri inceleyip temel mantığını anlayacağız.

C ve C++ gibi makine diline yakın dillerde işaretçiler yardımıyla memory’e erişmek mümkün hale gelebiliyor. Daha gelişmiş programlama dillerinde örneğin Python, JavaScript gibi, bu işlemleri sizin yerinize yapan daha farklı yapılar bulunuyor. Bu sebeple daha önce programlama kariyerine Python veya JavaScript gibi gelişmiş dillerde başlayan geliştiricilerin, C++ dilinde yazılım geliştirmeye başladığı anda karşılaştığı işaretçi kavramı oldukça kafa kurcalayıcı olabiliyor. Hatta bazı geliştiriciler için bir o kadar lanet bir dil haline bile gelebiliyor 😏. Hepimiz aynı yollardan geçiyoruz fakat bu konu üzerinde kafa patlattıkça işlerin bir o kadar kolaylaştığı da aşikâr. Bu yazının sonunda işaretçilerin nasıl kullanıldığı ve çalışma mantığı hakkında…


Photo by Clay Banks on Unsplash

Bu yazıda, JavaScript’te ki değişken (variable), bağlam (scope) ve fonksiyon (function) kavramlarını inceleyeceğiz.

JavaScript programlama dili web uygulamaları geliştirmek, HTML ve CSS’in yanı sıra web sayfalarına ek özellikler ekleyerek işlev kazandırmamızı sağlayan bir programlama dilidir. Eğer HTML, CSS ve JavaScript hakkında daha fazla bilgi edinmek isterseniz, buradaki yazımı okumanızı öneririm.

Değişkenler (Variables)

Değişkenler, hangi programlama dilinde olursa olsun öğrenilmesi gereken en temel konular arasındadır. Değişkenleri bir defa öğrendikten sonra farklı programlama dillerinde ki kullanımlarına alışmak çok kolay olur.

Peki, bu değişkenler ne işe yarar?

Değişken tanımlamak temel olarak verilerinizi bilgisayarın belleğinde (RAM’de) saklamanızı sağlar. Siz yeni bir değişken oluşturduğunuz zaman RAM’de yeni değişkeninizin boyutu kadar bir yer ayrılır ve veriniz o yere kaydedilir. Fakat unutulmaması gereken nokta ise bilgisayarınızı kapatıp açtığınızda…


Bu yazımda sizler için derlediğim en iyi yazılımcı podcastlerini okuyacaksınız

Yazılımcılar olarak günümüzün çoğu kod yazarak geçse de bazen bir köşeye çekilip hem ruhumuzu hem de aklımızı demlememiz gerekir. Bu sebeple hem dinlenirken hem de bir yandan yeni teknolojiler, araçlar hakkında bilgi edinebileceğiniz, birbirinden değerli bir çok podcast’i sizin için bir araya topladım.

KodCast

Silikon Vadisi’nde yaşayan 3 mühendisin yazılımlar üzerine konuştuğu podcast serisi. Bu podcast serisinde proje yönetimi, test yazmak gibi yazılım dünyasının içerisinden bir çok konuyu dinleyeceksiniz. Bunları, Silikon Vadisi mühendislerinden dinlemek de cabası…

Codefiction Podcast

Türkiye’deki yazılım sektörünün problemlerini tartışan farklı sektörlerdeki bir grup yazılımcının eğlenceli mi eğlenceli podcast’i. …


Photo by Yancy Min on Unsplash

Bu ders ile temel git komutlarını öğrenerek açık kaynak dünyasına giriş yapmış olacaksınız ve bu bence çok havalı bir şey!

Merhaba! Bu makale temel git komutlarını içermektedir. Eğer Git’te yeni değilseniz bu makaleyi okumanıza gerek yok. Şayet yeniyseniz, lütfen benimle kalın 😁

Nedir bu Git?

git-scm.com adresine göre;

Git, küçükten büyüğe tüm projelerinizi hızlı ve etkili bir şekilde yönetmek için tasarlanmış, açık kaynak kodlu bir versiyon kontrol sistemidir.

Nasıl Kurulur?

Git kullanmaya başlamadan önce bunu bilgisayarınıza indirmeniz gerekiyor. Bu yüzden git-scm.com adresine giderek işletim sisteminize uygun olan git yükleyicisini indirebilirsiniz. Linux dağıtımları kullanıyorsanız eğer muhtemelen bilgisayarınızda halihazırda yüklü olabilir. Terminale “which git” yazarak bunu öğrenebilirsiniz. Bu komut size git’in kurulu olduğu dizini gösterir.


Photo by Paulius Andriekus on Unsplash

📝 Bu yazıda IDE ve Text Editor’lerin ne olduklarını inceleyeceğiz.

Yazılımcılıkta bu iki kavram çoğu kez karıştırılır aslında IDE ve Text Editor birbirinden tamamen olmasa da büyük ölçüde farklı kavramlardır. Yazılım geliştirmeye yeni başlayan bir çok insanın da kafası bu yüzden karışır.

Text Editor

Text Editor’ler günlük hayatımızda sıkça kullandığımız araçlardır. Yazılımcı olmayan insanlar bile Text Editor’ler aracılığıyla günlük işlerini halledebilirler.

Örneğin masa üstüne sağ click yapıp ‘Yeni bir .TXT dosyası oluştur.’ butonuna bastığınız zaman karşınıza gelen araç bile bir Text Editor’dür. Bu yüzden Text Editor’lere ister yazılımcı olsun, ister olmasın herkes ulaşabilir.


Photo by Fotis Fotopoulos on Unsplash

Web geliştirmeye yeni merak salmışsanız frontend ve backend kavramlarıyla ileride çokça karşılaşacaksınız. Eğer web geliştirmeye başlayacaksanız bu kavramları şimdiden öğrenmek ileride oluşacak kavram karmaşasından sizi kurtarabilir.

Frontend ve Backend Birer Sevgilidir ❤️

Günümüzde web veya mobil geliştirmede ne frontend, backend’siz, ne de backend frontend’siz yapabilir. Dolayısıyla bunlar birer sevgilidir ve varoluşları birbirlerine dayanır.

Şimdi biraz edebiyattan uzaklaşıp, bu iki terimin teknik anlamlarına yaklaşalım. Eminim ne demek istediğimi birazdan daha iyi anlayacaksınız.

Frontend

En temel anlamda, bir internet sitesine girdiğiniz zaman görebildiğiniz her şeydir yani aslında arayüzdür. Arayüz kodlayan yazlımcılara “Frontend Developer” denir. Frontend Developer’lar isterlerse internet sitesinin arayüzünü kodlamaya geçmeden önce tasarım araçlarıyla (bkz. Arayüz (UI) Tasarım…


Hey, merhaba🤘 Seni bu sayfada görmek çok sevindirici. Resmî Olmayan Yazılım Topluluğu (ROYTO), her yıl binlerce insanın uğradığı bir blog olma yolunda emin bir şekilde ilerliyor. Daha fazla içerik, topluma mâl ettiğimiz topluluğumuzun büyümesi, binlerce değil on binlerce insana ulaşabilmek için en temel ihtiyacımız.

Eğer, yazılıma, yazmaya ve bilgilerini diğer insanlarla paylaşmaya gönüllüysen seni de aramızda görmekten memnuniyet duyarız.

İşte, aramıza katılman için aşağıda ki kısacık formu doldurman yeterli;

https://forms.gle/NRxufaqVwZmrfLA6A


Photo by Jamie Morrison on Unsplash

Bu yazıda yazılıma başladığım ilk zamanlarda kafamı çokça kurcalayan iç içe for döngüsünü (İngilizce’de Nested Loops olarak geçer.) sade bir şekilde size anlatmaya çalışacağım. Bu yazıyı okuduktan sonra işin mantığını çok iyi anlamış olacaksınız ve iç içe istediğiniz kadar for döngüsü yazabileceksiniz.

İlk olarak for döngüsünün kendi başına ne yapabildiğini anlatmakla başlayalım. For döngüsü en basit tanımıyla belli bir kod kalıbını üst üste istediğiniz sayıda çalıştırmaya yarayan bir döngü çeşididir. İsterseniz sonsuz kere de çalıştırabilirsiniz (tavsiye edilmez). Şimdi bir örnekle tanımımızı pekiştirelim:

For döngüsü

Yukarıdaki kodu çalıştırdığımız zaman alt alta sırasıya 0, 1, 2 sayılarını yazdıracaktır. Burada print(i) ifadesi yukarıda…

Ertan Özdemir

Software Development Intern @TalentGrid

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store