PMP Olunca Bizi Bırakıp Gidecek mi Bu Çocuk?

Kendimi tanıtayım: Ben bir yöneticiyim. Ekip yönetiyorum, hedef koyuyorum, strateji geliştiriyorum. Ama son zamanlarda, küçük ama huzur kaçıran bir şüphe beynimi kemiriyor:

“Bu bizim Ahmet, gizli gizli PMP sınavına çalışıyor galiba…”

Başta önemsemedim. “Gelişim göstermek istiyor çocuk,” dedim. “Sertifika almak istiyor, ne güzel…” Ama zamanla bazı şeyler dikkatimi çekti. Toplantılarda “deliverable”, “scope creep”, “stakeholder management” gibi kelimeleri kullanmaya başladı. Göz göze geldiğimizde, sanki bir şey saklıyormuş gibi davranıyor. Kahvesini içerken bile MS Project ekranına kaçamak bir bakış atıyor.

Ve sonra bir gün… tesadüfen yazıcıdan “PMP Question Set by Gökrem Tekir, PMP® ” başlıklı doküman bastırdığını gördüm.

İşte o an içimde bir kıyamet koptu:

“Bu çocuk PMP oluyor! Hem de bizden habersiz!”


Peki Bu Neden Kafama Takıldı?

Ben kötü biri değilim. Çalışanlarım gelişsin, kariyerlerinde ilerlesin isterim. Ama bir yandan da, ekip kurmuşuz, omuz omuza savaşmışız, o yoğun deadline’ları birlikte geçmişiz. Şimdi çocuk PMP olacak, sonra ne olacak?

LinkedIn profilini güncelleyip, bir de ‘Open to Work’ mü diyecek?

Yoksa ‘Artık ben proje yönetirim, operasyona bakamam’ mı diyecek?

Ya da önceki sprint retrospective’te “bize sahip çıkılmıyor” diyen oydu da, şimdi gidip başka takıma mı katılacak?”

İnsan işte… Duygusal. Bir yandan gururlanıyorum, bir yandan da “bizi bırakacak mı?” korkusunu yaşıyorum.


PMP Ne Demek, Ne Değil?

Araştırmaya başladım. PMP neymiş bakalım… Meğer iş öyle kolay değilmiş. 35 saatlik eğitim, kapsamlı bir sınav, bilgi alanları, süreç grupları, çevik, yarı-çevik, hibrit yöntemler falan…

Kendi kendime düşündüm:

“Bu kadar çalışan, bu kadar efor harcayan biri, gerçekten ayrılmak istiyor olsaydı, patronuna bunu neden söylemesin ki? Belki de sadece kendini geliştirmek istiyordur?”

Sonra biraz daha düşündüm…

“Yok yok, kesin gidecek bu. Gelişmek isteyen insan kalmaz. Kalıp geliştikçe sistemle çatışır.”


İşte Tam Bu Noktada Kendi Çelişkilerimle Yüzleştim

Ben bir yönetici olarak yıllardır toplantılarda “inovasyon”, “gelişim”, “yetkinlik artışı” diyorum. Çalışanlarıma “kendinizi geliştirin, sürekli öğrenin” diye telkinde bulunuyorum. Ama iş gerçekten öğrenmeye, gelişmeye geldiğinde, içimden bir ses “aman ha çok da gelişme, sonra kaçar gidersin” diyor.

Bu nasıl bir çelişki?

“Sen hem ‘geliş’ diyorsun, hem de gelişince güvenmiyorsun.”

İşte bu içsel sorgulama beni başka bir noktaya getirdi.


Asıl Korkum Ne?

Aslında korkum şu:

Ahmet PMP olunca ben sorgulanacağım. O sınavı geçince, belki benim eksik yöneticilik becerilerim daha görünür olacak. Belki süreçleri daha iyi biliyor hale gelecek. Belki bazı şeyleri sorgulayacak.

Ve belki… haklı çıkacak.

“Bu projede net bir tanım yapılmamış.”

“Risk kaydı tutmadık, o yüzden bu başımıza geldi.”

“Paydaş haritası yoktu, bu yüzden iletişim kopuktu.”

Bunları bir çalışan söylese, “bilmişlik” olur. Ama PMP olan biri söylerse… adam belgeyle konuşuyor.

İşte sanırım en çok bundan korkuyorum.

Bir Yandan da Gurur

Ama bir yandan da kıymetini biliyorum. Ekipten birinin PMP olması, takımın kalitesini artırır. Belki diğerlerine örnek olur. Belki içimizden birinin dışarıdan doğrulanmış yetkinliğe sahip olması, müşterilerle görüşmelerimizde avantaj sağlar.

Düşünsene, müşteri arıyor ve diyoruz ki:

“Bu projeyi yöneten arkadaş PMP sertifikalı.”

Boom! Güven %50 artar.


Sonra Şunu Dedim Kendime:

“Yahu, bu çocuk gidiyorsa bile, güzel ayrılacak. Şirketin adını iyi anacak. Belki dışarıdan destek verecek. Belki başka bir gün, başka bir pozisyonda yollarımız yine kesişecek.”

İnsanı kaçıran gelişim değil, gelişime izin vermeyen ortamdır.


Ve Sonunda Ne Yaptım?

Ahmet’i çağırdım. Dedim ki:

“Bak oğlum, sen PMP’ye çalışıyorsun değil mi?”

Gözleri büyüdü. Önce inkar etti, sonra kabul etti. “Evet müdürüm, ama işime yansıtmadım, akşamları çalışıyorum,” dedi.

Ben de şöyle dedim:

“Aferin. PMP sertifikası kolay değil. Destek gerekiyorsa, eğitim bütçesi gerekiyorsa, söyle. Hem şirkete katkı olur hem sana.”

Ahmet’in yüzü o an aydınlandı. Gözlerinde bir saygı parıltısı belirdi. “Gerçekten destekler misiniz?” dedi.

Ben de dedim ki:

“Evet, desteklerim. Çünkü ben sadece yönetici değilim, aynı zamanda yol göstericiyim.”

Sonuç?

Ahmet şu anda PMP sınavına hazırlanıyor. Arada gelip süreçlerle ilgili bana sorular soruyor. Ben de öğreniyorum, güncelleniyorum. Hatta kendime de bir hedef koydum: Bu yıl içinde ben de bir PMP’ye başvuracağım.

Bazen çalışanına güvenmek, sadece onu değil, seni de geliştirir.

Ve unutmayın:

İyi insanlar, sadece iyi fırsatlara gider. Siz o fırsatı yaratmazsanız, başkası yaratır.


İşte böyle sevgili meslektaşlarım.

Eğer bir çalışanınız gizli gizli PMP çalışıyorsa, paniklemeyin.

Onunla konuşun, destek olun.

Çünkü gelişmek isteyen bir çalışan, aslında size en çok değer katan kişidir.

Hayaller Silikon Vadisi, Gerçekler Organize Sanayi Sitesi

silicon valley
Photo by Zetong Li on Pexels.com

“PMP oldum… ama hiçbir şey değişmedi.”

Evet, bunu söylemek kolay değil ama dürüst olacağım. Aylarca hazırlandım, geceleri senaryolar çalıştım, süreçleri ezberledim, sınavdan geçmek için ter döktüm… Ve sonunda PMP oldum.

Ama şimdi, ofis koltuğumda otururken içimden şöyle geçiyor: “Bütün bu öğrendiklerimi nerede, nasıl kullanacağım?” Bizim şirkette işler hâlâ Excel tablolarıyla, WhatsApp mesajlarıyla ve ‘Abi şunu da hallediver’ ricalarıyla yürüyor. Proje başlangıç belgeleri yok, iş tanımları muğlak, risk planlaması desen kimse duymamış bile.

Bu bir iç döküş değil, bir sorgulama. Belki siz de aynı durumdasınız. PMP olmakla, PMP gibi çalışmak arasında büyük bir boşluk varmış; ben bunu net gördüm.

Silikon Vadisi hayal ederken Organize Sanayi Sitesinde olduğumu “iki usta alıp acil Ankara’ya gitmen gerekiyor; müşteri gönderdiğimiz üründeki hataları fark etmiş” diye veryansın eden kalite müdürümüzle konuşurken daha iyi anladım.

PMP Olmak Neden Önemliydi?

Benim için PMP olmak, yalnızca bir unvan kazanmak değildi. Bir sistemin, bir metodolojinin, hatta bir zihniyetin parçası olmak demekti. Riskleri önceden görüp plan yapabilmek, paydaşları sürece dahil etmek, değişiklikleri kontrol altında tutmak…

Bir gün, yöneticim bana “Bu işi üç haftada bitirebilir miyiz?” diye sorduğunda, artık içimden sadece “Belki” demek yerine, gerçekçi bir zaman çizelgesi hazırlayıp “Critical Path bu, elimizdeki kaynaklar bu, isterseniz kısıtları beraber değerlendirelim” diyebilecektim.

