Milano Konferansı sonrası

Merhaba,

“Milano’da katıldığım konferanstan yaklaşık 1 ay sonra blog yazımı tamamlayabildim. Daha önce tamamlayacaktım ancak sürekli araya bir şeyler girdi ve yazı da biraz uzundu. Ve evet. Biraz tembelim :). Milano dönüşü uçakta beklerken ve uçakta bir şeyler karaladım. Bu yazı da onun bilgisayara dökülmüş halidir. İyi eğlenceler”

Milanoda katıldığım konferanstan sonra deneyimlerimi aktarmak istedim. Türkiyede bir kaç etkinliğe katılmıştım LKD adına konuşma da yaptım. Bolca da konuşma dinledim. Ama hiç bu kadar büyük çaplı bir konferansa katılmamıştım. Yazı iki kısımdan oluşacak ilk kısım daha çok konferans sırasındaki gözlemlerimden ikinci kısım İtalya, Milan ve Kültürel deneyimlerden oluşacak.

Dediğim gibi ilk defa bu kadar büyük boyutta bir konferansa katılıyorum. Dünya’nın her yerinden pek çok insanın katıldığı bir konferans. Tamamen LibreOffice üzerine yoğunlaşmış bir konferans. Bir konferanstan bu kadar çok deneyim kazanabileceğimi bilmiyordum açıkçası. Bana kalsa kendim kalkıp oralara gidemezdim. Yol masrafımı TDF aracılığıyla Google karşıladı. Eğer bir şekilde böyle bir etkinliğe katılma şansınız olursa kaçırmayın.

Konferans sırasında iki akşam boyunca “hackathon” yapıldı. Biri CloudOn sponsorluğunda OOXML üzerine öbürü ise Google sponsorluğunda daha genel bir hackathondu. İki hackathona da katıldım. Diğer Summer of Code öğrencileriyle birlikte çalışma fırsatı bulduk. Siqi ve Florian ile bir hata çözdük. “Kendy” nin yardımıyla projemde eksik bir özellik üzerine çalışmaya başladım tekrar. Michael’dan da aynı anda birden fazla kişinin ortak çalışmasını sağlayan bir özellikle ilgili nereye bakmam gerektiği hakkında bilgi edindik. En önemlisi de kendimi daha özgüvenli biri olarak buldum bu olaylar sırasında. :)

Görsel hafızaya sahip biri için tanıştığı insanları yüzlerle eşleştirmek iyi bir şey. Bir isim geçtiği zaman ne üzerinde çalıştığına dair fikir kafanızda direk beliriyor. Sosyal yeteneklerim İngilizce de çok iyi değil. O yüzden çoğunlukla dinleyen taraf oldum. Dinlerken harcadığım çaba konuşurken harcadığım çabadan kat kat kat kat kat kat kat daha az. :D Eve dönüş yolunda bu zamanı buldum. Bazı fikirlerimi anlatmaya karar verdim. Bunun için de Blog’dan daha iyi bir yer olamazdı sanırım.

 

Uyarı: Buradan itibaren tamamen kişisel görüşler devreye girmektedir. Bazı kısımlar alakasız ya da yanlış olabilir. Görüş belirtmekte ya da görmezden gelmekte özgürsünüz.

 

CloudOn konferansta OOXML üzerine yoğunlaştıklarından bahsetti. Yani MS Office’in sonu x ile biten formatlarının LibreOffice üzerinde kullanılması ve aynı dosyanın tekrar MS Office üzerinde açılması üzerinde yoğunlaşıyorlar. Bu iş için İngilizce terim interoperability. Uygun Türkçe karşılığını bilmiyorum.

