Saturday, May 03, 2014

Başka bir okul mümkün

Geçen hafta Başka Bir Okul Mümkün Derneği'nin Ankara'da Eylül ayında açacağı ilokulun tanıtım etkinliğine gittik. Sağolsun, Gonca Hn bizimle ilgilendi. Ken Robinson'un TED konuşmasından ilham alarak çevresindeki insanlarla böyle bir oluşuma girmişler. Okulun yeri İncek'te. Daha önce Melek İpek İlköğretim okulu olan binayı 10 yıllığına kiralamışlar. Veliler derneğe/kooperatife üye oluyorlar, yani okulun sahibi veliler. MEB'e bağlı özel okul statüsünde olacakmış.

Eylül için hedefleri 30 öğrenci. Max kapasite 100. Sınıfların 20 kişi olmasını, sınıf başına bir sınıf öğretmeni bir de yardımcı öğretmen olmasını düşünüyorlar.

Hoşumuza gitti, takipçisi olacağız. Yarın (4 Mayıs) Tunalı Otel'deki toplantıya da gideceğiz.

Güncelleme, 4 Mayıs 2014: Toplantıya gittik. Maksadımız Ankara kooperatifinin üyeleri hayal dünyasında yaşayan hippi tipler mi, yoksa ayağı yere basan, ne yaptığını bilen insanlar mı diye görmekti. Kısacası gördüklerimizden memnun kaldık, hepsi güzel insanlardı.

Hafta boyunca izlediğim videolardan derlediğim soru ve cevaplar:

Soru: Milli eğitim müfredatı ile uyumlu musunuz?
Cevap: Evet. Milli eğitimde verilmek istenen kazanımlar var. Bu kazanımlar normal okullarda fiziksel şartların yetersizliği nedeniyle verilemiyor. Biz bu şartları sağlayarak zaten verilmek istenenleri daha etkili bir şekilde verme imkanına sahibiz. Örneğin milli eğitimde öğrenci konseyi kavramı var ancak öğrenci sayısının fazlalığı nedeniyle uygulanamıyor. Biz sayıyı bu tür şeyleri uygulayacak seviyede tutuyoruz.

Soru: Velilerin rolü ne?
Cevap: Veliler kooperatifin ortağı, yani okulun sahibiler. Okulda çocuğu olmayan birisi ortak olamaz, ancak bağış yapabilir. Yani veliler normal okullara göre çok daha sahiplenici bir konumdalar.

Soru: Açılan okullarla derneğin ilişkisi ne?
Cevap: Okulları çocuklarını okula gönderecek veliler açıyor. Dernek onlara sadece yol gösteriyor, eldeki bilgi birikimini paylaşıyor. Okulların yönetimi tamamen kooperatiflerin elinde.

Soru: Öğretmenleri nasıl seçiyorsunuz?
Cevap: Milli eğitimin kriterlerine uygun adaylar arasından seçiyoruz. Detay şurada.

