30 Haziran 2017 Cuma

Scrum Değerleri

Scrum Takımı taahhüt, cesaret, odak, açıklık ve saygı değerlerini bünyesinde barındırdığında ve yaşattığında, Scrumın şeffaflık, gözlem ve adaptasyon ayakları canlanarak herkes için güven oluşturur. Scrum Takımı üyeleri, Scrum etkinlikleri, rolleri ve eserleriyle çalıştıkça bu değerleri öğrenir ve keşfeder.

Scrum uygulamasının başarısı insanların bu beş değeri ustalıkla yaşatma becerisine bağlıdır. Scrum Takımındaki üyelerin her biri takım hedefini gerçekleştirmeyi taahhüt eder; Doğru şeyi yapmaya ve zorlayıcı sorunlar üzerinde çalışmaya cesaret eder; takımdaki herkes Sprint işine ve Scrum Takımının hedeflerine odaklanır. Scrum Takımı ve paydaşları yapılacak tüm işler ve bu bu işleri yaparken karşılaşılan zorluklar hakkında açık olmayı kabul eder. Scrum Takımının her bir üyesi diğer üyelere yetkin ve bağımsız insanlar olarak saygı duyar.

Kaynak: Scrum Kılavuzu

Javascript Kullanarak Input İçerisine Sadece Sayı Girilmesini Sağlamak

Javascript Kullanarak Input İçerisine Sadece Sayı Girilmesini Sağlamak

Yaş bilgisi girilecek olan bir alana klavyeden yalnızca sayı girilebilmesini istiyoruz. Harfler ya da diğer karakterler bu alana girilmemeli. Bunu sağlayabilmek için Javascript kullanacağız.

Yapmamız gereken her tuş basımında basılan tuşun bir rakam olup olmadığını denetlemek. Basılan tuş bir rakam ise yazılmasına izin vereceğiz. Rakam değilse, bu tuş basımının sonucunun ekranda gözükmesine izin vermemeliyiz. Basılan tuşun rakam olup olmadığını anlamak için keyCode değerlerini kontrol edeceğiz.

Oluşturacağımız formda bulunan input alanına yazılan karakterlerin silinebilmesine de izin vermeliyiz. Bu yüzden; yazacağımız kod, 0-9 arasındaki karakterler dışında, BackSpace (Silme) tuşunu da desteklemeli. Örnek kodlar aşağıda yer almaktadır.

28 Haziran 2017 Çarşamba

Ekran Klavyesi (On-Screen Keyboard) - Windows 10

Ekran Klavyesi Windows ile birlikte gelir.


Bazen klavyemizde çalışmayan tuşlar olduğunda hayat kurtarabilir.
Ekran klavyesini çalıştırmak için System32 klasöründe yer alan osk.exe kullanılır.
C:\Windows\System32\osk.exe

Scrum Teorisi / Deneysel Süreç Kontrol Teorisi

Scrum Teorisi

Scrumın temelinde deneysel süreç kontrol teorisi (veya deneycilik) yer alır. Deneycilik, bilginin deneyimden ve bilinen şeylere dayanarak alınan kararlardan meydana geldiğini ileri sürer. Scrum, öngörülebilirliği en iyi seviyeye çıkarmak ve riski kontrol etmek için iterasyonlu ve artımlı (incremental) bir yaklaşım kullanır.

Her deneysel süreç kontrol uygulaması üç ayakla desteklenir: şeffaflık, gözlem ve adaptasyon.

1) Şeffaflık

Çıktıdan sorumlu kişiler sürecin önemli kısımlarını izleyebilmelidir. Şeffaflık bu kısımların bir ortak standartla tanımlanmasını gerektirir. Bu sayede bakan kişiler gördüklerinden aynı şeyi anlarlar.

Örnek olarak:

  • Tüm katılımcılarla sürece ait ortak bir dil paylaşılmalı;
  • İşi yapanlar ve işin sonucunu bekleyenler ortak bir “Bitti” (Done) tanımına sahip olmalıdır.