Ama işte teori başka, pratik başka. Gerçek hayatın “acil işler listesi” PMP sınavındaki bilgi alanlarına hiç benzemiyor bazen.

Şirket Kültürü PMP’yi Kaldırmıyor mu?

Şirketimdeki genel yaklaşım şu: İş yapılıyorsa süreçle uğraşmaya gerek yok. Ne gereği var ‘kapsam tanımı’ yapmanın? Müşteri memnunsa sorun yok. Kimse Gantt şeması istemiyor. Stakeholder analizi? O da ne?

Bir proje yöneticisi olarak elimde en iyi mutfak tarifleri olabilir, ama mutfakta sadece mikrodalga varsa, Michelin yıldızlı yemek hayal oluyor. Süreç kurmak için yönetsel destek lazım, kültürel farkındalık lazım. Ama benim çalıştığım yerde süreçten çok “pratiklik” önemli. “Yazılı hale getirme” gibi şeyler fazlalık gibi görülüyor.

Yani evet, PMP sertifikalıyım ama bu unvanı taşıyacak sistem yok etrafımda. Uygulamak istiyorum, ama yapı buna uygun değil.

PMP Sertifikası Boşa Mı Gitti?

İlk başta bu soruyu çok sordum kendime. “O kadar zaman, o kadar para… Boşa mı gitti?” Ama sonra fark ettim: PMP eğitimi bana sadece süreçleri öğretmedi; düşünme şeklini değiştirdi.

Artık bir projeye başlarken şu sorular kafamda otomatik dönüyor:

Kapsam net mi?

Paydaşlar kimler?

Riskler tanımlı mı?

Hangi kısıtlarla uğraşıyoruz?

Belki bu soruları sesli sormuyorum şirkette; ama artık işler böyle kafamda şekilleniyor. Bu bile büyük bir fark. Kendi içimde bir proje yönetim motoru çalışıyor artık.

Küçük Adımlarla PMP Yaklaşımını Getirmek Mümkün mü?

Bir noktadan sonra şunu fark ettim: Sistemi tamamen dönüştüremesem de, bazı yaklaşımları parça parça entegre edebilirim. Örneğin:

Toplantıdan sonra kısa bir toplantı özeti geçmek → İletişim yönetimi

Her işte “risk var mı?” diye sormak → Risk bilincini aşılamak

Yeni bir işe başlamadan önce küçük bir kapsam belirleme dokümanı hazırlamak → Kapsam kontrolü

Kaynakları listelemek ve iş yükü dengesini göstermek → Kaynak planlaması

Kimse bana “Bunları yap” demedi. Ben de kimseye “Ben PMP’yim, böyle yapmalıyız!” demiyorum. Ama küçük örneklerle, değer göstererek bu kültürü yavaş yavaş inşa edebileceğimi fark ettim.

Hayal Kırıklığı Yerine Yön Değiştirme

Eğer siz de benim gibi “PMP oldum ama uygulayamıyorum” diyorsanız, bu hayal kırıklığını başka bir yöne çevirmeyi deneyin. Belki bulunduğunuz yerde bir şeyleri değiştirmek kolay değil. Ama bu sizin liderlik etme fırsatınız olabilir.

Proje yönetimi sadece süreç değil, aynı zamanda bir liderlik sanatı. Siz o liderliği gösterdiğinizde insanlar da değişmeye başlıyor. Belki yavaş, belki fark etmeden… Ama başlıyor.

Ya Hâlâ Olmuyorsa?

Bazı şirketler gerçekten de PMP bakış açısını hiç benimsemeyecek kadar katı olabilir. Böyle bir durumda da artık dürüst olmak gerek: Belki de bu bilgi birikiminin kıymet gördüğü bir ortama geçme zamanı gelmiştir.

Çünkü PMP olmak, sadece sınavı geçmek değil; belli bir standarda ulaşmak demek. O standardı korumak da sizin elinizde. Belki de sizi bekleyen yeni fırsatlar var, sizi gerçekten proje yöneticisi gibi görmek isteyen firmalar…

Sonuç

PMP sertifikası almak benim için bir dönüm noktasıydı. Hâlâ bu bilgileri tam anlamıyla uygulayabildiğimi söyleyemem ama bakış açım tamamen değişti. Şirketimde bu kültür yok belki, ama bende var. Ve bu bile önemli bir başlangıç.

Umarım bu yazıyı okuyan ve benzer bir durumda olan herkes şunu hisseder: PMP olmak, sadece bir kâğıt parçası değil. Bu bir vizyon. Uygulayamasan bile içinde taşıdığın bir vizyon. Ve zamanı geldiğinde, o vizyonun bir yerlerde kıymet göreceği kesin.

Bir Başarısızlık Hikayesi

“PMP Sınavını Kazanamadım… Ama Bu Son Değil!

Bugün size başarı hikayesi değil, yarım kalmış bir yolculuğu anlatacağım.

Aylarca çalıştım. Kitaplar, videolar, deneme sınavları, notlar… Geceleri uykusuz kaldım, hafta sonlarımı masanın başında geçirdim. Belki siz de şu anda bu satırları okurken benzer bir süreçten geçiyorsunuzdur. PMP sertifikası almak, benim için sadece bir mesleki gelişim değil, aynı zamanda kendime olan inancımı yeniden inşa etme yoluydu.

Ama olmadı.

Sınav salonundan çıktığımda bir süre nefes alamadım. Ekranda “Sorry, you did not pass the exam” yazısını gördüğümde içimden bir şeyler koptu. Bunca emeğe, özveriye, zaman ve enerjiye rağmen… olmadı. O an, sanki koca dünya üzerime çöktü.

Ama sonra düşündüm: Bu gerçekten bir son mu? Yoksa bu, gerçek başlangıç için bir hazırlık mı?

Neyi Yanlış Yaptım?

İtiraf etmeliyim: sadece çalışmakla yetindim. Ama planlamadım. Zayıf yönlerimi analiz etmedim. Agile konularına hâkim olduğumu sanıyordum, ama sorular bana hiç de o kadar tanıdık gelmedi. Deneme sınavlarını çözüyordum ama cevapların nedenlerini anlamaya yeterince zaman ayırmıyordum. Daha da önemlisi, sınav stratejisi oluşturmamıştım. Belki de sınavdan çok sınava hazırlık şeklimi sorgulamam gerekiyordu.

Bu Süreçte Neler Öğrendim?
• PMP bir bilgi sınavı değil; bir düşünme biçimi sınavı.
• Tek başına çalışmak faydalı ama bir yol göstericiyle çalışmak çok daha etkili.
• Deneme sınavlarında yanlış yaptığın sorular, aslında sana yol gösteren haritalar.
• “Başaramadım” demek, “Başarısızım” demek değil.
• Ve en önemlisi: Kaybettiğini sandığın anda bile hâlâ kazanmak için çok şeyin olabilir.

Şimdi Ne Yapacağım?

Yeniden hazırlanacağım. Bu sefer daha bilinçli.
• Eksik konularımı analiz edip oraya odaklanacağım.
• Sadece ezberlemeye değil, anlamaya çalışacağım.
• Zaman yönetimi ve sınav stresi üzerine de çalışacağım.
• Belki bir eğitmenle, belki bir çalışmayla, ama mutlaka bir stratejiyle ilerleyeceğim.

Ve bu sefer sınav salonundan çıktığımda yüzümde başka bir ifade olacak.

Bu Yazıyı Neden Yazdım?

Belki şu an sen de benim yaşadığım duyguları yaşıyorsundur. Belki başarısız oldun. Belki de denemeye korkuyorsun. Sana sadece şunu söylemek istiyorum:

Başarısızlık son değil. Doğru hazırlanırsan, bir sonraki denemede başarma ihtimalin çok yüksek. Bu bir maraton. Ve biz, yolda öğrenenleriz.

Ben yola devam ediyorum. Sen de pes etme. Belki bir gün PMP olduğumuz günleri birlikte kutlarız.”

Bir PMP Adayı

Proje Yönetimi Eğitimleriyle Kariyerinizi Geliştirin

Proje yönetimi alanında uzmanlaşmak, kariyerinizde fark yaratmanın en etkili yollarından biridir. Günümüz iş dünyasında projelerin başarıyla tamamlanması, şirketlerin rekabet gücünü artırır. Bu nedenle, proje yönetimi kursları profesyoneller için vazgeçilmez bir eğitim alanı haline gelmiştir. Bu yazıda, proje yönetimi kurslarının kariyerinize nasıl katkı sağladığını, hangi becerileri kazandırdığını ve sertifikasyon süreçlerini detaylı şekilde ele alacağım.

Proje Yönetimi Kursları Neden Önemlidir?

