Women Techmakers, bir Google markası olup, teknoloji ile ilgili kadınlar için oluşturulmuş bir program. GDG üyelerinin organizasyonu ve destekleriyle her yılın Mart ayında etkinlikler düzenleniyor.

Bu sene WTM Eskişehir ekibine kadinyazilimci ekibimiz destek veriyor. 7 Mart 2015 Cumartesi günü gerçekleşecek etkinlikte, kadinyazilimci ekibi üyeleri atölyeler verecek. Teknolojiye ilgili kadınlarla ; teknik bilgilerinin yanısıra, sektörde yaşadıklarını paylaşacaklar.

Continue Reading...

Bir önceki yazımda Amazon’un bulut bilişim servislerinden bahsetmiştim. Bu yazıda ise bir diğer bulut bilişim hizmeti sağlayıcısı olan DigitalOcean[1]’dan bahsedeceğim. Oldukça basit ve anlaşılır bir web arayüzünden istediğiniz gibi işlemler yapabilirsiniz ancak daha otomatize şekilde çalışmak isterseniz DigitalOcean API’ye elinizi bulaştırmanız gerekmektedir. DO bir sure önce API V2’yi duyursa da hala API V1’e destek veriyor. Bu yazıda inceleyeceğimiz betik API V1 üzerinde çalışmaktadır. API’ye http istekleri yapmak için Python’da requests [2] kütüphanesini kullanmayı uygun buldum.

İlk olarak API’ye bize yeni bir makine yaratması için yapacağımız isteği oluşturan fonksiyonu inceleyelim.

Bu http isteği içerisindeki parametreler, client_id ve api_key API’ye erişim için gereken yetkilendirme araçlarıdır, name makineye vereceğimiz isimdir, size yaratılacak makinenin boyutuyla ilgili parametredir, image_id yaratılacak makinenin içinde çalışacak olan işletim sisteminin (ve eğer istenirse üzerine eklenen programların) DigitalOcean web servislerindeki kayıt numarası, region_id ise bu makinenin fiziksel olarak dünyanın neresinde bulunduğuna dair verimerkezi bölge bilgisidir ve son olarak ssh_key_ids ise yaratılacak olan makineye erişmek için kullanılacak ssh anahtarların kayıt numarasıdır.

Amacımız çok sayıda makine (bunlara droplet ismi veriliyor) ayağa kaldırmak, bunun için isteğimizi bir for döngüsü içerisinde tekrarlayabiliriz.

hala döngü içerisindeyken API’den gelen cevabı jsona dönüştürüyoruz.

gelen cevabın statusüne göre işlem başarılı ya da başarısız diye logluyoruz.

Son kısımda yine main ve droplet yaratan fonksiyonun çağrısını görebiliriz.

Tüm betik dosyasını kesintisiz halde görmek istersek, şöyle olacaktır;

Kaynaklar
1. https://www.digitalocean.com/, en son 23.02.2015 tarihinde erişildi.
2. http://docs.python-requests.org/en/latest/, en son 23.02.2015 tarihinde erişildi.

Amazon EC2 (Amazon Elastic Compute Cloud) boyutlandırılabilir işlem kapasitesi sağlayan, bulut üzerinde çalışan bir web servisidir. EC2’nin temel amacı geliştiricilerin daha kolay web ölçekli bulut bilişim yapabilmesi olarak ifade edilmiş.[1] Bu yazıda, EC2 üzerinde aynı anda birden çok makine ayağa kaldırmak için kullandığım koddan bir parça anlatacağım. AWS (Amazon Web Service) web arayüzünden dilediğiniz yapılandırma ayarlarına sahip makineler oluşturabiliyorsunuz, fakat ben daha otomatik bir şekilde bu işi yapan bir betiğe ihtiyaç duydum ve bunun için “boto” [2] isimli Amazon web servisleri için Python dilinde bir arabirim kullanmanın uygun olduğuna karar verdim. (Yazı ve örnek kod, kurulum ve yetkilendirme kısımlarının yapılmış olduğunu varsaymaktadır.)

Örneği üç parçada ele alırsak, ilk olarak çalıştırmak istediğimiz makinenin gerekli ayarlarını göreceğiz.

Continue Reading...

Selamlar, sizlere front end developerların işlerini kolaylaştıran Grunt’tan biraz geç de olsa bahsedeceğim. Grunt ile işleri otomatize edip işlerimizi daha hızlı çözebiliriz.

Öncelikle çok kolay bir kurulumu var. Ancak bilgisayarınızda nodejs olması gerekiyor. Yoksa http://nodejs.org adresinden hemen kurulum yapabilirsiniz.

Ardından terminalden;

Continue Reading…

Bu yazımda size Asp projesinde google maps kullanarak harita göstermeye çalışacağım. Öncelikle File’dan new-project diyip ASP.NET Web Application’ı seçip projeye isim veriyoruz.