2) Gözlem

Scrumı uygulayanlar, istenmeyen sapmaları tespit edebilmek için Scrum eserlerini ve Sprint Hedefine doğru ilerlemeyi sıkça gözlemlemelidir. Bu gözlemler, iş yapmaya engel olacak kadar sık olmamalıdır. Gözlemler, çalışma esnasında yetkin gözlemciler tarafından itinayla yapıldığında en çok faydayı sağlar.

3) Adaptasyon

Şayet bir gözlemci sürecin bir veya daha fazla kısmının kabul edilebilir sınırlar dışına çıktığını ve sürecin sonunda çıkacak ürünün kabul edilemez olacağını tespit ederse üzerinde çalışılan süreç veya ürün düzeltilmelidir. Düzeltme daha fazla sapmaya izin vermeden mümkün olan en yakın zamanda yapılmalıdır.

Scrum, gözlem ve adaptasyon için bu belgenin Scrum Etkinlikleri bölümünde tarif edilen dört resmî etkinliği (toplantıyı) zorunlu kılar:


  • Sprint Planlama (Sprint Planning)
  • Günlük Scrum (Daily Scrum)
  • Sprint Değerlendirme (Sprint Review)
  • Sprint Retrospektifi (Sprint Retrospective)


Kaynak: Scrum Kılavuzu

Scratch Sırt Çantası Nedir? Ne İşe Yarar? Nasıl Kullanılır?

Temel Scratch Eğitimi video serimizin 13. videosunda konularımız;

  • Scratch Sırt Çantası Nedir?
  • Scratch Sır Çantası Ne İşe Yarar?
  • Scratch Sır Çantası Nasıl Kullanılır?


Scratch Sırt Çantası ile Çalışmak from Ercan Bozkurt on Vimeo.

26 Haziran 2017 Pazartesi

Scrum Nedir? / Scrum Tanımı

Scrum, İnsanların mümkün olan en yüksek değere sahip ürünleri üretken ve yaratıcı bir şekilde geliştirirken, karmaşık ve adaptasyona açık sorunları ele alabildikleri bir çerçevedir.
  • Scrum Basittir
  • Scrumı Anlaması kolaydır
  • Scrumı Ustaca yönetmek zordur. 
Scrum, 1990’ların başından beri karmaşık ürün geliştirme sürecini yönetmek için kullanılan bir süreç çerçevesidir. Scrum, bir ürün geliştirme tekniği veya süreci değildir; içerisinde çeşitli süreçleri ve teknikleri kullanabileceğiniz bir çerçevedir. Scrum, ürün yönetimi ve geliştirme pratiklerinizin etkililiğini açık bir şekilde ortaya koyarak iyileştirme fırsatı sunar.

Scrum çerçevesi, Scrum Takımları ve takımlarla ilgili rolleri, etkinlikleri, eserleri ve kuralları kapsar. Çerçevedeki her bir bileşen özel bir amaca hizmet eder; Scrumın başarısı ve kullanımı için bu zorunludur.

Scrum kılavuzunda tanımlanan Scrumın kuralları; etkinlikleri, rolleri ve eserleri birbirine bağlar ve aralarındaki ilişkiler ile etkileşimleri düzenler.

Scrum çerçevesinin kullanımına ilişkin çeşitli taktikler bulunmaktadır.

Kaynak: Scrum Kılavuzu

Nedir Bu Scrum Kılavuzu (Scrum Guide)?

Scrum Kılavuzu
Scrum, karmaşık ürünleri geliştirmek ve sürdürmek için bir çerçevedir. Scrum kılavuzu (Scrum Guide), Scrumı tanımlar. Tanımın içinde Scrumın rolleri, etkinlikleri, eserleri ve bunları bir araya getiren kurallar yer alır.

Scrumı geliştiren Ken Schwaber ve Jeff Sutherland aynı zamanda Scrum Kılavuzunun yazarı ve destekçisidir.