Proje yönetimi, sadece bir işi zamanında bitirmekten ibaret değildir. Kaynakların etkin kullanımı, risklerin yönetimi, ekip koordinasyonu ve müşteri memnuniyeti gibi pek çok unsuru içerir. Bu karmaşık süreci başarıyla yönetmek için sistematik bilgi ve becerilere ihtiyaç duyarsınız.

Proje yönetimi kursları, size bu becerileri kazandırmak için tasarlanmıştır. Örneğin, PMI® onaylı kurslar, uluslararası standartlara uygun eğitim sunar. Bu sayede, sadece teorik bilgi değil, aynı zamanda pratik uygulamalarla da donanırsınız. Kurslar, proje planlamadan bütçe yönetimine, iletişim stratejilerinden risk analizine kadar geniş bir yelpazede eğitim verir.

Bu eğitimler sayesinde, projelerinizi daha etkin yönetebilir, iş süreçlerinde verimliliği artırabilir ve ekip içi iletişimi güçlendirebilirsiniz. Ayrıca, proje yönetimi alanında sertifika sahibi olmak, işverenler nezdinde sizi daha değerli kılar.

Planlama

Proje Yönetimi Kursları ile Kazanacağınız Temel Beceriler

Bir proje yöneticisi olarak başarılı olmanız için bazı temel becerilere sahip olmanız gerekir. Proje yönetimi kursları, bu becerileri sistematik şekilde geliştirmenize olanak tanır. İşte kazanacağınız başlıca yetkinlikler:

  • Zaman Yönetimi: Projelerin zamanında tamamlanması için etkin planlama ve takip yöntemleri öğrenirsiniz.
  • Risk Yönetimi: Olası riskleri önceden tespit edip, etkilerini minimize etme stratejileri geliştirilir.
  • Bütçe Yönetimi: Proje maliyetlerini kontrol altında tutmak için finansal planlama becerileri kazanılır.
  • Ekip Yönetimi: Takım içi iletişim ve motivasyon teknikleri ile ekip performansını artırma yolları öğretilir.
  • İletişim Becerileri: Proje paydaşları ile etkili iletişim kurma ve raporlama yöntemleri geliştirilir.

Bu beceriler, sadece proje yönetiminde değil, genel iş hayatınızda da size avantaj sağlar. Örneğin, zaman yönetimi becerisi sayesinde günlük işlerinizi daha verimli organize edebilirsiniz.

Rapor Analizi

Proje Yönetimi Eğitimleri ile Sertifikasyon Süreci

Proje yönetimi alanında kariyer yapmak isteyenler için sertifikasyon büyük önem taşır. PMP® (Project Management Professional) gibi uluslararası geçerliliği olan sertifikalar, profesyonel profilinizi güçlendirir. Bu sertifikalara ulaşmak için ise doğru eğitim programlarına katılmak gerekir.

Proje yönetimi eğitimleri bu noktada devreye girer. PMI® onaylı eğitimler, sertifika sınavlarına hazırlık için kapsamlı içerik sunar. Eğitimlerde, sınav formatı, soru tipleri ve sınav stratejileri detaylı şekilde anlatılır. Ayrıca, gerçek proje örnekleri üzerinden uygulamalar yapılır.

Sertifikasyon süreci genellikle şu adımlardan oluşur:

  1. Eğitim programına katılım ve derslerin tamamlanması
  2. Sınav başvurusu ve gerekli belgelerin hazırlanması
  3. PMP® sınavına girilmesi ve başarılı olunması
  4. Sertifikanın alınması ve sürekli mesleki gelişim için yenileme süreçlerinin takip edilmesi

Bu süreç, disiplinli çalışma ve doğru rehberlikle başarıyla tamamlanabilir. Eğitim kurumları, adaylara sınav öncesi deneme testleri ve destek hizmetleri sunarak başarı şansını artırır.

Kariyer

Kariyerinizde Fark Yaratmak İçin Atmanız Gereken Adımlar

Proje yönetimi alanında uzmanlaşmak istiyorsanız, sadece kurslara katılmak yeterli değildir. Kariyerinizde fark yaratmak için şu adımları takip etmelisiniz:

  • Doğru Kursu Seçin: PMI® onaylı ve sektör tarafından tanınan eğitim programlarını tercih edin.
  • Pratik Deneyim Kazanın: Teorik bilgileri gerçek projelerde uygulayarak pekiştirin.
  • Sürekli Öğrenin: Proje yönetimi trendlerini ve yeni metodolojileri takip edin.
  • Ağınızı Genişletin: Sektördeki profesyonellerle iletişim kurarak bilgi ve deneyim paylaşımında bulunun.
  • Sertifikasyonunuzu Güncel Tutun: PMP® gibi sertifikalar belirli aralıklarla yenilenmelidir. Bu süreçte yeni eğitimlere katılmak önemlidir.

Bu adımlar, sizi sadece bir proje yöneticisi değil, aynı zamanda sektörde lider bir profesyonel yapar. İstanbul Kurumsal Gelişim gibi kurumlar, bu yolculukta size rehberlik edecek eğitim ve destek hizmetleri sunar.

Proje Yönetimi Kursları ile Geleceğe Hazırlanın

Geleceğin iş dünyasında proje yönetimi becerileri daha da kritik hale gelecek. Dijital dönüşüm, karmaşık projelerin artması ve global rekabet, bu alandaki uzmanlara olan talebi artırıyor. Bu nedenle, proje yönetimi kursları ile kendinizi sürekli geliştirmek, kariyerinizin sürdürülebilirliği için şarttır.

Eğitimler sayesinde sadece mevcut işinizde değil, farklı sektörlerde de fırsatlar yakalayabilirsiniz. Örneğin, teknoloji, inşaat, finans ve sağlık gibi alanlarda proje yönetimi bilgisi yüksek talep görmektedir. Ayrıca, uluslararası sertifikalarla yurt dışı iş imkanlarınız da genişler.

Sonuç olarak, proje yönetimi alanında eğitim almak, kariyerinizde yeni kapılar açar. Doğru eğitim programını seçip, öğrendiklerinizi pratiğe dökerek profesyonel hayatınızda fark yaratabilirsiniz.

Proje yönetimi alanında kendinizi geliştirmek ve uluslararası sertifikalara ulaşmak için proje yönetimi eğitimleri sayfasını ziyaret edebilirsiniz. Bu eğitimler, kariyerinizde sağlam adımlarla ilerlemenize yardımcı olacaktır.

“PMP Oldum ama Yöneticim Beni Görmezden Geliyor.”

Öncelikle, PMP sertifikasını alman çok büyük bir başarı. Zorlayıcı bir süreci tamamladın, profesyonel yetkinliğini uluslararası düzeyde kanıtladın. Ancak yöneticinin bu başarıyı görmezden gelmesi can sıkıcı olabilir — çünkü takdir beklemek insanidir. Bu durumla olgun, stratejik ve kendini yıpratmadan nasıl başa çıkabilirsin?

1. Gerçek Amacını Hatırla
PMP sertifikasını neden aldın?

* Daha yetkin bir profesyonel olmak için mi?
* Daha iyi projelere liderlik etmek için mi?
* Kendine yatırım yapmak için mi?

Bu başarıyı başkalarının takdirine değil, kendi gelişimine dayandırırsan duygusal olarak daha güçlü durursun. Yani: “Yöneticim takdir etmese de ben bu başarıyı hak ettim.”

2. Yöneticinin Tutumunu Anlamaya Çalış
Her görmezden gelme kötü niyetli olmayabilir. Şunları bir düşün:

* Başarıyı fark etti ama nasıl tepki vereceğini bilmiyor olabilir.
* Seni kaybetmekten korktuğu için duygularını bastırıyor olabilir.
* Kendisi PMP değilse, kıyaslama yapmamak için mesafe koyuyor olabilir.

Yani bu sessizlik bazen “küskünlük”, bazen de “korku” olabilir.

3. Dolaylı Bir Şekilde Gündeme Getir
Doğrudan “Neden tebrik etmediniz?” demek yerine, başarıyı doğal bir şekilde gündeme taşıyabilirsin:

“PMP sürecinde öğrendiğim bazı araçları önümüzdeki projede denemek isterim, örneğin risk değerlendirmede…” Bu tür cümleler hem başarıyı hatırlatır hem de yeni değer önerisi sunar.

4. Gelişim Talep Et (Gizli Terfi Girişimi)
Yöneticin görmese bile sen bu başarıyı pozisyona dönüştürmeye çalış:

“Artık projelerde daha fazla sorumluluk alabileceğimi düşünüyorum. PMP ile bazı alanlarda katkım olabilir, örneğin zaman planlama veya paydaş yönetimi gibi.”

Böylece hem takdiri tetiklersin, hem de yeni fırsatlar doğurursun.

5. Mentorluk Rolünü Üstlen
Senin başarın, diğer ekip üyeleri için de cesaret verici olabilir. PMP sürecini anlatan kısa bir paylaşım ya da iç eğitim öner:

“İsterseniz ekibe PMP süreciyle ilgili kısa bir bilgi paylaşımı yapabilirim. Faydalı olabilir.”

Bu, görünürlüğünü artırır ve yöneticinin seni “göz ardı edemeyeceği” bir pozisyona getirir.

6. İçsel Takdir Mekanizmanı Geliştir
Belki de artık dış takdir yerine iç takdirle yürümen gereken bir dönemdesin. Kendine şunu söyle:

“Görmese de fark etse de etmese de ben bu başarıyı kazandım. Bu artık benim kimliğimin bir parçası.”

Çünkü bazen sessizlik, bir terfiden daha sessizce gelir ama senin gelişimini durdurmamalıdır.

7. Gerekirse Alternatifleri Düşün
Eğer bu başarı görmezden geliniyor, katkın değer bulmuyorsa ve bu kronik bir hâl aldıysa, şunu düşün:

* Beni gören başka bir kurum ya da pozisyon var mı?
* Bu başarıyı daha iyi değerlendirebileceğim bir yer olabilir mi?

Bu başarı, yeni fırsatların kapısını açabilir.

Özet
* Kendi başarını içselleştir.
* Yöneticinin neden sessiz kaldığını analiz et.
* Başarıyı gündeme doğal şekilde taşı.
* Daha fazla sorumluluk talep et.
* Gerekirse yeni fırsatları düşün.

PMP Sertifikası için: İstanbul Kurumsal Gelişim.

Python for Project Managers 9 – Tuples

Photo by Linda Eller-Shein on Pexels.com

1. What is a Tuple?

A tuple in Python is an ordered and immutable data structure used to store multiple values in a single variable. It is very similar to a list, but the main difference is that tuples cannot be changed after creation.

my_tuple = (1, 2, 3)

2. Creating a Tuple

  • Using parentheses:
fruits = ("apple", "banana", "cherry")
  • Parentheses are optional (a comma is enough):
colors = "red", "green", "blue"
  • For a single-element tuple, a trailing comma is required:
one_element = ("hello",)

3. Accessing Tuple Elements

You can access tuple elements using index numbers. Indexing starts at 0.

print(fruits[0])  # apple
print(fruits[-1]) # cherry

4. Iterating Through a Tuple

for fruit in fruits:
    print(fruit)

5. Nested Tuples

Tuples can contain other tuples:

nested = (1, 2, (3, 4))
print(nested[2])      # (3, 4)
print(nested[2][0])   # 3

6. Immutability

Tuple contents cannot be changed after creation. The following will raise an error:

fruits[1] = "orange"  # ❌ TypeError

7. Advantages of Tuples

  • Faster: Tuples consume less memory and are faster than lists.
  • Safer: Immutable nature ensures data integrity.
  • Hashable: Tuples can be used as keys in dictionaries (lists cannot).

8. Tuple Functions

FunctionDescription
len(t)Returns the number of elements
t.count(x)Counts how many times x appears
t.index(x)Returns the index of the first occurrence of x
numbers = (4, 2, 7, 2, 9)
print(numbers.count(2))  # 2
print(numbers.index(7))  # 2

9. Converting Between Tuples and Lists

my_list = [1, 2, 3]
my_tuple = tuple(my_list)

new_list = list(my_tuple)

Summary:

FeatureTupleList
Ordered
Mutable❌ (immutable)✅ (mutable)
Syntax()[]
PerformanceFasterMore flexible
Use CasesFixed sets, safe dataDynamic collections

Try Yourself: https://colab.research.google.com/drive/1w3s04eF5v9Y3OiXZgdA4k8s47SscLaEY?usp=sharing

Proje Yöneticileri için Python #8 – Listeler (Lists)

Photo by cottonbro studio on Pexels.com

1. Liste Nedir?

Liste, birden fazla veriyi tek bir değişkende tutmamızı sağlayan, sıralı (ordered) ve değiştirilebilir (mutable) bir veri yapısıdır. Python’daki listeler köşeli parantez [ ] ile tanımlanır.

my_list = [1, 2, 3, 4, 5]

2. Liste Elemanları

Listelerde farklı veri tipleri bir arada bulunabilir:

mixed_list = [42, 'Python', 3.14, True]

Liste içinde başka bir liste bile olabilir (iç içe liste):

nested_list = [1, [2, 3], 4]

3. Liste Elemanlarına Erişim (Indexing)

Python’da dizinler (index) 0’dan başlar:

fruits = ['elma', 'muz', 'kiraz']
print(fruits[0])   # elma
print(fruits[2])   # kiraz

Negatif indeksler sondan başlamayı sağlar:

print(fruits[-1])  # kiraz
print(fruits[-2])  # muz

4. Dilimleme (Slicing)

Bir listenin belli bir kısmını almak için liste[start:stop] yazılır.

numbers = [10, 20, 30, 40, 50]
print(numbers[1:4])  # [20, 30, 40]
print(numbers[:3])   # [10, 20, 30]
print(numbers[3:])   # [40, 50]

5. Liste Elemanlarını Değiştirme

Listeler değiştirilebilen (mutable) yapılardır.

colors = ['kırmızı', 'yeşil', 'mavi']
colors[1] = 'sarı'
print(colors)  # ['kırmızı', 'sarı', 'mavi']

6. Liste Metotları

Python’da listelerle çalışmayı kolaylaştıran birçok yerleşik metod vardır:

append()

: Listeye eleman ekler

my_list = [1, 2, 3]
my_list.append(4)
print(my_list)  # [1, 2, 3, 4]

insert(index, value)

: Belirtilen index’e eleman ekler

my_list.insert(1, 99)
print(my_list)  # [1, 99, 2, 3, 4]

remove(value)

: İlk bulunan elemanı siler

my_list.remove(2)
print(my_list)  # [1, 99, 3, 4]

pop(index)

: Belirtilen index’teki elemanı çıkarır (index verilmezse sonuncuyu çıkarır)

my_list.pop()      # 4 çıkarıldı
my_list.pop(0)     # 1 çıkarıldı

sort()

: Listeyi sıralar (kalıcı)

nums = [3, 1, 4, 2]
nums.sort()
print(nums)  # [1, 2, 3, 4]

sorted()

: Sıralı yeni liste döner (orijinali değişmez)

nums = [3, 1, 4, 2]
print(sorted(nums))  # [1, 2, 3, 4]
print(nums)          # [3, 1, 4, 2]

reverse()

: Listeyi ters çevirir

nums.reverse()
print(nums)  # [2, 4, 1, 3]

len()

: Liste uzunluğunu verir

len(nums)  # 4

7. Liste İçinde Dolaşmak (Loop)

names = ['Ali', 'Ayşe', 'Mehmet']
for name in names:
    print(name)

8. Liste Oluşturmanın Kısa Yolu: List Comprehension

Listeleri hızlı oluşturmak için kullanılır:

squares = [x**2 for x in range(5)]
print(squares)  # [0, 1, 4, 9, 16]

9. Listeyi Temizleme

my_list.clear()
print(my_list)  # []

10. Liste Kopyalama

copy_list = my_list.copy()

Örnek: Proje Yöneticilerine Yönelik Liste Kullanımı

Bir proje yöneticisi görev listesini Python’da liste olarak tutabilir:

task_list = ['Kapsam Tanımı', 'Zaman Planı', 'Bütçe Hesaplama']
task_list.append('Risk Analizi')
print("Güncel Görevler:", task_list)

5 Uygulama Sorusu


Görev 1: Şehirler Listesi

cities = ['Paris', 'Tokyo', 'Berlin', 'New York', 'İstanbul']

Görev:

  • Listenin ilk şehrini yazdırın.
  • Listenin son şehrini yazdırın.
  • Listede kaç şehir olduğunu yazdırın (len() fonksiyonunu kullanın).

Görev 2: Meyveler Listesi

fruits = ['elma', 'muz', 'kiraz']

Görev:

  • ‘muz’ öğesini ‘portakal’ ile değiştirin.
  • Listenin sonuna ‘üzüm’ ekleyin.
  • ‘elma’yı listeden silin.
  • Listenin son halini yazdırın.

Görev 3: Filmler Listesi

movies = ['Inception', 'Avatar', 'The Matrix', 'Interstellar']

Görev:

Listeyi döngü ile dolaşın ve her film için şu formatta bir mesaj yazdırın:

“Ben <film> izlemeyi çok seviyorum!”


Görev 4: Sayılar Listesi

numbers = [34, 12, 5, 66, 29, 100, 3]

Görev:

  • Dilimleme (slicing) kullanarak ilk 3 sayıyı yazdırın.
  • Listeyi artan sıraya göre sıralayın ve yazdırın.
  • Sıralanmış listenin son 2 elemanını yazdırın.

Görev 5: Çift Sayıların Karesini Oluşturma