CloudOn’un bu yaklaşımı seçmesi tabi ki kendi işlerine yaradığı için. Aynı zamanda LibreOffice için de çok iyi. Kendi arkadaş çevremde işlerin nasıl yürüdüğüne bakarsak sanırım bunu daha iyi anlayabiliriz. Şirketler için durum farklı olabilir tabi ki. Etrafımdaki arkadaşlar ya bilgisayarlarında yüklü gelen MS Office sürümlerini ya da korsan versiyonlarını kullanıyorlar. Ve hayatlarından gayet memnunlar. Başka hiç bir şeye ihtiyaçları yok. Çünkü ofis programı onlar için bedava. :D Microsoft Office onlar için “orjinal” ofis programı. Birkaç kişiye boşuna Ofis arama LibreOffice senin ihtiyacını karşılar dediğim zaman ilk etapta deneyenler oldu. Bu konuşmanın aramızda geçtiği pek çok kişi bunu denedi. Ama ilk yaptıkları şey LibreOffice’i MS Office ile karşılaştırmak oldu. İlk beğenmedikleri şeyde nefret etmeye ve bir daha kullanmamaya başladı bir kısmı.

MS Office’in “orijinal” ofis programı olması (kullanılan kopya korsan olsa bile) MS Office formatlarının kullanılmasını sağlıyor. Kimse de ODF kullanmayı denemiyor. Kendi çevremdekilere LibreOffice’i tavsiye ederken ben de başka bir yol geliştirdim. İnsanlara LibreOffice kullanmalarını, bir sıkıntı yaşarlarsa eski MS formatlarını kullanmalarını öneriyorum. Eski binary formatlar (doc, xls, ppt,…) yeni OOXML formatlarına göre (docx, xlsx, pptx,…) daha iyi çalışıyorlar. Bu yolla insanlar daha az sinirleniyorlar ofis programı kullanırken. Bir süre kullanmalarına devam ettikten sonra ODF formatlarına (odt, odp, …) geçmelerini öneriyorum. Böylece etrafımdakiler LibreOffice ile daha acısız tanışabilmiş oluyorlar. En azından bir kaç kişiyi bu yolla kazandırabildim sanıyorum :D

Benim gibi öğrenciler için, ofis programına çok fazla ihtiyaç duymayan işletmeler için, öğretmenler için insanların LibreOffice’e geçişi OOXML filtrelerinin düzgün çalışmasına bağlı. Büyük firmalar için durum daha farklı olabilir tabi ki. Farklı göç senaryoları yazılması gerekebilir. Ama benim çevrem için bu şekilde.

OOXML’e yönelmek iyi güzel, ama yeterli değil. LibreOffice çok iyi bir topluluğa sahip. Brezilya, Fransa, Almanya, İtalya toplulukları gibi büyük boyutlu toplulukların yanında Türkiye de de gelişmekte olan bir topluluk var. Yani yardım alabileceğiniz, yardım edebileceğiniz bir topluluğumuz kendi dilimizde de mevcut :) Ancak geliştiricilere de kullanıcılar kadar ihtiyacımız var. Android, İOS cihazlar için uzaktan kumanda uygulamaları gibi güzel özelliklere ihtiyacımız var. (Bir saniye bu uygulamalar zaten yapılmamış mıydı? ;) ). Bir dosyada ortak çalışmayı sağlayacak özelliklere ihtiyacımız var. Daha iyi bir tasarıma ihtiyaç var. Daha iyi simgelere ihtiyaç var. İnsanlara LibreOffice’in varlığını duyuracak insanlara ihtiyaç var. Son kullanıcıyı etkileyen küçük sorunların çözülmesine ihtiyaç var.

LibreOffice’te yardım edilebilecek bir sürü yer var. Geliştirmeye yeni olanlar için “EasyHack” etiketli hatalar var. Tasarımdan anlayan ve yardım edebilecekler için hali hazırda devam eden bir sürü çalışma var. Varlığından haberdar olmadığımız hatalar için testçilere ihtiyaç var.

Geliştiriciler için Türkçe bir de geliştirici listemiz var. Şu an tek yardım alabileceğiniz benim ancak bu durumu değiştirebiliriz ;).

Konferansta bir çok konuşma vardı. Ben geliştirme ile alakalı olandaydım daha çok. Daha çok dinleyen öğrenen taraf olduğım için söyleyebileceklerim bu kadarla sınırlı malesef.

İkinci Kısım

