Bilgisayar Programcılığı ile ilgili birkaç soru ve tavsiye beklentisi :)

Merhaba, Bilgisayar Programcılığı 1.sınıf öğrencisiyim. Bize programlama derslerinde python ve delphi gösteriyorlar ağırlık delphi olmak üzere. Benim ilgi alanım back-end kısmı, python üzerine kendimi geliştirmeyi düşünüyorum temelini öğrendim artık projeler üretmeye çalışarak ve hali hazırda yapılmış projeleri anlamaya çalışarak ilerleyeceğim fakat yazılım ile ilgili iş ilanlarına baktığımda python ile ilgili ilan görmek neredeyse mümkün görünmüyor. Python un daha çok data science gibi geniş bir havuzda kullanıldığını görüyorum yani uzun soluklu bir iş gibi görünüyor. Sizce python un temellerini öğrenmişken bırakıp java veya c# gibi dillere mi yönelmeliyim. Yoksa python dilini tam anlamıyla biliyorum diyene kadar python çalışmaya devam mı etmeliyim. Ya da programlama dillerini derste gördüğümüz kadarıyla öğrenip yabancı dilimi mi geliştirmeliyim (başlangıç seviyesinin biraz üstünde ingilizce biliyorum diyebiliriz) .

  1. Okul dışında programlamaya da İngilizce’ye de çalışın.
  2. Java ve C#'ta iş imkanı daha çoktur ama Python/Django bilirseniz yine işsiz kalmazsınız.
  3. “Java/C# mı Python mı?” sorusuna şu grafik cevap olabilir:

DokKiZFX4AA3XRc

3 Beğeni

Daha yeni konusu acildi:

Ama Ingilizce su anda su gezegende ogrenebilecegin en faydali dil. Gerekirse her seyi birak, Ingilizce’ye odaklan.

1 Beğeni

Cevabınız için cok teşekkür ederim. Python un django kısmına pek bakmamıştım açıkcası araştırıcam müsait bir vakitte tek bildigim web sitesi yapiminda kullanildigi.

Kusura bakmayın foruma yeni üye oldum pek vakit olmadı araştırma yapmaya. Cevap için tesekkürler

Hocam izninizle ç(alıyorum) görseli :slightly_smiling_face:

1 Beğeni

Benim değil ki. :smile:

Şu da var:

1 Beğeni

Biraz da buradan gülelim :smile:

Serinin devamı için…

https://blog.toggl.com/kill-dragon-comic/

1 Beğeni

Yazılım, bilgisayar, kod yazmak vs. bu tarz bilimsel konularda nereden eğitim alıyorsak alalım; okul, internet vs. asla kendimizi mezun etmez ve hep meraklı bir öğrenci olarak kalırsak, öğrenir ve öğrendiklerimizi aktarırsak iyi bir şeyler ortaya çıkartabiliriz, öğrenmeyi bırakıp kendimizi mezun ettiğimizin ertesi gününde artık yazdığımız o eski kodlar ne mi olur ?
Ha işte o zaman sana aynen şöyle derler; Bilgisayar bölümü mezunu galiba :smile:
Ama çok iyi bir öğrenci olursan üstad,hocam,hocaların hocası gibi değerli ünvanlara sahip olursun :wink:
Vasat öğrenci isen de en fazla çaylak falan denir herhalde :blush:

1 Beğeni

Bu biraz kötüleme olmuş sanki Python’ı. :smile:

1 Beğeni

Kara mizah diyelim :smile:

Aman @ismailarilik Hocam ne haddime.@coderistan hocanın dediği gibi sadece mizah yapmak istedim :blush:

Benim haddime :stuck_out_tongue_closed_eyes: ben kotuleyeyim istediginiz kadar :stuck_out_tongue_winking_eye: Ne lazimdi?

while...else ne oyle?
do...while niye yok?
Parametre varsayilan degerleri niye mutable (veya niye tanim zamaninda degerlendiriliyorlar)?
Closure’lar niye late binding? (Hakikaten, bunun avantaji ne? Aradim ama bulamadim)

Katılıyorum, Python kendisiyle çelişmiş. Yine de kullanışlı. Sanırım fazladan anahtar kelime eklememek için böyle yapmışlar.

Simple is better than complex. :slight_smile:

Buna bir örnek verir misiniz, anlayamadım. :slight_smile:

Şuradaki durumdan mı bahsediyorsunuz: python - What does "late binding closures" mean? - Stack Overflow