Bu görevde başlangıç listesi yoktur — listeyi kendiniz oluşturmanız gerekiyor.

Görev:

  • 1 ile 20 arasındaki çift sayıların karelerinden oluşan bir listeyi liste kavrayışı (list comprehension) kullanarak oluşturun.
  • Oluşturduğunuz listeyi yazdırın.

Cevaplar


Görev 1: Şehirler Listesi

cities = ['Paris', 'Tokyo', 'Berlin', 'New York', 'İstanbul']

print(cities[0])       # Paris
print(cities[-1])      # İstanbul
print(len(cities))     # 5

Görev 2: Meyveler Listesi

fruits = ['elma', 'muz', 'kiraz']

fruits[1] = 'portakal'    # muz yerine portakal
fruits.append('üzüm')     # liste sonuna üzüm
fruits.remove('elma')     # elma silindi

print(fruits)  # ['portakal', 'kiraz', 'üzüm']

Görev 3: Filmler Listesi

movies = ['Inception', 'Avatar', 'The Matrix', 'Interstellar']

for movie in movies:
    print(f"Ben {movie} izlemeyi çok seviyorum!")

🖨️ Çıktı:

Ben Inception izlemeyi çok seviyorum!
Ben Avatar izlemeyi çok seviyorum!
Ben The Matrix izlemeyi çok seviyorum!
Ben Interstellar izlemeyi çok seviyorum!

Görev 4: Sayılar Listesi

numbers = [34, 12, 5, 66, 29, 100, 3]

print(numbers[:3])  # [34, 12, 5]

numbers.sort()
print(numbers)      # [3, 5, 12, 29, 34, 66, 100]

print(numbers[-2:]) # [66, 100]

Görev 5: Çift Sayıların Karesi (List Comprehension)

even_squares = [x**2 for x in range(1, 21) if x % 2 == 0]

print(even_squares)  
# [4, 16, 36, 64, 100, 144, 196, 256, 324, 400]

Google Colab ile Kendiniz Deneyin: https://colab.research.google.com/drive/11XI7qqcjyfLnyYyo3vF6pjS1YC9QFfII?usp=sharing

Proje Yöneticileri için Python #7

Photo by Ann H on Pexels.com

Python’da Boolean veri tipi (True / False) ve karşılaştırma operatörleri konusu, programlamada karar verme süreçlerinin temelini oluşturur.


Boolean (Mantıksal) Veri Tipi

Python’da sadece iki adet Boolean değeri vardır:

  • True  → Doğru
  • False → Yanlış

Bu değerler bool veri tipi olarak tanımlanır:

print(type(True))   # <class 'bool'>
print(type(False))  # <class 'bool'>

Bu değerler genellikle koşullu ifadelerde (if, while vb.) ve karşılaştırmalardan elde edilen sonuçlarda kullanılır.


Boolean Değer Üreten Karşılaştırmalar

Python’da karşılaştırma operatörleriyle iki değer arasında ilişki kurabiliriz. Bu işlemler sonucunda True ya da False döner.

OperatörAnlamıÖrnekSonuç
==Eşittir5 == 5True
!=Eşit değildir5 != 3True
>Büyüktür10 > 7True
<Küçüktür3 < 8True
>=Büyük veya eşittir5 >= 5True
<=Küçük veya eşittir4 <= 2False
a = 10
b = 20

print(a == b)  # False
print(a < b)   # True

Boolean Mantık Operatörleri

Koşulları birleştirmek veya tersine çevirmek için mantık operatörlerini kullanırız:

OperatörAnlamıÖrnekAçıklama
andveTrue and FalseHer ikisi de True ise True olur
orveyaTrue or FalseBiri bile True ise sonuç True olur
notdeğil (tersi)not TrueTrue → False, False → True
x = 5
y = 10

print(x > 3 and y < 20)   # True
print(x > 3 and y > 20)   # False
print(x > 10 or y < 20)   # True
print(not (x == 5))       # False

bool() Fonksiyonu

Herhangi bir ifadeyi Boolean’a çevirmek için bool() fonksiyonu kullanılır:

print(bool(0))          # False
print(bool(42))         # True
print(bool(""))         # False
print(bool("Python"))   # True

False olarak değerlendirilen ifadeler:

  • 0 (sayısal olarak)
  • 0.0
  • ” (boş string)
  • [], {}, () (boş veri yapıları)
  • None

Diğer her şey Python’da True olarak kabul edilir.


Uygulama Örneği

username = "admin"
password = "1234"

if username == "admin" and password == "1234":
    print("Giriş başarılı")
else:
    print("Giriş başarısız")

Özet

  • bool sadece True veya False olabilir.
  • Karşılaştırma operatörleri ile bool değerler elde edilir.
  • and, or, not gibi mantıksal operatörler koşulları birleştirmekte kullanılır.
  • bool() fonksiyonu, her ifadeyi True/False’a çevirir.

Örnek 1: Basit Karşılaştırma

a = 15
b = 20

print(a > b)

Beklenen Çıktı:

False

Açıklama: 15, 20’den büyük olmadığı için sonuç False olur.


Örnek 2: Mantıksal and Operatörü

age = 25
has_license = True

if age >= 18 and has_license:
    print("Araç kullanabilirsiniz.")
else:
    print("Araç kullanamazsınız.")

Beklenen Çıktı:

Araç kullanabilirsiniz.

Açıklama: Hem 18 yaşından büyük hem de ehliyeti olduğu için şartlar sağlanır.


Örnek 3: not Kullanımı

is_raining = False

if not is_raining:
    print("Şemsiye almanıza gerek yok.")
else:
    print("Şemsiye alın!")

Beklenen Çıktı:

Şemsiye almanıza gerek yok.

Açıklama: Yağmur yağmıyorsa (is_raining = False), not ile bu ifade tersine çevrilir ve True olur.


Örnek 4: bool() ile Boşluk Kontrolü

text = ""

if bool(text):
    print("Metin boş değil.")
else:
    print("Metin boştur.")

Beklenen Çıktı:

Metin boştur.

Açıklama: Boş bir string (“”) Python’da False olarak değerlendirilir.


Örnek 5: or ile Çoklu Koşul

temperature = 35
is_hot = temperature > 30
is_humid = True

if is_hot or is_humid:
    print("Bol su için!")
else:
    print("Hava güzel.")

Beklenen Çıktı:

Bol su için!

Açıklama: Sıcaklık 30’dan büyük veya nemli hava varsa, uyarı mesajı gösterilir.


Örnek 6: Proje Zaman ve Bütçe Durumu Değerlendirmesi

# Proje bilgileri
actual_duration = 45     # Gerçekleşen gün sayısı
planned_duration = 40    # Planlanan gün sayısı

actual_cost = 110000     # Harcanan para (TL)
budget = 100000          # Bütçe (TL)

# Karşılaştırmalar
is_delayed = actual_duration > planned_duration
is_over_budget = actual_cost > budget

# Durumu değerlendirme
if is_delayed and is_over_budget:
    print("Proje hem gecikmiş hem de bütçeyi aşmış durumda.")
elif is_delayed and not is_over_budget:
    print("Proje gecikmiş ama bütçe içinde kalmış.")
elif not is_delayed and is_over_budget:
    print("Proje zamanında tamamlanmış ama bütçeyi aşmış.")
else:
    print("Proje zamanında ve bütçe içinde tamamlanmış.")

Beklenen Çıktı:

Proje hem gecikmiş hem de bütçeyi aşmış durumda.

Açıklama:

Bu örnek, bir projenin zaman ve maliyet performansını kontrol eden bir yapı sunar. and, not, karşılaştırma operatörleri ve bool mantığı birlikte kullanılmıştır. Bu tür bir yapı, ileride daha büyük bir proje yönetim sisteminin temeli olabilir (örneğin Earned Value hesaplamaları gibi).


Google Colab ile kendiniz deneyin.

https://colab.research.google.com/drive/1qBdufGOH_F7XJW-CDhrVx4LRJHM5kFos?usp=sharing

File ->Save a copy in Drive: Dosyayı kendi Google Drive klasörünüze almanız için kullanabilirsiniz.

Yazılımcılar Neden Kariyer Yolunu Proje Yöneticiliğine Doğru Çevirmeli?

Photo by Mikhail Nilov on Pexels.com

Teknoloji dünyası hızla değişiyor. Yapay zekânın yükselişinden çevik (agile) yöntemlerin baskın hale gelmesine kadar, yazılım geliştirme ekiplerindeki roller giderek daha dinamik bir hal alıyor. Bu ortamda yazılımcılar için en stratejik geçişlerden biri, kodlamadan proje yönetimine yönelmek olabilir. İlk bakışta teknik dünyadan uzaklaşmak gibi görünse de, bu geçiş hem doğal hem tatmin edici hem de etkili bir kariyer adımıdır.


1. Büyük Resmi Görme Yeteneği