Türkçe dahil 42 farklı dilde yayınlanan Scrum Kılavuzunu indirmek için http://www.scrumguides.org/download.html bağlantısından istediğiniz dili seçebilirsiniz.

Kaynak: Scrum Kılavuzu

25 Haziran 2017 Pazar

Scrum Takımı (Scrum Team) Kimlerden Oluşur?

Scrum Takımı, bir Ürün Sahibi (Product Owner), Geliştirme Takımı (Development Team) ve bir de Scrum Masterdan oluşur.

Scrum Takımları, kendi kendilerini yönetir (self-organized) ve çapraz fonksiyonludur (cross-functional). Kendini yöneten takımlar, takımın dışındaki birilerinden komut almak yerine işlerini en iyi nasıl başaracaklarına kendileri karar verir. Çapraz fonksiyonlu takımlar, takımın dışındaki kişilere bağımlı olmadan işi tamamlayacak tüm yetkinliklere sahiptir. Scrumdaki takım modeli esnekliği; yaratıcılığı ve üretkenliği en iyi şekilde kullanmak üzere tasarlanmıştır.

Scrum Takımları, ürünleri iterasyonlu ve artımlı bir şekilde teslim ederek geribildirim fırsatlarını en üst seviyeye çıkarırlar. “Bitti” durumundaki ürünün artımlı olarak teslim edilmesi,  ürünün çalışan ve kullanılabilir bir sürümünün her an el altında olmasını sağlar.

Kaynak: Scrum Kılavuzu

21 Haziran 2017 Çarşamba

16 Haziran 2017 Cuma

Google Blockly Games ile Algoritma Geliştirme

Puzzle bölümü Blockly Games ile hızlı bir tanışma yapmamızı sağlıyor. Bu bölüm Blockly'nin şekillerini ve kod bloklarının nasıl birleştiğini öğreneceğiniz ısınma bölümüdür.
Maze bölümünde programlamanın temel konularından döngüler ve karar yapılarına aşinalık kazanılacaktır. Çok kolay seviyeden başlayan labirent serüveni her bölümde daha da detaylı düşünmeyi gerektirecek şekilde adım adım algoritma kurma yeteneğinizi geliştirecek.
Bird bölümü karar yapılarını detaylı bir şekilde kurgulamayı öğrenerek program akışında karmaşık kararları koda dökmeyi öğrendiğiniz bölüm olacak.
Turtle bölümünde döngüleri daha detaylı bir şekilde öğrenmiş olacaksınız. Bu bölümde iç-içe döngüler kullanarak görseller çizebileceksiniz. Hazırladığınız sanat eserlerini dünyanın her yerinden arkadaşlarınızla paylaşmak çok kolay.
Movie bölümünde matematiksel eşitliklere giriş yapıyoruz. Matematik kullanarak animasyonlar hazırlayacağımız bu bölümde, oluşturduğunuz animasyonları herkes ile paylaşabilirsiniz.
Music bölümünde hem matematik hem de programlamada önemli bir yeri olan fonksiyon konusunu öğreneceksiniz. Müzik yaparken fonksiyon kullanacak ve müziklerinizi dünyanın her yerinden dinleyiciler ile paylaşabileceksiniz.
Pond Tutor bölümünde metin tabanlı programlamaya giriş yapılacak.  Bazı bölümlerde blok kodlama yaparken bazı bölümlerde ise JavaScript dilini kullanarak metin tabanlı kodlama aşinalığınızı artırabileceksiniz.
Pond bölümünde amaç; ister kod blokları, ister metin tabanlı Javascript dilini kullanarak en akıllı ördeği kodlamak.

11 Haziran 2017 Pazar

Matematikte Bölünen, Bölen, Bölüm, Kalan Nedir?