Sunun simple versiyonunu alabilir miyim? :slight_smile:

do:
    item = get_item()
    done = process_item(item)
while not done  

Tanim zamaninda degerlendirilen varsayilan deger:

def varsayilan():
	print("varsayilan!")
	return 42

def foo(x=varsayilan()):
	print("x", x)

foo()
foo()

varsayilan!
x 42
x 42

…ve mutable (degistirilebilir) olmasi:

def bar(x, xs=[]):
	xs.append(x)
	return xs

print(bar(10))
print(bar(20))

[10]
[10, 20]

Bunun isiginda, varsayilan deger bool/str/int gibi basit bir sey olmadiginda, None yapip iceride if x is not None: x = varsayilan_deger yapmak zorunda kaliyoruz.


Evet, o durumdan bahsediyorum. :slight_smile:

Hocam Python/Flask bilirsek işsiz kalır mıyız?

Dillerin anatomisine bakınca elbette kusurlar veya çelişkiler olacaktır, bunu sürdürülebilirliğin bir parçası olarak görüyorum şahsen; bu yüzden 3.7,3.8…4 diye devam eder gider :smile:
ama bilmiyorum ben de mi öyle sizler de de öyle oluyor mu?Ben python ile kod yazarken sanki kod değil de günlük yazma dilinde bir şey yazar gibi hissediyorum, bu da sadece yapacağım işe konsantre olmamı sağlıyor.Diğer diller de bilgisayarla boğuşurken, python ile sadece projem ve ben oluyoruz, hatta arada python ı bile unutuyorum ve sonunda bir şeyler ortaya çıkıyor.Farklı bir durum, hissiyat.
Hani kastettiğim şu aslında resim çizerken bir boyanın türünü, tuvalin cinsini düşünmek vardır, bir de direk ne resmi yapacaksan hemen başlayıp yaparsın gibi bir şey,bana göre resim bir an önce bitsin ve ona bakayım anlayışındayım :smile:

3 Beğeni

Elbette Python ile kod yazmak çok hızlı geliştirme imkanı sunuyor. Ancak bir mühendis değilseniz, veya kendiniz ciddi bir proje üzerinde çalışmayacaksanız detaylara çok takılmaya gerek olmuyor, bir an önce bitirilmesi isteniyor tıpkı sizin de dediğiniz gibi.

Ancak bildiğimiz gibi sadece yazmak işi bitirmiyor. Herkes yazabiliyor, ama ortaya optimize edilmiş bir ürün koymak herkesin harcı değil. Yani mesele sadece programlama dili bilmek, kütüphane bilmek değil. Aynı zamanda ciddi bir algoritma bilgisi de gerektiriyor. O yüzden yukarıda bir arkadaşın sorduğu gibi “Şunu bilirsem işsiz kalır mıyım?” sorularının cevabı evet olamaz. Çünkü dedim ya, sadece programlamak yetmez bunu optimize yazmayı da bilmek gerekiyor.

Bu konu içerisinde veri yapıları,algoritmalar,algoritma analizi, yazılım mühendisliği, tasarım şablonları gibi mühendislik konuları da var. İş alımlarında bu konular mutlaka soruluyor.

1 Beğeni