Bir yazılımcı olarak genellikle belirli problemleri çözmeye veya özellikler geliştirmeye odaklanırsınız. Ancak bir proje yöneticisi (PM) olduğunuzda, tüm bu görevlerin nasıl bir stratejiye hizmet ettiğini görmeye başlarsınız. Kodlamadan gelen biri olarak, teknolojik sınırları, yazılım geliştirme sürecinin hızını ve mantığını bildiğiniz için planlamada ve takımla iletişimde büyük avantaj sağlarsınız.


2. Teknik ve İş Dünyası Arasında Köprü Olmak

Birçok proje, teknoloji başarısız olduğu için değil, iş gereksinimleri doğru anlaşılmadığı için başarısız olur. Kodlamadan gelen bir Proje Yöneticisi, teknik ve teknik olmayan dünyalar arasında mükemmel bir çevirmen olur. Hem iş birimlerini hem geliştiricileri anlayarak gereksiz karmaşayı önler, netlik sağlar ve gerçekten ihtiyaç duyulan ürünlerin ortaya çıkmasına katkı sunar.


3. Kariyer Gelişimi ve Etki Alanının Artması

Bir yazılımcı olarak derinleşmediğiniz sürece kariyeriniz bir noktada tıkanabilir. Ancak proje yöneticileri için kariyer yolu genellikle daha açık ve yukarı doğrudur: Program Yöneticisi, Ürün Sahibi, Mühendislik Direktörü hatta CTO gibi roller. Çünkü bu pozisyonlar, sadece teknik değil, aynı zamanda zamanlama, insan yönetimi ve iş sonuçları gibi konularda da yetkinlik gerektirir.


4. Teknolojiden Anlayan PM’lere Artan Talep

Şirketler, kodlama bilen proje yöneticilerinin ne kadar değerli olduğunu artık daha iyi anlıyor. Bu kişiler hem geliştiricilerle anlamlı teknik tartışmalar yapabilir, hem de sorunları daha çıkmadan fark edip çözüme kavuşturabilir. Kodlama yeteneğinizi tamamen bırakmanız gerekmez – hala kodları okuyabilir, mimari kararlar alabilir ve teknik hedeflerle iş hedeflerini buluşturabilirsiniz.


5. Zor Bilgilerle Yumuşak Becerileri Birleştirme

Yazılımcılar olarak zaten analitik düşünceye, detaylara dikkat etmeye ve sorun çözmeye alışıksınız. Proje yönetimi ise bu becerilerin üstüne iletişim, müzakere, liderlik, risk yönetimi ve paydaşlarla ilişki kurma gibi soft-skill’leri (yumuşak beceriler) eklemenizi sağlar. Bu yetkinlikler, ister teknik ister yönetici olsun, tüm üst düzey rollerde hayati öneme sahiptir.


6. Hâlâ Sorun Çözüyor Olacaksınız – Sadece Daha Geniş Ölçekte

Proje yöneticileri sadece takvimleri yönetmez. Sorunları önceden fark eder, öncelikleri dengeler, krizleri önler. Kod yazmanın zevkinden uzaklaşmak istemeyen yazılımcılar için Proje Yöneticiliği hâlâ problem çözme işidir – ama bu kez takımların ve süreçlerin karşılaştığı sorunları çözersiniz.


7. Teknikten Uzaklaşmak Zorunda Değilsiniz (İsterseniz)

Özellikle çevik yapılarda, birçok proje yöneticisi hâlâ teknik süreçlerin içinde yer alır. Teknik Proje Yöneticisi ya da Mühendislik Yöneticisi gibi pozisyonlar, teknik kararlarla iç içe kalmanıza olanak tanır. Yani “koddan uzak kalacağım” endişesi taşımadan hibrit bir rol üstlenebilirsiniz.


8. Farklı Rollerle Empati Kurmayı Öğrenirsiniz

Proje yöneticisi olduğunuzda sadece yazılımı değil, tasarımcıları, testçileri, pazarlama ekibini, hukuk ve uyum süreçlerini de tanımaya başlarsınız. Bu rollerin ne kadar karmaşık ve kritik olduğunu anlayarak, daha güçlü bir iletişim kurar ve daha sağlıklı ekip çalışmaları yürütürsünüz.


Bir Yön Değişikliği Değil, Stratejik Bir Adım

Proje yöneticisi olmak, kodu bırakmak değil – bir orkestrayı yönetmek gibi, artık sadece bir enstrümanı değil tüm yapıyı yönetiyorsunuz. Teknik bilginizi stratejik düşünce, liderlik ve iş zekâsıyla birleştirdiğinizde, sadece kod yazmakla kalmaz, projeleri ve ekipleri yönlendiren kişi olursunuz.

Eğer sistem düşüncesine sahipseniz, takım çalışmasına değer veriyorsanız ve daha büyük etki yaratmak istiyorsanız, yazılımcılıktan proje yöneticiliğine geçiş sizin için mükemmel bir adım olabilir.


İstanbul Kurumsal Gelişim olarak her türlü Proje Yönetimi kariyer yolculuğunuzda sizlerle birlikteyiz. http://www.projeyonetimi.com

Proje Yöneticileri için Python #6

Buğday Taneleri

Photo by Pixabay on Pexels.com

Giriş

Uzun zaman önce, akıllı bir hizmetkâr bir prensin hayatını kurtarmış. Kral, ona istediği her şeyi vereceğini söylemiş. Hizmetkâr da kralın satrancı çok sevdiğini bildiğinden, buğday tanesi istemiş. “Satranç tahtasının ilk karesine 1 tane, her sonraki kareye de öncekinin iki katı kadar buğday koyun” demiş.

Talimatlar

Bu görevde, satranç tahtasındaki buğday tanelerinin sayısını hesaplaman gerekiyor.

Bir satranç tahtasında 64 kare vardır.

  • 1. kare: 1 tane
  • 2.kare: 2 tane
  • 3.kare: 4 tane
  • 4.kare: 8 tane

Şu kodları yazmanız bekleniyor:

  • Belirli bir karede kaç tane buğday olduğunu hesapla
  • Tüm tahtadaki toplam buğday sayısını hesapla

Hata mesajları

Bazen bir şeyler yanlış gittiğinde programı durdurup hata göstermek gerekir. Bunu yaparken, hatanın neden kaynaklandığını açıklamak önemlidir.

Bu görevde, kare numarası 1 ile 64 arasında değilse şu kodla hata vermelisin:

raise ValueError("square must be between 1 and 64")

Bu, kodunun anlaşılmasını kolaylaştırır ve hataları düzeltmeyi kolaylaştırır.


CEVAP

square_no = int(input("Give the number of square: "))

if square_no < 1 or square_no > 64:
    raise ValueError("square must be between 1 and 64")
total = 0
for i in range(0, square_no):
    total += 2**i
print(total)

Proje Yöneticileri için Python #5

String Yapıları için Uygulama Örnekleri


1. Soru: “un” ön eki ekleme

Soru: Elinizde bir kelime var: “happy”. Bu kelimeye “un” ön ekini ekleyerek yeni bir kelime oluşturun. Sonucu ekrana yazdırın.

Beklenen çıktı:

unhappy

2. Soru: Ön ekli kelime grubu oluşturma

Soru: Aşağıdaki listedeki ilk öğe bir ön ektir. Diğer kelimelere bu ön eki ekleyerek yeni kelimeler oluşturun.

Sonuçları aşağıdaki formatta birleştirip ekrana yazdırın:

vocab_words = ['en', 'close', 'joy', 'lighten']

Beklenen çıktı:

en :: enclose :: enjoy :: enlighten

3. Soru: “-ness” son ekini kaldırma

Soru: Aşağıdaki kelimenin sonundaki “ness” ekini kaldırın. Eğer bu ekten önceki harf “i” ise, bu harfi “y” harfiyle değiştirin.

Aşağıdaki örnek için doğru sonucu ekrana yazdırın:

word = "heaviness"

Beklenen çıktı:

heavy

4. Soru: Cümledeki sıfattan fiil oluşturma

Soru:

Verilen cümledeki kelimelerden, belirtilen index’teki kelimeyi bulun.

Bu kelimenin sonuna “en” ekleyerek onu bir fiile çevirin. Noktalamayı temizlemeyi unutmayın.

sentence = "It got dark as the sun set."
index = 2

Beklenen çıktı:

darken

Cevaplar


1. “un” ön eki ekleme

word = "happy"
prefixed_word = "un" + word
print(prefixed_word)  # "unhappy"

✅ 2. Ön ekli kelime grubu oluşturma

vocab_words = ['en', 'close', 'joy', 'lighten']
prefix = vocab_words[0]
result = prefix

for word in vocab_words[1:]:
    result += " :: " + prefix + word

print(result)  # "en :: enclose :: enjoy :: enlighten"

✅ 3. “-ness” son ekini kaldırma

word = "heaviness"

if word.endswith("ness"):
    root = word[:-4] # son 4 harfi sildik.
    if root.endswith("i"): # eğer son harf "i" ise bunu "y" ile değiştirmeliyiz.
        root = root[:-1] + "y" # son harfi silip yerine "y" koyduk.
    print(root)  # "heavy"

✅ 4. Cümledeki sıfattan fiil oluşturma

sentence = "It got dark as the sun set."
index = 2

sentence_list = sentence.split() # cümleyi liste yapısına  dönüştürdük.

adjective = sentence_list[index].sprit(".,?!") # sıfatı bulduk ve tüm noktalama işaretlerinden kurtulduk.
verb = adjective + "en" # sıfatı fiile çevirdik.

print(verb)  # "darken"

https://colab.research.google.com/drive/1icXpFCJiV5-XjoqLhP6iVDNoFIXyjhrm?usp=sharing

Proje Yöneticileri için Python #4

Benim Python yolculuğum, projelerimi daha iyi yönetebilmek amacıyla başladı. Bu notlar, kendi ders notlarımdır.


str Veri Tipi

1. String (Metin) Nedir?

Nasıl ki insanlar mesaj veya yazı yazmak için harfleri kullanırsa, Python’da da metinleri temsil etmek için string (yani karakter dizisi) kullanırız.

Python’da bir metin, başına ve sonuna tırnak işareti konularak yazılır:

"Merhaba"
'Python öğreniyorum'

Her ikisi de Python’da string (metin) olarak kabul edilir.


2. String (Metin) Nasıl Tanımlanır?

Bir metni bir değişkende saklayabiliriz:

name = "Gökrem"
message = 'Bugün hava çok güzel.'

Artık name ve message adında iki kutumuz var ve bu kutular string (metin) değerleri içeriyor.


3. Bir Metnin İçeriğine Nasıl Ulaşılır?

Bir metindeki her karakterin bir sırası (pozisyonu) vardır. Buna indeks denir ve Python’da 0’dan başlar:

name = "Gökrem"
print(name[0])   # G
print(name[1])   # ö
print(name[-1])  # m → son harf
print(name[2:4]) # kr
print(type(name)) # <class 'str'>

4. String Birleştirme ve Tekrar Etme

Birleştirme ( + )

İki string’i + operatörü ile birleştirebilirsin:

first_name = "Gökrem"
last_name = "Tekir"
print(first_name + " " + last_name)
# Çıktı: Gökrem Tekir

✖️ Tekrar Etme (*)

Bir metni tekrar ettirmek için * kullanılır:

print("Hey! " * 3)
# Çıktı: Hey! Hey! Hey! 

5. Bir Metnin Uzunluğunu Bulmak

Bir metnin kaç karakterden oluştuğunu görmek için len() fonksiyonu kullanılır:

name = "Gökrem"
print(len(name))  # 6

6. Sık Kullanılan String Fonksiyonları

Python’da string’lerle çalışırken bazı yerleşik fonksiyonlar (metotlar) oldukça sık kullanılır:

  • .upper() → Tüm harfleri büyük harfe çevirir. Örnek: “gökrem”.upper() sonucu “GÖKREM” olur.
  • .lower() → Tüm harfleri küçük harfe çevirir. Örnek: “GÖKREM”.lower() sonucu “gökrem” olur.
  • .strip() → Metnin başındaki ve sonundaki boşlukları siler. Örnek: ” Hello “.strip() sonucu “Hello” olur.
  • .replace() → Metnin bir kısmını başka bir metinle değiştirir. Örnek: “Men came”.replace(“Men”, “Women”) sonucu “Women came” olur.
  • .split() → Belirtilen karaktere göre metni böler ve bir liste döndürür (varsayılan karakter boşluktur). Örnek: “John Wick”.split() sonucu [“John”, “Wick”]

Google Colab Gösterimi

"gökrem".upper()       # GÖKREM
"GÖKREM".lower()       # gökrem
" Hello ".strip()      # Hello
"Men came".replace("Men", "Women")  # Women came
"John Wick".split()    # ['John', 'Wick'] → bir liste örneği

7. Basit Bir Örnek

Aşağıdaki kodu Google Colab’da deneyebilirsin:

name = "   gökrem tekir   "
print("Orijinal:", name)
print("Boşluksuz:", name.strip())
print("BÜYÜK HARFLİ:", name.upper())
print("küçük harfli:", name.lower())
print("Parçalanmış:", name.strip().split())

Sorular

Alıştırma 1: Selamlaşma Üretici

Görev: first_name ve last_name adında iki değişken oluştur. Bunları birleştirerek tam isim yap ve selamlayan bir mesaj yazdır.

Beklenen Çıktı:

Hello, Gökrem Tekir!

Alıştırma 2: Kelime Tekrarlayıcı

Görev: word = “Wow!” şeklinde bir değişken oluştur. Bu kelimeyi aynı satırda 5 kere yazdır.

Beklenen Çıktı:

Wow!Wow!Wow!Wow!Wow!

Alıştırma 3: Metin Uzunluğu Bulucu

Görev: city = “Amsterdam” şeklinde bir değişken oluştur. Bu şehrin kaç harf olduğunu len() fonksiyonuyla yazdır.

Beklenen Çıktı:

The word 'Amsterdam' has 9 characters.

Alıştırma 4: Metin Temizleyici

Görev: Boşluklu bir metin oluştur: dirty_text = ”   Hello Python!   “

Boşlukları temizleyip sade metni yazdır.

Beklenen Çıktı:

Hello Python!

Alıştırma 5: Büyük Harfe Dönüştürücü

Görev: Kullanıcıdan input() ile favori filmini al. Ardından bu filmi tamamen büyük harflerle yazdır.

Örnek Çalıştırma:

Enter your favorite movie: Inception
Output: INCEPTION

Cevaplar

Cevap 1: Selamlaşma Üretici

first_name = "Gökrem"
last_name = "Tekir"
full_name = first_name + " " + last_name
print("Hello, " + full_name + "!")

Cevap 2: Kelime Tekrarlayıcı

word = "Wow!"
print(word * 5)

Cevap 3: Metin Uzunluğu Bulucu

city = "Amsterdam"
length = len(city)
print(f"The word '{city}' has {length} characters.")

Cevap 4: Metin Temizleyici

dirty_text = "   Hello Python!   "
cleaned_text = dirty_text.strip()
print(cleaned_text)

Cevap 5: Büyük Harfe Dönüştürücü

movie = input("Enter your favorite movie: ")
print(movie.upper())

UDEMY KURSUMUZU ALMAK İSTERSENİZ:

https://www.udemy.com/course/proje-yoneticileri-icin-python/?couponCode=C4635C3ECAC411AC6E74

Proje Yöneticileri için Python #3

Python ile ilk kodlama egzersizinize hoş geldiniz! Bu alıştırmada, Gürbüz Usta’nın meşhur lazanyasını hazırlamak ve pişirmek için ne kadar zaman gerektiğini hesaplamasına yardım edeceksiniz.

Photo by Augusto Carneiro Junior on Pexels.com

Adım 1: Problemi Anlayın

Gürbüz Usta’nın lazanya tarifi iki ana adımdan oluşur:

  • Lazanya katlarını hazırlamak (her bir kat 2 dakika sürer)
  • Lazanyayı fırında pişirmek (40 dakika sürer ve bu süre her zaman aynıdır)

Bu egzersizde yazacağınız Python kodu şu süreleri hesaplamalıdır:

  1. Katları hazırlamak için geçen süre
  2. Pişirme süresi (her zaman 40 dakika)
  3. Mutfakta geçirilen toplam süre (hazırlık süresi + pişirme süresi)

Adım 2: Bir Programcı Gibi Düşünün

Hayal edin:

  • Size kaç kat lazanya yapılacağı söylendi – örneğin 3 ya da 5.
  • Bu sayıyı 2 ile çarparak hazırlık süresini hesaplayabilirsiniz.
  • Pişirme süresi her zaman 40 dakikadır, kat sayısı fark etmez.
  • Toplam süreyi bulmak için, hazırlık süresi ile pişirme süresini toplamanız yeterlidir.

Adım 3: Kodunuzu Planlayın

Aşağıdaki adımları izleyerek kodunuzu yazabilirsiniz:

  1. kat_sayisi adında bir değişken oluşturun ve bir sayı atayın (örneğin 3)
  2. Bu sayıyı 2 ile çarpın → sonucu hazirlik_suresi değişkenine atayın
  3. pisirme_suresi değişkenini 40 olarak belirleyin
  4. hazirlik_suresi + pisirme_suresi ile toplam_sure değişkenini hesaplayın
  5. Bu bilgileri ekrana yazdırın ki Gürbüz Usta plan yapabilsin