Bu konunun bu blogda yazılma sebebi; maalesef bugün, aynı sınıftaki 3 üniversite 2. sınıf bilgisayar mühendisliği öğrencisinin derste mod almak nedir diye sormasıdır. Önce trollediklerini sandım ama sonrasında kısa bir şok yaşadım. Neyse ki atlattım.


Bir bölme işlemine başlayabilmek için elimizde 2 sayı olmalıdır. Hangi sayıyı hangi sayıya böleceğimizi bilmeliyiz. Örneğin; 14 bölü 4 işlemini yapalım.

Kimi bölüyoruz? 14
O zaman 14 bölünen sayıdır.

Kime bölüyoruz? 4
14'ü 4'e böleceğiz.
4 bölen sayıdır.


İşlemin sonucunda, elde ettiğimiz değer bölümdür. Yani; 3.

Bazı durumlarda işlem sonucunda tam değer elde edilemeyebilir.
Bu durumda artan kısım bölme işleminden kalandır.

14 bölü 4 işleminden kalan aynı zamanda 14 mod 4 işleminin de sonucu olur.
Mod almak ile ilgili olarak bu yazıyı okuyabilirsiniz.

Mod Almak Nedir?

Mod almak, toplama, çıkarma, çarpma ve bölme işlemleri gibi aritmetik bir işlemdir. Mod alma işleminde bir sayı başka bir sayıya bölünür. Bu bölme işleminin sonucunda kalan değer alınır. Bu kalan sayıya ise mod denir. Örneğin; 14 sayısının 4'e bölümünde mod 2 olur. Çünkü; 14 bölü 4 için bölüm 3 kalan 2'dir. Başka bir örnek daha verelim. 21 sayısı 10'a bölündüğünde mod 1 olur. 21 bölü 10 işleminde bölüm 2 kalan 1 olur.

Mod alma işlemleri programlamada da sıkça kullanılır. En sade örnek olarak bir web sayfasında tablo şeklinde veri görüntülediğimizi düşünelim. Sıralama olarak tek ve çift satır numarasına denk gelen satırlar için farklı görünümler elde etmek istersek, tek/çift denetimini satır numarasının mod 2 sini alarak yapabiliriz.

Programlama dillerinde mod alma işlemi % operatörü ile gerçekleştirilir.
C# dili üzerinden basit bir örnek kod yazalım.

for(int i = 0; i < 9; i++)
{
  if(i % 2 == 0)
  {
    Console.WriteLine(i + " sayısı çift sayıdır");
  }
  else
  {
    Console.WriteLine(i + " sayısı tek sayıdır");
  }
}

Aynı örneği Python dilinde kodlayalım;

for i in range(9):
    if i % 2 == 0:
        print(f"{i} sayısı çifttir.")
    else:
        print(f"{i} sayısı tektir.")

Son olarak bir de Java dilinde aynı kodu yazalım;

public class Main {
    public static void main(String[] args) {
        for (int i = 0; i < 9; i++) {
            if (i % 2 == 0) {
                System.out.println(i + " sayısı çifttir.");
            } else {
                System.out.println(i + " sayısı tektir.");
            }
        }
    }
}

1 Haziran 2017 Perşembe

X Üniversitesi Endüstri Mühendisliği Programlama Dersi C Sınav Soruları

31 Mayıs 2017 X Üniversitesi
Endüstri Mühendisliği Programlama Dersi
C Sınav Soruları








İKÜ FASHION WALL / AR CONCEPT SANAL DEFİLE


İKÜ FASHION WALL / AR CONCEPT
SANAL DEFİLE

2 Haziran 2017, Perşembe
15:00 Defile
16:30 Sanal Defile
İKÜ Ataköy Kampüsü
Akıngüç Oditoryumu Fuaye Alanı

Proje Özeti: Bilgisayar Programcılığı ve Moda Tasarımı Programı'nın çalışmaları ile oluşturulan "İKÜ FASHION WALL" Arttırılmış Gerçeklik teknolojisi kullanılarak öğrencilerin tasarımları sanal ortamda canlandırılmıştır.