İlk kez yurtdışına çıkmış oldum bu konferans sayesinde. Bu da heyecanımı iki katına çıkarmış oldu. Milanoda mimari çok iyi. Sanırım tüm Avrupa bu şekilde olabilir ama sokakta yürürken kendinizi iyi hissediyorsunuz. İnsanlar canayakın, soğuk değiller. Soru sorduğunuzda anlıyorlar ancak İtalyanca cevap veriyorlar. :D Gitmeden Duolingo’dan 2-3 kelime İtalyanca öğrenmek iyi olabilir. Kelimelerin okunuşu Türkçe bilen biri için çok kolay. İngilizce kelimelerin Türkçe okunuşu gibi zaten pek çok kelime. Yolunuzu bir şekilde bulursunuz. Gitmeden telefonunuza offline çalışan bir çevirici ve tripadvisor’u yükleyin. Çok işe yarayan iki uygulama oldu bunlar benim için.

Görülebilecek yerler az. Duomo(Katedral), Galleria ve La Scala yı görün giderseniz. Bu üçü aynı yerde zaten. Fırsatım olmadı ama gidip Castello’yu görün şansınız varsa. San Siro, Como gölü de gidilmesi gereken yerler arasında ama ben oralara da gidemedim. :D İnternette yeterince bilgi mevcut. Gitmeden önce dersinize iyi çalışırsanız sorunsuz geçirirsiniz günlerinizi öyle bir yer kendisi.

Katedralde bir yığın heykel vardı. Her boş buldukları yerine bir heykel kondurmuş adamlar. En tepede de bir tane som altın heykel var. Her taraf heykel. Hep heykel. Katedral baya büyük bir bina. Gidip görün. Bir şey diyemiyorum :)

Milano hakkında internette hali hazırda olan bilgilerden başka bir şey söyleyemeyeceğim. Ekşide yazılanların çoğu doğru. Ona göre gidin ona göre gelin :D

Şimdilik bu kadar.

GSOC ve yeni blog.

efegurkangsoc2013.wordpress.com

Summer of Code esnasında yaşadıklarımı burada anlatacağım. Koda girişmek isteyenler de ziyaret edebilir. Hem Türkçe hem İngilizce.

Linux üzerinde LibreOffice derlemek

Düzenleme: Derleme sırasında Java ile ilgili kısımlarda bazı sorunlara rastlayabilirsiniz. Bu sorunlar yerelleştirme ayarlarıyla ilgili olacaktır büyük ihtimalle. İşletim sisteminizin dilini İngilizce yapmak sorununuzu çözecektir. İsterseniz derleyicinin dil ayarlarıyla da oynayabilirsiniz.

Bu yazıyı LibreOffice’i geliştirme amacıyla derlemek isteyenlere yönelik yazıyorum. Mutlaka İngilizce bilmek gerekiyor çünkü tüm geliştirme, evrensel olduğundan İngilizce yapılıyor. Geliştirici Wiki sayfasını kısaca Türkçeleştirmeye çalıştım.

Geleceğe not:Yazının yazıldığı tarihi göz önüne alarak güncelliğini Geliştirici Wikisinden kontrol edebilirsiniz..

1 – Disk boyutu

LibreOffice büyük bir proje. Kodların kendisi 1,5 GB civarında. Debug sembolleriyle birlikte tüm proje derlendiğinde 25 GB civarı oluyor.  Tabi tüm projeyi debug sembolleri kapalı olarak derleyip işinize yarayacak modülü tekrar debug sembolleriyle derleyebilirsiniz. Ancak yeni başlayacaklara yapıyı anlayana kadar tüm debug sembolleri açık derleme yapmanız.

2 – Bağımlılıklar

Programın derlenmesi için bir takım bağımlılıklara ihtiyacımız var. Wiki sayfasında dağıtımlara yönelik bağımlılıklar verilmiş elbette. Ben Ubuntu ve Fedora için olanları yazıyorum. Ayrıca Fedorada “devel” paketlerine ihtiyacımız olacak.

sudo yum install gcc-c++ ant java-devel junit4 flex bison perl-Archive-Zip \
gtk2-devel freetype-devel gstreamer-devel autoconf gperf libXaw-devel \
GConf2-devel gnome-vfs2-devel cups-devel gstreamer-plugins-base-devel