Yeni Başlayanlar İçin İpuçları

  • kat_sayisi değişkenine farklı değerler vererek kodunuzu test edebilirsiniz.
  • Açıklama yazmak için # işaretini kullanın – bu satırlar kodu çalıştırmaz, ama anlatır.
  • Python girintilere (boşluklara) duyarlıdır, dikkat edin.
  • Her adımda sonucu yazdırarak programın nasıl çalıştığını gözlemleyin.

🔹 Çözüm: Kod Yapısı

# Adım 1: Kat sayısını belirle
kat_sayisi = 3  # Bu sayıyı değiştirebilirsiniz

# Adım 2: Hazırlık süresini hesapla (her kat 2 dakika)
hazirlik_suresi = kat_sayisi * 2

# Adım 3: Pişirme süresi (her zaman 40 dakika)
pisirme_suresi = 40

# Adım 4: Toplam süre = hazırlık + pişirme
toplam_sure = hazirlik_suresi + pisirme_suresi

# Adım 5: Sonuçları yazdır
print("Hazırlık süresi:", hazirlik_suresi, "dakika")
print("Pişirme süresi:", pisirme_suresi, "dakika")
print("Mutfakta geçirilen toplam süre:", toplam_sure, "dakika")

Proje Yöneticileri için Python #2

proje yöneticileri python ile kod yazıyorlar.

Ders Konumuz: Temel Veri Tipleri ve Değişkenler — Sayılar (int, float, complex)

Python programlamaya yeni başladıysanız, ilk anlamanız gereken kavramlardan biri veri tipleridir. Bu bölümde, sayı veri tiplerine odaklanacağız. Python’da sayılar üç ana kategoriye ayrılır:

  • int — Tam sayılar
  • float — Ondalıklı sayılar
  • complex — Karmaşık sayılar

Ayrıca bu sayı türlerinin nasıl kullanıldığını, aralarında nasıl dönüşüm yapılacağını ve temel matematiksel işlemleri Python’da nasıl gerçekleştireceğimizi göreceğiz.

📌 Lütfen Google Colab’ı açın ve aşağıdaki örnekleri kendiniz deneyin. Python ile Kodlamaya başlamak için ilk yazımı aşağıdaki linkten okumanızı tavsiye ederim:


1. int (Tam Sayılar)

Tam sayılar virgül içermez ve negatif ya da pozitif olabilir.

number1 = 10
number2 = -42
number3 = 0

Python çok büyük tam sayıları da destekler:

big_number = 123456789012345678901234567890

Sık kullanılan işlemler:

x = 5
y = 2
print(x + y)   # Toplama → 7  
print(x - y)   # Çıkarma → 3  
print(x * y)   # Çarpma → 10  
print(x // y)  # Tam bölme → 2  
print(x % y)   # Mod alma → 1  
print(x ** y)  # Üs alma → 25

2. float (Ondalıklı Sayılar)

Ondalık içeren sayılar float tipindedir.

pi = 3.14
negative = -12.5
decimal = 0.0

📝 Not: Ondalık ayırıcı olarak nokta (.), virgül (,) değil kullanılır.

float ile işlemler:

a = 7.5
b = 2
print(a + b)  # 9.5  
print(a / b)  # 3.75

int ve float birlikte kullanılabilir. Sonuç genellikle float olur:

print(4 + 2.0)  # 6.0

3. complex (Karmaşık Sayılar)

Python, ileri düzey matematikte kullanılan karmaşık sayıları destekler. Sanal kısmı belirtmek için j kullanılır (i değil).

z = 3 + 4j
print(type(z))  # <class 'complex'>

Gerçek ve sanal kısımlar:

print(z.real)  # 3.0  
print(z.imag)  # 4.0

Karmaşık sayılarla işlemler:

a = 2 + 3j
b = 1 - 1j
print(a + b)  # (3+2j)  
print(a * b)  # (5+1j)

Tür Dönüşümü (Type Conversion / Casting)

Farklı sayı türleri arasında dönüşüm yapmanız gerekebilir. Python bunu kolaylaştırır:

x = 10
print(float(x))      # 10.0

y = 3.7
print(int(y))        # 3 (ondalık kısmı atılır)

z = 5
print(complex(z))    # (5+0j)

Veri Tipini Öğrenmek için 

type()

 Fonksiyonu

print(type(7))       # <class 'int'>  
print(type(2.5))     # <class 'float'>  
print(type(3 + 1j))  # <class 'complex'>

Gelişmiş İşlemler için “math Modülü

Python’un yerleşik math modülü, özellikle float tipleriyle çalışırken gelişmiş fonksiyonlar sunar:

import math

print(math.sqrt(16))     # Karekök: 4.0  
print(math.pow(2, 3))    # Üs alma: 8.0  
print(math.pi)           # Pi sayısı  
print(math.floor(4.9))   # Aşağı yuvarlama: 4  
print(math.ceil(4.1))    # Yukarı yuvarlama: 5

Uygulama Görevi

Bilgisayarınızda aşağıdaki örneği çalıştırın ve çıktıyı gözlemleyin:

a = float(input("Birinci sayıyı girin: "))
b = float(input("İkinci sayıyı girin: "))
print(f"Toplam: {a + b}")
print(f"Fark: {a - b}")
print(f"Çarpım: {a * b}")
print(f"Bölüm: {a / b}")

Ödevler

Alıştırma 1 — Veri Tipini Belirle

Aşağıdaki değişkenlerin veri tipini type() ile yazdıran bir Python betiği yazın:

a = 17
b = 3.14
c = -5
d = 2 + 3j
e = 0.0

Beklenen çıktı:

<class 'int'>
<class 'float'>
<class 'int'>
<class 'complex'>
<class 'float'>

Alıştırma 2 — Temel Aritmetik İşlemler

İki sayı alın, dört temel işlemi yapın: toplama, çıkarma, çarpma, bölme. Sayılar ondalıklı olabilir.

Örnek çıktı:

Birinci sayı: 8.5  
İkinci sayı: 2  
Toplam: 10.5  
Fark: 6.5  
Çarpım: 17.0  
Bölüm: 4.25

Alıştırma 3 — Tür Dönüşümü

Aşağıdaki dönüşüm sonuçlarını tahmin edin ve her değişkenin değeri ile tipini yazdırın:

x = 5
y = 3.8

x_float = float(x)
y_int = int(y)
z_complex = complex(x)

print(x_float)
print(type(x_float))
print(y_int)
print(type(y_int))
print(z_complex)
print(type(z_complex))

Alıştırma 4 — Karmaşık Sayılarla İşlem

Aşağıdaki karmaşık sayıları toplayan ve çarpan bir Python betiği yazın:

z1 = 4 + 2j
z2 = 1 - 5j

z_sum = z1 + z2
z_product = z1 * z2

print(f"Toplam: {z_sum}")         # (5-3j)
print(f"Çarpım: {z_product}")     # (14-18j)

Alıştırma 5 — math Modülü Kullanımı

Aşağıdaki işlemleri yapan bir program yazın:

  • 25’in karekökü
  • 3.2 sayısını aşağı yuvarlama
  • 6.8 sayısını yukarı yuvarlama
  • 2 üzeri 5
  • Pi sayısını yazdırma

İpucu: import math komutunu unutmayın.


Cevaplar

Alıştırma 1

a = 17
b = 3.14
c = -5
d = 2 + 3j
e = 0.0

print(type(a))  # <class 'int'>
print(type(b))  # <class 'float'>
print(type(c))  # <class 'int'>
print(type(d))  # <class 'complex'>
print(type(e))  # <class 'float'>

Alıştırma 2

a = float(input("Birinci sayı: "))  # örnek: 8.5
b = float(input("İkinci sayı: "))   # örnek: 2

print(f"Toplam: {a + b}")         # 10.5
print(f"Fark: {a - b}")           # 6.5
print(f"Çarpım: {a * b}")         # 17.0
print(f"Bölüm: {a / b}")          # 4.25

📝 Not: Çıktı, kullanıcının girişine bağlı olarak değişecektir.


Alıştırma 3

x = 5
y = 3.8

x_float = float(x)
y_int = int(y)
z_complex = complex(x)

print(x_float)       # 5.0
print(type(x_float)) # <class 'float'>

print(y_int)         # 3
print(type(y_int))   # <class 'int'>

print(z_complex)     # (5+0j)
print(type(z_complex))  # <class 'complex'>

Alıştırma 4

z1 = 4 + 2j
z2 = 1 - 5j

z_sum = z1 + z2
z_product = z1 * z2

print(f"Toplam: {z_sum}")         # (5-3j)
print(f"Çarpım: {z_product}")     # (14-18j)

Alıştırma 5

import math

print(math.sqrt(25))     # 5.0
print(math.floor(3.2))   # 3
print(math.ceil(6.8))    # 7
print(math.pow(2, 5))    # 32.0
print(math.pi)           # 3.141592653589793

Artık Python’daki temel sayı türleriyle çalışmaya başlayabilirsiniz 👏