1

Continue Reading…

Python ile kod yazmak büyük bir avantajdır. Aynı zamanda öğrenilmesi ve kullanılması basit bir dildir. Bu sebeple bu dilde az kod yazarak çok iş yapılabilir. Neredeyse bütün platformlarda çalışması da diğer bir artı yönüdür. Bu dilde oyun geliştirmekte oldukça rahattır.

Pygame Modülü

Python’da oyun geliştirmek için Pygame oyun modülü Continue Reading…

Bu benim hikayem.

Çok değil bir kaç yıl öncesine dek davranışlarımı şekillendiren ana duygunun korku olduğunu artık anlayabiliyorum. Kaybetmekten korkmak, yetememekten korkmak, başaramamaktan korkmak, anlamamaktan korkmak…

Mükemmel olmak gerektiğine inanmak ve mükemmel olmaya çalışmak büyük strese neden oluyor, hem kendimiz için, hem çevremizdekiler için.

Korkunun ve mükemmeli aramanın uzun ve dar tünelinden düşe kalka, yara bere ala ala çıktım. Bugün sorsanız hayatta en önemli şey nedir diye, “En önemli diye bir şey yoktur. Sizin öncelikleriniz vardır.  Zamana ve yere göre,  yaşınıza göre değişen, degişmesi gayet doğal olan öncelikler” derim. Biraz daha ileri gitmem gerekirse, “Tüm önceliklerinizi değerli ve önemli kılan, tutkudur,  aşktır, sevmektir” derim.

Korku bana çok insani ve varoluşsal bir duygu gibi geliyor. Tehlikelere karşı kendimizi savunmamızı, varlığımızı devam ettirmemizi sağlayan temel içgüdümüz. Korkunun fazlası ise bloke edici, engelleyici.

Continue Reading...

Merhabalar,

Kadın yazılımcı ekibi olarak 31 Ocak – 6 Şubat 2015 tarihleri arasında 17.si  Anadolu Üniversitesi’nde düzenlenecek olan Akademik Bilişim konferansında, Dünden Bugüne Kadın Yazılımcı ve Toplumdaki Yeri başlıklı panel ile karşınızda olacağız

konf_ust_banner_v3

Panelistler: Hilal Yıldız (ben), Gülşah Köse, Zinnur Yeşilyurt ve Betül Özmen’den oluşmakta. Panel içeriği için kafamızda birçok soru ve cevap oluşturduk, siz muhtemel izleyicilerimizden gelecek geribildirimlerle de çok zengin ve verimli bir sohbet ortamı oluşacağını umut ediyoruz.

Continue Reading...

Merhaba, bu yazımda deneyimlerimden yola çıkarak Python’da sıklıkla kullandığım veri yapıları ve tiplerinden bahsedeceğim. Bu yapı ve tiplerin içerisinde “liste” (list) ilk sırada gelir, ikinci sırada ise “katar” (string) yer alıyor.

Liste

Listeyi basitçe, köşeli parantez içerisinde virgüllerle ayrılmış elemanlar listesi olarak tanımlamak mümkündür.
liste1 = [1, 4, 9, 16, 25] ve liste2 = ['a', 'b', 'c', 'd'] birer liste örneğidir.
Liste elemanlarının indexlenebilme özelliği bulunur, zaten listeyi bir dizi olarak düşünebiliriz.

l = [1, 34, 274, -89, 0, 5] listesinden -89 elemanını almak için l[3] kullanmak yeterli olacaktır. Konunun daha anlaşılır olması için python terminalinde yaptığım örnekleri ekleyerek devam edeceğim. (Linux veya MacOS X kullanıyorsanız terminale python yazarak python terminaline geçiş yapabilirsiniz.)

Continue Reading...

Bu mesleği seçerseniz, ne iş yaptığınızı anlatmakta biraz zorlanabilirsiniz. Umarım kendiniz anlamakta zorlanmazsınız. Bilgisayarda yazı yazmaktan, bilgisayar sistemlerini çökertmeye varan geniş bir yelpazede işler yapan esrarengiz biri olduğunuz düşünülür çoğu zaman. Bir de mutlaka format atabilmelisiniz, bakın bu önemli, yoksa, ” Ne biçim mühendissin sen” olursunuz.

Yazılım mühendisliği, diğer mühendislik dalları gibi sınırları, kuralları kesin belirlenmiş bir meslek değil. “Yazılım sanat mıdır, mühendislik midir” tartışması yazılım mühendisliği alanındaki gelişmeler sayesinde “mühendisliktir” yönüne doğru kaydı. Ancak yine de uzun süreli insan emeği gerektiren bir iş olarak yazılım üretme süreci, analitik olduğu kadar sanatsal bir yönünüz olmasını da gerektiriyor. Ürününüz, elle tutulur bir şey değil. Ürününüz, yaptığı işle değer kazanıyor.

Continue Reading...