Bağımlılıklar için:

Fedora:
sudo yum-builddep libreoffice

Ubuntu:
Yazılım merkezinden kaynak depolarının açık olduğuna emin olun.
sudo apt-get build-dep libreoffice

Ayrıca tüm dağıtımlar için ccache git ve doxygen paketlerini kurun. Yamaları göndermek için git, ikinci derlemede hız kazanmak için ccache kullanıyoruz. ccache özellikle önemli çünkü derleme sonuçlarını tutarak bizi gereksiz işlemden ve vakit kaybından kurtarıyor. İkinci derleme esnasında sadece değişen kısımları yeniden derliyor ve yaklaşık 10 dk’da derlemeyi bitirebiliyoruz.

3 – Kaynak kodları indirmek

Git kullanarak “core” deposunu indiriyoruz. Derleme yapacağınız dizine konsol üzerinden ulaşıp şu komutu vermeniz yeterli.

git clone git://gerrit.libreoffice.org/core libo

Son olarak indirdiğimiz klasörün de içine giriyoruz konsoldan. Derleme esnasında verdiğimiz parametrelere bağlı olarak gerekebilecek alt modülleride indiriyoruz.

make fetch

4 – Autogen.sh

Bu aşama her şeyin doğru olup olmadığını kontrol eden ve doğruysa verilen parametrelere göre derleme için gereken ayarları yapan kısımdır. Sadece şu kod yeterli olacaktır. Özel olarak verilebilecek parametrelere wikiden bakabilirsiniz. Son ayarları da okuduktan sonra gerekli parametrelerle bu komutu verin.

./autogen.sh --enable-dbgutil --without-junit

5 – Son ayarlar

ccache’in tutacağı alanı arttırmak iyi bir fikir olabilir.
ccache --max-size 32G

Daha hızlı derleme yapabilmek için autogen.sh kısmında –with-parallelism parametresini eklemek derleme zamanını azaltacaktır. Makinenin daha fazla thread oluşturması ve işlemcileri sonuna kadar kullanması için bu parametreyi kullanabilirsiniz.

Ben rastlamadım ama “epm not found” ya da “no package found gnome-vfs-2.0” hatalarının çözümüne buradan ulaşabilirsiniz. https://wiki.documentfoundation.org/Development/Native_Build#rpm_not_found.2Fant_not_found.2Fno_package_gnome-vfs-2.0

Fedora’da derleme yapıyorsanız –enable-gio parametresini kullanmanızı öneririm. Ayrıca Autogen sırasında büyük ihtimalle yaşayacağınız “gstreamer” sorunu için iki çözüm var. İlki Fedora’nın tercih ettiği gstreamer sürümünü kullanmak bunun için gerekli parametreler “–disable-gstreamer-0_10 –enable-gstreamer“, ikincisi LibreOffice’in tercih ettiği sürümü kullanmak bunun için de “gstreamer-devel gstreamer-plugins-base-devel” paketlerinin kurulu olması gerekiyor.

6 – Derleme

make 2>&1 | tee build.log

Komutuyla derlemeye başlıyoruz. Hata oluşması durumunda build.log dosyasını kullanabilirsiniz. Kayıt tutmak istemiyorsanız sadece make komutunu verebilirsiniz.

LibreOffice kaynak kodunun olduğu klasördeki alt klasörlerin hemen hemen her biri birer modüldür. Derleme esnasında bu çıkacabilecek sorunların çözümü için hangi modülde sorun olduğunu bulmamız gerekiyor. Çıktıyı dikkatli incelemek bunun için gerekli.

İstersek tek bir modülü de derleyebiliriz.

make modüladı.clean
make modüladı

“Sometimes s*** just happens.”
Başka çaremizin kalmadığı durumlarda da en baştan derleme yapmak zorunda kalabilirsiniz.

make clean && make

7 – Derlenen programı çalıştırma

Öncelikle

make dev-install -o build