Soru: Ya çocuk birşey öğrenmezse?
Cevap [Bodrum'daki okula çocuğunu yollayan bir veliden]: Çocuğun ilkokulda öğreneceği temel konular okuma yazma ve dört işlem. En kötü durumda, yani okul bunları öğretmede yetersiz kalsa bile ebeveyni olarak ben öğretirim. Çocuğumun sağlıklı bir sosyal çevrede çocukluğunu yaşaması, öğrenme heyecanını kaybetmemesi çok daha önemli.

Soru: Çocuklar okuldaki ideal şartlar yüzünden toplumdan kopuk hale gelebilirler mi?
Cevap: Mevcut okulların hayatla iç içe olduğunu iddia edebilir miyiz? Biz hayat bilgisi derslerini dışarıda, örneğin pazaryerinde işliyoruz. Bir gezimizde çöplüğe gittik, dönüşte çocuklar neden bazı insanlar çöplüğü karıştırmak zorunda diye sordular. Kitapların ötesindeki gerçek hayatı daha yakından tanıma fırsatı buluyorlar.

Kaynaklar:

Friday, April 04, 2014

Returning objects in C++

I recently discovered that returning an object in C++ might not be what you expect. I was surprised because in Java things would be different. Consider the following code:


getClassB() returns the mClassB attribute. Class B is as follows:


I wrote the following main function to test results:


I thought that a.getClassB().setVal(1) would set mClassB.mVal to 1. But when I read it using a.getClassB().mVal I got a meaningless number hinting that mVal was not set.

When I set the result of a.getClassB() to ClassB b and then set b.setVal(2) and read b.mVal I get 2 as expected.

Finally, when I use a.getClassBReference()->setVal(4) and then read it using a.getClassBReference()->mVal, I get 4.

I think that a.getClassB() returns a copy of mClassB which means that a setVal() operation on that copy does not modify a.mClassB.mVal. If you want to modify an field of an object attribute, the getter of that attribute has to return a reference, not a copy.

Thursday, March 06, 2014

Book: Waltzing with Bears

"Waltzing with Bears - Managing Risk on Software Projects", DeMarco, T., Lister, T., 2009, 196 pages

The book tells how things really are: People like tales more than reality, nobody likes bad news. People are 10 times more prone to believe things they like. The odds are against risk management. It is surprising if anybody can do it properly:
"We are like a primitive tribe that tries to hold the devil at bay by refusing to say his name." [p.113]
"The Ethics of Belief" published by William Kingdon Clifford in 1877, which is mentioned in the book is well worth reading on its own.

Sunday, October 13, 2013

Dezenformasyon

Facebook sayfaları yalan haberin çarpıcı örnekleriyle dolu. Geçenlerde aşağıdaki fotoya denk geldim. Fotonun altına "Arakan yanıyor, müslümanları diri diri yakıyorlar" diye yazmışlar, millet de galeyana gelmiş, verip veriştiriyor, paylaşıyor.


Fotoda insanların düzgünce sıralanmış olması içime bir şüphe düşürdü ve bu resmi google image search'te arattım, işin aslını anlatan 2011'e ait şu sayfaya rast geldim. Kongo'da Petrol tankeri kazası sonucu ölen insanlarmış bunlar (ayrıca Arakan Kongo'da değil, Burma'da). İşin ilginç yanı, ilk başta bu resmi "Müslümanlar Nijerya'da hristiyanları yakıyorlar" diye kullanmışlar!

Ne tarih, ne olay, ne yer, hiçbir şey tutmuyor ama müslümanı da, hristiyanı da "aceba doğru mu" demeden atlıyor! Neyse ki artık internet var da bu hikayelerin aslını anlamak mümkün. Ticari medyaya çuvaldızı batırmadan önce iğneyi kendimize batıralım, gaza gelip bir haberi paylaşmadan önce beş dakikacık araştıralım, komik duruma düşmeyelim.

Bu taktiklere başka örnekler:

Thursday, August 01, 2013

Math tests

Java's java.lang.Math library provides methods for performing numeric operations. It's a good idea to have a basic test list to test the math functions of whichever programming language you are using at the moment. You should know about the behavior of math functions (in cases like overflow) so that you won't waste a lot of time looking for bugs in the wrong places.

Thursday, July 25, 2013

Use exceptions, not error codes

Benefits of handling errors with exceptions instead of error codes [Advantages of Exceptions] :

Normal program flow and error handling can be visually separated which makes code reading easier. Easier to read means less bugs and peace of mind.

Saturday, July 06, 2013

Why most presentations suck

I rarely see a presentation that makes me feel that I didn't waste time. There are many ways to screw up a presentation, and it is not because there isn't information available about how to do it right. The main reason is that people consider it as a chore and don't spend enough time.

When preparing a presentation, my main motivation - independent of the topic - is public relations, i.e. presenting provides me with a chance to give people reason to like me. Once people have a positive opinion of me, it will be easier in the future when I need their help or need to convince them about something they don't agree with.

That's why I usually spend a lot of time for preparations. My method is similar to writing a technical report. I start early (a few days to a few months) and iterate on the way, sometimes changing the topic completely if it doesn't come out as interesting as it sounded in the beginning.

So, seek out opportunities to present and spend time on your presentations, it is an investment into your future.