@coderistan hocam şunu bilir şunu söylerim, bir framework kullanmıyorsak ve diyelim php ile web site yapıyoruz singleton tasarım kalıbı gibi düzenleri kullanırız ama Django gibi bir çerçeve kullanırken bize zaten her şeyi sunuyor biz yalnızca boşlukları kendimize göre özelleştirip dolduruyoruz, yani şuna getirmeye çalışıyorum konuyu her şeyi öğrenmeye çalışmak güzel ama C ile kod yazmıyorsam algoritmayı çok takmam(şahsen onunla bile kodlayacak olsam, önce internetteki algoritmaları inceler sonra kendime göre uyarlarım ya :smile: )
Tabi siz engin bilgilerinizi bizlerle paylaşın ben şahsen okumaya bayılırım.
İş konusuna gelince @reo kardeşimiz bir Almanya,Hollanda,İsviçre,Abd 'li olsaydı çok rahat pyhon/django ikilisiyle iyi bir maaş ile iş bulabilirdi, emme biz Türkiye’deyiz. Üniversite diploması öncelikli eleme aşaması, öyle her üniversite olmaz sonra üniversite de belirli bir diploma notu ile mi mezunsun sonra ingilizce konuşup yazabilicen ancak Almanca bilen birisi varsa ek olarak senin önüne geçer haberin olsun.Python/django iyi ama C,C++,Java,Javascript,C# hadi bunlar backend birde react (ne alaka anlamadım SQL,MONGODB) FALAN GİDİYO BÖYLE :smile: Samimi söylüyorum bunları, böyle ilan çıkılıyor.Neyin kafası ya.Futbol da bile adam altı üstü bir topla oynuyor ama nerede oynayacağı belli defans mı formet mi artık.İnsan düşünüyor galiba üç kuruşa her işe koşturacak diye ama iş bulmayı geçtim bu şartlarda daha yabancı firmalar ülkeyi terk ediyor.
Honda artık garanti gidiyormuş sebebi belli elektrikli araçları üretmek için gelişmiş bir üretim ortamı gerek.
Velhasıl iş bulamamak senin suçun da ayıbında değil, üretim ortamı yok, ortam olmazsa üreten de kaçar gider, sen ben de şunu öğrenmedim ondan iş bulamıyoruz diye yakınır dururuz.
Kimse şunu unutmasın insanı atıl bırakmamak ve en iyi şekilde yararlanmak,işte burada mühendis kafası gerekir bunu da geçmişte Almaya göstermişti ve bizim tarlada zar zor iş yapan insanlarımızı alıp onlara o devrin Mercedes’lerini yaptırmışlardı(düşünün o güne kadar araba görmemiş ama araba yapmayı öğretmişler insanlara)
Her şey yaptıkça öğrenilir hele yazılımı hobisine yap yine yap zarar görmezsin diyorum okurlara.Tabi öğrendiğimiz şeyleri de paylaşmak daha bir keyif verir.
Yazılımla uğraşanlara destek vermek gerektiğini düşünüyorum her anlamda, soğutmak yerine.
Teşbihde hata olmaz, unutmayalım namazı kılmak için Kuran’ı ezbere bilmek gerekmez, tek bir İhlas suresi hatta Allah sözcüğü ile bile kılabilirsiniz, sonra sonra öğrenirsiniz diğer sureleri, ayrıca İlahiyat diplaması falan da gereksizdir, yazılımı da bu mantıkda düşünün(namaz kılmayan biri olarak biraz ironik bir benztme oldu ama :smile: )

1 Beğeni

Yorumumda da dedim ya, ciddi bir proje geliştirmeyecekseniz sizin yerinize herşeyi halleden kütüphaneleri kullanırsınız gereksiz detaylarla uğraşmak zorunda kalmazsınız. Ancak projeniz büyüyüp isteklere cevap veremez hale geldiğinde detayların ne kadar önemli olduğunu görebilirsiniz. Algoritma konusuna hiç girmiyorum çünkü cidden ayrı başlıkta tartışılabilecek önemli ve derin bir konu. Hatta algoritma konusunu halletiğimizde birçok konuda siz de bana hak vereceksiniz :slight_smile:

Yazılımla uğraşanlara destek vermek hepimizin amacı. Zaten buralarda bulunmamızın bir nedeni de bu değil mi? Yardıma ihtiyacı olanlara yardımcı olmak, bazen de yanlışlarını düzeltmek. Ancak destek olacağız diye bazı şeyleri de es geçmek doğru olmaz bence. Sadece birkaç kütüphaneyle güzel işler çıkarabilirsiniz,hobinizdir buna kimsenin itirazı yok desteği var. Ancak iş dünyasına girmek istiyorum derseniz o zaman bazı kriterleri bilmek görmek lazım, çünkü siz hobiyi bırakmış artık ciddi,profesyonel bir iş yapmaya karar vermişsiniz. Sektörü bilmek iyidir. Ben de sadece Java bilmemin sektörde beni ciddi olarak önplana çıkaracağını sanıyordum ama staj başvurularında benden istedikleri şeyleri görünce şaşıp kaldım öyle. Ve hemen çalışmalara başladım.

Kısaca hobi olarak yazılım geliştirmeye kimse birşey demiyor, ancak iş dünyasında malesef gerçekler böyle. Ben bir işveren değilim, öğrenciyim dolayısıyla bunları görerek yazıyorum. Burada yazılanları da heves kırıcı olarak değil de, bir tavsiye olarak değerlendirirseniz daha güzel olur. İyi forumlar.

2 Beğeni