ile programı yüklüyoruz. Yalnız yüklemeyi sisteme değil /install/program klasörüne yapıyor. Buradaki “soffice.bin” dosyasını çalıştırdığımızda Libreoffice’in son hali önümüzde duruyor.

Buradan sonrası artık size kalıyor. Bu aşamaları geçerseniz Wiki’den takip edeceğiniz daha az yer kalıyor. Git komutları, yama oluşturma ve yollama ve EasyHacks sayfalarına gömülüp geliştiricilik aşamasında ilk katkınızı vermeye odaklanabilirsiniz.

Bilgisayar Mühendisliği hakkında

Malum sınav sonuçları açıklandı bu gün ben de kendi yaşadığım ikilemlerden sonra olurda bir şekilde buraya yolu düşenler olursa bilgisayar mühendisliği konusunda bilgi edinmek isteyenlere yardımcı olayım dedim.

  • Bilgisayar mühendisleri ne yapar? Yazılım mühendisliği ile farkı nedir?

Hala okuyan biri olarak bu soruya net bir cevap veremiyorum tam ama kısaca Yazılım mühendisliğinden daha fazla donanımla ilgilendiğimizi söyleyebilirim. 

Bilgisayar mühendisliği tanımında ise yazılım geliştirmek, yazılımı geliştirirken en etkin yolu aramak, ve test kısmı geliyor. Yazılım mühendisliğinde de bunları yapmak mümkün elbette. Bir yazılım mühendisi de bunları yapabilir elbette ama okuldan çok kendi çabası ön plana çıkacaktır ki bu noktaya değinmek gerekiyor.

  • Kimler tercih etmesin?

Bilgisayar mühendisliğini oyun oynamayı seviyorsunuz diye yazmayın sakın. İnternetten “c kodu”, “java kodu” gibi aramalardan genel olarak ne tarz şeylerle ilgilenildiğini öğrenebilirsiniz. İşi teorik kısmı da var elbette bunun için “Karınca kolonisi optimizasyonu”, “sıralama algoritmaları”,”Djikstra algoritması” gibi aramalar size ne tarz işlerle uğraşıldığını gösterecektir.

Bilgisayara ilginiz yoksa ve bir şey olmak istemediğiniz için yazacaksanız sakın yazmayın yine bu bölümü. Okulu bitirirsiniz ama mutlu olamazsınız.

 

  • Ne gerekir?

Yeni teknolojileri takip etmeniz gerekir mutlaka. Bunun için ilginizin olması gerekir tabi ki. Bu arada teknolojiyi takip etmekten kastım “abi x firmasını gördün mü şöyle şöyle bilgisayar yapmış ekran kartı 2 GB’mış ” gibi diyaloglardan bahsetmiyorum tabi ki.

 

  • Ne öğretilmez ?

Okulda işletim sistemi yükleme, halk arasındaki tabirle “format atma” ya da bilgisayar kullanma öğretilmez. Bilgisayar mühendisleri bilgisayar yapmaz :) . Teorik konular, algoritma tasarımı vs, matematik ağırlıklı olarak işlenir.

Birde ortam yapmak için üniversiteye gelmek isteyenler ya da Üniversitede rahat olacağını düşünenlere üniversitenin okul olduğunu hatırlatırım.

Severek yapılan her işte paranın sorun olmayacağına da inanıyorum. O yüzden iş bulamam diye düşünmeyin.

Linux kullanmadan Özgür Yazılım kullanmak

Bu yazıyı yazma amacım Linux kullanmayı bilmeyip özgür yazılım kullanmak isteyenlere yol göstermektir. Windows ya da Mac Os üzerinde de özgür yazılımlar kullanılabilir.

Öncelikle işletim sisteminizi değiştirmek istemeyebilirsiniz, ya da bir donanımınızın sürücüsü yoktur ve/veya düzgün çalışmıyordur. Başka birçok neden olabilir. Ama özgür yazılım felsefesi hoşunuza gitmiştir ve kullanmak istiyorsunuzdur. Bunun için önce kullandığınız yazılım özgür mü bunu araştırın. Bunun için kullandığınız yazılımın lisansıyla ilgili bilgiler edinmeye çalışın.Programın hakkında -varsa- kısmına bakmanız yararlı olacaktır.

Lisansları buradan karşılaştırabilirsiniz: http://en.wikipedia.org/wiki/List_of_FSF-approved_software_licenses

Tabi copyleft’i de araştırmak isteyebilirsiniz. Yazılımın lisansına ulaşamadıysanız kaynak kodlarının erişilebilir olup olmadığını araştırabileceğiniz ve size alternatifler sunan bir site var.

Buradan yazılımın alternatiflerini görebilirsiniz : http://osalt.com/

Özgür alternatifler çeşitli sebeplerle işinizi göremeyebilir. Maddi destek olmadığından gelişimi durmuş olabilir, geliştiricisi kalmamış olabilir, lisans sorunları sebebiyle alternatifi olduğu programdan eksikleri olabilir. Bunları göz önüne alarak tamamen işinizi görebilir bir özgür yazılım ekosistemi kurabilirsiniz.

 

İnternette dolaşan, film izleyen, müzik dinleyen ve ofis programı kullanan, bunlardan başka bir amaçla bilgisayarını pek kullanmayan bir özgür yazılım meraklısı için tavsiye edebileceğim kadro şudur: Mozilla Firefox, VLC VideoLan, Clementine,LibreOffice.

Bu programlarla işlerinizi daha özgür bir şekilde sorunsuz halledebilirsiniz. Programda hata görürseniz hata takip sisteminden belirtebilir, istediğiniz bir özelliği belirtebilirsiniz. Kendi arkadaşlarınıza bu programları kullandırarak özgür yazılıma katkıda bulunabilirsiniz.

İşletim sisteminiz özgür olmasa bile üzerindeki programları özgürleştirebilir, özgür yazılım dünyasına ilk adımınızı atabilirsiniz.

Mate ve Cinnamon

GÜNCELLEME: Yazı içeriği güncelliğini yitirmiştir.

 

Daha önce yazacağımı belirttiğim Cinnamon ve Mate karşılaştırmasını sonunda yazmaya karar verdim ama biraz yüzeysel olacak. Hatta baya yüzeysel olacak. Neyse başlıyoruz. Önce ikisinin birer ekran görüntüsünü koyuyorum.

Mate:

Image

Cinnamon:

Image

İki masaüstü ortamında da fark edilen ortak olan sadelik ve Linux Mint’in korumaya çalıştığı geleneksel masaüstü ortamı çizgisi. Aralarında görünüm olarak çok bir fark yok. Asıl fark teknik kısımda daha çok. MATE bir Gnome 2 çatalı . Şu an Gnome 2’deki bileşenlerin adını değişmesinden öte çok bir farkı yok. Dolayısıyla belli bir yere gelmiş bir masaüstü ortamı ve daha kararlı. Cinnamon ise Gnome 3 çatalı. Daha yeni ve çatlamalı patlamalı bir ortam. Sadece internete giren arada resimlerinize bakan bir insansanız sadece Tarayıcı ve dosyaları nasıl kullanacağınızı bilmeniz yeterli. Çok fazla çatlama patlamayla karşılaşmazsınız. Ama daha detaylı işler yapacaksanız farklı programlara ihtiyacınız varsa işler karışabilir. Ama yine de hızlı ve iyi durumda. Gelecek sürüme kadar daha da stabil hale gelir tahmin ediyorum .

Mate şu an Bluetooth ile ilgili sorunlar yaşıyor. Cinnamonda da 3D efektleri ile ilgili sorunlar yaşanıyor. Öyle sanıyorum ki gelecek sürüm sadece Cinnamon olacak Mate o zamana kadar stabil bir ortam sağlamak için konulmuş. Ben şimdilik Mate ile işlerimi hallediyorum. Bir tek MDM ekranı sebebiyle bir hatayla karşılaştım. Bu da MDM’deki bir hatadan kaynaklanıyordu zaten. Her neyse umarım hangi ortamı seçeceğinize karar vermenize faydası dokunan bir yazı olmuştur. Kolay gelsin.

%d blogcu bunu beğendi: